{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Questions"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- How many datasets and dataverses, that have gone on to be published, have been created in Harvard Dataverse's \"Root\" dataverse each day?\n",
    "- How many accounts have created more than one of these datasets in Root?\n",
    "- How many accounts created these datasets in Root each day, and which of those accounts are first time depositors versus returning depositors?"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Setup"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true
   },
   "source": [
    "## Get data from repository database"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "We'll get data about dataverses and datasets that have been published in Harvard Dataverse:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "Query for getting data from repository's postgres database:\n",
    "```\n",
    "select\n",
    "\tdvobject.id as deposit_id, dtype as deposit_type,\n",
    "    to_char(dvobject.createdate, 'YYYY-MM-DD') as deposit_createdate,\n",
    "    to_char(publicationdate, 'YYYY-MM-DD') as deposit_publicationdate,\n",
    "    dvobject.owner_id as deposit_parent_dataverse,\n",
    "\tdvobject.creator_id as user_account_id_of_deposit,\n",
    "    to_char(authenticateduser.createdtime, 'YYYY-MM-DD') as user_account_createdate,\n",
    "    authenticateduserlookup.authenticationproviderid as user_account_type,\n",
    "    affiliation,\n",
    "    split_part(email,'@',2) as account_email_domain\n",
    "from dvobject\n",
    "join authenticateduser on authenticateduser.id = dvobject.creator_id\n",
    "join authenticateduserlookup on authenticateduserlookup.authenticateduser_id = authenticateduser.id\n",
    "where dvobject.id not in(\n",
    "\tselect id\n",
    "\tfrom dataset\n",
    "\twhere harvestingclient_id is not null\n",
    ")\n",
    "and dtype != 'DataFile'\n",
    "and publicationdate is not null\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "The Dataverse database doesn't record enough information about dataverses and datasets that have been deleted, which are most likely to be test and spam dataverses and datasets, so we can't include those in this investigation."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true
   },
   "source": [
    "## Import modules"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "(function(root) {\n",
       "  function now() {\n",
       "    return new Date();\n",
       "  }\n",
       "\n",
       "  var force = true;\n",
       "\n",
       "  if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n",
       "    root._bokeh_onload_callbacks = [];\n",
       "    root._bokeh_is_loading = undefined;\n",
       "  }\n",
       "\n",
       "  if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
       "    root._bokeh_timeout = Date.now() + 5000;\n",
       "    root._bokeh_failed_load = false;\n",
       "  }\n",
       "\n",
       "  function run_callbacks() {\n",
       "    try {\n",
       "      root._bokeh_onload_callbacks.forEach(function(callback) {\n",
       "        if (callback != null)\n",
       "          callback();\n",
       "      });\n",
       "    } finally {\n",
       "      delete root._bokeh_onload_callbacks\n",
       "    }\n",
       "    console.debug(\"Bokeh: all callbacks have finished\");\n",
       "  }\n",
       "\n",
       "  function load_libs(css_urls, js_urls, callback) {\n",
       "    if (css_urls == null) css_urls = [];\n",
       "    if (js_urls == null) js_urls = [];\n",
       "\n",
       "    root._bokeh_onload_callbacks.push(callback);\n",
       "    if (root._bokeh_is_loading > 0) {\n",
       "      console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
       "      return null;\n",
       "    }\n",
       "    if (js_urls == null || js_urls.length === 0) {\n",
       "      run_callbacks();\n",
       "      return null;\n",
       "    }\n",
       "    console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
       "    root._bokeh_is_loading = css_urls.length + js_urls.length;\n",
       "\n",
       "    function on_load() {\n",
       "      root._bokeh_is_loading--;\n",
       "      if (root._bokeh_is_loading === 0) {\n",
       "        console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n",
       "        run_callbacks()\n",
       "      }\n",
       "    }\n",
       "\n",
       "    function on_error() {\n",
       "      console.error(\"failed to load \" + url);\n",
       "    }\n",
       "\n",
       "    for (var i = 0; i < css_urls.length; i++) {\n",
       "      var url = css_urls[i];\n",
       "      const element = document.createElement(\"link\");\n",
       "      element.onload = on_load;\n",
       "      element.onerror = on_error;\n",
       "      element.rel = \"stylesheet\";\n",
       "      element.type = \"text/css\";\n",
       "      element.href = url;\n",
       "      console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
       "      document.body.appendChild(element);\n",
       "    }\n",
       "\n",
       "    if (window.requirejs) {\n",
       "      require([], function() {\n",
       "        run_callbacks();\n",
       "      })\n",
       "    } else {\n",
       "      var skip = [];\n",
       "      for (var i = 0; i < js_urls.length; i++) {\n",
       "        var url = js_urls[i];\n",
       "        if (skip.indexOf(url) >= 0) { on_load(); continue; }\n",
       "        var element = document.createElement('script');\n",
       "        element.onload = on_load;\n",
       "        element.onerror = on_error;\n",
       "        element.async = false;\n",
       "        element.src = url;\n",
       "        console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
       "        document.head.appendChild(element);\n",
       "      }\n",
       "    }\n",
       "  };\n",
       "\n",
       "  function inject_raw_css(css) {\n",
       "    const element = document.createElement(\"style\");\n",
       "    element.appendChild(document.createTextNode(css));\n",
       "    document.body.appendChild(element);\n",
       "  }\n",
       "\n",
       "  var js_urls = [];\n",
       "  var css_urls = [];\n",
       "\n",
       "  var inline_js = [\n",
       "    function(Bokeh) {\n",
       "      inject_raw_css(\".panel-widget-box {\\n\\tmin-height: 20px;\\n\\tbackground-color: #f5f5f5;\\n\\tborder: 1px solid #e3e3e3 !important;\\n\\tborder-radius: 4px;\\n\\t-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\tbox-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\toverflow-x: hidden;\\n\\toverflow-y: hidden;\\n}\\n\\n.scrollable {\\n  overflow: scroll;\\n}\\n\\nprogress {\\n\\tappearance: none;\\n\\t-moz-appearance: none;\\n\\t-webkit-appearance: none;\\n\\n\\tborder: none;\\n\\theight: 20px;\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n\\tcolor: royalblue;\\n\\tposition: relative;\\n\\tmargin: 0 0 1.5em;\\n}\\n\\nprogress[value]::-webkit-progress-bar {\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n}\\n\\nprogress[value]::-webkit-progress-value {\\n\\tposition: relative;\\n\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress.active:not([value])::before {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress[value]::-moz-progress-bar {\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress:not([value])::-moz-progress-bar {\\n\\tborder-radius:3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n\\n}\\n\\nprogress.active:not([value])::-moz-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.active:not([value])::-webkit-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.primary[value]::-webkit-progress-value { background-color: #007bff; }\\nprogress.primary:not([value])::before { background-color: #007bff; }\\nprogress.primary:not([value])::-webkit-progress-bar { background-color: #007bff; }\\nprogress.primary::-moz-progress-bar { background-color: #007bff; }\\n\\nprogress.secondary[value]::-webkit-progress-value { background-color: #6c757d; }\\nprogress.secondary:not([value])::before { background-color: #6c757d; }\\nprogress.secondary:not([value])::-webkit-progress-bar { background-color: #6c757d; }\\nprogress.secondary::-moz-progress-bar { background-color: #6c757d; }\\n\\nprogress.success[value]::-webkit-progress-value { background-color: #28a745; }\\nprogress.success:not([value])::before { background-color: #28a745; }\\nprogress.success:not([value])::-webkit-progress-bar { background-color: #28a745; }\\nprogress.success::-moz-progress-bar { background-color: #28a745; }\\n\\nprogress.danger[value]::-webkit-progress-value { background-color: #dc3545; }\\nprogress.danger:not([value])::before { background-color: #dc3545; }\\nprogress.danger:not([value])::-webkit-progress-bar { background-color: #dc3545; }\\nprogress.danger::-moz-progress-bar { background-color: #dc3545; }\\n\\nprogress.warning[value]::-webkit-progress-value { background-color: #ffc107; }\\nprogress.warning:not([value])::before { background-color: #ffc107; }\\nprogress.warning:not([value])::-webkit-progress-bar { background-color: #ffc107; }\\nprogress.warning::-moz-progress-bar { background-color: #ffc107; }\\n\\nprogress.info[value]::-webkit-progress-value { background-color: #17a2b8; }\\nprogress.info:not([value])::before { background-color: #17a2b8; }\\nprogress.info:not([value])::-webkit-progress-bar { background-color: #17a2b8; }\\nprogress.info::-moz-progress-bar { background-color: #17a2b8; }\\n\\nprogress.light[value]::-webkit-progress-value { background-color: #f8f9fa; }\\nprogress.light:not([value])::before { background-color: #f8f9fa; }\\nprogress.light:not([value])::-webkit-progress-bar { background-color: #f8f9fa; }\\nprogress.light::-moz-progress-bar { background-color: #f8f9fa; }\\n\\nprogress.dark[value]::-webkit-progress-value { background-color: #343a40; }\\nprogress.dark:not([value])::-webkit-progress-bar { background-color: #343a40; }\\nprogress.dark:not([value])::before { background-color: #343a40; }\\nprogress.dark::-moz-progress-bar { background-color: #343a40; }\\n\\nprogress:not([value])::-webkit-progress-bar {\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\nprogress:not([value])::before {\\n\\tcontent:\\\" \\\";\\n\\tposition:absolute;\\n\\theight: 20px;\\n\\ttop:0;\\n\\tleft:0;\\n\\tright:0;\\n\\tbottom:0;\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\n@keyframes stripes {\\n  from {background-position: 0%}\\n  to {background-position: 100%}\\n}\\n\");\n",
       "    },\n",
       "    function(Bokeh) {\n",
       "      inject_raw_css(\".codehilite .hll { background-color: #ffffcc }\\n.codehilite  { background: #f8f8f8; }\\n.codehilite .c { color: #408080; font-style: italic } /* Comment */\\n.codehilite .err { border: 1px solid #FF0000 } /* Error */\\n.codehilite .k { color: #008000; font-weight: bold } /* Keyword */\\n.codehilite .o { color: #666666 } /* Operator */\\n.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\\n.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */\\n.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */\\n.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\\n.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */\\n.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */\\n.codehilite .gd { color: #A00000 } /* Generic.Deleted */\\n.codehilite .ge { font-style: italic } /* Generic.Emph */\\n.codehilite .gr { color: #FF0000 } /* Generic.Error */\\n.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */\\n.codehilite .gi { color: #00A000 } /* Generic.Inserted */\\n.codehilite .go { color: #888888 } /* Generic.Output */\\n.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\\n.codehilite .gs { font-weight: bold } /* Generic.Strong */\\n.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\\n.codehilite .gt { color: #0044DD } /* Generic.Traceback */\\n.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\\n.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\\n.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\\n.codehilite .kp { color: #008000 } /* Keyword.Pseudo */\\n.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\\n.codehilite .kt { color: #B00040 } /* Keyword.Type */\\n.codehilite .m { color: #666666 } /* Literal.Number */\\n.codehilite .s { color: #BA2121 } /* Literal.String */\\n.codehilite .na { color: #7D9029 } /* Name.Attribute */\\n.codehilite .nb { color: #008000 } /* Name.Builtin */\\n.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */\\n.codehilite .no { color: #880000 } /* Name.Constant */\\n.codehilite .nd { color: #AA22FF } /* Name.Decorator */\\n.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */\\n.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\\n.codehilite .nf { color: #0000FF } /* Name.Function */\\n.codehilite .nl { color: #A0A000 } /* Name.Label */\\n.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\\n.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */\\n.codehilite .nv { color: #19177C } /* Name.Variable */\\n.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\\n.codehilite .w { color: #bbbbbb } /* Text.Whitespace */\\n.codehilite .mb { color: #666666 } /* Literal.Number.Bin */\\n.codehilite .mf { color: #666666 } /* Literal.Number.Float */\\n.codehilite .mh { color: #666666 } /* Literal.Number.Hex */\\n.codehilite .mi { color: #666666 } /* Literal.Number.Integer */\\n.codehilite .mo { color: #666666 } /* Literal.Number.Oct */\\n.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */\\n.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */\\n.codehilite .sc { color: #BA2121 } /* Literal.String.Char */\\n.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */\\n.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\\n.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */\\n.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\\n.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */\\n.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\\n.codehilite .sx { color: #008000 } /* Literal.String.Other */\\n.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */\\n.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */\\n.codehilite .ss { color: #19177C } /* Literal.String.Symbol */\\n.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */\\n.codehilite .fm { color: #0000FF } /* Name.Function.Magic */\\n.codehilite .vc { color: #19177C } /* Name.Variable.Class */\\n.codehilite .vg { color: #19177C } /* Name.Variable.Global */\\n.codehilite .vi { color: #19177C } /* Name.Variable.Instance */\\n.codehilite .vm { color: #19177C } /* Name.Variable.Magic */\\n.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */\\n\\n.markdown h1 { margin-block-start: 0.34em }\\n.markdown h2 { margin-block-start: 0.42em }\\n.markdown h3 { margin-block-start: 0.5em }\\n.markdown h4 { margin-block-start: 0.67em }\\n.markdown h5 { margin-block-start: 0.84em }\\n.markdown h6 { margin-block-start: 1.17em }\\n.markdown ul { padding-inline-start: 2em }\\n.markdown ol { padding-inline-start: 2em }\\n.markdown strong { font-weight: 600 }\\n.markdown a { color: -webkit-link }\\n.markdown a { color: -moz-hyperlinkText }\\n\");\n",
       "    },\n",
       "    function(Bokeh) {\n",
       "      inject_raw_css(\".json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n  color: black;\\n  text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \\\"No properties\\\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \\\"[]\\\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n  color: green;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n  color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n  color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n  color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n  color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n  background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: blue;\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n  color: #00008B;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n  color: white;\\n  text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \\\"No properties\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \\\"[]\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n  color: #31F031;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n  color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n  color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n  color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n  color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n  color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n  background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: #027BFF;\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n  color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n  color: #23A0DB;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n\");\n",
       "    },\n",
       "    function(Bokeh) {\n",
       "      inject_raw_css(\"table.panel-df {\\n    margin-left: auto;\\n    margin-right: auto;\\n    border: none;\\n    border-collapse: collapse;\\n    border-spacing: 0;\\n    color: black;\\n    font-size: 12px;\\n    table-layout: fixed;\\n    width: 100%;\\n}\\n\\n.panel-df tr, .panel-df th, .panel-df td {\\n    text-align: right;\\n    vertical-align: middle;\\n    padding: 0.5em 0.5em !important;\\n    line-height: normal;\\n    white-space: normal;\\n    max-width: none;\\n    border: none;\\n}\\n\\n.panel-df tbody {\\n    display: table-row-group;\\n    vertical-align: middle;\\n    border-color: inherit;\\n}\\n\\n.panel-df tbody tr:nth-child(odd) {\\n    background: #f5f5f5;\\n}\\n\\n.panel-df thead {\\n    border-bottom: 1px solid black;\\n    vertical-align: bottom;\\n}\\n\\n.panel-df tr:hover {\\n    background: lightblue !important;\\n    cursor: pointer;\\n}\\n\");\n",
       "    },\n",
       "    function(Bokeh) {\n",
       "      /* BEGIN bokeh.min.js */\n",
       "      /*!\n",
       "       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n",
       "       * All rights reserved.\n",
       "       * \n",
       "       * Redistribution and use in source and binary forms, with or without modification,\n",
       "       * are permitted provided that the following conditions are met:\n",
       "       * \n",
       "       * Redistributions of source code must retain the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer.\n",
       "       * \n",
       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer in the documentation\n",
       "       * and/or other materials provided with the distribution.\n",
       "       * \n",
       "       * Neither the name of Anaconda nor the names of any contributors\n",
       "       * may be used to endorse or promote products derived from this software\n",
       "       * without specific prior written permission.\n",
       "       * \n",
       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
       "      */\n",
       "      (function(root, factory) {\n",
       "        const bokeh = factory();\n",
       "        bokeh.__bokeh__ = true;\n",
       "        if (typeof root.Bokeh === \"undefined\" || typeof root.Bokeh.__bokeh__ === \"undefined\") {\n",
       "          root.Bokeh = bokeh;\n",
       "        }\n",
       "        const Bokeh = root.Bokeh;\n",
       "        Bokeh[bokeh.version] = bokeh;\n",
       "      })(this, function() {\n",
       "        var define;\n",
       "        var parent_require = typeof require === \"function\" && require\n",
       "        return (function(modules, entry, aliases, externals) {\n",
       "          if (aliases === undefined) aliases = {};\n",
       "          if (externals === undefined) externals = {};\n",
       "\n",
       "          var cache = {};\n",
       "\n",
       "          var normalize = function(name) {\n",
       "            if (typeof name === \"number\")\n",
       "              return name;\n",
       "\n",
       "            if (name === \"bokehjs\")\n",
       "              return entry;\n",
       "\n",
       "            var prefix = \"@bokehjs/\"\n",
       "            if (name.slice(0, prefix.length) === prefix)\n",
       "              name = name.slice(prefix.length)\n",
       "\n",
       "            var alias = aliases[name]\n",
       "            if (alias != null)\n",
       "              return alias;\n",
       "\n",
       "            var trailing = name.length > 0 && name[name.lenght-1] === \"/\";\n",
       "            var index = aliases[name + (trailing ? \"\" : \"/\") + \"index\"];\n",
       "            if (index != null)\n",
       "              return index;\n",
       "\n",
       "            return name;\n",
       "          }\n",
       "\n",
       "          var require = function(name) {\n",
       "            var mod = cache[name];\n",
       "            if (!mod) {\n",
       "              var id = normalize(name);\n",
       "\n",
       "              mod = cache[id];\n",
       "              if (!mod) {\n",
       "                if (!modules[id]) {\n",
       "                  if (externals[id] === false || (externals[id] == true && parent_require)) {\n",
       "                    try {\n",
       "                      mod = {exports: externals[id] ? parent_require(id) : {}};\n",
       "                      cache[id] = cache[name] = mod;\n",
       "                      return mod.exports;\n",
       "                    } catch (e) {}\n",
       "                  }\n",
       "\n",
       "                  var err = new Error(\"Cannot find module '\" + name + \"'\");\n",
       "                  err.code = 'MODULE_NOT_FOUND';\n",
       "                  throw err;\n",
       "                }\n",
       "\n",
       "                mod = {exports: {}};\n",
       "                cache[id] = cache[name] = mod;\n",
       "                modules[id].call(mod.exports, require, mod, mod.exports);\n",
       "              } else\n",
       "                cache[name] = mod;\n",
       "            }\n",
       "\n",
       "            return mod.exports;\n",
       "          }\n",
       "          require.resolve = function(name) {\n",
       "            return \"\"\n",
       "          }\n",
       "\n",
       "          var main = require(entry);\n",
       "          main.require = require;\n",
       "\n",
       "          if (typeof Proxy !== \"undefined\") {\n",
       "            // allow Bokeh.loader[\"@bokehjs/module/name\"] syntax\n",
       "            main.loader = new Proxy({}, {\n",
       "              get: function(_obj, module) {\n",
       "                return require(module);\n",
       "              }\n",
       "            });\n",
       "          }\n",
       "\n",
       "          main.register_plugin = function(plugin_modules, plugin_entry, plugin_aliases, plugin_externals) {\n",
       "            if (plugin_aliases === undefined) plugin_aliases = {};\n",
       "            if (plugin_externals === undefined) plugin_externals = {};\n",
       "\n",
       "            for (var name in plugin_modules) {\n",
       "              modules[name] = plugin_modules[name];\n",
       "            }\n",
       "\n",
       "            for (var name in plugin_aliases) {\n",
       "              aliases[name] = plugin_aliases[name];\n",
       "            }\n",
       "\n",
       "            for (var name in plugin_externals) {\n",
       "              externals[name] = plugin_externals[name];\n",
       "            }\n",
       "\n",
       "            var plugin = require(plugin_entry);\n",
       "\n",
       "            for (var name in plugin) {\n",
       "              main[name] = plugin[name];\n",
       "            }\n",
       "\n",
       "            return plugin;\n",
       "          }\n",
       "\n",
       "          return main;\n",
       "        })\n",
       "      ([\n",
       "      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});e(1).__exportStar(e(2),_)},\n",
       "      function _(t,e,n){\n",
       "      /*! *****************************************************************************\n",
       "          Copyright (c) Microsoft Corporation.\n",
       "          \n",
       "          Permission to use, copy, modify, and/or distribute this software for any\n",
       "          purpose with or without fee is hereby granted.\n",
       "          \n",
       "          THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n",
       "          REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n",
       "          AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n",
       "          INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n",
       "          LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n",
       "          OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n",
       "          PERFORMANCE OF THIS SOFTWARE.\n",
       "          ***************************************************************************** */\n",
       "      Object.defineProperty(n,\"__esModule\",{value:!0});var r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function o(t){var e=\"function\"==typeof Symbol&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&\"number\"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}function a(t,e){var n=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,a=n.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(t){o={error:t}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}function i(t){return this instanceof i?(this.v=t,this):new i(t)}n.__extends=function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},n.__assign=function(){return n.__assign=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.__assign.apply(this,arguments)},n.__rest=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(t);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(t,r[o])&&(n[r[o]]=t[r[o]])}return n},n.__decorate=function(t,e,n,r){var o,a=arguments.length,i=a<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,n):r;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)i=Reflect.decorate(t,e,n,r);else for(var u=t.length-1;u>=0;u--)(o=t[u])&&(i=(a<3?o(i):a>3?o(e,n,i):o(e,n))||i);return a>3&&i&&Object.defineProperty(e,n,i),i},n.__param=function(t,e){return function(n,r){e(n,r,t)}},n.__metadata=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},n.__awaiter=function(t,e,n,r){return new(n||(n=Promise))((function(o,a){function i(t){try{c(r.next(t))}catch(t){a(t)}}function u(t){try{c(r.throw(t))}catch(t){a(t)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(i,u)}c((r=r.apply(t,e||[])).next())}))},n.__generator=function(t,e){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(a){return function(u){return function(a){if(n)throw new TypeError(\"Generator is already executing.\");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=e.call(t,i)}catch(t){a=[6,t],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}},n.__createBinding=function(t,e,n,r){void 0===r&&(r=n),t[r]=e[n]},n.__exportStar=function(t,e){for(var n in t)\"default\"===n||e.hasOwnProperty(n)||(e[n]=t[n])},n.__values=o,n.__read=a,n.__spread=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(a(arguments[e]));return t},n.__spreadArrays=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),o=0;for(e=0;e<n;e++)for(var a=arguments[e],i=0,u=a.length;i<u;i++,o++)r[o]=a[i];return r},n.__await=i,n.__asyncGenerator=function(t,e,n){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=n.apply(t,e||[]),a=[];return r={},u(\"next\"),u(\"throw\"),u(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function u(t){o[t]&&(r[t]=function(e){return new Promise((function(n,r){a.push([t,e,n,r])>1||c(t,e)}))})}function c(t,e){try{(n=o[t](e)).value instanceof i?Promise.resolve(n.value.v).then(f,l):s(a[0][2],n)}catch(t){s(a[0][3],t)}var n}function f(t){c(\"next\",t)}function l(t){c(\"throw\",t)}function s(t,e){t(e),a.shift(),a.length&&c(a[0][0],a[0][1])}},n.__asyncDelegator=function(t){var e,n;return e={},r(\"next\"),r(\"throw\",(function(t){throw t})),r(\"return\"),e[Symbol.iterator]=function(){return this},e;function r(r,o){e[r]=t[r]?function(e){return(n=!n)?{value:i(t[r](e)),done:\"return\"===r}:o?o(e):e}:o}},n.__asyncValues=function(t){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=o(t),e={},r(\"next\"),r(\"throw\"),r(\"return\"),e[Symbol.asyncIterator]=function(){return this},e);function r(n){e[n]=t[n]&&function(e){return new Promise((function(r,o){(function(t,e,n,r){Promise.resolve(r).then((function(e){t({value:e,done:n})}),e)})(r,o,(e=t[n](e)).done,e.value)}))}}},n.__makeTemplateObject=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},n.__importStar=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e},n.__importDefault=function(t){return t&&t.__esModule?t:{default:t}},n.__classPrivateFieldGet=function(t,e){if(!e.has(t))throw new TypeError(\"attempted to get private field on non-instance\");return e.get(t)},n.__classPrivateFieldSet=function(t,e,n){if(!e.has(t))throw new TypeError(\"attempted to set private field on non-instance\");return e.set(t,n),n}},\n",
       "      function _(e,r,t){var l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r};Object.defineProperty(t,\"__esModule\",{value:!0});var o=e(3);t.version=o.version;var s=e(4);t.index=s.index,t.embed=l(e(4)),t.protocol=l(e(390)),t._testing=l(e(391));var n=e(19);t.logger=n.logger,t.set_log_level=n.set_log_level;var a=e(27);t.settings=a.settings;var i=e(7);t.Models=i.Models;var v=e(5);t.documents=v.documents;var _=e(392);t.safely=_.safely},\n",
       "      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0}),o.version=\"2.2.1\"},\n",
       "      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(5),s=e(19),r=e(29),d=e(13),_=e(8),c=e(16),i=e(381),a=e(383),u=e(382);var l=e(381);t.add_document_standalone=l.add_document_standalone,t.index=l.index;var m=e(383);t.add_document_from_session=m.add_document_from_session;var f=e(388);t.embed_items_notebook=f.embed_items_notebook,t.kernels=f.kernels;var g=e(382);async function O(e,o,t,c){_.isString(e)&&(e=JSON.parse(r.unescape(e)));const l={};for(const[o,t]of d.entries(e))l[o]=n.Document.from_json(t);const m=[];for(const e of o){const o=u._resolve_element(e),n=u._resolve_root_elements(e);if(null!=e.docid)m.push(await i.add_document_standalone(l[e.docid],o,n,e.use_for_title));else{if(null==e.token)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'token' was expected.\");{const r=a._get_ws_url(t,c);s.logger.debug(\"embed: computed ws url: \"+r);try{m.push(await a.add_document_from_session(r,e.token,o,n,e.use_for_title)),console.log(\"Bokeh items were rendered successfully\")}catch(e){console.log(\"Error rendering Bokeh items:\",e)}}}}return m}t.BOKEH_ROOT=g.BOKEH_ROOT,t.embed_item=async function(e,o){const t={},n=r.uuid4();t[n]=e.doc,null==o&&(o=e.target_id);const s=document.getElementById(o);null!=s&&s.classList.add(u.BOKEH_ROOT);const d={roots:{[e.root_id]:o},root_ids:[e.root_id],docid:n},[_]=await c.defer(()=>O(t,[d]));return _},t.embed_items=async function(e,o,t,n){return await c.defer(()=>O(e,o,t,n))}},\n",
       "      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});const o=e(1);o.__exportStar(e(6),_),o.__exportStar(e(121),_)},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),n=e(7),r=e(3),i=e(19),_=e(313),a=e(14),l=e(15),c=e(17),h=e(31),d=e(9),f=e(13),u=o.__importStar(e(120)),m=e(25),g=e(8),p=e(272),w=e(85),v=e(81),b=e(121);class y{constructor(e){this.document=e,this.session=null,this.subscribed_models=new Set}send_event(e){const t=new b.MessageSentEvent(this.document,\"bokeh_event\",e.to_json());this.document._trigger_on_change(t)}trigger(e){for(const t of this.subscribed_models)null!=e.origin&&e.origin!=t||t._process_event(e)}}s.EventManager=y,y.__name__=\"EventManager\",s.documents=[],s.DEFAULT_TITLE=\"Bokeh Application\";class j{constructor(){s.documents.push(this),this._init_timestamp=Date.now(),this._title=s.DEFAULT_TITLE,this._roots=[],this._all_models=new Map,this._all_models_freeze_count=0,this._callbacks=new Map,this._message_callbacks=new Map,this.event_manager=new y(this),this.idle=new l.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}get layoutables(){return this._roots.filter(e=>e instanceof p.LayoutDOM)}get is_idle(){for(const e of this.layoutables)if(!this._idle_roots.has(e))return!1;return!0}notify_idle(e){this._idle_roots.set(e,!0),this.is_idle&&(i.logger.info(`document idle at ${Date.now()-this._init_timestamp} ms`),this.event_manager.send_event(new _.DocumentReady),this.idle.emit())}clear(){this._push_all_models_freeze();try{for(;this._roots.length>0;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}}interactive_start(e){null==this._interactive_plot&&(this._interactive_plot=e,this._interactive_plot.trigger_event(new _.LODStart)),this._interactive_timestamp=Date.now()}interactive_stop(){null!=this._interactive_plot&&this._interactive_plot.trigger_event(new _.LODEnd),this._interactive_plot=null,this._interactive_timestamp=null}interactive_duration(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp}destructively_move(e){if(e===this)throw new Error(\"Attempted to overwrite a document with itself\");e.clear();const t=d.copy(this._roots);this.clear();for(const e of t)if(null!=e.document)throw new Error(\"Somehow we didn't detach \"+e);if(0!=this._all_models.size)throw new Error(\"this._all_models still had stuff in it: \"+this._all_models);for(const s of t)e.add_root(s);e.set_title(this._title)}_push_all_models_freeze(){this._all_models_freeze_count+=1}_pop_all_models_freeze(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()}_invalidate_all_models(){i.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()}_recompute_all_models(){let e=new Set;for(const t of this._roots)e=u.union(e,t.references());const t=new Set(this._all_models.values()),s=u.difference(t,e),o=u.difference(e,t),n=new Map;for(const t of e)n.set(t.id,t);for(const e of s)e.detach_document();for(const e of o)e.attach_document(this);this._all_models=n}roots(){return this._roots}add_root(e,t){if(i.logger.debug(\"Adding root: \"+e),!d.includes(this._roots,e)){this._push_all_models_freeze();try{this._roots.push(e)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new b.RootAddedEvent(this,e,t))}}remove_root(e,t){const s=this._roots.indexOf(e);if(!(s<0)){this._push_all_models_freeze();try{this._roots.splice(s,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new b.RootRemovedEvent(this,e,t))}}title(){return this._title}set_title(e,t){e!==this._title&&(this._title=e,this._trigger_on_change(new b.TitleChangedEvent(this,e,t)))}get_model_by_id(e){var t;return null!==(t=this._all_models.get(e))&&void 0!==t?t:null}get_model_by_name(e){const t=[];for(const s of this._all_models.values())s instanceof v.Model&&s.name==e&&t.push(s);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(`Multiple models are named '${e}'`)}}on_message(e,t){const s=this._message_callbacks.get(e);null==s?this._message_callbacks.set(e,new Set([t])):s.add(t)}remove_on_message(e,t){var s;null===(s=this._message_callbacks.get(e))||void 0===s||s.delete(t)}_trigger_on_message(e,t){const s=this._message_callbacks.get(e);if(null!=s)for(const e of s)e(t)}on_change(e,t=!1){this._callbacks.has(e)||this._callbacks.set(e,t)}remove_on_change(e){this._callbacks.delete(e)}_trigger_on_change(e){for(const[t,s]of this._callbacks)if(!s&&e instanceof b.DocumentEventBatch)for(const s of e.events)t(s);else t(e)}_notify_change(e,t,s,o,n){this._trigger_on_change(new b.ModelChangedEvent(this,e,t,s,o,null==n?void 0:n.setter_id,null==n?void 0:n.hint))}static _references_json(e,t=!0){const s=[];for(const o of e){const e=o.struct();e.attributes=o.attributes_as_json(t),delete e.attributes.id,s.push(e)}return s}static _instantiate_object(e,t,s){const o=Object.assign(Object.assign({},s),{id:e,__deferred__:!0});return new(n.Models(t))(o)}static _instantiate_references_json(e,t){const s=new Map;for(const o of e){const e=o.id,n=o.type,r=o.attributes||{};let i=t.get(e);null==i&&(i=j._instantiate_object(e,n,r),null!=o.subtype&&i.set_subtype(o.subtype)),s.set(i.id,i)}return s}static _resolve_refs(e,t,s,o){function n(e){if(c.is_ref(e)){if(t.has(e.id))return t.get(e.id);if(s.has(e.id))return s.get(e.id);throw new Error(`reference ${JSON.stringify(e)} isn't known (not in Document?)`)}return h.is_NDArray_ref(e)?h.decode_NDArray(e,o):g.isArray(e)?function(e){const t=[];for(const s of e)t.push(n(s));return t}(e):g.isPlainObject(e)?function(e){const t={};for(const[s,o]of f.entries(e))t[s]=n(o);return t}(e):e}return n(e)}static _initialize_references_json(e,t,s,o){const n=new Map;for(const{id:r,attributes:i}of e){const e=!t.has(r),_=e?s.get(r):t.get(r),a=j._resolve_refs(i,t,s,o);_.setv(a,{silent:!0}),n.set(r,{instance:_,is_new:e})}const r=[],i=new Set;function _(e){if(e instanceof a.HasProps){if(n.has(e.id)&&!i.has(e.id)){i.add(e.id);const{instance:t,is_new:s}=n.get(e.id),{attributes:o}=t;for(const e of f.values(o))_(e);s&&(t.finalize(),r.push(t))}}else if(g.isArray(e))for(const t of e)_(t);else if(g.isPlainObject(e))for(const t of f.values(e))_(t)}for(const e of n.values())_(e.instance);for(const e of r)e.connect_signals()}static _event_for_attribute_change(e,t,s,o,n){if(o.get_model_by_id(e.id).property(t).syncable){const r={kind:\"ModelChanged\",model:{id:e.id},attr:t,new:s};return a.HasProps._json_record_references(o,s,n,{recursive:!0}),r}return null}static _events_to_sync_objects(e,t,s,o){const n=Object.keys(e.attributes),r=Object.keys(t.attributes),_=d.difference(n,r),a=d.difference(r,n),l=d.intersection(n,r),c=[];for(const e of _)i.logger.warn(`Server sent key ${e} but we don't seem to have it in our JSON`);for(const n of a){const r=t.attributes[n];c.push(j._event_for_attribute_change(e,n,r,s,o))}for(const n of l){const r=e.attributes[n],i=t.attributes[n];null==r&&null==i||(null==r||null==i?c.push(j._event_for_attribute_change(e,n,i,s,o)):m.isEqual(r,i)||c.push(j._event_for_attribute_change(e,n,i,s,o)))}return c.filter(e=>null!=e)}static _compute_patch_since_json(e,t){const s=t.to_json(!1);function o(e){const t=new Map;for(const s of e.roots.references)t.set(s.id,s);return t}const n=o(e),r=new Map,i=[];for(const t of e.roots.root_ids)r.set(t,n.get(t)),i.push(t);const _=o(s),a=new Map,l=[];for(const e of s.roots.root_ids)a.set(e,_.get(e)),l.push(e);if(i.sort(),l.sort(),d.difference(i,l).length>0||d.difference(l,i).length>0)throw new Error(\"Not implemented: computing add/remove of document roots\");const c=new Set;let h=[];for(const e of t._all_models.keys())if(n.has(e)){const s=j._events_to_sync_objects(n.get(e),_.get(e),t,c);h=h.concat(s)}return{references:j._references_json(c,!1),events:h}}to_json_string(e=!0){return JSON.stringify(this.to_json(e))}to_json(e=!0){const t=this._roots.map(e=>e.id),s=this._all_models.values();return{version:r.version,title:this._title,roots:{root_ids:t,references:j._references_json(s,e)}}}static from_json_string(e){const t=JSON.parse(e);return j.from_json(t)}static from_json(e){i.logger.debug(\"Creating Document from JSON\");const t=e.version,s=-1!==t.indexOf(\"+\")||-1!==t.indexOf(\"-\"),o=`Library versions: JS (${r.version}) / Python (${t})`;s||r.version.replace(/-(dev|rc)\\./,\"$1\")==t?i.logger.debug(o):(i.logger.warn(\"JS/Python version mismatch\"),i.logger.warn(o));const n=e.roots,_=n.root_ids,a=n.references,l=j._instantiate_references_json(a,new Map);j._initialize_references_json(a,new Map,l,new Map);const c=new j;for(const e of _){const t=l.get(e);null!=t&&c.add_root(t)}return c.set_title(e.title),c}replace_with_json(e){j.from_json(e).destructively_move(this)}create_json_patch_string(e){return JSON.stringify(this.create_json_patch(e))}create_json_patch(e){const t=new Set,s=[];for(const o of e){if(o.document!==this)throw i.logger.warn(\"Cannot create a patch using events from a different document, event had \",o.document,\" we are \",this),new Error(\"Cannot create a patch using events from a different document\");s.push(o.json(t))}return{events:s,references:j._references_json(t)}}apply_json_patch(e,t=new Map,s){const o=e.references,n=e.events,r=j._instantiate_references_json(o,this._all_models);t instanceof Map||(t=new Map(t));for(const e of n)switch(e.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":{const t=e.model.id,s=this._all_models.get(t);if(null!=s)r.set(t,s);else if(!r.has(t))throw i.logger.warn(`Got an event for unknown model ${e.model}\"`),new Error(\"event model wasn't known\");break}}const _=new Map,a=new Map;for(const[e,t]of r)this._all_models.has(e)?_.set(e,t):a.set(e,t);j._initialize_references_json(o,_,a,t);for(const e of n)switch(e.kind){case\"MessageSent\":{const{msg_type:s,msg_data:o}=e;let n;if(void 0===o){if(1!=t.size)throw new Error(\"expected exactly one buffer\");{const[[,e]]=t;n=e}}else n=j._resolve_refs(o,_,a,t);this._trigger_on_message(s,n);break}case\"ModelChanged\":{const o=e.model.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot apply patch to ${o} which is not in the document`);const r=e.attr,i=j._resolve_refs(e.new,_,a,t);n.setv({[r]:i},{setter_id:s});break}case\"ColumnDataChanged\":{const o=e.column_source.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot stream to ${o} which is not in the document`);const r=j._resolve_refs(e.new,new Map,new Map,t);if(null!=e.cols)for(const e in n.data)e in r||(r[e]=n.data[e]);n.setv({data:r},{setter_id:s,check_eq:!1});break}case\"ColumnsStreamed\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot stream to ${t} which is not in the document`);if(!(o instanceof w.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");const n=e.data,r=e.rollover;o.stream(n,r,s);break}case\"ColumnsPatched\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot patch ${t} which is not in the document`);if(!(o instanceof w.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");const n=e.patches;o.patch(n,s);break}case\"RootAdded\":{const t=e.model.id,o=r.get(t);this.add_root(o,s);break}case\"RootRemoved\":{const t=e.model.id,o=r.get(t);this.remove_root(o,s);break}case\"TitleChanged\":this.set_title(e.title,s);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(e))}}}s.Document=j,j.__name__=\"Document\"},\n",
       "      function _(e,r,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),t=e(8),d=e(13),i=e(14);s.overrides={};const l=new Map;s.Models=e=>{const r=s.overrides[e]||l.get(e);if(null==r)throw new Error(`Model '${e}' does not exist. This could be due to a widget or a custom model not being registered before first usage.`);return r},s.Models.register=(e,r)=>{s.overrides[e]=r},s.Models.unregister=e=>{delete s.overrides[e]},s.Models.register_models=(e,r=!1,s)=>{var o;if(null!=e)for(const n of d.values(e))if(o=n,t.isObject(o)&&o.prototype instanceof i.HasProps){const e=n.__qualified__;r||!l.has(e)?l.set(e,n):null!=s?s(e):console.warn(`Model '${e}' was already registered`)}},s.register_models=s.Models.register_models,s.Models.registered_names=()=>Array.from(l.keys());const n=o.__importStar(e(34));s.register_models(n)},\n",
       "      function _(n,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});\n",
       "      //     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n",
       "      //     Underscore may be freely distributed under the MIT license.\n",
       "      const e=n(9),i=Object.prototype.toString;function o(n){return\"[object Number]\"===i.call(n)}function c(n){const t=typeof n;return\"function\"===t||\"object\"===t&&!!n}r.isBoolean=function(n){return!0===n||!1===n||\"[object Boolean]\"===i.call(n)},r.isNumber=o,r.isInteger=function(n){return o(n)&&Number.isInteger(n)},r.isString=function(n){return\"[object String]\"===i.call(n)},r.isFunction=function(n){return\"[object Function]\"===i.call(n)},r.isArray=function(n){return Array.isArray(n)},r.isArrayOf=function(n,t){return e.every(n,t)},r.isArrayableOf=function(n,t){for(let r=0,e=n.length;r<e;r++)if(!t(n[r]))return!1;return!0},r.isTypedArray=function(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)},r.isObject=c,r.isPlainObject=function(n){return c(n)&&(null==n.constructor||n.constructor===Object)},r.isIterable=function(n){return Symbol.iterator in Object(n)}},\n",
       "      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});\n",
       "      //     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n",
       "      //     Underscore may be freely distributed under the MIT license.\n",
       "      const r=n(10),o=n(11),i=n(12);e.map=i.map,e.reduce=i.reduce,e.min=i.min,e.min_by=i.min_by,e.max=i.max,e.max_by=i.max_by,e.sum=i.sum,e.cumsum=i.cumsum,e.every=i.every,e.some=i.some,e.find=i.find,e.find_last=i.find_last,e.find_index=i.find_index,e.find_last_index=i.find_last_index,e.sorted_index=i.sorted_index,e.is_empty=i.is_empty;const u=Array.prototype.slice;function c(n){return u.call(n)}function f(n){return[].concat(...n)}function s(n,t){return-1!==n.indexOf(t)}function a(n,t,e=1){o.assert(e>0,\"'step' must be a positive number\"),null==t&&(t=n,n=0);const{max:r,ceil:i,abs:u}=Math,c=n<=t?e:-e,f=r(i(u(t-n)/e),0),s=new Array(f);for(let t=0;t<f;t++,n+=c)s[t]=n;return s}e.head=function(n){return n[0]},e.tail=function(n){return n[n.length-1]},e.last=function(n){return n[n.length-1]},e.copy=c,e.concat=f,e.includes=s,e.contains=s,e.nth=function(n,t){return n[t>=0?t:n.length+t]},e.zip=function(...n){if(0==n.length)return[];const t=i.min(n.map(n=>n.length)),e=n.length,r=new Array(t);for(let o=0;o<t;o++){r[o]=new Array(e);for(let t=0;t<e;t++)r[o][t]=n[t][o]}return r},e.unzip=function(n){const t=n.length,e=i.min(n.map(n=>n.length)),r=Array(e);for(let n=0;n<e;n++)r[n]=new Array(t);for(let o=0;o<t;o++)for(let t=0;t<e;t++)r[t][o]=n[o][t];return r},e.range=a,e.linspace=function(n,t,e=100){const r=(t-n)/(e-1),o=new Array(e);for(let t=0;t<e;t++)o[t]=n+r*t;return o},e.transpose=function(n){const t=n.length,e=n[0].length,r=[];for(let o=0;o<e;o++){r[o]=[];for(let e=0;e<t;e++)r[o][e]=n[e][o]}return r},e.argmin=function(n){return i.min_by(a(n.length),t=>n[t])},e.argmax=function(n){return i.max_by(a(n.length),t=>n[t])},e.sort_by=function(n,t){const e=n.map((n,e)=>({value:n,index:e,key:t(n)}));return e.sort((n,t)=>{const e=n.key,r=t.key;if(e!==r){if(e>r||void 0===e)return 1;if(e<r||void 0===r)return-1}return n.index-t.index}),e.map(n=>n.value)},e.uniq=function(n){const t=new Set;for(const e of n)t.add(e);return[...t]},e.uniq_by=function(n,t){const e=[],r=[];for(const o of n){const n=t(o);s(r,n)||(r.push(n),e.push(o))}return e},e.union=function(...n){const t=new Set;for(const e of n)for(const n of e)t.add(n);return[...t]},e.intersection=function(n,...t){const e=[];n:for(const r of n)if(!s(e,r)){for(const n of t)if(!s(n,r))continue n;e.push(r)}return e},e.difference=function(n,...t){const e=f(t);return n.filter(n=>!s(e,n))},e.remove_at=function(n,t){const e=c(n);return e.splice(t,1),e},e.remove_by=function(n,t){for(let e=0;e<n.length;)t(n[e])?n.splice(e,1):e++},e.shuffle=function(n){const t=n.length,e=new Array(t);for(let o=0;o<t;o++){const t=r.randomIn(0,o);t!==o&&(e[o]=e[t]),e[t]=n[o]}return e},e.pairwise=function(n,t){const e=n.length,r=new Array(e-1);for(let o=0;o<e-1;o++)r[o]=t(n[o],n[o+1]);return r},e.reversed=function(n){const t=n.length,e=new Array(t);for(let r=0;r<t;r++)e[t-r-1]=n[r];return e},e.repeat=function(n,t){const e=new Array(t);for(let r=0;r<t;r++)e[r]=n;return e}},\n",
       "      function _(n,t,r){function e(n){if(0==n)return 0;for(;n<=0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;return n}function a(n,t){return e(n-t)}function o(){return Math.random()}Object.defineProperty(r,\"__esModule\",{value:!0}),r.angle_norm=e,r.angle_dist=a,r.angle_between=function(n,t,r,o){const u=a(t,r);if(0==u)return!1;if(u==2*Math.PI)return!0;const f=e(n),i=a(t,f)<=u&&a(f,r)<=u;return 0==o?i:!i},r.random=o,r.randomIn=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},r.atan2=function(n,t){return Math.atan2(t[1]-n[1],t[0]-n[0])},r.radians=function(n){return n*(Math.PI/180)},r.degrees=function(n){return n/(Math.PI/180)},r.rnorm=function(n,t){let r,e;for(;r=o(),e=o(),e=(2*e-1)*Math.sqrt(1/Math.E*2),!(-4*r*r*Math.log(r)>=e*e););let a=e/r;return a=n+t*a,a},r.clamp=function(n,t,r){return n<t?t:n>r?r:n}},\n",
       "      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});class o extends Error{}n.AssertionError=o,o.__name__=\"AssertionError\",n.assert=function(e,r){if(!(!0===e||!1!==e&&e()))throw new o(null!=r?r:\"Assertion failed\")},n.unreachable=function(){throw new Error(\"unreachable code\")}},\n",
       "      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=n(8),o=n(10);function i(n,t,e,...r){const o=n.length;t<0&&(t+=o),t<0?t=0:t>o&&(t=o),null==e||e>o-t?e=o-t:e<0&&(e=0);const i=o-e+r.length,u=new n.constructor(i);let l=0;for(;l<t;l++)u[l]=n[l];for(const n of r)u[l++]=n;for(let r=t+e;r<o;r++)u[l++]=n[r];return u}function u(n,t){return i(n,t,n.length-t)}function l(n,t){const e=n.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=t(n[o],o,n);return r}function c(n,t,e){const r=n.length;if(void 0===e&&0==r)throw new Error(\"can't reduce an empty array without an initial value\");let o,i;for(void 0===e?(o=n[0],i=1):(o=e,i=0);i<r;i++)o=t(o,n[i],i,n);return o}function f(n){return function(t,e){const r=t.length;let o=n>0?0:r-1;for(;o>=0&&o<r;o+=n)if(e(t[o]))return o;return-1}}function s(n,t){let e=0,r=n.length;for(;e<r;){const o=Math.floor((e+r)/2);n[o]<t?e=o+1:r=o}return e}function h(n,t,e,r,o){const i=(o-e)/(r-t);let u=i*(n-t)+e;return isFinite(u)||(u=i*(n-r)+o,isFinite(u)||e!=o||(u=e)),u}function a(n,t){if(n<t[0])return-1;if(n>t[t.length-1])return t.length;let e=0,r=t.length-1;for(;r-e!=1;){const o=e+Math.floor((r-e)/2);n>=t[o]?e=o:r=o}return e}e.is_empty=function(n){return 0==n.length},e.copy=function(n){return r.isArray(n)?n.slice():new n.constructor(n)},e.splice=i,e.head=u,e.insert=function(n,t,e){return i(n,e,0,t)},e.append=function(n,t){return i(n,n.length,0,t)},e.prepend=function(n,t){return i(n,0,0,t)},e.indexOf=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.subselect=function(n,t){const e=t.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=n[t[o]];return r},e.map=l,e.filter=function(n,t){const e=n.length,r=new n.constructor(e);let o=0;for(let i=0;i<e;i++){const e=n[i];t(e,i,n)&&(r[o++]=e)}return u(r,o)},e.reduce=c,e.min=function(n){let t,e=1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t<e&&(e=t);return e},e.max=function(n){let t,e=-1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t>e&&(e=t);return e},e.minmax=function(n){let t,e=1/0,r=-1/0;for(let o=0,i=n.length;o<i;o++)t=n[o],isNaN(t)||(t<e&&(e=t),t>r&&(r=t));return[e,r]},e.min_by=function(n,t){if(0==n.length)throw new Error(\"min_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],u=t(i);u<r&&(e=i,r=u)}return e},e.max_by=function(n,t){if(0==n.length)throw new Error(\"max_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],u=t(i);u>r&&(e=i,r=u)}return e},e.sum=function(n){let t=0;for(let e=0,r=n.length;e<r;e++)t+=n[e];return t},e.cumsum=function(n){const t=new n.constructor(n.length);return c(n,(n,e,r)=>t[r]=n+e,0),t},e.every=function(n,t){for(let e=0,r=n.length;e<r;e++)if(!t(n[e]))return!1;return!0},e.some=function(n,t){for(let e=0,r=n.length;e<r;e++)if(t(n[e]))return!0;return!1},e.index_of=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.find_index=f(1),e.find_last_index=f(-1),e.find=function(n,t){const r=e.find_index(n,t);return-1==r?void 0:n[r]},e.find_last=function(n,t){const r=e.find_last_index(n,t);return-1==r?void 0:n[r]},e.sorted_index=s,e.bin_counts=function(n,t){const e=t.length-1,r=Array(e).fill(0);for(let i=0;i<n.length;i++){const u=s(t,n[i]);r[o.clamp(u-1,0,e-1)]+=1}return r},e.interpolate=function(n,t,e){const r=n.length,o=new Array(r);for(let i=0;i<r;i++){const r=n[i];if(isNaN(r)){o[i]=r;continue}const u=a(r,t);if(-1==u)o[i]=e[0];else if(u==t.length)o[i]=e[e.length-1];else if(u==t.length-1||t[u]==r)o[i]=e[u];else{const n=t[u],l=e[u],c=t[u+1],f=e[u+1];o[i]=h(r,n,l,c,f)}}return o},e.left_edge_index=a,e.norm=function(n,t,e){const r=e-t;return l(n,n=>(n-t)/r)}},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const c=e(9);function o(e){return Object.keys(e).length}n.keys=Object.keys,n.values=Object.values,n.entries=Object.entries,n.extend=Object.assign,n.clone=function(e){return Object.assign({},e)},n.merge=function(e,t){const n=Object.create(Object.prototype),o=c.concat([Object.keys(e),Object.keys(t)]);for(const s of o){const o=e.hasOwnProperty(s)?e[s]:[],r=t.hasOwnProperty(s)?t[s]:[];n[s]=c.union(o,r)}return n},n.size=o,n.isEmpty=function(e){return 0==o(e)},n.to_object=function(e){const t={};for(const[n,c]of e)t[n]=c;return t}},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=t(1),n=t(15),i=t(17),o=s.__importStar(t(18)),c=s.__importStar(t(21)),a=s.__importStar(t(28)),_=t(29),u=t(9),f=t(13),l=t(8),h=t(25),p=t(5),d=t(30),y=t(31),g=t(25),v=t(33),m=s.__importStar(t(21));class b extends(n.Signalable()){constructor(t={}){var e;super(),this._subtype=void 0,this.document=null,this.destroyed=new n.Signal0(this,\"destroyed\"),this.change=new n.Signal0(this,\"change\"),this.transformchange=new n.Signal0(this,\"transformchange\"),this.properties={},this._pending=!1,this._changing=!1;const r=t instanceof Map?t.get:e=>t[e];for(const[t,{type:e,default_value:s,options:n}]of f.entries(this._props)){let i;i=e instanceof c.Kind?new o.PrimitiveProperty(this,t,e,s,r(t),n):new e(this,t,c.Any,s,r(t),n),this.properties[t]=i}null!==(e=r(\"__deferred__\"))&&void 0!==e&&e||(this.finalize(),this.connect_signals())}set type(t){console.warn(\"prototype.type = 'ModelName' is deprecated, use static __name__ instead\"),this.constructor.__name__=t}get type(){return this.constructor.__qualified__}static get __qualified__(){const{__module__:t,__name__:e}=this;return null!=t?`${t}.${e}`:e}static get[Symbol.toStringTag](){return this.__name__}static init_HasProps(){this.prototype._props={},this.prototype._mixins=[],this.define({id:[o.String,()=>_.uniqueId()]})}static _fix_default(t,e){if(void 0!==t){if(l.isFunction(t))return t;if(l.isArray(t))return()=>u.copy(t);if(l.isPlainObject(t))return()=>f.clone(t);if(l.isObject(t))throw new Error(t+\" must be explicitly wrapped in a function\");return()=>t}}static define(t){for(const[e,r]of f.entries(l.isFunction(t)?t(m):t)){if(null!=this.prototype._props[e])throw new Error(`attempted to redefine property '${this.prototype.type}.${e}'`);if(null!=this.prototype[e])throw new Error(`attempted to redefine attribute '${this.prototype.type}.${e}'`);Object.defineProperty(this.prototype,e,{get(){return this.properties[e].get_value()},set(t){return this.setv({[e]:t}),this},configurable:!1,enumerable:!0});const[t,s,n]=r,i={type:t,default_value:this._fix_default(s,e),options:n},o=f.clone(this.prototype._props);o[e]=i,this.prototype._props=o}}static internal(t){const e={};for(const[r,s]of f.entries(t)){const[t,n,i={}]=s;e[r]=[t,n,Object.assign(Object.assign({},i),{internal:!0})]}this.define(e)}static mixins(t){function e(t){switch(t){case\"line\":return a.LineVector;case\"fill\":return a.FillVector;case\"hatch\":return a.HatchVector;case\"text\":return a.TextVector;default:throw new Error(`Unknown property mixin kind '${t}'`)}}function r(t,e){const r={};for(const[s,n]of f.entries(e))r[t+s]=n;return r}function s(t){const[e]=Object.keys(t),[r]=e.split(\"_\",1);return r}l.isArray(t)||(t=[t]);const n={},i=[];for(const o of t)if(l.isString(o)){const[t,s=\"\"]=o.split(\":\"),c=e(t);i.push(o),f.extend(n,r(s,c))}else if(l.isArray(o)){const[t,e]=o;i.push(`${s(e)}:${t}`),f.extend(n,r(t,e))}else{const t=o;i.push(s(t)),f.extend(n,t)}this.define(n),this.prototype._mixins=[...this.prototype._mixins,...i]}static override(t){for(const[e,r]of f.entries(t)){const t=this._fix_default(r,e),s=this.prototype._props[e];if(null==s)throw new Error(`attempted to override nonexistent '${this.prototype.type}.${e}'`);const n=f.clone(this.prototype._props);n[e]=Object.assign(Object.assign({},s),{default_value:t}),this.prototype._props=n}}toString(){return`${this.type}(${this.id})`}property(t){const e=this.properties[t];if(null!=e)return e;throw new Error(`unknown property ${this.type}.${t}`)}get attributes(){const t={};for(const e of this)t[e.attr]=e.get_value();return t}[g.equals](t,e){for(const r of this){const s=t.property(r.attr);if(e.eq(r.get_value(),s.get_value()))return!1}return!0}[v.pretty](t){const e=t.token,r=[];for(const s of this)if(s.dirty){const n=s.get_value();r.push(`${s.attr}${e(\":\")} ${t.to_string(n)}`)}return`${this.constructor.__qualified__}${e(\"(\")}${e(\"{\")}${r.join(e(\",\")+\" \")}${e(\"}\")}${e(\")\")}`}finalize(){for(const t of this)null!=t.spec.transform&&this.connect(t.spec.transform.change,()=>this.transformchange.emit());this.initialize()}initialize(){}connect_signals(){}disconnect_signals(){n.Signal.disconnectReceiver(this)}destroy(){this.disconnect_signals(),this.destroyed.emit()}clone(){return new this.constructor(this.attributes)}_setv(t,e){const r=e.check_eq,s=[],n=this._changing;this._changing=!0;for(const[e,n]of t)!1!==r&&h.isEqual(e.get_value(),n)||(e.set_value(n),s.push(e));s.length>0&&(this._pending=!0);for(const t of s)t.change.emit();if(!n){if(!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}}setv(t,e={}){const r=f.entries(t);if(0==r.length)return;if(!0===e.silent){for(const[t,e]of r)this.properties[t].set_value(e);return}const s=new Map,n=new Map;for(const[t,e]of r){const r=this.properties[t];s.set(r,e),n.set(r,r.get_value())}this._setv(s,e);const{document:i}=this;if(null!=i){const t=[];for(const[e,r]of n)t.push([e,r,e.get_value()]);for(const[,e,r]of t)if(this._needs_invalidate(e,r)){i._invalidate_all_models();break}this._push_changes(t,e)}}getv(t){return this.property(t).get_value()}ref(){return{id:this.id}}struct(){const t={type:this.type,id:this.id,attributes:{}};return null!=this._subtype&&(t.subtype=this._subtype),t}set_subtype(t){this._subtype=t}*[Symbol.iterator](){yield*f.values(this.properties)}*syncable_properties(){for(const t of this)t.syncable&&(yield t)}serializable_attributes(){const t={};for(const e of this.syncable_properties())t[e.attr]=e.get_value();return t}static _value_to_json(t){if(t instanceof b)return t.ref();if(d.is_NDArray(t))return y.encode_NDArray(t);if(l.isArray(t)||l.isTypedArray(t)){const e=t.length,r=new Array(e);for(let s=0;s<e;s++){const e=t[s];r[s]=b._value_to_json(e)}return r}if(l.isPlainObject(t)){const e={};for(const[r,s]of f.entries(t))e[r]=b._value_to_json(s);return e}return t}attributes_as_json(t=!0,e=b._value_to_json){const r={};for(const s of this)s.syncable&&(t||s.dirty)&&(r[s.attr]=e(s.get_value()));return r}static _json_record_references(t,e,r,s){const{recursive:n}=s;if(i.is_ref(e)){const s=t.get_model_by_id(e.id);null==s||r.has(s)||b._value_record_references(s,r,{recursive:n})}else if(l.isArray(e))for(const s of e)b._json_record_references(t,s,r,{recursive:n});else if(l.isPlainObject(e))for(const s of f.values(e))b._json_record_references(t,s,r,{recursive:n})}static _value_record_references(t,e,r){const{recursive:s}=r;if(t instanceof b){if(!e.has(t)&&(e.add(t),s)){const r=t._immediate_references();for(const t of r)b._value_record_references(t,e,{recursive:!0})}}else if(l.isArray(t))for(const r of t)b._value_record_references(r,e,{recursive:s});else if(l.isPlainObject(t))for(const r of f.values(t))b._value_record_references(r,e,{recursive:s})}_immediate_references(){const t=new Set;for(const e of this.syncable_properties()){const r=e.get_value();b._value_record_references(r,t,{recursive:!1})}return t}references(){const t=new Set;return b._value_record_references(this,t,{recursive:!0}),t}_doc_attached(){}_doc_detached(){}attach_document(t){if(null!=this.document&&this.document!=t)throw new Error(\"models must be owned by only a single document\");this.document=t,this._doc_attached()}detach_document(){this._doc_detached(),this.document=null}_needs_invalidate(t,e){const r=new Set;b._value_record_references(e,r,{recursive:!1});const s=new Set;b._value_record_references(t,s,{recursive:!1});for(const t of r)if(!s.has(t))return!0;for(const t of s)if(!r.has(t))return!0;return!1}_push_changes(t,e={}){const{document:r}=this;if(null==r)return;const{setter_id:s}=e,n=[];for(const[e,i,o]of t)e.syncable&&n.push(new p.ModelChangedEvent(r,this,e.attr,i,o,s));if(0!=n.length){let t;1==n.length?[t]=n:t=new p.DocumentEventBatch(r,n,s),r._trigger_on_change(t)}}materialize_dataspecs(t){const e={};for(const r of this){if(!(r instanceof o.VectorSpec))continue;if(r.optional&&null==r.spec.value&&!r.dirty)continue;const s=r.attr,n=r.array(t);e[\"_\"+s]=n,r instanceof o.DistanceSpec&&(e[\"max_\"+s]=u.max(n))}return e}on_change(t,e){for(const r of l.isArray(t)?t:[t])this.connect(r.change,e)}}r.HasProps=b,b.init_HasProps()},\n",
       "      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const l=n(16),s=n(9);class o{constructor(n,t){this.sender=n,this.name=t}connect(n,t=null){c.has(this.sender)||c.set(this.sender,[]);const e=c.get(this.sender);if(null!=u(e,this,n,t))return!1;const l=null!=t?t:n;r.has(l)||r.set(l,[]);const s=r.get(l),o={signal:this,slot:n,context:t};return e.push(o),s.push(o),!0}disconnect(n,t=null){const e=c.get(this.sender);if(null==e||0===e.length)return!1;const l=u(e,this,n,t);if(null==l)return!1;const s=null!=t?t:n,o=r.get(s);return l.signal=null,a(e),a(o),!0}emit(n){var t;const e=null!==(t=c.get(this.sender))&&void 0!==t?t:[];for(const{signal:t,slot:l,context:s}of e)t===this&&l.call(s,n,this.sender)}}e.Signal=o,o.__name__=\"Signal\";class i extends o{emit(){super.emit(void 0)}}e.Signal0=i,i.__name__=\"Signal0\",function(n){n.disconnectBetween=function(n,t){const e=c.get(n);if(null==e||0===e.length)return;const l=r.get(t);if(null!=l&&0!==l.length){for(const t of l){if(null==t.signal)return;t.signal.sender===n&&(t.signal=null)}a(e),a(l)}},n.disconnectSender=function(n){var t;const e=c.get(n);if(null!=e&&0!==e.length){for(const n of e){if(null==n.signal)return;const e=null!==(t=n.context)&&void 0!==t?t:n.slot;n.signal=null,a(r.get(e))}a(e)}},n.disconnectReceiver=function(n){const t=r.get(n);if(null!=t&&0!==t.length){for(const n of t){if(null==n.signal)return;const t=n.signal.sender;n.signal=null,a(c.get(t))}a(t)}},n.disconnectAll=function(n){const t=c.get(n);if(null!=t&&0!==t.length){for(const n of t)n.signal=null;a(t)}const e=r.get(n);if(null!=e&&0!==e.length){for(const n of e)n.signal=null;a(e)}}}(o||(e.Signal=o={})),e.Signalable=function(){return class{connect(n,t){return n.connect(t,this)}disconnect(n,t){return n.disconnect(t,this)}}};const c=new WeakMap,r=new WeakMap;function u(n,t,e,l){return s.find(n,n=>n.signal===t&&n.slot===e&&n.context===l)}const g=new Set;function a(n){0===g.size&&l.defer(f),g.add(n)}function f(){for(const n of g)s.remove_by(n,n=>null==n.signal);g.clear()}},\n",
       "      function _(n,e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.delay=\n",
       "      //     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n",
       "      //     Underscore may be freely distributed under the MIT license.\n",
       "      function(n,e){return setTimeout(n,e)};const u=\"function\"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;t.defer=function(n){return new Promise(e=>{u(()=>e(n()))})},t.throttle=function(n,e,t={}){let u,o,i,r=null,l=0;const c=function(){l=!1===t.leading?0:Date.now(),r=null,i=n.apply(u,o),r||(u=o=null)};return function(){const a=Date.now();l||!1!==t.leading||(l=a);const f=e-(a-l);return u=this,o=arguments,f<=0||f>e?(r&&(clearTimeout(r),r=null),l=a,i=n.apply(u,o),r||(u=o=null)):r||!1===t.trailing||(r=setTimeout(c,f)),i}},t.once=function(n){let e,t=!1;return function(){return t||(t=!0,e=n()),e}}},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(8),r=e(13);t.is_ref=function(e){if(i.isPlainObject(e)){const n=r.keys(e);return 1==n.length&&\"id\"==n[0]}return!1}},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=e(1),s=e(15),i=e(19),r=a.__importStar(e(20)),l=e(24),o=e(9),c=e(12),_=e(22),u=e(8),d=e(27);function p(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function S(e){return u.isPlainObject(e)&&(void 0===e.value?0:1)+(void 0===e.field?0:1)+(void 0===e.expr?0:1)==1}n.isSpec=S;class m{constructor(e,t,n,a,i,r={}){var l,o;let c;if(this.obj=e,this.attr=t,this.kind=n,this.default_value=a,this._dirty=!1,this.change=new s.Signal0(this.obj,\"change\"),this.internal=null!==(l=r.internal)&&void 0!==l&&l,this.optional=null!==(o=r.optional)&&void 0!==o&&o,void 0!==i)c=i,this._dirty=!0;else{const t=this._default_override();c=void 0!==t?t:void 0!==a?a(e):null}this._update(c)}get is_value(){return void 0!==this.spec.value}get syncable(){return!this.internal}get_value(){return this.spec.value}set_value(e){this._update(e),this._dirty=!0}_default_override(){}get dirty(){return this._dirty}_update(e){null!=e&&this.validate(e),this.spec={value:e}}toString(){return`Prop(${this.obj}.${this.attr}, spec: ${p(this.spec)})`}normalize(e){return e}validate(e){if(!this.valid(e))throw new Error(`${this.obj.type}.${this.attr} given invalid value: ${p(e)}`)}valid(e){return this.kind.valid(e)}value(e=!0){if(!this.is_value)throw new Error(\"attempted to retrieve property value for property without value specification\");let t=this.normalize([this.spec.value])[0];return null!=this.spec.transform&&e&&(t=this.spec.transform.compute(t)),t}}n.Property=m,m.__name__=\"Property\";class h extends m{}n.PrimitiveProperty=h,h.__name__=\"PrimitiveProperty\";class v extends m{}n.Any=v,v.__name__=\"Any\";class g extends m{valid(e){return u.isArray(e)||e instanceof Float32Array||e instanceof Float64Array}}n.Array=g,g.__name__=\"Array\";class x extends m{valid(e){return u.isBoolean(e)}}n.Boolean=x,x.__name__=\"Boolean\";class y extends m{valid(e){return u.isString(e)&&_.is_color(e)}}n.Color=y,y.__name__=\"Color\";class f extends m{}n.Instance=f,f.__name__=\"Instance\";class A extends m{valid(e){return u.isNumber(e)}}n.Number=A,A.__name__=\"Number\";class P extends A{valid(e){return u.isNumber(e)&&(0|e)==e}}n.Int=P,P.__name__=\"Int\";class C extends A{}n.Angle=C,C.__name__=\"Angle\";class b extends A{valid(e){return u.isNumber(e)&&0<=e&&e<=1}}n.Percent=b,b.__name__=\"Percent\";class L extends m{valid(e){return u.isString(e)}}n.String=L,L.__name__=\"String\";class N extends m{valid(e){return null===e||u.isString(e)}}n.NullString=N,N.__name__=\"NullString\";class T extends L{}n.FontSize=T,T.__name__=\"FontSize\";class q extends L{_default_override(){return d.settings.dev?\"Bokeh\":void 0}}n.Font=q,q.__name__=\"Font\";class B extends m{valid(e){return u.isString(e)&&o.includes(this.enum_values,e)}}function M(e){return class extends B{get enum_values(){return[...e]}}}n.EnumProperty=B,B.__name__=\"EnumProperty\",n.Enum=M;class w extends B{get enum_values(){return[...r.Direction]}normalize(e){const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)switch(e[n]){case\"clock\":t[n]=0;break;case\"anticlock\":t[n]=1}return t}}n.Direction=w,w.__name__=\"Direction\",n.Anchor=M(r.Anchor),n.AngleUnits=M(r.AngleUnits),n.BoxOrigin=M(r.BoxOrigin),n.ButtonType=M(r.ButtonType),n.CalendarPosition=M(r.CalendarPosition),n.Dimension=M(r.Dimension),n.Dimensions=M(r.Dimensions),n.Distribution=M(r.Distribution),n.FontStyle=M(r.FontStyle),n.HatchPatternType=M(r.HatchPatternType),n.HTTPMethod=M(r.HTTPMethod),n.HexTileOrientation=M(r.HexTileOrientation),n.HoverMode=M(r.HoverMode),n.LatLon=M(r.LatLon),n.LegendClickPolicy=M(r.LegendClickPolicy),n.LegendLocation=M(r.LegendLocation),n.LineCap=M(r.LineCap),n.LineJoin=M(r.LineJoin),n.LinePolicy=M(r.LinePolicy),n.Location=M(r.Location),n.Logo=M(r.Logo),n.MarkerType=M(r.MarkerType),n.MutedPolicy=M(r.MutedPolicy),n.Orientation=M(r.Orientation),n.OutputBackend=M(r.OutputBackend),n.PaddingUnits=M(r.PaddingUnits),n.Place=M(r.Place),n.PointPolicy=M(r.PointPolicy),n.RadiusDimension=M(r.RadiusDimension),n.RenderLevel=M(r.RenderLevel),n.RenderMode=M(r.RenderMode),n.ResetPolicy=M(r.ResetPolicy),n.RoundingFunction=M(r.RoundingFunction),n.Side=M(r.Side),n.SizingMode=M(r.SizingMode),n.Sort=M(r.Sort),n.SpatialUnits=M(r.SpatialUnits),n.StartEnd=M(r.StartEnd),n.StepMode=M(r.StepMode),n.TapBehavior=M(r.TapBehavior),n.TextAlign=M(r.TextAlign),n.TextBaseline=M(r.TextBaseline),n.TextureRepetition=M(r.TextureRepetition),n.TickLabelOrientation=M(r.TickLabelOrientation),n.TooltipAttachment=M(r.TooltipAttachment),n.UpdateMode=M(r.UpdateMode),n.VerticalAlign=M(r.VerticalAlign);class D extends m{get_value(){return null===this.spec.value?null:this.spec}_update(e){S(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}}n.ScalarSpec=D,D.__name__=\"ScalarSpec\";class k extends D{}n.AnyScalar=k,k.__name__=\"AnyScalar\";class F extends D{}n.ColorScalar=F,F.__name__=\"ColorScalar\";class U extends D{}n.NumberScalar=U,U.__name__=\"NumberScalar\";class z extends D{}n.StringScalar=z,z.__name__=\"StringScalar\";class O extends D{}n.NullStringScalar=O,O.__name__=\"NullStringScalar\";class R extends D{}n.ArrayScalar=R,R.__name__=\"ArrayScalar\";class $ extends D{}n.LineJoinScalar=$,$.__name__=\"LineJoinScalar\";class E extends D{}n.LineCapScalar=E,E.__name__=\"LineCapScalar\";class H extends D{}n.FontSizeScalar=H,H.__name__=\"FontSizeScalar\";class j extends D{}n.FontStyleScalar=j,j.__name__=\"FontStyleScalar\";class X extends D{}n.TextAlignScalar=X,X.__name__=\"TextAlignScalar\";class Y extends D{}n.TextBaselineScalar=Y,Y.__name__=\"TextBaselineScalar\";class I extends m{get_value(){return null===this.spec.value?null:this.spec}_update(e){S(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}array(e){var t;let n;const a=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=this.spec.field){const t=e.get_column(this.spec.field);if(null!=t)n=this.normalize(t);else{i.logger.warn(`attempted to retrieve property array for nonexistent field '${this.spec.field}'`);const e=new l.NumberArray(a);e.fill(NaN),n=e}}else if(null!=this.spec.expr)n=this.normalize(this.spec.expr.v_compute(e));else{const e=this.value(!1);if(u.isNumber(e)){const t=new l.NumberArray(a);t.fill(e),n=t}else n=o.repeat(e,a)}return null!=this.spec.transform&&(n=this.spec.transform.v_compute(n)),n}}n.VectorSpec=I,I.__name__=\"VectorSpec\";class J extends I{}n.DataSpec=J,J.__name__=\"DataSpec\";class V extends I{_update(e){super._update(e),null==this.spec.units&&(this.spec.units=this.default_units);const t=this.spec.units;if(!o.includes(this.valid_units,t))throw new Error(`units must be one of ${this.valid_units.join(\", \")}; got: ${t}`)}get units(){return this.spec.units}set units(e){this.spec.units=e}}n.UnitsSpec=V,V.__name__=\"UnitsSpec\";class G extends V{array(e){return new l.NumberArray(super.array(e))}}n.NumberUnitsSpec=G,G.__name__=\"NumberUnitsSpec\";class K extends J{}n.BaseCoordinateSpec=K,K.__name__=\"BaseCoordinateSpec\";class Q extends K{}n.CoordinateSpec=Q,Q.__name__=\"CoordinateSpec\";class W extends K{}n.CoordinateSeqSpec=W,W.__name__=\"CoordinateSeqSpec\";class Z extends K{}n.CoordinateSeqSeqSeqSpec=Z,Z.__name__=\"CoordinateSeqSeqSeqSpec\";class ee extends Q{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSpec=ee,ee.__name__=\"XCoordinateSpec\";class te extends Q{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSpec=te,te.__name__=\"YCoordinateSpec\";class ne extends W{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSpec=ne,ne.__name__=\"XCoordinateSeqSpec\";class ae extends W{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSpec=ae,ae.__name__=\"YCoordinateSeqSpec\";class se extends Z{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSeqSeqSpec=se,se.__name__=\"XCoordinateSeqSeqSeqSpec\";class ie extends Z{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSeqSeqSpec=ie,ie.__name__=\"YCoordinateSeqSeqSeqSpec\";class re extends G{get default_units(){return\"rad\"}get valid_units(){return[...r.AngleUnits]}normalize(e){return\"deg\"==this.spec.units&&(e=c.map(e,e=>e*Math.PI/180)),e=c.map(e,e=>-e),super.normalize(e)}}n.AngleSpec=re,re.__name__=\"AngleSpec\";class le extends G{get default_units(){return\"data\"}get valid_units(){return[...r.SpatialUnits]}}n.DistanceSpec=le,le.__name__=\"DistanceSpec\";class oe extends J{array(e){return new Uint8Array(super.array(e))}}n.BooleanSpec=oe,oe.__name__=\"BooleanSpec\";class ce extends J{array(e){return new l.NumberArray(super.array(e))}}n.NumberSpec=ce,ce.__name__=\"NumberSpec\";class _e extends J{array(e){const t=super.array(e),n=t.length,a=new l.ColorArray(n);for(let e=0;e<n;e++){const n=t[e];if(u.isNumber(n))a[e]=n;else{const t=_.color2rgba(n);a[e]=_.encode_rgba(t)}}return a}}n.ColorSpec=_e,_e.__name__=\"ColorSpec\";class ue extends J{}n.FontSizeSpec=ue,ue.__name__=\"FontSizeSpec\";class de extends J{}n.MarkerSpec=de,de.__name__=\"MarkerSpec\";class pe extends J{}n.StringSpec=pe,pe.__name__=\"StringSpec\";class Se extends J{}n.NullStringSpec=Se,Se.__name__=\"NullStringSpec\";class me extends J{}n.NDArraySpec=me,me.__name__=\"NDArraySpec\"},\n",
       "      function _(e,l,o){Object.defineProperty(o,\"__esModule\",{value:!0});const n=e(8),t=e(13),s={};class g{constructor(e,l){this.name=e,this.level=l}}o.LogLevel=g,g.__name__=\"LogLevel\";class r{constructor(e,l=r.INFO){this._name=e,this.set_level(l)}static get levels(){return Object.keys(r.log_levels)}static get(e,l=r.INFO){if(e.length>0){let o=s[e];return null==o&&(s[e]=o=new r(e,l)),o}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")}get level(){return this.get_level()}get_level(){return this._log_level}set_level(e){if(e instanceof g)this._log_level=e;else{if(!n.isString(e)||null==r.log_levels[e])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=r.log_levels[e]}const l=`[${this._name}]`;for(const[e,o]of t.entries(r.log_levels))o.level<this._log_level.level||this._log_level.level===r.OFF.level?this[e]=function(){}:this[e]=i(e,l)}trace(...e){}debug(...e){}info(...e){}warn(...e){}error(...e){}}function i(e,l){return null!=console[e]?console[e].bind(console,l):null!=console.log?console.log.bind(console,l):function(){}}function _(e){const l=o.logger.level;return n.isString(e)&&null==r.log_levels[e]?(console.log(`[bokeh] unrecognized logging level '${e}' passed to Bokeh.set_log_level(), ignoring`),console.log(\"[bokeh] valid log levels are: \"+r.levels.join(\", \"))):(console.log(`[bokeh] setting log level to: '${n.isString(e)?e:e.level}'`),o.logger.set_level(e)),l}o.Logger=r,r.__name__=\"Logger\",r.TRACE=new g(\"trace\",0),r.DEBUG=new g(\"debug\",1),r.INFO=new g(\"info\",2),r.WARN=new g(\"warn\",6),r.ERROR=new g(\"error\",7),r.FATAL=new g(\"fatal\",8),r.OFF=new g(\"off\",9),r.log_levels={trace:r.TRACE,debug:r.DEBUG,info:r.INFO,warn:r.WARN,error:r.ERROR,fatal:r.FATAL,off:r.OFF},o.logger=r.get(\"bokeh\"),o.set_log_level=_,o.with_log_level=function(e,l){const o=_(e);try{l()}finally{_(o)}}},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(21);t.Align=o.Enum(\"start\",\"center\",\"end\"),t.Anchor=o.Enum(\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\"),t.AngleUnits=o.Enum(\"deg\",\"rad\"),t.BoxOrigin=o.Enum(\"corner\",\"center\"),t.ButtonType=o.Enum(\"default\",\"primary\",\"success\",\"warning\",\"danger\"),t.CalendarPosition=o.Enum(\"auto\",\"above\",\"below\"),t.Dimension=o.Enum(\"width\",\"height\"),t.Dimensions=o.Enum(\"width\",\"height\",\"both\"),t.Direction=o.Enum(\"clock\",\"anticlock\"),t.Distribution=o.Enum(\"uniform\",\"normal\"),t.FontStyle=o.Enum(\"normal\",\"italic\",\"bold\",\"bold italic\"),t.HatchPatternType=o.Enum(\"blank\",\"dot\",\"ring\",\"horizontal_line\",\"vertical_line\",\"cross\",\"horizontal_dash\",\"vertical_dash\",\"spiral\",\"right_diagonal_line\",\"left_diagonal_line\",\"diagonal_cross\",\"right_diagonal_dash\",\"left_diagonal_dash\",\"horizontal_wave\",\"vertical_wave\",\"criss_cross\",\" \",\".\",\"o\",\"-\",\"|\",\"+\",'\"',\":\",\"@\",\"/\",\"\\\\\",\"x\",\",\",\"`\",\"v\",\">\",\"*\"),t.HTTPMethod=o.Enum(\"POST\",\"GET\"),t.HexTileOrientation=o.Enum(\"pointytop\",\"flattop\"),t.HoverMode=o.Enum(\"mouse\",\"hline\",\"vline\"),t.LatLon=o.Enum(\"lat\",\"lon\"),t.LegendClickPolicy=o.Enum(\"none\",\"hide\",\"mute\"),t.LegendLocation=t.Anchor,t.LineCap=o.Enum(\"butt\",\"round\",\"square\"),t.LineJoin=o.Enum(\"miter\",\"round\",\"bevel\"),t.LinePolicy=o.Enum(\"prev\",\"next\",\"nearest\",\"interp\",\"none\"),t.Location=o.Enum(\"above\",\"below\",\"left\",\"right\"),t.Logo=o.Enum(\"normal\",\"grey\"),t.MarkerType=o.Enum(\"asterisk\",\"circle\",\"circle_cross\",\"circle_dot\",\"circle_x\",\"circle_y\",\"cross\",\"dash\",\"diamond\",\"diamond_cross\",\"diamond_dot\",\"dot\",\"hex\",\"hex_dot\",\"inverted_triangle\",\"plus\",\"square\",\"square_cross\",\"square_dot\",\"square_pin\",\"square_x\",\"triangle\",\"triangle_dot\",\"triangle_pin\",\"x\",\"y\"),t.MutedPolicy=o.Enum(\"show\",\"ignore\"),t.Orientation=o.Enum(\"vertical\",\"horizontal\"),t.OutputBackend=o.Enum(\"canvas\",\"svg\",\"webgl\"),t.PaddingUnits=o.Enum(\"percent\",\"absolute\"),t.Place=o.Enum(\"above\",\"below\",\"left\",\"right\",\"center\"),t.PointPolicy=o.Enum(\"snap_to_data\",\"follow_mouse\",\"none\"),t.RadiusDimension=o.Enum(\"x\",\"y\",\"max\",\"min\"),t.RenderLevel=o.Enum(\"image\",\"underlay\",\"glyph\",\"guide\",\"annotation\",\"overlay\"),t.RenderMode=o.Enum(\"canvas\",\"css\"),t.ResetPolicy=o.Enum(\"standard\",\"event_only\"),t.RoundingFunction=o.Enum(\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"),t.SelectionMode=o.Enum(\"replace\",\"append\",\"intersect\",\"subtract\"),t.Side=o.Enum(\"above\",\"below\",\"left\",\"right\"),t.SizingMode=o.Enum(\"stretch_width\",\"stretch_height\",\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"),t.Sort=o.Enum(\"ascending\",\"descending\"),t.SpatialUnits=o.Enum(\"screen\",\"data\"),t.StartEnd=o.Enum(\"start\",\"end\"),t.StepMode=o.Enum(\"after\",\"before\",\"center\"),t.TapBehavior=o.Enum(\"select\",\"inspect\"),t.TextAlign=o.Enum(\"left\",\"right\",\"center\"),t.TextBaseline=o.Enum(\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"),t.TextureRepetition=o.Enum(\"repeat\",\"repeat_x\",\"repeat_y\",\"no_repeat\"),t.TickLabelOrientation=o.Enum(\"vertical\",\"horizontal\",\"parallel\",\"normal\"),t.TooltipAttachment=o.Enum(\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"),t.UpdateMode=o.Enum(\"replace\",\"append\"),t.VerticalAlign=o.Enum(\"top\",\"middle\",\"bottom\")},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1).__importStar(e(8)),r=e(22);class i{}t.Kind=i,i.__name__=\"Kind\",function(e){class n extends i{valid(e){return!0}}n.__name__=\"Any\",e.Any=n;class t extends i{valid(e){return!0}}t.__name__=\"Unknown\",e.Unknown=t;class l extends i{valid(e){return s.isBoolean(e)}}l.__name__=\"Boolean\",e.Boolean=l;class a extends i{constructor(e){super(),this.obj_type=e}valid(e){return!0}}a.__name__=\"Ref\",e.Ref=a;class _ extends i{valid(e){return s.isNumber(e)}}_.__name__=\"Number\",e.Number=_;class u extends _{valid(e){return super.valid(e)&&s.isInteger(e)}}u.__name__=\"Int\",e.Int=u;class d extends i{constructor(e){super(),this.types=e,this.types=e}valid(e){return this.types.some(n=>n.valid(e))}}d.__name__=\"Or\",e.Or=d;class o extends i{constructor(e){super(),this.types=e,this.types=e}valid(e){if(!s.isArray(e))return!1;for(let n=0;n<this.types.length;n++){const t=this.types[n],s=e[n];if(!t.valid(s))return!1}return!0}}o.__name__=\"Tuple\",e.Tuple=o;class c extends i{constructor(e){super(),this.item_type=e}valid(e){return s.isArray(e)&&e.every(e=>this.item_type.valid(e))}}c.__name__=\"Array\",e.Array=c;class m extends i{valid(e){return null===e}}m.__name__=\"Null\",e.Null=m;class p extends i{constructor(e){super(),this.base_type=e}valid(e){return null===e||this.base_type.valid(e)}}p.__name__=\"Nullable\",e.Nullable=p;class y extends i{valid(e){return s.isString(e)}}y.__name__=\"String\",e.String=y;class v extends i{constructor(e){super(),this.values=new Set(e)}valid(e){return this.values.has(e)}*[Symbol.iterator](){yield*this.values}}v.__name__=\"Enum\",e.Enum=v;class h extends i{constructor(e){super(),this.item_type=e}valid(e){if(!s.isPlainObject(e))return!1;for(const n in e)if(e.hasOwnProperty(n)){const t=e[n];if(!this.item_type.valid(t))return!1}return!0}}h.__name__=\"Struct\",e.Struct=h;class w extends i{constructor(e,n){super(),this.key_type=e,this.item_type=n}valid(e){if(!(e instanceof Map))return!1;for(const[n,t]of e.entries())if(!this.key_type.valid(n)||!this.item_type.valid(t))return!1;return!0}}w.__name__=\"Dict\",e.Dict=w;class K extends i{valid(e){return s.isString(e)&&r.is_color(e)}}K.__name__=\"Color\",e.Color=K;class f extends _{valid(e){return super.valid(e)&&0<=e&&e<=1}}f.__name__=\"Percent\",e.Percent=f}(t.Kinds||(t.Kinds={})),t.Any=new t.Kinds.Any,t.Unknown=new t.Kinds.Unknown,t.Boolean=new t.Kinds.Boolean,t.Number=new t.Kinds.Number,t.Int=new t.Kinds.Int,t.String=new t.Kinds.String,t.Null=new t.Kinds.Null,t.Nullable=e=>new t.Kinds.Nullable(e),t.Or=(...e)=>new t.Kinds.Or(e),t.Tuple=(...e)=>new t.Kinds.Tuple(e),t.Array=e=>new t.Kinds.Array(e),t.Struct=e=>new t.Kinds.Struct(e),t.Dict=(e,n)=>new t.Kinds.Dict(e,n),t.Enum=(...e)=>new t.Kinds.Enum(e),t.Ref=e=>new t.Kinds.Ref(e),t.Percent=new t.Kinds.Percent,t.Color=new t.Kinds.Color,t.Auto=t.Enum(\"auto\"),t.FontSize=t.String,t.Font=t.String,t.Angle=t.Number},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(23),l=e(9);function a(e){const r=Number(e).toString(16);return 1==r.length?\"0\"+r:r}function o(e){if(0==(e+=\"\").indexOf(\"#\"))return e;if(n.is_svg_color(e))return n.svg_colors[e];if(0==e.indexOf(\"rgb\")){const r=e.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\");let t=r.slice(0,3).map(a).join(\"\");return 4==r.length&&(t+=a(Math.floor(255*parseFloat(r[3])))),\"#\"+t.slice(0,8)}return e}function s(e){let r;switch(e.substring(0,4)){case\"rgba\":r={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":r={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(e))return!1;const t=e.replace(r.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);return t.length==r.len&&((!r.alpha||0<=t[3]&&t[3]<=1)&&!l.includes(t.slice(0,3).map(e=>0<=e&&e<=255),!1))}t.is_color=function(e){return n.is_svg_color(e.toLowerCase())||\"#\"==e.substring(0,1)||s(e)},t.rgb2hex=function(e,r,t){return`#${a(255&e)}${a(255&r)}${a(255&t)}`},t.color2hex=o,t.encode_rgba=function([e,r,t,n]){return(255*e|0)<<24|(255*r|0)<<16|(255*t|0)<<8|255*n|0},t.decode_rgba=function(e){return[(e>>24&255)/255,(e>>16&255)/255,(e>>8&255)/255,(e>>0&255)/255]},t.color2rgba=function(e,r=1){if(!e)return[0,0,0,0];let t=o(e);t=t.replace(/ |#/g,\"\"),t.length<=4&&(t=t.replace(/(.)/g,\"$1$1\"));const n=t.match(/../g).map(e=>parseInt(e,16)/255);for(;n.length<3;)n.push(0);return n.length<4&&n.push(r),n.slice(0,4)},t.valid_rgb=s},\n",
       "      function _(e,F,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},r.is_svg_color=function(e){return e in r.svg_colors}},\n",
       "      function _(r,t,e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.NumberArray=Float32Array,e.ColorArray=Uint32Array;const s=r(25);class a{constructor(r,t){this.offsets=r,this.array=t}[s.equals](r,t){return t.arrays(this.offsets,r.offsets)&&t.arrays(this.array,r.array)}get length(){return this.offsets.length}clone(){return new a(new Uint32Array(this.offsets),new e.NumberArray(this.array))}static from(r){const t=r.length,s=new Uint32Array(t);let n=0;for(let e=0;e<t;e++){const t=r[e].length;s[e]=n,n+=t}const o=new e.NumberArray(n);for(let e=0;e<t;e++)o.set(r[e],s[e]);return new a(s,o)}*[Symbol.iterator](){const{offsets:r,length:t}=this;for(let e=0;e<t;e++)yield this.array.subarray(r[e],r[e+1])}get(r){const{offsets:t}=this;return this.array.subarray(t[r],t[r+1])}set(r,t){this.array.set(t,this.offsets[r])}}e.RaggedArray=a,a.__name__=\"RaggedArray\",a[Symbol.toStringTag]=\"RaggedArray\";var n=r(26);e.Indices=n.BitSet},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.equals=Symbol(\"equals\"),r.wildcard=Symbol(\"wildcard\");const n=Object.prototype.toString;class s{constructor(){this.a_stack=[],this.b_stack=[]}eq(t,e){if(Object.is(t,e))return!0;if(t===r.wildcard||e===r.wildcard)return!0;if(null==t||null==e)return t===e;const s=n.call(t);if(s!=n.call(e))return!1;switch(s){case\"[object Number]\":return this.numbers(t,e);case\"[object RegExp]\":case\"[object String]\":return\"\"+t==\"\"+e;case\"[object Date]\":case\"[object Boolean]\":return+t==+e}const{a_stack:o,b_stack:c}=this;let a=o.length;for(;a--;)if(o[a]===t)return c[a]===e;o.push(t),c.push(e);const i=(()=>{if(null!=t[r.equals]&&null!=e[r.equals])return t[r.equals](e,this);switch(s){case\"[object Array]\":case\"[object Uint8Array]\":case\"[object Int8Array]\":case\"[object Uint16Array]\":case\"[object Int16Array]\":case\"[object Uint32Array]\":case\"[object Int32Array]\":case\"[object Float32Array]\":case\"[object Float64Array]\":return this.arrays(t,e);case\"[object Map]\":return this.maps(t,e);case\"[object Set]\":return this.sets(t,e);case\"[object Object]\":if(t.constructor==e.constructor&&(null==t.constructor||t.constructor===Object))return this.objects(t,e);case\"[object Function]\":if(t.constructor==e.constructor&&t.constructor===Function)return this.eq(\"\"+t,\"\"+e)}if(t instanceof Node)return this.nodes(t,e);throw Error(\"can't compare objects of type \"+s)})();return o.pop(),c.pop(),i}numbers(t,e){return Object.is(t,e)}arrays(t,e){const{length:r}=t;if(r!=e.length)return!1;for(let n=0;n<r;n++)if(!this.eq(t[n],e[n]))return!1;return!0}iterables(t,e){const r=t[Symbol.iterator](),n=e[Symbol.iterator]();for(;;){const t=r.next(),e=n.next();if(t.done&&e.done)return!0;if(t.done||e.done)return!1;if(!this.eq(t.value,e.value))return!1}}maps(t,e){if(t.size!=e.size)return!1;for(const[r,n]of t)if(!e.has(r)||!this.eq(n,e.get(r)))return!1;return!0}sets(t,e){if(t.size!=e.size)return!1;for(const r of t)if(!e.has(r))return!1;return!0}objects(t,e){const r=Object.keys(t);if(r.length!=Object.keys(e).length)return!1;for(const n of r)if(!e.hasOwnProperty(n)||!this.eq(t[n],e[n]))return!1;return!0}nodes(t,e){return t.nodeType==e.nodeType&&(t.textContent==e.textContent&&!!this.iterables(t.childNodes,e.childNodes))}}r.Comparator=s,s.__name__=\"Comparator\";const{abs:o}=Math;class c extends s{constructor(t=1e-4){super(),this.tolerance=t}numbers(t,e){return super.numbers(t,e)||o(t-e)<this.tolerance}}function a(t,e){return(new s).eq(t,e)}r.SimilarComparator=c,c.__name__=\"SimilarComparator\",r.is_equal=a,r.is_similar=function(t,e,r){return new c(r).eq(t,e)},r.isEqual=a},\n",
       "      function _(t,s,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=t(11),i=t(9),n=t(25);class o{constructor(t,s=0){this.size=t,this[Symbol.toStringTag]=\"BitSet\",this._count=null,this._nwords=Math.ceil(t/32),0==s||1==s?(this._array=new Uint32Array(this._nwords),1==s&&this._array.fill(4294967295)):(e.assert(s.length==this._nwords,\"Initializer size mismatch\"),this._array=s)}clone(){return new o(this.size,new Uint32Array(this._array))}[n.equals](t,s){if(!s.eq(this.size,t.size))return!1;const{_nwords:r}=this,e=this.size%r,i=0==e?r:r-1;for(let s=0;s<i;s++)if(this._array[s]!=t._array[s])return!1;if(0==e)return!0;{const s=1<<e-1,r=s-1^s;return(this._array[i]&r)==(t._array[i]&r)}}static all_set(t){return new o(t,1)}static all_unset(t){return new o(t,0)}static from_indices(t,s){const r=new o(t);for(const t of s)r.set(t);return r}static from_booleans(t,s){const r=new o(t),e=Math.min(t,s.length);for(let t=0;t<e;t++)s[t]&&r.set(t);return r}_check_bounds(t){e.assert(0<=t&&t<this.size,\"Out of bounds\")}get(t){this._check_bounds(t);const s=t>>>5,r=31&t;return!!(this._array[s]>>r&1)}set(t,s=!0){this._check_bounds(t),this._count=null;const r=t>>>5,e=31&t;s?this._array[r]|=1<<e:this._array[r]&=~(1<<e)}unset(t){this.set(t,!1)}*[Symbol.iterator](){yield*this.ones()}get count(){let t=this._count;return null==t&&(this._count=t=this._get_count()),t}_get_count(){const{_array:t,_nwords:s,size:r}=this;let e=0;for(let i=0,n=0;n<s;n++){const s=t[n];if(0==s)i+=32;else for(let t=0;t<32&&i<r;t++,i++)s>>>t&1&&(e+=1)}return e}*ones(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(0!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1&&(yield e);else e+=32}}*zeros(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(4294967295!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1||(yield e);else e+=32}}_check_size(t){e.assert(this.size==t.size,\"Size mismatch\")}add(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]|=t._array[s]}intersect(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]&=t._array[s]}subtract(t){this._check_size(t);for(let s=0;s<this._nwords;s++){const r=this._array[s],e=t._array[s];this._array[s]=(r^e)&r}}union(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]|=t._array[r];return s}intersection(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]&=t._array[r];return s}difference(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++){const e=this._array[r],i=t._array[r];s._array[r]=(e^i)&e}return s}select(t){const s=this.count,r=new t.constructor(s);let e=0;for(const s of this)r[e++]=t[s];return r}}r.BitSet=o,o.__name__=\"BitSet\";class a{constructor(t,s,r){this.nrows=t,this.ncols=s,this._matrix=new Array(t);for(let e=0;e<t;e++){this._matrix[e]=new Array(s);for(let t=0;t<s;t++)this._matrix[e][t]=r(e,t)}}at(t,s){return this._matrix[t][s]}*[Symbol.iterator](){for(let t=0;t<this.nrows;t++)for(let s=0;s<this.ncols;s++){const r=this._matrix[t][s];yield[r,t,s]}}*values(){for(const[t]of this)yield t}map(t){return new a(this.nrows,this.ncols,(s,r)=>t(this.at(s,r),s,r))}apply(t){const s=a.from(t),{nrows:r,ncols:e}=this;if(r==s.nrows&&e==s.ncols)return new a(r,e,(t,r)=>s.at(t,r)(this.at(t,r),t,r));throw new Error(\"dimensions don't match\")}to_sparse(){return[...this]}static from(t,s){if(t instanceof a)return t;if(null!=s){const r=t,e=Math.floor(r.length/s);return new a(e,s,(t,e)=>r[t*s+e])}{const s=t,r=t.length,e=i.min(s.map(t=>t.length));return new a(r,e,(t,r)=>s[t][r])}}}r.Matrix=a,a.__name__=\"Matrix\"},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});class n{constructor(){this._dev=!1}set dev(e){this._dev=e}get dev(){return this._dev}}s.Settings=n,n.__name__=\"Settings\",s.settings=new n},\n",
       "      function _(e,l,t){Object.defineProperty(t,\"__esModule\",{value:!0});const a=e(1).__importStar(e(18));t.Line={line_color:[a.Color,\"black\"],line_alpha:[a.Number,1],line_width:[a.Number,1],line_join:[a.LineJoin,\"bevel\"],line_cap:[a.LineCap,\"butt\"],line_dash:[a.Array,[]],line_dash_offset:[a.Number,0]},t.Fill={fill_color:[a.Color,\"gray\"],fill_alpha:[a.Number,1]},t.Hatch={hatch_color:[a.Color,\"black\"],hatch_alpha:[a.Number,1],hatch_scale:[a.Number,12],hatch_pattern:[a.NullString,null],hatch_weight:[a.Number,1],hatch_extra:[a.Any,{}]},t.Text={text_color:[a.Color,\"#444444\"],text_alpha:[a.Number,1],text_font:[a.Font,\"helvetica\"],text_font_size:[a.FontSize,\"16px\"],text_font_style:[a.FontStyle,\"normal\"],text_align:[a.TextAlign,\"left\"],text_baseline:[a.TextBaseline,\"bottom\"],text_line_height:[a.Number,1.2]},t.LineScalar={line_color:[a.ColorScalar,\"black\"],line_alpha:[a.NumberScalar,1],line_width:[a.NumberScalar,1],line_join:[a.LineJoinScalar,\"bevel\"],line_cap:[a.LineCapScalar,\"butt\"],line_dash:[a.ArrayScalar,[]],line_dash_offset:[a.NumberScalar,0]},t.FillScalar={fill_color:[a.ColorScalar,\"gray\"],fill_alpha:[a.NumberScalar,1]},t.HatchScalar={hatch_color:[a.ColorScalar,\"black\"],hatch_alpha:[a.NumberScalar,1],hatch_scale:[a.NumberScalar,12],hatch_pattern:[a.NullStringScalar,null],hatch_weight:[a.NumberScalar,1],hatch_extra:[a.AnyScalar,{}]},t.TextScalar={text_color:[a.ColorScalar,\"#444444\"],text_alpha:[a.NumberScalar,1],text_font:[a.Font,\"helvetica\"],text_font_size:[a.FontSizeScalar,\"16px\"],text_font_style:[a.FontStyleScalar,\"normal\"],text_align:[a.TextAlignScalar,\"left\"],text_baseline:[a.TextBaselineScalar,\"bottom\"],text_line_height:[a.NumberScalar,1.2]},t.LineVector={line_color:[a.ColorSpec,\"black\"],line_alpha:[a.NumberSpec,1],line_width:[a.NumberSpec,1],line_join:[a.LineJoin,\"bevel\"],line_cap:[a.LineCap,\"butt\"],line_dash:[a.Array,[]],line_dash_offset:[a.Number,0]},t.FillVector={fill_color:[a.ColorSpec,\"gray\"],fill_alpha:[a.NumberSpec,1]},t.HatchVector={hatch_color:[a.ColorSpec,\"black\"],hatch_alpha:[a.NumberSpec,1],hatch_scale:[a.NumberSpec,12],hatch_pattern:[a.NullStringSpec,null],hatch_weight:[a.NumberSpec,1],hatch_extra:[a.Any,{}]},t.TextVector={text_color:[a.ColorSpec,\"#444444\"],text_alpha:[a.NumberSpec,1],text_font:[a.Font,\"helvetica\"],text_font_size:[a.FontSizeSpec,\"16px\"],text_font_style:[a.FontStyle,\"normal\"],text_align:[a.TextAlign,\"left\"],text_baseline:[a.TextBaseline,\"bottom\"],text_line_height:[a.Number,1.2]}},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(27);function u(){const t=new Array(32);for(let e=0;e<32;e++)t[e]=\"0123456789ABCDEF\".substr(Math.floor(16*Math.random()),1);return t[12]=\"4\",t[16]=\"0123456789ABCDEF\".substr(3&t[16].charCodeAt(0)|8,1),t.join(\"\")}r.startsWith=function(t,e,r=0){return t.substr(r,e.length)==e},r.uuid4=u;let s=1e3;r.uniqueId=function(t){const e=n.settings.dev?\"j\"+s++:u();return null!=t?`${t}-${e}`:e},r.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,t=>{switch(t){case\"&\":return\"&amp;\";case\"<\":return\"&lt;\";case\">\":return\"&gt;\";case'\"':return\"&quot;\";case\"'\":return\"&#x27;\";case\"`\":return\"&#x60;\";default:return t}})},r.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,(t,e)=>{switch(e){case\"amp\":return\"&\";case\"lt\":return\"<\";case\"gt\":return\">\";case\"quot\":return'\"';case\"#x27\":return\"'\";case\"#x60\":return\"`\";default:return e}})},r.use_strict=function(t){return\"'use strict';\\n\"+t}},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(8),a=t(11),n=t(25),i=Symbol(\"__ndarray__\");class h extends Uint8Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"uint8\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Uint8NDArray=h,h.__name__=\"Uint8NDArray\";class _ extends Int8Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"int8\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Int8NDArray=_,_.__name__=\"Int8NDArray\";class u extends Uint16Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"uint16\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Uint16NDArray=u,u.__name__=\"Uint16NDArray\";class l extends Int16Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"int16\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Int16NDArray=l,l.__name__=\"Int16NDArray\";class y extends Uint32Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"uint32\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Uint32NDArray=y,y.__name__=\"Uint32NDArray\";class c extends Int32Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"int32\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Int32NDArray=c,c.__name__=\"Int32NDArray\";class p extends Float32Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"float32\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Float32NDArray=p,p.__name__=\"Float32NDArray\";class o extends Float64Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"float64\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}function d(t){return r.isObject(t)&&t.__ndarray__==i}e.Float64NDArray=o,o.__name__=\"Float64NDArray\",e.is_NDArray=d,e.ndarray=function(t,s={}){let{dtype:e}=s;null==e&&(e=t instanceof ArrayBuffer||r.isArray(t)?\"float32\":(()=>{switch(!0){case t instanceof Uint8Array:return\"uint8\";case t instanceof Int8Array:return\"int8\";case t instanceof Uint16Array:return\"uint16\";case t instanceof Int16Array:return\"int16\";case t instanceof Uint32Array:return\"uint32\";case t instanceof Int32Array:return\"int32\";case t instanceof Float32Array:return\"float32\";case t instanceof Float64Array:return\"float64\";default:a.unreachable()}})());const{shape:n}=s;switch(e){case\"uint8\":return new h(t,n);case\"int8\":return new _(t,n);case\"uint16\":return new u(t,n);case\"int16\":return new l(t,n);case\"uint32\":return new y(t,n);case\"int32\":return new c(t,n);case\"float32\":return new p(t,n);case\"float64\":return new o(t,n)}}},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),a=e(8),f=e(32),_=n.__importStar(e(30));function o(e){const r=new Uint8Array(e),t=Array.from(r).map(e=>String.fromCharCode(e));return btoa(t.join(\"\"))}function s(e){const r=atob(e),t=r.length,n=new Uint8Array(t);for(let e=0,a=t;e<a;e++)n[e]=r.charCodeAt(e);return n.buffer}function i(e){const r=new Uint8Array(e.buffer,e.byteOffset,2*e.length);for(let e=0,t=r.length;e<t;e+=2){const t=r[e];r[e]=r[e+1],r[e+1]=t}}function u(e){const r=new Uint8Array(e.buffer,e.byteOffset,4*e.length);for(let e=0,t=r.length;e<t;e+=4){let t=r[e];r[e]=r[e+3],r[e+3]=t,t=r[e+1],r[e+1]=r[e+2],r[e+2]=t}}function c(e){const r=new Uint8Array(e.buffer,e.byteOffset,8*e.length);for(let e=0,t=r.length;e<t;e+=8){let t=r[e];r[e]=r[e+7],r[e+7]=t,t=r[e+1],r[e+1]=r[e+6],r[e+6]=t,t=r[e+2],r[e+2]=r[e+5],r[e+5]=t,t=r[e+3],r[e+3]=r[e+4],r[e+4]=t}}t.buffer_to_base64=o,t.base64_to_buffer=s,t.BYTE_ORDER=f.is_little_endian?\"little\":\"big\",t.swap16=i,t.swap32=u,t.swap64=c,t.is_NDArray_ref=function(e){return a.isPlainObject(e)&&(\"__buffer__\"in e||\"__ndarray__\"in e)},t.decode_NDArray=function(e,r){const{shape:n,dtype:a,order:f}=e;let o;if(\"__buffer__\"in e){const t=r.get(e.__buffer__);if(null==t)throw new Error(`buffer for ${e.__buffer__} not found`);o=t}else o=s(e.__ndarray__);const l=(()=>{switch(a){case\"uint8\":return new _.Uint8NDArray(o,n);case\"int8\":return new _.Int8NDArray(o,n);case\"uint16\":return new _.Uint16NDArray(o,n);case\"int16\":return new _.Int16NDArray(o,n);case\"uint32\":return new _.Uint32NDArray(o,n);case\"int32\":return new _.Int32NDArray(o,n);case\"float32\":return new _.Float32NDArray(o,n);case\"float64\":return new _.Float64NDArray(o,n)}})();if(f!==t.BYTE_ORDER)switch(l.BYTES_PER_ELEMENT){case 2:i(l);break;case 4:u(l);break;case 8:c(l)}return l},t.encode_NDArray=function(e,r){const n={order:t.BYTE_ORDER,dtype:e.dtype,shape:e.shape};if(null!=r){const t=\"\"+r.size;return r.set(t,e.buffer),Object.assign({__buffer__:t},n)}{const r=o(e.buffer);return Object.assign({__ndarray__:r},n)}}},\n",
       "      function _(e,n,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.is_ie=(()=>{const e=\"undefined\"!=typeof navigator?navigator.userAgent:\"\";return e.indexOf(\"MSIE\")>=0||e.indexOf(\"Trident\")>0||e.indexOf(\"Edge\")>0})(),i.is_mobile=\"undefined\"!=typeof window&&(\"ontouchstart\"in window||navigator.maxTouchPoints>0),i.is_little_endian=(()=>{const e=new ArrayBuffer(4),n=new Uint8Array(e);new Uint32Array(e)[1]=168496141;let i=!0;return 10==n[4]&&11==n[5]&&12==n[6]&&13==n[7]&&(i=!1),i})()},\n",
       "      function _(t,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=t(8),i=t(13);n.pretty=Symbol(\"pretty\");class o{constructor(t){this.precision=null==t?void 0:t.precision}to_string(t){return function(t){return n.pretty in Object(t)}(t)?t[n.pretty](this):e.isBoolean(t)?this.boolean(t):e.isNumber(t)?this.number(t):e.isString(t)?this.string(t):e.isArray(t)?this.array(t):e.isIterable(t)?this.iterable(t):e.isPlainObject(t)?this.object(t):\"\"+t}token(t){return t}boolean(t){return\"\"+t}number(t){return null!=this.precision?t.toFixed(this.precision):\"\"+t}string(t){return`\"${t.replace(/'/g,\"\\\\'\")}\"`}array(t){const r=this.token,n=[];for(const r of t)n.push(this.to_string(r));return`${r(\"[\")}${n.join(r(\",\")+\" \")}${r(\"]\")}`}iterable(t){var r;const n=this.token,e=null!==(r=Object(t)[Symbol.toStringTag])&&void 0!==r?r:\"Object\",i=this.array(t);return`${e}${n(\"(\")}${i}${n(\")\")}`}object(t){const r=this.token,n=[];for(const[e,o]of i.entries(t))n.push(`${e}${r(\":\")} ${this.to_string(o)}`);return`${r(\"{\")}${n.join(r(\",\")+\" \")}${r(\"}\")}`}}n.Printer=o,o.__name__=\"Printer\",n.to_string=function(t,r){return new o(r).to_string(t)}},\n",
       "      function _(t,_,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=t(1);e.__exportStar(t(35),r),e.__exportStar(t(176),r),e.__exportStar(t(203),r),e.__exportStar(t(207),r),e.__exportStar(t(218),r),e.__exportStar(t(222),r),e.__exportStar(t(228),r),e.__exportStar(t(232),r),e.__exportStar(t(265),r),e.__exportStar(t(268),r),e.__exportStar(t(270),r),e.__exportStar(t(132),r),e.__exportStar(t(148),r),e.__exportStar(t(287),r),e.__exportStar(t(291),r),e.__exportStar(t(320),r),e.__exportStar(t(321),r),e.__exportStar(t(322),r),e.__exportStar(t(323),r),e.__exportStar(t(324),r),e.__exportStar(t(329),r),e.__exportStar(t(331),r),e.__exportStar(t(342),r),e.__exportStar(t(346),r)},\n",
       "      function _(a,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});var r=a(36);o.Annotation=r.Annotation;var n=a(83);o.Arrow=n.Arrow;var t=a(84);o.ArrowHead=t.ArrowHead;var v=a(84);o.OpenHead=v.OpenHead;var l=a(84);o.NormalHead=l.NormalHead;var d=a(84);o.TeeHead=d.TeeHead;var i=a(84);o.VeeHead=i.VeeHead;var A=a(122);o.Band=A.Band;var H=a(124);o.BoxAnnotation=H.BoxAnnotation;var T=a(125);o.ColorBar=T.ColorBar;var p=a(160);o.Label=p.Label;var L=a(162);o.LabelSet=L.LabelSet;var b=a(163);o.Legend=b.Legend;var B=a(164);o.LegendItem=B.LegendItem;var S=a(166);o.PolyAnnotation=S.PolyAnnotation;var P=a(167);o.Slope=P.Slope;var g=a(168);o.Span=g.Span;var m=a(161);o.TextAnnotation=m.TextAnnotation;var w=a(169);o.Title=w.Title;var x=a(170);o.ToolbarPanel=x.ToolbarPanel;var s=a(171);o.Tooltip=s.Tooltip;var u=a(175);o.Whisker=u.Whisker},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=t(1).__importStar(t(37)),i=t(13),o=t(70);class _ extends o.RendererView{get panel(){return this.layout}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.visible,()=>this.plot_view.request_layout())}get_size(){if(this.model.visible){const{width:t,height:e}=this._get_size();return{width:Math.round(t),height:Math.round(e)}}return{width:0,height:0}}_get_size(){throw new Error(\"not implemented\")}set_data(t){const e=this.model.materialize_dataspecs(t);if(i.extend(this,e),this.plot_model.use_map){const t=this;null!=t._x&&([t._x,t._y]=s.project_xy(t._x,t._y)),null!=t._xs&&([t._xs,t._ys]=s.project_xsys(t._xs,t._ys))}}get needs_clip(){return null==this.layout}serializable_state(){const t=super.serializable_state();return null==this.layout?t:Object.assign(Object.assign({},t),{bbox:this.layout.bbox.box})}}n.AnnotationView=_,_.__name__=\"AnnotationView\";class a extends o.Renderer{constructor(t){super(t)}static init_Annotation(){this.override({level:\"annotation\"})}}n.Annotation=a,a.__name__=\"Annotation\",a.init_Annotation()},\n",
       "      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=n(1),o=r.__importDefault(n(38)),l=r.__importDefault(n(39)),c=n(24),i=new l.default(\"GOOGLE\"),u=new l.default(\"WGS84\"),a=o.default(u,i);e.wgs84_mercator={compute:(n,t)=>isFinite(n)&&isFinite(t)?a.forward([n,t]):[NaN,NaN],invert:(n,t)=>isFinite(n)&&isFinite(t)?a.inverse([n,t]):[NaN,NaN]};const s={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},f={lon:[-180,180],lat:[-85.06,85.06]},{min:_,max:p}=Math;function m(n,t){const r=_(n.length,t.length),o=new c.NumberArray(r),l=new c.NumberArray(r);return e.inplace.project_xy(n,t,o,l),[o,l]}e.clip_mercator=function(n,t,e){const[r,o]=s[e];return[p(n,r),_(t,o)]},e.in_bounds=function(n,t){const[e,r]=f[t];return e<n&&n<r},function(n){function t(n,t,r,o){const l=_(n.length,t.length);r=null!=r?r:n,o=null!=o?o:t;for(let c=0;c<l;c++){const l=n[c],i=t[c],[u,a]=e.wgs84_mercator.compute(l,i);r[c]=u,o[c]=a}}n.project_xy=t,n.project_xsys=function(n,e,r,o){const l=_(n.length,e.length);r=null!=r?r:n,o=null!=o?o:e;for(let c=0;c<l;c++)t(n[c],e[c],r[c],o[c])}}(e.inplace||(e.inplace={})),e.project_xy=m,e.project_xsys=function(n,t){const e=_(n.length,t.length),r=new Array(e),o=new Array(e);for(let l=0;l<e;l++){const[e,c]=m(n[l],t[l]);r[l]=e,o[l]=c}return[r,o]}},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const r=e(1),o=r.__importDefault(e(39)),a=r.__importDefault(e(64));var i=o.default(\"WGS84\");function c(e,n,t){var r,o,i;return Array.isArray(t)?(r=a.default(e,n,t)||{x:NaN,y:NaN},t.length>2?void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name?\"number\"==typeof r.z?[r.x,r.y,r.z].concat(t.splice(3)):[r.x,r.y,t[2]].concat(t.splice(3)):[r.x,r.y].concat(t.splice(2)):[r.x,r.y]):(o=a.default(e,n,t),2===(i=Object.keys(t)).length||i.forEach((function(r){if(void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name){if(\"x\"===r||\"y\"===r||\"z\"===r)return}else if(\"x\"===r||\"y\"===r)return;o[r]=t[r]})),o)}function u(e){return e instanceof o.default?e:e.oProj?e.oProj:o.default(e)}t.default=function(e,n,t){e=u(e);var r,o=!1;return void 0===n?(n=e,e=i,o=!0):(void 0!==n.x||Array.isArray(n))&&(t=n,n=e,e=i,o=!0),n=u(n),t?c(e,n,t):(r={forward:function(t){return c(e,n,t)},inverse:function(t){return c(n,e,t)}},o&&(r.oProj=n),r)}},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const s=e(1),i=s.__importDefault(e(40)),u=s.__importDefault(e(51)),l=s.__importDefault(e(52)),o=e(60),r=s.__importDefault(e(62)),f=s.__importDefault(e(63)),d=s.__importDefault(e(47));function p(e,t){if(!(this instanceof p))return new p(e);t=t||function(e){if(e)throw e};var a=i.default(e);if(\"object\"==typeof a){var s=p.projections.get(a.projName);if(s){if(a.datumCode&&\"none\"!==a.datumCode){var l=d.default(r.default,a.datumCode);l&&(a.datum_params=l.towgs84?l.towgs84.split(\",\"):null,a.ellps=l.ellipse,a.datumName=l.datumName?l.datumName:a.datumCode)}a.k0=a.k0||1,a.axis=a.axis||\"enu\",a.ellps=a.ellps||\"wgs84\";var m=o.sphere(a.a,a.b,a.rf,a.ellps,a.sphere),n=o.eccentricity(m.a,m.b,m.rf,a.R_A),h=a.datum||f.default(a.datumCode,a.datum_params,m.a,m.b,n.es,n.ep2);u.default(this,a),u.default(this,s),this.a=m.a,this.b=m.b,this.rf=m.rf,this.sphere=m.sphere,this.es=n.es,this.e=n.e,this.ep2=n.ep2,this.datum=h,this.init(),t(null,this)}else t(e)}else t(e)}p.projections=l.default,p.projections.start(),a.default=p},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const u=t(1),n=u.__importDefault(t(41)),f=u.__importDefault(t(48)),i=u.__importDefault(t(43)),a=u.__importDefault(t(47));var o=[\"PROJECTEDCRS\",\"PROJCRS\",\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\",\"GEODCRS\",\"GEODETICCRS\",\"GEODETICDATUM\",\"ENGCRS\",\"ENGINEERINGCRS\"];var l=[\"3857\",\"900913\",\"3785\",\"102113\"];r.default=function(t){if(!function(t){return\"string\"==typeof t}(t))return t;if(function(t){return t in n.default}(t))return n.default[t];if(function(t){return o.some((function(e){return t.indexOf(e)>-1}))}(t)){var e=f.default(t);if(function(t){var e=a.default(t,\"authority\");if(e){var r=a.default(e,\"epsg\");return r&&l.indexOf(r)>-1}}(e))return n.default[\"EPSG:3857\"];var r=function(t){var e=a.default(t,\"extension\");if(e)return a.default(e,\"proj4\")}(e);return r?i.default(r):e}return function(t){return\"+\"===t[0]}(t)?i.default(t):void 0}},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=t(1),n=i.__importDefault(t(42)),f=i.__importDefault(t(43)),a=i.__importDefault(t(48));function l(t){var e=this;if(2===arguments.length){var r=arguments[1];\"string\"==typeof r?\"+\"===r.charAt(0)?l[t]=f.default(arguments[1]):l[t]=a.default(arguments[1]):l[t]=r}else if(1===arguments.length){if(Array.isArray(t))return t.map((function(t){Array.isArray(t)?l.apply(e,t):l(t)}));if(\"string\"==typeof t){if(t in l)return l[t]}else\"EPSG\"in t?l[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?l[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?l[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n.default(l),r.default=l},\n",
       "      function _(e,t,l){Object.defineProperty(l,\"__esModule\",{value:!0}),l.default=function(e){e(\"EPSG:4326\",\"+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees\"),e(\"EPSG:4269\",\"+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees\"),e(\"EPSG:3857\",\"+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs\"),e.WGS84=e[\"EPSG:4326\"],e[\"EPSG:3785\"]=e[\"EPSG:3857\"],e.GOOGLE=e[\"EPSG:3857\"],e[\"EPSG:900913\"]=e[\"EPSG:3857\"],e[\"EPSG:102113\"]=e[\"EPSG:3857\"]}},\n",
       "      function _(t,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const e=t(1),a=t(44),u=e.__importDefault(t(45)),r=e.__importDefault(t(46)),i=e.__importDefault(t(47));o.default=function(t){var n,o,e,f={},l=t.split(\"+\").map((function(t){return t.trim()})).filter((function(t){return t})).reduce((function(t,n){var o=n.split(\"=\");return o.push(!0),t[o[0].toLowerCase()]=o[1],t}),{}),c={proj:\"projName\",datum:\"datumCode\",rf:function(t){f.rf=parseFloat(t)},lat_0:function(t){f.lat0=t*a.D2R},lat_1:function(t){f.lat1=t*a.D2R},lat_2:function(t){f.lat2=t*a.D2R},lat_ts:function(t){f.lat_ts=t*a.D2R},lon_0:function(t){f.long0=t*a.D2R},lon_1:function(t){f.long1=t*a.D2R},lon_2:function(t){f.long2=t*a.D2R},alpha:function(t){f.alpha=parseFloat(t)*a.D2R},lonc:function(t){f.longc=t*a.D2R},x_0:function(t){f.x0=parseFloat(t)},y_0:function(t){f.y0=parseFloat(t)},k_0:function(t){f.k0=parseFloat(t)},k:function(t){f.k0=parseFloat(t)},a:function(t){f.a=parseFloat(t)},b:function(t){f.b=parseFloat(t)},r_a:function(){f.R_A=!0},zone:function(t){f.zone=parseInt(t,10)},south:function(){f.utmSouth=!0},towgs84:function(t){f.datum_params=t.split(\",\").map((function(t){return parseFloat(t)}))},to_meter:function(t){f.to_meter=parseFloat(t)},units:function(t){f.units=t;var n=i.default(r.default,t);n&&(f.to_meter=n.to_meter)},from_greenwich:function(t){f.from_greenwich=t*a.D2R},pm:function(t){var n=i.default(u.default,t);f.from_greenwich=(n||parseFloat(t))*a.D2R},nadgrids:function(t){\"@null\"===t?f.datumCode=\"none\":f.nadgrids=t},axis:function(t){3===t.length&&-1!==\"ewnsud\".indexOf(t.substr(0,1))&&-1!==\"ewnsud\".indexOf(t.substr(1,1))&&-1!==\"ewnsud\".indexOf(t.substr(2,1))&&(f.axis=t)}};for(n in l)o=l[n],n in c?\"function\"==typeof(e=c[n])?e(o):f[e]=o:f[n]=o;return\"string\"==typeof f.datumCode&&\"WGS84\"!==f.datumCode&&(f.datumCode=f.datumCode.toLowerCase()),f}},\n",
       "      function _(P,_,e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.PJD_3PARAM=1,e.PJD_7PARAM=2,e.PJD_WGS84=4,e.PJD_NODATUM=5,e.SEC_TO_RAD=484813681109536e-20,e.HALF_PI=Math.PI/2,e.SIXTH=.16666666666666666,e.RA4=.04722222222222222,e.RA6=.022156084656084655,e.EPSLN=1e-10,e.D2R=.017453292519943295,e.R2D=57.29577951308232,e.FORTPI=Math.PI/4,e.TWO_PI=2*Math.PI,e.SPI=3.14159265359},\n",
       "      function _(e,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});var a={};r.default=a,a.greenwich=0,a.lisbon=-9.131906111111,a.paris=2.337229166667,a.bogota=-74.080916666667,a.madrid=-3.687938888889,a.rome=12.452333333333,a.bern=7.439583333333,a.jakarta=106.807719444444,a.ferro=-17.666666666667,a.brussels=4.367975,a.stockholm=18.058277777778,a.athens=23.7163375,a.oslo=10.722916666667},\n",
       "      function _(e,t,f){Object.defineProperty(f,\"__esModule\",{value:!0}),f.default={ft:{to_meter:.3048},\"us-ft\":{to_meter:1200/3937}}},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});var o=/[\\s_\\-\\/\\(\\)]/g;t.default=function(e,r){if(e[r])return e[r];for(var t,a=Object.keys(e),n=r.toLowerCase().replace(o,\"\"),f=-1;++f<a.length;)if((t=a[f]).toLowerCase().replace(o,\"\")===n)return e[t]}},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const o=e(1);const d=o.__importDefault(e(49)),r=e(50);function n(e){return.017453292519943295*e}a.default=function(e){var t=d.default(e),a=t.shift(),o=t.shift();t.unshift([\"name\",o]),t.unshift([\"type\",a]);var l={};return r.sExpr(t,l),function(e){if(\"GEOGCS\"===e.type?e.projName=\"longlat\":\"LOCAL_CS\"===e.type?(e.projName=\"identity\",e.local=!0):\"object\"==typeof e.PROJECTION?e.projName=Object.keys(e.PROJECTION)[0]:e.projName=e.PROJECTION,e.AXIS){for(var t=\"\",a=0,o=e.AXIS.length;a<o;++a){var d=e.AXIS[a][0].toLowerCase();-1!==d.indexOf(\"north\")?t+=\"n\":-1!==d.indexOf(\"south\")?t+=\"s\":-1!==d.indexOf(\"east\")?t+=\"e\":-1!==d.indexOf(\"west\")&&(t+=\"w\")}2===t.length&&(t+=\"u\"),3===t.length&&(e.axis=t)}e.UNIT&&(e.units=e.UNIT.name.toLowerCase(),\"metre\"===e.units&&(e.units=\"meter\"),e.UNIT.convert&&(\"GEOGCS\"===e.type?e.DATUM&&e.DATUM.SPHEROID&&(e.to_meter=e.UNIT.convert*e.DATUM.SPHEROID.a):e.to_meter=e.UNIT.convert));var r=e.GEOGCS;function l(t){return t*(e.to_meter||1)}\"GEOGCS\"===e.type&&(r=e),r&&(r.DATUM?e.datumCode=r.DATUM.name.toLowerCase():e.datumCode=r.name.toLowerCase(),\"d_\"===e.datumCode.slice(0,2)&&(e.datumCode=e.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==e.datumCode&&\"new_zealand_1949\"!==e.datumCode||(e.datumCode=\"nzgd49\"),\"wgs_1984\"!==e.datumCode&&\"world_geodetic_system_1984\"!==e.datumCode||(\"Mercator_Auxiliary_Sphere\"===e.PROJECTION&&(e.sphere=!0),e.datumCode=\"wgs84\"),\"_ferro\"===e.datumCode.slice(-6)&&(e.datumCode=e.datumCode.slice(0,-6)),\"_jakarta\"===e.datumCode.slice(-8)&&(e.datumCode=e.datumCode.slice(0,-8)),~e.datumCode.indexOf(\"belge\")&&(e.datumCode=\"rnb72\"),r.DATUM&&r.DATUM.SPHEROID&&(e.ellps=r.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===e.ellps.toLowerCase().slice(0,13)&&(e.ellps=\"intl\"),e.a=r.DATUM.SPHEROID.a,e.rf=parseFloat(r.DATUM.SPHEROID.rf,10)),r.DATUM&&r.DATUM.TOWGS84&&(e.datum_params=r.DATUM.TOWGS84),~e.datumCode.indexOf(\"osgb_1936\")&&(e.datumCode=\"osgb36\"),~e.datumCode.indexOf(\"osni_1952\")&&(e.datumCode=\"osni52\"),(~e.datumCode.indexOf(\"tm65\")||~e.datumCode.indexOf(\"geodetic_datum_of_1965\"))&&(e.datumCode=\"ire65\"),\"ch1903+\"===e.datumCode&&(e.datumCode=\"ch1903\"),~e.datumCode.indexOf(\"israel\")&&(e.datumCode=\"isr93\")),e.b&&!isFinite(e.b)&&(e.b=e.a),[[\"standard_parallel_1\",\"Standard_Parallel_1\"],[\"standard_parallel_2\",\"Standard_Parallel_2\"],[\"false_easting\",\"False_Easting\"],[\"false_northing\",\"False_Northing\"],[\"central_meridian\",\"Central_Meridian\"],[\"latitude_of_origin\",\"Latitude_Of_Origin\"],[\"latitude_of_origin\",\"Central_Parallel\"],[\"scale_factor\",\"Scale_Factor\"],[\"k0\",\"scale_factor\"],[\"latitude_of_center\",\"Latitude_Of_Center\"],[\"latitude_of_center\",\"Latitude_of_center\"],[\"lat0\",\"latitude_of_center\",n],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longitude_of_center\",\"Longitude_of_center\"],[\"longc\",\"longitude_of_center\",n],[\"x0\",\"false_easting\",l],[\"y0\",\"false_northing\",l],[\"long0\",\"central_meridian\",n],[\"lat0\",\"latitude_of_origin\",n],[\"lat0\",\"standard_parallel_1\",n],[\"lat1\",\"standard_parallel_1\",n],[\"lat2\",\"standard_parallel_2\",n],[\"azimuth\",\"Azimuth\"],[\"alpha\",\"azimuth\",n],[\"srsCode\",\"name\"]].forEach((function(t){return a=e,d=(o=t)[0],r=o[1],void(!(d in a)&&r in a&&(a[d]=a[r],3===o.length&&(a[d]=o[2](a[d]))));var a,o,d,r})),e.long0||!e.longc||\"Albers_Conic_Equal_Area\"!==e.projName&&\"Lambert_Azimuthal_Equal_Area\"!==e.projName||(e.long0=e.longc),e.lat_ts||!e.lat1||\"Stereographic_South_Pole\"!==e.projName&&\"Polar Stereographic (variant B)\"!==e.projName||(e.lat0=n(e.lat1>0?90:-90),e.lat_ts=e.lat1)}(l),l}},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=function(t){return new a(t).output()};var i=/\\s/,s=/[A-Za-z]/,h=/[A-Za-z84]/,o=/[,\\]]/,n=/[\\d\\.E\\-\\+]/;function a(t){if(\"string\"!=typeof t)throw new Error(\"not a string\");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=1}a.prototype.readCharicter=function(){var t=this.text[this.place++];if(4!==this.state)for(;i.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case 1:return this.neutral(t);case 2:return this.keyword(t);case 4:return this.quoted(t);case 5:return this.afterquote(t);case 3:return this.number(t);case-1:return}},a.prototype.afterquote=function(t){if('\"'===t)return this.word+='\"',void(this.state=4);if(o.test(t))return this.word=this.word.trim(),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in afterquote yet, index '+this.place)},a.prototype.afterItem=function(t){return\",\"===t?(null!==this.word&&this.currentObject.push(this.word),this.word=null,void(this.state=1)):\"]\"===t?(this.level--,null!==this.word&&(this.currentObject.push(this.word),this.word=null),this.state=1,this.currentObject=this.stack.pop(),void(this.currentObject||(this.state=-1))):void 0},a.prototype.number=function(t){if(!n.test(t)){if(o.test(t))return this.word=parseFloat(this.word),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in number yet, index '+this.place)}this.word+=t},a.prototype.quoted=function(t){'\"'!==t?this.word+=t:this.state=5},a.prototype.keyword=function(t){if(h.test(t))this.word+=t;else{if(\"[\"===t){var e=[];return e.push(this.word),this.level++,null===this.root?this.root=e:this.currentObject.push(e),this.stack.push(this.currentObject),this.currentObject=e,void(this.state=1)}if(!o.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in keyword yet, index '+this.place);this.afterItem(t)}},a.prototype.neutral=function(t){if(s.test(t))return this.word=t,void(this.state=2);if('\"'===t)return this.word=\"\",void(this.state=4);if(n.test(t))return this.word=t,void(this.state=3);if(!o.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in neutral yet, index '+this.place);this.afterItem(t)},a.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(-1===this.state)return this.root;throw new Error('unable to parse string \"'+this.text+'\". State is '+this.state)}},\n",
       "      function _(e,r,a){function s(e,r,a){Array.isArray(r)&&(a.unshift(r),r=null);var s=r?{}:e,n=a.reduce((function(e,r){return c(r,e),e}),s);r&&(e[r]=n)}function c(e,r){if(Array.isArray(e)){var a=e.shift();if(\"PARAMETER\"===a&&(a=e.shift()),1===e.length)return Array.isArray(e[0])?(r[a]={},void c(e[0],r[a])):void(r[a]=e[0]);if(e.length)if(\"TOWGS84\"!==a){if(\"AXIS\"===a)return a in r||(r[a]=[]),void r[a].push(e);var n;switch(Array.isArray(a)||(r[a]={}),a){case\"UNIT\":case\"PRIMEM\":case\"VERT_DATUM\":return r[a]={name:e[0].toLowerCase(),convert:e[1]},void(3===e.length&&c(e[2],r[a]));case\"SPHEROID\":case\"ELLIPSOID\":return r[a]={name:e[0],a:e[1],rf:e[2]},void(4===e.length&&c(e[3],r[a]));case\"PROJECTEDCRS\":case\"PROJCRS\":case\"GEOGCS\":case\"GEOCCS\":case\"PROJCS\":case\"LOCAL_CS\":case\"GEODCRS\":case\"GEODETICCRS\":case\"GEODETICDATUM\":case\"EDATUM\":case\"ENGINEERINGDATUM\":case\"VERT_CS\":case\"VERTCRS\":case\"VERTICALCRS\":case\"COMPD_CS\":case\"COMPOUNDCRS\":case\"ENGINEERINGCRS\":case\"ENGCRS\":case\"FITTED_CS\":case\"LOCAL_DATUM\":case\"DATUM\":return e[0]=[\"name\",e[0]],void s(r,a,e);default:for(n=-1;++n<e.length;)if(!Array.isArray(e[n]))return c(e,r[a]);return s(r,a,e)}}else r[a]=e;else r[a]=!0}else r[e]=!0}Object.defineProperty(a,\"__esModule\",{value:!0}),a.sExpr=c},\n",
       "      function _(e,n,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=function(e,n){var r,t;if(e=e||{},!n)return e;for(t in n)void 0!==(r=n[t])&&(e[t]=r);return e}},\n",
       "      function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const a=t(1),n=a.__importDefault(t(53)),r=a.__importDefault(t(59));var u=[n.default,r.default],f={},i=[];function d(t,e){var o=i.length;return t.names?(i[o]=t,t.names.forEach((function(t){f[t.toLowerCase()]=o})),this):(console.log(e),!0)}function c(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==f[e]&&i[f[e]]?i[f[e]]:void 0}function l(){u.forEach(d)}o.add=d,o.get=c,o.start=l,o.default={start:l,add:d,get:c}},\n",
       "      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const h=t(1),a=h.__importDefault(t(54)),e=h.__importDefault(t(55)),r=h.__importDefault(t(57)),n=h.__importDefault(t(58)),l=t(44);function u(){var t=this.b/this.a;this.es=1-t*t,\"x0\"in this||(this.x0=0),\"y0\"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=a.default(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)}function o(t){var i,s,h=t.x,a=t.y;if(a*l.R2D>90&&a*l.R2D<-90&&h*l.R2D>180&&h*l.R2D<-180)return null;if(Math.abs(Math.abs(a)-l.HALF_PI)<=l.EPSLN)return null;if(this.sphere)i=this.x0+this.a*this.k0*e.default(h-this.long0),s=this.y0+this.a*this.k0*Math.log(Math.tan(l.FORTPI+.5*a));else{var n=Math.sin(a),u=r.default(this.e,a,n);i=this.x0+this.a*this.k0*e.default(h-this.long0),s=this.y0-this.a*this.k0*Math.log(u)}return t.x=i,t.y=s,t}function f(t){var i,s,h=t.x-this.x0,a=t.y-this.y0;if(this.sphere)s=l.HALF_PI-2*Math.atan(Math.exp(-a/(this.a*this.k0)));else{var r=Math.exp(-a/(this.a*this.k0));if(-9999===(s=n.default(this.e,r)))return null}return i=e.default(this.long0+h/(this.a*this.k0)),t.x=i,t.y=s,t}s.init=u,s.forward=o,s.inverse=f,s.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"],s.default={init:u,forward:o,inverse:f,names:s.names}},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.default=function(e,t,n){var r=e*t;return n/Math.sqrt(1-r*r)}},\n",
       "      function _(e,t,u){Object.defineProperty(u,\"__esModule\",{value:!0});const n=e(1),a=e(44),f=n.__importDefault(e(56));u.default=function(e){return Math.abs(e)<=a.SPI?e:e-f.default(e)*a.TWO_PI}},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(e){return e<0?-1:1}},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=t(44);n.default=function(t,e,n){var o=t*n,u=.5*t;return o=Math.pow((1-o)/(1+o),u),Math.tan(.5*(a.HALF_PI-e))/o}},\n",
       "      function _(t,a,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(44);e.default=function(t,a){for(var e,r,o=.5*t,u=n.HALF_PI-2*Math.atan(a),f=0;f<=15;f++)if(e=t*Math.sin(u),u+=r=n.HALF_PI-2*Math.atan(a*Math.pow((1-e)/(1+e),o))-u,Math.abs(r)<=1e-10)return u;return-9999}},\n",
       "      function _(e,n,i){function t(){}function r(e){return e}Object.defineProperty(i,\"__esModule\",{value:!0}),i.init=t,i.forward=r,i.inverse=r,i.names=[\"longlat\",\"identity\"],i.default={init:t,forward:r,inverse:r,names:i.names}},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=e(1),n=e(44),f=a.__importStar(e(61)),u=a.__importDefault(e(47));r.eccentricity=function(e,t,r,a){var f=e*e,u=t*t,i=(f-u)/f,c=0;return a?(f=(e*=1-i*(n.SIXTH+i*(n.RA4+i*n.RA6)))*e,i=0):c=Math.sqrt(i),{es:i,e:c,ep2:(f-u)/u}},r.sphere=function(e,t,r,a,i){if(!e){var c=u.default(f.default,a);c||(c=f.WGS84),e=c.a,t=c.b,r=c.rf}return r&&!t&&(t=(1-1/r)*e),(0===r||Math.abs(e-t)<n.EPSLN)&&(i=!0,t=e),{a:e,b:t,rf:r,sphere:i}}},\n",
       "      function _(e,a,l){Object.defineProperty(l,\"__esModule\",{value:!0});var s={};l.default=s,s.MERIT={a:6378137,rf:298.257,ellipseName:\"MERIT 1983\"},s.SGS85={a:6378136,rf:298.257,ellipseName:\"Soviet Geodetic System 85\"},s.GRS80={a:6378137,rf:298.257222101,ellipseName:\"GRS 1980(IUGG, 1980)\"},s.IAU76={a:6378140,rf:298.257,ellipseName:\"IAU 1976\"},s.airy={a:6377563.396,b:6356256.91,ellipseName:\"Airy 1830\"},s.APL4={a:6378137,rf:298.25,ellipseName:\"Appl. Physics. 1965\"},s.NWL9D={a:6378145,rf:298.25,ellipseName:\"Naval Weapons Lab., 1965\"},s.mod_airy={a:6377340.189,b:6356034.446,ellipseName:\"Modified Airy\"},s.andrae={a:6377104.43,rf:300,ellipseName:\"Andrae 1876 (Den., Iclnd.)\"},s.aust_SA={a:6378160,rf:298.25,ellipseName:\"Australian Natl & S. Amer. 1969\"},s.GRS67={a:6378160,rf:298.247167427,ellipseName:\"GRS 67(IUGG 1967)\"},s.bessel={a:6377397.155,rf:299.1528128,ellipseName:\"Bessel 1841\"},s.bess_nam={a:6377483.865,rf:299.1528128,ellipseName:\"Bessel 1841 (Namibia)\"},s.clrk66={a:6378206.4,b:6356583.8,ellipseName:\"Clarke 1866\"},s.clrk80={a:6378249.145,rf:293.4663,ellipseName:\"Clarke 1880 mod.\"},s.clrk58={a:6378293.645208759,rf:294.2606763692654,ellipseName:\"Clarke 1858\"},s.CPM={a:6375738.7,rf:334.29,ellipseName:\"Comm. des Poids et Mesures 1799\"},s.delmbr={a:6376428,rf:311.5,ellipseName:\"Delambre 1810 (Belgium)\"},s.engelis={a:6378136.05,rf:298.2566,ellipseName:\"Engelis 1985\"},s.evrst30={a:6377276.345,rf:300.8017,ellipseName:\"Everest 1830\"},s.evrst48={a:6377304.063,rf:300.8017,ellipseName:\"Everest 1948\"},s.evrst56={a:6377301.243,rf:300.8017,ellipseName:\"Everest 1956\"},s.evrst69={a:6377295.664,rf:300.8017,ellipseName:\"Everest 1969\"},s.evrstSS={a:6377298.556,rf:300.8017,ellipseName:\"Everest (Sabah & Sarawak)\"},s.fschr60={a:6378166,rf:298.3,ellipseName:\"Fischer (Mercury Datum) 1960\"},s.fschr60m={a:6378155,rf:298.3,ellipseName:\"Fischer 1960\"},s.fschr68={a:6378150,rf:298.3,ellipseName:\"Fischer 1968\"},s.helmert={a:6378200,rf:298.3,ellipseName:\"Helmert 1906\"},s.hough={a:6378270,rf:297,ellipseName:\"Hough\"},s.intl={a:6378388,rf:297,ellipseName:\"International 1909 (Hayford)\"},s.kaula={a:6378163,rf:298.24,ellipseName:\"Kaula 1961\"},s.lerch={a:6378139,rf:298.257,ellipseName:\"Lerch 1979\"},s.mprts={a:6397300,rf:191,ellipseName:\"Maupertius 1738\"},s.new_intl={a:6378157.5,b:6356772.2,ellipseName:\"New International 1967\"},s.plessis={a:6376523,rf:6355863,ellipseName:\"Plessis 1817 (France)\"},s.krass={a:6378245,rf:298.3,ellipseName:\"Krassovsky, 1942\"},s.SEasia={a:6378155,b:6356773.3205,ellipseName:\"Southeast Asia\"},s.walbeck={a:6376896,b:6355834.8467,ellipseName:\"Walbeck\"},s.WGS60={a:6378165,rf:298.3,ellipseName:\"WGS 60\"},s.WGS66={a:6378145,rf:298.25,ellipseName:\"WGS 66\"},s.WGS7={a:6378135,rf:298.26,ellipseName:\"WGS 72\"},l.WGS84=s.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},s.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},\n",
       "      function _(e,a,s){Object.defineProperty(s,\"__esModule\",{value:!0});var t={};s.default=t,t.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},t.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},t.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},t.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},t.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},t.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},t.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},t.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},t.osni52={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"airy\",datumName:\"Irish National\"},t.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},t.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},t.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},t.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},t.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},t.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},t.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},t.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},\n",
       "      function _(a,m,_){Object.defineProperty(_,\"__esModule\",{value:!0});const t=a(44);_.default=function(a,m,_,u,d,p){var r={};return r.datum_type=void 0===a||\"none\"===a?t.PJD_NODATUM:t.PJD_WGS84,m&&(r.datum_params=m.map(parseFloat),0===r.datum_params[0]&&0===r.datum_params[1]&&0===r.datum_params[2]||(r.datum_type=t.PJD_3PARAM),r.datum_params.length>3&&(0===r.datum_params[3]&&0===r.datum_params[4]&&0===r.datum_params[5]&&0===r.datum_params[6]||(r.datum_type=t.PJD_7PARAM,r.datum_params[3]*=t.SEC_TO_RAD,r.datum_params[4]*=t.SEC_TO_RAD,r.datum_params[5]*=t.SEC_TO_RAD,r.datum_params[6]=r.datum_params[6]/1e6+1))),r.a=_,r.b=u,r.es=d,r.ep2=p,r}},\n",
       "      function _(t,e,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=t(1),u=t(44),m=r.__importDefault(t(65)),_=r.__importDefault(t(67)),o=r.__importDefault(t(39)),d=r.__importDefault(t(68)),f=r.__importDefault(t(69));a.default=function t(e,a,r){var n;if(Array.isArray(r)&&(r=d.default(r)),f.default(r),e.datum&&a.datum&&function(t,e){return(t.datum.datum_type===u.PJD_3PARAM||t.datum.datum_type===u.PJD_7PARAM)&&\"WGS84\"!==e.datumCode||(e.datum.datum_type===u.PJD_3PARAM||e.datum.datum_type===u.PJD_7PARAM)&&\"WGS84\"!==t.datumCode}(e,a)&&(r=t(e,n=new o.default(\"WGS84\"),r),e=n),\"enu\"!==e.axis&&(r=_.default(e,!1,r)),\"longlat\"===e.projName)r={x:r.x*u.D2R,y:r.y*u.D2R,z:r.z||0};else if(e.to_meter&&(r={x:r.x*e.to_meter,y:r.y*e.to_meter,z:r.z||0}),!(r=e.inverse(r)))return;return e.from_greenwich&&(r.x+=e.from_greenwich),r=m.default(e.datum,a.datum,r),a.from_greenwich&&(r={x:r.x-a.from_greenwich,y:r.y,z:r.z||0}),\"longlat\"===a.projName?r={x:r.x*u.R2D,y:r.y*u.R2D,z:r.z||0}:(r=a.forward(r),a.to_meter&&(r={x:r.x/a.to_meter,y:r.y/a.to_meter,z:r.z||0})),\"enu\"!==a.axis?_.default(a,!0,r):r}},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const u=e(44),o=e(66);function _(e){return e===u.PJD_3PARAM||e===u.PJD_7PARAM}a.default=function(e,t,a){return o.compareDatums(e,t)||e.datum_type===u.PJD_NODATUM||t.datum_type===u.PJD_NODATUM?a:e.es!==t.es||e.a!==t.a||_(e.datum_type)||_(t.datum_type)?(a=o.geodeticToGeocentric(a,e.es,e.a),_(e.datum_type)&&(a=o.geocentricToWgs84(a,e.datum_type,e.datum_params)),_(t.datum_type)&&(a=o.geocentricFromWgs84(a,t.datum_type,t.datum_params)),o.geocentricToGeodetic(a,t.es,t.a,t.b)):a}},\n",
       "      function _(a,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=a(44);r.compareDatums=function(a,t){return a.datum_type===t.datum_type&&(!(a.a!==t.a||Math.abs(a.es-t.es)>5e-11)&&(a.datum_type===e.PJD_3PARAM?a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]:a.datum_type!==e.PJD_7PARAM||a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]&&a.datum_params[3]===t.datum_params[3]&&a.datum_params[4]===t.datum_params[4]&&a.datum_params[5]===t.datum_params[5]&&a.datum_params[6]===t.datum_params[6]))},r.geodeticToGeocentric=function(a,t,r){var m,u,s,_,n=a.x,d=a.y,i=a.z?a.z:0;if(d<-e.HALF_PI&&d>-1.001*e.HALF_PI)d=-e.HALF_PI;else if(d>e.HALF_PI&&d<1.001*e.HALF_PI)d=e.HALF_PI;else{if(d<-e.HALF_PI)return{x:-1/0,y:-1/0,z:a.z};if(d>e.HALF_PI)return{x:1/0,y:1/0,z:a.z}}return n>Math.PI&&(n-=2*Math.PI),u=Math.sin(d),_=Math.cos(d),s=u*u,{x:((m=r/Math.sqrt(1-t*s))+i)*_*Math.cos(n),y:(m+i)*_*Math.sin(n),z:(m*(1-t)+i)*u}},r.geocentricToGeodetic=function(a,t,r,m){var u,s,_,n,d,i,p,P,o,y,M,z,c,A,x,f=a.x,h=a.y,I=a.z?a.z:0;if(u=Math.sqrt(f*f+h*h),s=Math.sqrt(f*f+h*h+I*I),u/r<1e-12){if(A=0,s/r<1e-12)return e.HALF_PI,x=-m,{x:a.x,y:a.y,z:a.z}}else A=Math.atan2(h,f);_=I/s,P=(n=u/s)*(1-t)*(d=1/Math.sqrt(1-t*(2-t)*n*n)),o=_*d,c=0;do{c++,i=t*(p=r/Math.sqrt(1-t*o*o))/(p+(x=u*P+I*o-p*(1-t*o*o))),z=(M=_*(d=1/Math.sqrt(1-i*(2-i)*n*n)))*P-(y=n*(1-i)*d)*o,P=y,o=M}while(z*z>1e-24&&c<30);return{x:A,y:Math.atan(M/Math.abs(y)),z:x}},r.geocentricToWgs84=function(a,t,r){if(t===e.PJD_3PARAM)return{x:a.x+r[0],y:a.y+r[1],z:a.z+r[2]};if(t===e.PJD_7PARAM){var m=r[0],u=r[1],s=r[2],_=r[3],n=r[4],d=r[5],i=r[6];return{x:i*(a.x-d*a.y+n*a.z)+m,y:i*(d*a.x+a.y-_*a.z)+u,z:i*(-n*a.x+_*a.y+a.z)+s}}},r.geocentricFromWgs84=function(a,t,r){if(t===e.PJD_3PARAM)return{x:a.x-r[0],y:a.y-r[1],z:a.z-r[2]};if(t===e.PJD_7PARAM){var m=r[0],u=r[1],s=r[2],_=r[3],n=r[4],d=r[5],i=r[6],p=(a.x-m)/i,P=(a.y-u)/i,o=(a.z-s)/i;return{x:p+d*P-n*o,y:-d*p+P+_*o,z:n*p-_*P+o}}}},\n",
       "      function _(e,a,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.default=function(e,a,i){var s,n,r,c=i.x,d=i.y,u=i.z||0,f={};for(r=0;r<3;r++)if(!a||2!==r||void 0!==i.z)switch(0===r?(s=c,n=-1!==\"ew\".indexOf(e.axis[r])?\"x\":\"y\"):1===r?(s=d,n=-1!==\"ns\".indexOf(e.axis[r])?\"y\":\"x\"):(s=u,n=\"z\"),e.axis[r]){case\"e\":case\"w\":case\"n\":case\"s\":f[n]=s;break;case\"u\":void 0!==i[n]&&(f.z=s);break;case\"d\":void 0!==i[n]&&(f.z=-s);break;default:return null}return f}},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(e){var n={x:e[0],y:e[1]};return e.length>2&&(n.z=e[2]),e.length>3&&(n.m=e[3]),n}},\n",
       "      function _(e,i,n){function t(e){if(\"function\"==typeof Number.isFinite){if(Number.isFinite(e))return;throw new TypeError(\"coordinates must be finite numbers\")}if(\"number\"!=typeof e||e!=e||!isFinite(e))throw new TypeError(\"coordinates must be finite numbers\")}Object.defineProperty(n,\"__esModule\",{value:!0}),n.default=function(e){t(e.x),t(e.y)}},\n",
       "      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),r=e(71),s=n.__importStar(e(74)),_=n.__importStar(e(18)),a=e(81),o=e(82);class l extends r.View{get coordinates(){return this._coordinates}initialize(){super.initialize(),this.visuals=new s.Visuals(this.model),this.needs_webgl_blit=!1,this._initialize_coordinates()}connect_signals(){super.connect_signals();const{x_range_name:e,y_range_name:i}=this.model.properties;this.on_change([e,i],()=>this._initialize_coordinates())}_initialize_coordinates(){const{x_range_name:e,y_range_name:i}=this.model,{frame:t}=this.plot_view,n=t.x_scales.get(e),r=t.y_scales.get(i);this._coordinates=new o.CoordinateTransform(n,r)}get plot_view(){return this.parent}get plot_model(){return this.parent.model}get layer(){const{overlays:e,primary:i}=this.plot_view.canvas_view;return\"overlay\"==this.model.level?e:i}request_render(){this.plot_view.request_render()}notify_finished(){this.plot_view.notify_finished()}get needs_clip(){return!1}get has_webgl(){return!1}render(){this.model.visible&&this._render(),this._has_finished=!0}}t.RendererView=l,l.__name__=\"RendererView\";class d extends a.Model{constructor(e){super(e)}static init_Renderer(){this.define({level:[_.RenderLevel],visible:[_.Boolean,!0],x_range_name:[_.String,\"default\"],y_range_name:[_.String,\"default\"]})}}t.Renderer=d,d.__name__=\"Renderer\",d.init_Renderer()},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),r=t(15),n=t(72),o=t(8),h=i.__importDefault(t(73));class a{constructor(t){if(this.removed=new r.Signal0(this,\"removed\"),this._ready=Promise.resolve(void 0),null==t.model)throw new Error(\"model of a view wasn't configured\");this.model=t.model,this._parent=t.parent}get ready(){return this._ready}connect(t,e){return t.connect((t,s)=>{const i=Promise.resolve(e.call(this,t,s));this._ready=this._ready.then(()=>i)},this)}disconnect(t,e){return t.disconnect(e,this)}initialize(){this._has_finished=!1,this.is_root&&(this._stylesheet=n.stylesheet);for(const t of this.styles())this.stylesheet.append(t)}async lazy_initialize(){}remove(){this._parent=void 0,this.disconnect_signals(),this.removed.emit()}toString(){return`${this.model.type}View(${this.model.id})`}serializable_state(){return{type:this.model.type}}get parent(){if(void 0!==this._parent)return this._parent;throw new Error(\"parent of a view wasn't configured\")}get is_root(){return null===this.parent}get root(){return this.is_root?this:this.parent.root}assert_root(){if(!this.is_root)throw new Error(this.toString()+\" is not a root layout\")}has_finished(){return this._has_finished}get is_idle(){return this.has_finished()}connect_signals(){}disconnect_signals(){r.Signal.disconnectReceiver(this)}on_change(t,e){for(const s of o.isArray(t)?t:[t])this.connect(s.change,e)}cursor(t,e){return null}get stylesheet(){return this.is_root?this._stylesheet:this.root.stylesheet}styles(){return[h.default]}}s.View=a,a.__name__=\"View\"},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=t(8),o=t(13),s=t=>(e={},...n)=>{const s=document.createElement(t);s.classList.add(\"bk\");for(let[t,n]of o.entries(e))if(null!=n&&(!i.isBoolean(n)||n))if(\"class\"===t&&(i.isString(n)&&(n=n.split(/\\s+/)),i.isArray(n)))for(const t of n)null!=t&&s.classList.add(t);else if(\"style\"===t&&i.isPlainObject(n))for(const[t,e]of o.entries(n))s.style[t]=e;else if(\"data\"===t&&i.isPlainObject(n))for(const[t,e]of o.entries(n))s.dataset[t]=e;else s.setAttribute(t,n);function l(t){if(i.isString(t))s.appendChild(document.createTextNode(t));else if(t instanceof Node)s.appendChild(t);else if(t instanceof NodeList||t instanceof HTMLCollection)for(const e of t)s.appendChild(e);else if(null!=t&&!1!==t)throw new Error(\"expected a DOM element, string, false or null, got \"+JSON.stringify(t))}for(const t of n)if(i.isArray(t))for(const e of t)l(e);else l(t);return s};function l(t){const e=t.parentNode;null!=e&&e.removeChild(t)}function r(t,...e){const n=t.firstChild;for(const i of e)t.insertBefore(i,n)}function a(t,e){const n=Element.prototype;return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector).call(t,e)}function c(t){return parseFloat(t)||0}function h(t){const e=getComputedStyle(t);return{border:{top:c(e.borderTopWidth),bottom:c(e.borderBottomWidth),left:c(e.borderLeftWidth),right:c(e.borderRightWidth)},margin:{top:c(e.marginTop),bottom:c(e.marginBottom),left:c(e.marginLeft),right:c(e.marginRight)},padding:{top:c(e.paddingTop),bottom:c(e.paddingBottom),left:c(e.paddingLeft),right:c(e.paddingRight)}}}function d(t){const e=t.getBoundingClientRect();return{width:Math.ceil(e.width),height:Math.ceil(e.height)}}n.createElement=function(t,e,...n){return s(t)(e,...n)},n.div=s(\"div\"),n.span=s(\"span\"),n.canvas=s(\"canvas\"),n.link=s(\"link\"),n.style=s(\"style\"),n.a=s(\"a\"),n.p=s(\"p\"),n.i=s(\"i\"),n.pre=s(\"pre\"),n.button=s(\"button\"),n.label=s(\"label\"),n.input=s(\"input\"),n.select=s(\"select\"),n.option=s(\"option\"),n.optgroup=s(\"optgroup\"),n.textarea=s(\"textarea\"),n.nbsp=function(){return document.createTextNode(\" \")},n.append=function(t,...e){for(const n of e)t.appendChild(n)},n.remove=l,n.removeElement=l,n.replaceWith=function(t,e){const n=t.parentNode;null!=n&&n.replaceChild(e,t)},n.prepend=r,n.empty=function(t,e=!1){let n;for(;n=t.firstChild;)t.removeChild(n);if(e&&t instanceof Element)for(const e of t.attributes)t.removeAttributeNode(e)},n.display=function(t){t.style.display=\"\"},n.undisplay=function(t){t.style.display=\"none\"},n.show=function(t){t.style.visibility=\"\"},n.hide=function(t){t.style.visibility=\"hidden\"},n.offset=function(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},n.matches=a,n.parent=function(t,e){let n=t;for(;n=n.parentElement;)if(a(n,e))return n;return null},n.extents=h,n.size=d,n.scroll_size=function(t){return{width:Math.ceil(t.scrollWidth),height:Math.ceil(t.scrollHeight)}},n.outer_size=function(t){const{margin:{left:e,right:n,top:i,bottom:o}}=h(t),{width:s,height:l}=d(t);return{width:Math.ceil(s+e+n),height:Math.ceil(l+i+o)}},n.content_size=function(t){const{left:e,top:n}=t.getBoundingClientRect(),{padding:i}=h(t);let o=0,s=0;for(const l of t.children){const t=l.getBoundingClientRect();o=Math.max(o,Math.ceil(t.left-e-i.left+t.width)),s=Math.max(s,Math.ceil(t.top-n-i.top+t.height))}return{width:o,height:s}},n.position=function(t,e,n){const{style:i}=t;if(i.left=e.x+\"px\",i.top=e.y+\"px\",i.width=e.width+\"px\",i.height=e.height+\"px\",null==n)i.margin=\"\";else{const{top:t,right:e,bottom:o,left:s}=n;i.margin=`${t}px ${e}px ${o}px ${s}px`}},n.children=function(t){return Array.from(t.children)};class f{constructor(t){this.el=t,this.classList=t.classList}get values(){const t=[];for(let e=0;e<this.classList.length;e++){const n=this.classList.item(e);null!=n&&t.push(n)}return t}has(t){return this.classList.contains(t)}add(...t){for(const e of t)this.classList.add(e);return this}remove(...t){for(const e of t)this.classList.remove(e);return this}clear(){for(const t of this.values)\"bk\"!=t&&this.classList.remove(t);return this}toggle(t,e){return(null!=e?e:!this.has(t))?this.add(t):this.remove(t),this}}var u;function p(t,e,n){const{width:i,height:o,position:s,display:l}=t.style;t.style.position=\"absolute\",t.style.display=\"\",t.style.width=null!=e.width&&e.width!=1/0?e.width+\"px\":\"auto\",t.style.height=null!=e.height&&e.height!=1/0?e.height+\"px\":\"auto\";try{return n()}finally{t.style.position=s,t.style.display=l,t.style.width=i,t.style.height=o}}n.ClassList=f,f.__name__=\"ClassList\",n.classes=function(t){return new f(t)},n.toggle_attribute=function(t,e,n){null==n&&(n=!t.hasAttribute(e)),n?t.setAttribute(e,\"true\"):t.removeAttribute(e)},(u=n.Keys||(n.Keys={}))[u.Backspace=8]=\"Backspace\",u[u.Tab=9]=\"Tab\",u[u.Enter=13]=\"Enter\",u[u.Esc=27]=\"Esc\",u[u.PageUp=33]=\"PageUp\",u[u.PageDown=34]=\"PageDown\",u[u.Left=37]=\"Left\",u[u.Up=38]=\"Up\",u[u.Right=39]=\"Right\",u[u.Down=40]=\"Down\",u[u.Delete=46]=\"Delete\",n.undisplayed=function(t,e){const{display:n}=t.style;t.style.display=\"none\";try{return e()}finally{t.style.display=n}},n.unsized=function(t,e){return p(t,{},e)},n.sized=p;class g{constructor(t){this.root=t,this.known=new Set,this.style=n.style({type:\"text/css\"}),r(t,this.style)}append(t){this.known.has(t)||(this.style.appendChild(document.createTextNode(t)),this.known.add(t))}}n.StyleSheet=g,g.__name__=\"StyleSheet\",n.stylesheet=new g(document.head)},\n",
       "      function _(n,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default=\"\\n.bk-root {\\n  position: relative;\\n  width: auto;\\n  height: auto;\\n  z-index: 0;\\n  box-sizing: border-box;\\n  font-family: Helvetica, Arial, sans-serif;\\n  font-size: 13px;\\n}\\n.bk-root .bk,\\n.bk-root .bk:before,\\n.bk-root .bk:after {\\n  box-sizing: inherit;\\n  margin: 0;\\n  border: 0;\\n  padding: 0;\\n  background-image: none;\\n  font-family: inherit;\\n  font-size: 100%;\\n  line-height: 1.42857143;\\n}\\n.bk-root pre.bk {\\n  font-family: Courier, monospace;\\n}\\n\"},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const s=e(1),l=s.__importStar(e(28)),c=s.__importStar(e(18)),i=e(22),o=e(8),r=e(75),h=e(77);function n(e,t){const[a,s,l,c]=o.isString(e)?i.color2rgba(e):i.decode_rgba(e);return`rgba(${255*a}, ${255*s}, ${255*l}, ${1==c?t:c})`}function _(e,t,a){e.moveTo(0,a+.5),e.lineTo(t,a+.5),e.stroke()}function u(e,t,a){e.moveTo(a+.5,0),e.lineTo(a+.5,t),e.stroke()}function v(e,t){e.moveTo(0,t),e.lineTo(t,0),e.stroke(),e.moveTo(0,0),e.lineTo(t,t),e.stroke()}a.hatch_aliases={\" \":\"blank\",\".\":\"dot\",o:\"ring\",\"-\":\"horizontal_line\",\"|\":\"vertical_line\",\"+\":\"cross\",'\"':\"horizontal_dash\",\":\":\"vertical_dash\",\"@\":\"spiral\",\"/\":\"right_diagonal_line\",\"\\\\\":\"left_diagonal_line\",x:\"diagonal_cross\",\",\":\"right_diagonal_dash\",\"`\":\"left_diagonal_dash\",v:\"horizontal_wave\",\">\":\"vertical_wave\",\"*\":\"criss_cross\"};class p{constructor(e,t=\"\"){this.obj=e,this.prefix=t,this.cache={};for(const a of this.attrs)this[a]=e.properties[t+a]}warm_cache(e,t){for(const a of this.attrs){const s=this.obj.properties[this.prefix+a];if(void 0!==s.spec.value)this.cache[a]=s.spec.value;else{if(!(null!=e&&s instanceof c.VectorSpec))throw new Error(\"source is required with a vectorized visual property\");{const l=s.array(e),c=null!=t?t.select(l):l;this.cache[a+\"_array\"]=c}}}}cache_select(e,t){const a=this.obj.properties[this.prefix+e];let s;return void 0!==a.spec.value?this.cache[e]=s=a.spec.value:this.cache[e]=s=this.cache[e+\"_array\"][t],s}get_array(e){return this.cache[e+\"_array\"]}set_vectorize(e,t){this._set_vectorize(e,t)}}a.ContextProperties=p,p.__name__=\"ContextProperties\";class f extends p{set_value(e){const t=this.line_color.value(),a=this.line_alpha.value();e.strokeStyle=n(t,a),e.lineWidth=this.line_width.value(),e.lineJoin=this.line_join.value(),e.lineCap=this.line_cap.value(),e.lineDash=this.line_dash.value(),e.lineDashOffset=this.line_dash_offset.value()}get doit(){return!(null===this.line_color.spec.value||0==this.line_alpha.spec.value||0==this.line_width.spec.value)}_set_vectorize(e,t){const a=this.cache_select(\"line_color\",t),s=this.cache_select(\"line_alpha\",t),l=this.cache_select(\"line_width\",t),c=this.cache_select(\"line_join\",t),i=this.cache_select(\"line_cap\",t),o=this.cache_select(\"line_dash\",t),r=this.cache_select(\"line_dash_offset\",t);e.strokeStyle=n(a,s),e.lineWidth=l,e.lineJoin=c,e.lineCap=i,e.lineDash=o,e.lineDashOffset=r}color_value(){return n(this.line_color.value(),this.line_alpha.value())}}a.Line=f,f.__name__=\"Line\",f.prototype.attrs=Object.keys(l.LineVector);class d extends p{set_value(e){const t=this.fill_color.value(),a=this.fill_alpha.value();e.fillStyle=n(t,a)}get doit(){return!(null===this.fill_color.spec.value||0==this.fill_alpha.spec.value)}_set_vectorize(e,t){const a=this.cache_select(\"fill_color\",t),s=this.cache_select(\"fill_alpha\",t);e.fillStyle=n(a,s)}color_value(){return n(this.fill_color.value(),this.fill_alpha.value())}}a.Fill=d,d.__name__=\"Fill\",d.prototype.attrs=Object.keys(l.FillVector);class k extends p{cache_select(e,t){let s;if(\"pattern\"==e){const e=this.cache_select(\"hatch_color\",t),s=this.cache_select(\"hatch_alpha\",t),l=this.cache_select(\"hatch_scale\",t),c=this.cache_select(\"hatch_pattern\",t),i=this.cache_select(\"hatch_weight\",t),{hatch_extra:o}=this.cache;if(null!=o&&o.hasOwnProperty(c)){const t=o[c];this.cache.pattern=t.get_pattern(e,s,l,i)}else this.cache.pattern=t=>{const o=t instanceof r.SVGRenderingContext2D?\"svg\":\"canvas\",p=new h.CanvasLayer(o,!0);return p.resize(l,l),p.prepare(),function(e,t,s,l,c,i){var o;const r=c,h=r/2,p=h/2;switch(e.strokeStyle=n(s,l),e.lineCap=\"square\",e.fillStyle=s,e.lineWidth=i,null!==(o=a.hatch_aliases[t])&&void 0!==o?o:t){case\"blank\":break;case\"dot\":e.arc(h,h,h/2,0,2*Math.PI,!0),e.fill();break;case\"ring\":e.arc(h,h,h/2,0,2*Math.PI,!0),e.stroke();break;case\"horizontal_line\":_(e,r,h);break;case\"vertical_line\":u(e,r,h);break;case\"cross\":_(e,r,h),u(e,r,h);break;case\"horizontal_dash\":_(e,h,h);break;case\"vertical_dash\":u(e,h,h);break;case\"spiral\":{const t=r/30;e.moveTo(h,h);for(let a=0;a<360;a++){const s=.1*a,l=h+t*s*Math.cos(s),c=h+t*s*Math.sin(s);e.lineTo(l,c)}e.stroke();break}case\"right_diagonal_line\":e.moveTo(.5-p,r),e.lineTo(p+.5,0),e.stroke(),e.moveTo(p+.5,r),e.lineTo(3*p+.5,0),e.stroke(),e.moveTo(3*p+.5,r),e.lineTo(5*p+.5,0),e.stroke(),e.stroke();break;case\"left_diagonal_line\":e.moveTo(p+.5,r),e.lineTo(.5-p,0),e.stroke(),e.moveTo(3*p+.5,r),e.lineTo(p+.5,0),e.stroke(),e.moveTo(5*p+.5,r),e.lineTo(3*p+.5,0),e.stroke(),e.stroke();break;case\"diagonal_cross\":v(e,r);break;case\"right_diagonal_dash\":e.moveTo(p+.5,3*p+.5),e.lineTo(3*p+.5,p+.5),e.stroke();break;case\"left_diagonal_dash\":e.moveTo(p+.5,p+.5),e.lineTo(3*p+.5,3*p+.5),e.stroke();break;case\"horizontal_wave\":e.moveTo(0,p),e.lineTo(h,3*p),e.lineTo(r,p),e.stroke();break;case\"vertical_wave\":e.moveTo(p,0),e.lineTo(3*p,h),e.lineTo(p,r),e.stroke();break;case\"criss_cross\":v(e,r),_(e,r,h),u(e,r,h)}}(p.ctx,c,e,s,l,i),t.createPattern(p.canvas,\"repeat\")}}else s=super.cache_select(e,t);return s}_try_defer(e){const{hatch_pattern:t,hatch_extra:a}=this.cache;if(null!=a&&a.hasOwnProperty(t)){a[t].onload(e)}}get doit(){return!(null===this.hatch_color.spec.value||0==this.hatch_alpha.spec.value||\" \"==this.hatch_pattern.spec.value||\"blank\"==this.hatch_pattern.spec.value||null===this.hatch_pattern.spec.value)}doit2(e,t,a,s){if(!this.doit)return;this.cache_select(\"pattern\",t);null==this.cache.pattern(e)?this._try_defer(s):(this.set_vectorize(e,t),a())}_set_vectorize(e,t){this.cache_select(\"pattern\",t),e.fillStyle=this.cache.pattern(e)}color_value(){return n(this.hatch_color.value(),this.hatch_alpha.value())}}a.Hatch=k,k.__name__=\"Hatch\",k.prototype.attrs=Object.keys(l.HatchVector);class x extends p{color_value(){return n(this.text_color.value(),this.text_alpha.value())}font_value(){const e=this.text_font.value(),t=this.text_font_size.value();return`${this.text_font_style.value()} ${t} ${e}`}v_font_value(e){super.cache_select(\"text_font_style\",e),super.cache_select(\"text_font_size\",e),super.cache_select(\"text_font\",e);const{text_font_style:t,text_font_size:a,text_font:s}=this.cache;return`${t} ${a} ${s}`}cache_select(e,t){let a;return\"font\"==e?this.cache.font=a=this.v_font_value(t):a=super.cache_select(e,t),a}set_value(e){const t=this.text_color.value(),a=this.text_alpha.value();e.fillStyle=n(t,a),e.font=this.font_value(),e.textAlign=this.text_align.value(),e.textBaseline=this.text_baseline.value()}get doit(){return!(null===this.text_color.spec.value||0==this.text_alpha.spec.value)}_set_vectorize(e,t){const a=this.cache_select(\"text_color\",t),s=this.cache_select(\"text_alpha\",t),l=this.cache_select(\"font\",t),c=this.cache_select(\"text_align\",t),i=this.cache_select(\"text_baseline\",t);e.fillStyle=n(a,s),e.font=l,e.textAlign=c,e.textBaseline=i}}a.Text=x,x.__name__=\"Text\",x.prototype.attrs=Object.keys(l.TextVector);class b{constructor(e){for(const t of e._mixins){const[a,s=\"\"]=t.split(\":\");let l;switch(a){case\"line\":l=f;break;case\"fill\":l=d;break;case\"hatch\":l=k;break;case\"text\":l=x;break;default:throw new Error(\"unknown visual: \"+a)}this[s+a]=new l(e,s)}}warm_cache(e,t){for(const a in this)if(this.hasOwnProperty(a)){const s=this[a];s instanceof p&&s.warm_cache(e,t)}}}a.Visuals=b,b.__name__=\"Visuals\"},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(76),n=t(8),r=t(72);function a(t){if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");const e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\";let i=\"\";do{i=\"\";for(let t=0;t<12;t++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}function o(t){const e={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"};return e[t]||e.start}function l(t){const e={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"};return e[t]||e.alphabetic}const h=function(t,e){const i=new Map,s=t.split(\",\");e=e||10;for(let t=0;t<s.length;t+=2){const n=\"&\"+s[t+1]+\";\",r=parseInt(s[t],e);i.set(n,\"&#\"+r+\";\")}return i.set(\"\\\\xa0\",\"&#160;\"),i}(\"50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro\",32),c={strokeStyle:{svgAttr:\"stroke\",canvas:\"#000000\",svg:\"none\",apply:\"stroke\"},fillStyle:{svgAttr:\"fill\",canvas:\"#000000\",svg:null,apply:\"fill\"},lineCap:{svgAttr:\"stroke-linecap\",canvas:\"butt\",svg:\"butt\",apply:\"stroke\"},lineJoin:{svgAttr:\"stroke-linejoin\",canvas:\"miter\",svg:\"miter\",apply:\"stroke\"},miterLimit:{svgAttr:\"stroke-miterlimit\",canvas:10,svg:4,apply:\"stroke\"},lineWidth:{svgAttr:\"stroke-width\",canvas:1,svg:1,apply:\"stroke\"},globalAlpha:{svgAttr:\"opacity\",canvas:1,svg:1,apply:\"fill stroke\"},font:{canvas:\"10px sans-serif\"},shadowColor:{canvas:\"#000000\"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:\"start\"},textBaseline:{canvas:\"alphabetic\"},lineDash:{svgAttr:\"stroke-dasharray\",canvas:[],svg:null,apply:\"stroke\"}};class _{constructor(t,e){this.__root=t,this.__ctx=e}addColorStop(t,e){const i=this.__ctx.__createElement(\"stop\");if(i.setAttribute(\"offset\",\"\"+t),-1!==e.indexOf(\"rgba\")){const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),[,s,n,r,a]=t;i.setAttribute(\"stop-color\",`rgb(${s},${n},${r})`),i.setAttribute(\"stop-opacity\",a)}else i.setAttribute(\"stop-color\",e);this.__root.appendChild(i)}}_.__name__=\"CanvasGradient\";class u{constructor(t,e){this.__root=t,this.__ctx=e}}u.__name__=\"CanvasPattern\";class p{constructor(t){var e,i,n;this.__currentPosition=null,this.__currentElementsToStyle=null,this._transform=new s.AffineTransform,this._clip_path=null,this.__document=null!==(e=null==t?void 0:t.document)&&void 0!==e?e:document,(null==t?void 0:t.ctx)?this.__ctx=t.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[],this.__root=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),this.__root.setAttribute(\"version\",\"1.1\"),this.__root.setAttribute(\"xmlns\",\"http://www.w3.org/2000/svg\"),this.__root.setAttributeNS(\"http://www.w3.org/2000/xmlns/\",\"xmlns:xlink\",\"http://www.w3.org/1999/xlink\"),this.width=null!==(i=null==t?void 0:t.width)&&void 0!==i?i:500,this.height=null!==(n=null==t?void 0:t.height)&&void 0!==n?n:500,this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs)}get canvas(){return this}get width(){return this._width}set width(t){this._width=t,this.__root.setAttribute(\"width\",\"\"+t)}get height(){return this._height}set height(t){this._height=t,this.__root.setAttribute(\"height\",\"\"+t)}__createElement(t,e={},i=!1){const s=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t);i&&(s.setAttribute(\"fill\",\"none\"),s.setAttribute(\"stroke\",\"none\"));const n=Object.keys(e);for(const t of n)s.setAttribute(t,\"\"+e[t]);return s}__setDefaultStyles(){const t=Object.keys(c),e=this;for(let i=0;i<t.length;i++){const s=t[i];e[s]=c[s].canvas}}__applyStyleState(t){const e=Object.keys(t),i=this;for(let s=0;s<e.length;s++){const n=e[s];i[n]=t[n]}}__getStyleState(){const t=Object.keys(c),e={};for(let i=0;i<t.length;i++){const s=t[i];e[s]=this[s]}return e}__applyStyleToCurrentElement(t){let e=this.__currentElement;const i=this.__currentElementsToStyle;if(null!=i){e.setAttribute(t,\"\"),e=i.element;for(const e of i.children)e.setAttribute(t,\"\")}const s=Object.keys(c);for(let i=0;i<s.length;i++){const r=c[s[i]],a=this[s[i]];if(r.apply)if(a instanceof u){for(const t of[...a.__ctx.__defs.childNodes])if(t instanceof Element){const e=t.getAttribute(\"id\");this.__ids[e]=e,this.__defs.appendChild(t)}const t=a.__root.getAttribute(\"id\");e.setAttribute(r.apply,`url(#${t})`)}else if(a instanceof _){const t=a.__root.getAttribute(\"id\");e.setAttribute(r.apply,`url(#${t})`)}else if(-1!==r.apply.indexOf(t)&&r.svg!==a)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||!n.isString(a)||-1===a.indexOf(\"rgba\")){let n=r.svgAttr;if(\"globalAlpha\"===s[i]&&(n=t+\"-\"+r.svgAttr,e.getAttribute(n)))continue;e.setAttribute(n,\"\"+a)}else{const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(a),[,i,s,n,o]=t;e.setAttribute(r.svgAttr,`rgb(${i},${s},${n})`);let l=parseFloat(o);const h=this.globalAlpha;null!=h&&(l*=h),e.setAttribute(r.svgAttr+\"-opacity\",\"\"+l)}}}get_serialized_svg(t=!1){let e=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(e)&&(e=e.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(const[t,i]of h){const s=new RegExp(t,\"gi\");s.test(e)&&(e=e.replace(s,i))}return e}get_svg(){return this.__root}save(){this.__stack.push({transform:this._transform,clip_path:this._clip_path,attributes:this.__getStyleState()}),this._transform=this._transform.clone()}restore(){if(0==this.__stack.length)return;const{transform:t,clip_path:e,attributes:i}=this.__stack.pop();this._transform=t,this._clip_path=e,this.__applyStyleState(i)}_apply_transform(t,e=this._transform){e.is_identity||t.setAttribute(\"transform\",e.toString())}scale(t,e){isFinite(t)&&(null==e||isFinite(e))&&this._transform.scale(t,null!=e?e:t)}rotate(t){isFinite(t)&&this._transform.rotate(t)}translate(t,e){isFinite(t+e)&&this._transform.translate(t,e)}transform(t,e,i,s,n,r){isFinite(t+e+i+s+n+r)&&this._transform.transform(t,e,i,s,n,r)}beginPath(){this.__currentDefaultPath=\"\",this.__currentPosition=null;const t=this.__createElement(\"path\",{},!0);this.__root.appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){const t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)}__addPathCommand(t,e,i){const s=this.__currentDefaultPath?\" \":\"\";this.__currentDefaultPath+=s+i,this.__currentPosition={x:t,y:e}}get _hasCurrentDefaultPath(){return!!this.__currentDefaultPath}moveTo(t,e){if(!isFinite(t+e))return;\"path\"!==this.__currentElement.nodeName&&this.beginPath();const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`M ${i} ${s}`)}closePath(){this._hasCurrentDefaultPath&&this.__addPathCommand(NaN,NaN,\"Z\")}lineTo(t,e){if(isFinite(t+e))if(this._hasCurrentDefaultPath){const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`L ${i} ${s}`)}else this.moveTo(t,e)}bezierCurveTo(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))return;const[a,o]=this._transform.apply(n,r),[l,h]=this._transform.apply(t,e),[c,_]=this._transform.apply(i,s);this.__addPathCommand(a,o,`C ${l} ${h} ${c} ${_} ${a} ${o}`)}quadraticCurveTo(t,e,i,s){if(!isFinite(t+e+i+s))return;const[n,r]=this._transform.apply(i,s),[a,o]=this._transform.apply(t,e);this.__addPathCommand(n,r,`Q ${a} ${o} ${n} ${r}`)}arcTo(t,e,i,s,n){if(!isFinite(t+e+i+s+n))return;if(null==this.__currentPosition)return;const r=this.__currentPosition.x,a=this.__currentPosition.y;if(n<0)throw new Error(\"IndexSizeError: The radius provided (\"+n+\") is negative.\");if(r===t&&a===e||t===i&&e===s||0===n)return void this.lineTo(t,e);function o([t,e]){const i=Math.sqrt(t**2+e**2);return[t/i,e/i]}const l=o([r-t,a-e]),h=o([i-t,s-e]);if(l[0]*h[1]==l[1]*h[0])return void this.lineTo(t,e);const c=l[0]*h[0]+l[1]*h[1],_=Math.acos(Math.abs(c)),u=o([l[0]+h[0],l[1]+h[1]]),p=n/Math.sin(_/2),d=t+p*u[0],m=e+p*u[1],f=[-l[1],l[0]],g=[h[1],-h[0]];function w(t){const e=t[0];return t[1]>=0?Math.acos(e):-Math.acos(e)}const b=w(f),v=w(g);this.lineTo(d+f[0]*n,m+f[1]*n),this.arc(d,m,n,b,v)}stroke(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\"),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}fill(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\"),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}rect(t,e,i,s){isFinite(t+e+i+s)&&(\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+s),this.lineTo(t,e+s),this.lineTo(t,e))}fillRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.fill())}strokeRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.stroke())}__clearCanvas(){r.empty(this.__defs),r.empty(this.__root),this.__root.appendChild(this.__defs),this.__currentElement=this.__root}clearRect(t,e,i,s){if(!isFinite(t+e+i+s))return;if(0===t&&0===e&&i===this.width&&s===this.height)return void this.__clearCanvas();const n=this.__createElement(\"rect\",{x:t,y:e,width:i,height:s,fill:\"#FFFFFF\"},!0);this._apply_transform(n),this.__root.appendChild(n)}createLinearGradient(t,e,i,s){if(!isFinite(t+e+i+s))throw new Error(\"The provided double value is non-finite\");const[n,r]=this._transform.apply(t,e),[o,l]=this._transform.apply(i,s),h=this.__createElement(\"linearGradient\",{id:a(this.__ids),x1:n+\"px\",x2:o+\"px\",y1:r+\"px\",y2:l+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(h),new _(h,this)}createRadialGradient(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))throw new Error(\"The provided double value is non-finite\");const[o,l]=this._transform.apply(t,e),[h,c]=this._transform.apply(s,n),u=this.__createElement(\"radialGradient\",{id:a(this.__ids),cx:h+\"px\",cy:c+\"px\",r:r+\"px\",fx:o+\"px\",fy:l+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(u),new _(u,this)}__parseFont(){const t=/^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-,\\'\\\"\\sa-z0-9]+?)\\s*$/i.exec(this.font),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\"};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),null!=this.__fontHref&&(e.href=this.__fontHref),e}__wrapTextLink(t,e){if(t.href){const i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e}__applyText(t,e,i,s){const n=this.__parseFont(),r=this.__createElement(\"text\",{\"font-family\":n.family,\"font-size\":n.size,\"font-style\":n.style,\"font-weight\":n.weight,\"text-decoration\":n.decoration,x:e,y:i,\"text-anchor\":o(this.textAlign),\"dominant-baseline\":l(this.textBaseline)},!0);r.appendChild(this.__document.createTextNode(t)),this._apply_transform(r),this.__currentElement=r,this.__applyStyleToCurrentElement(s),this.__root.appendChild(this.__wrapTextLink(n,r))}fillText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"fill\")}strokeText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"stroke\")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,e,i,s,n,r=!1){if(!isFinite(t+e+i+s+n))return;if(s===n)return;(s%=2*Math.PI)===(n%=2*Math.PI)&&(n=(n+2*Math.PI-.001*(r?-1:1))%(2*Math.PI));const a=t+i*Math.cos(n),o=e+i*Math.sin(n),l=t+i*Math.cos(s),h=e+i*Math.sin(s),c=r?0:1;let _=0,u=n-s;u<0&&(u+=2*Math.PI),_=r?u>Math.PI?0:1:u>Math.PI?1:0,this.lineTo(l,h);const p=i,d=i,[m,f]=this._transform.apply(a,o);this.__addPathCommand(m,f,`A ${p} ${d} 0 ${_} ${c} ${m} ${f}`)}clip(){const t=this.__createElement(\"clipPath\"),e=a(this.__ids);this.__applyCurrentDefaultPath(),t.setAttribute(\"id\",e),t.appendChild(this.__currentElement),this.__defs.appendChild(t),this._clip_path=`url(#${e})`}drawImage(t,...e){let i,s,n,r,a,o,l,h;if(2==e.length){if([i,s]=e,!isFinite(i+s))return;a=0,o=0,l=t.width,h=t.height,n=l,r=h}else if(4==e.length){if([i,s,n,r]=e,!isFinite(i+s+n+r))return;a=0,o=0,l=t.width,h=t.height}else{if(8!==e.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);if([a,o,l,h,i,s,n,r]=e,!isFinite(a+o+l+h+i+s+n+r))return}const c=this.__root,_=\"translate(\"+i+\", \"+s+\")\",u=this._transform.clone().translate(i,s);if(t instanceof p||t instanceof SVGSVGElement){const e=(t instanceof SVGSVGElement?t:t.get_svg()).cloneNode(!0);let i;u.is_identity?i=c:(i=this.__createElement(\"g\"),this._apply_transform(i,u),c.appendChild(i));for(const t of[...e.childNodes])if(t instanceof SVGDefsElement){for(const e of[...t.childNodes])if(e instanceof Element){const t=e.getAttribute(\"id\");this.__ids[t]=t,this.__defs.appendChild(e)}}else i.appendChild(t)}else if(t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__createElement(\"image\");if(e.setAttribute(\"width\",\"\"+n),e.setAttribute(\"height\",\"\"+r),e.setAttribute(\"preserveAspectRatio\",\"none\"),a||o||l!==t.width||h!==t.height){const e=this.__document.createElement(\"canvas\");e.width=n,e.height=r;e.getContext(\"2d\").drawImage(t,a,o,l,h,0,0,n,r),t=e}e.setAttribute(\"transform\",_);const i=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",i),c.appendChild(e)}else if(t instanceof HTMLCanvasElement){const e=this.__createElement(\"image\");e.setAttribute(\"width\",\"\"+n),e.setAttribute(\"height\",\"\"+r),e.setAttribute(\"preserveAspectRatio\",\"none\");const i=this.__document.createElement(\"canvas\");i.width=n,i.height=r;const s=i.getContext(\"2d\");s.imageSmoothingEnabled=!1,s.drawImage(t,a,o,l,h,0,0,n,r),t=i,e.setAttribute(\"transform\",_),e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.toDataURL()),c.appendChild(e)}}createPattern(t,e){const i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),s=a(this.__ids);if(i.setAttribute(\"id\",s),i.setAttribute(\"width\",\"\"+this._to_number(t.width)),i.setAttribute(\"height\",\"\"+this._to_number(t.height)),i.setAttribute(\"patternUnits\",\"userSpaceOnUse\"),t instanceof HTMLCanvasElement||t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\"),s=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",s),i.appendChild(e),this.__defs.appendChild(i)}else if(t instanceof p){for(const e of[...t.__root.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}else{if(!(t instanceof SVGSVGElement))throw new Error(\"unsupported\");for(const e of[...t.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}return new u(i,this)}setLineDash(t){t&&t.length>0?this.lineDash=t.join(\",\"):this.lineDash=null}_to_number(t){return n.isNumber(t)?t:t.baseVal.value}}i.SVGRenderingContext2D=p,p.__name__=\"SVGRenderingContext2D\"},\n",
       "      function _(t,s,r){Object.defineProperty(r,\"__esModule\",{value:!0});const{sin:e,cos:n}=Math;class i{constructor(t=1,s=0,r=0,e=1,n=0,i=0){this.a=t,this.b=s,this.c=r,this.d=e,this.e=n,this.f=i}toString(){const{a:t,b:s,c:r,d:e,e:n,f:i}=this;return`matrix(${t}, ${s}, ${r}, ${e}, ${n}, ${i})`}clone(){const{a:t,b:s,c:r,d:e,e:n,f:a}=this;return new i(t,s,r,e,n,a)}get is_identity(){const{a:t,b:s,c:r,d:e,e:n,f:i}=this;return 1==t&&0==s&&0==r&&1==e&&0==n&&0==i}apply(t,s){const{a:r,b:e,c:n,d:i,e:a,f:h}=this;return[r*t+n*s+a,e*t+i*s+h]}iv_apply(t,s){const{a:r,b:e,c:n,d:i,e:a,f:h}=this,c=t.length;for(let o=0;o<c;o++){const c=t[o],f=s[o];t[o]=r*c+n*f+a,s[o]=e*c+i*f+h}}transform(t,s,r,e,n,i){const{a,b:h,c,d:o,e:f,f:l}=this;return this.a=a*t+c*s,this.c=a*r+c*e,this.e=a*n+c*i+f,this.b=h*t+o*s,this.d=h*r+o*e,this.f=h*n+o*i+l,this}translate(t,s){return this.transform(1,0,0,1,t,s)}scale(t,s){return this.transform(t,0,0,s,0,0)}skew(t,s){return this.transform(1,s,t,1,0,0)}rotate(t){const s=e(t),r=n(t);return this.transform(r,s,-s,r,0,0)}rotate_ccw(t){return this.rotate(-t)}translate_x(t){return this.translate(t,0)}translate_y(t){return this.translate(0,t)}flip(){return this.scale(-1,-1)}flip_x(){return this.scale(1,-1)}flip_y(){return this.scale(-1,1)}}r.AffineTransform=i,i.__name__=\"AffineTransform\"},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),a=e(14),n=e(78),l=e(19),o=s.__importStar(e(18)),r=e(72),h=e(13),c=e(79),_=e(80),d=e(75),p=(()=>{const e=document.createElement(\"canvas\"),t=e.getContext(\"webgl\",{premultipliedAlpha:!0});return null!=t?{canvas:e,gl:t}:void l.logger.trace(\"WebGL is not supported\")})(),v={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"};class b{constructor(e,t){switch(this.backend=e,this.hidpi=t,this.pixel_ratio=1,this.bbox=new c.BBox,e){case\"webgl\":case\"canvas\":{this._el=this._canvas=r.canvas({style:v});const e=this.canvas.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e,t&&(this.pixel_ratio=devicePixelRatio);break}case\"svg\":{const e=new d.SVGRenderingContext2D;this._ctx=e,this._canvas=e.get_svg(),this._el=r.div({style:v},this._canvas);break}}_.fixup_ctx(this._ctx)}get canvas(){return this._canvas}get ctx(){return this._ctx}get el(){return this._el}resize(e,t){this.bbox=new c.BBox({left:0,top:0,width:e,height:t});const i=this._ctx instanceof d.SVGRenderingContext2D?this._ctx:this.canvas;i.width=e*this.pixel_ratio,i.height=t*this.pixel_ratio}prepare(){const{ctx:e,hidpi:t,pixel_ratio:i}=this;e.save(),t&&(e.scale(i,i),e.translate(.5,.5)),this.clear()}clear(){const{x:e,y:t,width:i,height:s}=this.bbox;this.ctx.clearRect(e,t,i,s)}finish(){this.ctx.restore()}to_blob(){const{_canvas:e}=this;if(e instanceof HTMLCanvasElement)return null!=e.msToBlob?Promise.resolve(e.msToBlob()):new Promise((t,i)=>{e.toBlob(e=>null!=e?t(e):i(),\"image/png\")});{const e=this._ctx.get_serialized_svg(!0),t=new Blob([e],{type:\"image/svg+xml\"});return Promise.resolve(t)}}}i.CanvasLayer=b,b.__name__=\"CanvasLayer\";class g extends n.DOMView{constructor(){super(...arguments),this.bbox=new c.BBox}initialize(){super.initialize();const{output_backend:e,hidpi:t}=this.model;\"webgl\"==e&&(this.webgl=p),this.underlays_el=r.div({style:v}),this.primary=new b(e,t),this.overlays=new b(e,t),this.overlays_el=r.div({style:v}),this.events_el=r.div({class:\"bk-canvas-events\",style:v});const i=[this.underlays_el,this.primary.el,this.overlays.el,this.overlays_el,this.events_el];h.extend(this.el.style,v),r.append(this.el,...i),l.logger.debug(\"CanvasView initialized\")}add_underlay(e){this.underlays_el.appendChild(e)}add_overlay(e){this.overlays_el.appendChild(e)}add_event(e){this.events_el.appendChild(e)}get pixel_ratio(){return this.primary.pixel_ratio}resize(e,t){this.bbox=new c.BBox({left:0,top:0,width:e,height:t}),this.primary.resize(e,t),this.overlays.resize(e,t)}prepare_webgl(e){const{webgl:t}=this;if(null!=t){const{width:i,height:s}=this.bbox;t.canvas.width=this.pixel_ratio*i,t.canvas.height=this.pixel_ratio*s;const{gl:a}=t;a.enable(a.SCISSOR_TEST);const[n,l,o,r]=e,{xview:h,yview:c}=this.bbox,_=h.compute(n),d=c.compute(l+r),p=this.pixel_ratio;a.scissor(p*_,p*d,p*o,p*r),a.enable(a.BLEND),a.blendFuncSeparate(a.SRC_ALPHA,a.ONE_MINUS_SRC_ALPHA,a.ONE_MINUS_DST_ALPHA,a.ONE)}}clear_webgl(){const{webgl:e}=this;if(null!=e){const{gl:t,canvas:i}=e;t.viewport(0,0,i.width,i.height),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT||t.DEPTH_BUFFER_BIT)}}blit_webgl(e){const{webgl:t}=this;if(null!=t&&(l.logger.debug(\"Blitting WebGL canvas\"),e.restore(),e.drawImage(t.canvas,0,0),e.save(),this.model.hidpi)){const t=this.pixel_ratio;e.scale(t,t),e.translate(.5,.5)}}compose(){const{output_backend:e,hidpi:t}=this.model,{width:i,height:s}=this.bbox,a=new b(e,t);return a.resize(i,s),a.ctx.drawImage(this.primary.canvas,0,0),a.ctx.drawImage(this.overlays.canvas,0,0),a}to_blob(){return this.compose().to_blob()}}i.CanvasView=g,g.__name__=\"CanvasView\";class x extends a.HasProps{constructor(e){super(e)}static init_Canvas(){this.prototype.default_view=g,this.internal({hidpi:[o.Boolean,!0],output_backend:[o.OutputBackend,\"canvas\"]})}}i.Canvas=x,x.__name__=\"Canvas\",x.init_Canvas()},\n",
       "      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(71),r=e(72);class n extends i.View{initialize(){super.initialize(),this.el=this._createElement()}remove(){r.remove(this.el),super.remove()}css_classes(){return[]}render(){}renderTo(e){e.appendChild(this.el),this.render()}_createElement(){return r.createElement(this.tagName,{class:this.css_classes()})}}t.DOMView=n,n.__name__=\"DOMView\",n.prototype.tagName=\"div\"},\n",
       "      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const h=t(24),{min:r,max:s}=Math;e.empty=function(){return{x0:1/0,y0:1/0,x1:-1/0,y1:-1/0}},e.positive_x=function(){return{x0:Number.MIN_VALUE,y0:-1/0,x1:1/0,y1:1/0}},e.positive_y=function(){return{x0:-1/0,y0:Number.MIN_VALUE,x1:1/0,y1:1/0}},e.union=function(t,i){return{x0:r(t.x0,i.x0),x1:s(t.x1,i.x1),y0:r(t.y0,i.y0),y1:s(t.y1,i.y1)}};class n{constructor(t){if(null==t)this.x0=0,this.y0=0,this.x1=0,this.y1=0;else if(\"x0\"in t){const{x0:i,y0:e,x1:h,y1:r}=t;if(!(i<=h&&e<=r))throw new Error(`invalid bbox {x0: ${i}, y0: ${e}, x1: ${h}, y1: ${r}}`);this.x0=i,this.y0=e,this.x1=h,this.y1=r}else if(\"x\"in t){const{x:i,y:e,width:h,height:r}=t;if(!(h>=0&&r>=0))throw new Error(`invalid bbox {x: ${i}, y: ${e}, width: ${h}, height: ${r}}`);this.x0=i,this.y0=e,this.x1=i+h,this.y1=e+r}else{let i,e,h,r;if(\"width\"in t)if(\"left\"in t)i=t.left,e=i+t.width;else if(\"right\"in t)e=t.right,i=e-t.width;else{const h=t.width/2;i=t.hcenter-h,e=t.hcenter+h}else i=t.left,e=t.right;if(\"height\"in t)if(\"top\"in t)h=t.top,r=h+t.height;else if(\"bottom\"in t)r=t.bottom,h=r-t.height;else{const i=t.height/2;h=t.vcenter-i,r=t.vcenter+i}else h=t.top,r=t.bottom;if(!(i<=e&&h<=r))throw new Error(`invalid bbox {left: ${i}, top: ${h}, right: ${e}, bottom: ${r}}`);this.x0=i,this.y0=h,this.x1=e,this.y1=r}}toString(){return`BBox({left: ${this.left}, top: ${this.top}, width: ${this.width}, height: ${this.height}})`}get left(){return this.x0}get top(){return this.y0}get right(){return this.x1}get bottom(){return this.y1}get p0(){return[this.x0,this.y0]}get p1(){return[this.x1,this.y1]}get x(){return this.x0}get y(){return this.y0}get width(){return this.x1-this.x0}get height(){return this.y1-this.y0}get rect(){return{x0:this.x0,y0:this.y0,x1:this.x1,y1:this.y1}}get box(){return{x:this.x,y:this.y,width:this.width,height:this.height}}get h_range(){return{start:this.x0,end:this.x1}}get v_range(){return{start:this.y0,end:this.y1}}get ranges(){return[this.h_range,this.v_range]}get aspect(){return this.width/this.height}get hcenter(){return(this.left+this.right)/2}get vcenter(){return(this.top+this.bottom)/2}relativize(){const{width:t,height:i}=this;return new n({x:0,y:0,width:t,height:i})}contains(t,i){return t>=this.x0&&t<=this.x1&&i>=this.y0&&i<=this.y1}clip(t,i){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),i<this.y0?i=this.y0:i>this.y1&&(i=this.y1),[t,i]}union(t){return new n({x0:r(this.x0,t.x0),y0:r(this.y0,t.y0),x1:s(this.x1,t.x1),y1:s(this.y1,t.y1)})}equals(t){return this.x0==t.x0&&this.y0==t.y0&&this.x1==t.x1&&this.y1==t.y1}get xview(){return{compute:t=>this.left+t,v_compute:t=>{const i=new h.NumberArray(t.length),e=this.left;for(let h=0;h<t.length;h++)i[h]=e+t[h];return i}}}get yview(){return{compute:t=>this.bottom-t,v_compute:t=>{const i=new h.NumberArray(t.length),e=this.bottom;for(let h=0;h<t.length;h++)i[h]=e-t[h];return i}}}}e.BBox=n,n.__name__=\"BBox\"},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.fixup_ctx=function(e){!function(e){void 0===e.lineDash&&Object.defineProperty(e,\"lineDash\",{get:()=>e.getLineDash(),set:t=>e.setLineDash(t)})}(e),function(e){e.setImageSmoothingEnabled=t=>{e.imageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.oImageSmoothingEnabled=t,e.webkitImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t},e.getImageSmoothingEnabled=()=>{const t=e.imageSmoothingEnabled;return null==t||t}}(e),function(e){e.measureText&&null==e.html5MeasureText&&(e.html5MeasureText=e.measureText,e.measureText=t=>{const n=e.html5MeasureText(t);return n.ascent=1.6*e.html5MeasureText(\"m\").width,n})}(e),function(e){e.ellipse||(e.ellipse=function(t,n,o,a,i,l,m,r=!1){const u=.551784;e.translate(t,n),e.rotate(i);let s=o,g=a;r&&(s=-o,g=-a),e.moveTo(-s,0),e.bezierCurveTo(-s,g*u,-s*u,g,0,g),e.bezierCurveTo(s*u,g,s,g*u,s,0),e.bezierCurveTo(s,-g*u,s*u,-g,0,-g),e.bezierCurveTo(-s*u,-g,-s,-g*u,-s,0),e.rotate(-i),e.translate(-t,-n)})}(e)}},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(1),c=e(14),i=n.__importStar(e(18)),a=e(8),r=e(13),o=e(19);class l extends c.HasProps{constructor(e){super(e)}static init_Model(){this.define({tags:[i.Array,[]],name:[i.String],js_property_callbacks:[i.Any,{}],js_event_callbacks:[i.Any,{}],subscribed_events:[i.Array,[]]})}initialize(){super.initialize(),this._js_callbacks=new Map}connect_signals(){super.connect_signals(),this._update_property_callbacks(),this.connect(this.properties.js_property_callbacks.change,()=>this._update_property_callbacks()),this.connect(this.properties.js_event_callbacks.change,()=>this._update_event_callbacks()),this.connect(this.properties.subscribed_events.change,()=>this._update_event_callbacks())}_process_event(e){for(const t of this.js_event_callbacks[e.event_name]||[])t.execute(e);null!=this.document&&this.subscribed_events.some(t=>t==e.event_name)&&this.document.event_manager.send_event(e)}trigger_event(e){null!=this.document&&(e.origin=this,this.document.event_manager.trigger(e))}_update_event_callbacks(){null!=this.document?this.document.event_manager.subscribed_models.add(this):o.logger.warn(\"WARNING: Document not defined for updating event callbacks\")}_update_property_callbacks(){const e=e=>{const[t,s=null]=e.split(\":\");return null!=s?this.properties[s][t]:this[t]};for(const[t,s]of this._js_callbacks){const n=e(t);for(const e of s)this.disconnect(n,e)}this._js_callbacks.clear();for(const[t,s]of r.entries(this.js_property_callbacks)){const n=s.map(e=>()=>e.execute(this));this._js_callbacks.set(t,n);const c=e(t);for(const e of n)this.connect(c,e)}}_doc_attached(){r.isEmpty(this.js_event_callbacks)&&0==this.subscribed_events.length||this._update_event_callbacks()}_doc_detached(){this.document.event_manager.subscribed_models.delete(this)}select(e){if(a.isString(e))return[...this.references()].filter(t=>t instanceof l&&t.name===e);if(e.prototype instanceof c.HasProps)return[...this.references()].filter(t=>t instanceof e);throw new Error(\"invalid selector\")}select_one(e){const t=this.select(e);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(\"found more than one object matching given selector\")}}}s.Model=l,l.__name__=\"Model\",l.init_Model()},\n",
       "      function _(e,s,_){Object.defineProperty(_,\"__esModule\",{value:!0});class t{constructor(e,s){this.x_scale=e,this.y_scale=s,this.x_range=this.x_scale.source_range,this.y_range=this.y_scale.source_range,this.ranges=[this.x_range,this.y_range],this.scales=[this.x_scale,this.y_scale]}map_to_screen(e,s){return[this.x_scale.v_compute(e),this.y_scale.v_compute(s)]}map_from_screen(e,s){return[this.x_scale.v_invert(e),this.y_scale.v_invert(s)]}}_.CoordinateTransform=t,t.__name__=\"CoordinateTransform\"},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),a=t(36),o=t(84),r=t(85),n=t(28),_=i.__importStar(t(18)),h=t(10);class c extends a.AnnotationView{initialize(){super.initialize(),null==this.model.source&&(this.model.source=new r.ColumnDataSource),this.set_data(this.model.source)}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.set_data(this.model.source)),this.connect(this.model.source.streaming,()=>this.set_data(this.model.source)),this.connect(this.model.source.patching,()=>this.set_data(this.model.source)),this.connect(this.model.source.change,()=>this.set_data(this.model.source))}set_data(t){super.set_data(t),this.visuals.warm_cache(t),this.plot_view.request_render()}_map_data(){const{frame:t}=this.plot_view;let e,s,i,a;return\"data\"==this.model.start_units?(e=this.coordinates.x_scale.v_compute(this._x_start),s=this.coordinates.y_scale.v_compute(this._y_start)):(e=t.xview.v_compute(this._x_start),s=t.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(i=this.coordinates.x_scale.v_compute(this._x_end),a=this.coordinates.y_scale.v_compute(this._y_end)):(i=t.xview.v_compute(this._x_end),a=t.yview.v_compute(this._y_end)),[[e,s],[i,a]]}_render(){const{ctx:t}=this.layer;t.save();const[e,s]=this._map_data();null!=this.model.end&&this._arrow_head(t,\"render\",this.model.end,e,s),null!=this.model.start&&this._arrow_head(t,\"render\",this.model.start,s,e),t.beginPath();const{x:i,y:a,width:o,height:r}=this.plot_view.frame.bbox;t.rect(i,a,o,r),null!=this.model.end&&this._arrow_head(t,\"clip\",this.model.end,e,s),null!=this.model.start&&this._arrow_head(t,\"clip\",this.model.start,s,e),t.closePath(),t.clip(),this._arrow_body(t,e,s),t.restore()}_arrow_head(t,e,s,i,a){for(let o=0,r=this._x_start.length;o<r;o++){const r=Math.PI/2+h.atan2([i[0][o],i[1][o]],[a[0][o],a[1][o]]);t.save(),t.translate(a[0][o],a[1][o]),t.rotate(r),\"render\"==e?s.render(t,o):\"clip\"==e&&s.clip(t,o),t.restore()}}_arrow_body(t,e,s){if(this.visuals.line.doit)for(let i=0,a=this._x_start.length;i<a;i++)this.visuals.line.set_vectorize(t,i),t.beginPath(),t.moveTo(e[0][i],e[1][i]),t.lineTo(s[0][i],s[1][i]),t.stroke()}}s.ArrowView=c,c.__name__=\"ArrowView\";class d extends a.Annotation{constructor(t){super(t)}static init_Arrow(){this.prototype.default_view=c,this.mixins(n.LineVector),this.define({x_start:[_.NumberSpec],y_start:[_.NumberSpec],start_units:[_.SpatialUnits,\"data\"],start:[_.Instance,null],x_end:[_.NumberSpec],y_end:[_.NumberSpec],end_units:[_.SpatialUnits,\"data\"],end:[_.Instance,()=>new o.OpenHead({})],source:[_.Instance]})}}s.Arrow=d,d.__name__=\"Arrow\",d.init_Arrow()},\n",
       "      function _(i,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=i(1),o=i(36),l=i(74),n=i(28),h=t.__importStar(i(18));class a extends o.Annotation{constructor(i){super(i)}static init_ArrowHead(){this.define({size:[h.Number,25]})}initialize(){super.initialize(),this.visuals=new l.Visuals(this)}}s.ArrowHead=a,a.__name__=\"ArrowHead\",a.init_ArrowHead();class r extends a{constructor(i){super(i)}static init_OpenHead(){this.mixins(n.LineVector)}clip(i,e){this.visuals.line.set_vectorize(i,e),i.moveTo(.5*this.size,this.size),i.lineTo(.5*this.size,-2),i.lineTo(-.5*this.size,-2),i.lineTo(-.5*this.size,this.size),i.lineTo(0,0),i.lineTo(.5*this.size,this.size)}render(i,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),i.beginPath(),i.moveTo(.5*this.size,this.size),i.lineTo(0,0),i.lineTo(-.5*this.size,this.size),i.stroke())}}s.OpenHead=r,r.__name__=\"OpenHead\",r.init_OpenHead();class z extends a{constructor(i){super(i)}static init_NormalHead(){this.mixins([n.LineVector,n.FillVector]),this.override({fill_color:\"black\"})}clip(i,e){this.visuals.line.set_vectorize(i,e),i.moveTo(.5*this.size,this.size),i.lineTo(.5*this.size,-2),i.lineTo(-.5*this.size,-2),i.lineTo(-.5*this.size,this.size),i.lineTo(.5*this.size,this.size)}render(i,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(i,e),this._normal(i,e),i.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),this._normal(i,e),i.stroke())}_normal(i,e){i.beginPath(),i.moveTo(.5*this.size,this.size),i.lineTo(0,0),i.lineTo(-.5*this.size,this.size),i.closePath()}}s.NormalHead=z,z.__name__=\"NormalHead\",z.init_NormalHead();class _ extends a{constructor(i){super(i)}static init_VeeHead(){this.mixins([n.LineVector,n.FillVector]),this.override({fill_color:\"black\"})}clip(i,e){this.visuals.line.set_vectorize(i,e),i.moveTo(.5*this.size,this.size),i.lineTo(.5*this.size,-2),i.lineTo(-.5*this.size,-2),i.lineTo(-.5*this.size,this.size),i.lineTo(0,.5*this.size),i.lineTo(.5*this.size,this.size)}render(i,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(i,e),this._vee(i,e),i.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),this._vee(i,e),i.stroke())}_vee(i,e){i.beginPath(),i.moveTo(.5*this.size,this.size),i.lineTo(0,0),i.lineTo(-.5*this.size,this.size),i.lineTo(0,.5*this.size),i.closePath()}}s.VeeHead=_,_.__name__=\"VeeHead\",_.init_VeeHead();class c extends a{constructor(i){super(i)}static init_TeeHead(){this.mixins(n.LineVector)}render(i,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),i.beginPath(),i.moveTo(.5*this.size,0),i.lineTo(-.5*this.size,0),i.stroke())}clip(i,e){}}s.TeeHead=c,c.__name__=\"TeeHead\",c.init_TeeHead()},\n",
       "      function _(t,n,e){Object.defineProperty(e,\"__esModule\",{value:!0});const s=t(1),o=t(86),r=s.__importStar(t(18)),i=t(8),l=t(13),a=s.__importStar(t(119)),c=t(120),u=t(121);function h(t,n,e){if(i.isArray(t)){const s=t.concat(n);return null!=e&&s.length>e?s.slice(-e):s}if(i.isTypedArray(t)){const s=t.length+n.length;if(null!=e&&s>e){const o=s-e,r=t.length;let i;t.length<e?(i=new t.constructor(e),i.set(t,0)):i=t;for(let t=o,n=r;t<n;t++)i[t-o]=i[t];for(let t=0,e=n.length;t<e;t++)i[t+(r-o)]=n[t];return i}{const e=new t.constructor(n);return a.concat(t,e)}}throw new Error(\"unsupported array types\")}function d(t,n){let e,s,o;return i.isNumber(t)?(e=t,o=t+1,s=1):(e=null!=t.start?t.start:0,o=null!=t.stop?t.stop:n,s=null!=t.step?t.step:1),[e,o,s]}function f(t,n){const e=new Set;let s=!1;for(const[o,r]of n){let n,l,a,c;if(i.isArray(o)){const[s]=o;e.add(s),n=t[s].shape,l=t[s],c=r,2===o.length?(n=[1,n[0]],a=[o[0],0,o[1]]):a=o}else i.isNumber(o)?(c=[r],e.add(o)):(c=r,s=!0),a=[0,0,o],n=[1,t.length],l=t;let u=0;const[h,f,m]=d(a[1],n[0]),[_,p,g]=d(a[2],n[1]);for(let t=h;t<f;t+=m)for(let o=_;o<p;o+=g)s&&e.add(o),l[t*n[1]+o]=c[u],u++}return e}e.stream_to_column=h,e.slice=d,e.patch_to_column=f;class m extends o.ColumnarDataSource{constructor(t){super(t)}static init_ColumnDataSource(){this.define({data:[r.Any,{}]})}stream(t,n,e){const{data:s}=this;for(const[e,o]of l.entries(t))s[e]=h(s[e],o,n);if(this.setv({data:s},{silent:!0}),this.streaming.emit(),null!=this.document){const s=new u.ColumnsStreamedEvent(this.document,this.ref(),t,n);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}}patch(t,n){const{data:e}=this;let s=new Set;for(const[n,o]of l.entries(t))s=c.union(s,f(e[n],o));if(this.setv({data:e},{silent:!0}),this.patching.emit([...s]),null!=this.document){const e=new u.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:n,hint:e})}}}e.ColumnDataSource=m,m.__name__=\"ColumnDataSource\",m.init_ColumnDataSource()},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=t(1),s=t(87),i=t(15),r=t(19),l=t(89),c=a.__importStar(t(18)),o=t(8),u=t(9),h=t(13),g=t(88),_=t(118);class d extends s.DataSource{constructor(t){super(t)}get_array(t){let e=this.data[t];return null==e?this.data[t]=e=[]:o.isArray(e)||(this.data[t]=e=Array.from(e)),e}static init_ColumnarDataSource(){this.define({selection_policy:[c.Instance,()=>new _.UnionRenderers]}),this.internal({selection_manager:[c.Instance,t=>new l.SelectionManager({source:t})],inspected:[c.Instance,()=>new g.Selection]})}initialize(){super.initialize(),this._select=new i.Signal0(this,\"select\"),this.inspect=new i.Signal(this,\"inspect\"),this.streaming=new i.Signal0(this,\"streaming\"),this.patching=new i.Signal(this,\"patching\")}get_column(t){const e=this.data[t];return null!=e?e:null}columns(){return h.keys(this.data)}get_length(t=!0){const e=u.uniq(h.values(this.data).map(t=>t.length));switch(e.length){case 0:return null;case 1:return e[0];default:{const n=\"data source has columns of inconsistent lengths\";if(t)return r.logger.warn(n),e.sort()[0];throw new Error(n)}}}get length(){var t;return null!==(t=this.get_length())&&void 0!==t?t:0}clear(){const t={};for(const e of this.columns())t[e]=new this.data[e].constructor(0);this.data=t}}n.ColumnarDataSource=d,d.__name__=\"ColumnarDataSource\",d.init_ColumnarDataSource()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const c=e(1),n=e(81),o=e(88),i=c.__importStar(e(18));class r extends n.Model{constructor(e){super(e)}static init_DataSource(){this.define({selected:[i.Instance,()=>new o.Selection]})}}a.DataSource=r,r.__name__=\"DataSource\",r.init_DataSource()},\n",
       "      function _(i,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=i(1),n=i(81),l=t.__importStar(i(18)),c=i(9),h=i(13);class d extends n.Model{constructor(i){super(i)}get_view(){return this.view}static init_Selection(){this.define({indices:[l.Array,[]],line_indices:[l.Array,[]],multiline_indices:[l.Any,{}]}),this.internal({selected_glyphs:[l.Array,[]],view:[l.Any],image_indices:[l.Array,[]]})}initialize(){super.initialize()}get selected_glyph(){return this.selected_glyphs.length>0?this.selected_glyphs[0]:null}add_to_selected_glyphs(i){this.selected_glyphs.push(i)}update(i,e=!0,s=\"replace\"){switch(s){case\"replace\":this.indices=i.indices,this.line_indices=i.line_indices,this.selected_glyphs=i.selected_glyphs,this.view=i.view,this.multiline_indices=i.multiline_indices,this.image_indices=i.image_indices;break;case\"append\":this.update_through_union(i);break;case\"intersect\":this.update_through_intersection(i);break;case\"subtract\":this.update_through_subtraction(i)}}clear(){this.indices=[],this.line_indices=[],this.multiline_indices={},this.view=null,this.selected_glyphs=[]}is_empty(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length}update_through_union(i){this.indices=c.union(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_intersection(i){this.indices=c.intersection(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_subtraction(i){this.indices=c.difference(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}}s.Selection=d,d.__name__=\"Selection\",d.init_Selection()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(14),o=e(88),c=e(90),r=e(116),l=i.__importStar(e(18));class p extends n.HasProps{constructor(e){super(e),this.inspectors=new Map}static init_SelectionManager(){this.internal({source:[l.Any]})}select(e,t,s,i=\"replace\"){const n=[],o=[];for(const t of e)t instanceof c.GlyphRendererView?n.push(t):t instanceof r.GraphRendererView&&o.push(t);let l=!1;for(const e of o){const n=e.model.selection_policy.hit_test(t,e);l=l||e.model.selection_policy.do_selection(n,e.model,s,i)}if(n.length>0){const e=this.source.selection_policy.hit_test(t,n);l=l||this.source.selection_policy.do_selection(e,this.source,s,i)}return l}inspect(e,t){let s=!1;if(e instanceof c.GlyphRendererView){const i=e.hit_test(t);if(null!=i){s=!i.is_empty();const n=this.get_or_create_inspector(e.model);n.update(i,!0,\"replace\"),this.source.setv({inspected:n},{silent:!0}),this.source.inspect.emit([e,{geometry:t}])}}else if(e instanceof r.GraphRendererView){const i=e.model.inspection_policy.hit_test(t,e);s=s||e.model.inspection_policy.do_inspection(i,t,e,!1,\"replace\")}return s}clear(e){this.source.selected.clear(),null!=e&&this.get_or_create_inspector(e.model).clear()}get_or_create_inspector(e){let t=this.inspectors.get(e);return null==t&&(t=new o.Selection,this.inspectors.set(e,t)),t}}s.SelectionManager=p,p.__name__=\"SelectionManager\",p.init_SelectionManager()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),l=e(91),n=e(92),h=e(110),o=e(111),a=e(113),c=e(114),_=e(24),d=s.__importStar(e(18)),r=e(12),p=e(9),g=e(13),u=e(115),y=e(98),m={fill:{},line:{}},v={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}};class w extends l.DataRendererView{async lazy_initialize(){await super.lazy_initialize();const e=this.model.glyph,t=p.includes(e._mixins,\"fill\"),i=p.includes(e._mixins,\"line\"),s=g.clone(e.attributes);function l(l){const n=g.clone(s);return t&&g.extend(n,l.fill),i&&g.extend(n,l.line),new e.constructor(n)}delete s.id,this.glyph=await this.build_glyph_view(e);let{selection_glyph:n}=this.model;null==n?n=l({fill:{},line:{}}):\"auto\"===n&&(n=l(m)),this.selection_glyph=await this.build_glyph_view(n);let{nonselection_glyph:h}=this.model;null==h?h=l({fill:{},line:{}}):\"auto\"===h&&(h=l(f)),this.nonselection_glyph=await this.build_glyph_view(h);const{hover_glyph:o}=this.model;null!=o&&(this.hover_glyph=await this.build_glyph_view(o));const{muted_glyph:a}=this.model;null!=a&&(this.muted_glyph=await this.build_glyph_view(a));const c=l(v);this.decimated_glyph=await this.build_glyph_view(c),this.set_data(!1)}async build_glyph_view(e){return u.build_view(e,{parent:this})}remove(){var e,t;this.glyph.remove(),this.selection_glyph.remove(),this.nonselection_glyph.remove(),null===(e=this.hover_glyph)||void 0===e||e.remove(),null===(t=this.muted_glyph)||void 0===t||t.remove(),this.decimated_glyph.remove(),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.request_render()),this.connect(this.model.glyph.change,()=>this.set_data()),this.connect(this.model.data_source.change,()=>this.set_data()),this.connect(this.model.data_source.streaming,()=>this.set_data()),this.connect(this.model.data_source.patching,e=>this.set_data(!0,e)),this.connect(this.model.data_source.selected.change,()=>this.request_render()),this.connect(this.model.data_source._select,()=>this.request_render()),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,()=>this.request_render()),this.connect(this.model.properties.view.change,()=>this.set_data()),this.connect(this.model.view.change,()=>this.set_data()),this.connect(this.model.properties.visible.change,()=>this.plot_view.update_dataranges());const{x_ranges:e,y_ranges:t}=this.plot_view.frame;for(const[,t]of e)t instanceof y.FactorRange&&this.connect(t.change,()=>this.set_data());for(const[,e]of t)e instanceof y.FactorRange&&this.connect(e.change,()=>this.set_data());this.connect(this.model.glyph.transformchange,()=>this.set_data())}_update_masked_indices(){const e=this.glyph.mask_data();return this.model.view.masked=e,e}set_data(e=!0,t=null){var i,s,l,n;const h=this.model.data_source;this.all_indices=this.model.view.indices;const{all_indices:o}=this;this.glyph.set_data(h,o,t),this.glyph.set_visuals(h,o),this.decimated_glyph.set_visuals(h,o),null===(i=this.selection_glyph)||void 0===i||i.set_visuals(h,o),null===(s=this.nonselection_glyph)||void 0===s||s.set_visuals(h,o),null===(l=this.hover_glyph)||void 0===l||l.set_visuals(h,o),null===(n=this.muted_glyph)||void 0===n||n.set_visuals(h,o),this._update_masked_indices();const{lod_factor:a}=this.plot_model,c=this.all_indices.count;this.decimated=new _.Indices(c);for(let e=0;e<c;e+=a)this.decimated.set(e);this.set_data_timestamp=Date.now(),e&&this.request_render()}get has_webgl(){return this.glyph.has_webgl}_render(){const e=this.has_webgl;this.glyph.map_data();const t=[...this.all_indices];let i=[...this._update_masked_indices()];const{ctx:s}=this.layer;s.save();const{selected:l}=this.model.data_source;let c;c=!l||l.is_empty()?[]:this.glyph instanceof n.LineView&&l.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(i):l.indices;const{inspected:_}=this.model.data_source,d=new Set((()=>!_||_.is_empty()?[]:_.selected_glyph?this.model.view.convert_indices_from_subset(i):_.indices.length>0?_.indices:Object.keys(_.multiline_indices).map(e=>parseInt(e)))()),g=r.filter(i,e=>d.has(t[e])),{lod_threshold:u}=this.plot_model;let y,m,v;if(null!=this.model.document&&this.model.document.interactive_duration()>0&&!e&&null!=u&&t.length>u?(i=[...this.decimated],y=this.decimated_glyph,m=this.decimated_glyph,v=this.selection_glyph):(y=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,m=this.nonselection_glyph,v=this.selection_glyph),null!=this.hover_glyph&&g.length&&(i=p.difference(i,g)),c.length){const e={};for(const t of c)e[t]=!0;const l=new Array,h=new Array;if(this.glyph instanceof n.LineView)for(const i of t)null!=e[i]?l.push(i):h.push(i);else for(const s of i)null!=e[t[s]]?l.push(s):h.push(s);m.render(s,h,this.glyph),v.render(s,l,this.glyph),null!=this.hover_glyph&&(this.glyph instanceof n.LineView?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(g),this.glyph):this.hover_glyph.render(s,g,this.glyph))}else if(this.glyph instanceof n.LineView)this.hover_glyph&&g.length?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(g),this.glyph):y.render(s,t,this.glyph);else if(this.glyph instanceof h.PatchView||this.glyph instanceof o.HAreaView||this.glyph instanceof a.VAreaView)if(0==_.selected_glyphs.length||null==this.hover_glyph)y.render(s,t,this.glyph);else for(const e of _.selected_glyphs)e==this.glyph.model&&this.hover_glyph.render(s,t,this.glyph);else y.render(s,i,this.glyph),this.hover_glyph&&g.length&&this.hover_glyph.render(s,g,this.glyph);s.restore()}draw_legend(e,t,i,s,l,n,h,o){null==o&&(o=this.model.get_reference_point(n,h)),this.glyph.draw_legend_for_index(e,{x0:t,x1:i,y0:s,y1:l},o)}hit_test(e){if(!this.model.visible)return null;const t=this.glyph.hit_test(e);return null==t?null:this.model.view.convert_selection_from_subset(t)}}i.GlyphRendererView=w,w.__name__=\"GlyphRendererView\";class b extends l.DataRenderer{constructor(e){super(e)}static init_GlyphRenderer(){this.prototype.default_view=w,this.define({data_source:[d.Instance],view:[d.Instance,()=>new c.CDSView],glyph:[d.Instance],hover_glyph:[d.Instance],nonselection_glyph:[d.Any,\"auto\"],selection_glyph:[d.Any,\"auto\"],muted_glyph:[d.Instance],muted:[d.Boolean,!1]})}initialize(){super.initialize(),null==this.view.source&&(this.view.source=this.data_source,this.view.compute_indices())}get_reference_point(e,t){let i=0;if(null!=e){const s=this.data_source.get_column(e);if(null!=s){const e=r.indexOf(s,t);-1!=e&&(i=e)}}return i}get_selection_manager(){return this.data_source.selection_manager}}i.GlyphRenderer=b,b.__name__=\"GlyphRenderer\",b.init_GlyphRenderer()},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const a=e(70);class n extends a.RendererView{get xscale(){return this.coordinates.x_scale}get yscale(){return this.coordinates.y_scale}}t.DataRendererView=n,n.__name__=\"DataRendererView\";class s extends a.Renderer{constructor(e){super(e)}static init_DataRenderer(){this.override({level:\"glyph\"})}}t.DataRenderer=s,s.__name__=\"DataRenderer\",s.init_DataRenderer()},\n",
       "      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),n=e(93),l=e(100),_=e(102),r=s.__importStar(e(28)),o=s.__importStar(e(101)),h=e(88);class a extends n.XYGlyphView{initialize(){super.initialize();const{webgl:e}=this.renderer.plot_view.canvas_view;null!=e&&(this.glglyph=new _.LineGL(e.gl,this))}_render(e,i,{sx:t,sy:s}){let n=!1,l=null;this.visuals.line.set_value(e);for(const _ of i){if(n){if(!isFinite(t[_]+s[_])){e.stroke(),e.beginPath(),n=!1,l=_;continue}null!=l&&_-l>1&&(e.stroke(),n=!1)}n?e.lineTo(t[_],s[_]):(e.beginPath(),e.moveTo(t[_],s[_]),n=!0),l=_}n&&e.stroke()}_hit_point(e){const i=new h.Selection,t={x:e.sx,y:e.sy};let s=9999;const n=Math.max(2,this.visuals.line.line_width.value()/2);for(let e=0,l=this.sx.length-1;e<l;e++){const l={x:this.sx[e],y:this.sy[e]},_={x:this.sx[e+1],y:this.sy[e+1]},r=o.dist_to_segment(t,l,_);r<n&&r<s&&(s=r,i.add_to_selected_glyphs(this.model),i.view=this,i.line_indices=[e])}return i}_hit_span(e){const{sx:i,sy:t}=e,s=new h.Selection;let n,l;\"v\"==e.direction?(n=this.renderer.yscale.invert(t),l=this._y):(n=this.renderer.xscale.invert(i),l=this._x);for(let e=0,i=l.length-1;e<i;e++)(l[e]<=n&&n<=l[e+1]||l[e+1]<=n&&n<=l[e])&&(s.add_to_selected_glyphs(this.model),s.view=this,s.line_indices.push(e));return s}get_interpolation_hit(e,i){const[t,s,n,_]=[this._x[e],this._y[e],this._x[e+1],this._y[e+1]];return l.line_interpolation(this.renderer,i,t,s,n,_)}draw_legend_for_index(e,i,t){l.generic_line_legend(this.visuals,e,i,t)}}t.LineView=a,a.__name__=\"LineView\";class c extends n.XYGlyph{constructor(e){super(e)}static init_Line(){this.prototype.default_view=a,this.mixins(r.Line)}}t.Line=c,c.__name__=\"Line\",c.init_Line()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),_=e(37),n=s.__importStar(e(18)),a=e(94);class d extends a.GlyphView{_project_data(){_.inplace.project_xy(this._x,this._y)}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++){const t=this._x[i],s=this._y[i];isNaN(t+s)||!isFinite(t+s)?e.add_empty():e.add(t,s,t,s)}}scenterxy(e){return[this.sx[e],this.sy[e]]}}i.XYGlyphView=d,d.__name__=\"XYGlyphView\";class p extends a.Glyph{constructor(e){super(e)}static init_XYGlyph(){this.define({x:[n.XCoordinateSpec,{field:\"x\"}],y:[n.YCoordinateSpec,{field:\"y\"}]})}}i.XYGlyph=p,p.__name__=\"XYGlyph\",p.init_XYGlyph()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=s.__importStar(e(18)),r=s.__importStar(e(79)),a=s.__importStar(e(74)),_=e(71),l=e(81),o=e(19),h=e(24),d=e(12),c=e(95),u=e(98),p=e(88);class y extends _.View{constructor(){super(...arguments),this._index=null,this._data_size=null,this._nohit_warned=new Set}get renderer(){return this.parent}get has_webgl(){return null!=this.glglyph}get index(){const{_index:e}=this;if(null!=e)return e;throw new Error(this+\".index_data() wasn't called\")}get data_size(){const{_data_size:e}=this;if(null!=e)return e;throw new Error(this+\".set_data() wasn't called\")}initialize(){super.initialize(),this.visuals=new a.Visuals(this.model)}set_visuals(e,t){this.visuals.warm_cache(e,t),null!=this.glglyph&&this.glglyph.set_visuals_changed()}render(e,t,i){e.beginPath(),null!=this.glglyph&&(this.renderer.needs_webgl_blit=this.glglyph.render(e,t,i),this.renderer.needs_webgl_blit)||this._render(e,t,i)}has_finished(){return!0}notify_finished(){this.renderer.notify_finished()}_bounds(e){return e}bounds(){return this._bounds(this.index.bbox)}log_bounds(){const{x0:e,x1:t}=this.index.bounds(r.positive_x()),{y0:i,y1:s}=this.index.bounds(r.positive_y());return this._bounds({x0:e,y0:i,x1:t,y1:s})}get_anchor_point(e,t,[i,s]){switch(e){case\"center\":{const[e,n]=this.scenterxy(t,i,s);return{x:e,y:n}}default:return null}}scenterx(e,t,i){return this.scenterxy(e,t,i)[0]}scentery(e,t,i){return this.scenterxy(e,t,i)[1]}sdist(e,t,i,s=\"edge\",n=!1){let r,a;const _=t.length;if(\"center\"==s){const e=d.map(i,e=>e/2);r=new h.NumberArray(_);for(let i=0;i<_;i++)r[i]=t[i]-e[i];a=new h.NumberArray(_);for(let i=0;i<_;i++)a[i]=t[i]+e[i]}else{r=t,a=new h.NumberArray(_);for(let e=0;e<_;e++)a[e]=r[e]+i[e]}const l=e.v_compute(r),o=e.v_compute(a);return n?d.map(l,(e,t)=>Math.ceil(Math.abs(o[t]-l[t]))):d.map(l,(e,t)=>Math.abs(o[t]-l[t]))}draw_legend_for_index(e,t,i){}hit_test(e){switch(e.type){case\"point\":if(null!=this._hit_point)return this._hit_point(e);break;case\"span\":if(null!=this._hit_span)return this._hit_span(e);break;case\"rect\":if(null!=this._hit_rect)return this._hit_rect(e);break;case\"poly\":if(null!=this._hit_poly)return this._hit_poly(e)}return this._nohit_warned.has(e.type)||(o.logger.debug(`'${e.type}' selection not available for ${this.model.type}`),this._nohit_warned.add(e.type)),null}_hit_rect_against_index(e){const{sx0:t,sx1:i,sy0:s,sy1:n}=e,[r,a]=this.renderer.coordinates.x_scale.r_invert(t,i),[_,l]=this.renderer.coordinates.y_scale.r_invert(s,n),o=[...this.index.indices({x0:r,x1:a,y0:_,y1:l})];return new p.Selection({indices:o})}_project_data(){}set_data(e,t,i){var s,r;const{x_range:a,y_range:_}=this.renderer.coordinates;this._data_size=null!==(s=e.get_length())&&void 0!==s?s:1;for(const i of this.model){if(!(i instanceof n.VectorSpec))continue;if(i.optional&&null==i.spec.value&&!i.dirty)continue;const s=i.attr,r=i.array(e);let l=t.select(r);if(i instanceof n.BaseCoordinateSpec){const e=\"x\"==i.dimension?a:_;if(e instanceof u.FactorRange)if(i instanceof n.CoordinateSpec)l=e.v_synthetic(l);else if(i instanceof n.CoordinateSeqSpec)for(let t=0;t<l.length;t++)l[t]=e.v_synthetic(l[t]);i instanceof n.CoordinateSeqSpec&&(l=h.RaggedArray.from(l))}else i instanceof n.DistanceSpec&&(this[\"max_\"+s]=d.max(l));this[\"_\"+s]=l}this.renderer.plot_view.model.use_map&&this._project_data(),this._set_data(i),null===(r=this.glglyph)||void 0===r||r.set_data_changed(),this.index_data()}_set_data(e){}get _index_size(){return this.data_size}index_data(){const e=new c.SpatialIndex(this._index_size);this._index_data(e),e.finish(),this._index=e}mask_data(){return null!=this.glglyph||null==this._mask_data?h.Indices.all_set(this.data_size):this._mask_data()}map_data(){var e;const t=this,{x_scale:i,y_scale:s}=this.renderer.coordinates;for(const e of this.model)if(e instanceof n.BaseCoordinateSpec){const n=\"x\"==e.dimension?i:s;let r=t[\"_\"+e.attr];if(r instanceof h.RaggedArray){const e=n.v_compute(r.array);r=new h.RaggedArray(r.offsets,e)}else r=n.v_compute(r);this[\"s\"+e.attr]=r}this._map_data(),null===(e=this.glglyph)||void 0===e||e.set_data_changed()}_map_data(){}}i.GlyphView=y,y.__name__=\"GlyphView\";class g extends l.Model{constructor(e){super(e)}static init_Glyph(){}}i.Glyph=g,g.__name__=\"Glyph\",g.init_Glyph()},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1).__importDefault(e(96)),s=e(24),o=e(79);function d(e,n){let t=0,i=n.length-1;for(;t<i;){const s=t+i>>1;n[s]>e?i=s:t=s+1}return n[t]}class x extends i.default{search_indices(e,n,t,i){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let o=this._boxes.length-4;const x=[],h=new s.Indices(this.numItems);for(;void 0!==o;){const s=Math.min(o+4*this.nodeSize,d(o,this._levelBounds));for(let d=o;d<s;d+=4){const s=0|this._indices[d>>2];t<this._boxes[d+0]||(i<this._boxes[d+1]||e>this._boxes[d+2]||n>this._boxes[d+3]||(o<4*this.numItems?h.set(s):x.push(s)))}o=x.pop()}return h}}x.__name__=\"_FlatBush\";class h{constructor(e){this.index=null,e>0&&(this.index=new x(e))}add(e,n,t,i){var s;null===(s=this.index)||void 0===s||s.add(e,n,t,i)}add_empty(){var e;null===(e=this.index)||void 0===e||e.add(1/0,1/0,-1/0,-1/0)}finish(){var e;null===(e=this.index)||void 0===e||e.finish()}_normalize(e){let{x0:n,y0:t,x1:i,y1:s}=e;return n>i&&([n,i]=[i,n]),t>s&&([t,s]=[s,t]),{x0:n,y0:t,x1:i,y1:s}}get bbox(){if(null==this.index)return o.empty();{const{minX:e,minY:n,maxX:t,maxY:i}=this.index;return{x0:e,y0:n,x1:t,y1:i}}}indices(e){if(null==this.index)return new s.Indices(0);{const{x0:n,y0:t,x1:i,y1:s}=this._normalize(e);return this.index.search_indices(n,t,i,s)}}bounds(e){const n=o.empty();for(const t of this.indices(e)){const e=this.index._boxes,i=e[4*t+0],s=e[4*t+1],o=e[4*t+2],d=e[4*t+3];o<n.x0&&(n.x0=o),i>n.x1&&(n.x1=i),d<n.y0&&(n.y0=d),s>n.y1&&(n.y1=s)}return n}}t.SpatialIndex=h,h.__name__=\"SpatialIndex\"},\n",
       "      function _(t,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(1).__importDefault(t(97)),h=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class n{static from(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[s,i]=new Uint8Array(t,0,2);if(251!==s)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(i>>4!=3)throw new Error(`Got v${i>>4} data when expected v3.`);const[e]=new Uint16Array(t,2,1),[o]=new Uint32Array(t,4,1);return new n(o,e,h[15&i],t)}constructor(t,s=16,i=Float64Array,n){if(void 0===t)throw new Error(\"Missing required argument: numItems.\");if(isNaN(t)||t<=0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+s,2),65535);let o=t,r=o;this._levelBounds=[4*o];do{o=Math.ceil(o/this.nodeSize),r+=o,this._levelBounds.push(4*r)}while(1!==o);this.ArrayType=i||Float64Array,this.IndexArrayType=r<16384?Uint16Array:Uint32Array;const a=h.indexOf(this.ArrayType),_=4*r*this.ArrayType.BYTES_PER_ELEMENT;if(a<0)throw new Error(`Unexpected typed array class: ${i}.`);n&&n instanceof ArrayBuffer?(this.data=n,this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=4*r,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1]):(this.data=new ArrayBuffer(8+_+r*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(this.data,0,2).set([251,48+a]),new Uint16Array(this.data,2,1)[0]=s,new Uint32Array(this.data,4,1)[0]=t),this._queue=new e.default}add(t,s,i,e){const h=this._pos>>2;return this._indices[h]=h,this._boxes[this._pos++]=t,this._boxes[this._pos++]=s,this._boxes[this._pos++]=i,this._boxes[this._pos++]=e,t<this.minX&&(this.minX=t),s<this.minY&&(this.minY=s),i>this.maxX&&(this.maxX=i),e>this.maxY&&(this.maxY=e),h}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);if(this.numItems<=this.nodeSize)return this._boxes[this._pos++]=this.minX,this._boxes[this._pos++]=this.minY,this._boxes[this._pos++]=this.maxX,void(this._boxes[this._pos++]=this.maxY);const t=this.maxX-this.minX,s=this.maxY-this.minY,i=new Uint32Array(this.numItems);for(let e=0;e<this.numItems;e++){let h=4*e;const n=this._boxes[h++],o=this._boxes[h++],r=this._boxes[h++],a=this._boxes[h++],d=Math.floor(65535*((n+r)/2-this.minX)/t),x=Math.floor(65535*((o+a)/2-this.minY)/s);i[e]=_(d,x)}!function t(s,i,e,h,n,o){if(Math.floor(h/o)>=Math.floor(n/o))return;const r=s[h+n>>1];let _=h-1,d=n+1;for(;;){do{_++}while(s[_]<r);do{d--}while(s[d]>r);if(_>=d)break;a(s,i,e,_,d)}t(s,i,e,h,d,o),t(s,i,e,d+1,n,o)}(i,this._boxes,this._indices,0,this.numItems-1,this.nodeSize);for(let t=0,s=0;t<this._levelBounds.length-1;t++){const i=this._levelBounds[t];for(;s<i;){const t=s;let e=1/0,h=1/0,n=-1/0,o=-1/0;for(let t=0;t<this.nodeSize&&s<i;t++)e=Math.min(e,this._boxes[s++]),h=Math.min(h,this._boxes[s++]),n=Math.max(n,this._boxes[s++]),o=Math.max(o,this._boxes[s++]);this._indices[this._pos>>2]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=h,this._boxes[this._pos++]=n,this._boxes[this._pos++]=o}}}search(t,s,i,e,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const o=[],a=[];for(;void 0!==n;){const _=Math.min(n+4*this.nodeSize,r(n,this._levelBounds));for(let r=n;r<_;r+=4){const _=0|this._indices[r>>2];i<this._boxes[r]||(e<this._boxes[r+1]||t>this._boxes[r+2]||s>this._boxes[r+3]||(n<4*this.numItems?(void 0===h||h(_))&&a.push(_):o.push(_)))}n=o.pop()}return a}neighbors(t,s,i=1/0,e=1/0,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const a=this._queue,_=[],d=e*e;for(;void 0!==n;){const e=Math.min(n+4*this.nodeSize,r(n,this._levelBounds));for(let i=n;i<e;i+=4){const e=0|this._indices[i>>2],r=o(t,this._boxes[i],this._boxes[i+2]),_=o(s,this._boxes[i+1],this._boxes[i+3]),d=r*r+_*_;n<4*this.numItems?(void 0===h||h(e))&&a.push(-e-1,d):a.push(e,d)}for(;a.length&&a.peek()<0;){if(a.peekValue()>d)return a.clear(),_;if(_.push(-a.pop()-1),_.length===i)return a.clear(),_}n=a.pop()}return a.clear(),_}}function o(t,s,i){return t<s?s-t:t<=i?0:t-i}function r(t,s){let i=0,e=s.length-1;for(;i<e;){const h=i+e>>1;s[h]>t?e=h:i=h+1}return s[i]}function a(t,s,i,e,h){const n=t[e];t[e]=t[h],t[h]=n;const o=4*e,r=4*h,a=s[o],_=s[o+1],d=s[o+2],x=s[o+3];s[o]=s[r],s[o+1]=s[r+1],s[o+2]=s[r+2],s[o+3]=s[r+3],s[r]=a,s[r+1]=_,s[r+2]=d,s[r+3]=x;const l=i[e];i[e]=i[h],i[h]=l}function _(t,s){let i=t^s,e=65535^i,h=65535^(t|s),n=t&(65535^s),o=i|e>>1,r=i>>1^i,a=h>>1^e&n>>1^h,_=i&h>>1^n>>1^n;i=o,e=r,h=a,n=_,o=i&i>>2^e&e>>2,r=i&e>>2^e&(i^e)>>2,a^=i&h>>2^e&n>>2,_^=e&h>>2^(i^e)&n>>2,i=o,e=r,h=a,n=_,o=i&i>>4^e&e>>4,r=i&e>>4^e&(i^e)>>4,a^=i&h>>4^e&n>>4,_^=e&h>>4^(i^e)&n>>4,i=o,e=r,h=a,n=_,a^=i&h>>8^e&n>>8,_^=e&h>>8^(i^e)&n>>8,i=a^a>>1,e=_^_>>1;let d=t^s,x=e|65535^(d|i);return d=16711935&(d|d<<8),d=252645135&(d|d<<4),d=858993459&(d|d<<2),d=1431655765&(d|d<<1),x=16711935&(x|x<<8),x=252645135&(x|x<<4),x=858993459&(x|x<<2),x=1431655765&(x|x<<1),(x<<1|d)>>>0}i.default=n},\n",
       "      function _(s,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});i.default=class{constructor(){this.ids=[],this.values=[],this.length=0}clear(){this.length=0}push(s,t){let i=this.length++;for(this.ids[i]=s,this.values[i]=t;i>0;){const s=i-1>>1,h=this.values[s];if(t>=h)break;this.ids[i]=this.ids[s],this.values[i]=h,i=s}this.ids[i]=s,this.values[i]=t}pop(){if(0===this.length)return;const s=this.ids[0];if(this.length--,this.length>0){const s=this.ids[0]=this.ids[this.length],t=this.values[0]=this.values[this.length],i=this.length>>1;let h=0;for(;h<i;){let s=1+(h<<1);const i=s+1;let e=this.ids[s],l=this.values[s];const n=this.values[i];if(i<this.length&&n<l&&(s=i,e=this.ids[i],l=n),l>=t)break;this.ids[h]=e,this.values[h]=l,h=s}this.ids[h]=s,this.values[h]=t}return s}peek(){if(0!==this.length)return this.ids[0]}peekValue(){if(0!==this.length)return this.values[0]}}},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=t(1),i=t(99),r=s.__importStar(t(18)),a=t(24),o=t(9),p=t(8),g=t(11);function c(t,e,n=0){const s=new Map;for(let i=0;i<t.length;i++){const r=t[i];if(s.has(r))throw new Error(\"duplicate factor or subfactor: \"+r);s.set(r,{value:.5+i*(1+e)+n})}return[s,(t.length-1)*e]}function l(t,e,n,s=0){var i;const r=new Map,a=new Map;for(const[e,n]of t){const t=null!==(i=a.get(e))&&void 0!==i?i:[];a.set(e,[...t,n])}let p=s,g=0;for(const[t,s]of a){const i=s.length,[a,l]=c(s,n,p);g+=l;const u=o.sum(s.map(t=>a.get(t).value));r.set(t,{value:u/i,mapping:a}),p+=i+e+l}return[r,(a.size-1)*e+g]}function u(t,e,n,s,i=0){var r;const a=new Map,p=new Map;for(const[e,n,s]of t){const t=null!==(r=p.get(e))&&void 0!==r?r:[];p.set(e,[...t,[n,s]])}let g=i,c=0;for(const[t,i]of p){const r=i.length,[p,u]=l(i,n,s,g);c+=u;const h=o.sum(i.map(([t])=>p.get(t).value));a.set(t,{value:h/r,mapping:p}),g+=r+e+u}return[a,(p.size-1)*e+c]}n.map_one_level=c,n.map_two_levels=l,n.map_three_levels=u;class h extends i.Range{constructor(t){super(t)}static init_FactorRange(){this.define({factors:[r.Array,[]],factor_padding:[r.Number,0],subgroup_padding:[r.Number,.8],group_padding:[r.Number,1.4],range_padding:[r.Number,0],range_padding_units:[r.PaddingUnits,\"percent\"],start:[r.Number],end:[r.Number]}),this.internal({levels:[r.Number],mids:[r.Array,null],tops:[r.Array,null]})}get min(){return this.start}get max(){return this.end}initialize(){super.initialize(),this._init(!0)}connect_signals(){super.connect_signals(),this.connect(this.properties.factors.change,()=>this.reset()),this.connect(this.properties.factor_padding.change,()=>this.reset()),this.connect(this.properties.group_padding.change,()=>this.reset()),this.connect(this.properties.subgroup_padding.change,()=>this.reset()),this.connect(this.properties.range_padding.change,()=>this.reset()),this.connect(this.properties.range_padding_units.change,()=>this.reset())}reset(){this._init(!1),this.change.emit()}_lookup(t){switch(t.length){case 1:{const[e]=t,n=this._mapping.get(e);return null!=n?n.value:NaN}case 2:{const[e,n]=t,s=this._mapping.get(e);if(null!=s){const t=s.mapping.get(n);if(null!=t)return t.value}return NaN}case 3:{const[e,n,s]=t,i=this._mapping.get(e);if(null!=i){const t=i.mapping.get(n);if(null!=t){const e=t.mapping.get(s);if(null!=e)return e.value}}return NaN}default:g.unreachable()}}synthetic(t){if(p.isNumber(t))return t;if(p.isString(t))return this._lookup([t]);let e=0;const n=t[t.length-1];return p.isNumber(n)&&(e=n,t=t.slice(0,-1)),this._lookup(t)+e}v_synthetic(t){const e=t.length,n=new a.NumberArray(e);for(let s=0;s<e;s++)n[s]=this.synthetic(t[s]);return n}_init(t){const{levels:e,mapping:n,tops:s,mids:i,inside_padding:r}=(()=>{if(o.every(this.factors,p.isString)){const t=this.factors,[e,n]=c(t,this.factor_padding);return{levels:1,mapping:e,tops:null,mids:null,inside_padding:n}}if(o.every(this.factors,t=>p.isArray(t)&&2==t.length&&p.isString(t[0])&&p.isString(t[1]))){const t=this.factors,[e,n]=l(t,this.group_padding,this.factor_padding),s=[...e.keys()];return{levels:2,mapping:e,tops:s,mids:null,inside_padding:n}}if(o.every(this.factors,t=>p.isArray(t)&&3==t.length&&p.isString(t[0])&&p.isString(t[1])&&p.isString(t[2]))){const t=this.factors,[e,n]=u(t,this.group_padding,this.subgroup_padding,this.factor_padding),s=[...e.keys()],i=[];for(const[t,n]of e)for(const e of n.mapping.keys())i.push([t,e]);return{levels:3,mapping:e,tops:s,mids:i,inside_padding:n}}g.unreachable()})();this._mapping=n,this.tops=s,this.mids=i;let a=0,h=this.factors.length+r;if(\"percent\"==this.range_padding_units){const t=(h-a)*this.range_padding/2;a-=t,h+=t}else a-=this.range_padding,h+=this.range_padding;this.setv({start:a,end:h,levels:e},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[a,h]},{silent:!0})}}n.FactorRange=h,h.__name__=\"FactorRange\",h.init_FactorRange()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(81),a=n.__importStar(e(18));class r extends s.Model{constructor(e){super(e),this.have_updated_interactively=!1}static init_Range(){this.define({bounds:[a.Any],min_interval:[a.Any],max_interval:[a.Any]}),this.internal({plots:[a.Array,[]]})}get is_reversed(){return this.start>this.end}get is_valid(){return!isNaN(this.min)&&!isNaN(this.max)}}i.Range=r,r.__name__=\"Range\",r.init_Range()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1).__importStar(e(101));i.generic_line_legend=function(e,t,{x0:i,x1:n,y0:c,y1:o},r){t.save(),t.beginPath(),t.moveTo(i,(c+o)/2),t.lineTo(n,(c+o)/2),e.line.doit&&(e.line.set_vectorize(t,r),t.stroke()),t.restore()},i.generic_area_legend=function(e,t,{x0:i,x1:n,y0:c,y1:o},r){const l=.1*Math.abs(n-i),a=.1*Math.abs(o-c),s=i+l,_=n-l,h=c+a,v=o-a;e.fill.doit&&(e.fill.set_vectorize(t,r),t.fillRect(s,h,_-s,v-h)),null!=e.hatch&&e.hatch.doit&&(e.hatch.set_vectorize(t,r),t.fillRect(s,h,_-s,v-h)),e.line&&e.line.doit&&(t.beginPath(),t.rect(s,h,_-s,v-h),e.line.set_vectorize(t,r),t.stroke())},i.line_interpolation=function(e,t,i,c,o,r){const{sx:l,sy:a}=t;let s,_,h,v;\"point\"==t.type?([h,v]=e.yscale.r_invert(a-1,a+1),[s,_]=e.xscale.r_invert(l-1,l+1)):\"v\"==t.direction?([h,v]=e.yscale.r_invert(a,a),[s,_]=[Math.min(i-1,o-1),Math.max(i+1,o+1)]):([s,_]=e.xscale.r_invert(l,l),[h,v]=[Math.min(c-1,r-1),Math.max(c+1,r+1)]);const{x,y}=n.check_2_segments_intersect(s,h,_,v,i,c,o,r);return[x,y]}},\n",
       "      function _(t,n,e){function i(t,n){return(t.x-n.x)**2+(t.y-n.y)**2}function r(t,n,e){const r=i(n,e);if(0==r)return i(t,n);const s=((t.x-n.x)*(e.x-n.x)+(t.y-n.y)*(e.y-n.y))/r;if(s<0)return i(t,n);if(s>1)return i(t,e);return i(t,{x:n.x+s*(e.x-n.x),y:n.y+s*(e.y-n.y)})}Object.defineProperty(e,\"__esModule\",{value:!0}),e.point_in_poly=function(t,n,e,i){let r=!1,s=e[e.length-1],o=i[i.length-1];for(let u=0;u<e.length;u++){const c=e[u],_=i[u];o<n!=_<n&&s+(n-o)/(_-o)*(c-s)<t&&(r=!r),s=c,o=_}return r},e.point_in_ellipse=function(t,n,e,i,r,s,o){return((Math.cos(e)/r)**2+(Math.sin(e)/i)**2)*(t-s)**2+2*Math.cos(e)*Math.sin(e)*((1/r)**2-(1/i)**2)*(t-s)*(n-o)+((Math.cos(e)/i)**2+(Math.sin(e)/r)**2)*(n-o)**2<=1},e.dist_2_pts=i,e.dist_to_segment_squared=r,e.dist_to_segment=function(t,n,e){return Math.sqrt(r(t,n,e))},e.check_2_segments_intersect=function(t,n,e,i,r,s,o,u){const c=(u-s)*(e-t)-(o-r)*(i-n);if(0==c)return{hit:!1,x:null,y:null};{let _=n-s,l=t-r;const y=(e-t)*_-(i-n)*l;_=((o-r)*_-(u-s)*l)/c,l=y/c;return{hit:_>0&&_<1&&l>0&&l<1,x:t+_*(e-t),y:n+_*(i-n)}}}},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(103),a=t(107),n=t(108),o=t(109),_=t(22);class h{constructor(t){this._atlas=new Map,this._width=256,this._height=256,this.tex=new i.Texture2d(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._width,this._height],t.RGBA),this.tex.set_data([0,0],[this._width,this._height],new Uint8Array(4*this._width*this._height)),this.get_atlas_data([1])}get_atlas_data(t){const e=t.join(\"-\");let s=this._atlas.get(e);if(null==s){const[i,a]=this.make_pattern(t),n=this._atlas.size;this.tex.set_data([0,n],[this._width,1],new Uint8Array(i.map(t=>t+10))),s=[n/this._height,a],this._atlas.set(e,s)}return s}make_pattern(t){t.length>1&&t.length%2&&(t=t.concat(t));let e=0;for(const s of t)e+=s;const s=[];let i=0;for(let e=0,a=t.length+2;e<a;e+=2){const a=Math.max(1e-4,t[e%t.length]),n=Math.max(1e-4,t[(e+1)%t.length]);s.push(i,i+a),i+=a+n}const a=this._width,n=new Float32Array(4*a);for(let t=0,i=a;t<i;t++){let i,o,_;const h=e*t/(a-1);let r=0,l=1e16;for(let t=0,e=s.length;t<e;t++){const e=Math.abs(s[t]-h);e<l&&(r=t,l=e)}r%2==0?(_=h<=s[r]?1:0,o=s[r],i=s[r+1]):(_=h>s[r]?-1:0,o=s[r-1],i=s[r]),n[4*t+0]=s[r],n[4*t+1]=_,n[4*t+2]=o,n[4*t+3]=i}return[n,e]}}h.__name__=\"DashAtlas\";const r={miter:0,round:1,bevel:2},l={\"\":0,none:0,\".\":0,round:1,\")\":1,\"(\":1,o:1,\"triangle in\":2,\"<\":2,\"triangle out\":3,\">\":3,square:4,\"[\":4,\"]\":4,\"=\":4,butt:5,\"|\":5};class g extends a.BaseGLGlyph{init(){const{gl:t}=this;this._scale_aspect=0;const e=n.vertex_shader,s=o.fragment_shader;this.prog=new i.Program(t),this.prog.set_shaders(e,s),this.index_buffer=new i.IndexBuffer(t),this.vbo_position=new i.VertexBuffer(t),this.vbo_tangents=new i.VertexBuffer(t),this.vbo_segment=new i.VertexBuffer(t),this.vbo_angles=new i.VertexBuffer(t),this.vbo_texcoord=new i.VertexBuffer(t),this.dash_atlas=new h(t)}draw(t,e,s){const i=e.glglyph;if(i.data_changed&&(i._set_data(),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1),i._update_scale(1,1),this._scale_aspect=1,this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[i.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[1,1]),this.prog.set_uniform(\"u_scale_length\",\"float\",[Math.sqrt(2)]),this.I_triangles=i.I_triangles,this.I_triangles.length<65535)this.index_buffer.set_size(2*this.I_triangles.length),this.index_buffer.set_data(0,new Uint16Array(this.I_triangles)),this.prog.draw(this.gl.TRIANGLES,this.index_buffer);else{t=Array.from(this.I_triangles);const e=this.I_triangles.length,s=64008,a=[];for(let t=0,i=Math.ceil(e/s);t<i;t++)a.push([]);for(let e=0,i=t.length;e<i;e++){const i=t[e]%s;a[Math.floor(t[e]/s)].push(i)}for(let t=0,e=a.length;t<e;t++){const e=new Uint16Array(a[t]),n=t*s*4;0!==e.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position,0,2*n),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents,0,4*n),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment,0,2*n),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles,0,2*n),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord,0,2*n),this.index_buffer.set_size(2*e.length),this.index_buffer.set_data(0,e),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}}_set_data(){this._bake(),this.vbo_position.set_size(4*this.V_position.length),this.vbo_position.set_data(0,this.V_position),this.vbo_tangents.set_size(4*this.V_tangents.length),this.vbo_tangents.set_data(0,this.V_tangents),this.vbo_angles.set_size(4*this.V_angles.length),this.vbo_angles.set_data(0,this.V_angles),this.vbo_texcoord.set_size(4*this.V_texcoord.length),this.vbo_texcoord.set_data(0,this.V_texcoord)}_set_visuals(){const t=_.color2rgba(this.glyph.visuals.line.line_color.value(),this.glyph.visuals.line.line_alpha.value()),e=l[this.glyph.visuals.line.line_cap.value()],s=r[this.glyph.visuals.line.line_join.value()];this.prog.set_uniform(\"u_color\",\"vec4\",t),this.prog.set_uniform(\"u_linewidth\",\"float\",[this.glyph.visuals.line.line_width.value()]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[e,e]),this.prog.set_uniform(\"u_linejoin\",\"float\",[s]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);const i=this.glyph.visuals.line.line_dash.value();let a=0,n=1;i.length&&([a,n]=this.dash_atlas.get_atlas_data(i)),this.prog.set_uniform(\"u_dash_index\",\"float\",[a]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[this.glyph.visuals.line.line_dash_offset.value()]),this.prog.set_uniform(\"u_dash_period\",\"float\",[n]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[e,e]),this.prog.set_uniform(\"u_closed\",\"float\",[0])}_bake(){let t,e,s,i,a,n,o,_;const h=this.nvertices,r=this.glyph.sx,l=this.glyph.sy,g=o=new Float32Array(2*h),u=new Float32Array(2*h),f=_=new Float32Array(4*h);for(let t=0,e=h;t<e;t++)g[2*t+0]=r[t],g[2*t+1]=l[t];this.tangents=e=new Float32Array(2*h-2);for(let t=0,s=h-1;t<s;t++)e[2*t+0]=o[2*(t+1)+0]-o[2*t+0],e[2*t+1]=o[2*(t+1)+1]-o[2*t+1];for(let t=0,s=h-1;t<s;t++)f[4*(t+1)+0]=e[2*t+0],f[4*(t+1)+1]=e[2*t+1],f[4*t+2]=e[2*t+0],f[4*t+3]=e[2*t+1];f[0]=e[0],f[1]=e[1],f[4*(h-1)+2]=e[2*(h-2)+0],f[4*(h-1)+3]=e[2*(h-2)+1];const c=new Float32Array(h);for(let t=0,e=h;t<e;t++)c[t]=Math.atan2(_[4*t+0]*_[4*t+3]-_[4*t+1]*_[4*t+2],_[4*t+0]*_[4*t+2]+_[4*t+1]*_[4*t+3]);for(let t=0,e=h-1;t<e;t++)u[2*t+0]=c[t],u[2*t+1]=c[t+1];const p=4*h-4;this.V_position=i=new Float32Array(2*p),this.V_angles=s=new Float32Array(2*p),this.V_tangents=a=new Float32Array(4*p),this.V_texcoord=n=new Float32Array(2*p);for(let t=0,e=h;t<e;t++)for(let e=0;e<4;e++){for(let a=0;a<2;a++)i[2*(4*t+e-2)+a]=g[2*t+a],s[2*(4*t+e)+a]=u[2*t+a];for(let s=0;s<4;s++)a[4*(4*t+e-2)+s]=f[4*t+s]}for(let t=0,e=h;t<e;t++)n[2*(4*t+0)+0]=-1,n[2*(4*t+1)+0]=-1,n[2*(4*t+2)+0]=1,n[2*(4*t+3)+0]=1,n[2*(4*t+0)+1]=-1,n[2*(4*t+1)+1]=1,n[2*(4*t+2)+1]=-1,n[2*(4*t+3)+1]=1;const d=6*(h-1);this.I_triangles=t=new Uint32Array(d);for(let e=0,s=h;e<s;e++)t[6*e+0]=0+4*e,t[6*e+1]=1+4*e,t[6*e+2]=3+4*e,t[6*e+3]=2+4*e,t[6*e+4]=0+4*e,t[6*e+5]=3+4*e}_update_scale(t,e){let s;const i=this.nvertices,a=4*i-4,n=this.tangents,o=new Float32Array(i-1),_=new Float32Array(2*i);this.V_segment=s=new Float32Array(2*a);for(let s=0,a=i-1;s<a;s++)o[s]=Math.sqrt((n[2*s+0]*t)**2+(n[2*s+1]*e)**2);let h=0;for(let t=0,e=i-1;t<e;t++)h+=o[t],_[2*(t+1)+0]=h,_[2*t+1]=h;for(let t=0,e=i;t<e;t++)for(let e=0;e<4;e++)for(let i=0;i<2;i++)s[2*(4*t+e)+i]=_[2*t+i];this.cumsum=h,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)}}s.LineGL=g,g.__name__=\"LineGL\"},\n",
       "      function _(e,r,f){Object.defineProperty(f,\"__esModule\",{value:!0});var u=e(104);f.Program=u.Program;var t=e(106);f.Texture2d=t.Texture2d;var a=e(105);f.IndexBuffer=a.IndexBuffer,f.VertexBuffer=a.VertexBuffer},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(105);class a{constructor(t){this.gl=t,this.UTYPEMAP={float:\"uniform1fv\",vec2:\"uniform2fv\",vec3:\"uniform3fv\",vec4:\"uniform4fv\",int:\"uniform1iv\",ivec2:\"uniform2iv\",ivec3:\"uniform3iv\",ivec4:\"uniform4iv\",bool:\"uniform1iv\",bvec2:\"uniform2iv\",bvec3:\"uniform3iv\",bvec4:\"uniform4iv\",mat2:\"uniformMatrix2fv\",mat3:\"uniformMatrix3fv\",mat4:\"uniformMatrix4fv\",sampler1D:\"uniform1i\",sampler2D:\"uniform1i\",sampler3D:\"uniform1i\"},this.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},this.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126]},this._linked=!1,this._validated=!1,this._unset_variables=new Set,this._known_invalid=new Set,this._locations=new Map,this._samplers=new Map,this._attributes=new Map,this.handle=this.gl.createProgram()}delete(){this.gl.deleteProgram(this.handle)}activate(){this.gl.useProgram(this.handle)}deactivate(){this.gl.useProgram(0)}set_shaders(t,e){const i=this.gl;this._linked=!1;const s=i.createShader(i.VERTEX_SHADER),a=i.createShader(i.FRAGMENT_SHADER),r=[[t,s,\"vertex\"],[e,a,\"fragment\"]];for(const[t,e,s]of r){i.shaderSource(e,t),i.compileShader(e);if(!i.getShaderParameter(e,i.COMPILE_STATUS)){const t=i.getShaderInfoLog(e);throw new Error(`errors in ${s} shader:\\n${t}`)}}if(i.attachShader(this.handle,s),i.attachShader(this.handle,a),i.linkProgram(this.handle),!i.getProgramParameter(this.handle,i.LINK_STATUS)){const t=i.getProgramInfoLog(this.handle);throw new Error(\"Program link error:\\n\"+t)}this._unset_variables=this._get_active_attributes_and_uniforms(),i.detachShader(this.handle,s),i.detachShader(this.handle,a),i.deleteShader(s),i.deleteShader(a),this._known_invalid.clear(),this._linked=!0}_get_active_attributes_and_uniforms(){const t=this.gl;this._locations.clear();const e=new RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),i=t.getProgramParameter(this.handle,t.ACTIVE_UNIFORMS),s=[],a=[],r=[[s,t.getProgramParameter(this.handle,t.ACTIVE_ATTRIBUTES),t.getActiveAttrib,t.getAttribLocation],[a,i,t.getActiveUniform,t.getUniformLocation]];for(const[i,s,a,n]of r)for(let r=0;r<s;r+=1){const s=a.call(t,this.handle,r),o=s.name,h=o.match(e);if(null!=h){const t=h[1];for(let e=0;e<s.size;e+=1)i.push([`${t}[${e}]`,s.type])}else i.push([o,s.type]);this._locations.set(o,n.call(t,this.handle,o))}const n=new Set;for(const[t]of s)n.add(t);for(const[t]of a)n.add(t);return n}set_texture(t,e){var i;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const s=null!==(i=this._locations.get(t))&&void 0!==i?i:-1;if(s<0)this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`\"Variable ${t} is not an active texture`));else{this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate();{let i=this._samplers.size;this._samplers.has(t)&&(i=this._samplers.get(t)[2]),this._samplers.set(t,[e._target,e.handle,i]),this.gl.uniform1i(s,i)}}}set_uniform(t,e,i){var s;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const a=null!==(s=this._locations.get(t))&&void 0!==s?s:-1;if(a<0)return void(this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`Variable ${t} is not an active uniform`)));this._unset_variables.has(t)&&this._unset_variables.delete(t);let r=1;if(!e.startsWith(\"mat\")){const t=\"int\"==e||\"bool\"==e?\"float\":e.replace(/^ib/,\"\");r=Math.floor(i.length/this.ATYPEINFO[t][0])}if(r>1)for(let e=0;e<r;e+=1)if(this._unset_variables.has(`${t}[${e}]`)){const i=`${t}[${e}]`;this._unset_variables.has(i)&&this._unset_variables.delete(i)}const n=this.UTYPEMAP[e];this.activate(),e.startsWith(\"mat\")?this.gl[n](a,!1,i):this.gl[n](a,i)}set_attribute(t,e,i,a=0,r=0){var n;if(!this._linked)throw new Error(\"Cannot set attribute when program has no code\");const o=null!==(n=this._locations.get(t))&&void 0!==n?n:-1;if(o<0)this._known_invalid.has(t)||(this._known_invalid.add(t),i instanceof s.VertexBuffer&&r>0||console.log(`Variable ${t} is not an active attribute`));else if(this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate(),i instanceof s.VertexBuffer){const[s,n]=this.ATYPEINFO[e],h=\"vertexAttribPointer\",l=[s,n,!1,a,r];this._attributes.set(t,[i.handle,o,h,l])}else{const s=this.ATYPEMAP[e];this._attributes.set(t,[null,o,s,i])}}_pre_draw(){this.activate();for(const[t,e,i]of this._samplers.values())this.gl.activeTexture(this.gl.TEXTURE0+i),this.gl.bindTexture(t,e);for(const[t,e,i,s]of this._attributes.values())null!=t?(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,t),this.gl.enableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s])):(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.gl.disableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s]));this._validated||(this._validated=!0,this._validate())}_validate(){if(this._unset_variables.size&&console.log(\"Program has unset variables: \"+this._unset_variables),this.gl.validateProgram(this.handle),!this.gl.getProgramParameter(this.handle,this.gl.VALIDATE_STATUS))throw console.log(this.gl.getProgramInfoLog(this.handle)),new Error(\"Program validation error\")}draw(t,e){if(!this._linked)throw new Error(\"Cannot draw program if code has not been set\");if(e instanceof s.IndexBuffer){this._pre_draw(),e.activate();const i=e.buffer_size/2,s=this.gl.UNSIGNED_SHORT;this.gl.drawElements(t,i,s,0),e.deactivate()}else{const[i,s]=e;0!=s&&(this._pre_draw(),this.gl.drawArrays(t,i,s))}}}i.Program=a,a.__name__=\"Program\"},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});class i{constructor(e){this.gl=e,this._usage=35048,this.buffer_size=0,this.handle=this.gl.createBuffer()}delete(){this.gl.deleteBuffer(this.handle)}activate(){this.gl.bindBuffer(this._target,this.handle)}deactivate(){this.gl.bindBuffer(this._target,null)}set_size(e){e!=this.buffer_size&&(this.activate(),this.gl.bufferData(this._target,e,this._usage),this.buffer_size=e)}set_data(e,t){this.activate(),this.gl.bufferSubData(this._target,e,t)}}s.Buffer=i,i.__name__=\"Buffer\";class r extends i{constructor(){super(...arguments),this._target=34962}}s.VertexBuffer=r,r.__name__=\"VertexBuffer\";class a extends i{constructor(){super(...arguments),this._target=34963}}s.IndexBuffer=a,a.__name__=\"IndexBuffer\"},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=t(11);class r{constructor(t){this.gl=t,this._target=3553,this._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},this.handle=this.gl.createTexture()}delete(){this.gl.deleteTexture(this.handle)}activate(){this.gl.bindTexture(this._target,this.handle)}deactivate(){this.gl.bindTexture(this._target,0)}_get_alignment(t){const e=[4,8,2,1];for(const i of e)if(t%i==0)return i;a.unreachable()}set_wrapping(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_S,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_T,e)}set_interpolation(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_MIN_FILTER,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_MAG_FILTER,e)}set_size([t,e],i){var a,r,s;t==(null===(a=this._shape_format)||void 0===a?void 0:a.width)&&e==(null===(r=this._shape_format)||void 0===r?void 0:r.height)&&i==(null===(s=this._shape_format)||void 0===s?void 0:s.format)||(this._shape_format={width:t,height:e,format:i},this.activate(),this.gl.texImage2D(this._target,0,i,t,e,0,i,this.gl.UNSIGNED_BYTE,null))}set_data(t,[e,i],a){this.activate();const{format:r}=this._shape_format,[s,h]=t,l=this._types[a.constructor.name];if(null==l)throw new Error(`Type ${a.constructor.name} not allowed for texture`);const _=this._get_alignment(e);4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,_),this.gl.texSubImage2D(this._target,0,s,h,e,i,r,l,a),4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,4)}}i.Texture2d=r,r.__name__=\"Texture2d\"},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});class s{constructor(e,t){this.gl=e,this.glyph=t,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1,this.init()}set_data_changed(){const{data_size:e}=this.glyph;e!=this.nvertices&&(this.nvertices=e,this.size_changed=!0),this.data_changed=!0}set_visuals_changed(){this.visuals_changed=!0}render(e,t,i){if(0==t.length)return!0;const{width:s,height:h}=this.glyph.renderer.plot_view.canvas_view.webgl.canvas,a={pixel_ratio:this.glyph.renderer.plot_view.canvas_view.pixel_ratio,width:s,height:h};return this.draw(t,i,a),!0}}i.BaseGLGlyph=s,s.__name__=\"BaseGLGlyph\"},\n",
       "      function _(n,e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.vertex_shader=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size, u_offset;\\nuniform vec2 u_scale_aspect;\\nuniform float u_scale_length;\\n\\nuniform vec4 u_color;\\nuniform float u_antialias;\\nuniform float u_length;\\nuniform float u_linewidth;\\nuniform float u_dash_index;\\nuniform float u_closed;\\n\\nattribute vec2 a_position;\\nattribute vec4 a_tangents;\\nattribute vec2 a_segment;\\nattribute vec2 a_angles;\\nattribute vec2 a_texcoord;\\n\\nvarying vec4  v_color;\\nvarying vec2  v_segment;\\nvarying vec2  v_angles;\\nvarying vec2  v_texcoord;\\nvarying vec2  v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\nfloat cross(in vec2 v1, in vec2 v2)\\n{\\n    return v1.x*v2.y - v1.y*v2.x;\\n}\\n\\nfloat signed_distance(in vec2 v1, in vec2 v2, in vec2 v3)\\n{\\n    return cross(v2-v1,v1-v3) / length(v2-v1);\\n}\\n\\nvoid rotate( in vec2 v, in float alpha, out vec2 result )\\n{\\n    float c = cos(alpha);\\n    float s = sin(alpha);\\n    result = vec2( c*v.x - s*v.y,\\n                   s*v.x + c*v.y );\\n}\\n\\nvoid main()\\n{\\n    bool closed = (u_closed > 0.0);\\n\\n    // Attributes and uniforms to varyings\\n    v_color = u_color;\\n    v_linewidth = u_linewidth;\\n    v_segment = a_segment * u_scale_length;\\n    v_length = u_length * u_scale_length;\\n\\n    // Scale to map to pixel coordinates. The original algorithm from the paper\\n    // assumed isotropic scale. We obviously do not have this.\\n    vec2 abs_scale_aspect = abs(u_scale_aspect);\\n    vec2 abs_scale = u_scale_length * abs_scale_aspect;\\n\\n    // Correct angles for aspect ratio\\n    vec2 av;\\n    av = vec2(1.0, tan(a_angles.x)) / abs_scale_aspect;\\n    v_angles.x = atan(av.y, av.x);\\n    av = vec2(1.0, tan(a_angles.y)) / abs_scale_aspect;\\n    v_angles.y = atan(av.y, av.x);\\n\\n    // Thickness below 1 pixel are represented using a 1 pixel thickness\\n    // and a modified alpha\\n    v_color.a = min(v_linewidth, v_color.a);\\n    v_linewidth = max(v_linewidth, 1.0);\\n\\n    // If color is fully transparent we just will discard the fragment anyway\\n    if( v_color.a <= 0.0 ) {\\n        gl_Position = vec4(0.0,0.0,0.0,1.0);\\n        return;\\n    }\\n\\n    // This is the actual half width of the line\\n    float w = ceil(u_antialias+v_linewidth)/2.0;\\n\\n    vec2 position = a_position;\\n\\n    vec2 t1 = normalize(a_tangents.xy * abs_scale_aspect);  // note the scaling for aspect ratio here\\n    vec2 t2 = normalize(a_tangents.zw * abs_scale_aspect);\\n    float u = a_texcoord.x;\\n    float v = a_texcoord.y;\\n    vec2 o1 = vec2( +t1.y, -t1.x);\\n    vec2 o2 = vec2( +t2.y, -t2.x);\\n\\n    // This is a join\\n    // ----------------------------------------------------------------\\n    if( t1 != t2 ) {\\n        float angle = atan (t1.x*t2.y-t1.y*t2.x, t1.x*t2.x+t1.y*t2.y);  // Angle needs recalculation for some reason\\n        vec2 t  = normalize(t1+t2);\\n        vec2 o  = vec2( + t.y, - t.x);\\n\\n        if ( u_dash_index > 0.0 )\\n        {\\n            // Broken angle\\n            // ----------------------------------------------------------------\\n            if( (abs(angle) > THETA) ) {\\n                position += v * w * o / cos(angle/2.0);\\n                float s = sign(angle);\\n                if( angle < 0.0 ) {\\n                    if( u == +1.0 ) {\\n                        u = v_segment.y + v * w * tan(angle/2.0);\\n                        if( v == 1.0 ) {\\n                            position -= 2.0 * w * t1 / sin(angle);\\n                            u -= 2.0 * w / sin(angle);\\n                        }\\n                    } else {\\n                        u = v_segment.x - v * w * tan(angle/2.0);\\n                        if( v == 1.0 ) {\\n                            position += 2.0 * w * t2 / sin(angle);\\n                            u += 2.0*w / sin(angle);\\n                        }\\n                    }\\n                } else {\\n                    if( u == +1.0 ) {\\n                        u = v_segment.y + v * w * tan(angle/2.0);\\n                        if( v == -1.0 ) {\\n                            position += 2.0 * w * t1 / sin(angle);\\n                            u += 2.0 * w / sin(angle);\\n                        }\\n                    } else {\\n                        u = v_segment.x - v * w * tan(angle/2.0);\\n                        if( v == -1.0 ) {\\n                            position -= 2.0 * w * t2 / sin(angle);\\n                            u -= 2.0*w / sin(angle);\\n                        }\\n                    }\\n                }\\n                // Continuous angle\\n                // ------------------------------------------------------------\\n            } else {\\n                position += v * w * o / cos(angle/2.0);\\n                if( u == +1.0 ) u = v_segment.y;\\n                else            u = v_segment.x;\\n            }\\n        }\\n\\n        // Solid line\\n        // --------------------------------------------------------------------\\n        else\\n        {\\n            position.xy += v * w * o / cos(angle/2.0);\\n            if( angle < 0.0 ) {\\n                if( u == +1.0 ) {\\n                    u = v_segment.y + v * w * tan(angle/2.0);\\n                } else {\\n                    u = v_segment.x - v * w * tan(angle/2.0);\\n                }\\n            } else {\\n                if( u == +1.0 ) {\\n                    u = v_segment.y + v * w * tan(angle/2.0);\\n                } else {\\n                    u = v_segment.x - v * w * tan(angle/2.0);\\n                }\\n            }\\n        }\\n\\n    // This is a line start or end (t1 == t2)\\n    // ------------------------------------------------------------------------\\n    } else {\\n        position += v * w * o1;\\n        if( u == -1.0 ) {\\n            u = v_segment.x - w;\\n            position -= w * t1;\\n        } else {\\n            u = v_segment.y + w;\\n            position += w * t2;\\n        }\\n    }\\n\\n    // Miter distance\\n    // ------------------------------------------------------------------------\\n    vec2 t;\\n    vec2 curr = a_position * abs_scale;\\n    if( a_texcoord.x < 0.0 ) {\\n        vec2 next = curr + t2*(v_segment.y-v_segment.x);\\n\\n        rotate( t1, +v_angles.x/2.0, t);\\n        v_miter.x = signed_distance(curr, curr+t, position);\\n\\n        rotate( t2, +v_angles.y/2.0, t);\\n        v_miter.y = signed_distance(next, next+t, position);\\n    } else {\\n        vec2 prev = curr - t1*(v_segment.y-v_segment.x);\\n\\n        rotate( t1, -v_angles.x/2.0,t);\\n        v_miter.x = signed_distance(prev, prev+t, position);\\n\\n        rotate( t2, -v_angles.y/2.0,t);\\n        v_miter.y = signed_distance(curr, curr+t, position);\\n    }\\n\\n    if (!closed && v_segment.x <= 0.0) {\\n        v_miter.x = 1e10;\\n    }\\n    if (!closed && v_segment.y >= v_length)\\n    {\\n        v_miter.y = 1e10;\\n    }\\n\\n    v_texcoord = vec2( u, v*w );\\n\\n    // Calculate position in device coordinates. Note that we\\n    // already scaled with abs scale above.\\n    vec2 normpos = position * sign(u_scale_aspect);\\n    normpos += 0.5;  // make up for Bokeh's offset\\n    normpos /= u_canvas_size / u_pixel_ratio;  // in 0..1\\n    gl_Position = vec4(normpos*2.0-1.0, 0.0, 1.0);\\n    gl_Position.y *= -1.0;\\n}\\n\"},\n",
       "      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.fragment_shader=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform sampler2D u_dash_atlas;\\n\\nuniform vec2 u_linecaps;\\nuniform float u_miter_limit;\\nuniform float u_linejoin;\\nuniform float u_antialias;\\nuniform float u_dash_phase;\\nuniform float u_dash_period;\\nuniform float u_dash_index;\\nuniform vec2 u_dash_caps;\\nuniform float u_closed;\\n\\nvarying vec4  v_color;\\nvarying vec2  v_segment;\\nvarying vec2  v_angles;\\nvarying vec2  v_texcoord;\\nvarying vec2  v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\n// Compute distance to cap ----------------------------------------------------\\nfloat cap( int type, float dx, float dy, float t, float linewidth )\\n{\\n    float d = 0.0;\\n    dx = abs(dx);\\n    dy = abs(dy);\\n    if      (type == 0)  discard;  // None\\n    else if (type == 1)  d = sqrt(dx*dx+dy*dy);  // Round\\n    else if (type == 3)  d = (dx+abs(dy));  // Triangle in\\n    else if (type == 2)  d = max(abs(dy),(t+dx-abs(dy)));  // Triangle out\\n    else if (type == 4)  d = max(dx,dy);  // Square\\n    else if (type == 5)  d = max(dx+t,dy);  // Butt\\n    return d;\\n}\\n\\n// Compute distance to join -------------------------------------------------\\nfloat join( in int type, in float d, in vec2 segment, in vec2 texcoord, in vec2 miter,\\n           in float linewidth )\\n{\\n    // texcoord.x is distance from start\\n    // texcoord.y is distance from centerline\\n    // segment.x and y indicate the limits (as for texcoord.x) for this segment\\n\\n    float dx = texcoord.x;\\n\\n    // Round join\\n    if( type == 1 ) {\\n        if (dx < segment.x) {\\n            d = max(d,length( texcoord - vec2(segment.x,0.0)));\\n            //d = length( texcoord - vec2(segment.x,0.0));\\n        } else if (dx > segment.y) {\\n            d = max(d,length( texcoord - vec2(segment.y,0.0)));\\n            //d = length( texcoord - vec2(segment.y,0.0));\\n        }\\n    }\\n    // Bevel join\\n    else if ( type == 2 ) {\\n        if (dx < segment.x) {\\n            vec2 x = texcoord - vec2(segment.x,0.0);\\n            d = max(d, max(abs(x.x), abs(x.y)));\\n\\n        } else if (dx > segment.y) {\\n            vec2 x = texcoord - vec2(segment.y,0.0);\\n            d = max(d, max(abs(x.x), abs(x.y)));\\n        }\\n        /*  Original code for bevel which does not work for us\\n        if( (dx < segment.x) ||  (dx > segment.y) )\\n            d = max(d, min(abs(x.x),abs(x.y)));\\n        */\\n    }\\n\\n    return d;\\n}\\n\\nvoid main()\\n{\\n    // If color is fully transparent we just discard the fragment\\n    if( v_color.a <= 0.0 ) {\\n        discard;\\n    }\\n\\n    // Test if dash pattern is the solid one (0)\\n    bool solid =  (u_dash_index == 0.0);\\n\\n    // Test if path is closed\\n    bool closed = (u_closed > 0.0);\\n\\n    vec4 color = v_color;\\n    float dx = v_texcoord.x;\\n    float dy = v_texcoord.y;\\n    float t = v_linewidth/2.0-u_antialias;\\n    float width = 1.0;  //v_linewidth; original code had dashes scale with line width, we do not\\n    float d = 0.0;\\n\\n    vec2 linecaps = u_linecaps;\\n    vec2 dash_caps = u_dash_caps;\\n    float line_start = 0.0;\\n    float line_stop = v_length;\\n\\n    // Apply miter limit; fragments too far into the miter are simply discarded\\n    if( (dx < v_segment.x) || (dx > v_segment.y) ) {\\n        float into_miter = max(v_segment.x - dx, dx - v_segment.y);\\n        if (into_miter > u_miter_limit*v_linewidth/2.0)\\n          discard;\\n    }\\n\\n    // Solid line --------------------------------------------------------------\\n    if( solid ) {\\n        d = abs(dy);\\n        if( (!closed) && (dx < line_start) ) {\\n            d = cap( int(u_linecaps.x), abs(dx), abs(dy), t, v_linewidth );\\n        }\\n        else if( (!closed) &&  (dx > line_stop) ) {\\n            d = cap( int(u_linecaps.y), abs(dx)-line_stop, abs(dy), t, v_linewidth );\\n        }\\n        else {\\n            d = join( int(u_linejoin), abs(dy), v_segment, v_texcoord, v_miter, v_linewidth );\\n        }\\n\\n    // Dash line --------------------------------------------------------------\\n    } else {\\n        float segment_start = v_segment.x;\\n        float segment_stop  = v_segment.y;\\n        float segment_center= (segment_start+segment_stop)/2.0;\\n        float freq          = u_dash_period*width;\\n        float u = mod( dx + u_dash_phase*width, freq);\\n        vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0;  // conversion to int-like\\n        float dash_center= tex.x * width;\\n        float dash_type  = tex.y;\\n        float _start = tex.z * width;\\n        float _stop  = tex.a * width;\\n        float dash_start = dx - u + _start;\\n        float dash_stop  = dx - u + _stop;\\n\\n        // Compute extents of the first dash (the one relative to v_segment.x)\\n        // Note: this could be computed in the vertex shader\\n        if( (dash_stop < segment_start) && (dash_caps.x != 5.0) ) {\\n            float u = mod(segment_start + u_dash_phase*width, freq);\\n            vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0;  // conversion to int-like\\n            dash_center= tex.x * width;\\n            //dash_type  = tex.y;\\n            float _start = tex.z * width;\\n            float _stop  = tex.a * width;\\n            dash_start = segment_start - u + _start;\\n            dash_stop = segment_start - u + _stop;\\n        }\\n\\n        // Compute extents of the last dash (the one relatives to v_segment.y)\\n        // Note: This could be computed in the vertex shader\\n        else if( (dash_start > segment_stop)  && (dash_caps.y != 5.0) ) {\\n            float u = mod(segment_stop + u_dash_phase*width, freq);\\n            vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0;  // conversion to int-like\\n            dash_center= tex.x * width;\\n            //dash_type  = tex.y;\\n            float _start = tex.z * width;\\n            float _stop  = tex.a * width;\\n            dash_start = segment_stop - u + _start;\\n            dash_stop  = segment_stop - u + _stop;\\n        }\\n\\n        // This test if the we are dealing with a discontinuous angle\\n        bool discontinuous = ((dx <  segment_center) && abs(v_angles.x) > THETA) ||\\n                             ((dx >= segment_center) && abs(v_angles.y) > THETA);\\n        //if( dx < line_start) discontinuous = false;\\n        //if( dx > line_stop)  discontinuous = false;\\n\\n        float d_join = join( int(u_linejoin), abs(dy),\\n                            v_segment, v_texcoord, v_miter, v_linewidth );\\n\\n        // When path is closed, we do not have room for linecaps, so we make room\\n        // by shortening the total length\\n        if (closed) {\\n             line_start += v_linewidth/2.0;\\n             line_stop  -= v_linewidth/2.0;\\n        }\\n\\n        // We also need to take antialias area into account\\n        //line_start += u_antialias;\\n        //line_stop  -= u_antialias;\\n\\n        // Check is dash stop is before line start\\n        if( dash_stop <= line_start ) {\\n            discard;\\n        }\\n        // Check is dash start is beyond line stop\\n        if( dash_start >= line_stop ) {\\n            discard;\\n        }\\n\\n        // Check if current dash start is beyond segment stop\\n        if( discontinuous ) {\\n            // Dash start is beyond segment, we discard\\n            if( (dash_start > segment_stop) ) {\\n                discard;\\n                //gl_FragColor = vec4(1.0,0.0,0.0,.25); return;\\n            }\\n\\n            // Dash stop is before segment, we discard\\n            if( (dash_stop < segment_start) ) {\\n                discard;  //gl_FragColor = vec4(0.0,1.0,0.0,.25); return;\\n            }\\n\\n            // Special case for round caps (nicer with this)\\n            if( dash_caps.x == 1.0 ) {\\n                if( (u > _stop) && (dash_stop > segment_stop )  && (abs(v_angles.y) < PI/2.0)) {\\n                    discard;\\n                }\\n            }\\n\\n            // Special case for round caps  (nicer with this)\\n            if( dash_caps.y == 1.0 ) {\\n                if( (u < _start) && (dash_start < segment_start )  && (abs(v_angles.x) < PI/2.0)) {\\n                    discard;\\n                }\\n            }\\n\\n            // Special case for triangle caps (in & out) and square\\n            // We make sure the cap stop at crossing frontier\\n            if( (dash_caps.x != 1.0) && (dash_caps.x != 5.0) ) {\\n                if( (dash_start < segment_start )  && (abs(v_angles.x) < PI/2.0) ) {\\n                    float a = v_angles.x/2.0;\\n                    float x = (segment_start-dx)*cos(a) - dy*sin(a);\\n                    float y = (segment_start-dx)*sin(a) + dy*cos(a);\\n                    if( x > 0.0 ) discard;\\n                    // We transform the cap into square to avoid holes\\n                    dash_caps.x = 4.0;\\n                }\\n            }\\n\\n            // Special case for triangle caps (in & out) and square\\n            // We make sure the cap stop at crossing frontier\\n            if( (dash_caps.y != 1.0) && (dash_caps.y != 5.0) ) {\\n                if( (dash_stop > segment_stop )  && (abs(v_angles.y) < PI/2.0) ) {\\n                    float a = v_angles.y/2.0;\\n                    float x = (dx-segment_stop)*cos(a) - dy*sin(a);\\n                    float y = (dx-segment_stop)*sin(a) + dy*cos(a);\\n                    if( x > 0.0 ) discard;\\n                    // We transform the caps into square to avoid holes\\n                    dash_caps.y = 4.0;\\n                }\\n            }\\n        }\\n\\n        // Line cap at start\\n        if( (dx < line_start) && (dash_start < line_start) && (dash_stop > line_start) ) {\\n            d = cap( int(linecaps.x), dx-line_start, dy, t, v_linewidth);\\n        }\\n        // Line cap at stop\\n        else if( (dx > line_stop) && (dash_stop > line_stop) && (dash_start < line_stop) ) {\\n            d = cap( int(linecaps.y), dx-line_stop, dy, t, v_linewidth);\\n        }\\n        // Dash cap left - dash_type = -1, 0 or 1, but there may be roundoff errors\\n        else if( dash_type < -0.5 ) {\\n            d = cap( int(dash_caps.y), abs(u-dash_center), dy, t, v_linewidth);\\n            if( (dx > line_start) && (dx < line_stop) )\\n                d = max(d,d_join);\\n        }\\n        // Dash cap right\\n        else if( dash_type > 0.5 ) {\\n            d = cap( int(dash_caps.x), abs(dash_center-u), dy, t, v_linewidth);\\n            if( (dx > line_start) && (dx < line_stop) )\\n                d = max(d,d_join);\\n        }\\n        // Dash body (plain)\\n        else {// if( dash_type > -0.5 &&  dash_type < 0.5) {\\n            d = abs(dy);\\n        }\\n\\n        // Line join\\n        if( (dx > line_start) && (dx < line_stop)) {\\n            if( (dx <= segment_start) && (dash_start <= segment_start)\\n                && (dash_stop >= segment_start) ) {\\n                d = d_join;\\n                // Antialias at outer border\\n                float angle = PI/2.+v_angles.x;\\n                float f = abs( (segment_start - dx)*cos(angle) - dy*sin(angle));\\n                d = max(f,d);\\n            }\\n            else if( (dx > segment_stop) && (dash_start <= segment_stop)\\n                     && (dash_stop >= segment_stop) ) {\\n                d = d_join;\\n                // Antialias at outer border\\n                float angle = PI/2.+v_angles.y;\\n                float f = abs((dx - segment_stop)*cos(angle) - dy*sin(angle));\\n                d = max(f,d);\\n            }\\n            else if( dx < (segment_start - v_linewidth/2.)) {\\n                discard;\\n            }\\n            else if( dx > (segment_stop + v_linewidth/2.)) {\\n                discard;\\n            }\\n        }\\n        else if( dx < (segment_start - v_linewidth/2.)) {\\n            discard;\\n        }\\n        else if( dx > (segment_stop + v_linewidth/2.)) {\\n            discard;\\n        }\\n    }\\n\\n    // Distance to border ------------------------------------------------------\\n    d = d - t;\\n    if( d < 0.0 ) {\\n        gl_FragColor = color;\\n    } else {\\n        d /= u_antialias;\\n        gl_FragColor = vec4(color.rgb, exp(-d*d)*color.a);\\n    }\\n}\\n\"},\n",
       "      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),l=e(93),_=e(100),n=s.__importStar(e(101)),o=s.__importStar(e(28)),a=e(88);class h extends l.XYGlyphView{_inner_loop(e,i,t,s,l){for(const _ of i)0!=_?isNaN(t[_]+s[_])?(e.closePath(),l.apply(e),e.beginPath()):e.lineTo(t[_],s[_]):(e.beginPath(),e.moveTo(t[_],s[_]));e.closePath(),l.call(e)}_render(e,i,{sx:t,sy:s}){this.visuals.fill.doit&&(this.visuals.fill.set_value(e),this._inner_loop(e,i,t,s,e.fill)),this.visuals.hatch.doit2(e,0,()=>this._inner_loop(e,i,t,s,e.fill),()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_value(e),this._inner_loop(e,i,t,s,e.stroke))}draw_legend_for_index(e,i,t){_.generic_area_legend(this.visuals,e,i,t)}_hit_point(e){const i=new a.Selection;return n.point_in_poly(e.sx,e.sy,this.sx,this.sy)&&(i.add_to_selected_glyphs(this.model),i.view=this),i}}t.PatchView=h,h.__name__=\"PatchView\";class r extends l.XYGlyph{constructor(e){super(e)}static init_Patch(){this.prototype.default_view=h,this.mixins([o.Line,o.Fill,o.Hatch])}}t.Patch=r,r.__name__=\"Patch\",r.init_Patch()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(24),n=e(112),a=i.__importStar(e(101)),_=i.__importStar(e(18)),h=e(88);class l extends n.AreaView{_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x1[r],n=this._x2[r],a=this._y[r];isNaN(i+n+a)||!isFinite(i+n+a)?e.add_empty():e.add(t(i,n),a,s(i,n),a)}}_inner(e,t,s,i,r){e.beginPath();for(let s=0,r=t.length;s<r;s++)e.lineTo(t[s],i[s]);for(let t=s.length-1;t>=0;t--)e.lineTo(s[t],i[t]);e.closePath(),r.call(e)}_render(e,t,{sx1:s,sx2:i,sy:r}){this.visuals.fill.doit&&(this.visuals.fill.set_value(e),this._inner(e,s,i,r,e.fill)),this.visuals.hatch.doit2(e,0,()=>this._inner(e,s,i,r,e.fill),()=>this.renderer.request_render())}_hit_point(e){const t=this.sy.length,s=new r.NumberArray(2*t),i=new r.NumberArray(2*t);for(let e=0,r=t;e<r;e++)s[e]=this.sx1[e],i[e]=this.sy[e],s[t+e]=this.sx2[t-e-1],i[t+e]=this.sy[t-e-1];const n=new h.Selection;return a.point_in_poly(e.sx,e.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}scenterxy(e){return[(this.sx1[e]+this.sx2[e])/2,this.sy[e]]}_map_data(){this.sx1=this.renderer.xscale.v_compute(this._x1),this.sx2=this.renderer.xscale.v_compute(this._x2),this.sy=this.renderer.yscale.v_compute(this._y)}}s.HAreaView=l,l.__name__=\"HAreaView\";class o extends n.Area{constructor(e){super(e)}static init_HArea(){this.prototype.default_view=l,this.define({x1:[_.XCoordinateSpec,{field:\"x1\"}],x2:[_.XCoordinateSpec,{field:\"x2\"}],y:[_.YCoordinateSpec,{field:\"y\"}]})}}s.HArea=o,o.__name__=\"HArea\",o.init_HArea()},\n",
       "      function _(e,_,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=e(1),r=e(94),t=e(100),n=a.__importStar(e(28));class s extends r.GlyphView{draw_legend_for_index(e,_,i){t.generic_area_legend(this.visuals,e,_,i)}}i.AreaView=s,s.__name__=\"AreaView\";class c extends r.Glyph{constructor(e){super(e)}static init_Area(){this.mixins([n.Fill,n.HatchVector])}}i.Area=c,c.__name__=\"Area\",c.init_Area()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(24),n=e(112),a=i.__importStar(e(101)),_=i.__importStar(e(18)),h=e(88);class l extends n.AreaView{_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x[r],n=this._y1[r],a=this._y2[r];isNaN(i+n+a)||!isFinite(i+n+a)?e.add_empty():e.add(i,t(n,a),i,s(n,a))}}_inner(e,t,s,i,r){e.beginPath();for(let i=0,r=s.length;i<r;i++)e.lineTo(t[i],s[i]);for(let s=i.length-1;s>=0;s--)e.lineTo(t[s],i[s]);e.closePath(),r.call(e)}_render(e,t,{sx:s,sy1:i,sy2:r}){this.visuals.fill.doit&&(this.visuals.fill.set_value(e),this._inner(e,s,i,r,e.fill)),this.visuals.hatch.doit2(e,0,()=>this._inner(e,s,i,r,e.fill),()=>this.renderer.request_render())}scenterxy(e){return[this.sx[e],(this.sy1[e]+this.sy2[e])/2]}_hit_point(e){const t=this.sx.length,s=new r.NumberArray(2*t),i=new r.NumberArray(2*t);for(let e=0,r=t;e<r;e++)s[e]=this.sx[e],i[e]=this.sy1[e],s[t+e]=this.sx[t-e-1],i[t+e]=this.sy2[t-e-1];const n=new h.Selection;return a.point_in_poly(e.sx,e.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sy1=this.renderer.yscale.v_compute(this._y1),this.sy2=this.renderer.yscale.v_compute(this._y2)}}s.VAreaView=l,l.__name__=\"VAreaView\";class o extends n.Area{constructor(e){super(e)}static init_VArea(){this.prototype.default_view=l,this.define({x:[_.XCoordinateSpec,{field:\"x\"}],y1:[_.YCoordinateSpec,{field:\"y1\"}],y2:[_.YCoordinateSpec,{field:\"y2\"}]})}}s.VArea=o,o.__name__=\"VArea\",o.init_VArea()},\n",
       "      function _(i,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=i(1),n=i(81),c=t.__importStar(i(18)),o=i(88),r=i(24),_=i(86);class a extends n.Model{constructor(i){super(i)}static init_CDSView(){this.define({filters:[c.Array,[]],source:[c.Instance]}),this.internal({indices:[c.Any],indices_map:[c.Any,{}],masked:[c.Any,null]})}initialize(){super.initialize(),this.compute_indices()}connect_signals(){super.connect_signals(),this.connect(this.properties.filters.change,()=>{this.compute_indices(),this.change.emit()});const i=()=>{const i=()=>this.compute_indices();null!=this.source&&(this.connect(this.source.change,i),this.source instanceof _.ColumnarDataSource&&(this.connect(this.source.streaming,i),this.connect(this.source.patching,i)))};let e=null!=this.source;e?i():this.connect(this.properties.source.change,()=>{e||(i(),e=!0)})}compute_indices(){var i;const{source:e}=this;if(null==e)return;const s=null!==(i=e.get_length())&&void 0!==i?i:1,t=r.Indices.all_set(s);for(const i of this.filters)t.intersect(i.compute_indices(e));this.indices=t,this._indices=[...t],this.indices_map_to_subset()}indices_map_to_subset(){this.indices_map={};for(let i=0;i<this._indices.length;i++)this.indices_map[this._indices[i]]=i}convert_selection_from_subset(i){const e=i.indices.map(i=>this._indices[i]);return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_selection_to_subset(i){const e=i.indices.map(i=>this.indices_map[i]);return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_indices_from_subset(i){return i.map(i=>this._indices[i])}}s.CDSView=a,a.__name__=\"CDSView\",a.init_CDSView()},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(9);async function i(e,n,t){const o=new e(Object.assign(Object.assign({},t),{model:n}));return o.initialize(),await o.lazy_initialize(),o}t.build_view=async function(e,n={parent:null},t=(e=>e.default_view)){const o=await i(t(e),e,n);return o.connect_signals(),o},t.build_views=async function(e,n,t={parent:null},s=(e=>e.default_view)){const c=o.difference([...e.keys()],n);for(const n of c)e.get(n).remove(),e.delete(n);const a=[],f=n.filter(n=>!e.has(n));for(const n of f){const o=await i(s(n),n,t);e.set(n,o),a.push(o)}for(const e of a)e.connect_signals();return a},t.remove_views=function(e){for(const[n,t]of e)t.remove(),e.delete(n)}},\n",
       "      function _(e,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const t=e(1),s=e(91),i=e(117),a=t.__importStar(e(18)),o=e(115),_=e(11);class d extends s.DataRendererView{async lazy_initialize(){await super.lazy_initialize();const e=this.model;let n=null,r=null;const t={v_compute(r){_.assert(null==n);const[t]=n=e.layout_provider.get_edge_coordinates(r);return t}},s={v_compute(e){_.assert(null!=n);const[,r]=n;return n=null,r}},i={v_compute(n){_.assert(null==r);const[t]=r=e.layout_provider.get_node_coordinates(n);return t}},a={v_compute(e){_.assert(null!=r);const[,n]=r;return r=null,n}},{edge_renderer:d,node_renderer:l}=this.model;d.glyph.xs={expr:t},d.glyph.ys={expr:s},l.glyph.x={expr:i},l.glyph.y={expr:a};const{parent:c}=this;this.edge_view=await o.build_view(d,{parent:c}),this.node_view=await o.build_view(l,{parent:c})}connect_signals(){super.connect_signals(),this.connect(this.model.layout_provider.change,()=>{this.edge_view.set_data(!1),this.node_view.set_data(!1),this.request_render()})}remove(){this.edge_view.remove(),this.node_view.remove(),super.remove()}_render(){this.edge_view.render(),this.node_view.render()}}r.GraphRendererView=d,d.__name__=\"GraphRendererView\";class l extends s.DataRenderer{constructor(e){super(e)}static init_GraphRenderer(){this.prototype.default_view=d,this.define({layout_provider:[a.Instance],node_renderer:[a.Instance],edge_renderer:[a.Instance],selection_policy:[a.Instance,()=>new i.NodesOnly],inspection_policy:[a.Instance,()=>new i.NodesOnly]})}get_selection_manager(){return this.node_renderer.data_source.selection_manager}}r.GraphRenderer=l,l.__name__=\"GraphRenderer\",l.init_GraphRenderer()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const d=e(81),s=e(12),o=e(9),_=e(88);class i extends d.Model{constructor(e){super(e)}_hit_test_nodes(e,t){if(!t.model.visible)return null;const n=t.node_view.glyph.hit_test(e);return null==n?null:t.node_view.model.view.convert_selection_from_subset(n)}_hit_test_edges(e,t){if(!t.model.visible)return null;const n=t.edge_view.glyph.hit_test(e);return null==n?null:t.edge_view.model.view.convert_selection_from_subset(n)}}n.GraphHitTestPolicy=i,i.__name__=\"GraphHitTestPolicy\";class r extends i{constructor(e){super(e)}hit_test(e,t){return this._hit_test_nodes(e,t)}do_selection(e,t,n,d){if(null==e)return!1;const s=t.node_renderer.data_source.selected;return s.update(e,n,d),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,n,d,s){if(null==e)return!1;const o=n.model.get_selection_manager().get_or_create_inspector(n.node_view.model);return o.update(e,d,s),n.node_view.model.data_source.setv({inspected:o},{silent:!0}),n.node_view.model.data_source.inspect.emit([n.node_view,{geometry:t}]),!o.is_empty()}}n.NodesOnly=r,r.__name__=\"NodesOnly\";class c extends i{constructor(e){super(e)}hit_test(e,t){return this._hit_test_nodes(e,t)}get_linked_edges(e,t,n){let d=[];\"selection\"==n?d=e.selected.indices.map(t=>e.data.index[t]):\"inspection\"==n&&(d=e.inspected.indices.map(t=>e.data.index[t]));const s=[];for(let e=0;e<t.data.start.length;e++)(o.contains(d,t.data.start[e])||o.contains(d,t.data.end[e]))&&s.push(e);const i=new _.Selection;for(const e of s)i.multiline_indices[e]=[0];return i.indices=s,i}do_selection(e,t,n,d){if(null==e)return!1;const s=t.node_renderer.data_source.selected;s.update(e,n,d);const o=t.edge_renderer.data_source.selected,_=this.get_linked_edges(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(_,n,d),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,n,d,s){if(null==e)return!1;const o=n.node_view.model.data_source.selection_manager.get_or_create_inspector(n.node_view.model);o.update(e,d,s),n.node_view.model.data_source.setv({inspected:o},{silent:!0});const _=n.edge_view.model.data_source.selection_manager.get_or_create_inspector(n.edge_view.model),i=this.get_linked_edges(n.node_view.model.data_source,n.edge_view.model.data_source,\"inspection\");return _.update(i,d,s),n.edge_view.model.data_source.setv({inspected:_},{silent:!0}),n.node_view.model.data_source.inspect.emit([n.node_view,{geometry:t}]),!o.is_empty()}}n.NodesAndLinkedEdges=c,c.__name__=\"NodesAndLinkedEdges\";class a extends i{constructor(e){super(e)}hit_test(e,t){return this._hit_test_edges(e,t)}get_linked_nodes(e,t,n){let d=[];\"selection\"==n?d=t.selected.indices:\"inspection\"==n&&(d=t.inspected.indices);const i=[];for(const e of d)i.push(t.data.start[e]),i.push(t.data.end[e]);const r=o.uniq(i).map(t=>s.indexOf(e.data.index,t));return new _.Selection({indices:r})}do_selection(e,t,n,d){if(null==e)return!1;const s=t.edge_renderer.data_source.selected;s.update(e,n,d);const o=t.node_renderer.data_source.selected,_=this.get_linked_nodes(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(_,n,d),t.edge_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,n,d,s){if(null==e)return!1;const o=n.edge_view.model.data_source.selection_manager.get_or_create_inspector(n.edge_view.model);o.update(e,d,s),n.edge_view.model.data_source.setv({inspected:o},{silent:!0});const _=n.node_view.model.data_source.selection_manager.get_or_create_inspector(n.node_view.model),i=this.get_linked_nodes(n.node_view.model.data_source,n.edge_view.model.data_source,\"inspection\");return _.update(i,d,s),n.node_view.model.data_source.setv({inspected:_},{silent:!0}),n.edge_view.model.data_source.inspect.emit([n.edge_view,{geometry:t}]),!o.is_empty()}}n.EdgesAndLinkedNodes=a,a.__name__=\"EdgesAndLinkedNodes\"},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=e(81);class o extends s.Model{do_selection(e,t,n,s){return null!==e&&(t.selected.update(e,n,s),t._select.emit(),!t.selected.is_empty())}}n.SelectionPolicy=o,o.__name__=\"SelectionPolicy\";class r extends o{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!==t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_intersection(t);return e}return null}}n.IntersectRenderers=r,r.__name__=\"IntersectRenderers\";class c extends o{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!==t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_union(t);return e}return null}}n.UnionRenderers=c,c.__name__=\"UnionRenderers\"},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.concat=function(t,...e){let n=t.length;for(const t of e)n+=t.length;const o=new t.constructor(n);o.set(t,0);let c=t.length;for(const t of e)o.set(t,c),c+=t.length;return o}},\n",
       "      function _(n,o,e){function t(...n){const o=new Set;for(const e of n)for(const n of e)o.add(n);return o}Object.defineProperty(e,\"__esModule\",{value:!0}),e.union=t,e.intersection=function(n,...o){const e=new Set;n:for(const t of n){for(const n of o)if(!n.has(t))continue n;e.add(t)}return e},e.difference=function(n,...o){const e=new Set(n);for(const n of t(...o))e.delete(n);return e}},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(14);class o{constructor(e){this.document=e}}s.DocumentEvent=o,o.__name__=\"DocumentEvent\";class r extends o{constructor(e,t,s){super(e),this.events=t,this.setter_id=s}}s.DocumentEventBatch=r,r.__name__=\"DocumentEventBatch\";class d extends o{}s.DocumentChangedEvent=d,d.__name__=\"DocumentChangedEvent\";class _ extends d{constructor(e,t,s){super(e),this.msg_type=t,this.msg_data=s}json(e){const t=this.msg_data,s=n.HasProps._value_to_json(t),o=new Set;return n.HasProps._value_record_references(t,o,{recursive:!0}),{kind:\"MessageSent\",msg_type:this.msg_type,msg_data:s}}}s.MessageSentEvent=_,_.__name__=\"MessageSentEvent\";class i extends d{constructor(e,t,s,n,o,r,d){super(e),this.model=t,this.attr=s,this.old=n,this.new_=o,this.setter_id=r,this.hint=d}json(e){if(\"id\"===this.attr)throw new Error(\"'id' field should never change, whatever code just set it is wrong\");if(null!=this.hint)return this.hint.json(e);const t=this.new_,s=n.HasProps._value_to_json(t),o=new Set;n.HasProps._value_record_references(t,o,{recursive:!0}),o.has(this.model)&&this.model!==t&&o.delete(this.model);for(const t of o)e.add(t);return{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:s}}}s.ModelChangedEvent=i,i.__name__=\"ModelChangedEvent\";class a extends d{constructor(e,t,s){super(e),this.column_source=t,this.patches=s}json(e){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}}}s.ColumnsPatchedEvent=a,a.__name__=\"ColumnsPatchedEvent\";class c extends d{constructor(e,t,s,n){super(e),this.column_source=t,this.data=s,this.rollover=n}json(e){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}}}s.ColumnsStreamedEvent=c,c.__name__=\"ColumnsStreamedEvent\";class h extends d{constructor(e,t,s){super(e),this.title=t,this.setter_id=s}json(e){return{kind:\"TitleChanged\",title:this.title}}}s.TitleChangedEvent=h,h.__name__=\"TitleChangedEvent\";class u extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}json(e){return n.HasProps._value_record_references(this.model,e,{recursive:!0}),{kind:\"RootAdded\",model:this.model.ref()}}}s.RootAddedEvent=u,u.__name__=\"RootAddedEvent\";class l extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}json(e){return{kind:\"RootRemoved\",model:this.model.ref()}}}s.RootRemovedEvent=l,l.__name__=\"RootRemovedEvent\"},\n",
       "      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1),l=e(123),_=i.__importStar(e(28));class o extends l.UpperLowerView{connect_signals(){super.connect_signals();const e=()=>this.set_data(this.model.source);this.connect(this.model.change,e),this.connect(this.model.source.streaming,e),this.connect(this.model.source.patching,e),this.connect(this.model.source.change,e)}_render(){this._map_data();const{ctx:e}=this.layer;e.beginPath(),e.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let s=0,t=this._lower_sx.length;s<t;s++)e.lineTo(this._lower_sx[s],this._lower_sy[s]);for(let s=this._upper_sx.length-1;s>=0;s--)e.lineTo(this._upper_sx[s],this._upper_sy[s]);e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(e),e.fill()),e.beginPath(),e.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let s=0,t=this._lower_sx.length;s<t;s++)e.lineTo(this._lower_sx[s],this._lower_sy[s]);this.visuals.line.doit&&(this.visuals.line.set_value(e),e.stroke()),e.beginPath(),e.moveTo(this._upper_sx[0],this._upper_sy[0]);for(let s=0,t=this._upper_sx.length;s<t;s++)e.lineTo(this._upper_sx[s],this._upper_sy[s]);this.visuals.line.doit&&(this.visuals.line.set_value(e),e.stroke())}}t.BandView=o,o.__name__=\"BandView\";class n extends l.UpperLower{constructor(e){super(e)}static init_Band(){this.prototype.default_view=o,this.mixins([_.Line,_.Fill]),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}}t.Band=n,n.__name__=\"Band\",n.init_Band()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),o=e(36),r=e(85),p=s.__importStar(e(18));class _ extends o.AnnotationView{initialize(){super.initialize(),this.set_data(this.model.source)}set_data(e){super.set_data(e),this.visuals.warm_cache(e),this.plot_view.request_render()}_map_data(){const{frame:e}=this.plot_view,t=this.model.dimension,i=this.coordinates.x_scale,s=this.coordinates.y_scale,o=\"height\"==t?s:i,r=\"height\"==t?i:s,p=\"height\"==t?e.yview:e.xview,_=\"height\"==t?e.xview:e.yview;let a,n,h;a=\"data\"==this.model.properties.lower.units?o.v_compute(this._lower):p.v_compute(this._lower),n=\"data\"==this.model.properties.upper.units?o.v_compute(this._upper):p.v_compute(this._upper),h=\"data\"==this.model.properties.base.units?r.v_compute(this._base):_.v_compute(this._base);const[c,u]=\"height\"==t?[1,0]:[0,1],l=[a,h],w=[n,h];this._lower_sx=l[c],this._lower_sy=l[u],this._upper_sx=w[c],this._upper_sy=w[u]}}i.UpperLowerView=_,_.__name__=\"UpperLowerView\";class a extends o.Annotation{constructor(e){super(e)}static init_UpperLower(){this.define({lower:[p.DistanceSpec],upper:[p.DistanceSpec],base:[p.DistanceSpec],dimension:[p.Dimension,\"height\"],source:[p.Instance,()=>new r.ColumnDataSource]})}}i.UpperLower=a,a.__name__=\"UpperLower\",a.init_UpperLower()},\n",
       "      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const e=t(1),o=t(36),n=t(15),l=e.__importStar(t(28)),a=e.__importStar(t(18)),h=t(79);s.EDGE_TOLERANCE=2.5;class r extends o.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_paint(this)),this.connect(this.model.data_update,()=>this.plot_view.request_paint(this))}_render(){if(null==this.model.left&&null==this.model.right&&null==this.model.top&&null==this.model.bottom)return;const{frame:t}=this.plot_view,i=this.coordinates.x_scale,s=this.coordinates.y_scale,e=(t,i,s,e,o)=>{let n;return n=null!=t?this.model.screen?t:\"data\"==i?s.compute(t):e.compute(t):o,n};this.sleft=e(this.model.left,this.model.left_units,i,t.xview,t.bbox.left),this.sright=e(this.model.right,this.model.right_units,i,t.xview,t.bbox.right),this.stop=e(this.model.top,this.model.top_units,s,t.yview,t.bbox.top),this.sbottom=e(this.model.bottom,this.model.bottom_units,s,t.yview,t.bbox.bottom),this._paint_box(this.sleft,this.sright,this.sbottom,this.stop)}_paint_box(t,i,s,e){const{ctx:o}=this.layer;o.save(),o.beginPath(),o.rect(t,e,i-t,s-e),this.visuals.fill.doit&&(this.visuals.fill.set_value(o),o.fill()),this.visuals.line.doit&&(this.visuals.line.set_value(o),o.stroke()),o.restore()}interactive_bbox(){const t=this.model.properties.line_width.value()+s.EDGE_TOLERANCE;return new h.BBox({x0:this.sleft-t,y0:this.stop-t,x1:this.sright+t,y1:this.sbottom+t})}interactive_hit(t,i){if(null==this.model.in_cursor)return!1;return this.interactive_bbox().contains(t,i)}cursor(t,i){return Math.abs(t-this.sleft)<3||Math.abs(t-this.sright)<3?this.model.ew_cursor:Math.abs(i-this.sbottom)<3||Math.abs(i-this.stop)<3?this.model.ns_cursor:t>this.sleft&&t<this.sright&&i>this.stop&&i<this.sbottom?this.model.in_cursor:null}}s.BoxAnnotationView=r,r.__name__=\"BoxAnnotationView\";class u extends o.Annotation{constructor(t){super(t)}static init_BoxAnnotation(){this.prototype.default_view=r,this.mixins([l.Line,l.Fill]),this.define({render_mode:[a.RenderMode,\"canvas\"],top:[a.Number,null],top_units:[a.SpatialUnits,\"data\"],bottom:[a.Number,null],bottom_units:[a.SpatialUnits,\"data\"],left:[a.Number,null],left_units:[a.SpatialUnits,\"data\"],right:[a.Number,null],right_units:[a.SpatialUnits,\"data\"]}),this.internal({screen:[a.Boolean,!1],ew_cursor:[a.String,null],ns_cursor:[a.String,null],in_cursor:[a.String,null]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}initialize(){super.initialize(),this.data_update=new n.Signal0(this,\"data_update\")}update({left:t,right:i,top:s,bottom:e}){this.setv({left:t,right:i,top:s,bottom:e,screen:!0},{silent:!0}),this.data_update.emit()}}s.BoxAnnotation=u,u.__name__=\"BoxAnnotation\",u.init_BoxAnnotation()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=t(1),a=t(36),s=t(126),r=t(130),n=t(132),l=t(145),_=t(156),h=t(157),m=t(158),d=o.__importStar(t(28)),c=o.__importStar(t(18)),u=o.__importStar(t(159)),g=t(9),p=t(12),f=t(8),b=t(11);class v extends a.AnnotationView{initialize(){super.initialize(),this._set_canvas_image()}connect_signals(){super.connect_signals(),this.connect(this.model.ticker.change,()=>this.plot_view.request_render()),this.connect(this.model.formatter.change,()=>this.plot_view.request_render()),null!=this.model.color_mapper&&this.connect(this.model.color_mapper.change,()=>{this._set_canvas_image(),this.plot_view.request_render()})}_get_size(){if(null==this.model.color_mapper)return{width:0,height:0};{const{width:t,height:e}=this.compute_legend_dimensions();return{width:t,height:e}}}_set_canvas_image(){if(null==this.model.color_mapper)return;let t,e,{palette:i}=this.model.color_mapper;switch(\"vertical\"==this.model.orientation&&(i=g.reversed(i)),this.model.orientation){case\"vertical\":[t,e]=[1,i.length];break;case\"horizontal\":[t,e]=[i.length,1]}const o=document.createElement(\"canvas\");o.width=t,o.height=e;const a=o.getContext(\"2d\"),s=a.getImageData(0,0,t,e),r=new n.LinearColorMapper({palette:i}).rgba_mapper.v_compute(g.range(0,i.length));s.data.set(r),a.putImageData(s,0,0),this.image=o}compute_legend_dimensions(){const t=this._computed_image_dimensions(),[e,i]=[t.height,t.width],o=this._get_label_extent(),a=this._title_extent(),s=this._tick_extent(),{padding:r}=this.model;let n,l;switch(this.model.orientation){case\"vertical\":n=e+a+2*r,l=i+s+o+2*r;break;case\"horizontal\":n=e+a+s+o+2*r,l=i+2*r}return{width:l,height:n}}compute_legend_location(){const t=this.compute_legend_dimensions(),[e,i]=[t.height,t.width],o=this.model.margin,a=null!=this.panel?this.panel:this.plot_view.frame,[s,r]=a.bbox.ranges,{location:n}=this.model;let l,_;if(f.isString(n))switch(n){case\"top_left\":l=s.start+o,_=r.start+o;break;case\"top_center\":l=(s.end+s.start)/2-i/2,_=r.start+o;break;case\"top_right\":l=s.end-o-i,_=r.start+o;break;case\"bottom_right\":l=s.end-o-i,_=r.end-o-e;break;case\"bottom_center\":l=(s.end+s.start)/2-i/2,_=r.end-o-e;break;case\"bottom_left\":l=s.start+o,_=r.end-o-e;break;case\"center_left\":l=s.start+o,_=(r.end+r.start)/2-e/2;break;case\"center\":l=(s.end+s.start)/2-i/2,_=(r.end+r.start)/2-e/2;break;case\"center_right\":l=s.end-o-i,_=(r.end+r.start)/2-e/2}else if(f.isArray(n)&&2==n.length){const[t,i]=n;l=a.xview.compute(t),_=a.yview.compute(i)-e}else b.unreachable();return{sx:l,sy:_}}_render(){if(null==this.model.color_mapper)return;const{ctx:t}=this.layer;t.save();const{sx:e,sy:i}=this.compute_legend_location();t.translate(e,i),this._draw_bbox(t);const o=this._get_image_offset();t.translate(o.x,o.y),this._draw_image(t);const a=this.tick_info();this._draw_major_ticks(t,a),this._draw_minor_ticks(t,a),this._draw_major_labels(t,a),this.model.title&&this._draw_title(t),t.restore()}_draw_bbox(t){const e=this.compute_legend_dimensions();t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(0,0,e.width,e.height)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()}_draw_image(t){const e=this._computed_image_dimensions();t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this.image,0,0,e.width,e.height),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()}_draw_major_ticks(t,e){if(!this.visuals.major_tick_line.doit)return;const[i,o]=this._normals(),a=this._computed_image_dimensions(),[s,r]=[a.width*i,a.height*o],[n,l]=e.coords.major,_=this.model.major_tick_in,h=this.model.major_tick_out;t.save(),t.translate(s,r),this.visuals.major_tick_line.set_value(t);for(let e=0,a=n.length;e<a;e++)t.beginPath(),t.moveTo(Math.round(n[e]+i*h),Math.round(l[e]+o*h)),t.lineTo(Math.round(n[e]-i*_),Math.round(l[e]-o*_)),t.stroke();t.restore()}_draw_minor_ticks(t,e){if(!this.visuals.minor_tick_line.doit)return;const[i,o]=this._normals(),a=this._computed_image_dimensions(),[s,r]=[a.width*i,a.height*o],[n,l]=e.coords.minor,_=this.model.minor_tick_in,h=this.model.minor_tick_out;t.save(),t.translate(s,r),this.visuals.minor_tick_line.set_value(t);for(let e=0,a=n.length;e<a;e++)t.beginPath(),t.moveTo(Math.round(n[e]+i*h),Math.round(l[e]+o*h)),t.lineTo(Math.round(n[e]-i*_),Math.round(l[e]-o*_)),t.stroke();t.restore()}_draw_major_labels(t,e){if(!this.visuals.major_label_text.doit)return;const[i,o]=this._normals(),a=this._computed_image_dimensions(),[s,r]=[a.width*i,a.height*o],n=this.model.label_standoff+this._tick_extent(),[l,_]=[n*i,n*o],[h,m]=e.coords.major,d=e.labels.major;this.visuals.major_label_text.set_value(t),t.save(),t.translate(s+l,r+_);for(let e=0,a=h.length;e<a;e++)t.fillText(d[e],Math.round(h[e]+i*this.model.label_standoff),Math.round(m[e]+o*this.model.label_standoff));t.restore()}_draw_title(t){this.visuals.title_text.doit&&(t.save(),this.visuals.title_text.set_value(t),t.fillText(this.model.title,0,-this.model.title_standoff),t.restore())}_get_label_extent(){const t=this.tick_info().labels.major;let e;if(g.is_empty(t))e=0;else{const{ctx:i}=this.layer;switch(i.save(),this.visuals.major_label_text.set_value(i),this.model.orientation){case\"vertical\":e=g.max(t.map(t=>i.measureText(t.toString()).width));break;case\"horizontal\":e=u.measure_font(this.visuals.major_label_text.font_value()).height}e+=this.model.label_standoff,i.restore()}return e}_get_image_offset(){return{x:this.model.padding,y:this.model.padding+this._title_extent()}}_normals(){return\"vertical\"==this.model.orientation?[1,0]:[0,1]}_title_extent(){const t=this.model.title_text_font+\" \"+this.model.title_text_font_size+\" \"+this.model.title_text_font_style;return this.model.title?u.measure_font(t).height+this.model.title_standoff:0}_tick_extent(){return g.max([this.model.major_tick_out,this.model.minor_tick_out])}_computed_image_dimensions(){const t=this.plot_view.frame.bbox.height,e=this.plot_view.frame.bbox.width,i=this._title_extent();let o,a;switch(this.model.orientation){case\"vertical\":\"auto\"==this.model.height?null!=this.panel?o=t-2*this.model.padding-i:(o=g.max([25*this.model.color_mapper.palette.length,.3*t]),o=g.min([o,.8*t-2*this.model.padding-i])):o=this.model.height,a=\"auto\"==this.model.width?25:this.model.width;break;case\"horizontal\":o=\"auto\"==this.model.height?25:this.model.height,\"auto\"==this.model.width?null!=this.panel?a=e-2*this.model.padding:(a=g.max([25*this.model.color_mapper.palette.length,.3*e]),a=g.min([a,.8*e-2*this.model.padding])):a=this.model.width}return{width:a,height:o}}_tick_coordinate_scale(t){const e={source_range:new m.Range1d({start:this.model.color_mapper.metrics.min,end:this.model.color_mapper.metrics.max}),target_range:new m.Range1d({start:0,end:t})},{color_mapper:i}=this.model;if(i instanceof n.LinearColorMapper)return new l.LinearScale(e);if(i instanceof n.LogColorMapper)return new h.LogScale(e);if(i instanceof n.ScanningColorMapper){const{binning:t}=i.metrics;return new _.LinearInterpolationScale(Object.assign(Object.assign({},e),{binning:t}))}b.unreachable()}_format_major_labels(t,e){const i=this.model.formatter.doFormat(t,null);for(let t=0,o=e.length;t<o;t++)e[t]in this.model.major_label_overrides&&(i[t]=this.model.major_label_overrides[e[t]]);return i}tick_info(){const t=this._computed_image_dimensions();let e;switch(this.model.orientation){case\"vertical\":e=t.height;break;case\"horizontal\":e=t.width}const i=this._tick_coordinate_scale(e),[o,a]=this._normals(),[s,r]=[this.model.color_mapper.metrics.min,this.model.color_mapper.metrics.max],n=this.model.ticker.get_ticks(s,r,null,null,this.model.ticker.desired_num_ticks),l=n.major,_=n.minor,h=[[],[]],m=[[],[]];for(let t=0,e=l.length;t<e;t++)l[t]<s||l[t]>r||(h[o].push(l[t]),h[a].push(0));for(let t=0,e=_.length;t<e;t++)_[t]<s||_[t]>r||(m[o].push(_[t]),m[a].push(0));const d={major:this._format_major_labels(h[o],l)},c={major:[[],[]],minor:[[],[]]};return c.major[o]=i.v_compute(h[o]),c.minor[o]=i.v_compute(m[o]),c.major[a]=h[a],c.minor[a]=m[a],\"vertical\"==this.model.orientation&&(c.major[o]=p.map(c.major[o],t=>e-t),c.minor[o]=p.map(c.minor[o],t=>e-t)),{coords:c,labels:d}}}i.ColorBarView=v,v.__name__=\"ColorBarView\";class w extends a.Annotation{constructor(t){super(t)}static init_ColorBar(){this.prototype.default_view=v,this.mixins([[\"major_label_\",d.Text],[\"title_\",d.Text],[\"major_tick_\",d.Line],[\"minor_tick_\",d.Line],[\"border_\",d.Line],[\"bar_\",d.Line],[\"background_\",d.Fill]]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,()=>new s.BasicTicker],formatter:[c.Instance,()=>new r.BasicTickFormatter],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"11px\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}}i.ColorBar=w,w.__name__=\"ColorBar\",w.init_ColorBar()},\n",
       "      function _(e,c,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(127);class r extends i.AdaptiveTicker{constructor(e){super(e)}}s.BasicTicker=r,r.__name__=\"BasicTicker\"},\n",
       "      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const a=t(1),s=t(128),n=t(9),r=a.__importStar(t(18));class _ extends s.ContinuousTicker{constructor(t){super(t)}static init_AdaptiveTicker(){this.define({base:[r.Number,10],mantissas:[r.Array,[1,2,5]],min_interval:[r.Number,0],max_interval:[r.Number]})}initialize(){super.initialize();const t=n.nth(this.mantissas,-1)/this.base,i=n.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t,...this.mantissas,i],this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()}get_interval(t,i,e){const a=i-t,s=this.get_ideal_interval(t,i,e),r=Math.floor(function(t,i=Math.E){return Math.log(t)/Math.log(i)}(s/this.base_factor,this.base)),_=this.base**r*this.base_factor,h=this.extended_mantissas,m=h.map(t=>Math.abs(e-a/(t*_))),o=h[n.argmin(m)];return c=o*_,l=this.get_min_interval(),u=this.get_max_interval(),Math.max(l,Math.min(u,c));var c,l,u}}e.AdaptiveTicker=_,_.__name__=\"AdaptiveTicker\",_.init_AdaptiveTicker()},\n",
       "      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(1),r=t(129),s=n.__importStar(t(18)),o=t(9);class _ extends r.Ticker{constructor(t){super(t)}static init_ContinuousTicker(){this.define({num_minor_ticks:[s.Number,5],desired_num_ticks:[s.Number,6]})}get_ticks(t,i,e,n,r){return this.get_ticks_no_defaults(t,i,n,this.desired_num_ticks)}get_ticks_no_defaults(t,i,e,n){const r=this.get_interval(t,i,n),s=Math.floor(t/r),_=Math.ceil(i/r);let c;c=isFinite(s)&&isFinite(_)?o.range(s,_+1):[];const u=c.map(t=>t*r).filter(e=>t<=e&&e<=i),a=this.num_minor_ticks,l=[];if(a>0&&u.length>0){const e=r/a,n=o.range(0,a).map(t=>t*e);for(const e of n.slice(1)){const n=u[0]-e;t<=n&&n<=i&&l.push(n)}for(const e of u)for(const r of n){const n=e+r;t<=n&&n<=i&&l.push(n)}}return{major:u,minor:l}}get_min_interval(){return this.min_interval}get_max_interval(){return null!=this.max_interval?this.max_interval:1/0}get_ideal_interval(t,i,e){return(i-t)/e}}e.ContinuousTicker=_,_.__name__=\"ContinuousTicker\",_.init_ContinuousTicker()},\n",
       "      function _(e,c,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(81);class r extends o.Model{constructor(e){super(e)}}n.Ticker=r,r.__name__=\"Ticker\"},\n",
       "      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=i(1),s=i(131),n=r.__importStar(i(18));class o extends s.TickFormatter{constructor(i){super(i),this.last_precision=3}static init_BasicTickFormatter(){this.define({precision:[n.Any,\"auto\"],use_scientific:[n.Boolean,!0],power_limit_high:[n.Number,5],power_limit_low:[n.Number,-3]})}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}_need_sci(i){if(!this.use_scientific)return!1;const{scientific_limit_high:t}=this,{scientific_limit_low:e}=this,r=i.length<2?0:Math.abs(i[1]-i[0])/1e4;for(const s of i){const i=Math.abs(s);if(!(i<=r)&&(i>=t||i<=e))return!0}return!1}_format_with_precision(i,t,e){const r=new Array(i.length);if(t)for(let t=0,s=i.length;t<s;t++)r[t]=i[t].toExponential(e);else for(let t=0,s=i.length;t<s;t++)r[t]=i[t].toFixed(e).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");return r}_auto_precision(i,t){const e=new Array(i.length),r=this.last_precision<=15;i:for(let s=this.last_precision;r?s<=15:s>=1;r?s++:s--){if(t){e[0]=i[0].toExponential(s);for(let t=1;t<i.length;t++)if(e[t]==e[t-1])continue i;this.last_precision=s;break}e[0]=i[0].toFixed(s).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");for(let t=1;t<i.length;t++)if(e[t]=i[t].toFixed(s).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),e[t]==e[t-1])continue i;this.last_precision=s;break}return this.last_precision}doFormat(i,t){if(0==i.length)return[];const e=this._need_sci(i),r=\"auto\"==this.precision?this._auto_precision(i,e):this.precision;return this._format_with_precision(i,e,r)}}e.BasicTickFormatter=o,o.__name__=\"BasicTickFormatter\",o.init_BasicTickFormatter()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(81);class c extends r.Model{constructor(e){super(e)}}o.TickFormatter=c,c.__name__=\"TickFormatter\"},\n",
       "      function _(r,a,o){Object.defineProperty(o,\"__esModule\",{value:!0});var e=r(133);o.CategoricalColorMapper=e.CategoricalColorMapper;var p=r(138);o.CategoricalMarkerMapper=p.CategoricalMarkerMapper;var l=r(139);o.CategoricalPatternMapper=l.CategoricalPatternMapper;var C=r(140);o.ContinuousColorMapper=C.ContinuousColorMapper;var M=r(135);o.ColorMapper=M.ColorMapper;var n=r(141);o.LinearColorMapper=n.LinearColorMapper;var t=r(142);o.LogColorMapper=t.LogColorMapper;var i=r(143);o.ScanningColorMapper=i.ScanningColorMapper;var c=r(144);o.EqHistColorMapper=c.EqHistColorMapper},\n",
       "      function _(r,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const o=r(1),a=r(134),c=r(135),i=o.__importStar(r(18));class s extends c.ColorMapper{constructor(r){super(r)}static init_CategoricalColorMapper(){this.define({factors:[i.Array],start:[i.Number,0],end:[i.Number]})}_v_compute(r,t,e,{nan_color:o}){a.cat_v_compute(r,this.factors,e,t,this.start,this.end,o)}}e.CategoricalColorMapper=s,s.__name__=\"CategoricalColorMapper\",s.init_CategoricalColorMapper()},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const l=e(12),i=e(8);function u(e,n){if(e.length!=n.length)return!1;for(let t=0,l=e.length;t<l;t++)if(e[t]!==n[t])return!1;return!0}t._cat_equals=u,t.cat_v_compute=function(e,n,t,c,f,o,r){for(let _=0,g=e.length;_<g;_++){let g,s,d=e[_];i.isString(d)?g=l.index_of(n,d):(null!=f?d=null!=o?d.slice(f,o):d.slice(f):null!=o&&(d=d.slice(0,o)),g=1==d.length?l.index_of(n,d[0]):l.find_index(n,e=>u(e,d))),s=g<0||g>=t.length?r:t[g],c[_]=s}}},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),o=t(136),_=n.__importStar(t(18)),i=t(8),l=t(22),c=t(32);function a(t){return i.isNumber(t)?t:(\"#\"!=t[0]&&(t=l.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16))}function s(t){const e=new Uint32Array(t.length);for(let r=0,n=t.length;r<n;r++)e[r]=a(t[r]);return e}function p(t){if(c.is_little_endian){const e=new DataView(t.buffer);for(let r=0,n=t.length;r<n;r++)e.setUint32(4*r,t[r])}return new Uint8Array(t.buffer)}r._convert_color=a,r._convert_palette=s,r._uint32_to_rgba=p;class u extends o.Mapper{constructor(t){super(t)}static init_ColorMapper(){this.define({palette:[_.Any],nan_color:[_.Color,\"gray\"]})}v_compute(t){const e=new Array(t.length);return this._v_compute(t,e,this.palette,this._colors(t=>t)),e}get rgba_mapper(){const t=this,e=s(this.palette),r=this._colors(a);return{v_compute(n){const o=new Uint32Array(n.length);return t._v_compute(n,o,e,r),p(o)}}}_colors(t){return{nan_color:t(this.nan_color)}}}r.ColorMapper=u,u.__name__=\"ColorMapper\",u.init_ColorMapper()},\n",
       "      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(137);class s extends o.Transform{constructor(e){super(e)}compute(e){throw new Error(\"mapping single values is not supported\")}}n.Mapper=s,s.__name__=\"Mapper\"},\n",
       "      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(81);class s extends r.Model{constructor(e){super(e)}}o.Transform=s,s.__name__=\"Transform\"},\n",
       "      function _(r,e,a){Object.defineProperty(a,\"__esModule\",{value:!0});const t=r(1),s=r(134),i=r(136),c=t.__importStar(r(18));class n extends i.Mapper{constructor(r){super(r)}static init_CategoricalMarkerMapper(){this.define({factors:[c.Array],markers:[c.Array],start:[c.Number,0],end:[c.Number],default_value:[c.MarkerType,\"circle\"]})}v_compute(r){const e=new Array(r.length);return s.cat_v_compute(r,this.factors,this.markers,e,this.start,this.end,this.default_value),e}}a.CategoricalMarkerMapper=n,n.__name__=\"CategoricalMarkerMapper\",n.init_CategoricalMarkerMapper()},\n",
       "      function _(t,e,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=t(1),n=t(134),s=t(136),i=r.__importStar(t(18));class c extends s.Mapper{constructor(t){super(t)}static init_CategoricalPatternMapper(){this.define({factors:[i.Array],patterns:[i.Array],start:[i.Number,0],end:[i.Number],default_value:[i.HatchPatternType,\" \"]})}v_compute(t){const e=new Array(t.length);return n.cat_v_compute(t,this.factors,this.patterns,e,this.start,this.end,this.default_value),e}}a.CategoricalPatternMapper=c,c.__name__=\"CategoricalPatternMapper\",c.init_CategoricalPatternMapper()},\n",
       "      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(135),s=t(90),l=t(9),i=t(8);class c extends n.ColorMapper{constructor(t){super(t),this._scan_data=null}static init_ContinuousColorMapper(){this.define(({Number:t,String:o,Null:e,Ref:n,Color:l,Or:i,Tuple:c,Array:a})=>({high:[i(t,e),null],low:[i(t,e),null],high_color:[i(l,e),null],low_color:[i(l,e),null],domain:[a(c(n(s.GlyphRenderer),i(o,a(o)))),[]]}))}connect_signals(){super.connect_signals();const t=()=>{for(const[t]of this.domain)this.connect(t.view.change,()=>this.update_data()),this.connect(t.data_source.selected.change,()=>this.update_data())};this.connect(this.properties.domain.change,()=>t()),t()}update_data(){const{domain:t,palette:o}=this,e=[...this._collect(t)];this._scan_data=this.scan(e,o.length),this.change.emit()}get metrics(){return null==this._scan_data&&this.update_data(),this._scan_data}*_collect(t){for(const[o,e]of t)for(const t of i.isArray(e)?e:[e]){let e=o.data_source.get_column(t);e=o.view.indices.select(e);const n=o.view.masked,s=o.data_source.selected.indices;let c;if(null!=n&&s.length>0?c=l.intersection([...n],s):null!=n?c=[...n]:s.length>0&&(c=s),null!=c&&(e=l.map(c,t=>e[t])),e.length>0&&!i.isNumber(e[0]))for(const t of e)yield*t;else yield*e}}_v_compute(t,o,e,n){const{nan_color:s}=n;let{low_color:i,high_color:c}=n;null==i&&(i=e[0]),null==c&&(c=e[e.length-1]);const{domain:a}=this,r=l.is_empty(a)?t:[...this._collect(a)];this._scan_data=this.scan(r,e.length);for(let n=0,l=t.length;n<l;n++){const l=t[n];isNaN(l)?o[n]=s:o[n]=this.cmap(l,e,i,c,this._scan_data)}}_colors(t){return Object.assign(Object.assign({},super._colors(t)),{low_color:null!=this.low_color?t(this.low_color):void 0,high_color:null!=this.high_color?t(this.high_color):void 0})}}e.ContinuousColorMapper=c,c.__name__=\"ContinuousColorMapper\",c.init_ContinuousColorMapper()},\n",
       "      function _(n,r,o){Object.defineProperty(o,\"__esModule\",{value:!0});const e=n(140),t=n(12);class a extends e.ContinuousColorMapper{constructor(n){super(n)}scan(n,r){const o=null!=this.low?this.low:t.min(n),e=null!=this.high?this.high:t.max(n);return{max:e,min:o,norm_factor:1/(e-o),normed_interval:1/r}}cmap(n,r,o,e,t){const a=r.length-1;if(n==t.max)return r[a];const i=(n-t.min)*t.norm_factor,l=Math.floor(i/t.normed_interval);return l<0?o:l>a?e:r[l]}}o.LinearColorMapper=a,a.__name__=\"LinearColorMapper\"},\n",
       "      function _(o,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=o(140),r=o(12);class l extends e.ContinuousColorMapper{constructor(o){super(o)}scan(o,t){const n=null!=this.low?this.low:r.min(o),e=null!=this.high?this.high:r.max(o);return{max:e,min:n,scale:t/(Math.log(e)-Math.log(n))}}cmap(o,t,n,e,r){const l=t.length-1;if(o>r.max)return e;if(o==r.max)return t[l];if(o<r.min)return n;const a=Math.log(o)-Math.log(r.min);let s=Math.floor(a*r.scale);return s>l&&(s=l),t[s]}}n.LogColorMapper=l,l.__name__=\"LogColorMapper\"},\n",
       "      function _(n,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=n(140),o=n(12);class t extends i.ContinuousColorMapper{constructor(n){super(n)}cmap(n,e,r,i,t){if(n<t.binning[0])return r;if(n>t.binning[t.binning.length-1])return i;return e[o.left_edge_index(n,t.binning)]}}r.ScanningColorMapper=t,t.__name__=\"ScanningColorMapper\"},\n",
       "      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=n(1),o=n(143),r=n(12),s=n(9),a=i.__importStar(n(18)),l=n(19);class p extends o.ScanningColorMapper{constructor(n){super(n)}static init_EqHistColorMapper(){this.define({bins:[a.Int,65536]})}scan(n,t){const e=null!=this.low?this.low:r.min(n),i=null!=this.high?this.high:r.max(n),o=this.bins,a=s.linspace(e,i,o+1),p=r.bin_counts(n,a),c=new Array(o);for(let n=0,t=a.length;n<t-1;n++){const t=a[n],e=a[n+1];c[n]=(t+e)/2}const h=s.cumsum(p),u=h[h.length-1],g=r.map(h,n=>n/u);let m=t-1,_=[],M=0,f=2*t;for(;m!=t&&M<4&&0!=m;){const n=f/m;if(n>1e3)break;f=Math.round(Math.max(t*n,t));const e=s.range(0,f),i=r.map(g,n=>n*(f-1));_=r.interpolate(e,i,c);m=s.uniq(_).length-1,M++}if(0==m){_=[e,i];for(let n=0;n<t-1;n++)_.push(i)}else _=_.slice(_.length-t-1),m!=t&&l.logger.warn(\"EqHistColorMapper warning: Histogram equalization did not converge.\");return{min:e,max:i,binning:_}}}e.EqHistColorMapper=p,p.__name__=\"EqHistColorMapper\",p.init_EqHistColorMapper()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),i=e(146),_=r.__importStar(e(18));class a extends i.ContinuousScale{constructor(e){super(e)}static init_LinearScale(){this.internal({scan_result:[_.Any]})}compute(e){return this._linear_compute(e)}v_compute(e){return this._linear_v_compute(e)}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}n.LinearScale=a,a.__name__=\"LinearScale\",a.init_LinearScale()},\n",
       "      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const c=e(147);class s extends c.Scale{constructor(e){super(e)}}o.ContinuousScale=s,s.__name__=\"ContinuousScale\"},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),_=t(148),s=t(24),i=n.__importStar(t(18));class a extends _.Transform{constructor(t){super(t)}static init_Scale(){this.internal({source_range:[i.Any],target_range:[i.Any]})}r_compute(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]}r_invert(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]}_linear_compute(t){const[e,r]=this._linear_compute_state();return e*t+r}_linear_v_compute(t){const[e,r]=this._linear_compute_state(),n=new s.NumberArray(t.length);for(let _=0;_<t.length;_++)n[_]=e*t[_]+r;return n}_linear_invert(t){const[e,r]=this._linear_compute_state();return(t-r)/e}_linear_v_invert(t){const[e,r]=this._linear_compute_state(),n=new s.NumberArray(t.length);for(let _=0;_<t.length;_++)n[_]=(t[_]-r)/e;return n}_linear_compute_state(){const t=this.source_range.start,e=this.source_range.end,r=this.target_range.start,n=(this.target_range.end-r)/(e-t);return[n,-n*t+r]}}r.Scale=a,a.__name__=\"Scale\",a.init_Scale()},\n",
       "      function _(r,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});var e=r(149);t.CustomJSTransform=e.CustomJSTransform;var a=r(150);t.Dodge=a.Dodge;var n=r(152);t.Interpolator=n.Interpolator;var p=r(153);t.Jitter=p.Jitter;var l=r(154);t.LinearInterpolator=l.LinearInterpolator;var v=r(155);t.StepInterpolator=v.StepInterpolator;var s=r(137);t.Transform=s.Transform},\n",
       "      function _(t,r,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),e=t(137),a=n.__importStar(t(18)),o=t(13),u=t(29);class i extends e.Transform{constructor(t){super(t)}static init_CustomJSTransform(){this.define({args:[a.Any,{}],func:[a.String,\"\"],v_func:[a.String,\"\"]})}get names(){return o.keys(this.args)}get values(){return o.values(this.args)}_make_transform(t,r){return new Function(...this.names,t,u.use_strict(r))}get scalar_transform(){return this._make_transform(\"x\",this.func)}get vector_transform(){return this._make_transform(\"xs\",this.v_func)}compute(t){return this.scalar_transform(...this.values,t)}v_compute(t){return this.vector_transform(...this.values,t)}}s.CustomJSTransform=i,i.__name__=\"CustomJSTransform\",i.init_CustomJSTransform()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(1),r=e(151),_=o.__importStar(e(18));class i extends r.RangeTransform{constructor(e){super(e)}static init_Dodge(){this.define({value:[_.Number,0]})}_compute(e){return e+this.value}}n.Dodge=i,i.__name__=\"Dodge\",i.init_Dodge()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),s=e(137),a=e(98),i=r.__importStar(e(18)),o=e(24),c=e(8);class u extends s.Transform{constructor(e){super(e)}static init_RangeTransform(){this.define({range:[i.Instance]})}v_compute(e){let t;if(this.range instanceof a.FactorRange)t=this.range.v_synthetic(e);else{if(!c.isArrayableOf(e,c.isNumber))throw new Error(\"unexpected\");t=e}const n=new o.NumberArray(t.length);for(let e=0;e<t.length;e++){const r=t[e];n[e]=this._compute(r)}return n}compute(e){if(this.range instanceof a.FactorRange)return this._compute(this.range.synthetic(e));if(c.isNumber(e))return this._compute(e);throw new Error(\"unexpected\")}}n.RangeTransform=u,u.__name__=\"RangeTransform\",u.init_RangeTransform()},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),o=t(137),s=n.__importStar(t(18)),i=t(24),a=t(9),h=t(8);class d extends o.Transform{constructor(t){super(t),this._sorted_dirty=!0}static init_Interpolator(){this.define({x:[s.Any],y:[s.Any],data:[s.Any],clip:[s.Boolean,!0]})}connect_signals(){super.connect_signals(),this.connect(this.change,()=>this._sorted_dirty=!0)}v_compute(t){const e=new i.NumberArray(t.length);for(let r=0;r<t.length;r++){const n=t[r];e[r]=this.compute(n)}return e}sort(t=!1){if(!this._sorted_dirty)return;let e,r;if(h.isString(this.x)&&h.isString(this.y)&&null!=this.data){const t=this.data.columns();if(!a.includes(t,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!a.includes(t,this.y))throw new Error(\"The y parameter does not correspond to a valid column name defined in the data parameter\");e=this.data.get_column(this.x),r=this.data.get_column(this.y)}else{if(!h.isArray(this.x)||!h.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,r=this.y}if(e.length!==r.length)throw new Error(\"The length for x and y do not match\");if(e.length<2)throw new Error(\"x and y must have at least two elements to support interpolation\");const n=e.length,o=new Uint32Array(n);for(let t=0;t<n;t++)o[t]=t;const s=t?-1:1;o.sort((t,r)=>s*(e[t]-e[r])),this._x_sorted=new i.NumberArray(n),this._y_sorted=new i.NumberArray(n);for(let t=0;t<n;t++)this._x_sorted[t]=e[o[t]],this._y_sorted[t]=r[o[t]];this._sorted_dirty=!1}}r.Interpolator=d,d.__name__=\"Interpolator\",d.init_Interpolator()},\n",
       "      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(1),s=t(151),n=r.__importStar(t(18)),u=r.__importStar(t(10));class o extends s.RangeTransform{constructor(t){super(t)}static init_Jitter(){this.define({mean:[n.Number,0],width:[n.Number,1],distribution:[n.Distribution,\"uniform\"]})}v_compute(t){return null!=this.previous_values&&this.previous_values.length==t.length||(this.previous_values=super.v_compute(t)),this.previous_values}_compute(t){switch(this.distribution){case\"uniform\":return t+this.mean+(u.random()-.5)*this.width;case\"normal\":return t+u.rnorm(this.mean,this.width)}}}e.Jitter=o,o.__name__=\"Jitter\",o.init_Jitter()},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const _=t(9),r=t(152);class o extends r.Interpolator{constructor(t){super(t)}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(t==this._x_sorted[0])return this._y_sorted[0];const s=_.find_last_index(this._x_sorted,s=>s<t),e=this._x_sorted[s],r=this._x_sorted[s+1],o=this._y_sorted[s],i=this._y_sorted[s+1];return o+(t-e)/(r-e)*(i-o)}}e.LinearInterpolator=o,o.__name__=\"LinearInterpolator\"},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=t(1),o=t(152),_=s.__importStar(t(18)),i=t(9);class n extends o.Interpolator{constructor(t){super(t)}static init_StepInterpolator(){this.define({mode:[_.StepMode,\"after\"]})}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}let e;switch(this.mode){case\"after\":e=i.find_last_index(this._x_sorted,e=>t>=e);break;case\"before\":e=i.find_index(this._x_sorted,e=>t<=e);break;case\"center\":{const r=this._x_sorted.map(e=>Math.abs(e-t)),s=i.min(r);e=i.find_index(r,t=>s===t);break}default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=e?this._y_sorted[e]:NaN}}r.StepInterpolator=n,n.__name__=\"StepInterpolator\",n.init_StepInterpolator()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),a=e(147),i=e(24),s=e(9),o=e(12),c=r.__importStar(e(18));class _ extends a.Scale{constructor(e){super(e)}static init_LinearInterpolationScale(){this.internal({binning:[c.Array]})}compute(e){return e}v_compute(e){const t=o.norm(e,this.source_range.start,this.source_range.end),n=s.linspace(0,1,this.binning.length),r=o.interpolate(t,n,this.binning),a=o.norm(r,this.source_range.start,this.source_range.end),c=this.target_range.end-this.target_range.start,_=o.map(a,e=>this.target_range.start+e*c);return new i.NumberArray(_)}invert(e){return e}v_invert(e){return new i.NumberArray(e)}}n.LinearInterpolationScale=_,_.__name__=\"LinearInterpolationScale\",_.init_LinearInterpolationScale()},\n",
       "      function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const a=t(146),r=t(24);class s extends a.ContinuousScale{constructor(t){super(t)}compute(t){const[e,o,a,r]=this._compute_state();let s;if(0==a)s=0;else{const n=(Math.log(t)-r)/a;s=isFinite(n)?n*e+o:NaN}return s}v_compute(t){const[e,o,a,s]=this._compute_state(),n=new r.NumberArray(t.length);if(0==a)for(let e=0;e<t.length;e++)n[e]=0;else for(let r=0;r<t.length;r++){const l=(Math.log(t[r])-s)/a;let c;c=isFinite(l)?l*e+o:NaN,n[r]=c}return n}invert(t){const[e,o,a,r]=this._compute_state(),s=(t-o)/e;return Math.exp(a*s+r)}v_invert(t){const[e,o,a,s]=this._compute_state(),n=new r.NumberArray(t.length);for(let r=0;r<t.length;r++){const l=(t[r]-o)/e;n[r]=Math.exp(a*l+s)}return n}_get_safe_factor(t,e){let o=t<0?0:t,a=e<0?0:e;if(o==a)if(0==o)[o,a]=[1,10];else{const t=Math.log(o)/Math.log(10);o=10**Math.floor(t),a=Math.ceil(t)!=Math.floor(t)?10**Math.ceil(t):10**(Math.ceil(t)+1)}return[o,a]}_compute_state(){const t=this.source_range.start,e=this.source_range.end,o=this.target_range.start,a=this.target_range.end-o,[r,s]=this._get_safe_factor(t,e);let n,l;0==r?(n=Math.log(s),l=0):(n=Math.log(s)-Math.log(r),l=Math.log(r));return[a,o,n,l]}}o.LogScale=s,s.__name__=\"LogScale\"},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),n=t(99),r=i.__importStar(t(18));class a extends n.Range{constructor(t){super(t)}static init_Range1d(){this.define({start:[r.Number,0],end:[r.Number,1],reset_start:[r.Number],reset_end:[r.Number]})}_set_auto_bounds(){if(\"auto\"==this.bounds){const t=Math.min(this.reset_start,this.reset_end),e=Math.max(this.reset_start,this.reset_end);this.setv({bounds:[t,e]},{silent:!0})}}initialize(){super.initialize(),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}reset(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()}}s.Range1d=a,a.__name__=\"Range1d\",a.init_Range1d()},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=t(72),i=new Map;n.measure_font=function(t){const e=i.get(t);if(null!=e)return e;const n=o.span({style:{font:t}},\"Hg\"),l=o.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),s=o.div({},n,l);document.body.appendChild(s);try{l.style.verticalAlign=\"baseline\";const e=o.offset(l).top-o.offset(n).top;l.style.verticalAlign=\"bottom\";const d=o.offset(l).top-o.offset(n).top,c={height:d,ascent:e,descent:d-e};return i.set(t,c),c}finally{document.body.removeChild(s)}};const l=new Map;n.measure_text=function(t,e){let n=l.get(e);if(null!=n){const e=n.get(t);if(null!=e)return e}else n=new Map,l.set(e,n);const i=o.div({style:{display:\"inline-block\",\"white-space\":\"nowrap\",font:e}},t);document.body.appendChild(i);try{const{width:e,height:o}=i.getBoundingClientRect();return n.set(t,{width:e,height:o}),{width:e,height:o}}finally{document.body.removeChild(i)}}},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),a=t(161),l=s.__importStar(t(28)),n=s.__importStar(t(18));class o extends a.TextAnnotationView{initialize(){super.initialize(),this.visuals.warm_cache()}_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_value(t);const{width:e,ascent:i}=t.measureText(this.model.text);return{width:e,height:i}}_render(){let t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180}const e=null!=this.panel?this.panel:this.plot_view.frame,i=this.coordinates.x_scale,s=this.coordinates.y_scale;let a=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),l=\"data\"==this.model.y_units?s.compute(this.model.y):e.yview.compute(this.model.y);a+=this.model.x_offset,l-=this.model.y_offset;(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,this.model.text,a,l,t)}}i.LabelView=o,o.__name__=\"LabelView\";class _ extends a.TextAnnotation{constructor(t){super(t)}static init_Label(){this.prototype.default_view=o,this.mixins([l.Text,[\"border_\",l.Line],[\"background_\",l.Fill]]),this.define({x:[n.Number],x_units:[n.SpatialUnits,\"data\"],y:[n.Number],y_units:[n.SpatialUnits,\"data\"],text:[n.String],angle:[n.Angle,0],angle_units:[n.AngleUnits,\"rad\"],x_offset:[n.Number,0],y_offset:[n.Number,0]}),this.override({background_fill_color:null,border_line_color:null})}}i.Label=_,_.__name__=\"Label\",_.init_Label()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),l=e(36),a=e(72),n=i.__importStar(e(18)),o=e(159),r=e(11);class _ extends l.AnnotationView{constructor(){super(...arguments),this.rotate=!0}initialize(){super.initialize(),\"css\"==this.model.render_mode&&(this.el=a.div(),this.plot_view.canvas_view.add_overlay(this.el))}remove(){null!=this.el&&a.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),\"css\"==this.model.render_mode?this.connect(this.model.change,()=>this.render()):this.connect(this.model.change,()=>this.plot_view.request_render())}render(){this.model.visible||\"css\"!=this.model.render_mode||a.undisplay(this.el),super.render()}_calculate_text_dimensions(e,t){const{width:s}=e.measureText(t),{height:i}=o.measure_font(this.visuals.text.font_value());return[s,i]}_calculate_bounding_box_dimensions(e,t){const[s,i]=this._calculate_text_dimensions(e,t);let l,a;switch(e.textAlign){case\"left\":l=0;break;case\"center\":l=-s/2;break;case\"right\":l=-s;break;default:r.unreachable()}switch(e.textBaseline){case\"top\":a=0;break;case\"middle\":a=-.5*i;break;case\"bottom\":a=-1*i;break;case\"alphabetic\":a=-.8*i;break;case\"hanging\":a=-.17*i;break;case\"ideographic\":a=-.83*i;break;default:r.unreachable()}return[l,a,s,i]}_canvas_text(e,t,s,i,l){this.visuals.text.set_value(e);const a=this._calculate_bounding_box_dimensions(e,t);e.save(),e.beginPath(),e.translate(s,i),l&&e.rotate(l),e.rect(a[0],a[1],a[2],a[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),e.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(e),e.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(e),e.fillText(t,0,0)),e.restore()}_css_text(e,t,s,i,l){const{el:n}=this;r.assert(null!=n),a.undisplay(n),this.visuals.text.set_value(e);const o=this._calculate_bounding_box_dimensions(e,t),_=this.visuals.border_line.line_dash.value().length<2?\"solid\":\"dashed\";this.visuals.border_line.set_value(e),this.visuals.background_fill.set_value(e),n.style.position=\"absolute\",n.style.left=s+o[0]+\"px\",n.style.top=i+o[1]+\"px\",n.style.color=\"\"+this.visuals.text.text_color.value(),n.style.opacity=\"\"+this.visuals.text.text_alpha.value(),n.style.font=\"\"+this.visuals.text.font_value(),n.style.lineHeight=\"normal\",l&&(n.style.transform=`rotate(${l}rad)`),this.visuals.background_fill.doit&&(n.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(n.style.borderStyle=\"\"+_,n.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",n.style.borderColor=\"\"+this.visuals.border_line.color_value()),n.textContent=t,a.display(n)}}s.TextAnnotationView=_,_.__name__=\"TextAnnotationView\";class u extends l.Annotation{constructor(e){super(e)}static init_TextAnnotation(){this.define({render_mode:[n.RenderMode,\"canvas\"]})}}s.TextAnnotation=u,u.__name__=\"TextAnnotation\",u.init_TextAnnotation()},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),o=t(161),l=t(85),a=i.__importStar(t(28)),n=t(72),r=i.__importStar(t(18));class _ extends o.TextAnnotationView{initialize(){if(super.initialize(),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(let t=0,e=this._text.length;t<e;t++){const t=n.div({style:{display:\"none\"}});this.el.appendChild(t)}}connect_signals(){super.connect_signals(),\"css\"==this.model.render_mode?(this.connect(this.model.change,()=>{this.set_data(this.model.source),this.render()}),this.connect(this.model.source.streaming,()=>{this.set_data(this.model.source),this.render()}),this.connect(this.model.source.patching,()=>{this.set_data(this.model.source),this.render()}),this.connect(this.model.source.change,()=>{this.set_data(this.model.source),this.render()})):(this.connect(this.model.change,()=>{this.set_data(this.model.source),this.plot_view.request_render()}),this.connect(this.model.source.streaming,()=>{this.set_data(this.model.source),this.plot_view.request_render()}),this.connect(this.model.source.patching,()=>{this.set_data(this.model.source),this.plot_view.request_render()}),this.connect(this.model.source.change,()=>{this.set_data(this.model.source),this.plot_view.request_render()}))}set_data(t){super.set_data(t),this.visuals.warm_cache(t)}_map_data(){const t=this.coordinates.x_scale,e=this.coordinates.y_scale,s=null!=this.panel?this.panel:this.plot_view.frame;return[\"data\"==this.model.x_units?t.v_compute(this._x):s.xview.v_compute(this._x),\"data\"==this.model.y_units?e.v_compute(this._y):s.yview.v_compute(this._y)]}_render(){const t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),{ctx:e}=this.layer,[s,i]=this._map_data();for(let o=0,l=this._text.length;o<l;o++)t(e,o,this._text[o],s[o]+this._x_offset[o],i[o]-this._y_offset[o],this._angle[o])}_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_value(t);const{width:e,ascent:s}=t.measureText(this._text[0]);return{width:e,height:s}}_v_canvas_text(t,e,s,i,o,l){this.visuals.text.set_vectorize(t,e);const a=this._calculate_bounding_box_dimensions(t,s);t.save(),t.beginPath(),t.translate(i,o),t.rotate(l),t.rect(a[0],a[1],a[2],a[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_vectorize(t,e),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_vectorize(t,e),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_vectorize(t,e),t.fillText(s,0,0)),t.restore()}_v_css_text(t,e,s,i,o,l){const a=this.el.children[e];a.textContent=s,this.visuals.text.set_vectorize(t,e);const r=this._calculate_bounding_box_dimensions(t,s),_=this.visuals.border_line.line_dash.value().length<2?\"solid\":\"dashed\";this.visuals.border_line.set_vectorize(t,e),this.visuals.background_fill.set_vectorize(t,e),a.style.position=\"absolute\",a.style.left=i+r[0]+\"px\",a.style.top=o+r[1]+\"px\",a.style.color=\"\"+this.visuals.text.text_color.value(),a.style.opacity=\"\"+this.visuals.text.text_alpha.value(),a.style.font=\"\"+this.visuals.text.font_value(),a.style.lineHeight=\"normal\",l&&(a.style.transform=`rotate(${l}rad)`),this.visuals.background_fill.doit&&(a.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(a.style.borderStyle=\"\"+_,a.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",a.style.borderColor=\"\"+this.visuals.border_line.color_value()),n.display(a)}}s.LabelSetView=_,_.__name__=\"LabelSetView\";class h extends o.TextAnnotation{constructor(t){super(t)}static init_LabelSet(){this.prototype.default_view=_,this.mixins([a.TextVector,[\"border_\",a.LineVector],[\"background_\",a.FillVector]]),this.define({x:[r.NumberSpec],y:[r.NumberSpec],x_units:[r.SpatialUnits,\"data\"],y_units:[r.SpatialUnits,\"data\"],text:[r.StringSpec,{field:\"text\"}],angle:[r.AngleSpec,0],x_offset:[r.NumberSpec,{value:0}],y_offset:[r.NumberSpec,{value:0}],source:[r.Instance,()=>new l.ColumnDataSource]}),this.override({background_fill_color:null,border_line_color:null})}}s.LabelSet=h,h.__name__=\"LabelSet\",h.init_LabelSet()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),l=t(36),n=s.__importStar(t(28)),h=s.__importStar(t(18)),a=t(15),_=t(159),o=t(79),r=t(9),d=t(8),c=t(11);class g extends l.AnnotationView{cursor(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"}get legend_padding(){return null!=this.visuals.border_line.line_color.value()?this.model.padding:0}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_render()),this.connect(this.model.item_change,()=>this.plot_view.request_render())}compute_legend_bbox(){const t=this.model.get_legend_names(),{glyph_height:e,glyph_width:i}=this.model,{label_height:s,label_width:l}=this.model;this.max_label_height=r.max([_.measure_font(this.visuals.label_text.font_value()).height,s,e]);const{ctx:n}=this.layer;n.save(),this.visuals.label_text.set_value(n),this.text_widths=new Map;for(const e of t)this.text_widths.set(e,r.max([n.measureText(e).width,l]));this.visuals.title_text.set_value(n),this.title_height=this.model.title?_.measure_font(this.visuals.title_text.font_value()).height+this.model.title_standoff:0,this.title_width=this.model.title?n.measureText(this.model.title).width:0,n.restore();const h=Math.max(r.max([...this.text_widths.values()]),0),a=this.model.margin,{legend_padding:g}=this,m=this.model.spacing,{label_standoff:b}=this.model;let u,f;if(\"vertical\"==this.model.orientation)u=t.length*this.max_label_height+Math.max(t.length-1,0)*m+2*g+this.title_height,f=r.max([h+i+b+2*g,this.title_width+2*g]);else{let e=2*g+Math.max(t.length-1,0)*m;for(const[,t]of this.text_widths)e+=r.max([t,l])+i+b;f=r.max([this.title_width+2*g,e]),u=this.max_label_height+this.title_height+2*g}const x=null!=this.panel?this.panel:this.plot_view.frame,[p,w]=x.bbox.ranges,{location:v}=this.model;let y,k;if(d.isString(v))switch(v){case\"top_left\":y=p.start+a,k=w.start+a;break;case\"top_center\":y=(p.end+p.start)/2-f/2,k=w.start+a;break;case\"top_right\":y=p.end-a-f,k=w.start+a;break;case\"bottom_right\":y=p.end-a-f,k=w.end-a-u;break;case\"bottom_center\":y=(p.end+p.start)/2-f/2,k=w.end-a-u;break;case\"bottom_left\":y=p.start+a,k=w.end-a-u;break;case\"center_left\":y=p.start+a,k=(w.end+w.start)/2-u/2;break;case\"center\":y=(p.end+p.start)/2-f/2,k=(w.end+w.start)/2-u/2;break;case\"center_right\":y=p.end-a-f,k=(w.end+w.start)/2-u/2}else if(d.isArray(v)&&2==v.length){const[t,e]=v;y=x.xview.compute(t),k=x.yview.compute(e)-u}else c.unreachable();return new o.BBox({left:y,top:k,width:f,height:u})}interactive_bbox(){return this.compute_legend_bbox()}interactive_hit(t,e){return this.interactive_bbox().contains(t,e)}on_hit(t,e){let i;const{glyph_width:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let a=i=l;const _=this.compute_legend_bbox(),r=\"vertical\"==this.model.orientation;for(const d of this.model.items){const c=d.get_labels_list_from_label_prop();for(const g of c){const c=_.x+a,m=_.y+i+this.title_height;let b,u;[b,u]=r?[_.width-2*l,this.max_label_height]:[this.text_widths.get(g)+s+h,this.max_label_height];if(new o.BBox({left:c,top:m,width:b,height:u}).contains(t,e)){switch(this.model.click_policy){case\"hide\":for(const t of d.renderers)t.visible=!t.visible;break;case\"mute\":for(const t of d.renderers)t.muted=!t.muted}return!0}r?i+=this.max_label_height+n:a+=this.text_widths.get(g)+s+h+n}}return!1}_render(){if(0==this.model.items.length)return;for(const t of this.model.items)t.legend=this.model;const{ctx:t}=this.layer,e=this.compute_legend_bbox();t.save(),this._draw_legend_box(t,e),this._draw_legend_items(t,e),this.model.title&&this._draw_title(t,e),t.restore()}_draw_legend_box(t,e){t.beginPath(),t.rect(e.x,e.y,e.width,e.height),this.visuals.background_fill.set_value(t),t.fill(),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke())}_draw_legend_items(t,e){const{glyph_width:i,glyph_height:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let a=l,_=l;const o=\"vertical\"==this.model.orientation;for(const d of this.model.items){const c=d.get_labels_list_from_label_prop(),g=d.get_field_from_label_prop();if(0==c.length)continue;const m=(()=>{switch(this.model.click_policy){case\"none\":return!0;case\"hide\":return r.every(d.renderers,t=>t.visible);case\"mute\":return r.every(d.renderers,t=>!t.muted)}})();for(const r of c){const c=e.x+a,b=e.y+_+this.title_height,u=c+i,f=b+s;o?_+=this.max_label_height+n:a+=this.text_widths.get(r)+i+h+n,this.visuals.label_text.set_value(t),t.fillText(r,u+h,b+this.max_label_height/2);for(const e of d.renderers){this.plot_view.renderer_views.get(e).draw_legend(t,c,u,b,f,g,r,d.index)}if(!m){let s,n;[s,n]=o?[e.width-2*l,this.max_label_height]:[this.text_widths.get(r)+i+h,this.max_label_height],t.beginPath(),t.rect(c,b,s,n),this.visuals.inactive_fill.set_value(t),t.fill()}}}}_draw_title(t,e){this.visuals.title_text.doit&&(t.save(),t.translate(e.x0,e.y0+this.title_height),this.visuals.title_text.set_value(t),t.fillText(this.model.title,this.legend_padding,this.legend_padding-this.model.title_standoff),t.restore())}_get_size(){const{width:t,height:e}=this.compute_legend_bbox();return{width:t+2*this.model.margin,height:e+2*this.model.margin}}}i.LegendView=g,g.__name__=\"LegendView\";class m extends l.Annotation{constructor(t){super(t)}initialize(){super.initialize(),this.item_change=new a.Signal0(this,\"item_change\")}static init_Legend(){this.prototype.default_view=g,this.mixins([[\"label_\",n.Text],[\"title_\",n.Text],[\"inactive_\",n.Fill],[\"border_\",n.Line],[\"background_\",n.Fill]]),this.define({orientation:[h.Orientation,\"vertical\"],location:[h.Any,\"top_right\"],title:[h.String],title_standoff:[h.Number,5],label_standoff:[h.Number,5],glyph_height:[h.Number,20],glyph_width:[h.Number,20],label_height:[h.Number,20],label_width:[h.Number,20],margin:[h.Number,10],padding:[h.Number,10],spacing:[h.Number,3],items:[h.Array,[]],click_policy:[h.Any,\"none\"]}),this.override({border_line_color:\"#e5e5e5\",border_line_alpha:.5,border_line_width:1,background_fill_color:\"#ffffff\",background_fill_alpha:.95,inactive_fill_color:\"white\",inactive_fill_alpha:.7,label_text_font_size:\"13px\",label_text_baseline:\"middle\",title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}get_legend_names(){const t=[];for(const e of this.items){const i=e.get_labels_list_from_label_prop();t.push(...i)}return t}}i.Legend=m,m.__name__=\"Legend\",m.init_Legend()},\n",
       "      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(1),l=e(81),i=e(86),s=e(165),o=t.__importStar(e(18)),_=e(19),a=e(9);class u extends l.Model{constructor(e){super(e)}static init_LegendItem(){this.define({label:[o.StringSpec,null],renderers:[o.Array,[]],index:[o.Number,null]})}_check_data_sources_on_renderers(){if(null!=this.get_field_from_label_prop()){if(this.renderers.length<1)return!1;const e=this.renderers[0].data_source;if(null!=e)for(const r of this.renderers)if(r.data_source!=e)return!1}return!0}_check_field_label_on_data_source(){const e=this.get_field_from_label_prop();if(null!=e){if(this.renderers.length<1)return!1;const r=this.renderers[0].data_source;if(null!=r&&!a.includes(r.columns(),e))return!1}return!0}initialize(){super.initialize(),this.legend=null,this.connect(this.change,()=>{var e;return null===(e=this.legend)||void 0===e?void 0:e.item_change.emit()});this._check_data_sources_on_renderers()||_.logger.error(\"Non matching data sources on legend item renderers\");this._check_field_label_on_data_source()||_.logger.error(\"Bad column name on label: \"+this.label)}get_field_from_label_prop(){const{label:e}=this;return s.isField(e)?e.field:null}get_labels_list_from_label_prop(){if(s.isValue(this.label)){const{value:e}=this.label;return null!=e?[e]:[]}const e=this.get_field_from_label_prop();if(null!=e){let r;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if(r=this.renderers[0].data_source,r instanceof i.ColumnarDataSource){const n=r.get_column(e);return null!=n?a.uniq(Array.from(n)):[\"Invalid field\"]}}return[]}}n.LegendItem=u,u.__name__=\"LegendItem\",u.init_LegendItem()},\n",
       "      function _(e,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(8);n.isValue=function(e){return t.isPlainObject(e)&&\"value\"in e},n.isField=function(e){return t.isPlainObject(e)&&\"field\"in e}},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),s=t(36),o=n.__importStar(t(28)),l=t(15),a=n.__importStar(t(18));class r extends s.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_render()),this.connect(this.model.data_update,()=>this.plot_view.request_render())}_render(){const{xs:t,ys:e}=this.model;if(t.length!=e.length)return;if(t.length<3||e.length<3)return;const{frame:i}=this.plot_view,{ctx:n}=this.layer;for(let s=0,o=t.length;s<o;s++){let o,l;if(\"screen\"!=this.model.xs_units)throw new Error(\"not implemented\");if(o=this.model.screen?t[s]:i.xview.compute(t[s]),\"screen\"!=this.model.ys_units)throw new Error(\"not implemented\");l=this.model.screen?e[s]:i.yview.compute(e[s]),0==s?(n.beginPath(),n.moveTo(o,l)):n.lineTo(o,l)}n.closePath(),this.visuals.line.doit&&(this.visuals.line.set_value(n),n.stroke()),this.visuals.fill.doit&&(this.visuals.fill.set_value(n),n.fill())}}i.PolyAnnotationView=r,r.__name__=\"PolyAnnotationView\";class _ extends s.Annotation{constructor(t){super(t)}static init_PolyAnnotation(){this.prototype.default_view=r,this.mixins([o.Line,o.Fill]),this.define({xs:[a.Array,[]],xs_units:[a.SpatialUnits,\"data\"],ys:[a.Array,[]],ys_units:[a.SpatialUnits,\"data\"]}),this.internal({screen:[a.Boolean,!1]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}initialize(){super.initialize(),this.data_update=new l.Signal0(this,\"data_update\")}update({xs:t,ys:e}){this.setv({xs:t,ys:e,screen:!0},{silent:!0}),this.data_update.emit()}}i.PolyAnnotation=_,_.__name__=\"PolyAnnotation\",_.init_PolyAnnotation()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),o=e(36),s=n.__importStar(e(28)),l=n.__importStar(e(18));class r extends o.AnnotationView{initialize(){super.initialize()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_render())}_render(){const e=this.model.gradient,t=this.model.y_intercept;if(null==e||null==t)return;const{frame:i}=this.plot_view,n=this.coordinates.x_scale,o=this.coordinates.y_scale,s=i.bbox.top,l=s+i.bbox.height,r=(o.invert(s)-t)/e,_=(o.invert(l)-t)/e,a=n.compute(r),c=n.compute(_),{ctx:p}=this.layer;p.save(),p.beginPath(),this.visuals.line.set_value(p),p.moveTo(a,s),p.lineTo(c,l),p.stroke(),p.restore()}}i.SlopeView=r,r.__name__=\"SlopeView\";class _ extends o.Annotation{constructor(e){super(e)}static init_Slope(){this.prototype.default_view=r,this.mixins(s.Line),this.define({gradient:[l.Number,null],y_intercept:[l.Number,null]}),this.override({line_color:\"black\"})}}i.Slope=_,_.__name__=\"Slope\",_.init_Slope()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),o=e(36),s=n.__importStar(e(28)),a=n.__importStar(e(18));class l extends o.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_paint(this))}_render(){const{location:e}=this.model;if(null==e)return;const{frame:t}=this.plot_view,i=this.coordinates.x_scale,n=this.coordinates.y_scale,o=(t,i)=>\"data\"==this.model.location_units?t.compute(e):this.model.for_hover?e:i.compute(e);let s,a,l,r;\"width\"==this.model.dimension?(l=o(n,t.yview),a=t.bbox.left,r=t.bbox.width,s=this.model.properties.line_width.value()):(l=t.bbox.top,a=o(i,t.xview),r=this.model.properties.line_width.value(),s=t.bbox.height);const{ctx:_}=this.layer;_.save(),_.beginPath(),this.visuals.line.set_value(_),_.moveTo(a,l),\"width\"==this.model.dimension?_.lineTo(a+r,l):_.lineTo(a,l+s),_.stroke(),_.restore()}}i.SpanView=l,l.__name__=\"SpanView\";class r extends o.Annotation{constructor(e){super(e)}static init_Span(){this.prototype.default_view=l,this.mixins(s.Line),this.define({render_mode:[a.RenderMode,\"canvas\"],location:[a.Number,null],location_units:[a.SpatialUnits,\"data\"],dimension:[a.Dimension,\"width\"]}),this.override({line_color:\"black\"}),this.internal({for_hover:[a.Boolean,!1]})}}i.Span=r,r.__name__=\"Span\",r.init_Span()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=t(1),s=t(161),a=t(74),n=l.__importStar(t(28)),o=l.__importStar(t(18));class r extends s.TextAnnotationView{initialize(){super.initialize(),this.visuals.text=new a.Text(this.model)}_get_location(){const t=this.panel,e=this.model.offset;let i,l;const{bbox:s}=t;switch(t.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":l=s.top+5;break;case\"middle\":l=s.vcenter;break;case\"bottom\":l=s.bottom-5}switch(this.model.align){case\"left\":i=s.left+e;break;case\"center\":i=s.hcenter;break;case\"right\":i=s.right-e}break;case\"left\":switch(this.model.vertical_align){case\"top\":i=s.left-5;break;case\"middle\":i=s.hcenter;break;case\"bottom\":i=s.right+5}switch(this.model.align){case\"left\":l=s.bottom-e;break;case\"center\":l=s.vcenter;break;case\"right\":l=s.top+e}break;case\"right\":switch(this.model.vertical_align){case\"top\":i=s.right-5;break;case\"middle\":i=s.hcenter;break;case\"bottom\":i=s.left+5}switch(this.model.align){case\"left\":l=s.top+e;break;case\"center\":l=s.vcenter;break;case\"right\":l=s.bottom-e}}return[i,l]}_render(){const{text:t}=this.model;if(null==t||0==t.length)return;this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;const[e,i]=this._get_location(),l=this.panel.get_label_angle_heuristic(\"parallel\");(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,t,e,i,l)}_get_size(){const{text:t}=this.model;if(null==t||0==t.length)return{width:0,height:0};{this.visuals.text.set_value(this.layer.ctx);const{width:e,ascent:i}=this.layer.ctx.measureText(t);return{width:e,height:i*this.visuals.text.text_line_height.value()+10}}}}i.TitleView=r,r.__name__=\"TitleView\";class c extends s.TextAnnotation{constructor(t){super(t)}static init_Title(){this.prototype.default_view=r,this.mixins([[\"border_\",n.Line],[\"background_\",n.Fill]]),this.define({text:[o.String],text_font:[o.Font,\"helvetica\"],text_font_size:[o.StringSpec,\"13px\"],text_font_style:[o.FontStyle,\"bold\"],text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],text_line_height:[o.Number,1],vertical_align:[o.VerticalAlign,\"bottom\"],align:[o.TextAlign,\"left\"],offset:[o.Number,0]}),this.override({background_fill_color:null,border_line_color:null}),this.internal({text_align:[o.TextAlign,\"left\"],text_baseline:[o.TextBaseline,\"bottom\"]})}}i.Title=c,c.__name__=\"Title\",c.init_Title()},\n",
       "      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(1),l=e(36),s=e(115),a=e(72),n=e(79),r=o.__importStar(e(18));class _ extends l.AnnotationView{constructor(){super(...arguments),this.rotate=!0,this._invalidate_toolbar=!0,this._previous_bbox=new n.BBox}initialize(){super.initialize(),this.el=a.div(),this.plot_view.canvas_view.add_event(this.el)}async lazy_initialize(){this._toolbar_view=await s.build_view(this.model.toolbar,{parent:this}),this.plot_view.visibility_callbacks.push(e=>this._toolbar_view.set_visibility(e))}remove(){this._toolbar_view.remove(),a.remove(this.el),super.remove()}render(){this.model.visible||a.undisplay(this.el),super.render()}_render(){const{bbox:e}=this.panel;this._previous_bbox.equals(e)||(a.position(this.el,e),this._previous_bbox=e),this._invalidate_toolbar&&(this.el.style.position=\"absolute\",this.el.style.overflow=\"hidden\",this._toolbar_view.render(),a.empty(this.el),this.el.appendChild(this._toolbar_view.el),this._invalidate_toolbar=!1),a.display(this.el)}_get_size(){const{tools:e,logo:i}=this.model.toolbar;return{width:30*e.length+(null!=i?25:0),height:30}}}t.ToolbarPanelView=_,_.__name__=\"ToolbarPanelView\";class h extends l.Annotation{constructor(e){super(e)}static init_ToolbarPanel(){this.prototype.default_view=_,this.define({toolbar:[r.Instance]})}}t.ToolbarPanel=h,h.__name__=\"ToolbarPanel\",h.init_ToolbarPanel()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),l=t(36),o=t(72),n=s.__importStar(t(18)),a=t(172),h=t(173),r=s.__importDefault(t(174));class c extends l.AnnotationView{initialize(){super.initialize(),this.el=o.div({class:a.bk_tooltip}),o.undisplay(this.el),this.plot_view.canvas_view.add_overlay(this.el)}remove(){o.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.content.change,()=>this.render()),this.connect(this.model.properties.position.change,()=>this._reposition())}styles(){return[...super.styles(),r.default]}render(){this.model.visible||o.undisplay(this.el),super.render()}_render(){const{content:t}=this.model;null!=t?(o.empty(this.el),o.classes(this.el).toggle(a.bk_tooltip_custom,this.model.custom),this.el.appendChild(t),this.model.show_arrow&&this.el.classList.add(a.bk_tooltip_arrow)):o.undisplay(this.el)}_reposition(){const{position:t}=this.model;if(null==t)return void o.undisplay(this.el);const[e,i]=t,s=(()=>{const t=this.parent.layout.bbox.relativize(),{attachment:s}=this.model;switch(s){case\"horizontal\":return e<t.hcenter?\"right\":\"left\";case\"vertical\":return i<t.vcenter?\"below\":\"above\";default:return s}})();let l;this.el.classList.remove(h.bk_right),this.el.classList.remove(h.bk_left),this.el.classList.remove(h.bk_above),this.el.classList.remove(h.bk_below),o.display(this.el);let n=null,a=null;switch(s){case\"right\":this.el.classList.add(h.bk_left),n=e+(this.el.offsetWidth-this.el.clientWidth)+10,l=i-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(h.bk_right),a=this.plot_view.layout.bbox.width-e+10,l=i-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(h.bk_above),l=i+(this.el.offsetHeight-this.el.clientHeight)+10,n=Math.round(e-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(h.bk_below),l=i-this.el.offsetHeight-10,n=Math.round(e-this.el.offsetWidth/2)}this.el.style.top=l+\"px\",this.el.style.left=null!=n?n+\"px\":\"auto\",this.el.style.right=null!=a?a+\"px\":\"auto\"}}i.TooltipView=c,c.__name__=\"TooltipView\";class d extends l.Annotation{constructor(t){super(t)}static init_Tooltip(){this.prototype.default_view=c,this.define({attachment:[n.TooltipAttachment,\"horizontal\"],inner_only:[n.Boolean,!0],show_arrow:[n.Boolean,!0]}),this.override({level:\"overlay\"}),this.internal({position:[n.Any,null],content:[n.Any,()=>o.div()],custom:[n.Any]})}clear(){this.position=null}}i.Tooltip=d,d.__name__=\"Tooltip\",d.init_Tooltip()},\n",
       "      function _(o,t,l){Object.defineProperty(l,\"__esModule\",{value:!0}),l.bk_tooltip=\"bk-tooltip\",l.bk_tooltip_arrow=\"bk-tooltip-arrow\",l.bk_tooltip_custom=\"bk-tooltip-custom\",l.bk_tooltip_row_label=\"bk-tooltip-row-label\",l.bk_tooltip_row_value=\"bk-tooltip-row-value\",l.bk_tooltip_color_block=\"bk-tooltip-color-block\"},\n",
       "      function _(e,b,k){Object.defineProperty(k,\"__esModule\",{value:!0}),k.bk_active=\"bk-active\",k.bk_inline=\"bk-inline\",k.bk_left=\"bk-left\",k.bk_right=\"bk-right\",k.bk_above=\"bk-above\",k.bk_below=\"bk-below\",k.bk_up=\"bk-up\",k.bk_down=\"bk-down\",k.bk_side=function(e){switch(e){case\"above\":return k.bk_above;case\"below\":return k.bk_below;case\"left\":return k.bk_left;case\"right\":return k.bk_right}}},\n",
       "      function _(o,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root {\\n  /* Same border color used everywhere */\\n  /* Gray of icons */\\n}\\n.bk-root .bk-tooltip {\\n  font-weight: 300;\\n  font-size: 12px;\\n  position: absolute;\\n  padding: 5px;\\n  border: 1px solid #e5e5e5;\\n  color: #2f2f2f;\\n  background-color: white;\\n  pointer-events: none;\\n  opacity: 0.95;\\n  z-index: 100;\\n}\\n.bk-root .bk-tooltip > div:not(:first-child) {\\n  /* gives space when multiple elements are being hovered over */\\n  margin-top: 5px;\\n  border-top: #e5e5e5 1px dashed;\\n}\\n.bk-root .bk-tooltip.bk-left.bk-tooltip-arrow::before {\\n  position: absolute;\\n  margin: -7px 0 0 0;\\n  top: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 7px 0 7px 0;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  left: -10px;\\n  border-right-width: 10px;\\n  border-right-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-left::before {\\n  left: -10px;\\n  border-right-width: 10px;\\n  border-right-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-right.bk-tooltip-arrow::after {\\n  position: absolute;\\n  margin: -7px 0 0 0;\\n  top: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 7px 0 7px 0;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  right: -10px;\\n  border-left-width: 10px;\\n  border-left-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-right::after {\\n  right: -10px;\\n  border-left-width: 10px;\\n  border-left-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-above::before {\\n  position: absolute;\\n  margin: 0 0 0 -7px;\\n  left: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 0 7px 0 7px;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  top: -10px;\\n  border-bottom-width: 10px;\\n  border-bottom-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-below::after {\\n  position: absolute;\\n  margin: 0 0 0 -7px;\\n  left: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 0 7px 0 7px;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  bottom: -10px;\\n  border-top-width: 10px;\\n  border-top-color: #909599;\\n}\\n.bk-root .bk-tooltip-row-label {\\n  text-align: right;\\n  color: #26aae1;\\n  /* blue from toolbar highlighting */\\n}\\n.bk-root .bk-tooltip-row-value {\\n  color: default;\\n  /* seems to be necessary for notebook */\\n}\\n.bk-root .bk-tooltip-color-block {\\n  width: 12px;\\n  height: 12px;\\n  margin-left: 5px;\\n  margin-right: 5px;\\n  outline: #dddddd solid 1px;\\n  display: inline-block;\\n}\\n'},\n",
       "      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1),r=e(123),o=e(84),h=e(28),n=i.__importStar(e(18));class l extends r.UpperLowerView{connect_signals(){super.connect_signals(),this.connect(this.model.source.streaming,()=>this.set_data(this.model.source)),this.connect(this.model.source.patching,()=>this.set_data(this.model.source)),this.connect(this.model.source.change,()=>this.set_data(this.model.source))}_render(){this._map_data();const{ctx:e}=this.layer;if(this.visuals.line.doit)for(let s=0,t=this._lower_sx.length;s<t;s++)this.visuals.line.set_vectorize(e,s),e.beginPath(),e.moveTo(this._lower_sx[s],this._lower_sy[s]),e.lineTo(this._upper_sx[s],this._upper_sy[s]),e.stroke();const s=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.model.lower_head)for(let t=0,i=this._lower_sx.length;t<i;t++)e.save(),e.translate(this._lower_sx[t],this._lower_sy[t]),e.rotate(s+Math.PI),this.model.lower_head.render(e,t),e.restore();if(null!=this.model.upper_head)for(let t=0,i=this._upper_sx.length;t<i;t++)e.save(),e.translate(this._upper_sx[t],this._upper_sy[t]),e.rotate(s),this.model.upper_head.render(e,t),e.restore()}}t.WhiskerView=l,l.__name__=\"WhiskerView\";class _ extends r.UpperLower{constructor(e){super(e)}static init_Whisker(){this.prototype.default_view=l,this.mixins(h.LineVector),this.define({lower_head:[n.Instance,()=>new o.TeeHead({level:\"underlay\",size:10})],upper_head:[n.Instance,()=>new o.TeeHead({level:\"underlay\",size:10})]}),this.override({level:\"underlay\"})}}t.Whisker=_,_.__name__=\"Whisker\",_.init_Whisker()},\n",
       "      function _(i,a,e){Object.defineProperty(e,\"__esModule\",{value:!0});var r=i(177);e.Axis=r.Axis;var s=i(179);e.CategoricalAxis=s.CategoricalAxis;var x=i(182);e.ContinuousAxis=x.ContinuousAxis;var A=i(183);e.DatetimeAxis=A.DatetimeAxis;var o=i(184);e.LinearAxis=o.LinearAxis;var t=i(197);e.LogAxis=t.LogAxis;var n=i(200);e.MercatorAxis=n.MercatorAxis},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),a=t(178),l=s.__importStar(t(28)),n=s.__importStar(t(18)),o=t(9),r=t(8),_=t(98),{abs:h,min:c,max:d}=Math;class m extends a.GuideRendererView{constructor(){super(...arguments),this.rotate=!0}get panel(){return this.layout}get is_renderable(){const[t,e]=this.ranges;return t.is_valid&&e.is_valid}_render(){var t;if(!this.is_renderable)return;const e={tick:this._tick_extent(),tick_label:this._tick_label_extents(),axis_label:this._axis_label_extent()},{tick_coords:i}=this,s=this.layer.ctx;s.save(),this._draw_rule(s,e),this._draw_major_ticks(s,e,i),this._draw_minor_ticks(s,e,i),this._draw_major_labels(s,e,i),this._draw_axis_label(s,e,i),null===(t=this._paint)||void 0===t||t.call(this,s,e,i),s.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_layout())}get_size(){if(this.model.visible&&null==this.model.fixed_location&&this.is_renderable){const t=this._get_size();return{width:0,height:Math.round(t)}}return{width:0,height:0}}_get_size(){return this._tick_extent()+this._tick_label_extent()+this._axis_label_extent()}get needs_clip(){return null!=this.model.fixed_location}_draw_rule(t,e){if(!this.visuals.axis_line.doit)return;const[i,s]=this.rule_coords,[a,l]=this.coordinates.map_to_screen(i,s),[n,o]=this.normals,[r,_]=this.offsets;this.visuals.axis_line.set_value(t),t.beginPath(),t.moveTo(Math.round(a[0]+n*r),Math.round(l[0]+o*_));for(let e=1;e<a.length;e++){const i=Math.round(a[e]+n*r),s=Math.round(l[e]+o*_);t.lineTo(i,s)}t.stroke()}_draw_major_ticks(t,e,i){const s=this.model.major_tick_in,a=this.model.major_tick_out,l=this.visuals.major_tick_line;this._draw_ticks(t,i.major,s,a,l)}_draw_minor_ticks(t,e,i){const s=this.model.minor_tick_in,a=this.model.minor_tick_out,l=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,s,a,l)}_draw_major_labels(t,e,i){const s=i.major,a=this.compute_labels(s[this.dimension]),l=this.model.major_label_orientation,n=e.tick+this.model.major_label_standoff,o=this.visuals.major_label_text;this._draw_oriented_labels(t,a,s,l,this.panel.side,n,o)}_draw_axis_label(t,e,i){if(null==this.model.axis_label||0==this.model.axis_label.length||null!=this.model.fixed_location)return;let s,a;const{bbox:l}=this.panel;switch(this.panel.side){case\"above\":s=l.hcenter,a=l.bottom;break;case\"below\":s=l.hcenter,a=l.top;break;case\"left\":s=l.right,a=l.vcenter;break;case\"right\":s=l.left,a=l.vcenter;break;default:throw new Error(\"unknown side: \"+this.panel.side)}const n=[[s],[a]],r=e.tick+o.sum(e.tick_label)+this.model.axis_label_standoff,_=this.visuals.axis_label_text;this._draw_oriented_labels(t,[this.model.axis_label],n,\"parallel\",this.panel.side,r,_,\"screen\")}_draw_ticks(t,e,i,s,a){if(!a.doit)return;const[l,n]=e,[o,r]=this.coordinates.map_to_screen(l,n),[_,h]=this.normals,[c,d]=this.offsets,[m,b]=[_*(c-i),h*(d-i)],[u,x]=[_*(c+s),h*(d+s)];a.set_value(t),t.beginPath();for(let e=0;e<o.length;e++){const i=Math.round(o[e]+u),s=Math.round(r[e]+x),a=Math.round(o[e]+m),l=Math.round(r[e]+b);t.moveTo(i,s),t.lineTo(a,l)}t.stroke()}_draw_oriented_labels(t,e,i,s,a,l,n,o=\"data\"){if(!n.doit||0==e.length)return;let _,h,c,d;if(\"screen\"==o)[_,h]=i,[c,d]=[0,0];else{const[t,e]=i;[_,h]=this.coordinates.map_to_screen(t,e),[c,d]=this.offsets}const[m,b]=this.normals,u=m*(c+l),x=b*(d+l);let f;n.set_value(t),this.panel.apply_label_text_heuristics(t,s),f=r.isString(s)?this.panel.get_label_angle_heuristic(s):-s;for(let i=0;i<_.length;i++){const s=Math.round(_[i]+u),a=Math.round(h[i]+x);t.translate(s,a),t.rotate(f),t.fillText(e[i],0,0),t.rotate(-f),t.translate(-s,-a)}}_axis_label_extent(){if(null==this.model.axis_label||\"\"==this.model.axis_label)return 0;const t=this.model.axis_label_standoff,e=this.visuals.axis_label_text;return this._oriented_labels_extent([this.model.axis_label],\"parallel\",this.panel.side,t,e)}_tick_extent(){return this.model.major_tick_out}_tick_label_extent(){return o.sum(this._tick_label_extents())}_tick_label_extents(){const t=this.tick_coords.major,e=this.compute_labels(t[this.dimension]),i=this.model.major_label_orientation,s=this.model.major_label_standoff,a=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,this.panel.side,s,a)]}_oriented_labels_extent(t,e,i,s,a){if(0==t.length)return 0;const l=this.layer.ctx;let n,o;a.set_value(l),r.isString(e)?(n=1,o=this.panel.get_label_angle_heuristic(e)):(n=2,o=-e),o=Math.abs(o);const _=Math.cos(o),h=Math.sin(o);let c=0;for(let e=0;e<t.length;e++){const s=1.1*l.measureText(t[e]).width,a=.9*l.measureText(t[e]).ascent;let o;o=\"above\"==i||\"below\"==i?s*h+a/n*_:s*_+a/n*h,o>c&&(c=o)}return c>0&&(c+=s),c}get normals(){return this.panel.normals}get dimension(){return this.panel.dimension}compute_labels(t){const e=this.model.formatter.doFormat(t,this);for(let i=0;i<t.length;i++)t[i]in this.model.major_label_overrides&&(e[i]=this.model.major_label_overrides[t[i]]);return e}get offsets(){if(null!=this.model.fixed_location)return[0,0];const{frame:t}=this.plot_view;let[e,i]=[0,0];switch(this.panel.side){case\"below\":i=h(this.panel.bbox.top-t.bbox.bottom);break;case\"above\":i=h(this.panel.bbox.bottom-t.bbox.top);break;case\"right\":e=h(this.panel.bbox.left-t.bbox.right);break;case\"left\":e=h(this.panel.bbox.right-t.bbox.left)}return[e,i]}get ranges(){const t=this.dimension,e=(t+1)%2,{ranges:i}=this.coordinates;return[i[t],i[e]]}get computed_bounds(){const[t]=this.ranges,e=this.model.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];{let t,s;const[a,l]=e,[n,o]=i;return h(a-l)>h(n-o)?(t=d(c(a,l),n),s=c(d(a,l),o)):(t=c(a,l),s=d(a,l)),[t,s]}}get rule_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,a]=this.computed_bounds,l=[new Array(2),new Array(2)];return l[t][0]=Math.max(s,i.min),l[t][1]=Math.min(a,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l}get tick_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,a]=this.computed_bounds,l=this.model.ticker.get_ticks(s,a,i,this.loc,{}),n=l.major,o=l.minor,r=[[],[]],_=[[],[]],[h,c]=[i.min,i.max];for(let i=0;i<n.length;i++)n[i]<h||n[i]>c||(r[t].push(n[i]),r[e].push(this.loc));for(let i=0;i<o.length;i++)o[i]<h||o[i]>c||(_[t].push(o[i]),_[e].push(this.loc));return{major:r,minor:_}}get loc(){const{fixed_location:t}=this.model;if(null!=t){if(r.isNumber(t))return t;const[,e]=this.ranges;if(e instanceof _.FactorRange)return e.synthetic(t);throw new Error(\"unexpected\")}const[,e]=this.ranges;switch(this.panel.side){case\"left\":case\"below\":return e.start;case\"right\":case\"above\":return e.end}}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box})}}i.AxisView=m,m.__name__=\"AxisView\";class b extends a.GuideRenderer{constructor(t){super(t)}static init_Axis(){this.prototype.default_view=m,this.mixins([[\"axis_\",l.Line],[\"major_tick_\",l.Line],[\"minor_tick_\",l.Line],[\"major_label_\",l.Text],[\"axis_label_\",l.Text]]),this.define({bounds:[n.Any,\"auto\"],ticker:[n.Instance],formatter:[n.Instance],axis_label:[n.String,\"\"],axis_label_standoff:[n.Int,5],major_label_standoff:[n.Int,5],major_label_orientation:[n.Any,\"horizontal\"],major_label_overrides:[n.Any,{}],major_tick_in:[n.Number,2],major_tick_out:[n.Number,6],minor_tick_in:[n.Number,0],minor_tick_out:[n.Number,4],fixed_location:[n.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"11px\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"13px\",axis_label_text_font_style:\"italic\"})}}i.Axis=b,b.__name__=\"Axis\",b.init_Axis()},\n",
       "      function _(e,r,d){Object.defineProperty(d,\"__esModule\",{value:!0});const i=e(70);class n extends i.RendererView{}d.GuideRendererView=n,n.__name__=\"GuideRendererView\";class t extends i.Renderer{constructor(e){super(e)}static init_GuideRenderer(){this.override({level:\"guide\"})}}d.GuideRenderer=t,t.__name__=\"GuideRenderer\",t.init_GuideRenderer()},\n",
       "      function _(t,s,o){Object.defineProperty(o,\"__esModule\",{value:!0});const e=t(1),i=t(177),r=t(180),a=t(181),l=e.__importStar(t(28)),_=e.__importStar(t(18));class n extends i.AxisView{_paint(t,s,o){this._draw_group_separators(t,s,o)}_draw_group_separators(t,s,o){const[e]=this.ranges,[i,r]=this.computed_bounds;if(!e.tops||e.tops.length<2||!this.visuals.separator_line.doit)return;const a=this.dimension,l=(a+1)%2,_=[[],[]];let n=0;for(let t=0;t<e.tops.length-1;t++){let s,o;for(let i=n;i<e.factors.length;i++)if(e.factors[i][0]==e.tops[t+1]){[s,o]=[e.factors[i-1],e.factors[i]],n=i;break}const h=(e.synthetic(s)+e.synthetic(o))/2;h>i&&h<r&&(_[a].push(h),_[l].push(this.loc))}const h=this._tick_label_extent();this._draw_ticks(t,_,-3,h-6,this.visuals.separator_line)}_draw_major_labels(t,s,o){const e=this._get_factor_info();let i=s.tick+this.model.major_label_standoff;for(let o=0;o<e.length;o++){const[r,a,l,_]=e[o];this._draw_oriented_labels(t,r,a,l,this.panel.side,i,_),i+=s.tick_label[o]}}_tick_label_extents(){const t=this._get_factor_info(),s=[];for(const[o,,e,i]of t){const t=this._oriented_labels_extent(o,e,this.panel.side,this.model.major_label_standoff,i);s.push(t)}return s}_get_factor_info(){const[t]=this.ranges,[s,o]=this.computed_bounds,e=this.loc,i=this.model.ticker.get_ticks(s,o,t,e,{}),r=this.tick_coords,a=[];if(1==t.levels){const t=i.major,s=this.model.formatter.doFormat(t,this);a.push([s,r.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){const t=i.major.map(t=>t[1]),s=this.model.formatter.doFormat(t,this);a.push([s,r.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([i.tops,r.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){const t=i.major.map(t=>t[2]),s=this.model.formatter.doFormat(t,this),o=i.mids.map(t=>t[1]);a.push([s,r.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([o,r.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),a.push([i.tops,r.tops,this.model.group_label_orientation,this.visuals.group_text])}return a}get tick_coords(){const t=this.dimension,s=(t+1)%2,[o]=this.ranges,[e,i]=this.computed_bounds,r=this.model.ticker.get_ticks(e,i,o,this.loc,{}),a={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return a.major[t]=r.major,a.major[s]=r.major.map(t=>this.loc),3==o.levels&&(a.mids[t]=r.mids,a.mids[s]=r.mids.map(t=>this.loc)),o.levels>1&&(a.tops[t]=r.tops,a.tops[s]=r.tops.map(t=>this.loc)),a}}o.CategoricalAxisView=n,n.__name__=\"CategoricalAxisView\";class h extends i.Axis{constructor(t){super(t)}static init_CategoricalAxis(){this.prototype.default_view=n,this.mixins([[\"separator_\",l.Line],[\"group_\",l.Text],[\"subgroup_\",l.Text]]),this.define({group_label_orientation:[_.Any,\"parallel\"],subgroup_label_orientation:[_.Any,\"parallel\"]}),this.override({ticker:()=>new r.CategoricalTicker,formatter:()=>new a.CategoricalTickFormatter,separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"11px\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"11px\"})}}o.CategoricalAxis=h,h.__name__=\"CategoricalAxis\",h.init_CategoricalAxis()},\n",
       "      function _(t,c,e){Object.defineProperty(e,\"__esModule\",{value:!0});const o=t(129);class s extends o.Ticker{constructor(t){super(t)}get_ticks(t,c,e,o,s){return{major:this._collect(e.factors,e,t,c),minor:[],tops:this._collect(e.tops||[],e,t,c),mids:this._collect(e.mids||[],e,t,c)}}_collect(t,c,e,o){const s=[];for(const r of t){const t=c.synthetic(r);t>e&&t<o&&s.push(r)}return s}}e.CategoricalTicker=s,s.__name__=\"CategoricalTicker\"},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(131),c=e(9);class a extends o.TickFormatter{constructor(e){super(e)}doFormat(e,t){return c.copy(e)}}r.CategoricalTickFormatter=a,a.__name__=\"CategoricalTickFormatter\"},\n",
       "      function _(s,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=s(177);class t extends o.Axis{constructor(s){super(s)}}n.ContinuousAxis=t,t.__name__=\"ContinuousAxis\"},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(184),a=e(185),r=e(190);class n extends s.LinearAxisView{}i.DatetimeAxisView=n,n.__name__=\"DatetimeAxisView\";class _ extends s.LinearAxis{constructor(e){super(e)}static init_DatetimeAxis(){this.prototype.default_view=n,this.override({ticker:()=>new r.DatetimeTicker,formatter:()=>new a.DatetimeTickFormatter})}}i.DatetimeAxis=_,_.__name__=\"DatetimeAxis\",_.init_DatetimeAxis()},\n",
       "      function _(e,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=e(177),n=e(182),r=e(130),a=e(126);class _ extends t.AxisView{}s.LinearAxisView=_,_.__name__=\"LinearAxisView\";class c extends n.ContinuousAxis{constructor(e){super(e)}static init_LinearAxis(){this.prototype.default_view=_,this.override({ticker:()=>new a.BasicTicker,formatter:()=>new r.BasicTickFormatter})}}s.LinearAxis=c,c.__name__=\"LinearAxis\",c.init_LinearAxis()},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(1),i=r.__importDefault(t(186)),n=t(131),o=t(19),a=r.__importStar(t(18)),c=t(187),m=t(9),u=t(8);function h(t){return i.default(t,\"%Y %m %d %H %M %S\").split(/\\s+/).map(t=>parseInt(t,10))}function d(t,s){if(u.isFunction(s))return s(t);{const e=c.sprintf(\"$1%06d\",function(t){return Math.round(t/1e3%1*1e6)}(t));return-1==(s=s.replace(/((^|[^%])(%%)*)%f/,e)).indexOf(\"%\")?s:i.default(t,s)}}const l=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"];class _ extends n.TickFormatter{constructor(t){super(t),this.strip_leading_zeros=!0}static init_DatetimeTickFormatter(){this.define({microseconds:[a.Array,[\"%fus\"]],milliseconds:[a.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[a.Array,[\"%Ss\"]],minsec:[a.Array,[\":%M:%S\"]],minutes:[a.Array,[\":%M\",\"%Mm\"]],hourmin:[a.Array,[\"%H:%M\"]],hours:[a.Array,[\"%Hh\",\"%H:%M\"]],days:[a.Array,[\"%m/%d\",\"%a%d\"]],months:[a.Array,[\"%m/%Y\",\"%b %Y\"]],years:[a.Array,[\"%Y\"]]})}initialize(){super.initialize(),this._update_width_formats()}_update_width_formats(){const t=+i.default(new Date),s=function(s){const e=s.map(s=>d(t,s).length),r=m.sort_by(m.zip(e,s),([t])=>t);return m.unzip(r)};this._width_formats={microseconds:s(this.microseconds),milliseconds:s(this.milliseconds),seconds:s(this.seconds),minsec:s(this.minsec),minutes:s(this.minutes),hourmin:s(this.hourmin),hours:s(this.hours),days:s(this.days),months:s(this.months),years:s(this.years)}}_get_resolution_str(t,s){const e=1.1*t;switch(!1){case!(e<.001):return\"microseconds\";case!(e<1):return\"milliseconds\";case!(e<60):return s>=60?\"minsec\":\"seconds\";case!(e<3600):return s>=3600?\"hourmin\":\"minutes\";case!(e<86400):return\"hours\";case!(e<2678400):return\"days\";case!(e<31536e3):return\"months\";default:return\"years\"}}doFormat(t,s){if(0==t.length)return[];const e=Math.abs(t[t.length-1]-t[0])/1e3,r=e/(t.length-1),i=this._get_resolution_str(r,e),[,[n]]=this._width_formats[i],a=[],c=l.indexOf(i),m={};for(const t of l)m[t]=0;m.seconds=5,m.minsec=4,m.minutes=4,m.hourmin=3,m.hours=3;for(const s of t){let t,e;try{e=h(s),t=d(s,n)}catch(t){o.logger.warn(\"unable to format tick for timestamp value \"+s),o.logger.warn(\" - \"+t),a.push(\"ERR\");continue}let r=!1,u=c;for(;0==e[m[l[u]]];){let n;if(u+=1,u==l.length)break;if((\"minsec\"==i||\"hourmin\"==i)&&!r){if(\"minsec\"==i&&0==e[4]&&0!=e[5]||\"hourmin\"==i&&0==e[3]&&0!=e[4]){n=this._width_formats[l[c-1]][1][0],t=d(s,n);break}r=!0}n=this._width_formats[l[u]][1][0],t=d(s,n)}if(this.strip_leading_zeros){let s=t.replace(/^0+/g,\"\");s!=t&&isNaN(parseInt(s))&&(s=\"0\"+s),a.push(s)}else a.push(t)}return a}}e.DatetimeTickFormatter=_,_.__name__=\"DatetimeTickFormatter\",_.init_DatetimeTickFormatter()},\n",
       "      function _(e,t,n){!function(e){\"object\"==typeof t&&t.exports?t.exports=e():\"function\"==typeof define?define(e):this.tz=e()}((function(){function e(e,t,n){var r,o=t.day[1];do{r=new Date(Date.UTC(n,t.month,Math.abs(o++)))}while(t.day[0]<7&&r.getUTCDay()!=t.day[0]);return(r={clock:t.clock,sort:r.getTime(),rule:t,save:6e4*t.save,offset:e.offset})[r.clock]=r.sort+6e4*t.time,r.posix?r.wallclock=r[r.clock]+(e.offset+t.saved):r.posix=r[r.clock]-(e.offset+t.saved),r}function t(t,n,r){var o,a,u,i,l,s,c,f=t[t.zone],h=[],T=new Date(r).getUTCFullYear(),g=1;for(o=1,a=f.length;o<a&&!(f[o][n]<=r);o++);if((u=f[o]).rules){for(s=t[u.rules],c=T+1;c>=T-g;--c)for(o=0,a=s.length;o<a;o++)s[o].from<=c&&c<=s[o].to?h.push(e(u,s[o],c)):s[o].to<c&&1==g&&(g=c-s[o].to);for(h.sort((function(e,t){return e.sort-t.sort})),o=0,a=h.length;o<a;o++)r>=h[o][n]&&h[o][h[o].clock]>u[h[o].clock]&&(i=h[o])}return i&&((l=/^(.*)\\/(.*)$/.exec(u.format))?i.abbrev=l[i.save?2:1]:i.abbrev=u.format.replace(/%s/,i.rule.letter)),i||u}function n(e,n){return\"UTC\"==e.zone?n:(e.entry=t(e,\"posix\",n),n+e.entry.offset+e.entry.save)}function r(e,n){return\"UTC\"==e.zone?n:(e.entry=r=t(e,\"wallclock\",n),0<(o=n-r.wallclock)&&o<r.save?null:n-r.offset-r.save);var r,o}function o(e,t,o){var a,i=+(o[1]+1),s=o[2]*i,c=u.indexOf(o[3].toLowerCase());if(c>9)t+=s*l[c-10];else{if(a=new Date(n(e,t)),c<7)for(;s;)a.setUTCDate(a.getUTCDate()+i),a.getUTCDay()==c&&(s-=i);else 7==c?a.setUTCFullYear(a.getUTCFullYear()+s):8==c?a.setUTCMonth(a.getUTCMonth()+s):a.setUTCDate(a.getUTCDate()+s);null==(t=r(e,a.getTime()))&&(t=r(e,a.getTime()+864e5*i)-864e5*i)}return t}var a={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(e,t,n,r){var o,a,u=this.entry.offset+this.entry.save,i=Math.abs(u/1e3),l=[],s=3600;for(o=0;o<3;o++)l.push((\"0\"+Math.floor(i/s)).slice(-2)),i%=s,s/=60;return\"^\"!=n||u?(\"^\"==n&&(r=3),3==r?(a=(a=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=n&&(a=a.replace(/:00$/,\"\"))):r?(a=l.slice(0,r+1).join(\":\"),\"^\"==n&&(a=a.replace(/:00$/,\"\"))):a=l.slice(0,2).join(\"\"),a=(a=(u<0?\"-\":\"+\")+a).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[n]||\"$1$2\")):\"Z\"},\"%\":function(e){return\"%\"},n:function(e){return\"\\n\"},t:function(e){return\"\\t\"},U:function(e){return s(e,0)},W:function(e){return s(e,1)},V:function(e){return c(e)[0]},G:function(e){return c(e)[1]},g:function(e){return c(e)[1]%100},j:function(e){return Math.floor((e.getTime()-Date.UTC(e.getUTCFullYear(),0))/864e5)+1},s:function(e){return Math.floor(e.getTime()/1e3)},C:function(e){return Math.floor(e.getUTCFullYear()/100)},N:function(e){return e.getTime()%1e3*1e6},m:function(e){return e.getUTCMonth()+1},Y:function(e){return e.getUTCFullYear()},y:function(e){return e.getUTCFullYear()%100},H:function(e){return e.getUTCHours()},M:function(e){return e.getUTCMinutes()},S:function(e){return e.getUTCSeconds()},e:function(e){return e.getUTCDate()},d:function(e){return e.getUTCDate()},u:function(e){return e.getUTCDay()||7},w:function(e){return e.getUTCDay()},l:function(e){return e.getUTCHours()%12||12},I:function(e){return e.getUTCHours()%12||12},k:function(e){return e.getUTCHours()},Z:function(e){return this.entry.abbrev},a:function(e){return this[this.locale].day.abbrev[e.getUTCDay()]},A:function(e){return this[this.locale].day.full[e.getUTCDay()]},h:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},b:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},B:function(e){return this[this.locale].month.full[e.getUTCMonth()]},P:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)].toLowerCase()},p:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)]},R:function(e,t){return this.convert([t,\"%H:%M\"])},T:function(e,t){return this.convert([t,\"%H:%M:%S\"])},D:function(e,t){return this.convert([t,\"%m/%d/%y\"])},F:function(e,t){return this.convert([t,\"%Y-%m-%d\"])},x:function(e,t){return this.convert([t,this[this.locale].date])},r:function(e,t){return this.convert([t,this[this.locale].time12||\"%I:%M:%S\"])},X:function(e,t){return this.convert([t,this[this.locale].time24])},c:function(e,t){return this.convert([t,this[this.locale].dateTime])},convert:function(e){if(!e.length)return\"1.0.23\";var t,a,u,l,s,c=Object.create(this),f=[];for(t=0;t<e.length;t++)if(l=e[t],Array.isArray(l))t||isNaN(l[1])?l.splice.apply(e,[t--,1].concat(l)):s=l;else if(isNaN(l)){if(\"string\"==(u=typeof l))~l.indexOf(\"%\")?c.format=l:t||\"*\"!=l?!t&&(u=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(l))?((s=[]).push.apply(s,u.slice(1,8)),u[9]?(s.push(u[10]+1),s.push.apply(s,u[11].split(/:/))):u[8]&&s.push(1)):/^\\w{2,3}_\\w{2}$/.test(l)?c.locale=l:(u=i.exec(l))?f.push(u):c.zone=l:s=l;else if(\"function\"==u){if(u=l.call(c))return u}else if(/^\\w{2,3}_\\w{2}$/.test(l.name))c[l.name]=l;else if(l.zones){for(u in l.zones)c[u]=l.zones[u];for(u in l.rules)c[u]=l.rules[u]}}else t||(s=l);if(c[c.locale]||delete c.locale,c[c.zone]||delete c.zone,null!=s){if(\"*\"==s)s=c.clock();else if(Array.isArray(s)){for(u=[],a=!s[7],t=0;t<11;t++)u[t]=+(s[t]||0);--u[1],s=Date.UTC.apply(Date.UTC,u)+-u[7]*(36e5*u[8]+6e4*u[9]+1e3*u[10])}else s=Math.floor(s);if(!isNaN(s)){if(a&&(s=r(c,s)),null==s)return s;for(t=0,a=f.length;t<a;t++)s=o(c,s,f[t]);return c.format?(u=new Date(n(c,s)),c.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,(function(e,t,n,r,o){var a,i,l=\"0\";if(a=c[o]){for(e=String(a.call(c,u,s,t,n.length)),\"_\"==(t||a.style)&&(l=\" \"),i=\"-\"==t?0:a.pad||0;e.length<i;)e=l+e;for(i=\"-\"==t?0:r||a.pad;e.length<i;)e=l+e;\"N\"==o&&i<e.length&&(e=e.slice(0,i)),\"^\"==t&&(e=e.toUpperCase())}return e}))):s}}return function(){return c.convert(arguments)}},locale:\"en_US\",en_US:{date:\"%m/%d/%Y\",time24:\"%I:%M:%S %p\",time12:\"%I:%M:%S %p\",dateTime:\"%a %d %b %Y %I:%M:%S %p %Z\",meridiem:[\"AM\",\"PM\"],month:{abbrev:\"Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec\".split(\"|\"),full:\"January|February|March|April|May|June|July|August|September|October|November|December\".split(\"|\")},day:{abbrev:\"Sun|Mon|Tue|Wed|Thu|Fri|Sat\".split(\"|\"),full:\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday\".split(\"|\")}}},u=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",i=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+u+\")s?\\\\s*$\",\"i\"),l=[36e5,6e4,1e3,1];function s(e,t){var n,r,o;return r=new Date(Date.UTC(e.getUTCFullYear(),0)),n=Math.floor((e.getTime()-r.getTime())/864e5),r.getUTCDay()==t?o=0:8==(o=7-r.getUTCDay()+t)&&(o=1),n>=o?Math.floor((n-o)/7)+1:0}function c(e){var t,n,r;return n=e.getUTCFullYear(),t=new Date(Date.UTC(n,0)).getUTCDay(),(r=s(e,1)+(t>1&&t<=4?1:0))?53!=r||4==t||3==t&&29==new Date(n,1,29).getDate()?[r,e.getUTCFullYear()]:[1,e.getUTCFullYear()+1]:(n=e.getUTCFullYear()-1,[r=4==(t=new Date(Date.UTC(n,0)).getUTCDay())||3==t&&29==new Date(n,1,29).getDate()?53:52,e.getUTCFullYear()-1])}return u=u.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,(function(e){a[e].pad=2})),a.N.pad=9,a.j.pad=3,a.k.style=\"_\",a.l.style=\"_\",a.e.style=\"_\",function(){return a.convert(arguments)}}))},\n",
       "      function _(r,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=r(1),i=n.__importStar(r(188)),u=r(189),a=n.__importDefault(r(186)),f=r(29),o=r(8);function l(r,...e){return u.sprintf(r,...e)}function s(r,e,t){if(o.isNumber(r)){return l((()=>{switch(!1){case Math.floor(r)!=r:return\"%d\";case!(Math.abs(r)>.1&&Math.abs(r)<1e3):return\"%0.3f\";default:return\"%0.3e\"}})(),r)}return\"\"+r}function c(r,e,n){if(null==e)return s;if(null!=n&&r in n){const e=n[r];if(o.isString(e)){if(e in t.DEFAULT_FORMATTERS)return t.DEFAULT_FORMATTERS[e];throw new Error(`Unknown tooltip field formatter type '${e}'`)}return function(r,t,n){return e.format(r,t,n)}}return t.DEFAULT_FORMATTERS.numeral}function m(r,e,t,n){if(\"$\"==r[0]){return function(r,e){if(r in e)return e[r];throw new Error(`Unknown special variable '$${r}'`)}(r.substring(1),n)}return function(r,e,t){const n=e.get_column(r);if(null==n)return null;if(o.isNumber(t))return n[t];const i=n[t.index];if(o.isTypedArray(i)||o.isArray(i)){if(o.isArray(i[0])){return i[t.dim2][t.dim1]}return i[t.flat_index]}return i}(r.substring(1).replace(/[{}]/g,\"\"),e,t)}t.DEFAULT_FORMATTERS={numeral:(r,e,t)=>i.format(r,e),datetime:(r,e,t)=>a.default(r,e),printf:(r,e,t)=>l(e,r)},t.sprintf=l,t.basic_formatter=s,t.get_formatter=c,t.get_value=m,t.replace_placeholders=function(r,e,t,n,i={}){let u,a;if(o.isString(r)?(u=r,a=!1):(u=r.html,a=!0),u=u.replace(/@\\$name/g,r=>`@{${i.name}}`),u=u.replace(/((?:\\$\\w+)|(?:@\\w+)|(?:@{(?:[^{}]+)}))(?:{([^{}]+)})?/g,(r,u,o)=>{const l=m(u,e,t,i);if(null==l)return\"\"+f.escape(\"???\");if(\"safe\"==o)return a=!0,\"\"+l;const s=c(u,o,n);return\"\"+f.escape(s(l,o,i))}),a){return[...(new DOMParser).parseFromString(u,\"text/html\").body.childNodes]}return u}},\n",
       "      function _(e,n,t){\n",
       "      /*!\n",
       "           * numbro.js\n",
       "           * version : 1.6.2\n",
       "           * author : Företagsplatsen AB\n",
       "           * license : MIT\n",
       "           * http://www.foretagsplatsen.se\n",
       "           */\n",
       "      var r,i={},a=i,o=\"en-US\",l=null,u=\"0,0\";void 0!==n&&n.exports;function c(e){this._value=e}function s(e){var n,t=\"\";for(n=0;n<e;n++)t+=\"0\";return t}function f(e,n,t,r){var i,a,o=Math.pow(10,n);return a=e.toFixed(0).search(\"e\")>-1?function(e,n){var t,r,i,a;return t=(a=e.toString()).split(\"e\")[0],i=a.split(\"e\")[1],a=t.split(\".\")[0]+(r=t.split(\".\")[1]||\"\")+s(i-r.length),n>0&&(a+=\".\"+s(n)),a}(e,n):(t(e*o)/o).toFixed(n),r&&(i=new RegExp(\"0{1,\"+r+\"}$\"),a=a.replace(i,\"\")),a}function d(e,n,t){return n.indexOf(\"$\")>-1?function(e,n,t){var r,a,l=n,u=l.indexOf(\"$\"),c=l.indexOf(\"(\"),s=l.indexOf(\"+\"),f=l.indexOf(\"-\"),d=\"\",p=\"\";-1===l.indexOf(\"$\")?\"infix\"===i[o].currency.position?(p=i[o].currency.symbol,i[o].currency.spaceSeparated&&(p=\" \"+p+\" \")):i[o].currency.spaceSeparated&&(d=\" \"):l.indexOf(\" $\")>-1?(d=\" \",l=l.replace(\" $\",\"\")):l.indexOf(\"$ \")>-1?(d=\" \",l=l.replace(\"$ \",\"\")):l=l.replace(\"$\",\"\");if(a=h(e,l,t,p),-1===n.indexOf(\"$\"))switch(i[o].currency.position){case\"postfix\":a.indexOf(\")\")>-1?((a=a.split(\"\")).splice(-1,0,d+i[o].currency.symbol),a=a.join(\"\")):a=a+d+i[o].currency.symbol;break;case\"infix\":break;case\"prefix\":a.indexOf(\"(\")>-1||a.indexOf(\"-\")>-1?(a=a.split(\"\"),r=Math.max(c,f)+1,a.splice(r,0,i[o].currency.symbol+d),a=a.join(\"\")):a=i[o].currency.symbol+d+a;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else u<=1?a.indexOf(\"(\")>-1||a.indexOf(\"+\")>-1||a.indexOf(\"-\")>-1?(a=a.split(\"\"),r=1,(u<c||u<s||u<f)&&(r=0),a.splice(r,0,i[o].currency.symbol+d),a=a.join(\"\")):a=i[o].currency.symbol+d+a:a.indexOf(\")\")>-1?((a=a.split(\"\")).splice(-1,0,d+i[o].currency.symbol),a=a.join(\"\")):a=a+d+i[o].currency.symbol;return a}(e,n,t):n.indexOf(\"%\")>-1?function(e,n,t){var r,i=\"\";e*=100,n.indexOf(\" %\")>-1?(i=\" \",n=n.replace(\" %\",\"\")):n=n.replace(\"%\",\"\");(r=h(e,n,t)).indexOf(\")\")>-1?((r=r.split(\"\")).splice(-1,0,i+\"%\"),r=r.join(\"\")):r=r+i+\"%\";return r}(e,n,t):n.indexOf(\":\")>-1?function(e){var n=Math.floor(e/60/60),t=Math.floor((e-60*n*60)/60),r=Math.round(e-60*n*60-60*t);return n+\":\"+(t<10?\"0\"+t:t)+\":\"+(r<10?\"0\"+r:r)}(e):h(e,n,t)}function h(e,n,t,r){var a,u,c,s,d,h,p,m,x,g,O,b,w,y,M,v,$,B=!1,E=!1,F=!1,k=\"\",U=!1,N=!1,S=!1,j=!1,D=!1,C=\"\",L=\"\",T=Math.abs(e),K=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],G=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",P=!1,R=!1;if(0===e&&null!==l)return l;if(!isFinite(e))return\"\"+e;if(0===n.indexOf(\"{\")){var W=n.indexOf(\"}\");if(-1===W)throw Error('Format should also contain a \"}\"');b=n.slice(1,W),n=n.slice(W+1)}else b=\"\";if(n.indexOf(\"}\")===n.length-1){var Y=n.indexOf(\"{\");if(-1===Y)throw Error('Format should also contain a \"{\"');w=n.slice(Y+1,-1),n=n.slice(0,Y+1)}else w=\"\";if(v=null===($=-1===n.indexOf(\".\")?n.match(/([0-9]+).*/):n.match(/([0-9]+)\\..*/))?-1:$[1].length,-1!==n.indexOf(\"-\")&&(P=!0),n.indexOf(\"(\")>-1?(B=!0,n=n.slice(1,-1)):n.indexOf(\"+\")>-1&&(E=!0,n=n.replace(/\\+/g,\"\")),n.indexOf(\"a\")>-1){if(g=n.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],g=parseInt(g[0],10),U=n.indexOf(\"aK\")>=0,N=n.indexOf(\"aM\")>=0,S=n.indexOf(\"aB\")>=0,j=n.indexOf(\"aT\")>=0,D=U||N||S||j,n.indexOf(\" a\")>-1?(k=\" \",n=n.replace(\" a\",\"\")):n=n.replace(\"a\",\"\"),p=0===(p=(d=Math.floor(Math.log(T)/Math.LN10)+1)%3)?3:p,g&&0!==T&&(h=Math.floor(Math.log(T)/Math.LN10)+1-g,m=3*~~((Math.min(g,d)-p)/3),T/=Math.pow(10,m),-1===n.indexOf(\".\")&&g>3))for(n+=\"[.]\",M=(M=0===h?0:3*~~(h/3)-h)<0?M+3:M,a=0;a<M;a++)n+=\"0\";Math.floor(Math.log(Math.abs(e))/Math.LN10)+1!==g&&(T>=Math.pow(10,12)&&!D||j?(k+=i[o].abbreviations.trillion,e/=Math.pow(10,12)):T<Math.pow(10,12)&&T>=Math.pow(10,9)&&!D||S?(k+=i[o].abbreviations.billion,e/=Math.pow(10,9)):T<Math.pow(10,9)&&T>=Math.pow(10,6)&&!D||N?(k+=i[o].abbreviations.million,e/=Math.pow(10,6)):(T<Math.pow(10,6)&&T>=Math.pow(10,3)&&!D||U)&&(k+=i[o].abbreviations.thousand,e/=Math.pow(10,3)))}if(n.indexOf(\"b\")>-1)for(n.indexOf(\" b\")>-1?(C=\" \",n=n.replace(\" b\",\"\")):n=n.replace(\"b\",\"\"),s=0;s<=K.length;s++)if(u=Math.pow(1024,s),c=Math.pow(1024,s+1),e>=u&&e<c){C+=K[s],u>0&&(e/=u);break}if(n.indexOf(\"d\")>-1)for(n.indexOf(\" d\")>-1?(C=\" \",n=n.replace(\" d\",\"\")):n=n.replace(\"d\",\"\"),s=0;s<=G.length;s++)if(u=Math.pow(1e3,s),c=Math.pow(1e3,s+1),e>=u&&e<c){C+=G[s],u>0&&(e/=u);break}if(n.indexOf(\"o\")>-1&&(n.indexOf(\" o\")>-1?(L=\" \",n=n.replace(\" o\",\"\")):n=n.replace(\"o\",\"\"),i[o].ordinal&&(L+=i[o].ordinal(e))),n.indexOf(\"[.]\")>-1&&(F=!0,n=n.replace(\"[.]\",\".\")),x=e.toString().split(\".\")[0],O=n.split(\".\")[1],y=n.indexOf(\",\"),O){if(x=(I=-1!==O.indexOf(\"*\")?f(e,e.toString().split(\".\")[1].length,t):O.indexOf(\"[\")>-1?f(e,(O=(O=O.replace(\"]\",\"\")).split(\"[\"))[0].length+O[1].length,t,O[1].length):f(e,O.length,t)).split(\".\")[0],I.split(\".\")[1].length)I=(r?k+r:i[o].delimiters.decimal)+I.split(\".\")[1];else I=\"\";F&&0===Number(I.slice(1))&&(I=\"\")}else x=f(e,null,t);return x.indexOf(\"-\")>-1&&(x=x.slice(1),R=!0),x.length<v&&(x=new Array(v-x.length+1).join(\"0\")+x),y>-1&&(x=x.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+i[o].delimiters.thousands)),0===n.indexOf(\".\")&&(x=\"\"),b+(n.indexOf(\"(\")<n.indexOf(\"-\")?(B&&R?\"(\":\"\")+(P&&R||!B&&R?\"-\":\"\"):(P&&R||!B&&R?\"-\":\"\")+(B&&R?\"(\":\"\"))+(!R&&E&&0!==e?\"+\":\"\")+x+I+(L||\"\")+(k&&!r?k:\"\")+(C||\"\")+(B&&R?\")\":\"\")+w}function p(e,n){i[e]=n}function m(e){o=e;var n=i[e].defaults;n&&n.format&&r.defaultFormat(n.format),n&&n.currencyFormat&&r.defaultCurrencyFormat(n.currencyFormat)}(r=function(e){return r.isNumbro(e)?e=e.value():0===e||void 0===e?e=0:Number(e)||(e=r.fn.unformat(e)),new c(Number(e))}).version=\"1.6.2\",r.isNumbro=function(e){return e instanceof c},r.setLanguage=function(e,n){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var t=e,r=e.split(\"-\")[0],i=null;a[t]||(Object.keys(a).forEach((function(e){i||e.split(\"-\")[0]!==r||(i=e)})),t=i||n||\"en-US\"),m(t)},r.setCulture=function(e,n){var t=e,r=e.split(\"-\")[1],a=null;i[t]||(r&&Object.keys(i).forEach((function(e){a||e.split(\"-\")[1]!==r||(a=e)})),t=a||n||\"en-US\"),m(t)},r.language=function(e,n){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!e)return o;if(e&&!n){if(!a[e])throw new Error(\"Unknown language : \"+e);m(e)}return!n&&a[e]||p(e,n),r},r.culture=function(e,n){if(!e)return o;if(e&&!n){if(!i[e])throw new Error(\"Unknown culture : \"+e);m(e)}return!n&&i[e]||p(e,n),r},r.languageData=function(e){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!e)return a[o];if(!a[e])throw new Error(\"Unknown language : \"+e);return a[e]},r.cultureData=function(e){if(!e)return i[o];if(!i[e])throw new Error(\"Unknown culture : \"+e);return i[e]},r.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(e){var n=e%10;return 1==~~(e%100/10)?\"th\":1===n?\"st\":2===n?\"nd\":3===n?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),r.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),a},r.cultures=function(){return i},r.zeroFormat=function(e){l=\"string\"==typeof e?e:null},r.defaultFormat=function(e){u=\"string\"==typeof e?e:\"0.0\"},r.defaultCurrencyFormat=function(e){\"string\"==typeof e?e:\"0$\"},r.validate=function(e,n){var t,i,a,o,l,u,c,s;if(\"string\"!=typeof e&&(e+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",e)),(e=e.trim()).match(/^\\d+$/))return!0;if(\"\"===e)return!1;try{c=r.cultureData(n)}catch(e){c=r.cultureData(r.culture())}return a=c.currency.symbol,l=c.abbreviations,t=c.delimiters.decimal,i=\".\"===c.delimiters.thousands?\"\\\\.\":c.delimiters.thousands,(null===(s=e.match(/^[^\\d]+/))||(e=e.substr(1),s[0]===a))&&((null===(s=e.match(/[^\\d]+$/))||(e=e.slice(0,-1),s[0]===l.thousand||s[0]===l.million||s[0]===l.billion||s[0]===l.trillion))&&(u=new RegExp(i+\"{2}\"),!e.match(/[^\\d.,]/g)&&(!((o=e.split(t)).length>2)&&(o.length<2?!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u):1===o[0].length?!!o[0].match(/^\\d+$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/):!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/)))))},n.exports={format:function(e,n,t,i){return null!=t&&t!==r.culture()&&r.setCulture(t),d(Number(e),null!=n?n:u,null==i?Math.round:i)}}},\n",
       "      function _(e,n,t){!function(){\"use strict\";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\\x25]+/,modulo:/^\\x25{2}/,placeholder:/^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\\d]*)/i,key_access:/^\\.([a-z_][a-z_\\d]*)/i,index_access:/^\\[(\\d+)\\]/,sign:/^[+-]/};function n(e){return i(a(e),arguments)}function r(e,t){return n.apply(null,[e].concat(t||[]))}function i(t,r){var i,s,a,o,p,c,l,u,f,d=1,g=t.length,y=\"\";for(s=0;s<g;s++)if(\"string\"==typeof t[s])y+=t[s];else if(\"object\"==typeof t[s]){if((o=t[s]).keys)for(i=r[d],a=0;a<o.keys.length;a++){if(null==i)throw new Error(n('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"',o.keys[a],o.keys[a-1]));i=i[o.keys[a]]}else i=o.param_no?r[o.param_no]:r[d++];if(e.not_type.test(o.type)&&e.not_primitive.test(o.type)&&i instanceof Function&&(i=i()),e.numeric_arg.test(o.type)&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(n(\"[sprintf] expecting number but found %T\",i));switch(e.number.test(o.type)&&(u=i>=0),o.type){case\"b\":i=parseInt(i,10).toString(2);break;case\"c\":i=String.fromCharCode(parseInt(i,10));break;case\"d\":case\"i\":i=parseInt(i,10);break;case\"j\":i=JSON.stringify(i,null,o.width?parseInt(o.width):0);break;case\"e\":i=o.precision?parseFloat(i).toExponential(o.precision):parseFloat(i).toExponential();break;case\"f\":i=o.precision?parseFloat(i).toFixed(o.precision):parseFloat(i);break;case\"g\":i=o.precision?String(Number(i.toPrecision(o.precision))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o.precision?i.substring(0,o.precision):i;break;case\"t\":i=String(!!i),i=o.precision?i.substring(0,o.precision):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o.precision?i.substring(0,o.precision):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o.precision?i.substring(0,o.precision):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}e.json.test(o.type)?y+=i:(!e.number.test(o.type)||u&&!o.sign?f=\"\":(f=u?\"+\":\"-\",i=i.toString().replace(e.sign,\"\")),c=o.pad_char?\"0\"===o.pad_char?\"0\":o.pad_char.charAt(1):\" \",l=o.width-(f+i).length,p=o.width&&l>0?c.repeat(l):\"\",y+=o.align?f+i+p:\"0\"===c?f+p+i:p+f+i)}return y}var s=Object.create(null);function a(n){if(s[n])return s[n];for(var t,r=n,i=[],a=0;r;){if(null!==(t=e.text.exec(r)))i.push(t[0]);else if(null!==(t=e.modulo.exec(r)))i.push(\"%\");else{if(null===(t=e.placeholder.exec(r)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(t[2]){a|=1;var o=[],p=t[2],c=[];if(null===(c=e.key.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(c[1]);\"\"!==(p=p.substring(c[0].length));)if(null!==(c=e.key_access.exec(p)))o.push(c[1]);else{if(null===(c=e.index_access.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(c[1])}t[2]=o}else a|=2;if(3===a)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");i.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return s[n]=i}void 0!==t&&(t.sprintf=n,t.vsprintf=r),\"undefined\"!=typeof window&&(window.sprintf=n,window.vsprintf=r,\"function\"==typeof define&&define.amd&&define((function(){return{sprintf:n,vsprintf:r}})))}()},\n",
       "      function _(e,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(9),a=e(127),s=e(191),r=e(192),c=e(195),_=e(196),m=e(194);class k extends s.CompositeTicker{constructor(e){super(e)}static init_DatetimeTicker(){this.override({num_minor_ticks:0,tickers:()=>[new a.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*m.ONE_MILLI,num_minor_ticks:0}),new a.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:m.ONE_SECOND,max_interval:30*m.ONE_MINUTE,num_minor_ticks:0}),new a.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:m.ONE_HOUR,max_interval:12*m.ONE_HOUR,num_minor_ticks:0}),new r.DaysTicker({days:t.range(1,32)}),new r.DaysTicker({days:t.range(1,31,3)}),new r.DaysTicker({days:[1,8,15,22]}),new r.DaysTicker({days:[1,15]}),new c.MonthsTicker({months:t.range(0,12,1)}),new c.MonthsTicker({months:t.range(0,12,2)}),new c.MonthsTicker({months:t.range(0,12,4)}),new c.MonthsTicker({months:t.range(0,12,6)}),new _.YearsTicker({})]})}}n.DatetimeTicker=k,k.__name__=\"DatetimeTicker\",k.init_DatetimeTicker()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=t(1),s=t(128),n=r.__importStar(t(18)),_=t(9);class a extends s.ContinuousTicker{constructor(t){super(t)}static init_CompositeTicker(){this.define({tickers:[n.Array,[]]})}get min_intervals(){return this.tickers.map(t=>t.get_min_interval())}get max_intervals(){return this.tickers.map(t=>t.get_max_interval())}get min_interval(){return this.min_intervals[0]}get max_interval(){return this.max_intervals[0]}get_best_ticker(t,e,i){const r=e-t,s=this.get_ideal_interval(t,e,i),n=[_.sorted_index(this.min_intervals,s)-1,_.sorted_index(this.max_intervals,s)],a=[this.min_intervals[n[0]],this.max_intervals[n[1]]].map(t=>Math.abs(i-r/t));let c;if(_.is_empty(a.filter(t=>!isNaN(t))))c=this.tickers[0];else{const t=n[_.argmin(a)];c=this.tickers[t]}return c}get_interval(t,e,i){return this.get_best_ticker(t,e,i).get_interval(t,e,i)}get_ticks_no_defaults(t,e,i,r){return this.get_best_ticker(t,e,r).get_ticks_no_defaults(t,e,i,r)}}i.CompositeTicker=a,a.__name__=\"CompositeTicker\",a.init_CompositeTicker()},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=t(1),s=t(193),a=t(194),o=i.__importStar(t(18)),r=t(9);class _ extends s.SingleIntervalTicker{constructor(t){super(t)}static init_DaysTicker(){this.define({days:[o.Array,[]]}),this.override({num_minor_ticks:0})}initialize(){super.initialize();const t=this.days;t.length>1?this.interval=(t[1]-t[0])*a.ONE_DAY:this.interval=31*a.ONE_DAY}get_ticks_no_defaults(t,e,n,i){const s=function(t,e){const n=a.last_month_no_later_than(new Date(t)),i=a.last_month_no_later_than(new Date(e));i.setUTCMonth(i.getUTCMonth()+1);const s=[],o=n;for(;s.push(a.copy_date(o)),o.setUTCMonth(o.getUTCMonth()+1),!(o>i););return s}(t,e),o=this.days,_=this.interval;return{major:r.concat(s.map(t=>((t,e)=>{const n=t.getUTCMonth(),i=[];for(const s of o){const o=a.copy_date(t);o.setUTCDate(s);new Date(o.getTime()+e/2).getUTCMonth()==n&&i.push(o)}return i})(t,_))).map(t=>t.getTime()).filter(n=>t<=n&&n<=e),minor:[]}}}n.DaysTicker=_,_.__name__=\"DaysTicker\",_.init_DaysTicker()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),r=e(128),l=n.__importStar(e(18));class a extends r.ContinuousTicker{constructor(e){super(e)}static init_SingleIntervalTicker(){this.define({interval:[l.Number]})}get_interval(e,t,i){return this.interval}get min_interval(){return this.interval}get max_interval(){return this.interval}}i.SingleIntervalTicker=a,a.__name__=\"SingleIntervalTicker\",a.init_SingleIntervalTicker()},\n",
       "      function _(t,e,n){function _(t){return new Date(t.getTime())}function O(t){const e=_(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}Object.defineProperty(n,\"__esModule\",{value:!0}),n.ONE_MILLI=1,n.ONE_SECOND=1e3,n.ONE_MINUTE=60*n.ONE_SECOND,n.ONE_HOUR=60*n.ONE_MINUTE,n.ONE_DAY=24*n.ONE_HOUR,n.ONE_MONTH=30*n.ONE_DAY,n.ONE_YEAR=365*n.ONE_DAY,n.copy_date=_,n.last_month_no_later_than=O,n.last_year_no_later_than=function(t){const e=O(t);return e.setUTCMonth(0),e}},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),i=t(193),s=t(194),a=r.__importStar(t(18)),o=t(9);class _ extends i.SingleIntervalTicker{constructor(t){super(t)}static init_MonthsTicker(){this.define({months:[a.Array,[]]})}initialize(){super.initialize();const t=this.months;t.length>1?this.interval=(t[1]-t[0])*s.ONE_MONTH:this.interval=12*s.ONE_MONTH}get_ticks_no_defaults(t,e,n,r){const i=function(t,e){const n=s.last_year_no_later_than(new Date(t)),r=s.last_year_no_later_than(new Date(e));r.setUTCFullYear(r.getUTCFullYear()+1);const i=[],a=n;for(;i.push(s.copy_date(a)),a.setUTCFullYear(a.getUTCFullYear()+1),!(a>r););return i}(t,e),a=this.months;return{major:o.concat(i.map(t=>a.map(e=>{const n=s.copy_date(t);return n.setUTCMonth(e),n}))).map(t=>t.getTime()).filter(n=>t<=n&&n<=e),minor:[]}}}n.MonthsTicker=_,_.__name__=\"MonthsTicker\",_.init_MonthsTicker()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(126),r=e(193),n=e(194);class _ extends r.SingleIntervalTicker{constructor(e){super(e)}initialize(){super.initialize(),this.interval=n.ONE_YEAR,this.basic_ticker=new i.BasicTicker({num_minor_ticks:0})}get_ticks_no_defaults(e,t,a,i){const r=n.last_year_no_later_than(new Date(e)).getUTCFullYear(),_=n.last_year_no_later_than(new Date(t)).getUTCFullYear();return{major:this.basic_ticker.get_ticks_no_defaults(r,_,a,i).major.map(e=>Date.UTC(e,0,1)).filter(a=>e<=a&&a<=t),minor:[]}}}a.YearsTicker=_,_.__name__=\"YearsTicker\"},\n",
       "      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(177),o=e(182),n=e(198),r=e(199);class _ extends s.AxisView{}t.LogAxisView=_,_.__name__=\"LogAxisView\";class c extends o.ContinuousAxis{constructor(e){super(e)}static init_LogAxis(){this.prototype.default_view=_,this.override({ticker:()=>new r.LogTicker,formatter:()=>new n.LogTickFormatter})}}t.LogAxis=c,c.__name__=\"LogAxis\",c.init_LogAxis()},\n",
       "      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=t(1),o=t(131),a=t(130),n=i.__importStar(t(18));class c extends o.TickFormatter{constructor(t){super(t)}static init_LogTickFormatter(){this.define({ticker:[n.Instance,null]})}initialize(){super.initialize(),this.basic_formatter=new a.BasicTickFormatter}doFormat(t,e){if(0==t.length)return[];const r=null!=this.ticker?this.ticker.base:10;let i=!1;const o=new Array(t.length);for(let e=0,a=t.length;e<a;e++)if(o[e]=`${r}^${Math.round(Math.log(t[e])/Math.log(r))}`,e>0&&o[e]==o[e-1]){i=!0;break}return i?this.basic_formatter.doFormat(t,e):o}}r.LogTickFormatter=c,c.__name__=\"LogTickFormatter\",c.init_LogTickFormatter()},\n",
       "      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(127),s=t(9);class n extends i.AdaptiveTicker{constructor(t){super(t)}static init_LogTicker(){this.override({mantissas:[1,5]})}get_ticks_no_defaults(t,o,e,i){const n=this.num_minor_ticks,r=[],c=this.base,a=Math.log(t)/Math.log(c),f=Math.log(o)/Math.log(c),l=f-a;let h;if(isFinite(l))if(l<2){const e=this.get_interval(t,o,i),c=Math.floor(t/e),a=Math.ceil(o/e);if(h=s.range(c,a+1).filter(t=>0!=t).map(t=>t*e).filter(e=>t<=e&&e<=o),n>0&&h.length>0){const t=e/n,o=s.range(0,n).map(o=>o*t);for(const t of o.slice(1))r.push(h[0]-t);for(const t of h)for(const e of o)r.push(t+e)}}else{const t=Math.ceil(.999999*a),o=Math.floor(1.000001*f),e=Math.ceil((o-t)/9);if(h=s.range(t-1,o+1,e).map(t=>c**t),n>0&&h.length>0){const t=c**e/n,o=s.range(1,n+1).map(o=>o*t);for(const t of o)r.push(h[0]/t);r.push(h[0]);for(const t of h)for(const e of o)r.push(t*e)}}else h=[];return{major:h.filter(e=>t<=e&&e<=o),minor:r.filter(e=>t<=e&&e<=o)}}}e.LogTicker=n,n.__name__=\"LogTicker\",n.init_LogTicker()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(177),s=e(184),o=e(201),a=e(202);class c extends i.AxisView{}r.MercatorAxisView=c,c.__name__=\"MercatorAxisView\";class n extends s.LinearAxis{constructor(e){super(e)}static init_MercatorAxis(){this.prototype.default_view=c,this.override({ticker:()=>new a.MercatorTicker({dimension:\"lat\"}),formatter:()=>new o.MercatorTickFormatter({dimension:\"lat\"})})}}r.MercatorAxis=n,n.__name__=\"MercatorAxis\",n.init_MercatorAxis()},\n",
       "      function _(r,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const o=r(1),n=r(130),i=o.__importStar(r(18)),c=r(37);class a extends n.BasicTickFormatter{constructor(r){super(r)}static init_MercatorTickFormatter(){this.define({dimension:[i.LatLon]})}doFormat(r,t){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==r.length)return[];const e=r.length,o=new Array(e);if(\"lon\"==this.dimension)for(let n=0;n<e;n++){const[e]=c.wgs84_mercator.invert(r[n],t.loc);o[n]=e}else for(let n=0;n<e;n++){const[,e]=c.wgs84_mercator.invert(t.loc,r[n]);o[n]=e}return super.doFormat(o,t)}}e.MercatorTickFormatter=a,a.__name__=\"MercatorTickFormatter\",a.init_MercatorTickFormatter()},\n",
       "      function _(t,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),s=t(126),e=n.__importStar(t(18)),i=t(37);class c extends s.BasicTicker{constructor(t){super(t)}static init_MercatorTicker(){this.define({dimension:[e.LatLon]})}get_ticks_no_defaults(t,o,r,n){if(null==this.dimension)throw new Error(this+\".dimension wasn't configured\");return[t,o]=i.clip_mercator(t,o,this.dimension),\"lon\"==this.dimension?this._get_ticks_lon(t,o,r,n):this._get_ticks_lat(t,o,r,n)}_get_ticks_lon(t,o,r,n){const[s]=i.wgs84_mercator.invert(t,r),[e,c]=i.wgs84_mercator.invert(o,r),_=super.get_ticks_no_defaults(s,e,r,n),a=[];for(const t of _.major)if(i.in_bounds(t,\"lon\")){const[o]=i.wgs84_mercator.compute(t,c);a.push(o)}const m=[];for(const t of _.minor)if(i.in_bounds(t,\"lon\")){const[o]=i.wgs84_mercator.compute(t,c);m.push(o)}return{major:a,minor:m}}_get_ticks_lat(t,o,r,n){const[,s]=i.wgs84_mercator.invert(r,t),[e,c]=i.wgs84_mercator.invert(r,o),_=super.get_ticks_no_defaults(s,c,r,n),a=[];for(const t of _.major)if(i.in_bounds(t,\"lat\")){const[,o]=i.wgs84_mercator.compute(e,t);a.push(o)}const m=[];for(const t of _.minor)if(i.in_bounds(t,\"lat\")){const[,o]=i.wgs84_mercator.compute(e,t);m.push(o)}return{major:a,minor:m}}}r.MercatorTicker=c,c.__name__=\"MercatorTicker\",c.init_MercatorTicker()},\n",
       "      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});var t=e(204);o.CustomJS=t.CustomJS;var u=e(206);o.OpenURL=u.OpenURL},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),u=t(205),c=n.__importStar(t(18)),r=t(13),a=t(29);class i extends u.Callback{constructor(t){super(t)}static init_CustomJS(){this.define({args:[c.Any,{}],code:[c.String,\"\"]})}get names(){return r.keys(this.args)}get values(){return r.values(this.args)}get func(){const t=a.use_strict(this.code);return new Function(...this.names,\"cb_obj\",\"cb_data\",t)}execute(t,e={}){return this.func.apply(t,this.values.concat(t,e))}}s.CustomJS=i,i.__name__=\"CustomJS\",i.init_CustomJS()},\n",
       "      function _(e,c,l){Object.defineProperty(l,\"__esModule\",{value:!0});const a=e(81);class n extends a.Model{constructor(e){super(e)}}l.Callback=n,n.__name__=\"Callback\"},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(1),i=e(205),s=e(187),r=e(8),c=o.__importStar(e(18));class a extends i.Callback{constructor(e){super(e)}static init_OpenURL(){this.define({url:[c.String,\"http://\"],same_tab:[c.Boolean,!1]})}execute(e,{source:t}){const n=e=>{const n=s.replace_placeholders(this.url,t,e);if(!r.isString(n))throw new Error(\"HTML output is not supported in this context\");this.same_tab?window.location.href=n:window.open(n)},{selected:o}=t;for(const e of o.indices)n(e);for(const e of o.line_indices)n(e)}}n.OpenURL=a,a.__name__=\"OpenURL\",a.init_OpenURL()},\n",
       "      function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});var n=a(77);r.Canvas=n.Canvas;var s=a(208);r.CartesianFrame=s.CartesianFrame},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const a=e(209),_=e(146),n=e(157),r=e(158),i=e(210),g=e(98),c=e(212),o=e(13),l=e(11);class h extends c.LayoutItem{constructor(e,t,s,a,_={},n={}){super(),this.in_x_scale=e,this.in_y_scale=t,this.x_range=s,this.y_range=a,this.extra_x_ranges=_,this.extra_y_ranges=n,l.assert(null==e.source_range&&null==e.target_range),l.assert(null==t.source_range&&null==t.target_range),this._configure_scales()}_get_ranges(e,t){return new Map(o.entries(Object.assign(Object.assign({},t),{default:e})))}_get_scales(e,t,s){const c=new Map;for(const[o,l]of t){if((l instanceof i.DataRange1d||l instanceof r.Range1d)&&!(e instanceof _.ContinuousScale))throw new Error(`Range ${l.type} is incompatible is Scale ${e.type}`);if(l instanceof g.FactorRange&&!(e instanceof a.CategoricalScale))throw new Error(`Range ${l.type} is incompatible is Scale ${e.type}`);e instanceof n.LogScale&&l instanceof i.DataRange1d&&(l.scale_hint=\"log\");const t=e.clone();t.setv({source_range:l,target_range:s}),c.set(o,t)}return c}_configure_frame_ranges(){const{bbox:e}=this;this._x_target=new r.Range1d({start:e.left,end:e.right}),this._y_target=new r.Range1d({start:e.bottom,end:e.top})}_configure_scales(){this._configure_frame_ranges(),this._x_ranges=this._get_ranges(this.x_range,this.extra_x_ranges),this._y_ranges=this._get_ranges(this.y_range,this.extra_y_ranges),this._x_scales=this._get_scales(this.in_x_scale,this._x_ranges,this._x_target),this._y_scales=this._get_scales(this.in_y_scale,this._y_ranges,this._y_target)}_update_scales(){this._configure_frame_ranges();for(const[,e]of this._x_scales)e.target_range=this._x_target;for(const[,e]of this._y_scales)e.target_range=this._y_target}_set_geometry(e,t){super._set_geometry(e,t),this._update_scales()}get x_ranges(){return this._x_ranges}get y_ranges(){return this._y_ranges}get x_scales(){return this._x_scales}get y_scales(){return this._y_scales}get x_scale(){return this._x_scales.get(\"default\")}get y_scale(){return this._y_scales.get(\"default\")}get xscales(){return o.to_object(this.x_scales)}get yscales(){return o.to_object(this.y_scales)}}s.CartesianFrame=h,h.__name__=\"CartesianFrame\"},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(147);class _ extends n.Scale{constructor(e){super(e)}compute(e){return super._linear_compute(this.source_range.synthetic(e))}v_compute(e){return super._linear_v_compute(this.source_range.v_synthetic(e))}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}t.CategoricalScale=_,_.__name__=\"CategoricalScale\"},\n",
       "      function _(t,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=t(1),a=t(211),s=t(90),l=t(19),_=e.__importStar(t(18)),o=e.__importStar(t(79)),r=t(9);class h extends a.DataRange{constructor(t){super(t),this.have_updated_interactively=!1}static init_DataRange1d(){this.define({start:[_.Number],end:[_.Number],range_padding:[_.Number,.1],range_padding_units:[_.PaddingUnits,\"percent\"],flipped:[_.Boolean,!1],follow:[_.StartEnd],follow_interval:[_.Number],default_span:[_.Number,2],only_visible:[_.Boolean,!1]}),this.internal({scale_hint:[_.String,\"auto\"]})}initialize(){super.initialize(),this._initial_start=this.start,this._initial_end=this.end,this._initial_range_padding=this.range_padding,this._initial_range_padding_units=this.range_padding_units,this._initial_follow=this.follow,this._initial_follow_interval=this.follow_interval,this._initial_default_span=this.default_span,this._plot_bounds=new Map}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}computed_renderers(){const t=this.names;let i=this.renderers;if(0==i.length)for(const t of this.plots){const n=t.renderers.filter(t=>t instanceof s.GlyphRenderer);i=i.concat(n)}t.length>0&&(i=i.filter(i=>r.includes(t,i.name))),l.logger.debug(`computed ${i.length} renderers for ${this}`);for(const t of i)l.logger.trace(\" - \"+t);return i}_compute_plot_bounds(t,i){let n=o.empty();for(const e of t){const t=i.get(e);null==t||!e.visible&&this.only_visible||(n=o.union(n,t))}return n}adjust_bounds_for_aspect(t,i){const n=o.empty();let e=t.x1-t.x0;e<=0&&(e=1);let a=t.y1-t.y0;a<=0&&(a=1);const s=.5*(t.x1+t.x0),l=.5*(t.y1+t.y0);return e<i*a?e=i*a:a=e/i,n.x1=s+.5*e,n.x0=s-.5*e,n.y1=l+.5*a,n.y0=l-.5*a,n}_compute_min_max(t,i){let n,e,a=o.empty();for(const i of t)a=o.union(a,i);return[n,e]=0==i?[a.x0,a.x1]:[a.y0,a.y1],[n,e]}_compute_range(t,i){const n=this.range_padding;let e,a;if(null!=this._initial_start&&(t=this._initial_start),null!=this._initial_end&&(i=this._initial_end),\"log\"==this.scale_hint){let s,_;if((isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(i)||!isFinite(i)||i<=0?.1:i/100,l.logger.warn(\"could not determine minimum data value for log axis, DataRange1d using value \"+t)),(isNaN(i)||!isFinite(i)||i<=0)&&(i=isNaN(t)||!isFinite(t)||t<=0?10:100*t,l.logger.warn(\"could not determine maximum data value for log axis, DataRange1d using value \"+i)),i==t)_=this.default_span+.001,s=Math.log(t)/Math.log(10);else{let e,a;\"percent\"==this.range_padding_units?(e=Math.log(t)/Math.log(10),a=Math.log(i)/Math.log(10),_=(a-e)*(1+n)):(e=Math.log(t-n)/Math.log(10),a=Math.log(i+n)/Math.log(10),_=a-e),s=(e+a)/2}e=10**(s-_/2),a=10**(s+_/2)}else{let s;s=i==t?this.default_span:\"percent\"==this.range_padding_units?(i-t)*(1+n):i-t+2*n;const l=(i+t)/2;e=l-s/2,a=l+s/2}let s=1;this.flipped&&([e,a]=[a,e],s=-1);const _=this.follow_interval;return null!=_&&Math.abs(e-a)>_&&(\"start\"==this.follow?a=e+s*_:\"end\"==this.follow&&(e=a-s*_)),[e,a]}update(t,i,n,e){if(this.have_updated_interactively)return;const a=this.computed_renderers();let s=this._compute_plot_bounds(a,t);null!=e&&(s=this.adjust_bounds_for_aspect(s,e)),this._plot_bounds.set(n,s);const[l,_]=this._compute_min_max(this._plot_bounds.values(),i);let[o,r]=this._compute_range(l,_);null!=this._initial_start&&(\"log\"==this.scale_hint?this._initial_start>0&&(o=this._initial_start):o=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?this._initial_end>0&&(r=this._initial_end):r=this._initial_end);const[h,d]=[this.start,this.end];if(o!=h||r!=d){const t={};o!=h&&(t.start=o),r!=d&&(t.end=r),this.setv(t)}\"auto\"==this.bounds&&this.setv({bounds:[o,r]},{silent:!0}),this.change.emit()}reset(){this.have_updated_interactively=!1,this.setv({range_padding:this._initial_range_padding,range_padding_units:this._initial_range_padding_units,follow:this._initial_follow,follow_interval:this._initial_follow_interval,default_span:this._initial_default_span},{silent:!0}),this.change.emit()}}n.DataRange1d=h,h.__name__=\"DataRange1d\",h.init_DataRange1d()},\n",
       "      function _(e,a,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),r=e(99),s=n.__importStar(e(18));class _ extends r.Range{constructor(e){super(e)}static init_DataRange(){this.define({names:[s.Array,[]],renderers:[s.Array,[]]})}}t.DataRange=_,_.__name__=\"DataRange\",_.init_DataRange()},\n",
       "      function _(a,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});var e=a(213);t.Sizeable=e.Sizeable,t.SizingPolicy=e.SizingPolicy;var i=a(214);t.Layoutable=i.Layoutable,t.LayoutItem=i.LayoutItem;var n=a(215);t.HStack=n.HStack,t.VStack=n.VStack,t.AnchorLayout=n.AnchorLayout;var r=a(216);t.Grid=r.Grid,t.Row=r.Row,t.Column=r.Column;var c=a(217);t.ContentBox=c.ContentBox,t.VariadicBox=c.VariadicBox},\n",
       "      function _(t,h,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(21),{min:d,max:n}=Math;class w{constructor(t={}){this.width=null!=t.width?t.width:0,this.height=null!=t.height?t.height:0}bounded_to({width:t,height:h}){return new w({width:this.width==1/0&&null!=t?t:this.width,height:this.height==1/0&&null!=h?h:this.height})}expanded_to({width:t,height:h}){return new w({width:t!=1/0?n(this.width,t):this.width,height:h!=1/0?n(this.height,h):this.height})}expand_to({width:t,height:h}){this.width=n(this.width,t),this.height=n(this.height,h)}narrowed_to({width:t,height:h}){return new w({width:d(this.width,t),height:d(this.height,h)})}narrow_to({width:t,height:h}){this.width=d(this.width,t),this.height=d(this.height,h)}grow_by({left:t,right:h,top:i,bottom:e}){const d=this.width+t+h,n=this.height+i+e;return new w({width:d,height:n})}shrink_by({left:t,right:h,top:i,bottom:e}){const d=n(this.width-t-h,0),s=n(this.height-i-e,0);return new w({width:d,height:s})}map(t,h){return new w({width:t(this.width),height:(null!=h?h:t)(this.height)})}}i.Sizeable=w,w.__name__=\"Sizeable\",i.SizingPolicy=e.Enum(\"fixed\",\"fit\",\"min\",\"max\")},\n",
       "      function _(i,t,h){Object.defineProperty(h,\"__esModule\",{value:!0});const e=i(213),s=i(79),{min:n,max:g,round:a}=Math;class l{constructor(){this._bbox=new s.BBox,this._inner_bbox=new s.BBox}get bbox(){return this._bbox}get inner_bbox(){return this._inner_bbox}get sizing(){return this._sizing}set_sizing(i){const t=i.width_policy||\"fit\",h=i.width,e=null!=i.min_width?i.min_width:0,s=null!=i.max_width?i.max_width:1/0,n=i.height_policy||\"fit\",g=i.height,a=null!=i.min_height?i.min_height:0,l=null!=i.max_height?i.max_height:1/0,_=i.aspect,d=i.margin||{top:0,right:0,bottom:0,left:0},r=!1!==i.visible,w=i.halign||\"start\",o=i.valign||\"start\";this._sizing={width_policy:t,min_width:e,width:h,max_width:s,height_policy:n,min_height:a,height:g,max_height:l,aspect:_,margin:d,visible:r,halign:w,valign:o,size:{width:h,height:g},min_size:{width:e,height:a},max_size:{width:s,height:l}},this._init()}_init(){}_set_geometry(i,t){this._bbox=i,this._inner_bbox=t}set_geometry(i,t){this._set_geometry(i,t||i)}is_width_expanding(){return\"max\"==this.sizing.width_policy}is_height_expanding(){return\"max\"==this.sizing.height_policy}apply_aspect(i,{width:t,height:h}){const{aspect:e}=this.sizing;if(null!=e){const{width_policy:s,height_policy:n}=this.sizing,g=(i,t)=>{const h={max:4,fit:3,min:2,fixed:1};return h[i]>h[t]};if(\"fixed\"!=s&&\"fixed\"!=n)if(s==n){const s=t,n=a(t/e),g=a(h*e),l=h;Math.abs(i.width-s)+Math.abs(i.height-n)<=Math.abs(i.width-g)+Math.abs(i.height-l)?(t=s,h=n):(t=g,h=l)}else g(s,n)?h=a(t/e):t=a(h*e);else\"fixed\"==s?h=a(t/e):\"fixed\"==n&&(t=a(h*e))}return{width:t,height:h}}measure(i){if(!this.sizing.visible)return{width:0,height:0};const t=i=>\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:i,h=i=>\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:i,s=new e.Sizeable(i).shrink_by(this.sizing.margin).map(t,h),n=this._measure(s),g=this.clip_size(n),a=t(g.width),l=h(g.height),_=this.apply_aspect(s,{width:a,height:l});return Object.assign(Object.assign({},n),_)}compute(i={}){const t=this.measure({width:null!=i.width&&this.is_width_expanding()?i.width:1/0,height:null!=i.height&&this.is_height_expanding()?i.height:1/0}),{width:h,height:e}=t,n=new s.BBox({left:0,top:0,width:h,height:e});let g=void 0;if(null!=t.inner){const{left:i,top:n,right:a,bottom:l}=t.inner;g=new s.BBox({left:i,top:n,right:h-a,bottom:e-l})}this.set_geometry(n,g)}get xview(){return this.bbox.xview}get yview(){return this.bbox.yview}clip_width(i){return g(this.sizing.min_width,n(i,this.sizing.max_width))}clip_height(i){return g(this.sizing.min_height,n(i,this.sizing.max_height))}clip_size({width:i,height:t}){return{width:this.clip_width(i),height:this.clip_height(t)}}}h.Layoutable=l,l.__name__=\"Layoutable\";class _ extends l{_measure(i){const{width_policy:t,height_policy:h}=this.sizing;let e,s;if(i.width==1/0)e=null!=this.sizing.width?this.sizing.width:0;else switch(t){case\"fixed\":e=null!=this.sizing.width?this.sizing.width:0;break;case\"min\":e=null!=this.sizing.width?n(i.width,this.sizing.width):0;break;case\"fit\":e=null!=this.sizing.width?n(i.width,this.sizing.width):i.width;break;case\"max\":e=null!=this.sizing.width?g(i.width,this.sizing.width):i.width}if(i.height==1/0)s=null!=this.sizing.height?this.sizing.height:0;else switch(h){case\"fixed\":s=null!=this.sizing.height?this.sizing.height:0;break;case\"min\":s=null!=this.sizing.height?n(i.height,this.sizing.height):0;break;case\"fit\":s=null!=this.sizing.height?n(i.height,this.sizing.height):i.height;break;case\"max\":s=null!=this.sizing.height?g(i.height,this.sizing.height):i.height}return{width:e,height:s}}}h.LayoutItem=_,_.__name__=\"LayoutItem\";class d extends l{_measure(i){const t=this._content_size(),h=i.bounded_to(this.sizing.size).bounded_to(t);return{width:(()=>{switch(this.sizing.width_policy){case\"fixed\":return null!=this.sizing.width?this.sizing.width:t.width;case\"min\":return t.width;case\"fit\":return h.width;case\"max\":return Math.max(t.width,h.width)}})(),height:(()=>{switch(this.sizing.height_policy){case\"fixed\":return null!=this.sizing.height?this.sizing.height:t.height;case\"min\":return t.height;case\"fit\":return h.height;case\"max\":return Math.max(t.height,h.height)}})()}}}h.ContentLayoutable=d,d.__name__=\"ContentLayoutable\"},\n",
       "      function _(t,e,h){Object.defineProperty(h,\"__esModule\",{value:!0});const o=t(214),r=t(79);class i extends o.Layoutable{constructor(){super(...arguments),this.children=[]}}h.Stack=i,i.__name__=\"Stack\";class s extends i{_measure(t){let e=0,h=0;for(const t of this.children){const o=t.measure({width:0,height:0});e+=o.width,h=Math.max(h,o.height)}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const{top:h,bottom:o}=t;let{left:i}=t;for(const t of this.children){const{width:e}=t.measure({width:0,height:0});t.set_geometry(new r.BBox({left:i,width:e,top:h,bottom:o})),i+=e}}}h.HStack=s,s.__name__=\"HStack\";class n extends i{_measure(t){let e=0,h=0;for(const t of this.children){const o=t.measure({width:0,height:0});e=Math.max(e,o.width),h+=o.height}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const{left:h,right:o}=t;let{top:i}=t;for(const t of this.children){const{height:e}=t.measure({width:0,height:0});t.set_geometry(new r.BBox({top:i,height:e,left:h,right:o})),i+=e}}}h.VStack=n,n.__name__=\"VStack\";class c extends o.Layoutable{constructor(){super(...arguments),this.children=[]}_measure(t){let e=0,h=0;for(const{layout:o}of this.children){const r=o.measure(t);e=Math.max(e,r.width),h=Math.max(h,r.height)}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);for(const{layout:e,anchor:h,margin:o}of this.children){const{left:i,right:s,top:n,bottom:c,hcenter:a,vcenter:_}=t,{width:g,height:d}=e.measure(t);let m;switch(h){case\"top_left\":m=new r.BBox({left:i+o,top:n+o,width:g,height:d});break;case\"top_center\":m=new r.BBox({hcenter:a,top:n+o,width:g,height:d});break;case\"top_right\":m=new r.BBox({right:s-o,top:n+o,width:g,height:d});break;case\"bottom_right\":m=new r.BBox({right:s-o,bottom:c-o,width:g,height:d});break;case\"bottom_center\":m=new r.BBox({hcenter:a,bottom:c-o,width:g,height:d});break;case\"bottom_left\":m=new r.BBox({left:i+o,bottom:c-o,width:g,height:d});break;case\"center_left\":m=new r.BBox({left:i+o,vcenter:_,width:g,height:d});break;case\"center\":m=new r.BBox({hcenter:a,vcenter:_,width:g,height:d});break;case\"center_right\":m=new r.BBox({right:s-o,vcenter:_,width:g,height:d})}e.set_geometry(m)}}}h.AnchorLayout=c,c.__name__=\"AnchorLayout\"},\n",
       "      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const e=t(213),o=t(214),n=t(8),r=t(79),h=t(9),{max:l,round:c}=Math;class a{constructor(t){this.def=t,this._map=new Map}get(t){let i=this._map.get(t);return void 0===i&&(i=this.def(),this._map.set(t,i)),i}apply(t,i){const s=this.get(t);this._map.set(t,i(s))}}a.__name__=\"DefaultMap\";class g{constructor(){this._items=[],this._nrows=0,this._ncols=0}get nrows(){return this._nrows}get ncols(){return this._ncols}add(t,i){const{r1:s,c1:e}=t;this._nrows=l(this._nrows,s+1),this._ncols=l(this._ncols,e+1),this._items.push({span:t,data:i})}at(t,i){return this._items.filter(({span:s})=>s.r0<=t&&t<=s.r1&&s.c0<=i&&i<=s.c1).map(({data:t})=>t)}row(t){return this._items.filter(({span:i})=>i.r0<=t&&t<=i.r1).map(({data:t})=>t)}col(t){return this._items.filter(({span:i})=>i.c0<=t&&t<=i.c1).map(({data:t})=>t)}foreach(t){for(const{span:i,data:s}of this._items)t(i,s)}map(t){const i=new g;for(const{span:s,data:e}of this._items)i.add(s,t(s,e));return i}}g.__name__=\"Container\";class p extends o.Layoutable{constructor(t=[]){super(),this.items=t,this.rows=\"auto\",this.cols=\"auto\",this.spacing=0,this.absolute=!1}is_width_expanding(){if(super.is_width_expanding())return!0;if(\"fixed\"==this.sizing.width_policy)return!1;const{cols:t}=this._state;return h.some(t,t=>\"max\"==t.policy)}is_height_expanding(){if(super.is_height_expanding())return!0;if(\"fixed\"==this.sizing.height_policy)return!1;const{rows:t}=this._state;return h.some(t,t=>\"max\"==t.policy)}_init(){super._init();const t=new g;for(const{layout:i,row:s,col:e,row_span:o,col_span:n}of this.items)if(i.sizing.visible){const r=s,h=e,l=s+(null!=o?o:1)-1,c=e+(null!=n?n:1)-1;t.add({r0:r,c0:h,r1:l,c1:c},i)}const{nrows:i,ncols:s}=t,e=new Array(i);for(let s=0;s<i;s++){const i=(()=>{const t=n.isPlainObject(this.rows)?this.rows[s]||this.rows[\"*\"]:this.rows;return null==t?{policy:\"auto\"}:n.isNumber(t)?{policy:\"fixed\",height:t}:n.isString(t)?{policy:t}:t})(),o=i.align||\"auto\";if(\"fixed\"==i.policy)e[s]={policy:\"fixed\",height:i.height,align:o};else if(\"min\"==i.policy)e[s]={policy:\"min\",align:o};else if(\"fit\"==i.policy||\"max\"==i.policy)e[s]={policy:i.policy,flex:i.flex||1,align:o};else{if(\"auto\"!=i.policy)throw new Error(\"unrechable\");h.some(t.row(s),t=>t.is_height_expanding())?e[s]={policy:\"max\",flex:1,align:o}:e[s]={policy:\"min\",align:o}}}const o=new Array(s);for(let i=0;i<s;i++){const s=(()=>{const t=n.isPlainObject(this.cols)?this.cols[i]||this.cols[\"*\"]:this.cols;return null==t?{policy:\"auto\"}:n.isNumber(t)?{policy:\"fixed\",width:t}:n.isString(t)?{policy:t}:t})(),e=s.align||\"auto\";if(\"fixed\"==s.policy)o[i]={policy:\"fixed\",width:s.width,align:e};else if(\"min\"==s.policy)o[i]={policy:\"min\",align:e};else if(\"fit\"==s.policy||\"max\"==s.policy)o[i]={policy:s.policy,flex:s.flex||1,align:e};else{if(\"auto\"!=s.policy)throw new Error(\"unrechable\");h.some(t.col(i),t=>t.is_width_expanding())?o[i]={policy:\"max\",flex:1,align:e}:o[i]={policy:\"min\",align:e}}}const[r,l]=n.isNumber(this.spacing)?[this.spacing,this.spacing]:this.spacing;this._state={items:t,nrows:i,ncols:s,rows:e,cols:o,rspacing:r,cspacing:l}}_measure_totals(t,i){const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state;return{height:h.sum(t)+(s-1)*o,width:h.sum(i)+(e-1)*n}}_measure_cells(t){const{items:i,nrows:s,ncols:o,rows:n,cols:r,rspacing:h,cspacing:a}=this._state,p=new Array(s);for(let t=0;t<s;t++){const i=n[t];p[t]=\"fixed\"==i.policy?i.height:0}const _=new Array(o);for(let t=0;t<o;t++){const i=r[t];_[t]=\"fixed\"==i.policy?i.width:0}const f=new g;i.foreach((i,s)=>{const{r0:o,c0:g,r1:d,c1:w}=i,u=(d-o)*h,m=(w-g)*a;let y=0;for(let i=o;i<=d;i++)y+=t(i,g).height;y+=u;let x=0;for(let i=g;i<=w;i++)x+=t(o,i).width;x+=m;const b=s.measure({width:x,height:y});f.add(i,{layout:s,size_hint:b});const z=new e.Sizeable(b).grow_by(s.sizing.margin);z.height-=u,z.width-=m;const j=[];for(let t=o;t<=d;t++){const i=n[t];\"fixed\"==i.policy?z.height-=i.height:j.push(t)}if(z.height>0){const t=c(z.height/j.length);for(const i of j)p[i]=l(p[i],t)}const O=[];for(let t=g;t<=w;t++){const i=r[t];\"fixed\"==i.policy?z.width-=i.width:O.push(t)}if(z.width>0){const t=c(z.width/O.length);for(const i of O)_[i]=l(_[i],t)}});return{size:this._measure_totals(p,_),row_heights:p,col_widths:_,size_hints:f}}_measure_grid(t){const{nrows:i,ncols:s,rows:e,cols:o,rspacing:n,cspacing:r}=this._state,h=this._measure_cells((t,i)=>{const s=e[t],n=o[i];return{width:\"fixed\"==n.policy?n.width:1/0,height:\"fixed\"==s.policy?s.height:1/0}});let a;a=\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:t.height!=1/0&&this.is_height_expanding()?t.height:h.size.height;let g,p=0;for(let t=0;t<i;t++){const i=e[t];\"fit\"==i.policy||\"max\"==i.policy?p+=i.flex:a-=h.row_heights[t]}if(a-=(i-1)*n,0!=p&&a>0)for(let t=0;t<i;t++){const i=e[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=c(a*(i.flex/p));a-=s,h.row_heights[t]=s,p-=i.flex}}else if(a<0){let t=0;for(let s=0;s<i;s++){\"fixed\"!=e[s].policy&&t++}let s=-a;for(let o=0;o<i;o++){if(\"fixed\"!=e[o].policy){const i=h.row_heights[o],e=c(s/t);h.row_heights[o]=l(i-e,0),s-=e>i?i:e,t--}}}g=\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:t.width!=1/0&&this.is_width_expanding()?t.width:h.size.width;let _=0;for(let t=0;t<s;t++){const i=o[t];\"fit\"==i.policy||\"max\"==i.policy?_+=i.flex:g-=h.col_widths[t]}if(g-=(s-1)*r,0!=_&&g>0)for(let t=0;t<s;t++){const i=o[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=c(g*(i.flex/_));g-=s,h.col_widths[t]=s,_-=i.flex}}else if(g<0){let t=0;for(let i=0;i<s;i++){\"fixed\"!=o[i].policy&&t++}let i=-g;for(let e=0;e<s;e++){if(\"fixed\"!=o[e].policy){const s=h.col_widths[e],o=c(i/t);h.col_widths[e]=l(s-o,0),i-=o>s?s:o,t--}}}const{row_heights:f,col_widths:d,size_hints:w}=this._measure_cells((t,i)=>({width:h.col_widths[i],height:h.row_heights[t]}));return{size:this._measure_totals(f,d),row_heights:f,col_widths:d,size_hints:w}}_measure(t){const{size:i}=this._measure_grid(t);return i}_set_geometry(t,i){super._set_geometry(t,i);const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state,{row_heights:h,col_widths:g,size_hints:p}=this._measure_grid(t),_=this._state.rows.map((t,i)=>Object.assign(Object.assign({},t),{top:0,height:h[i],get bottom(){return this.top+this.height}})),f=this._state.cols.map((t,i)=>Object.assign(Object.assign({},t),{left:0,width:g[i],get right(){return this.left+this.width}})),d=p.map((t,i)=>Object.assign(Object.assign({},i),{outer:new r.BBox,inner:new r.BBox}));for(let i=0,e=this.absolute?t.top:0;i<s;i++){const t=_[i];t.top=e,e+=t.height+o}for(let i=0,s=this.absolute?t.left:0;i<e;i++){const t=f[i];t.left=s,s+=t.width+n}d.foreach(({r0:t,c0:i,r1:s,c1:e},h)=>{const{layout:l,size_hint:a}=h,{sizing:g}=l,{width:p,height:d}=a,w=function(t,i){let s=(i-t)*n;for(let e=t;e<=i;e++)s+=f[e].width;return s}(i,e),u=function(t,i){let s=(i-t)*o;for(let e=t;e<=i;e++)s+=_[e].height;return s}(t,s),m=i==e&&\"auto\"!=f[i].align?f[i].align:g.halign,y=t==s&&\"auto\"!=_[t].align?_[t].align:g.valign;let x=f[i].left;\"start\"==m?x+=g.margin.left:\"center\"==m?x+=c((w-p)/2):\"end\"==m&&(x+=w-g.margin.right-p);let b=_[t].top;\"start\"==y?b+=g.margin.top:\"center\"==y?b+=c((u-d)/2):\"end\"==y&&(b+=u-g.margin.bottom-d),h.outer=new r.BBox({left:x,top:b,width:p,height:d})});const w=_.map(()=>({start:new a(()=>0),end:new a(()=>0)})),u=f.map(()=>({start:new a(()=>0),end:new a(()=>0)}));d.foreach(({r0:t,c0:i,r1:s,c1:e},{size_hint:o,outer:n})=>{const{inner:r}=o;null!=r&&(w[t].start.apply(n.top,t=>l(t,r.top)),w[s].end.apply(_[s].bottom-n.bottom,t=>l(t,r.bottom)),u[i].start.apply(n.left,t=>l(t,r.left)),u[e].end.apply(f[e].right-n.right,t=>l(t,r.right)))}),d.foreach(({r0:t,c0:i,r1:s,c1:e},o)=>{const{size_hint:n,outer:h}=o;function l({left:t,right:i,top:s,bottom:e}){const o=h.width-t-i,n=h.height-s-e;return new r.BBox({left:t,top:s,width:o,height:n})}if(null!=n.inner){let r=l(n.inner);if(!1!==n.align){const o=w[t].start.get(h.top),n=w[s].end.get(_[s].bottom-h.bottom),c=u[i].start.get(h.left),a=u[e].end.get(f[e].right-h.right);try{r=l({top:o,bottom:n,left:c,right:a})}catch(t){}}o.inner=r}else o.inner=h}),d.foreach((t,{layout:i,outer:s,inner:e})=>{i.set_geometry(s,e)})}}s.Grid=p,p.__name__=\"Grid\";class _ extends p{constructor(t){super(),this.items=t.map((t,i)=>({layout:t,row:0,col:i})),this.rows=\"fit\"}}s.Row=_,_.__name__=\"Row\";class f extends p{constructor(t){super(),this.items=t.map((t,i)=>({layout:t,row:i,col:0})),this.cols=\"fit\"}}s.Column=f,f.__name__=\"Column\"},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(214),i=e(213),a=e(72);class c extends n.ContentLayoutable{constructor(e){super(),this.content_size=a.unsized(e,()=>new i.Sizeable(a.size(e)))}_content_size(){return this.content_size}}s.ContentBox=c,c.__name__=\"ContentBox\";class o extends n.Layoutable{constructor(e){super(),this.el=e}_measure(e){const t=new i.Sizeable(e).bounded_to(this.sizing.size);return a.sized(this.el,t,()=>{const e=new i.Sizeable(a.content_size(this.el)),{border:t,padding:s}=a.extents(this.el);return e.grow_by(t).grow_by(s).map(Math.ceil)})}}s.VariadicBox=o,o.__name__=\"VariadicBox\";class r extends o{constructor(e){super(e),this._cache=new Map}_measure(e){const{width:t,height:s}=e,n=`${t},${s}`;let i=this._cache.get(n);return null==i&&(i=super._measure(e),this._cache.set(n,i)),i}invalidate_cache(){this._cache.clear()}}s.CachedVariadicBox=r,r.__name__=\"CachedVariadicBox\"},\n",
       "      function _(e,r,u){Object.defineProperty(u,\"__esModule\",{value:!0});var a=e(219);u.Expression=a.Expression;var n=e(220);u.Stack=n.Stack;var o=e(221);u.CumSum=o.CumSum},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(81);class i extends n.Model{constructor(e){super(e)}initialize(){super.initialize(),this._connected=new Set,this._result=new Map}v_compute(e){this._connected.has(e)||(this.connect(e.change,()=>this._result.delete(e)),this.connect(e.patching,()=>this._result.delete(e)),this.connect(e.streaming,()=>this._result.delete(e)),this._connected.add(e));let t=this._result.get(e);return null==t&&(t=this._v_compute(e),this._result.set(e,t)),t}}s.Expression=i,i.__name__=\"Expression\"},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),i=t(219),s=t(24),o=r.__importStar(t(18));class a extends i.Expression{constructor(t){super(t)}static init_Stack(){this.define({fields:[o.Array,[]]})}_v_compute(t){var e;const n=null!==(e=t.get_length())&&void 0!==e?e:0,r=new s.NumberArray(n);for(const e of this.fields){const i=t.data[e];if(null!=i)for(let t=0,e=Math.min(n,i.length);t<e;t++)r[t]+=i[t]}return r}}n.Stack=a,a.__name__=\"Stack\",a.init_Stack()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=e(1),u=e(219),r=e(24),_=i.__importStar(e(18));class o extends u.Expression{constructor(e){super(e)}static init_CumSum(){this.define({field:[_.String],include_zero:[_.Boolean,!1]})}_v_compute(e){const t=new r.NumberArray(e.get_length()||0),n=e.data[this.field],i=this.include_zero?1:0;t[0]=this.include_zero?0:n[0];for(let e=1;e<t.length;e++)t[e]=t[e-1]+n[e-i];return t}}n.CumSum=o,o.__name__=\"CumSum\",o.init_CumSum()},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});var l=e(223);t.BooleanFilter=l.BooleanFilter;var i=e(225);t.CustomJSFilter=i.CustomJSFilter;var o=e(224);t.Filter=o.Filter;var F=e(226);t.GroupFilter=F.GroupFilter;var a=e(227);t.IndexFilter=a.IndexFilter},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(1),l=e(224),i=o.__importStar(e(18)),s=e(24);class r extends l.Filter{constructor(e){super(e)}static init_BooleanFilter(){this.define({booleans:[i.Array,null]})}compute_indices(e){const n=e.length,{booleans:t}=this;return null==t?s.Indices.all_set(n):s.Indices.from_booleans(n,t)}}t.BooleanFilter=r,r.__name__=\"BooleanFilter\",r.init_BooleanFilter()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(81);class r extends o.Model{constructor(e){super(e)}}n.Filter=r,r.__name__=\"Filter\"},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=e(1),n=e(224),i=s.__importStar(e(18)),o=e(24),u=e(13),c=e(8),a=e(29);class l extends n.Filter{constructor(e){super(e)}static init_CustomJSFilter(){this.define({args:[i.Any,{}],code:[i.String,\"\"]})}get names(){return u.keys(this.args)}get values(){return u.values(this.args)}get func(){const e=a.use_strict(this.code);return new Function(...this.names,\"source\",e)}compute_indices(e){const t=e.length,r=this.func(...this.values,e);if(null==r)return o.Indices.all_set(t);if(c.isArrayOf(r,c.isInteger))return o.Indices.from_indices(t,r);if(c.isArrayOf(r,c.isBoolean))return o.Indices.from_booleans(t,r);throw new Error(\"expect an array of integers or booleans, or null, got \"+r)}}r.CustomJSFilter=l,l.__name__=\"CustomJSFilter\",l.init_CustomJSFilter()},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),i=e(224),o=r.__importStar(e(18)),u=e(24),s=e(19);class c extends i.Filter{constructor(e){super(e)}static init_GroupFilter(){this.define({column_name:[o.String],group:[o.String]})}compute_indices(e){const t=e.get_column(this.column_name);if(null==t)return s.logger.warn(`${this}: groupby column '${this.column_name}' not found in the data source`),new u.Indices(e.length,1);{const n=new u.Indices(e.length);for(let e=0;e<n.size;e++)t[e]===this.group&&n.set(e);return n}}}n.GroupFilter=c,c.__name__=\"GroupFilter\",c.init_GroupFilter()},\n",
       "      function _(e,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(1),s=e(224),r=t.__importStar(e(18)),c=e(24);class l extends s.Filter{constructor(e){super(e)}static init_IndexFilter(){this.define({indices:[r.Array,null]})}compute_indices(e){const i=e.length,{indices:n}=this;return null==n?c.Indices.all_set(i):c.Indices.from_indices(i,n)}}n.IndexFilter=l,l.__name__=\"IndexFilter\",l.init_IndexFilter()},\n",
       "      function _(r,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});var e=r(130);a.BasicTickFormatter=e.BasicTickFormatter;var c=r(181);a.CategoricalTickFormatter=c.CategoricalTickFormatter;var i=r(185);a.DatetimeTickFormatter=i.DatetimeTickFormatter;var o=r(229);a.FuncTickFormatter=o.FuncTickFormatter;var m=r(198);a.LogTickFormatter=m.LogTickFormatter;var F=r(201);a.MercatorTickFormatter=F.MercatorTickFormatter;var k=r(230);a.NumeralTickFormatter=k.NumeralTickFormatter;var T=r(231);a.PrintfTickFormatter=T.PrintfTickFormatter;var v=r(131);a.TickFormatter=v.TickFormatter},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),s=t(131),i=r.__importStar(t(18)),c=t(13),a=t(29);class u extends s.TickFormatter{constructor(t){super(t)}static init_FuncTickFormatter(){this.define({args:[i.Any,{}],code:[i.String,\"\"]})}get names(){return c.keys(this.args)}get values(){return c.values(this.args)}_make_func(){const t=a.use_strict(this.code);return new Function(\"tick\",\"index\",\"ticks\",...this.names,t)}doFormat(t,e){const n=this._make_func().bind({});return t.map((t,e,r)=>n(t,e,r,...this.values))}}n.FuncTickFormatter=u,u.__name__=\"FuncTickFormatter\",u.init_FuncTickFormatter()},\n",
       "      function _(r,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=r(1),o=e.__importStar(r(188)),a=r(131),i=e.__importStar(r(18));class u extends a.TickFormatter{constructor(r){super(r)}static init_NumeralTickFormatter(){this.define({format:[i.String,\"0,0\"],language:[i.String,\"en\"],rounding:[i.RoundingFunction,\"round\"]})}get _rounding_fn(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}doFormat(r,t){const{format:n,language:e,_rounding_fn:a}=this;return r.map(r=>o.format(r,n,e,a))}}n.NumeralTickFormatter=u,u.__name__=\"NumeralTickFormatter\",u.init_NumeralTickFormatter()},\n",
       "      function _(t,r,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(1),n=t(131),o=t(187),a=e.__importStar(t(18));class c extends n.TickFormatter{constructor(t){super(t)}static init_PrintfTickFormatter(){this.define({format:[a.String,\"%s\"]})}doFormat(t,r){return t.map(t=>o.sprintf(this.format,t))}}i.PrintfTickFormatter=c,c.__name__=\"PrintfTickFormatter\",c.init_PrintfTickFormatter()},\n",
       "      function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});var v=a(233);r.AnnularWedge=v.AnnularWedge;var l=a(234);r.Annulus=l.Annulus;var t=a(235);r.Arc=t.Arc;var i=a(236);r.Bezier=i.Bezier;var n=a(237);r.Circle=n.Circle;var u=a(241);r.CenterRotatable=u.CenterRotatable;var c=a(242);r.Ellipse=c.Ellipse;var g=a(243);r.EllipseOval=g.EllipseOval;var A=a(94);r.Glyph=A.Glyph;var p=a(111);r.HArea=p.HArea;var s=a(244);r.HBar=s.HBar;var d=a(246);r.HexTile=d.HexTile;var R=a(247);r.Image=R.Image;var o=a(249);r.ImageRGBA=o.ImageRGBA;var y=a(250);r.ImageURL=y.ImageURL;var h=a(92);r.Line=h.Line;var m=a(252);r.MultiLine=m.MultiLine;var B=a(253);r.MultiPolygons=B.MultiPolygons;var P=a(254);r.Oval=P.Oval;var G=a(110);r.Patch=G.Patch;var H=a(255);r.Patches=H.Patches;var I=a(256);r.Quad=I.Quad;var L=a(257);r.Quadratic=L.Quadratic;var M=a(258);r.Ray=M.Ray;var O=a(259);r.Rect=O.Rect;var x=a(260);r.Segment=x.Segment;var C=a(261);r.Step=C.Step;var E=a(262);r.Text=E.Text;var Q=a(113);r.VArea=Q.VArea;var S=a(263);r.VBar=S.VBar;var T=a(264);r.Wedge=T.Wedge;var V=a(93);r.XYGlyph=V.XYGlyph},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(93),n=e(100),a=e(28),_=e(24),o=i.__importStar(e(18)),d=e(10),h=e(88);class u extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=this._inner_radius,\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this._outer_radius):this.souter_radius=this._outer_radius,this._angle=new _.NumberArray(this._start_angle.length);for(let e=0,t=this._start_angle.length;e<t;e++)this._angle[e]=this._end_angle[e]-this._start_angle[e]}_render(e,t,{sx:s,sy:i,_start_angle:r,_angle:n,sinner_radius:a,souter_radius:_}){const o=this.model.properties.direction.value();for(const d of t)isNaN(s[d]+i[d]+a[d]+_[d]+r[d]+n[d])||(e.translate(s[d],i[d]),e.rotate(r[d]),e.beginPath(),e.moveTo(_[d],0),e.arc(0,0,_[d],0,n[d],o),e.rotate(n[d]),e.lineTo(a[d],0),e.arc(0,0,a[d],0,-n[d],!o),e.closePath(),e.rotate(-n[d]-r[d]),e.translate(-s[d],-i[d]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,d),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,d),e.stroke()))}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s);let n,a,_,o;if(\"data\"==this.model.properties.outer_radius.units)n=i-this.max_outer_radius,_=i+this.max_outer_radius,a=r-this.max_outer_radius,o=r+this.max_outer_radius;else{const e=t-this.max_outer_radius,i=t+this.max_outer_radius;[n,_]=this.renderer.xscale.r_invert(e,i);const r=s-this.max_outer_radius,d=s+this.max_outer_radius;[a,o]=this.renderer.yscale.r_invert(r,d)}const u=[];for(const e of this.index.indices({x0:n,x1:_,y0:a,y1:o})){const t=this.souter_radius[e]**2,s=this.sinner_radius[e]**2,[n,a]=this.renderer.xscale.r_compute(i,this._x[e]),[_,o]=this.renderer.yscale.r_compute(r,this._y[e]),d=(n-a)**2+(_-o)**2;d<=t&&d>=s&&u.push(e)}const l=this.model.properties.direction.value(),c=[];for(const e of u){const i=Math.atan2(s-this.sy[e],t-this.sx[e]);d.angle_between(-i,-this._start_angle[e],-this._end_angle[e],l)&&c.push(e)}return new h.Selection({indices:c})}draw_legend_for_index(e,t,s){n.generic_area_legend(this.visuals,e,t,s)}scenterxy(e){const t=(this.sinner_radius[e]+this.souter_radius[e])/2,s=(this._start_angle[e]+this._end_angle[e])/2;return[this.sx[e]+t*Math.cos(s),this.sy[e]+t*Math.sin(s)]}}s.AnnularWedgeView=u,u.__name__=\"AnnularWedgeView\";class l extends r.XYGlyph{constructor(e){super(e)}static init_AnnularWedge(){this.prototype.default_view=u,this.mixins([a.LineVector,a.FillVector]),this.define({direction:[o.Direction,\"anticlock\"],inner_radius:[o.DistanceSpec],outer_radius:[o.DistanceSpec],start_angle:[o.AngleSpec],end_angle:[o.AngleSpec]})}}s.AnnularWedge=l,l.__name__=\"AnnularWedge\",l.init_AnnularWedge()},\n",
       "      function _(s,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const t=s(1),r=s(93),n=s(28),a=t.__importStar(s(18)),_=s(32),u=s(88);class o extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=this._inner_radius,\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this._outer_radius):this.souter_radius=this._outer_radius}_render(s,i,{sx:e,sy:t,sinner_radius:r,souter_radius:n}){for(const a of i)if(!isNaN(e[a]+t[a]+r[a]+n[a])){if(this.visuals.fill.doit){if(this.visuals.fill.set_vectorize(s,a),s.beginPath(),_.is_ie)for(const i of[!1,!0])s.arc(e[a],t[a],r[a],0,Math.PI,i),s.arc(e[a],t[a],n[a],Math.PI,0,!i);else s.arc(e[a],t[a],r[a],0,2*Math.PI,!0),s.arc(e[a],t[a],n[a],2*Math.PI,0,!1);s.fill()}this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,a),s.beginPath(),s.arc(e[a],t[a],r[a],0,2*Math.PI),s.moveTo(e[a]+n[a],t[a]),s.arc(e[a],t[a],n[a],0,2*Math.PI),s.stroke())}}_hit_point(s){const{sx:i,sy:e}=s,t=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(e);let n,a,_,o;if(\"data\"==this.model.properties.outer_radius.units)n=t-this.max_outer_radius,_=t+this.max_outer_radius,a=r-this.max_outer_radius,o=r+this.max_outer_radius;else{const s=i-this.max_outer_radius,t=i+this.max_outer_radius;[n,_]=this.renderer.xscale.r_invert(s,t);const r=e-this.max_outer_radius,u=e+this.max_outer_radius;[a,o]=this.renderer.yscale.r_invert(r,u)}const d=[];for(const s of this.index.indices({x0:n,x1:_,y0:a,y1:o})){const i=this.souter_radius[s]**2,e=this.sinner_radius[s]**2,[n,a]=this.renderer.xscale.r_compute(t,this._x[s]),[_,u]=this.renderer.yscale.r_compute(r,this._y[s]),o=(n-a)**2+(_-u)**2;o<=i&&o>=e&&d.push(s)}return new u.Selection({indices:d})}draw_legend_for_index(s,{x0:i,y0:e,x1:t,y1:r},n){const a=n+1,_=new Array(a);_[n]=(i+t)/2;const u=new Array(a);u[n]=(e+r)/2;const o=.5*Math.min(Math.abs(t-i),Math.abs(r-e)),d=new Array(a);d[n]=.4*o;const h=new Array(a);h[n]=.8*o,this._render(s,[n],{sx:_,sy:u,sinner_radius:d,souter_radius:h})}}e.AnnulusView=o,o.__name__=\"AnnulusView\";class d extends r.XYGlyph{constructor(s){super(s)}static init_Annulus(){this.prototype.default_view=o,this.mixins([n.LineVector,n.FillVector]),this.define({inner_radius:[a.DistanceSpec],outer_radius:[a.DistanceSpec]})}}e.Annulus=d,d.__name__=\"Annulus\",d.init_Annulus()},\n",
       "      function _(e,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=e(1),r=e(93),n=e(100),a=e(28),_=t.__importStar(e(18));class c extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius}_render(e,i,{sx:s,sy:t,sradius:r,_start_angle:n,_end_angle:a}){if(this.visuals.line.doit){const _=this.model.properties.direction.value();for(const c of i)isNaN(s[c]+t[c]+r[c]+n[c]+a[c])||(e.beginPath(),e.arc(s[c],t[c],r[c],n[c],a[c],_),this.visuals.line.set_vectorize(e,c),e.stroke())}}draw_legend_for_index(e,i,s){n.generic_line_legend(this.visuals,e,i,s)}}s.ArcView=c,c.__name__=\"ArcView\";class d extends r.XYGlyph{constructor(e){super(e)}static init_Arc(){this.prototype.default_view=c,this.mixins(a.LineVector),this.define({direction:[_.Direction,\"anticlock\"],radius:[_.DistanceSpec],start_angle:[_.AngleSpec],end_angle:[_.AngleSpec]})}}s.Arc=d,d.__name__=\"Arc\",d.init_Arc()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(28),c=e(94),o=e(100),_=e(37),r=s.__importStar(e(18));function a(e,t,i,s,n,c,o,_){const r=[],a=[[],[]];for(let a=0;a<=2;a++){let h,d,x;if(0===a?(d=6*e-12*i+6*n,h=-3*e+9*i-9*n+3*o,x=3*i-3*e):(d=6*t-12*s+6*c,h=-3*t+9*s-9*c+3*_,x=3*s-3*t),Math.abs(h)<1e-12){if(Math.abs(d)<1e-12)continue;const e=-x/d;0<e&&e<1&&r.push(e);continue}const l=d*d-4*x*h,y=Math.sqrt(l);if(l<0)continue;const p=(-d+y)/(2*h);0<p&&p<1&&r.push(p);const f=(-d-y)/(2*h);0<f&&f<1&&r.push(f)}let h=r.length;const d=h;for(;h--;){const d=r[h],x=1-d,l=x*x*x*e+3*x*x*d*i+3*x*d*d*n+d*d*d*o;a[0][h]=l;const y=x*x*x*t+3*x*x*d*s+3*x*d*d*c+d*d*d*_;a[1][h]=y}return a[0][d]=e,a[1][d]=t,a[0][d+1]=o,a[1][d+1]=_,[Math.min(...a[0]),Math.max(...a[1]),Math.max(...a[0]),Math.min(...a[1])]}class h extends c.GlyphView{_project_data(){_.inplace.project_xy(this._x0,this._y0),_.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++)if(isNaN(this._x0[i]+this._x1[i]+this._y0[i]+this._y1[i]+this._cx0[i]+this._cy0[i]+this._cx1[i]+this._cy1[i]))e.add_empty();else{const[t,s,n,c]=a(this._x0[i],this._y0[i],this._x1[i],this._y1[i],this._cx0[i],this._cy0[i],this._cx1[i],this._cy1[i]);e.add(t,s,n,c)}}_render(e,t,{sx0:i,sy0:s,sx1:n,sy1:c,scx0:o,scy0:_,scx1:r,scy1:a}){if(this.visuals.line.doit)for(const h of t)isNaN(i[h]+s[h]+n[h]+c[h]+o[h]+_[h]+r[h]+a[h])||(e.beginPath(),e.moveTo(i[h],s[h]),e.bezierCurveTo(o[h],_[h],r[h],a[h],n[h],c[h]),this.visuals.line.set_vectorize(e,h),e.stroke())}draw_legend_for_index(e,t,i){o.generic_line_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(this+\".scenterxy() is not implemented\")}}i.BezierView=h,h.__name__=\"BezierView\";class d extends c.Glyph{constructor(e){super(e)}static init_Bezier(){this.prototype.default_view=h,this.define({x0:[r.XCoordinateSpec,{field:\"x0\"}],y0:[r.YCoordinateSpec,{field:\"y0\"}],x1:[r.XCoordinateSpec,{field:\"x1\"}],y1:[r.YCoordinateSpec,{field:\"y1\"}],cx0:[r.XCoordinateSpec,{field:\"cx0\"}],cy0:[r.YCoordinateSpec,{field:\"cy0\"}],cx1:[r.XCoordinateSpec,{field:\"cx1\"}],cy1:[r.YCoordinateSpec,{field:\"cy1\"}]}),this.mixins(n.LineVector)}}i.Bezier=d,d.__name__=\"Bezier\",d.init_Bezier()},\n",
       "      function _(s,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const t=s(1),r=s(93),a=s(238),n=s(28),h=t.__importStar(s(101)),d=t.__importStar(s(18)),l=s(9),_=s(12),c=s(88);class o extends r.XYGlyphView{initialize(){super.initialize();const{webgl:s}=this.renderer.plot_view.canvas_view;null!=s&&(this.glglyph=new a.CircleGL(s.gl,this))}_map_data(){if(null!=this._radius)if(\"data\"==this.model.properties.radius.units)switch(this.model.radius_dimension){case\"x\":this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius);break;case\"y\":this.sradius=this.sdist(this.renderer.yscale,this._y,this._radius);break;case\"max\":{const s=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=_.map(s,(s,e)=>Math.max(s,i[e]));break}case\"min\":{const s=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=_.map(s,(s,e)=>Math.min(s,i[e]));break}}else this.sradius=this._radius,this.max_size=2*this.max_radius;else this.sradius=_.map(this._size,s=>s/2)}_mask_data(){const[s,i]=this.renderer.plot_view.frame.bbox.ranges;let e,t,r,a;if(null!=this._radius&&\"data\"==this.model.properties.radius.units){const n=s.start,h=s.end;[e,r]=this.renderer.xscale.r_invert(n,h),e-=this.max_radius,r+=this.max_radius;const d=i.start,l=i.end;[t,a]=this.renderer.yscale.r_invert(d,l),t-=this.max_radius,a+=this.max_radius}else{const n=s.start-this.max_size,h=s.end+this.max_size;[e,r]=this.renderer.xscale.r_invert(n,h);const d=i.start-this.max_size,l=i.end+this.max_size;[t,a]=this.renderer.yscale.r_invert(d,l)}return this.index.indices({x0:e,x1:r,y0:t,y1:a})}_render(s,i,{sx:e,sy:t,sradius:r}){for(const a of i)isNaN(e[a]+t[a]+r[a])||(s.beginPath(),s.arc(e[a],t[a],r[a],0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(s,a),s.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,a),s.stroke()))}_hit_point(s){const{sx:i,sy:e}=s,t=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(e);let a,n,h,d;if(null!=this._radius&&\"data\"==this.model.properties.radius.units)a=t-this.max_radius,n=t+this.max_radius,h=r-this.max_radius,d=r+this.max_radius;else{const s=i-this.max_size,t=i+this.max_size;[a,n]=this.renderer.xscale.r_invert(s,t);const r=e-this.max_size,l=e+this.max_size;[h,d]=this.renderer.yscale.r_invert(r,l)}const l=this.index.indices({x0:a,x1:n,y0:h,y1:d}),_=[];if(null!=this._radius&&\"data\"==this.model.properties.radius.units)for(const s of l){const i=this.sradius[s]**2,[e,a]=this.renderer.xscale.r_compute(t,this._x[s]),[n,h]=this.renderer.yscale.r_compute(r,this._y[s]);(e-a)**2+(n-h)**2<=i&&_.push(s)}else for(const s of l){const t=this.sradius[s]**2;(this.sx[s]-i)**2+(this.sy[s]-e)**2<=t&&_.push(s)}return new c.Selection({indices:_})}_hit_span(s){const{sx:i,sy:e}=s,t=this.bounds();let r,a,n,h;if(\"h\"==s.direction){let s,e;if(n=t.y0,h=t.y1,null!=this._radius&&\"data\"==this.model.properties.radius.units)s=i-this.max_radius,e=i+this.max_radius,[r,a]=this.renderer.xscale.r_invert(s,e);else{const t=this.max_size/2;s=i-t,e=i+t,[r,a]=this.renderer.xscale.r_invert(s,e)}}else{let s,i;if(r=t.x0,a=t.x1,null!=this._radius&&\"data\"==this.model.properties.radius.units)s=e-this.max_radius,i=e+this.max_radius,[n,h]=this.renderer.yscale.r_invert(s,i);else{const t=this.max_size/2;s=e-t,i=e+t,[n,h]=this.renderer.yscale.r_invert(s,i)}}const d=[...this.index.indices({x0:r,x1:a,y0:n,y1:h})];return new c.Selection({indices:d})}_hit_rect(s){const{sx0:i,sx1:e,sy0:t,sy1:r}=s,[a,n]=this.renderer.xscale.r_invert(i,e),[h,d]=this.renderer.yscale.r_invert(t,r),l=[...this.index.indices({x0:a,x1:n,y0:h,y1:d})];return new c.Selection({indices:l})}_hit_poly(s){const{sx:i,sy:e}=s,t=l.range(0,this.sx.length),r=[];for(let s=0,a=t.length;s<a;s++){const a=t[s];h.point_in_poly(this.sx[s],this.sy[s],i,e)&&r.push(a)}return new c.Selection({indices:r})}draw_legend_for_index(s,{x0:i,y0:e,x1:t,y1:r},a){const n=a+1,h=new Array(n);h[a]=(i+t)/2;const d=new Array(n);d[a]=(e+r)/2;const l=new Array(n);l[a]=.2*Math.min(Math.abs(t-i),Math.abs(r-e)),this._render(s,[a],{sx:h,sy:d,sradius:l})}}e.CircleView=o,o.__name__=\"CircleView\";class u extends r.XYGlyph{constructor(s){super(s)}static init_Circle(){this.prototype.default_view=o,this.mixins([n.LineVector,n.FillVector]),this.define({angle:[d.AngleSpec,0],size:[d.DistanceSpec,{units:\"screen\",value:4}],radius:[d.DistanceSpec,void 0,{optional:!0}],radius_dimension:[d.RadiusDimension,\"x\"]})}}e.Circle=u,u.__name__=\"Circle\",u.init_Circle()},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),a=t(103),r=t(107),o=t(239),_=t(240),l=t(237),h=t(12),n=t(19),g=t(22);function u(t,e,s,i,a,r){if(a.doit)if(a[r].is_value)e.used=!1,t.set_attribute(s,\"float\",[a[r].value()]);else{e.used=!0;const o=new Float32Array(a.get_array(r));e.set_size(4*i),e.set_data(0,o),t.set_attribute(s,\"float\",e)}else e.used=!1,t.set_attribute(s,\"float\",[0])}function f(t,e,s,i,a,r){const o=r+\"_color\",_=r+\"_alpha\";if(a.doit){let r,l;if(e.used=!0,a[o].is_value){const t=g.encode_rgba(g.color2rgba(a[o].value())),e=new Uint32Array(i);e.fill(t),r=e}else r=a.get_array(o);if(a[_].is_value){const t=a[_].value(),e=new Float32Array(i);e.fill(t),l=e}else l=a.get_array(_);const h=new Float32Array(4*i);for(let t=0,e=i;t<e;t++){const e=g.decode_rgba(r[t]);1==e[3]&&(e[3]=l[t]),h.set(e,4*t)}e.set_size(4*i*4),e.set_data(0,h),t.set_attribute(s,\"vec4\",e)}else e.used=!1,t.set_attribute(s,\"vec4\",[0,0,0,0])}s.attach_float=u,s.attach_color=f;class d extends r.BaseGLGlyph{init(){const{gl:t}=this,e=o.vertex_shader,s=_.fragment_shader(this._marker_code);this.prog=new a.Program(t),this.prog.set_shaders(e,s),this.vbo_sx=new a.VertexBuffer(t),this.prog.set_attribute(\"a_sx\",\"float\",this.vbo_sx),this.vbo_sy=new a.VertexBuffer(t),this.prog.set_attribute(\"a_sy\",\"float\",this.vbo_sy),this.vbo_s=new a.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new a.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new a.VertexBuffer(t),this.vbo_fg_color=new a.VertexBuffer(t),this.vbo_bg_color=new a.VertexBuffer(t),this.index_buffer=new a.IndexBuffer(t)}draw(t,e,s){const i=e.glglyph,{nvertices:a}=i;if(i.data_changed&&(i._set_data(a),this.glyph instanceof l.CircleView&&null!=this.glyph._radius&&this.vbo_s.set_data(0,h.map(this.glyph.sradius,t=>2*t)),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(a),this.visuals_changed=!1),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a),0!=t.length)if(t.length===a)this.prog.draw(this.gl.POINTS,[0,a]);else if(a<65535){const e=window.navigator.userAgent;e.indexOf(\"MSIE \")+e.indexOf(\"Trident/\")+e.indexOf(\"Edge/\")>0&&n.logger.warn(\"WebGL warning: IE is known to produce 1px sprites whith selections.\"),this.index_buffer.set_size(2*t.length),this.index_buffer.set_data(0,new Uint16Array(t)),this.prog.draw(this.gl.POINTS,this.index_buffer)}else{const e=64e3,s=[];for(let t=0,i=Math.ceil(a/e);t<i;t++)s.push([]);for(let i=0,a=t.length;i<a;i++){const a=t[i]%e;s[Math.floor(t[i]/e)].push(a)}for(let t=0,a=s.length;t<a;t++){const a=new Uint16Array(s[t]),r=t*e*4;0!==a.length&&(this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx,0,r),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy,0,r),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s,0,r),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a,0,r),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,r),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4\",this.vbo_fg_color,0,4*r),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4\",this.vbo_bg_color,0,4*r),this.index_buffer.set_size(2*a.length),this.index_buffer.set_data(0,a),this.prog.draw(this.gl.POINTS,this.index_buffer))}}}_set_data(t){const e=4*t;this.vbo_sx.set_size(e),this.vbo_sy.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e),this.vbo_sx.set_data(0,this.glyph.sx),this.vbo_sy.set_data(0,this.glyph.sy),null!=this.glyph._angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph._angle)),this.glyph instanceof l.CircleView&&null!=this.glyph._radius?this.vbo_s.set_data(0,h.map(this.glyph.sradius,t=>2*t)):this.vbo_s.set_data(0,new Float32Array(this.glyph._size))}_set_visuals(t){u(this.prog,this.vbo_linewidth,\"a_linewidth\",t,this.glyph.visuals.line,\"line_width\"),f(this.prog,this.vbo_fg_color,\"a_fg_color\",t,this.glyph.visuals.line,\"line\"),f(this.prog,this.vbo_bg_color,\"a_bg_color\",t,this.glyph.visuals.fill,\"fill\"),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])}}function b(t){return class extends d{get _marker_code(){return t}}}s.MarkerGL=d,d.__name__=\"MarkerGL\";const c=i.__importStar(t(240));s.AsteriskGL=b(c.asterisk),s.CircleGL=b(c.circle),s.CircleCrossGL=b(c.circlecross),s.CircleXGL=b(c.circlex),s.CrossGL=b(c.cross),s.DiamondGL=b(c.diamond),s.DiamondCrossGL=b(c.diamondcross),s.HexGL=b(c.hex),s.InvertedTriangleGL=b(c.invertedtriangle),s.SquareGL=b(c.square),s.SquareCrossGL=b(c.squarecross),s.SquareXGL=b(c.squarex),s.TriangleGL=b(c.triangle),s.XGL=b(c.x)},\n",
       "      function _(n,i,a){Object.defineProperty(a,\"__esModule\",{value:!0}),a.vertex_shader=\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\n//\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size;\\nuniform vec2 u_offset;\\nuniform vec2 u_scale;\\nuniform float u_antialias;\\n//\\nattribute float a_sx;\\nattribute float a_sy;\\nattribute float a_size;\\nattribute float a_angle;  // in radians\\nattribute float a_linewidth;\\nattribute vec4  a_fg_color;\\nattribute vec4  a_bg_color;\\n//\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec4  v_fg_color;\\nvarying vec4  v_bg_color;\\nvarying vec2  v_rotation;\\n\\nvoid main (void)\\n{\\n    v_size = a_size * u_pixel_ratio;\\n    v_linewidth = a_linewidth * u_pixel_ratio;\\n    v_fg_color = a_fg_color;\\n    v_bg_color = a_bg_color;\\n    v_rotation = vec2(cos(-a_angle), sin(-a_angle));\\n    vec2 pos = vec2(a_sx, a_sy);  // in pixels\\n    pos += 0.5;  // make up for Bokeh's offset\\n    pos /= u_canvas_size / u_pixel_ratio;  // in 0..1\\n    gl_Position = vec4(pos*2.0-1.0, 0.0, 1.0);\\n    gl_Position.y *= -1.0;\\n    gl_PointSize = SQRT_2 * v_size + 2.0 * (v_linewidth + 1.5*u_antialias);\\n}\\n\"},\n",
       "      function _(a,n,s){Object.defineProperty(s,\"__esModule\",{value:!0}),s.fragment_shader=a=>`\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\n//\\nuniform float u_antialias;\\n//\\nvarying vec4  v_fg_color;\\nvarying vec4  v_bg_color;\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec2  v_rotation;\\n\\n${a}\\n\\nvec4 outline(float distance, float linewidth, float antialias, vec4 fg_color, vec4 bg_color)\\n{\\n    vec4 frag_color;\\n    float t = linewidth/2.0 - antialias;\\n    float signed_distance = distance;\\n    float border_distance = abs(signed_distance) - t;\\n    float alpha = border_distance/antialias;\\n    alpha = exp(-alpha*alpha);\\n\\n    // If fg alpha is zero, it probably means no outline. To avoid a dark outline\\n    // shining through due to aa, we set the fg color to the bg color. Avoid if (i.e. branching).\\n    float select = float(bool(fg_color.a));\\n    fg_color.rgb = select * fg_color.rgb + (1.0  - select) * bg_color.rgb;\\n    // Similarly, if we want a transparent bg\\n    select = float(bool(bg_color.a));\\n    bg_color.rgb = select * bg_color.rgb + (1.0  - select) * fg_color.rgb;\\n\\n    if( border_distance < 0.0)\\n        frag_color = fg_color;\\n    else if( signed_distance < 0.0 ) {\\n        frag_color = mix(bg_color, fg_color, sqrt(alpha));\\n    } else {\\n        if( abs(signed_distance) < (linewidth/2.0 + antialias) ) {\\n            frag_color = vec4(fg_color.rgb, fg_color.a * alpha);\\n        } else {\\n            discard;\\n        }\\n    }\\n    return frag_color;\\n}\\n\\nvoid main()\\n{\\n    vec2 P = gl_PointCoord.xy - vec2(0.5, 0.5);\\n    P = vec2(v_rotation.x*P.x - v_rotation.y*P.y,\\n             v_rotation.y*P.x + v_rotation.x*P.y);\\n    float point_size = SQRT_2*v_size  + 2.0 * (v_linewidth + 1.5*u_antialias);\\n    float distance = marker(P*point_size, v_size);\\n    gl_FragColor = outline(distance, v_linewidth, u_antialias, v_fg_color, v_bg_color);\\n}\\n`,s.circle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return length(P) - size/2.0;\\n}\\n\",s.square=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n\",s.diamond=\"\\nfloat marker(vec2 P, float size)\\n{\\n    float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n    float r1 = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n    return r1 / SQRT_2;\\n}\\n\",s.hex=\"\\nfloat marker(vec2 P, float size)\\n{\\n    vec2 q = abs(P);\\n    return max(q.y * 0.57735 + q.x - 1.0 * size/2.0, q.y - 0.866 * size/2.0);\\n}\\n\",s.triangle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    P.y -= size * 0.3;\\n    float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n    float r1 = max(abs(x), abs(y)) - size / 1.6;\\n    float r2 = P.y;\\n    return max(r1 / SQRT_2, r2);  // Intersect diamond with rectangle\\n}\\n\",s.invertedtriangle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    P.y += size * 0.3;\\n    float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n    float r1 = max(abs(x), abs(y)) - size / 1.6;\\n    float r2 = - P.y;\\n    return max(r1 / SQRT_2, r2);  // Intersect diamond with rectangle\\n}\\n\",s.cross='\\nfloat marker(vec2 P, float size)\\n{\\n    float square = max(abs(P.x), abs(P.y)) - size / 2.5;   // 2.5 is a tweak\\n    float cross = min(abs(P.x), abs(P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    return max(square, cross);\\n}\\n',s.circlecross=\"\\nfloat marker(vec2 P, float size)\\n{\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n    float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n    float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n    float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float circle = length(P) - size/2.0;\\n    float c1 = max(circle, s1);\\n    float c2 = max(circle, s2);\\n    float c3 = max(circle, s3);\\n    float c4 = max(circle, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.squarecross=\"\\nfloat marker(vec2 P, float size)\\n{\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n    float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n    float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n    float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n    float c1 = max(square, s1);\\n    float c2 = max(square, s2);\\n    float c3 = max(square, s3);\\n    float c4 = max(square, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.diamondcross=\"\\nfloat marker(vec2 P, float size)\\n{\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n    float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n    float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n    float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n    float diamond = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n    diamond /= SQRT_2;\\n    float c1 = max(diamond, s1);\\n    float c2 = max(diamond, s2);\\n    float c3 = max(diamond, s3);\\n    float c4 = max(diamond, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.x='\\nfloat marker(vec2 P, float size)\\n{\\n    float circle = length(P) - size / 1.6;\\n    float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    return max(circle, X);\\n}\\n',s.circlex='\\nfloat marker(vec2 P, float size)\\n{\\n    float x = P.x - P.y;\\n    float y = P.x + P.y;\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n    float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n    float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n    float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float circle = length(P) - size/2.0;\\n    float c1 = max(circle, s1);\\n    float c2 = max(circle, s2);\\n    float c3 = max(circle, s3);\\n    float c4 = max(circle, s4);\\n    // Union\\n    float almost = min(min(min(c1, c2), c3), c4);\\n    // In this case, the X is also outside of the main shape\\n    float Xmask = length(P) - size / 1.6;  // a circle\\n    float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    return min(max(X, Xmask), almost);\\n}\\n',s.squarex=\"\\nfloat marker(vec2 P, float size)\\n{\\n    float x = P.x - P.y;\\n    float y = P.x + P.y;\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n    float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n    float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n    float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n    float c1 = max(square, s1);\\n    float c2 = max(square, s2);\\n    float c3 = max(square, s3);\\n    float c4 = max(square, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.asterisk='\\nfloat marker(vec2 P, float size)\\n{\\n    // Masks\\n    float diamond = max(abs(SQRT_2 / 2.0 * (P.x - P.y)), abs(SQRT_2 / 2.0 * (P.x + P.y))) - size / (2.0 * SQRT_2);\\n    float square = max(abs(P.x), abs(P.y)) - size / (2.0 * SQRT_2);\\n    // Shapes\\n    float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    float cross = min(abs(P.x), abs(P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    // Result is union of masked shapes\\n    return min(max(X, diamond), max(cross, square));\\n}\\n'},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=e(1),i=e(93),l=e(28),s=a.__importStar(e(18));class c extends i.XYGlyphView{}n.CenterRotatableView=c,c.__name__=\"CenterRotatableView\";class o extends i.XYGlyph{constructor(e){super(e)}static init_CenterRotatable(){this.mixins([l.LineVector,l.FillVector]),this.define({angle:[s.AngleSpec,0],width:[s.DistanceSpec],height:[s.DistanceSpec]})}}n.CenterRotatable=o,o.__name__=\"CenterRotatable\",o.init_CenterRotatable()},\n",
       "      function _(e,l,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(243);class t extends s.EllipseOvalView{}i.EllipseView=t,t.__name__=\"EllipseView\";class _ extends s.EllipseOval{constructor(e){super(e)}static init_Ellipse(){this.prototype.default_view=t}}i.Ellipse=_,_.__name__=\"Ellipse\",_.init_Ellipse()},\n",
       "      function _(t,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(1),h=t(241),a=e.__importStar(t(101)),r=t(88);class n extends h.CenterRotatableView{_set_data(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)}_map_data(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this.sw=this._width,\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height}_render(t,s,{sx:i,sy:e,sw:h,sh:a,_angle:r}){for(const n of s)isNaN(i[n]+e[n]+h[n]+a[n]+r[n])||(t.beginPath(),t.ellipse(i[n],e[n],h[n]/2,a[n]/2,r[n],0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,n),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,n),t.stroke()))}_hit_point(t){let s,i,e,h,n,_,l,d,o;const{sx:x,sy:m}=t,w=this.renderer.xscale.invert(x),c=this.renderer.yscale.invert(m);\"data\"==this.model.properties.width.units?(s=w-this.max_width,i=w+this.max_width):(_=x-this.max_width,l=x+this.max_width,[s,i]=this.renderer.xscale.r_invert(_,l)),\"data\"==this.model.properties.height.units?(e=c-this.max_height,h=c+this.max_height):(d=m-this.max_height,o=m+this.max_height,[e,h]=this.renderer.yscale.r_invert(d,o));const p=this.index.indices({x0:s,x1:i,y0:e,y1:h}),y=[];for(const t of p)n=a.point_in_ellipse(x,m,this._angle[t],this.sh[t]/2,this.sw[t]/2,this.sx[t],this.sy[t]),n&&y.push(t);return new r.Selection({indices:y})}draw_legend_for_index(t,{x0:s,y0:i,x1:e,y1:h},a){const r=a+1,n=new Array(r);n[a]=(s+e)/2;const _=new Array(r);_[a]=(i+h)/2;const l=this.sw[a]/this.sh[a],d=.8*Math.min(Math.abs(e-s),Math.abs(h-i)),o=new Array(r),x=new Array(r);l>1?(o[a]=d,x[a]=d/l):(o[a]=d*l,x[a]=d),this._render(t,[a],{sx:n,sy:_,sw:o,sh:x,_angle:[0]})}_bounds({x0:t,x1:s,y0:i,y1:e}){return{x0:t-this.max_w2,x1:s+this.max_w2,y0:i-this.max_h2,y1:e+this.max_h2}}}i.EllipseOvalView=n,n.__name__=\"EllipseOvalView\";class _ extends h.CenterRotatable{constructor(t){super(t)}}i.EllipseOval=_,_.__name__=\"EllipseOval\"},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),h=t(245),r=t(24),_=i.__importStar(t(18));class a extends h.BoxView{scenterxy(t){return[(this.sleft[t]+this.sright[t])/2,this.sy[t]]}_lrtb(t){return[Math.min(this._left[t],this._right[t]),Math.max(this._left[t],this._right[t]),this._y[t]+.5*this._height[t],this._y[t]-.5*this._height[t]]}_map_data(){this.sy=this.renderer.yscale.v_compute(this._y),this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"),this.sleft=this.renderer.xscale.v_compute(this._left),this.sright=this.renderer.xscale.v_compute(this._right);const t=this.sy.length;this.stop=new r.NumberArray(t),this.sbottom=new r.NumberArray(t);for(let e=0;e<t;e++)this.stop[e]=this.sy[e]-this.sh[e]/2,this.sbottom[e]=this.sy[e]+this.sh[e]/2;this._clamp_viewport()}}s.HBarView=a,a.__name__=\"HBarView\";class o extends h.Box{constructor(t){super(t)}static init_HBar(){this.prototype.default_view=a,this.define({left:[_.XCoordinateSpec,{value:0}],y:[_.YCoordinateSpec,{field:\"y\"}],height:[_.NumberSpec,{value:1}],right:[_.XCoordinateSpec,{field:\"right\"}]})}}s.HBar=o,o.__name__=\"HBar\",o.init_HBar()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(28),r=t(94),n=t(100),a=t(88);class h extends r.GlyphView{get_anchor_point(t,e,i){const s=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),n=Math.min(this.stop[e],this.sbottom[e]),a=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:s,y:n};case\"top_center\":return{x:(s+r)/2,y:n};case\"top_right\":return{x:r,y:n};case\"bottom_left\":return{x:s,y:a};case\"bottom_center\":return{x:(s+r)/2,y:a};case\"bottom_right\":return{x:r,y:a};case\"center_left\":return{x:s,y:(n+a)/2};case\"center\":return{x:(s+r)/2,y:(n+a)/2};case\"center_right\":return{x:r,y:(n+a)/2};default:return null}}_index_data(t){const{min:e,max:i}=Math,{data_size:s}=this;for(let r=0;r<s;r++){const[s,n,a,h]=this._lrtb(r);isNaN(s+n+a+h)||!isFinite(s+n+a+h)?t.add_empty():t.add(e(s,n),e(a,h),i(n,s),i(a,h))}}_render(t,e,{sleft:i,sright:s,stop:r,sbottom:n}){for(const a of e)isNaN(i[a]+r[a]+s[a]+n[a])||(t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,a),t.beginPath(),t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),t.fill()),this.visuals.hatch.doit2(t,a,()=>{t.beginPath(),t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),t.fill()},()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,a),t.beginPath(),t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),t.stroke()))}_clamp_viewport(){const t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,i=this.stop.length;for(let s=0;s<i;s++)this.stop[s]=Math.max(this.stop[s],e.start),this.sbottom[s]=Math.min(this.sbottom[s],e.end),this.sleft[s]=Math.max(this.sleft[s],t.start),this.sright[s]=Math.min(this.sright[s],t.end)}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){const{sx:e,sy:i}=t,s=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),n=[...this.index.indices({x0:s,y0:r,x1:s,y1:r})];return new a.Selection({indices:n})}_hit_span(t){const{sx:e,sy:i}=t;let s;if(\"v\"==t.direction){const t=this.renderer.yscale.invert(i),e=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(e.start,e.end);s=[...this.index.indices({x0:r,y0:t,x1:n,y1:t})]}else{const t=this.renderer.xscale.invert(e),i=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(i.start,i.end);s=[...this.index.indices({x0:t,y0:r,x1:t,y1:n})]}return new a.Selection({indices:s})}draw_legend_for_index(t,e,i){n.generic_area_legend(this.visuals,t,e,i)}}i.BoxView=h,h.__name__=\"BoxView\";class o extends r.Glyph{constructor(t){super(t)}static init_Box(){this.mixins([s.LineVector,s.FillVector,s.HatchVector])}}i.Box=o,o.__name__=\"Box\",o.init_Box()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(94),n=i.__importStar(e(101)),a=i.__importStar(e(18)),o=e(28),c=e(24),_=e(37),h=e(100),l=e(88);class d extends r.GlyphView{scenterxy(e){return[this.sx[e],this.sy[e]]}_set_data(){const e=this._q.length,{orientation:t,size:s,aspect_scale:i}=this.model;this._x=new c.NumberArray(e),this._y=new c.NumberArray(e);const r=Math.sqrt(3);if(\"pointytop\"==t)for(let t=0;t<e;t++)this._x[t]=s*r*(this._q[t]+this._r[t]/2)/i,this._y[t]=3*-s/2*this._r[t];else for(let t=0;t<e;t++)this._x[t]=3*s/2*this._q[t],this._y[t]=-s*r*(this._r[t]+this._q[t]/2)*i}_project_data(){_.inplace.project_xy(this._x,this._y)}_index_data(e){let t=this.model.size,s=Math.sqrt(3)*t/2;\"flattop\"==this.model.orientation?([s,t]=[t,s],t*=this.model.aspect_scale):s/=this.model.aspect_scale;const{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x[r],n=this._y[r];isNaN(i+n)||!isFinite(i+n)?e.add_empty():e.add(i-s,n-t,i+s,n+t)}}map_data(){[this.sx,this.sy]=this.renderer.coordinates.map_to_screen(this._x,this._y),[this.svx,this.svy]=this._get_unscaled_vertices()}_get_unscaled_vertices(){const e=this.model.size,t=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){const s=this.renderer.yscale,i=this.renderer.xscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))/t,a=r/2;return[[0,-n,-n,0,n,n],[r,a,-a,-r,-a,a]]}{const s=this.renderer.xscale,i=this.renderer.yscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))*t,a=r/2;return[[r,a,-a,-r,-a,a],[0,-n,-n,0,n,n]]}}_render(e,t,{sx:s,sy:i,svx:r,svy:n,_scale:a}){for(const o of t)if(!isNaN(s[o]+i[o]+a[o])){e.translate(s[o],i[o]),e.beginPath();for(let t=0;t<6;t++)e.lineTo(r[t]*a[o],n[t]*a[o]);e.closePath(),e.translate(-s[o],-i[o]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,o),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,o),e.stroke())}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s),a=this.index.indices({x0:i,y0:r,x1:i,y1:r}),o=[];for(const e of a)n.point_in_poly(t-this.sx[e],s-this.sy[e],this.svx,this.svy)&&o.push(e);return new l.Selection({indices:o})}_hit_span(e){const{sx:t,sy:s}=e;let i;if(\"v\"==e.direction){const e=this.renderer.yscale.invert(s),t=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(t.start,t.end);i=[...this.index.indices({x0:r,y0:e,x1:n,y1:e})]}else{const e=this.renderer.xscale.invert(t),s=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(s.start,s.end);i=[...this.index.indices({x0:e,y0:r,x1:e,y1:n})]}return new l.Selection({indices:i})}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:r}=e,[n,a]=this.renderer.xscale.r_invert(t,s),[o,c]=this.renderer.yscale.r_invert(i,r),_=[...this.index.indices({x0:n,x1:a,y0:o,y1:c})];return new l.Selection({indices:_})}draw_legend_for_index(e,t,s){h.generic_area_legend(this.visuals,e,t,s)}}s.HexTileView=d,d.__name__=\"HexTileView\";class x extends r.Glyph{constructor(e){super(e)}static init_HexTile(){this.prototype.default_view=d,this.mixins([o.LineVector,o.FillVector]),this.define({r:[a.NumberSpec],q:[a.NumberSpec],size:[a.Number,1],aspect_scale:[a.Number,1],scale:[a.NumberSpec,1],orientation:[a.HexTileOrientation,\"pointytop\"]}),this.override({line_color:null})}}s.HexTile=x,x.__name__=\"HexTile\",x.init_HexTile()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const _=e(1),i=e(248),n=e(141),s=_.__importStar(e(18));class r extends i.ImageBaseView{connect_signals(){super.connect_signals(),this.connect(this.model.color_mapper.change,()=>this._update_image())}_update_image(){null!=this.image_data&&(this._set_data(null),this.renderer.plot_view.request_render())}_flat_img_to_buf8(e){return this.model.color_mapper.rgba_mapper.v_compute(e)}}a.ImageView=r,r.__name__=\"ImageView\";class o extends i.ImageBase{constructor(e){super(e)}static init_Image(){this.prototype.default_view=r,this.define({color_mapper:[s.Instance,()=>new n.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})]})}}a.Image=o,o.__name__=\"Image\",o.init_Image()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),a=e(93),h=e(24),_=i.__importStar(e(18)),n=e(88),r=e(9),d=e(30),l=e(11);class g extends a.XYGlyphView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.global_alpha.change,()=>this.renderer.request_render())}_render(e,t,{image_data:s,sx:i,sy:a,sw:h,sh:_}){const n=e.getImageSmoothingEnabled();e.setImageSmoothingEnabled(!1),e.globalAlpha=this.model.global_alpha;for(const n of t){if(null==s[n]||isNaN(i[n]+a[n]+h[n]+_[n]))continue;const t=a[n];e.translate(0,t),e.scale(1,-1),e.translate(0,-t),e.drawImage(s[n],0|i[n],0|a[n],h[n],_[n]),e.translate(0,t),e.scale(1,-1),e.translate(0,-t)}e.setImageSmoothingEnabled(n)}_set_data(e){this._set_width_heigh_data();for(let t=0,s=this._image.length;t<s;t++){if(null!=e&&e.indexOf(t)<0)continue;const s=this._image[t];let i;d.is_NDArray(s)?(l.assert(2==s.dimension,\"expected a 2D array\"),i=s,this._height[t]=s.shape[0],this._width[t]=s.shape[1]):(i=r.concat(s),this._height[t]=s.length,this._width[t]=s[0].length);const a=this._flat_img_to_buf8(i);this._set_image_data_from_buffer(t,a)}}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++){const[t,i,a,h]=this._lrtb(s);isNaN(t+i+a+h)||!isFinite(t+i+a+h)?e.add_empty():e.add(t,h,i,a)}}_lrtb(e){const t=this.renderer.xscale.source_range,s=this._x[e],i=t.is_reversed?s-this._dw[e]:s+this._dw[e],a=this.renderer.yscale.source_range,h=this._y[e],_=a.is_reversed?h-this._dh[e]:h+this._dh[e],[n,r]=s<i?[s,i]:[i,s],[d,l]=h<_?[h,_]:[_,h];return[n,r,l,d]}_set_width_heigh_data(){null!=this.image_data&&this.image_data.length==this._image.length||(this.image_data=new Array(this._image.length)),null!=this._width&&this._width.length==this._image.length||(this._width=new h.NumberArray(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new h.NumberArray(this._image.length))}_get_or_create_canvas(e){const t=this.image_data[e];if(null!=t&&t.width==this._width[e]&&t.height==this._height[e])return t;{const t=document.createElement(\"canvas\");return t.width=this._width[e],t.height=this._height[e],t}}_set_image_data_from_buffer(e,t){const s=this._get_or_create_canvas(e),i=s.getContext(\"2d\"),a=i.getImageData(0,0,this._width[e],this._height[e]);a.data.set(t),i.putImageData(a,0,0),this.image_data[e]=s}_map_data(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}}_image_index(e,t,s){const[i,a,h,_]=this._lrtb(e),n=this._width[e],r=this._height[e],d=(a-i)/n,l=(h-_)/r;let g=Math.floor((t-i)/d),o=Math.floor((s-_)/l);return this.renderer.xscale.source_range.is_reversed&&(g=n-g-1),this.renderer.yscale.source_range.is_reversed&&(o=r-o-1),{index:e,dim1:g,dim2:o,flat_index:o*n+g}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),a=this.renderer.yscale.invert(s),h=this.index.indices({x0:i,x1:i,y0:a,y1:a}),_=new n.Selection;for(const e of h)t!=1/0&&s!=1/0&&_.image_indices.push(this._image_index(e,i,a));return _}}s.ImageBaseView=g,g.__name__=\"ImageBaseView\";class o extends a.XYGlyph{constructor(e){super(e)}static init_ImageBase(){this.define({image:[_.NDArraySpec],dw:[_.DistanceSpec],dh:[_.DistanceSpec],dilate:[_.Boolean,!1],global_alpha:[_.Number,1]})}}s.ImageBase=o,o.__name__=\"ImageBase\",o.init_ImageBase()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const _=e(248),i=e(8);class n extends _.ImageBaseView{_flat_img_to_buf8(e){let t;return t=i.isArray(e)?new Uint32Array(e):e,new Uint8Array(t.buffer)}}a.ImageRGBAView=n,n.__name__=\"ImageRGBAView\";class r extends _.ImageBase{constructor(e){super(e)}static init_ImageRGBA(){this.prototype.default_view=n}}a.ImageRGBA=r,r.__name__=\"ImageRGBA\",r.init_ImageRGBA()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=e(1),i=e(93),a=e(24),n=r.__importStar(e(18)),h=e(12),o=e(251);class _ extends i.XYGlyphView{constructor(){super(...arguments),this._images_rendered=!1}initialize(){super.initialize(),this.connect(this.model.properties.global_alpha.change,()=>this.renderer.request_render())}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++)e.add_empty()}_set_data(){null!=this.image&&this.image.length==this._url.length||(this.image=h.map(this._url,()=>null));const{retry_attempts:e,retry_timeout:t}=this.model;for(let s=0,r=this._url.length;s<r;s++){const r=this._url[s];null!=r&&\"\"!=r&&new o.ImageLoader(r,{loaded:e=>{this.image[s]=e,this.renderer.request_render()},attempts:e+1,timeout:t})}const s=\"data\"==this.model.properties.w.units,r=\"data\"==this.model.properties.h.units,i=this._x.length,n=new a.NumberArray(s?2*i:i),_=new a.NumberArray(r?2*i:i),{anchor:c}=this.model;function l(e,t){switch(c){case\"top_left\":case\"bottom_left\":case\"center_left\":return[e,e+t];case\"top_center\":case\"bottom_center\":case\"center\":return[e-t/2,e+t/2];case\"top_right\":case\"bottom_right\":case\"center_right\":return[e-t,e]}}function d(e,t){switch(c){case\"top_left\":case\"top_center\":case\"top_right\":return[e,e-t];case\"bottom_left\":case\"bottom_center\":case\"bottom_right\":return[e+t,e];case\"center_left\":case\"center\":case\"center_right\":return[e+t/2,e-t/2]}}if(s)for(let e=0;e<i;e++)[n[e],n[i+e]]=l(this._x[e],this._w[e]);else n.set(this._x,0);if(r)for(let e=0;e<i;e++)[_[e],_[i+e]]=d(this._y[e],this._h[e]);else _.set(this._y,0);const[m,u]=h.minmax(n),[p,g]=h.minmax(_);this._bounds_rect={x0:m,x1:u,y0:p,y1:g}}has_finished(){return super.has_finished()&&1==this._images_rendered}_map_data(){const e=null!=this.model.w?this._w:h.map(this._x,()=>NaN),t=null!=this.model.h?this._h:h.map(this._x,()=>NaN);switch(this.model.properties.w.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,e,\"edge\",this.model.dilate);break;case\"screen\":this.sw=e}switch(this.model.properties.h.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,t,\"edge\",this.model.dilate);break;case\"screen\":this.sh=t}}_render(e,t,{image:s,sx:r,sy:i,sw:a,sh:n,_angle:h}){const{frame:o}=this.renderer.plot_view;e.rect(o.bbox.left+1,o.bbox.top+1,o.bbox.width-2,o.bbox.height-2),e.clip();let _=!0;for(const o of t){if(isNaN(r[o]+i[o]+h[o]))continue;const t=s[o];null!=t?this._render_image(e,o,t,r,i,a,n,h):_=!1}_&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())}_final_sx_sy(e,t,s,r,i){switch(e){case\"top_left\":return[t,s];case\"top_center\":return[t-r/2,s];case\"top_right\":return[t-r,s];case\"center_right\":return[t-r,s-i/2];case\"bottom_right\":return[t-r,s-i];case\"bottom_center\":return[t-r/2,s-i];case\"bottom_left\":return[t,s-i];case\"center_left\":return[t,s-i/2];case\"center\":return[t-r/2,s-i/2]}}_render_image(e,t,s,r,i,a,n,h){isNaN(a[t])&&(a[t]=s.width),isNaN(n[t])&&(n[t]=s.height);const{anchor:o}=this.model,[_,c]=this._final_sx_sy(o,r[t],i[t],a[t],n[t]);e.save(),e.globalAlpha=this.model.global_alpha;const l=a[t]/2,d=n[t]/2;h[t]?(e.translate(_,c),e.translate(l,d),e.rotate(h[t]),e.translate(-l,-d),e.drawImage(s,0,0,a[t],n[t]),e.translate(l,d),e.rotate(-h[t]),e.translate(-l,-d),e.translate(-_,-c)):e.drawImage(s,_,c,a[t],n[t]),e.restore()}bounds(){return this._bounds_rect}}s.ImageURLView=_,_.__name__=\"ImageURLView\";class c extends i.XYGlyph{constructor(e){super(e)}static init_ImageURL(){this.prototype.default_view=_,this.define({url:[n.StringSpec],anchor:[n.Anchor,\"top_left\"],global_alpha:[n.Number,1],angle:[n.AngleSpec,0],w:[n.DistanceSpec],h:[n.DistanceSpec],dilate:[n.Boolean,!1],retry_attempts:[n.Number,0],retry_timeout:[n.Number,0]})}}s.ImageURL=c,c.__name__=\"ImageURL\",c.init_ImageURL()},\n",
       "      function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=i(19);class a{constructor(i,e={}){this._image=new Image,this._finished=!1;const{attempts:t=1,timeout:a=1}=e;this.promise=new Promise((o,n)=>{this._image.crossOrigin=\"anonymous\";let r=0;this._image.onerror=()=>{if(++r==t){const a=`unable to load ${i} image after ${t} attempts`;if(s.logger.warn(a),null==this._image.crossOrigin)return void(null!=e.failed&&e.failed());s.logger.warn(`attempting to load ${i} without a cross origin policy`),this._image.crossOrigin=null,r=0}setTimeout(()=>this._image.src=i,a)},this._image.onload=()=>{this._finished=!0,null!=e.loaded&&e.loaded(this._image),o(this._image)},this._image.src=i})}get finished(){return this._finished}get image(){return this._image}}t.ImageLoader=a,a.__name__=\"ImageLoader\"},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(37),o=e(28),l=s.__importStar(e(101)),r=s.__importStar(e(18)),_=e(12),c=e(13),a=e(94),h=e(100),d=e(88);class y extends a.GlyphView{_project_data(){n.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++){const t=this._xs.get(i);if(0==t.length){e.add_empty();continue}const s=this._ys.get(i);if(0==s.length){e.add_empty();continue}const[n,o]=_.minmax(t),[l,r]=_.minmax(s);e.add(n,l,o,r)}}_render(e,t,{sxs:i,sys:s}){for(const n of t){const t=i.get(n),o=s.get(n);this.visuals.line.set_vectorize(e,n);for(let i=0,s=t.length;i<s;i++)0!=i?isNaN(t[i])||isNaN(o[i])?(e.stroke(),e.beginPath()):e.lineTo(t[i],o[i]):(e.beginPath(),e.moveTo(t[i],o[i]));e.stroke()}}_hit_point(e){const t={x:e.sx,y:e.sy};let i=9999;const s=new Map;for(let e=0,n=this.sxs.length;e<n;e++){const n=Math.max(2,this.visuals.line.cache_select(\"line_width\",e)/2),o=this.sxs.get(e),r=this.sys.get(e);let _=null;for(let e=0,s=o.length-1;e<s;e++){const s={x:o[e],y:r[e]},c={x:o[e+1],y:r[e+1]},a=l.dist_to_segment(t,s,c);a<n&&a<i&&(i=a,_=[e])}null!=_&&s.set(e,_)}return new d.Selection({indices:[...s.keys()],multiline_indices:c.to_object(s)})}_hit_span(e){const{sx:t,sy:i}=e;let s,n;\"v\"==e.direction?(s=this.renderer.yscale.invert(i),n=this._ys):(s=this.renderer.xscale.invert(t),n=this._xs);const o=new Map;for(let e=0,t=n.length;e<t;e++){const t=n.get(e),i=[];for(let e=0,n=t.length-1;e<n;e++)t[e]<=s&&s<=t[e+1]&&i.push(e);i.length>0&&o.set(e,i)}return new d.Selection({indices:[...o.keys()],multiline_indices:c.to_object(o)})}get_interpolation_hit(e,t,i){const s=this._xs.get(e),n=this._ys.get(e),o=s[t],l=n[t],r=s[t+1],_=n[t+1];return h.line_interpolation(this.renderer,i,o,l,r,_)}draw_legend_for_index(e,t,i){h.generic_line_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(this+\".scenterxy() is not implemented\")}}i.MultiLineView=y,y.__name__=\"MultiLineView\";class x extends a.Glyph{constructor(e){super(e)}static init_MultiLine(){this.prototype.default_view=y,this.define({xs:[r.XCoordinateSeqSpec,{field:\"xs\"}],ys:[r.YCoordinateSeqSpec,{field:\"ys\"}]}),this.mixins(o.LineVector)}}i.MultiLine=x,x.__name__=\"MultiLine\",x.init_MultiLine()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(95),o=e(94),r=e(100),l=e(12),h=e(12),_=e(28),a=i.__importStar(e(101)),d=i.__importStar(e(18)),c=e(88),x=e(11);class y extends o.GlyphView{_project_data(){}_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._xs[n],o=this._ys[n];if(0==i.length||0==o.length){e.add_empty();continue}let r=1/0,h=-1/0,_=1/0,a=-1/0;for(let e=0,n=i.length;e<n;e++){const n=i[e][0],d=o[e][0];if(0!=n.length&&0!=d.length){const[e,i]=l.minmax(n),[o,c]=l.minmax(d);r=t(r,e),h=s(h,i),_=t(_,o),a=s(a,c)}}isFinite(r+h+_+a)?e.add(r,_,h,a):e.add_empty()}this._hole_index=this._index_hole_data()}_index_hole_data(){const{min:e,max:t}=Math,{data_size:s}=this,i=new n.SpatialIndex(s);for(let n=0;n<s;n++){const s=this._xs[n],o=this._ys[n];if(0==s.length||0==o.length){i.add_empty();continue}let r=1/0,h=-1/0,_=1/0,a=-1/0;for(let i=0,n=s.length;i<n;i++){const n=s[i],d=o[i];if(n.length>1&&d.length>1)for(let s=1,i=n.length;s<i;s++){const[i,o]=l.minmax(n[s]),[c,x]=l.minmax(d[s]);r=e(r,i),h=t(h,o),_=e(_,c),a=t(a,x)}}isFinite(r+h+_+a)?i.add(r,_,h,a):i.add_empty()}return i.finish(),i}_mask_data(){const e=this.renderer.plot_view.frame.x_range,[t,s]=[e.min,e.max],i=this.renderer.plot_view.frame.y_range,[n,o]=[i.min,i.max];return this.index.indices({x0:t,x1:s,y0:n,y1:o})}_inner_loop(e,t,s){e.beginPath();for(let i=0,n=t.length;i<n;i++)for(let n=0,o=t[i].length;n<o;n++){const o=t[i][n],r=s[i][n];for(let t=0,s=o.length;t<s;t++)0!=t?e.lineTo(o[t],r[t]):e.moveTo(o[t],r[t]);e.closePath()}}_render(e,t,{sxs:s,sys:i}){if(this.visuals.fill.doit||this.visuals.line.doit)for(const n of t){const[t,o]=[s[n],i[n]];this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,n),this._inner_loop(e,t,o),e.fill(\"evenodd\")),this.visuals.hatch.doit2(e,n,()=>{this._inner_loop(e,t,o),e.fill(\"evenodd\")},()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,n),this._inner_loop(e,t,o),e.stroke())}}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,o=[t,s,s,t],r=[i,i,n,n],[l,h]=this.renderer.xscale.r_invert(t,s),[_,d]=this.renderer.yscale.r_invert(i,n),x=this.index.indices({x0:l,x1:h,y0:_,y1:d}),y=[];for(const e of x){const t=this.sxs[e],s=this.sys[e];let i=!0;for(let e=0,n=t.length;e<n;e++){for(let n=0,l=t[e][0].length;n<l;n++){const l=t[e][0][n],h=s[e][0][n];if(!a.point_in_poly(l,h,o,r)){i=!1;break}}if(!i)break}i&&y.push(e)}return new c.Selection({indices:y})}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),n=this.renderer.yscale.invert(s),o=this.index.indices({x0:i,y0:n,x1:i,y1:n}),r=this._hole_index.indices({x0:i,y0:n,x1:i,y1:n}),l=[];for(const e of o){const i=this.sxs[e],n=this.sys[e];for(let o=0,h=i.length;o<h;o++){const h=i[o].length;if(a.point_in_poly(t,s,i[o][0],n[o][0]))if(1==h)l.push(e);else if(r.get(e)){if(h>1){let r=!1;for(let e=1;e<h;e++){const l=i[o][e],h=n[o][e];if(a.point_in_poly(t,s,l,h)){r=!0;break}}r||l.push(e)}}else l.push(e)}}return new c.Selection({indices:l})}_get_snap_coord(e){return h.sum(e)/e.length}scenterxy(e,t,s){if(1==this.sxs[e].length){return[this._get_snap_coord(this.sxs[e][0][0]),this._get_snap_coord(this.sys[e][0][0])]}{const i=this.sxs[e],n=this.sys[e];for(let e=0,o=i.length;e<o;e++)if(a.point_in_poly(t,s,i[e][0],n[e][0])){return[this._get_snap_coord(i[e][0]),this._get_snap_coord(n[e][0])]}}x.unreachable()}map_data(){const e=this._xs.length;this.sxs=new Array(e),this.sys=new Array(e);for(let t=0;t<e;t++){const e=this._xs[t].length;this.sxs[t]=new Array(e),this.sys[t]=new Array(e);for(let s=0;s<e;s++){const e=this._xs[t][s].length;this.sxs[t][s]=new Array(e),this.sys[t][s]=new Array(e);for(let i=0;i<e;i++){const[e,n]=this.renderer.coordinates.map_to_screen(this._xs[t][s][i],this._ys[t][s][i]);this.sxs[t][s][i]=e,this.sys[t][s][i]=n}}}}draw_legend_for_index(e,t,s){r.generic_area_legend(this.visuals,e,t,s)}}s.MultiPolygonsView=y,y.__name__=\"MultiPolygonsView\";class f extends o.Glyph{constructor(e){super(e)}static init_MultiPolygons(){this.prototype.default_view=y,this.define({xs:[d.XCoordinateSeqSeqSeqSpec,{field:\"xs\"}],ys:[d.YCoordinateSeqSeqSeqSpec,{field:\"ys\"}]}),this.mixins([_.LineVector,_.FillVector,_.HatchVector])}}s.MultiPolygons=f,f.__name__=\"MultiPolygons\",f.init_MultiPolygons()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const l=e(243);class s extends l.EllipseOvalView{_map_data(){super._map_data();const{sw:e}=this,t=e.length;for(let a=0;a<t;a++)e[a]*=.75}}a.OvalView=s,s.__name__=\"OvalView\";class _ extends l.EllipseOval{constructor(e){super(e)}static init_Oval(){this.prototype.default_view=s}}a.Oval=_,_.__name__=\"Oval\",_.init_Oval()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(94),r=e(100),o=e(12),a=e(28),_=i.__importStar(e(101)),c=i.__importStar(e(18)),l=e(88),h=e(11),d=e(37);class y extends n.GlyphView{_project_data(){d.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++){const t=this._xs.get(s),i=this._ys.get(s);if(0==t.length)e.add_empty();else{const[s,n]=o.minmax(t),[r,a]=o.minmax(i);e.add(s,r,n,a)}}}_mask_data(){const e=this.renderer.plot_view.frame.x_range,[t,s]=[e.min,e.max],i=this.renderer.plot_view.frame.y_range,[n,r]=[i.min,i.max];return this.index.indices({x0:t,x1:s,y0:n,y1:r})}_inner_loop(e,t,s,i){for(let n=0,r=t.length;n<r;n++)0!=n?isNaN(t[n]+s[n])?(e.closePath(),i.apply(e),e.beginPath()):e.lineTo(t[n],s[n]):(e.beginPath(),e.moveTo(t[n],s[n]));e.closePath(),i.call(e)}_render(e,t,{sxs:s,sys:i}){for(const n of t){const t=s.get(n),r=i.get(n);this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,n),this._inner_loop(e,t,r,e.fill)),this.visuals.hatch.doit2(e,n,()=>this._inner_loop(e,t,r,e.fill),()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,n),this._inner_loop(e,t,r,e.stroke))}}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,r=[t,s,s,t],o=[i,i,n,n],[a,c]=this.renderer.xscale.r_invert(t,s),[h,d]=this.renderer.yscale.r_invert(i,n),y=this.index.indices({x0:a,x1:c,y0:h,y1:d}),p=[];for(const e of y){const t=this.sxs.get(e),s=this.sys.get(e);let i=!0;for(let e=0,n=t.length;e<n;e++){const n=t[e],a=s[e];if(!_.point_in_poly(n,a,r,o)){i=!1;break}}i&&p.push(e)}return new l.Selection({indices:p})}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),n=this.renderer.yscale.invert(s),r=this.index.indices({x0:i,y0:n,x1:i,y1:n}),o=[];for(const e of r){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;for(let a=0,c=0;;c++){if(isNaN(i[c])||c==r){const r=i.subarray(a,c),l=n.subarray(a,c);if(_.point_in_poly(t,s,r,l)){o.push(e);break}a=c+1}if(c==r)break}}return new l.Selection({indices:o})}_get_snap_coord(e){return o.sum(e)/e.length}scenterxy(e,t,s){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;let o=!1;for(let e=0,a=0;;a++){const c=isNaN(i[a]);if(o=o||c,a==r&&!o){return[this._get_snap_coord(i),this._get_snap_coord(n)]}if(c||a==r){const r=i.subarray(e,a),o=n.subarray(e,a);if(_.point_in_poly(t,s,r,o)){return[this._get_snap_coord(r),this._get_snap_coord(o)]}e=a+1}if(a==r)break}h.unreachable()}draw_legend_for_index(e,t,s){r.generic_area_legend(this.visuals,e,t,s)}}s.PatchesView=y,y.__name__=\"PatchesView\";class p extends n.Glyph{constructor(e){super(e)}static init_Patches(){this.prototype.default_view=y,this.define({xs:[c.XCoordinateSeqSpec,{field:\"xs\"}],ys:[c.YCoordinateSeqSpec,{field:\"ys\"}]}),this.mixins([a.LineVector,a.FillVector,a.HatchVector])}}s.Patches=p,p.__name__=\"Patches\",p.init_Patches()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=t(1),s=t(245),r=o.__importStar(t(18));class _ extends s.BoxView{scenterxy(t){return[(this.sleft[t]+this.sright[t])/2,(this.stop[t]+this.sbottom[t])/2]}_lrtb(t){return[this._left[t],this._right[t],this._top[t],this._bottom[t]]}}i.QuadView=_,_.__name__=\"QuadView\";class d extends s.Box{constructor(t){super(t)}static init_Quad(){this.prototype.default_view=_,this.define({right:[r.XCoordinateSpec,{field:\"right\"}],bottom:[r.YCoordinateSpec,{field:\"bottom\"}],left:[r.XCoordinateSpec,{field:\"left\"}],top:[r.YCoordinateSpec,{field:\"top\"}]})}}i.Quad=d,d.__name__=\"Quad\",d.init_Quad()},\n",
       "      function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=i(1),a=i(28),_=i(37),c=i(94),n=i(100),r=s.__importStar(i(18));function o(i,e,t){if(e==(i+t)/2)return[i,t];{const s=(i-e)/(i-2*e+t),a=i*(1-s)**2+2*e*(1-s)*s+t*s**2;return[Math.min(i,t,a),Math.max(i,t,a)]}}class d extends c.GlyphView{_project_data(){_.inplace.project_xy(this._x0,this._y0),_.inplace.project_xy(this._x1,this._y1)}_index_data(i){const{data_size:e}=this;for(let t=0;t<e;t++)if(isNaN(this._x0[t]+this._x1[t]+this._y0[t]+this._y1[t]+this._cx[t]+this._cy[t]))i.add_empty();else{const[e,s]=o(this._x0[t],this._cx[t],this._x1[t]),[a,_]=o(this._y0[t],this._cy[t],this._y1[t]);i.add(e,a,s,_)}}_render(i,e,{sx0:t,sy0:s,sx1:a,sy1:_,scx:c,scy:n}){if(this.visuals.line.doit)for(const r of e)isNaN(t[r]+s[r]+a[r]+_[r]+c[r]+n[r])||(i.beginPath(),i.moveTo(t[r],s[r]),i.quadraticCurveTo(c[r],n[r],a[r],_[r]),this.visuals.line.set_vectorize(i,r),i.stroke())}draw_legend_for_index(i,e,t){n.generic_line_legend(this.visuals,i,e,t)}scenterxy(){throw new Error(this+\".scenterxy() is not implemented\")}}t.QuadraticView=d,d.__name__=\"QuadraticView\";class h extends c.Glyph{constructor(i){super(i)}static init_Quadratic(){this.prototype.default_view=d,this.define({x0:[r.XCoordinateSpec,{field:\"x0\"}],y0:[r.YCoordinateSpec,{field:\"y0\"}],x1:[r.XCoordinateSpec,{field:\"x1\"}],y1:[r.YCoordinateSpec,{field:\"y1\"}],cx:[r.XCoordinateSpec,{field:\"cx\"}],cy:[r.YCoordinateSpec,{field:\"cy\"}]}),this.mixins(a.LineVector)}}t.Quadratic=h,h.__name__=\"Quadratic\",h.init_Quadratic()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(93),a=e(100),r=e(28),l=s.__importStar(e(18));class _ extends n.XYGlyphView{_map_data(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this._length):this.slength=this._length}_render(e,t,{sx:i,sy:s,slength:n,_angle:a}){if(this.visuals.line.doit){const r=2*(this.renderer.plot_view.frame.bbox.width+this.renderer.plot_view.frame.bbox.height);for(let e=0,t=n.length;e<t;e++)0==n[e]&&(n[e]=r);for(const r of t)isNaN(i[r]+s[r]+a[r]+n[r])||(e.translate(i[r],s[r]),e.rotate(a[r]),e.beginPath(),e.moveTo(0,0),e.lineTo(n[r],0),this.visuals.line.set_vectorize(e,r),e.stroke(),e.rotate(-a[r]),e.translate(-i[r],-s[r]))}}draw_legend_for_index(e,t,i){a.generic_line_legend(this.visuals,e,t,i)}}i.RayView=_,_.__name__=\"RayView\";class h extends n.XYGlyph{constructor(e){super(e)}static init_Ray(){this.prototype.default_view=_,this.mixins(r.LineVector),this.define({length:[l.DistanceSpec],angle:[l.AngleSpec]})}}i.Ray=h,h.__name__=\"Ray\",h.init_Ray()},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),h=t(241),r=t(100),a=t(24),n=i.__importStar(t(18)),_=t(12),o=t(88);class l extends h.CenterRotatableView{_set_data(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)}_map_data(){if(\"data\"==this.model.properties.width.units)[this.sw,this.sx0]=this._map_dist_corner_for_data_side_length(this._x,this._width,this.renderer.xscale);else{this.sw=this._width;const t=this.sx.length;this.sx0=new a.NumberArray(t);for(let s=0;s<t;s++)this.sx0[s]=this.sx[s]-this.sw[s]/2}if(\"data\"==this.model.properties.height.units)[this.sh,this.sy1]=this._map_dist_corner_for_data_side_length(this._y,this._height,this.renderer.yscale);else{this.sh=this._height;const t=this.sy.length;this.sy1=new a.NumberArray(t);for(let s=0;s<t;s++)this.sy1[s]=this.sy[s]-this.sh[s]/2}const t=this.sw.length;this.ssemi_diag=new a.NumberArray(t);for(let s=0;s<t;s++)this.ssemi_diag[s]=Math.sqrt(this.sw[s]/2*this.sw[s]/2+this.sh[s]/2*this.sh[s]/2)}_render(t,s,{sx:e,sy:i,sx0:h,sy1:r,sw:a,sh:n,_angle:_}){if(this.visuals.fill.doit)for(const o of s)isNaN(e[o]+i[o]+h[o]+r[o]+a[o]+n[o]+_[o])||(this.visuals.fill.set_vectorize(t,o),_[o]?(t.translate(e[o],i[o]),t.rotate(_[o]),t.fillRect(-a[o]/2,-n[o]/2,a[o],n[o]),t.rotate(-_[o]),t.translate(-e[o],-i[o])):t.fillRect(h[o],r[o],a[o],n[o]));if(this.visuals.line.doit){t.beginPath();for(const o of s)isNaN(e[o]+i[o]+h[o]+r[o]+a[o]+n[o]+_[o])||0!=a[o]&&0!=n[o]&&(_[o]?(t.translate(e[o],i[o]),t.rotate(_[o]),t.rect(-a[o]/2,-n[o]/2,a[o],n[o]),t.rotate(-_[o]),t.translate(-e[o],-i[o])):t.rect(h[o],r[o],a[o],n[o]),this.visuals.line.set_vectorize(t,o),t.stroke(),t.beginPath());t.stroke()}}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){let{sx:s,sy:e}=t;const i=this.renderer.xscale.invert(s),h=this.renderer.yscale.invert(e),r=this.sx0.length,n=new a.NumberArray(r);for(let t=0;t<r;t++)n[t]=this.sx0[t]+this.sw[t]/2;const l=new a.NumberArray(r);for(let t=0;t<r;t++)l[t]=this.sy1[t]+this.sh[t]/2;const d=_.max(this._ddist(0,n,this.ssemi_diag)),c=_.max(this._ddist(1,l,this.ssemi_diag)),x=i-d,m=i+d,y=h-c,w=h+c;let f,u;const g=[];for(const t of this.index.indices({x0:x,x1:m,y0:y,y1:w})){if(this._angle[t]){const i=Math.sin(-this._angle[t]),h=Math.cos(-this._angle[t]),r=h*(s-this.sx[t])-i*(e-this.sy[t])+this.sx[t],a=i*(s-this.sx[t])+h*(e-this.sy[t])+this.sy[t];s=r,e=a,f=Math.abs(this.sx[t]-s)<=this.sw[t]/2,u=Math.abs(this.sy[t]-e)<=this.sh[t]/2}else{const i=s-this.sx0[t],h=e-this.sy1[t];f=0<=i&&i<=this.sw[t],u=0<=h&&h<=this.sh[t]}f&&u&&g.push(t)}return new o.Selection({indices:g})}_map_dist_corner_for_data_side_length(t,s,e){const i=t.length,h=new a.NumberArray(i),r=new a.NumberArray(i);for(let e=0;e<i;e++)h[e]=t[e]-s[e]/2,r[e]=t[e]+s[e]/2;const n=e.v_compute(h),_=e.v_compute(r),o=this.sdist(e,h,s,\"edge\",this.model.dilate);let l=n;for(let t=0;t<i;t++){const s=n[t],e=_[t];if(!isNaN(s+e)&&s!=e){l=s<e?n:_;break}}return[o,l]}_ddist(t,s,e){const i=0==t?this.renderer.xscale:this.renderer.yscale,h=s,r=h.length,n=new a.NumberArray(r);for(let t=0;t<r;t++)n[t]=h[t]+e[t];const _=i.v_invert(h),o=i.v_invert(n),l=_.length,d=new a.NumberArray(l);for(let t=0;t<l;t++)d[t]=Math.abs(o[t]-_[t]);return d}draw_legend_for_index(t,s,e){r.generic_area_legend(this.visuals,t,s,e)}_bounds({x0:t,x1:s,y0:e,y1:i}){return{x0:t-this.max_w2,x1:s+this.max_w2,y0:e-this.max_h2,y1:i+this.max_h2}}}e.RectView=l,l.__name__=\"RectView\";class d extends h.CenterRotatable{constructor(t){super(t)}static init_Rect(){this.prototype.default_view=l,this.define({dilate:[n.Boolean,!1]})}}e.Rect=d,d.__name__=\"Rect\",d.init_Rect()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=i.__importStar(e(101)),r=i.__importStar(e(18)),_=e(28),h=e(37),a=e(94),o=e(100),c=e(88);class d extends a.GlyphView{_project_data(){h.inplace.project_xy(this._x0,this._y0),h.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._x0[n],r=this._x1[n],_=this._y0[n],h=this._y1[n];isNaN(i+r+_+h)?e.add_empty():e.add(t(i,r),t(_,h),s(i,r),s(_,h))}}_render(e,t,{sx0:s,sy0:i,sx1:n,sy1:r}){if(this.visuals.line.doit)for(const _ of t)isNaN(s[_]+i[_]+n[_]+r[_])||(e.beginPath(),e.moveTo(s[_],i[_]),e.lineTo(n[_],r[_]),this.visuals.line.set_vectorize(e,_),e.stroke())}_hit_point(e){const{sx:t,sy:s}=e,i={x:t,y:s},[r,_]=this.renderer.xscale.r_invert(t-2,t+2),[h,a]=this.renderer.yscale.r_invert(s-2,s+2),o=this.index.indices({x0:r,y0:h,x1:_,y1:a}),d=[];for(const e of o){const t=Math.max(2,this.visuals.line.cache_select(\"line_width\",e)/2)**2,s={x:this.sx0[e],y:this.sy0[e]},r={x:this.sx1[e],y:this.sy1[e]};n.dist_to_segment_squared(i,s,r)<t&&d.push(e)}return new c.Selection({indices:d})}_hit_span(e){const[t,s]=this.renderer.plot_view.frame.bbox.ranges,{sx:i,sy:n}=e;let r,_,h;\"v\"==e.direction?(h=this.renderer.yscale.invert(n),[r,_]=[this._y0,this._y1]):(h=this.renderer.xscale.invert(i),[r,_]=[this._x0,this._x1]);const a=[],[o,d]=this.renderer.xscale.r_invert(t.start,t.end),[x,l]=this.renderer.yscale.r_invert(s.start,s.end),y=this.index.indices({x0:o,y0:x,x1:d,y1:l});for(const t of y){(r[t]<=h&&h<=_[t]||_[t]<=h&&h<=r[t])&&a.push(t);const s=1.5+this.visuals.line.cache_select(\"line_width\",t)/2;r[t]==_[t]&&(\"h\"==e.direction?Math.abs(this.sx0[t]-i)<=s&&a.push(t):Math.abs(this.sy0[t]-n)<=s&&a.push(t))}return new c.Selection({indices:a})}scenterxy(e){return[(this.sx0[e]+this.sx1[e])/2,(this.sy0[e]+this.sy1[e])/2]}draw_legend_for_index(e,t,s){o.generic_line_legend(this.visuals,e,t,s)}}s.SegmentView=d,d.__name__=\"SegmentView\";class x extends a.Glyph{constructor(e){super(e)}static init_Segment(){this.prototype.default_view=d,this.define({x0:[r.XCoordinateSpec,{field:\"x0\"}],y0:[r.YCoordinateSpec,{field:\"y0\"}],x1:[r.XCoordinateSpec,{field:\"x1\"}],y1:[r.YCoordinateSpec,{field:\"y1\"}]}),this.mixins(_.LineVector)}}s.Segment=x,x.__name__=\"Segment\",x.init_Segment()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(93),o=e(100),r=e(28),l=n.__importStar(e(18));class a extends s.XYGlyphView{_render(e,t,{sx:i,sy:n}){let s=!1,o=null;this.visuals.line.set_value(e);const r=t.length;if(!(r<2)){e.beginPath(),e.moveTo(i[0],n[0]);for(const r of t){let t,l,a,_;switch(this.model.mode){case\"before\":[t,a]=[i[r-1],n[r]],[l,_]=[i[r],n[r]];break;case\"after\":[t,a]=[i[r],n[r-1]],[l,_]=[i[r],n[r]];break;case\"center\":{const e=(i[r-1]+i[r])/2;[t,a]=[e,n[r-1]],[l,_]=[e,n[r]];break}default:throw new Error(\"unexpected\")}if(s){if(!isFinite(i[r]+n[r])){e.stroke(),e.beginPath(),s=!1,o=r;continue}null!=o&&r-o>1&&(e.stroke(),s=!1)}s?(e.lineTo(t,a),e.lineTo(l,_)):(e.beginPath(),e.moveTo(i[r],n[r]),s=!0),o=r}e.lineTo(i[r-1],n[r-1]),e.stroke()}}draw_legend_for_index(e,t,i){o.generic_line_legend(this.visuals,e,t,i)}}i.StepView=a,a.__name__=\"StepView\";class _ extends s.XYGlyph{constructor(e){super(e)}static init_Step(){this.prototype.default_view=a,this.mixins(r.LineVector),this.define({mode:[l.StepMode,\"before\"]})}}i.Step=_,_.__name__=\"Step\",_.init_Step()},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),n=t(93),_=t(28),o=i.__importStar(t(101)),h=i.__importStar(t(18)),l=t(159),a=t(11),r=t(88);class c extends n.XYGlyphView{_rotate_point(t,s,e,i,n){return[(t-e)*Math.cos(n)-(s-i)*Math.sin(n)+e,(t-e)*Math.sin(n)+(s-i)*Math.cos(n)+i]}_text_bounds(t,s,e,i){return[[t,t+e,t+e,t,t],[s,s,s-i,s-i,s]]}_render(t,s,{sx:e,sy:i,_x_offset:n,_y_offset:_,_angle:o,_text:h}){this._sys=[],this._sxs=[];for(const a of s)if(this._sxs[a]=[],this._sys[a]=[],!isNaN(e[a]+i[a]+n[a]+_[a]+o[a])&&null!=h[a]&&this.visuals.text.doit){const s=\"\"+h[a];t.save(),t.translate(e[a]+n[a],i[a]+_[a]),t.rotate(o[a]),this.visuals.text.set_vectorize(t,a);const r=this.visuals.text.cache_select(\"font\",a),{height:c}=l.measure_font(r),x=this.visuals.text.text_line_height.value()*c;if(-1==s.indexOf(\"\\n\")){t.fillText(s,0,0);const o=e[a]+n[a],h=i[a]+_[a],l=t.measureText(s).width,[r,c]=this._text_bounds(o,h,l,x);this._sxs[a].push(r),this._sys[a].push(c)}else{const o=s.split(\"\\n\"),h=x*o.length,l=this.visuals.text.cache_select(\"text_baseline\",a);let r;switch(l){case\"top\":r=0;break;case\"middle\":r=-h/2+x/2;break;case\"bottom\":r=-h+x;break;default:r=0,console.warn(`'${l}' baseline not supported with multi line text`)}for(const s of o){t.fillText(s,0,r);const o=e[a]+n[a],h=r+i[a]+_[a],l=t.measureText(s).width,[c,u]=this._text_bounds(o,h,l,x);this._sxs[a].push(c),this._sys[a].push(u),r+=x}}t.restore()}}_hit_point(t){const{sx:s,sy:e}=t,i=[];for(let t=0;t<this._sxs.length;t++){const n=this._sxs[t],_=this._sys[t],h=n.length;for(let l=0,a=h;l<a;l++){const[a,r]=this._rotate_point(s,e,n[h-1][0],_[h-1][0],-this._angle[t]);o.point_in_poly(a,r,n[l],_[l])&&i.push(t)}}return new r.Selection({indices:i})}scenterxy(t){const s=this._sxs[t],e=this._sys[t];a.assert(0!=s.length&&0!=e.length);const i=s[0][0],n=e[0][0],_=(s[0][2]+i)/2,o=(e[0][2]+n)/2,[h,l]=this._rotate_point(_,o,i,n,this._angle[t]);return[h,l]}}e.TextView=c,c.__name__=\"TextView\";class x extends n.XYGlyph{constructor(t){super(t)}static init_Text(){this.prototype.default_view=c,this.mixins(_.TextVector),this.define({text:[h.NullStringSpec,{field:\"text\"}],angle:[h.AngleSpec,0],x_offset:[h.NumberSpec,0],y_offset:[h.NumberSpec,0]})}}e.Text=x,x.__name__=\"Text\",x.init_Text()},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),r=t(245),h=t(24),o=i.__importStar(t(18));class _ extends r.BoxView{scenterxy(t){return[this.sx[t],(this.stop[t]+this.sbottom[t])/2]}_lrtb(t){return[this._x[t]-this._width[t]/2,this._x[t]+this._width[t]/2,Math.max(this._top[t],this._bottom[t]),Math.min(this._top[t],this._bottom[t])]}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"),this.stop=this.renderer.yscale.v_compute(this._top),this.sbottom=this.renderer.yscale.v_compute(this._bottom);const t=this.sx.length;this.sleft=new h.NumberArray(t),this.sright=new h.NumberArray(t);for(let s=0;s<t;s++)this.sleft[s]=this.sx[s]-this.sw[s]/2,this.sright[s]=this.sx[s]+this.sw[s]/2;this._clamp_viewport()}}e.VBarView=_,_.__name__=\"VBarView\";class a extends r.Box{constructor(t){super(t)}static init_VBar(){this.prototype.default_view=_,this.define({x:[o.XCoordinateSpec,{field:\"x\"}],bottom:[o.YCoordinateSpec,{value:0}],width:[o.NumberSpec,{value:1}],top:[o.YCoordinateSpec,{field:\"top\"}]})}}e.VBar=a,a.__name__=\"VBar\",a.init_VBar()},\n",
       "      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1),r=e(93),n=e(100),a=e(28),d=i.__importStar(e(18)),l=e(10),o=e(88);class _ extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius}_render(e,s,{sx:t,sy:i,sradius:r,_start_angle:n,_end_angle:a}){const d=this.model.properties.direction.value();for(const l of s)isNaN(t[l]+i[l]+r[l]+n[l]+a[l])||(e.beginPath(),e.arc(t[l],i[l],r[l],n[l],a[l],d),e.lineTo(t[l],i[l]),e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,l),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,l),e.stroke()))}_hit_point(e){let s,t,i,r,n,a,d,_,c;const{sx:h,sy:u}=e,p=this.renderer.xscale.invert(h),g=this.renderer.yscale.invert(u),x=2*this.max_radius;\"data\"===this.model.properties.radius.units?(a=p-x,d=p+x,_=g-x,c=g+x):(t=h-x,i=h+x,[a,d]=this.renderer.xscale.r_invert(t,i),r=u-x,n=u+x,[_,c]=this.renderer.yscale.r_invert(r,n));const v=[];for(const e of this.index.indices({x0:a,x1:d,y0:_,y1:c})){const a=this.sradius[e]**2;[t,i]=this.renderer.xscale.r_compute(p,this._x[e]),[r,n]=this.renderer.yscale.r_compute(g,this._y[e]),s=(t-i)**2+(r-n)**2,s<=a&&v.push(e)}const y=this.model.properties.direction.value(),f=[];for(const e of v){const s=Math.atan2(u-this.sy[e],h-this.sx[e]);l.angle_between(-s,-this._start_angle[e],-this._end_angle[e],y)&&f.push(e)}return new o.Selection({indices:f})}draw_legend_for_index(e,s,t){n.generic_area_legend(this.visuals,e,s,t)}scenterxy(e){const s=this.sradius[e]/2,t=(this._start_angle[e]+this._end_angle[e])/2;return[this.sx[e]+s*Math.cos(t),this.sy[e]+s*Math.sin(t)]}}t.WedgeView=_,_.__name__=\"WedgeView\";class c extends r.XYGlyph{constructor(e){super(e)}static init_Wedge(){this.prototype.default_view=_,this.mixins([a.LineVector,a.FillVector]),this.define({direction:[d.Direction,\"anticlock\"],radius:[d.DistanceSpec],start_angle:[d.AngleSpec],end_angle:[d.AngleSpec]})}}t.Wedge=c,c.__name__=\"Wedge\",c.init_Wedge()},\n",
       "      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});const r=e(1);r.__exportStar(e(117),_),r.__exportStar(e(266),_),r.__exportStar(e(267),_)},\n",
       "      function _(e,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});const t=e(81);class n extends t.Model{constructor(e){super(e)}}r.LayoutProvider=n,n.__name__=\"LayoutProvider\"},\n",
       "      function _(t,a,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(1),o=t(266),n=t(24),s=r.__importStar(t(18));class u extends o.LayoutProvider{constructor(t){super(t)}static init_StaticLayoutProvider(){this.define({graph_layout:[s.Any,{}]})}get_node_coordinates(t){const a=t.data.index,e=a.length,r=new n.NumberArray(e),o=new n.NumberArray(e);for(let t=0;t<e;t++){const e=this.graph_layout[a[t]],[n,s]=null!=e?e:[NaN,NaN];r[t]=n,o[t]=s}return[r,o]}get_edge_coordinates(t){const a=t.data.start,e=t.data.end,r=a.length,o=[],n=[],s=null!=t.data.xs&&null!=t.data.ys;for(let u=0;u<r;u++){const r=null!=this.graph_layout[a[u]]&&null!=this.graph_layout[e[u]];if(s&&r)o.push(t.data.xs[u]),n.push(t.data.ys[u]);else{let t,s;r?(t=this.graph_layout[a[u]],s=this.graph_layout[e[u]]):(t=[NaN,NaN],s=[NaN,NaN]),o.push([t[0],s[0]]),n.push([t[1],s[1]])}}return[o,n]}}e.StaticLayoutProvider=u,u.__name__=\"StaticLayoutProvider\",u.init_StaticLayoutProvider()},\n",
       "      function _(e,r,d){Object.defineProperty(d,\"__esModule\",{value:!0});var i=e(269);d.Grid=i.Grid},\n",
       "      function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=i(1),n=i(178),r=s.__importStar(i(28)),o=s.__importStar(i(18)),d=i(8);class _ extends n.GuideRendererView{_render(){const i=this.layer.ctx;i.save(),this._draw_regions(i),this._draw_minor_grids(i),this._draw_grids(i),i.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.request_render())}_draw_regions(i){if(!this.visuals.band_fill.doit&&!this.visuals.band_hatch.doit)return;this.visuals.band_fill.set_value(i);const[e,t]=this.grid_coords(\"major\",!1);for(let s=0;s<e.length-1;s++){if(s%2!=1)continue;const[n,r]=this.coordinates.map_to_screen(e[s],t[s]),[o,d]=this.coordinates.map_to_screen(e[s+1],t[s+1]);this.visuals.band_fill.doit&&i.fillRect(n[0],r[0],o[1]-n[0],d[1]-r[0]),this.visuals.band_hatch.doit2(i,s,()=>{i.fillRect(n[0],r[0],o[1]-n[0],d[1]-r[0])},()=>this.request_render())}}_draw_grids(i){if(!this.visuals.grid_line.doit)return;const[e,t]=this.grid_coords(\"major\");this._draw_grid_helper(i,this.visuals.grid_line,e,t)}_draw_minor_grids(i){if(!this.visuals.minor_grid_line.doit)return;const[e,t]=this.grid_coords(\"minor\");this._draw_grid_helper(i,this.visuals.minor_grid_line,e,t)}_draw_grid_helper(i,e,t,s){e.set_value(i),i.beginPath();for(let e=0;e<t.length;e++){const[n,r]=this.coordinates.map_to_screen(t[e],s[e]);i.moveTo(Math.round(n[0]),Math.round(r[0]));for(let e=1;e<n.length;e++)i.lineTo(Math.round(n[e]),Math.round(r[e]))}i.stroke()}ranges(){const i=this.model.dimension,e=(i+1)%2,{ranges:t}=this.coordinates;return[t[i],t[e]]}computed_bounds(){const[i]=this.ranges(),e=this.model.bounds,t=[i.min,i.max];let s,n;if(d.isArray(e))s=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]),s<t[0]&&(s=t[0]),n>t[1]&&(n=t[1]);else{[s,n]=t;for(const i of this.plot_view.axis_views)i.dimension==this.model.dimension&&i.model.x_range_name==this.model.x_range_name&&i.model.y_range_name==this.model.y_range_name&&([s,n]=i.computed_bounds)}return[s,n]}grid_coords(i,e=!0){const t=this.model.dimension,s=(t+1)%2,[n,r]=this.ranges();let[o,d]=this.computed_bounds();[o,d]=[Math.min(o,d),Math.max(o,d)];const _=[[],[]],a=this.model.get_ticker();if(null==a)return _;const l=a.get_ticks(o,d,n,r.min,{})[i],h=n.min,c=n.max,u=r.min,m=r.max;e||(l[0]!=h&&l.splice(0,0,h),l[l.length-1]!=c&&l.push(c));for(let i=0;i<l.length;i++){if((l[i]==h||l[i]==c)&&e)continue;const n=[],r=[],o=2;for(let e=0;e<o;e++){const t=u+(m-u)/(o-1)*e;n.push(l[i]),r.push(t)}_[t].push(n),_[s].push(r)}return _}}t.GridView=_,_.__name__=\"GridView\";class a extends n.GuideRenderer{constructor(i){super(i)}static init_Grid(){this.prototype.default_view=_,this.mixins([[\"grid_\",r.Line],[\"minor_grid_\",r.Line],[\"band_\",r.Fill],[\"band_\",r.Hatch]]),this.define({bounds:[o.Any,\"auto\"],dimension:[o.Any,0],axis:[o.Instance],ticker:[o.Instance]}),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})}get_ticker(){return null!=this.ticker?this.ticker:null!=this.axis?this.axis.ticker:null}}t.Grid=a,a.__name__=\"Grid\",a.init_Grid()},\n",
       "      function _(a,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});var e=a(271);r.Box=e.Box;var v=a(274);r.Column=v.Column;var x=a(275);r.GridBox=x.GridBox;var B=a(276);r.HTMLBox=B.HTMLBox;var n=a(272);r.LayoutDOM=n.LayoutDOM;var t=a(277);r.Row=t.Row;var u=a(278);r.Spacer=u.Spacer;var d=a(279);r.Panel=d.Panel,r.Tabs=d.Tabs;var i=a(286);r.WidgetBox=i.WidgetBox},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(272),o=n.__importStar(e(18));class c extends s.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,()=>this.rebuild())}get child_models(){return this.model.children}}i.BoxView=c,c.__name__=\"BoxView\";class r extends s.LayoutDOM{constructor(e){super(e)}static init_Box(){this.define({children:[o.Array,[]],spacing:[o.Number,0]})}}i.Box=r,r.__name__=\"Box\",r.init_Box()},\n",
       "      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const s=i(81),o=i(20),l=i(72),n=i(19),h=i(8),a=i(115),r=i(78),_=i(212),d=i(273),c=i(77);class u extends r.DOMView{constructor(){super(...arguments),this._idle_notified=!1,this._offset_parent=null,this._viewport={}}initialize(){super.initialize(),this.el.style.position=this.is_root?\"relative\":\"absolute\",this._child_views=new Map}async lazy_initialize(){await this.build_child_views()}remove(){for(const i of this.child_views)i.remove();this._child_views.clear(),super.remove()}connect_signals(){super.connect_signals(),this.is_root&&(this._on_resize=()=>this.resize_layout(),window.addEventListener(\"resize\",this._on_resize),this._parent_observer=setInterval(()=>{const i=this.el.offsetParent;this._offset_parent!=i&&(this._offset_parent=i,null!=i&&(this.compute_viewport(),this.invalidate_layout()))},250));const i=this.model.properties;this.on_change([i.width,i.height,i.min_width,i.min_height,i.max_width,i.max_height,i.margin,i.width_policy,i.height_policy,i.sizing_mode,i.aspect_ratio,i.visible],()=>this.invalidate_layout()),this.on_change([i.background,i.css_classes],()=>this.invalidate_render())}disconnect_signals(){null!=this._parent_observer&&clearTimeout(this._parent_observer),null!=this._on_resize&&window.removeEventListener(\"resize\",this._on_resize),super.disconnect_signals()}css_classes(){return super.css_classes().concat(this.model.css_classes)}get child_views(){return this.child_models.map(i=>this._child_views.get(i))}async build_child_views(){await a.build_views(this._child_views,this.child_models,{parent:this})}render(){super.render(),l.empty(this.el);const{background:i}=this.model;this.el.style.backgroundColor=null!=i?i:\"\",l.classes(this.el).clear().add(...this.css_classes());for(const i of this.child_views)this.el.appendChild(i.el),i.render()}update_layout(){for(const i of this.child_views)i.update_layout();this._update_layout()}update_position(){this.el.style.display=this.model.visible?\"block\":\"none\";const i=this.is_root?this.layout.sizing.margin:void 0;l.position(this.el,this.layout.bbox,i);for(const i of this.child_views)i.update_position()}after_layout(){for(const i of this.child_views)i.after_layout();this._has_finished=!0}compute_viewport(){this._viewport=this._viewport_size()}renderTo(i){i.appendChild(this.el),this._offset_parent=this.el.offsetParent,this.compute_viewport(),this.build()}build(){return this.assert_root(),this.render(),this.update_layout(),this.compute_layout(),this}async rebuild(){await this.build_child_views(),this.invalidate_render()}compute_layout(){const i=Date.now();this.layout.compute(this._viewport),this.update_position(),this.after_layout(),n.logger.debug(`layout computed in ${Date.now()-i} ms`),this.notify_finished()}resize_layout(){this.root.compute_viewport(),this.root.compute_layout()}invalidate_layout(){this.root.update_layout(),this.root.compute_layout()}invalidate_render(){this.render(),this.invalidate_layout()}has_finished(){if(!super.has_finished())return!1;for(const i of this.child_views)if(!i.has_finished())return!1;return!0}notify_finished(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):this.root.notify_finished()}_width_policy(){return null!=this.model.width?\"fixed\":\"fit\"}_height_policy(){return null!=this.model.height?\"fixed\":\"fit\"}box_sizing(){let{width_policy:i,height_policy:t,aspect_ratio:e}=this.model;\"auto\"==i&&(i=this._width_policy()),\"auto\"==t&&(t=this._height_policy());const{sizing_mode:s}=this.model;if(null!=s)if(\"fixed\"==s)i=t=\"fixed\";else if(\"stretch_both\"==s)i=t=\"max\";else if(\"stretch_width\"==s)i=\"max\";else if(\"stretch_height\"==s)t=\"max\";else switch(null==e&&(e=\"auto\"),s){case\"scale_width\":i=\"max\",t=\"min\";break;case\"scale_height\":i=\"min\",t=\"max\";break;case\"scale_both\":i=\"max\",t=\"max\"}const o={width_policy:i,height_policy:t},{min_width:l,min_height:n}=this.model;null!=l&&(o.min_width=l),null!=n&&(o.min_height=n);const{width:a,height:r}=this.model;null!=a&&(o.width=a),null!=r&&(o.height=r);const{max_width:_,max_height:d}=this.model;null!=_&&(o.max_width=_),null!=d&&(o.max_height=d),\"auto\"==e&&null!=a&&null!=r?o.aspect=a/r:h.isNumber(e)&&(o.aspect=e);const{margin:c}=this.model;if(null!=c)if(h.isNumber(c))o.margin={top:c,right:c,bottom:c,left:c};else if(2==c.length){const[i,t]=c;o.margin={top:i,right:t,bottom:i,left:t}}else{const[i,t,e,s]=c;o.margin={top:i,right:t,bottom:e,left:s}}o.visible=this.model.visible;const{align:u}=this.model;return h.isArray(u)?[o.halign,o.valign]=u:o.halign=o.valign=u,o}_viewport_size(){return l.undisplayed(this.el,()=>{let i=this.el;for(;i=i.parentElement;){if(i.classList.contains(d.bk_root))continue;if(i==document.body){const{margin:{left:i,right:t,top:e,bottom:s}}=l.extents(document.body);return{width:Math.ceil(document.documentElement.clientWidth-i-t),height:Math.ceil(document.documentElement.clientHeight-e-s)}}const{padding:{left:t,right:e,top:s,bottom:o}}=l.extents(i),{width:n,height:h}=i.getBoundingClientRect(),a=Math.ceil(n-t-e),r=Math.ceil(h-s-o);if(a>0||r>0)return{width:a>0?a:void 0,height:r>0?r:void 0}}return{}})}export(i,t=!0){const e=\"png\"==i?\"canvas\":\"svg\",s=new c.CanvasLayer(e,t),{width:o,height:l}=this.layout.bbox;s.resize(o,l);for(const e of this.child_views){const o=e.export(i,t),{x:l,y:n}=e.layout.bbox;s.ctx.drawImage(o.canvas,l,n)}return s}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box,children:this.child_views.map(i=>i.serializable_state())})}}e.LayoutDOMView=u,u.__name__=\"LayoutDOMView\";class m extends s.Model{constructor(i){super(i)}static init_LayoutDOM(){this.define(i=>{const{Boolean:t,Number:e,String:s,Null:l,Auto:n,Color:h,Array:a,Tuple:r,Or:d}=i,c=r(e,e),u=r(e,e,e,e);return{width:[d(e,l),null],height:[d(e,l),null],min_width:[d(e,l),null],min_height:[d(e,l),null],max_width:[d(e,l),null],max_height:[d(e,l),null],margin:[d(e,c,u),[0,0,0,0]],width_policy:[d(_.SizingPolicy,n),\"auto\"],height_policy:[d(_.SizingPolicy,n),\"auto\"],aspect_ratio:[d(e,n,l),null],sizing_mode:[d(o.SizingMode,l),null],visible:[t,!0],disabled:[t,!1],align:[d(o.Align,r(o.Align,o.Align)),\"start\"],background:[d(h,l),null],css_classes:[a(s),[]]}})}}e.LayoutDOM=m,m.__name__=\"LayoutDOM\",m.init_LayoutDOM()},\n",
       "      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.bk_root=\"bk-root\"},\n",
       "      function _(t,o,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),e=t(271),n=t(216),l=s.__importStar(t(18));class u extends e.BoxView{_update_layout(){const t=this.child_views.map(t=>t.layout);this.layout=new n.Column(t),this.layout.rows=this.model.rows,this.layout.spacing=[this.model.spacing,0],this.layout.set_sizing(this.box_sizing())}}i.ColumnView=u,u.__name__=\"ColumnView\";class _ extends e.Box{constructor(t){super(t)}static init_Column(){this.prototype.default_view=u,this.define({rows:[l.Any,\"auto\"]})}}i.Column=_,_.__name__=\"Column\",_.init_Column()},\n",
       "      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=t(1),e=t(272),n=t(216),l=o.__importStar(t(18));class r extends e.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,()=>this.rebuild())}get child_models(){return this.model.children.map(([t])=>t)}_update_layout(){this.layout=new n.Grid,this.layout.rows=this.model.rows,this.layout.cols=this.model.cols,this.layout.spacing=this.model.spacing;for(const[t,i,s,o,e]of this.model.children){const n=this._child_views.get(t);this.layout.items.push({layout:n.layout,row:i,col:s,row_span:o,col_span:e})}this.layout.set_sizing(this.box_sizing())}}s.GridBoxView=r,r.__name__=\"GridBoxView\";class a extends e.LayoutDOM{constructor(t){super(t)}static init_GridBox(){this.prototype.default_view=r,this.define({children:[l.Array,[]],rows:[l.Any,\"auto\"],cols:[l.Any,\"auto\"],spacing:[l.Any,0]})}}s.GridBox=a,a.__name__=\"GridBox\",a.init_GridBox()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(272),_=e(212);class n extends s.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new _.ContentBox(this.el),this.layout.set_sizing(this.box_sizing())}}o.HTMLBoxView=n,n.__name__=\"HTMLBoxView\";class i extends s.LayoutDOM{constructor(e){super(e)}}o.HTMLBox=i,i.__name__=\"HTMLBox\"},\n",
       "      function _(t,o,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),e=t(271),_=t(216),a=s.__importStar(t(18));class n extends e.BoxView{_update_layout(){const t=this.child_views.map(t=>t.layout);this.layout=new _.Row(t),this.layout.cols=this.model.cols,this.layout.spacing=[0,this.model.spacing],this.layout.set_sizing(this.box_sizing())}}i.RowView=n,n.__name__=\"RowView\";class l extends e.Box{constructor(t){super(t)}static init_Row(){this.prototype.default_view=n,this.define({cols:[a.Any,\"auto\"]})}}i.Row=l,l.__name__=\"Row\",l.init_Row()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(272),s=e(212);class _ extends i.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new s.LayoutItem,this.layout.set_sizing(this.box_sizing())}}a.SpacerView=_,_.__name__=\"SpacerView\";class o extends i.LayoutDOM{constructor(e){super(e)}static init_Spacer(){this.prototype.default_view=_}}a.Spacer=o,o.__name__=\"Spacer\",o.init_Spacer()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),a=e(212),l=e(72),h=e(9),o=i.__importStar(e(18)),c=e(272),d=e(81),r=e(173),n=e(280),_=e(281),b=e(282),p=i.__importDefault(e(283)),u=i.__importDefault(e(284)),m=i.__importDefault(e(285));class v extends c.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.tabs.change,()=>this.rebuild()),this.connect(this.model.properties.active.change,()=>this.on_active_change())}styles(){return[...super.styles(),p.default,u.default,m.default]}get child_models(){return this.model.tabs.map(e=>e.child)}_update_layout(){const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,{scroll_el:s,headers_el:i}=this;this.header=new class extends a.ContentBox{_measure(e){const a=l.size(s),o=l.children(i).slice(0,3).map(e=>l.size(e)),{width:c,height:d}=super._measure(e);if(t){const t=a.width+h.sum(o.map(e=>e.width));return{width:e.width!=1/0?e.width:t,height:d}}{const t=a.height+h.sum(o.map(e=>e.height));return{width:c,height:e.height!=1/0?e.height:t}}}}(this.header_el),t?this.header.set_sizing({width_policy:\"fit\",height_policy:\"fixed\"}):this.header.set_sizing({width_policy:\"fixed\",height_policy:\"fit\"});let o=1,c=1;switch(e){case\"above\":o-=1;break;case\"below\":o+=1;break;case\"left\":c-=1;break;case\"right\":c+=1}const d={layout:this.header,row:o,col:c},r=this.child_views.map(e=>({layout:e.layout,row:1,col:1}));this.layout=new a.Grid([d,...r]),this.layout.set_sizing(this.box_sizing())}update_position(){super.update_position(),this.header_el.style.position=\"absolute\",l.position(this.header_el,this.header.bbox);const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,s=l.size(this.scroll_el),i=l.scroll_size(this.headers_el);if(t){const{width:e}=this.header.bbox;i.width>e?(this.wrapper_el.style.maxWidth=e-s.width+\"px\",l.display(this.scroll_el)):(this.wrapper_el.style.maxWidth=\"\",l.undisplay(this.scroll_el))}else{const{height:e}=this.header.bbox;i.height>e?(this.wrapper_el.style.maxHeight=e-s.height+\"px\",l.display(this.scroll_el)):(this.wrapper_el.style.maxHeight=\"\",l.undisplay(this.scroll_el))}const{child_views:a}=this;for(const e of a)l.hide(e.el);const h=a[this.model.active];null!=h&&l.show(h.el)}render(){super.render();const{active:e}=this.model,t=this.model.tabs_location,s=\"above\"==t||\"below\"==t,i=this.model.tabs.map((t,s)=>{const i=l.div({class:[n.bk_tab,s==e?r.bk_active:null]},t.title);if(i.addEventListener(\"click\",e=>{e.target==e.currentTarget&&this.change_active(s)}),t.closable){const e=l.div({class:n.bk_close});e.addEventListener(\"click\",e=>{if(e.target==e.currentTarget){this.model.tabs=h.remove_at(this.model.tabs,s);const e=this.model.tabs.length;this.model.active>e-1&&(this.model.active=e-1)}}),i.appendChild(e)}return i});this.headers_el=l.div({class:[n.bk_headers]},i),this.wrapper_el=l.div({class:n.bk_headers_wrapper},this.headers_el);const a=l.div({class:[_.bk_btn,_.bk_btn_default],disabled:\"\"},l.div({class:[b.bk_caret,r.bk_left]})),o=l.div({class:[_.bk_btn,_.bk_btn_default]},l.div({class:[b.bk_caret,r.bk_right]}));let c=0;const d=e=>()=>{const t=this.model.tabs.length;c=\"left\"==e?Math.max(c-1,0):Math.min(c+1,t-1),0==c?a.setAttribute(\"disabled\",\"\"):a.removeAttribute(\"disabled\"),c==t-1?o.setAttribute(\"disabled\",\"\"):o.removeAttribute(\"disabled\");const i=l.children(this.headers_el).slice(0,c).map(e=>e.getBoundingClientRect());if(s){const e=-h.sum(i.map(e=>e.width));this.headers_el.style.left=e+\"px\"}else{const e=-h.sum(i.map(e=>e.height));this.headers_el.style.top=e+\"px\"}};a.addEventListener(\"click\",d(\"left\")),o.addEventListener(\"click\",d(\"right\")),this.scroll_el=l.div({class:_.bk_btn_group},a,o),this.header_el=l.div({class:[n.bk_tabs_header,r.bk_side(t)]},this.scroll_el,this.wrapper_el),this.el.appendChild(this.header_el)}change_active(e){e!=this.model.active&&(this.model.active=e)}on_active_change(){const e=this.model.active,t=l.children(this.headers_el);for(const e of t)e.classList.remove(r.bk_active);t[e].classList.add(r.bk_active);const{child_views:s}=this;for(const e of s)l.hide(e.el);l.show(s[e].el)}}s.TabsView=v,v.__name__=\"TabsView\";class g extends c.LayoutDOM{constructor(e){super(e)}static init_Tabs(){this.prototype.default_view=v,this.define({tabs:[o.Array,[]],tabs_location:[o.Location,\"above\"],active:[o.Number,0]})}}s.Tabs=g,g.__name__=\"Tabs\",g.init_Tabs();class w extends d.Model{constructor(e){super(e)}static init_Panel(){this.define({title:[o.String,\"\"],child:[o.Instance],closable:[o.Boolean,!1]})}}s.Panel=w,w.__name__=\"Panel\",w.init_Panel()},\n",
       "      function _(e,b,a){Object.defineProperty(a,\"__esModule\",{value:!0}),a.bk_tabs_header=\"bk-tabs-header\",a.bk_headers_wrapper=\"bk-headers-wrapper\",a.bk_headers=\"bk-headers\",a.bk_tab=\"bk-tab\",a.bk_close=\"bk-close\"},\n",
       "      function _(n,b,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.bk_btn=\"bk-btn\",t.bk_btn_group=\"bk-btn-group\",t.bk_btn_default=\"bk-btn-default\",t.bk_btn_primary=\"bk-btn-primary\",t.bk_btn_success=\"bk-btn-success\",t.bk_btn_warning=\"bk-btn-warning\",t.bk_btn_danger=\"bk-btn-danger\",t.bk_btn_type=function(n){switch(n){case\"default\":return t.bk_btn_default;case\"primary\":return t.bk_btn_primary;case\"success\":return t.bk_btn_success;case\"warning\":return t.bk_btn_warning;case\"danger\":return t.bk_btn_danger}},t.bk_dropdown_toggle=\"bk-dropdown-toggle\"},\n",
       "      function _(e,b,d){Object.defineProperty(d,\"__esModule\",{value:!0}),d.bk_menu=\"bk-menu\",d.bk_caret=\"bk-caret\",d.bk_divider=\"bk-divider\"},\n",
       "      function _(n,o,b){Object.defineProperty(b,\"__esModule\",{value:!0});b.default=\"\\n.bk-root .bk-btn {\\n  height: 100%;\\n  display: inline-block;\\n  text-align: center;\\n  vertical-align: middle;\\n  white-space: nowrap;\\n  cursor: pointer;\\n  padding: 6px 12px;\\n  font-size: 12px;\\n  border: 1px solid transparent;\\n  border-radius: 4px;\\n  outline: 0;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n}\\n.bk-root .bk-btn:hover,\\n.bk-root .bk-btn:focus {\\n  text-decoration: none;\\n}\\n.bk-root .bk-btn:active,\\n.bk-root .bk-btn.bk-active {\\n  background-image: none;\\n  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n}\\n.bk-root .bk-btn[disabled] {\\n  cursor: not-allowed;\\n  pointer-events: none;\\n  opacity: 0.65;\\n  box-shadow: none;\\n}\\n.bk-root .bk-btn-default {\\n  color: #333;\\n  background-color: #fff;\\n  border-color: #ccc;\\n}\\n.bk-root .bk-btn-default:hover {\\n  background-color: #f5f5f5;\\n  border-color: #b8b8b8;\\n}\\n.bk-root .bk-btn-default.bk-active {\\n  background-color: #ebebeb;\\n  border-color: #adadad;\\n}\\n.bk-root .bk-btn-default[disabled],\\n.bk-root .bk-btn-default[disabled]:hover,\\n.bk-root .bk-btn-default[disabled]:focus,\\n.bk-root .bk-btn-default[disabled]:active,\\n.bk-root .bk-btn-default[disabled].bk-active {\\n  background-color: #e6e6e6;\\n  border-color: #ccc;\\n}\\n.bk-root .bk-btn-primary {\\n  color: #fff;\\n  background-color: #428bca;\\n  border-color: #357ebd;\\n}\\n.bk-root .bk-btn-primary:hover {\\n  background-color: #3681c1;\\n  border-color: #2c699e;\\n}\\n.bk-root .bk-btn-primary.bk-active {\\n  background-color: #3276b1;\\n  border-color: #285e8e;\\n}\\n.bk-root .bk-btn-primary[disabled],\\n.bk-root .bk-btn-primary[disabled]:hover,\\n.bk-root .bk-btn-primary[disabled]:focus,\\n.bk-root .bk-btn-primary[disabled]:active,\\n.bk-root .bk-btn-primary[disabled].bk-active {\\n  background-color: #506f89;\\n  border-color: #357ebd;\\n}\\n.bk-root .bk-btn-success {\\n  color: #fff;\\n  background-color: #5cb85c;\\n  border-color: #4cae4c;\\n}\\n.bk-root .bk-btn-success:hover {\\n  background-color: #4eb24e;\\n  border-color: #409240;\\n}\\n.bk-root .bk-btn-success.bk-active {\\n  background-color: #47a447;\\n  border-color: #398439;\\n}\\n.bk-root .bk-btn-success[disabled],\\n.bk-root .bk-btn-success[disabled]:hover,\\n.bk-root .bk-btn-success[disabled]:focus,\\n.bk-root .bk-btn-success[disabled]:active,\\n.bk-root .bk-btn-success[disabled].bk-active {\\n  background-color: #667b66;\\n  border-color: #4cae4c;\\n}\\n.bk-root .bk-btn-warning {\\n  color: #fff;\\n  background-color: #f0ad4e;\\n  border-color: #eea236;\\n}\\n.bk-root .bk-btn-warning:hover {\\n  background-color: #eea43b;\\n  border-color: #e89014;\\n}\\n.bk-root .bk-btn-warning.bk-active {\\n  background-color: #ed9c28;\\n  border-color: #d58512;\\n}\\n.bk-root .bk-btn-warning[disabled],\\n.bk-root .bk-btn-warning[disabled]:hover,\\n.bk-root .bk-btn-warning[disabled]:focus,\\n.bk-root .bk-btn-warning[disabled]:active,\\n.bk-root .bk-btn-warning[disabled].bk-active {\\n  background-color: #c89143;\\n  border-color: #eea236;\\n}\\n.bk-root .bk-btn-danger {\\n  color: #fff;\\n  background-color: #d9534f;\\n  border-color: #d43f3a;\\n}\\n.bk-root .bk-btn-danger:hover {\\n  background-color: #d5433e;\\n  border-color: #bd2d29;\\n}\\n.bk-root .bk-btn-danger.bk-active {\\n  background-color: #d2322d;\\n  border-color: #ac2925;\\n}\\n.bk-root .bk-btn-danger[disabled],\\n.bk-root .bk-btn-danger[disabled]:hover,\\n.bk-root .bk-btn-danger[disabled]:focus,\\n.bk-root .bk-btn-danger[disabled]:active,\\n.bk-root .bk-btn-danger[disabled].bk-active {\\n  background-color: #a55350;\\n  border-color: #d43f3a;\\n}\\n.bk-root .bk-btn-group {\\n  height: 100%;\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-btn-group > .bk-btn {\\n  flex-grow: 1;\\n  -webkit-flex-grow: 1;\\n}\\n.bk-root .bk-btn-group > .bk-btn + .bk-btn {\\n  margin-left: -1px;\\n}\\n.bk-root .bk-btn-group > .bk-btn:first-child:not(:last-child) {\\n  border-bottom-right-radius: 0;\\n  border-top-right-radius: 0;\\n}\\n.bk-root .bk-btn-group > .bk-btn:not(:first-child):last-child {\\n  border-bottom-left-radius: 0;\\n  border-top-left-radius: 0;\\n}\\n.bk-root .bk-btn-group > .bk-btn:not(:first-child):not(:last-child) {\\n  border-radius: 0;\\n}\\n.bk-root .bk-btn-group .bk-dropdown-toggle {\\n  flex: 0 0 0;\\n  -webkit-flex: 0 0 0;\\n  padding: 6px 6px;\\n}\\n\"},\n",
       "      function _(n,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});r.default=\"\\n.bk-root .bk-menu-icon {\\n  width: 28px;\\n  height: 28px;\\n  background-size: 60%;\\n  background-color: transparent;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n}\\n.bk-root .bk-context-menu {\\n  position: absolute;\\n  display: inline-flex;\\n  display: -webkit-inline-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n  width: auto;\\n  height: auto;\\n  z-index: 100;\\n  cursor: pointer;\\n  font-size: 12px;\\n  background-color: #fff;\\n  border: 1px solid #ccc;\\n  border-radius: 4px;\\n  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\\n}\\n.bk-root .bk-context-menu.bk-horizontal {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-context-menu.bk-vertical {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-context-menu > .bk-divider {\\n  cursor: default;\\n  overflow: hidden;\\n  background-color: #e5e5e5;\\n}\\n.bk-root .bk-context-menu.bk-horizontal > .bk-divider {\\n  width: 1px;\\n  margin: 5px 0;\\n}\\n.bk-root .bk-context-menu.bk-vertical > .bk-divider {\\n  height: 1px;\\n  margin: 0 5px;\\n}\\n.bk-root .bk-context-menu > :not(.bk-divider) {\\n  border: 1px solid transparent;\\n}\\n.bk-root .bk-context-menu > :not(.bk-divider).bk-active {\\n  border-color: #26aae1;\\n}\\n.bk-root .bk-context-menu > :not(.bk-divider):hover {\\n  background-color: #f9f9f9;\\n}\\n.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):first-child {\\n  border-top-left-radius: 4px;\\n  border-bottom-left-radius: 4px;\\n}\\n.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):last-child {\\n  border-top-right-radius: 4px;\\n  border-bottom-right-radius: 4px;\\n}\\n.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):first-child {\\n  border-top-left-radius: 4px;\\n  border-top-right-radius: 4px;\\n}\\n.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):last-child {\\n  border-bottom-left-radius: 4px;\\n  border-bottom-right-radius: 4px;\\n}\\n.bk-root .bk-menu {\\n  position: absolute;\\n  left: 0;\\n  width: 100%;\\n  z-index: 100;\\n  cursor: pointer;\\n  font-size: 12px;\\n  background-color: #fff;\\n  border: 1px solid #ccc;\\n  border-radius: 4px;\\n  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\\n}\\n.bk-root .bk-menu.bk-above {\\n  bottom: 100%;\\n}\\n.bk-root .bk-menu.bk-below {\\n  top: 100%;\\n}\\n.bk-root .bk-menu > .bk-divider {\\n  height: 1px;\\n  margin: 7.5px 0;\\n  overflow: hidden;\\n  background-color: #e5e5e5;\\n}\\n.bk-root .bk-menu > :not(.bk-divider) {\\n  padding: 6px 12px;\\n}\\n.bk-root .bk-menu > :not(.bk-divider):hover,\\n.bk-root .bk-menu > :not(.bk-divider).bk-active {\\n  background-color: #e6e6e6;\\n}\\n.bk-root .bk-caret {\\n  display: inline-block;\\n  vertical-align: middle;\\n  width: 0;\\n  height: 0;\\n  margin: 0 5px;\\n}\\n.bk-root .bk-caret.bk-down {\\n  border-top: 4px solid;\\n}\\n.bk-root .bk-caret.bk-up {\\n  border-bottom: 4px solid;\\n}\\n.bk-root .bk-caret.bk-down,\\n.bk-root .bk-caret.bk-up {\\n  border-right: 4px solid transparent;\\n  border-left: 4px solid transparent;\\n}\\n.bk-root .bk-caret.bk-left {\\n  border-right: 4px solid;\\n}\\n.bk-root .bk-caret.bk-right {\\n  border-left: 4px solid;\\n}\\n.bk-root .bk-caret.bk-left,\\n.bk-root .bk-caret.bk-right {\\n  border-top: 4px solid transparent;\\n  border-bottom: 4px solid transparent;\\n}\\n\"},\n",
       "      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});n.default='\\n.bk-root .bk-tabs-header {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n  overflow: hidden;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n}\\n.bk-root .bk-tabs-header .bk-btn-group {\\n  height: auto;\\n  margin-right: 5px;\\n}\\n.bk-root .bk-tabs-header .bk-btn-group > .bk-btn {\\n  flex-grow: 0;\\n  -webkit-flex-grow: 0;\\n  height: auto;\\n  padding: 4px 4px;\\n}\\n.bk-root .bk-tabs-header .bk-headers-wrapper {\\n  flex-grow: 1;\\n  -webkit-flex-grow: 1;\\n  overflow: hidden;\\n  color: #666666;\\n}\\n.bk-root .bk-tabs-header.bk-above .bk-headers-wrapper {\\n  border-bottom: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-right .bk-headers-wrapper {\\n  border-left: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-below .bk-headers-wrapper {\\n  border-top: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-left .bk-headers-wrapper {\\n  border-right: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-above,\\n.bk-root .bk-tabs-header.bk-below {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-tabs-header.bk-above .bk-headers,\\n.bk-root .bk-tabs-header.bk-below .bk-headers {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-tabs-header.bk-left,\\n.bk-root .bk-tabs-header.bk-right {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-tabs-header.bk-left .bk-headers,\\n.bk-root .bk-tabs-header.bk-right .bk-headers {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-tabs-header .bk-headers {\\n  position: relative;\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n}\\n.bk-root .bk-tabs-header .bk-tab {\\n  padding: 4px 8px;\\n  border: solid transparent;\\n  white-space: nowrap;\\n  cursor: pointer;\\n}\\n.bk-root .bk-tabs-header .bk-tab:hover {\\n  background-color: #f2f2f2;\\n}\\n.bk-root .bk-tabs-header .bk-tab.bk-active {\\n  color: #4d4d4d;\\n  background-color: white;\\n  border-color: #e6e6e6;\\n}\\n.bk-root .bk-tabs-header .bk-tab .bk-close {\\n  margin-left: 10px;\\n}\\n.bk-root .bk-tabs-header.bk-above .bk-tab {\\n  border-width: 3px 1px 0px 1px;\\n  border-radius: 4px 4px 0 0;\\n}\\n.bk-root .bk-tabs-header.bk-right .bk-tab {\\n  border-width: 1px 3px 1px 0px;\\n  border-radius: 0 4px 4px 0;\\n}\\n.bk-root .bk-tabs-header.bk-below .bk-tab {\\n  border-width: 0px 1px 3px 1px;\\n  border-radius: 0 0 4px 4px;\\n}\\n.bk-root .bk-tabs-header.bk-left .bk-tab {\\n  border-width: 1px 0px 1px 3px;\\n  border-radius: 4px 0 0 4px;\\n}\\n.bk-root .bk-close {\\n  display: inline-block;\\n  width: 10px;\\n  height: 10px;\\n  vertical-align: middle;\\n  background-image: url(\\'data:image/svg+xml;utf8,      <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">        <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"gray\" stroke-width=\"2\"/>        <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"gray\" stroke-width=\"2\"/>      </svg>\\');\\n}\\n.bk-root .bk-close:hover {\\n  background-image: url(\\'data:image/svg+xml;utf8,      <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">        <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"red\" stroke-width=\"2\"/>        <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"red\" stroke-width=\"2\"/>      </svg>\\');\\n}\\n'},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=e(274);class _ extends o.ColumnView{}i.WidgetBoxView=_,_.__name__=\"WidgetBoxView\";class n extends o.Column{constructor(e){super(e)}static init_WidgetBox(){this.prototype.default_view=_}}i.WidgetBox=n,n.__name__=\"WidgetBox\",n.init_WidgetBox()},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});e(1).__exportStar(e(288),t);var a=e(289);t.Marker=a.Marker;var _=e(290);t.Scatter=_.Scatter},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=e(1),r=e(289),n=i.__importStar(e(238)),s=Math.sqrt(3);function c(e,t){e.rotate(Math.PI/4),a(e,t),e.rotate(-Math.PI/4)}function l(e,t){const o=t*s,i=o/3;e.moveTo(-o/2,-i),e.lineTo(0,0),e.lineTo(o/2,-i),e.lineTo(0,0),e.lineTo(0,t)}function a(e,t){e.moveTo(0,t),e.lineTo(0,-t),e.moveTo(-t,0),e.lineTo(t,0)}function u(e,t){e.moveTo(0,t),e.lineTo(t/1.5,0),e.lineTo(0,-t),e.lineTo(-t/1.5,0),e.closePath()}function d(e,t){const o=t*s,i=o/3;e.moveTo(-t,i),e.lineTo(t,i),e.lineTo(0,i-o),e.closePath()}function v(e,t,o,i,r){a(e,o),c(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function _(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function f(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),a(e,o),e.stroke())}function T(e,t,o,i,r){_(e,t,o,i,r),P(e,t,o,i,r)}function z(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),l(e,o),e.stroke())}function C(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),c(e,o),e.stroke())}function k(e,t,o,i,r){a(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function m(e,t,o,i,r){u(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function h(e,t,o,i,r){u(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.moveTo(0,o),e.lineTo(0,-o),e.moveTo(-o/1.5,0),e.lineTo(o/1.5,0),e.stroke())}function q(e,t,o,i,r){m(e,t,o,i,r),P(e,t,o,i,r)}function P(e,t,o,i,r){!function(e,t){e.beginPath(),e.arc(0,0,t/4,0,2*Math.PI,!1),e.closePath()}(e,o),i.set_vectorize(e,t),e.fillStyle=e.strokeStyle,e.fill()}function D(e,t,o,i,r){!function(e,t){const o=t/2,i=s*o;e.moveTo(t,0),e.lineTo(o,-i),e.lineTo(-o,-i),e.lineTo(-t,0),e.lineTo(-o,i),e.lineTo(o,i),e.closePath()}(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function g(e,t,o,i,r){D(e,t,o,i,r),P(e,t,o,i)}function S(e,t,o,i,r){e.rotate(Math.PI),d(e,o),e.rotate(-Math.PI),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function G(e,t,o,i,r){const n=3*o/8,s=[n,n,o,o,n,n,-n,-n,-o,-o,-n,-n],c=[o,n,n,-n,-n,-o,-o,-n,-n,n,n,o];for(e.moveTo(s[0],c[0]),t=1;t<12;t++)e.lineTo(s[t],c[t]);e.closePath(),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function L(e,t,o,i,r){const n=2*o;e.rect(-o,-o,n,n),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function M(e,t,o,i,r){const n=3*o/8;e.moveTo(-o,-o),e.quadraticCurveTo(0,-n,o,-o),e.quadraticCurveTo(n,0,o,o),e.quadraticCurveTo(0,n,-o,o),e.quadraticCurveTo(-n,0,-o,-o),e.closePath(),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function p(e,t,o,i,r){const n=2*o;e.rect(-o,-o,n,n),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),a(e,o),e.stroke())}function x(e,t,o,i,r){L(e,t,o,i,r),P(e,t,o,i)}function I(e,t,o,i,r){const n=2*o;e.rect(-o,-o,n,n),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.moveTo(-o,o),e.lineTo(o,-o),e.moveTo(-o,-o),e.lineTo(o,o),e.stroke())}function y(e,t,o,i,r){d(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function X(e,t,o,i,r){y(e,t,o,i,r),P(e,t,o,i)}function H(e,t,o,i,r){const n=o*s,c=n/3,l=3*c/8;e.moveTo(-o,c),e.quadraticCurveTo(0,l,o,c),e.quadraticCurveTo(s*l/2,l/2,0,c-n),e.quadraticCurveTo(-s*l/2,l/2,-o,c),e.closePath(),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function Y(e,t,o,i,r){!function(e,t){e.moveTo(-t,0),e.lineTo(t,0)}(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function A(e,t,o,i,r){c(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function b(e,t,o,i,r){l(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function w(e,t,o){var i;const n=class extends r.MarkerView{static initClass(){this.prototype._render_one=t,this.prototype.glglyph_cls=o}};n.initClass();const s=((i=class extends r.Marker{static initClass(){this.prototype.default_view=n}}).__name__=e,i);return s.initClass(),s}o.Asterisk=w(\"Asterisk\",v,n.AsteriskGL),o.CircleCross=w(\"CircleCross\",f,n.CircleCrossGL),o.CircleDot=w(\"CircleDot\",T),o.CircleY=w(\"CircleY\",z),o.CircleX=w(\"CircleX\",C,n.CircleXGL),o.Cross=w(\"Cross\",k,n.CrossGL),o.Dash=w(\"Dash\",Y),o.Diamond=w(\"Diamond\",m,n.DiamondGL),o.DiamondCross=w(\"DiamondCross\",h,n.DiamondCrossGL),o.DiamondDot=w(\"DiamondDot\",q),o.Dot=w(\"Dot\",P),o.Hex=w(\"Hex\",D,n.HexGL),o.HexDot=w(\"HexDot\",g),o.InvertedTriangle=w(\"InvertedTriangle\",S,n.InvertedTriangleGL),o.Plus=w(\"Plus\",G),o.Square=w(\"Square\",L,n.SquareGL),o.SquareCross=w(\"SquareCross\",p,n.SquareCrossGL),o.SquareDot=w(\"SquareDot\",x),o.SquarePin=w(\"SquarePin\",M),o.SquareX=w(\"SquareX\",I,n.SquareXGL),o.Triangle=w(\"Triangle\",y,n.TriangleGL),o.TriangleDot=w(\"TriangleDot\",X),o.TrianglePin=w(\"TrianglePin\",H),o.X=w(\"X\",A,n.XGL),o.Y=w(\"Y\",b),o.marker_funcs={asterisk:v,circle:_,circle_cross:f,circle_dot:T,circle_y:z,circle_x:C,cross:k,diamond:m,diamond_dot:q,diamond_cross:h,dot:P,hex:D,hex_dot:g,inverted_triangle:S,plus:G,square:L,square_cross:p,square_dot:x,square_pin:M,square_x:I,triangle:y,triangle_dot:X,triangle_pin:H,dash:Y,x:A,y:b}},\n",
       "      function _(e,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const t=e(1),n=e(93),r=e(28),a=t.__importStar(e(101)),_=t.__importStar(e(18)),h=e(9),l=e(88);class c extends n.XYGlyphView{initialize(){super.initialize();const{webgl:e}=this.renderer.plot_view.canvas_view;null!=e&&null!=this.glglyph_cls&&(this.glglyph=new this.glglyph_cls(e.gl,this))}_render(e,s,{sx:i,sy:t,_size:n,_angle:r}){for(const a of s){if(isNaN(i[a]+t[a]+n[a]+r[a]))continue;const s=n[a]/2;e.beginPath(),e.translate(i[a],t[a]),r[a]&&e.rotate(r[a]),this._render_one(e,a,s,this.visuals.line,this.visuals.fill),r[a]&&e.rotate(-r[a]),e.translate(-i[a],-t[a])}}_mask_data(){const e=this.renderer.plot_view.frame.bbox.h_range,s=e.start-this.max_size,i=e.end+this.max_size,[t,n]=this.renderer.xscale.r_invert(s,i),r=this.renderer.plot_view.frame.bbox.v_range,a=r.start-this.max_size,_=r.end+this.max_size,[h,l]=this.renderer.yscale.r_invert(a,_);return this.index.indices({x0:t,x1:n,y0:h,y1:l})}_hit_point(e){const{sx:s,sy:i}=e,t=s-this.max_size,n=s+this.max_size,[r,a]=this.renderer.xscale.r_invert(t,n),_=i-this.max_size,h=i+this.max_size,[c,o]=this.renderer.yscale.r_invert(_,h),x=this.index.indices({x0:r,x1:a,y0:c,y1:o}),d=[];for(const e of x){const t=this._size[e]/2;Math.abs(this.sx[e]-s)<=t&&Math.abs(this.sy[e]-i)<=t&&d.push(e)}return new l.Selection({indices:d})}_hit_span(e){const{sx:s,sy:i}=e,t=this.bounds(),n=this.max_size/2;let r,a,_,h;if(\"h\"==e.direction){_=t.y0,h=t.y1;const e=s-n,i=s+n;[r,a]=this.renderer.xscale.r_invert(e,i)}else{r=t.x0,a=t.x1;const e=i-n,s=i+n;[_,h]=this.renderer.yscale.r_invert(e,s)}const c=[...this.index.indices({x0:r,x1:a,y0:_,y1:h})];return new l.Selection({indices:c})}_hit_rect(e){const{sx0:s,sx1:i,sy0:t,sy1:n}=e,[r,a]=this.renderer.xscale.r_invert(s,i),[_,h]=this.renderer.yscale.r_invert(t,n),c=[...this.index.indices({x0:r,x1:a,y0:_,y1:h})];return new l.Selection({indices:c})}_hit_poly(e){const{sx:s,sy:i}=e,t=h.range(0,this.sx.length),n=[];for(let e=0,r=t.length;e<r;e++){const r=t[e];a.point_in_poly(this.sx[e],this.sy[e],s,i)&&n.push(r)}return new l.Selection({indices:n})}_get_legend_args({x0:e,x1:s,y0:i,y1:t},n){const r=n+1,a=new Array(r);a[n]=(e+s)/2;const _=new Array(r);_[n]=(i+t)/2;const h=new Array(r);h[n]=.4*Math.min(Math.abs(s-e),Math.abs(t-i));const l=new Array(r);return l[n]=0,{sx:a,sy:_,_size:h,_angle:l}}draw_legend_for_index(e,{x0:s,x1:i,y0:t,y1:n},r){const a=this._get_legend_args({x0:s,x1:i,y0:t,y1:n},r);this._render(e,[r],a)}}i.MarkerView=c,c.__name__=\"MarkerView\";class o extends n.XYGlyph{constructor(e){super(e)}static init_Marker(){this.mixins([r.LineVector,r.FillVector]),this.define({size:[_.DistanceSpec,{units:\"screen\",value:4}],angle:[_.AngleSpec,0]})}}i.Marker=o,o.__name__=\"Marker\",o.init_Marker()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=e(1),s=e(289),i=e(288),n=a.__importStar(e(18));class _ extends s.MarkerView{_render(e,t,{sx:r,sy:a,_size:s,_angle:n,_marker:_}){for(const c of t){if(isNaN(r[c]+a[c]+s[c]+n[c])||null==_[c])continue;const t=s[c]/2;e.beginPath(),e.translate(r[c],a[c]),n[c]&&e.rotate(n[c]),i.marker_funcs[_[c]](e,c,t,this.visuals.line,this.visuals.fill),n[c]&&e.rotate(-n[c]),e.translate(-r[c],-a[c])}}draw_legend_for_index(e,{x0:t,x1:r,y0:a,y1:s},i){const n=this._get_legend_args({x0:t,x1:r,y0:a,y1:s},i),_=new Array(i+1);_[i]=this._marker[i],n._marker=_,this._render(e,[i],n)}}r.ScatterView=_,_.__name__=\"ScatterView\";class c extends s.Marker{constructor(e){super(e)}static init_Scatter(){this.prototype.default_view=_,this.define({marker:[n.MarkerSpec,{value:\"circle\"}]})}}r.Scatter=c,c.__name__=\"Scatter\",c.init_Scatter()},\n",
       "      function _(a,o,p){Object.defineProperty(p,\"__esModule\",{value:!0});var t=a(292);p.MapOptions=t.MapOptions;var e=a(292);p.GMapOptions=e.GMapOptions;var n=a(292);p.GMapPlot=n.GMapPlot;var M=a(293);p.Plot=M.Plot},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=t(1),n=t(19),a=t(293),s=o.__importStar(t(18)),p=t(81),r=t(158),_=t(319);i.GMapPlotView=_.GMapPlotView;class l extends p.Model{constructor(t){super(t)}static init_MapOptions(){this.define({lat:[s.Number],lng:[s.Number],zoom:[s.Number,12]})}}i.MapOptions=l,l.__name__=\"MapOptions\",l.init_MapOptions();class c extends l{constructor(t){super(t)}static init_GMapOptions(){this.define({map_type:[s.String,\"roadmap\"],scale_control:[s.Boolean,!1],styles:[s.String],tilt:[s.Int,45]})}}i.GMapOptions=c,c.__name__=\"GMapOptions\",c.init_GMapOptions();class u extends a.Plot{constructor(t){super(t)}static init_GMapPlot(){this.prototype.default_view=_.GMapPlotView,this.define({map_options:[s.Instance],api_key:[s.String]}),this.override({x_range:()=>new r.Range1d,y_range:()=>new r.Range1d})}initialize(){super.initialize(),this.use_map=!0,this.api_key||n.logger.error(\"api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.\")}}i.GMapPlot=u,u.__name__=\"GMapPlot\",u.init_GMapPlot()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1),o=i.__importStar(e(28)),n=i.__importStar(e(18)),s=e(15),a=e(9),l=e(13),_=e(8),h=e(272),c=e(169),u=e(145),d=e(294),b=e(85),g=e(90),p=e(210),m=e(312);r.PlotView=m.PlotView;class f extends h.LayoutDOM{constructor(e){super(e)}static init_Plot(){this.prototype.default_view=m.PlotView,this.mixins([[\"outline_\",o.Line],[\"background_\",o.Fill],[\"border_\",o.Fill]]),this.define({toolbar:[n.Instance,()=>new d.Toolbar],toolbar_location:[n.Location,\"right\"],toolbar_sticky:[n.Boolean,!0],plot_width:[n.Number,600],plot_height:[n.Number,600],frame_width:[n.Number,null],frame_height:[n.Number,null],title:[n.Any,()=>new c.Title({text:\"\"})],title_location:[n.Location,\"above\"],above:[n.Array,[]],below:[n.Array,[]],left:[n.Array,[]],right:[n.Array,[]],center:[n.Array,[]],renderers:[n.Array,[]],x_range:[n.Instance,()=>new p.DataRange1d],extra_x_ranges:[n.Any,{}],y_range:[n.Instance,()=>new p.DataRange1d],extra_y_ranges:[n.Any,{}],x_scale:[n.Instance,()=>new u.LinearScale],y_scale:[n.Instance,()=>new u.LinearScale],lod_factor:[n.Number,10],lod_interval:[n.Number,300],lod_threshold:[n.Number,2e3],lod_timeout:[n.Number,500],hidpi:[n.Boolean,!0],output_backend:[n.OutputBackend,\"canvas\"],min_border:[n.Number,5],min_border_top:[n.Number,null],min_border_left:[n.Number,null],min_border_bottom:[n.Number,null],min_border_right:[n.Number,null],inner_width:[n.Number],inner_height:[n.Number],outer_width:[n.Number],outer_height:[n.Number],match_aspect:[n.Boolean,!1],aspect_scale:[n.Number,1],reset_policy:[n.ResetPolicy,\"standard\"]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"})}get width(){const e=this.properties.width.get_value();return null!=e?e:this.plot_width}set width(e){this.setv({width:e,plot_width:e})}get height(){const e=this.properties.height.get_value();return null!=e?e:this.plot_height}set height(e){this.setv({height:e,plot_height:e})}_doc_attached(){super._doc_attached(),this._push_changes([[this.properties.inner_height,null,this.inner_height],[this.properties.inner_width,null,this.inner_width]])}initialize(){super.initialize(),this.reset=new s.Signal0(this,\"reset\");for(const e of l.values(this.extra_x_ranges).concat(this.x_range)){let t=e.plots;_.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}for(const e of l.values(this.extra_y_ranges).concat(this.y_range)){let t=e.plots;_.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}}add_layout(e,t=\"center\"){const r=this.properties[t].get_value();this.setv({[t]:[...r,e]})}remove_layout(e){const t=t=>{a.remove_by(t,t=>t==e)};t(this.left),t(this.right),t(this.above),t(this.below),t(this.center)}add_renderers(...e){this.renderers=this.renderers.concat(e)}add_glyph(e,t=new b.ColumnDataSource,r={}){const i=Object.assign(Object.assign({},r),{data_source:t,glyph:e}),o=new g.GlyphRenderer(i);return this.add_renderers(o),o}add_tools(...e){this.toolbar.tools=this.toolbar.tools.concat(e)}get panels(){return[...this.side_panels,...this.center]}get side_panels(){const{above:e,below:t,left:r,right:i}=this;return a.concat([e,t,r,i])}}r.Plot=f,f.__name__=\"Plot\",f.init_Plot()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1).__importStar(t(18)),c=t(8),o=t(9),n=t(13),a=t(295),l=t(305),r=t=>{switch(t){case\"tap\":return\"active_tap\";case\"pan\":return\"active_drag\";case\"pinch\":case\"scroll\":return\"active_scroll\";case\"multi\":return\"active_multi\"}return null},_=t=>\"tap\"==t||\"pan\"==t;class h extends l.ToolbarBase{constructor(t){super(t)}static init_Toolbar(){this.prototype.default_view=l.ToolbarBaseView,this.define({active_drag:[s.Any,\"auto\"],active_inspect:[s.Any,\"auto\"],active_scroll:[s.Any,\"auto\"],active_tap:[s.Any,\"auto\"],active_multi:[s.Any,null]})}connect_signals(){super.connect_signals();const{tools:t,active_drag:e,active_inspect:i,active_scroll:s,active_tap:c,active_multi:o}=this.properties;this.on_change([t,e,i,s,c,o],()=>this._init_tools())}_init_tools(){if(super._init_tools(),\"auto\"==this.active_inspect);else if(this.active_inspect instanceof a.InspectTool){let t=!1;for(const e of this.inspectors)e!=this.active_inspect?e.active=!1:t=!0;t||(this.active_inspect=null)}else if(c.isArray(this.active_inspect)){const t=o.intersection(this.active_inspect,this.inspectors);t.length!=this.active_inspect.length&&(this.active_inspect=t);for(const t of this.inspectors)o.includes(this.active_inspect,t)||(t.active=!1)}else if(null==this.active_inspect)for(const t of this.inspectors)t.active=!1;const t=t=>{t.active?this._active_change(t):t.active=!0};for(const t of n.values(this.gestures)){t.tools=o.sort_by(t.tools,t=>t.default_order);for(const e of t.tools)this.connect(e.properties.active.change,()=>this._active_change(e))}for(const[e,i]of n.entries(this.gestures)){const s=r(e);if(s){const c=this[s];\"auto\"==c?0!=i.tools.length&&_(e)&&t(i.tools[0]):null!=c&&(o.includes(this.tools,c)?t(c):this[s]=null)}}}}i.Toolbar=h,h.__name__=\"Toolbar\",h.init_Toolbar()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const n=e(1),s=e(296),i=e(304),_=n.__importStar(e(18));class c extends s.ButtonToolView{}o.InspectToolView=c,c.__name__=\"InspectToolView\";class l extends s.ButtonTool{constructor(e){super(e),this.event_type=\"move\"}static init_InspectTool(){this.prototype.button_view=i.OnOffButtonView,this.define({toggleable:[_.Boolean,!0]}),this.override({active:!0})}}o.InspectTool=l,l.__name__=\"InspectTool\",l.init_InspectTool()},\n",
       "      function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=t(1),s=i.__importDefault(t(297)),n=t(78),l=t(298),r=t(72),a=i.__importStar(t(18)),u=t(29),_=t(8),h=t(9),c=t(299),m=i.__importDefault(t(300)),d=i.__importDefault(t(301)),p=i.__importDefault(t(284)),f=t(302);class g extends n.DOMView{initialize(){super.initialize();const t=this.model.menu;if(null!=t){const e=this.parent.model.toolbar_location,o=\"left\"==e||\"above\"==e,i=this.parent.model.horizontal?\"vertical\":\"horizontal\";this._menu=new f.ContextMenu(o?h.reversed(t):t,{orientation:i,prevent_hide:t=>t.target==this.el})}this._hammer=new s.default(this.el,{touchAction:\"auto\",inputClass:s.default.TouchMouseInput}),this.connect(this.model.change,()=>this.render()),this._hammer.on(\"tap\",t=>{var e;(null===(e=this._menu)||void 0===e?void 0:e.is_open)?this._menu.hide():t.target==this.el&&this._clicked()}),this._hammer.on(\"press\",()=>this._pressed())}remove(){var t;this._hammer.destroy(),null===(t=this._menu)||void 0===t||t.remove(),super.remove()}styles(){return[...super.styles(),m.default,d.default,p.default]}css_classes(){return super.css_classes().concat(c.bk_toolbar_button)}render(){r.empty(this.el);const t=this.model.computed_icon;_.isString(t)&&(u.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip,null!=this._menu&&this.root.el.appendChild(this._menu.el)}_pressed(){var t;const{left:e,top:o,right:i,bottom:s}=this.el.getBoundingClientRect(),n=(()=>{switch(this.parent.model.toolbar_location){case\"right\":return{right:e,top:o};case\"left\":return{left:i,top:o};case\"above\":return{left:e,top:s};case\"below\":return{left:e,bottom:o}}})();null===(t=this._menu)||void 0===t||t.toggle(n)}}o.ButtonToolButtonView=g,g.__name__=\"ButtonToolButtonView\";class v extends l.ToolView{}o.ButtonToolView=v,v.__name__=\"ButtonToolView\";class b extends l.Tool{constructor(t){super(t)}static init_ButtonTool(){this.internal({disabled:[a.Boolean,!1]})}get tooltip(){return this.tool_name}get computed_icon(){return this.icon}get menu(){return null}}o.ButtonTool=b,b.__name__=\"ButtonTool\",b.init_ButtonTool()},\n",
       "      function _(t,e,n){\n",
       "      /*! Hammer.JS - v2.0.7 - 2016-04-22\n",
       "           * http://hammerjs.github.io/\n",
       "           *\n",
       "           * Copyright (c) 2016 Jorik Tangelder;\n",
       "           * Licensed under the MIT license */\n",
       "      !function(t,n,i,r){\"use strict\";var s,o=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],a=n.createElement(\"div\"),h=Math.round,u=Math.abs,c=Date.now;function l(t,e,n){return setTimeout(y(t,n),e)}function p(t,e,n){return!!Array.isArray(t)&&(f(t,n[e],n),!0)}function f(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(void 0!==t.length)for(i=0;i<t.length;)e.call(n,t[i],i,t),i++;else for(i in t)t.hasOwnProperty(i)&&e.call(n,t[i],i,t)}function v(e,n,i){var r=\"DEPRECATED METHOD: \"+n+\"\\n\"+i+\" AT \\n\";return function(){var n=new Error(\"get-stack-trace\"),i=n&&n.stack?n.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",s=t.console&&(t.console.warn||t.console.log);return s&&s.call(t.console,r,i),e.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(null==t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var e=Object(t),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)i.hasOwnProperty(r)&&(e[r]=i[r])}return e}:Object.assign;var d=v((function(t,e,n){for(var i=Object.keys(e),r=0;r<i.length;)(!n||n&&void 0===t[i[r]])&&(t[i[r]]=e[i[r]]),r++;return t}),\"extend\",\"Use `assign`.\"),m=v((function(t,e){return d(t,e,!0)}),\"merge\",\"Use `assign`.\");function g(t,e,n){var i,r=e.prototype;(i=t.prototype=Object.create(r)).constructor=t,i._super=r,n&&s(i,n)}function y(t,e){return function(){return t.apply(e,arguments)}}function T(t,e){return\"function\"==typeof t?t.apply(e&&e[0]||void 0,e):t}function E(t,e){return void 0===t?e:t}function I(t,e,n){f(S(e),(function(e){t.addEventListener(e,n,!1)}))}function A(t,e,n){f(S(e),(function(e){t.removeEventListener(e,n,!1)}))}function _(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function C(t,e){return t.indexOf(e)>-1}function S(t){return t.trim().split(/\\s+/g)}function b(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;i<t.length;){if(n&&t[i][n]==e||!n&&t[i]===e)return i;i++}return-1}function x(t){return Array.prototype.slice.call(t,0)}function P(t,e,n){for(var i=[],r=[],s=0;s<t.length;){var o=e?t[s][e]:t[s];b(r,o)<0&&i.push(t[s]),r[s]=o,s++}return n&&(i=e?i.sort((function(t,n){return t[e]>n[e]})):i.sort()),i}function D(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s<o.length;){if((i=(n=o[s])?n+r:e)in t)return i;s++}}var w=1;function O(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var R=\"ontouchstart\"in t,M=void 0!==D(t,\"PointerEvent\"),z=R&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),N=[\"x\",\"y\"],X=[\"clientX\",\"clientY\"];function Y(t,e){var n=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){T(t.options.enable,[t])&&n.handler(e)},this.init()}function F(t,e,n){var i=n.pointers.length,r=n.changedPointers.length,s=1&e&&i-r==0,o=12&e&&i-r==0;n.isFirst=!!s,n.isFinal=!!o,s&&(t.session={}),n.eventType=e,function(t,e){var n=t.session,i=e.pointers,r=i.length;n.firstInput||(n.firstInput=W(e));r>1&&!n.firstMultiple?n.firstMultiple=W(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,a=o?o.center:s.center,h=e.center=q(i);e.timeStamp=c(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=U(a,h),e.distance=L(a,h),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};1!==e.eventType&&4!==s.eventType||(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y});e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=H(e.deltaX,e.deltaY);var l=k(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=u(l.x)>u(l.y)?l.x:l.y,e.scale=o?(p=o.pointers,f=i,L(f[0],f[1],X)/L(p[0],p[1],X)):1,e.rotation=o?function(t,e){return U(e[1],e[0],X)+U(t[1],t[0],X)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,a=e.timeStamp-o.timeStamp;if(8!=e.eventType&&(a>25||void 0===o.velocity)){var h=e.deltaX-o.deltaX,c=e.deltaY-o.deltaY,l=k(a,h,c);i=l.x,r=l.y,n=u(l.x)>u(l.y)?l.x:l.y,s=H(h,c),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var p,f;var v=t.element;_(e.srcEvent.target,v)&&(v=e.srcEvent.target);e.target=v}(t,n),t.emit(\"hammer.input\",n),t.recognize(n),t.session.prevInput=n}function W(t){for(var e=[],n=0;n<t.pointers.length;)e[n]={clientX:h(t.pointers[n].clientX),clientY:h(t.pointers[n].clientY)},n++;return{timeStamp:c(),pointers:e,center:q(e),deltaX:t.deltaX,deltaY:t.deltaY}}function q(t){var e=t.length;if(1===e)return{x:h(t[0].clientX),y:h(t[0].clientY)};for(var n=0,i=0,r=0;r<e;)n+=t[r].clientX,i+=t[r].clientY,r++;return{x:h(n/e),y:h(i/e)}}function k(t,e,n){return{x:e/t||0,y:n/t||0}}function H(t,e){return t===e?1:u(t)>=u(e)?t<0?2:4:e<0?8:16}function L(t,e,n){n||(n=N);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function U(t,e,n){n||(n=N);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return 180*Math.atan2(r,i)/Math.PI}Y.prototype={handler:function(){},init:function(){this.evEl&&I(this.element,this.evEl,this.domHandler),this.evTarget&&I(this.target,this.evTarget,this.domHandler),this.evWin&&I(O(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&A(this.element,this.evEl,this.domHandler),this.evTarget&&A(this.target,this.evTarget,this.domHandler),this.evWin&&A(O(this.element),this.evWin,this.domHandler)}};var V={mousedown:1,mousemove:2,mouseup:4};function j(){this.evEl=\"mousedown\",this.evWin=\"mousemove mouseup\",this.pressed=!1,Y.apply(this,arguments)}g(j,Y,{handler:function(t){var e=V[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var G={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Z={2:\"touch\",3:\"pen\",4:\"mouse\",5:\"kinect\"},B=\"pointerdown\",$=\"pointermove pointerup pointercancel\";function J(){this.evEl=B,this.evWin=$,Y.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(B=\"MSPointerDown\",$=\"MSPointerMove MSPointerUp MSPointerCancel\"),g(J,Y,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace(\"ms\",\"\"),r=G[i],s=Z[t.pointerType]||t.pointerType,o=\"touch\"==s,a=b(e,t.pointerId,\"pointerId\");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(n=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var K={touchstart:1,touchmove:2,touchend:4,touchcancel:8};function Q(){this.evTarget=\"touchstart\",this.evWin=\"touchstart touchmove touchend touchcancel\",this.started=!1,Y.apply(this,arguments)}function tt(t,e){var n=x(t.touches),i=x(t.changedTouches);return 12&e&&(n=P(n.concat(i),\"identifier\",!0)),[n,i]}g(Q,Y,{handler:function(t){var e=K[t.type];if(1===e&&(this.started=!0),this.started){var n=tt.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:\"touch\",srcEvent:t})}}});var et={touchstart:1,touchmove:2,touchend:4,touchcancel:8};function nt(){this.evTarget=\"touchstart touchmove touchend touchcancel\",this.targetIds={},Y.apply(this,arguments)}function it(t,e){var n=x(t.touches),i=this.targetIds;if(3&e&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=x(t.changedTouches),a=[],h=this.target;if(s=n.filter((function(t){return _(t.target,h)})),1===e)for(r=0;r<s.length;)i[s[r].identifier]=!0,r++;for(r=0;r<o.length;)i[o[r].identifier]&&a.push(o[r]),12&e&&delete i[o[r].identifier],r++;return a.length?[P(s.concat(a),\"identifier\",!0),a]:void 0}g(nt,Y,{handler:function(t){var e=et[t.type],n=it.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:\"touch\",srcEvent:t})}});function rt(){Y.apply(this,arguments);var t=y(this.handler,this);this.touch=new nt(this.manager,t),this.mouse=new j(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function st(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,ot.call(this,e)):12&t&&ot.call(this,e)}function ot(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var n={x:e.clientX,y:e.clientY};this.lastTouches.push(n);var i=this.lastTouches;setTimeout((function(){var t=i.indexOf(n);t>-1&&i.splice(t,1)}),2500)}}function at(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var r=this.lastTouches[i],s=Math.abs(e-r.x),o=Math.abs(n-r.y);if(s<=25&&o<=25)return!0}return!1}g(rt,Y,{handler:function(t,e,n){var i=\"touch\"==n.pointerType,r=\"mouse\"==n.pointerType;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)st.call(this,e,n);else if(r&&at.call(this,n))return;this.callback(t,e,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ht=D(a.style,\"touchAction\"),ut=void 0!==ht,ct=function(){if(!ut)return!1;var e={},n=t.CSS&&t.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach((function(i){e[i]=!n||t.CSS.supports(\"touch-action\",i)})),e}();function lt(t,e){this.manager=t,this.set(e)}lt.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),ut&&this.manager.element.style&&ct[t]&&(this.manager.element.style[ht]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return f(this.manager.recognizers,(function(e){T(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))})),function(t){if(C(t,\"none\"))return\"none\";var e=C(t,\"pan-x\"),n=C(t,\"pan-y\");if(e&&n)return\"none\";if(e||n)return e?\"pan-x\":\"pan-y\";if(C(t,\"manipulation\"))return\"manipulation\";return\"auto\"}(t.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var i=this.actions,r=C(i,\"none\")&&!ct.none,s=C(i,\"pan-y\")&&!ct[\"pan-y\"],o=C(i,\"pan-x\")&&!ct[\"pan-x\"];if(r){var a=1===t.pointers.length,h=t.distance<2,u=t.deltaTime<250;if(a&&h&&u)return}if(!o||!s)return r||s&&6&n||o&&24&n?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};function pt(t){this.options=s({},this.defaults,t||{}),this.id=w++,this.manager=null,this.options.enable=E(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function ft(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function vt(t){return 16==t?\"down\":8==t?\"up\":2==t?\"left\":4==t?\"right\":\"\"}function dt(t,e){var n=e.manager;return n?n.get(t):t}function mt(){pt.apply(this,arguments)}function gt(){mt.apply(this,arguments),this.pX=null,this.pY=null}function yt(){mt.apply(this,arguments)}function Tt(){pt.apply(this,arguments),this._timer=null,this._input=null}function Et(){mt.apply(this,arguments)}function It(){mt.apply(this,arguments)}function At(){pt.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function _t(t,e){return(e=e||{}).recognizers=E(e.recognizers,_t.defaults.preset),new Ct(t,e)}pt.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(p(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return e[(t=dt(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return p(t,\"dropRecognizeWith\",this)||(t=dt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(p(t,\"requireFailure\",this))return this;var e=this.requireFail;return-1===b(e,t=dt(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(p(t,\"dropRequireFailure\",this))return this;t=dt(t,this);var e=b(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+ft(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+ft(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!T(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},g(mt,pt,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,n=t.eventType,i=6&e,r=this.attrTest(t);return i&&(8&n||!r)?16|e:i||r?4&n?8|e:2&e?4|e:2:32}}),g(gt,mt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(\"pan-y\"),24&t&&e.push(\"pan-x\"),e},directionTest:function(t){var e=this.options,n=!0,i=t.distance,r=t.direction,s=t.deltaX,o=t.deltaY;return r&e.direction||(6&e.direction?(r=0===s?1:s<0?2:4,n=s!=this.pX,i=Math.abs(t.deltaX)):(r=0===o?1:o<0?8:16,n=o!=this.pY,i=Math.abs(t.deltaY))),t.direction=r,n&&i>e.threshold&&r&e.direction},attrTest:function(t){return mt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=vt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),g(yt,mt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[\"none\"]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?\"in\":\"out\";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),g(Tt,pt,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[\"auto\"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance<e.threshold,r=t.deltaTime>e.time;if(this._input=t,!i||!n||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=l((function(){this.state=8,this.tryEmit()}),e.time,this);else if(4&t.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=c(),this.manager.emit(this.options.event,this._input)))}}),g(Et,mt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[\"none\"]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),g(It,mt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return gt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:24&n&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&u(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=vt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),g(At,pt,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[\"manipulation\"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance<e.threshold,r=t.deltaTime<e.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(i&&r&&n){if(4!=t.eventType)return this.failTimeout();var s=!this.pTime||t.timeStamp-this.pTime<e.interval,o=!this.pCenter||L(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,o&&s?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=l((function(){this.state=8,this.tryEmit()}),e.interval,this),2):8}return 32},failTimeout:function(){return this._timer=l((function(){this.state=32}),this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),_t.VERSION=\"2.0.7\",_t.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Et,{enable:!1}],[yt,{enable:!1},[\"rotate\"]],[It,{direction:6}],[gt,{direction:6},[\"swipe\"]],[At],[At,{event:\"doubletap\",taps:2},[\"tap\"]],[Tt]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};function Ct(t,e){var n;this.options=s({},_t.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((n=this).options.inputClass||(M?J:z?nt:R?rt:j))(n,F),this.touchAction=new lt(this,this.options.touchAction),St(this,!0),f(this.options.recognizers,(function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])}),this)}function St(t,e){var n,i=t.element;i.style&&(f(t.options.cssProps,(function(r,s){n=D(i.style,s),e?(t.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=t.oldCssProps[n]||\"\"})),e||(t.oldCssProps={}))}Ct.prototype={set:function(t){return s(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var n;this.touchAction.preventDefaults(t);var i=this.recognizers,r=e.curRecognizer;(!r||r&&8&r.state)&&(r=e.curRecognizer=null);for(var s=0;s<i.length;)n=i[s],2===e.stopped||r&&n!=r&&!n.canRecognizeWith(r)?n.reset():n.recognize(t),!r&&14&n.state&&(r=e.curRecognizer=n),s++}},get:function(t){if(t instanceof pt)return t;for(var e=this.recognizers,n=0;n<e.length;n++)if(e[n].options.event==t)return e[n];return null},add:function(t){if(p(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(p(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,n=b(e,t);-1!==n&&(e.splice(n,1),this.touchAction.update())}return this},on:function(t,e){if(void 0!==t&&void 0!==e){var n=this.handlers;return f(S(t),(function(t){n[t]=n[t]||[],n[t].push(e)})),this}},off:function(t,e){if(void 0!==t){var n=this.handlers;return f(S(t),(function(t){e?n[t]&&n[t].splice(b(n[t],e),1):delete n[t]})),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var i=n.createEvent(\"Event\");i.initEvent(t,!0,!0),i.gesture=e,e.target.dispatchEvent(i)}(t,e);var i=this.handlers[t]&&this.handlers[t].slice();if(i&&i.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var r=0;r<i.length;)i[r](e),r++}},destroy:function(){this.element&&St(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(_t,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:32,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:24,DIRECTION_ALL:30,Manager:Ct,Input:Y,TouchAction:lt,TouchInput:nt,MouseInput:j,PointerEventInput:J,TouchMouseInput:rt,SingleTouchInput:Q,Recognizer:pt,AttrRecognizer:mt,Tap:At,Pan:gt,Swipe:It,Pinch:yt,Rotate:Et,Press:Tt,on:I,off:A,each:f,merge:m,extend:d,assign:s,inherit:g,bindFn:y,prefixed:D}),(void 0!==t?t:\"undefined\"!=typeof self?self:{}).Hammer=_t,\"function\"==typeof define&&define.amd?define((function(){return _t})):void 0!==e&&e.exports?e.exports=_t:t.Hammer=_t}(window,document)},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1).__importStar(t(18)),o=t(71),s=t(9),a=t(81);class r extends o.View{get plot_view(){return this.parent}get plot_model(){return this.parent.model}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>{this.model.active?this.activate():this.deactivate()})}activate(){}deactivate(){}}i.ToolView=r,r.__name__=\"ToolView\";class _ extends a.Model{constructor(t){super(t)}static init_Tool(){this.prototype._known_aliases=new Map,this.internal({active:[n.Boolean,!1]})}get synthetic_renderers(){return[]}_get_dim_tooltip(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}}_get_dim_limits([t,e],[i,n],o,a){const r=o.bbox.h_range;let _;\"width\"==a||\"both\"==a?(_=[s.min([t,i]),s.max([t,i])],_=[s.max([_[0],r.start]),s.min([_[1],r.end])]):_=[r.start,r.end];const l=o.bbox.v_range;let c;return\"height\"==a||\"both\"==a?(c=[s.min([e,n]),s.max([e,n])],c=[s.max([c[0],l.start]),s.min([c[1],l.end])]):c=[l.start,l.end],[_,c]}static register_alias(t,e){this.prototype._known_aliases.set(t,e)}static from_string(t){const e=this.prototype._known_aliases.get(t);if(null!=e)return e();{const e=[...this.prototype._known_aliases.keys()];throw new Error(`unexpected tool name '${t}', possible tools are ${e.join(\", \")}`)}}}i.Tool=_,_.__name__=\"Tool\",_.init_Tool()},\n",
       "      function _(o,b,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.bk_toolbar=\"bk-toolbar\",t.bk_toolbar_hidden=\"bk-toolbar-hidden\",t.bk_toolbar_button=\"bk-toolbar-button\",t.bk_button_bar=\"bk-button-bar\",t.bk_toolbar_button_custom_action=\"bk-toolbar-button-custom-action\"},\n",
       "      function _(o,b,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root .bk-toolbar-hidden {\\n  visibility: hidden;\\n  opacity: 0;\\n  transition: visibility 0.3s linear, opacity 0.3s linear;\\n}\\n.bk-root .bk-toolbar,\\n.bk-root .bk-button-bar {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n}\\n.bk-root .bk-toolbar .bk-logo {\\n  flex-shrink: 0;\\n  -webkit-flex-shrink: 0;\\n}\\n.bk-root .bk-toolbar.bk-above,\\n.bk-root .bk-toolbar.bk-below {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n  justify-content: flex-end;\\n  -webkit-justify-content: flex-end;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-button-bar,\\n.bk-root .bk-toolbar.bk-below .bk-button-bar {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-logo,\\n.bk-root .bk-toolbar.bk-below .bk-logo {\\n  order: 1;\\n  -webkit-order: 1;\\n  margin-left: 5px;\\n  margin-right: 0px;\\n}\\n.bk-root .bk-toolbar.bk-left,\\n.bk-root .bk-toolbar.bk-right {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n  justify-content: flex-start;\\n  -webkit-justify-content: flex-start;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-button-bar,\\n.bk-root .bk-toolbar.bk-right .bk-button-bar {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-logo,\\n.bk-root .bk-toolbar.bk-right .bk-logo {\\n  order: 0;\\n  -webkit-order: 0;\\n  margin-bottom: 5px;\\n  margin-top: 0px;\\n}\\n.bk-root .bk-toolbar-button {\\n  width: 30px;\\n  height: 30px;\\n  cursor: pointer;\\n  background-size: 60% 60%;\\n  background-origin: border-box;\\n  background-color: transparent;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n}\\n.bk-root .bk-toolbar-button:hover {\\n  background-color: rgba(192, 192, 192, 0.15);\\n}\\n.bk-root .bk-toolbar-button:focus {\\n  outline: none;\\n}\\n.bk-root .bk-toolbar-button::-moz-focus-inner {\\n  border: 0;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-toolbar-button {\\n  border-bottom: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-toolbar-button.bk-active {\\n  border-bottom-color: #26aae1;\\n}\\n.bk-root .bk-toolbar.bk-below .bk-toolbar-button {\\n  border-top: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-below .bk-toolbar-button.bk-active {\\n  border-top-color: #26aae1;\\n}\\n.bk-root .bk-toolbar.bk-right .bk-toolbar-button {\\n  border-left: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-right .bk-toolbar-button.bk-active {\\n  border-left-color: #26aae1;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-toolbar-button {\\n  border-right: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-toolbar-button.bk-active {\\n  border-right-color: #26aae1;\\n}\\n.bk-root .bk-button-bar + .bk-button-bar:before {\\n  content: \" \";\\n  display: inline-block;\\n  background-color: lightgray;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-button-bar + .bk-button-bar:before,\\n.bk-root .bk-toolbar.bk-below .bk-button-bar + .bk-button-bar:before {\\n  height: 10px;\\n  width: 1px;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-button-bar + .bk-button-bar:before,\\n.bk-root .bk-toolbar.bk-right .bk-button-bar + .bk-button-bar:before {\\n  height: 1px;\\n  width: 10px;\\n}\\n'},\n",
       "      function _(A,g,C){Object.defineProperty(C,\"__esModule\",{value:!0});C.default='\\n.bk-root .bk-tool-icon-copy-to-clipboard {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUSDBoBvcHQeQAAAG9JREFUWMNjXLhsJcNAAiaGAQYwB/xHwh/Q+ITEkfHQCwEWND4jmeb8H/JpgBwfI6cNBhLSEkqaGXRpgFRAcZoZsmlg1AGjDhh1wKgDRh0w6gCaVcf/R2wIkNqw+D9s0wADvUNiyIYA47BJAwPuAAAj/Cjd0TCN6wAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-replace-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxokK3gniQAAAHpJREFUWMNjXLhsJcNAAiaGAQajDhhwB7DgEP+PxmeksvjgDwFcLmYkUh2hkBj8IcBIZXsYh1w2/I8v3sgAOM0bLYhGc8GgrwuICgldfQO88pcvXvg/aOuCUQeM5oLRuoCFCJcTbOMh5XOiW0JDNhdQS3y0IBp1ABwAAF8KGrhC1Eg6AAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-append-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkZWD04WwAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAAoUlEQVRYw+1WQQ6AIAwrhO8Y/bIXEz9jIMSDr8ETCUEPQzA4pMeFLKNbu4l5WR0CDOMEALBGIzMuQIBEZQjPgP9JLjwTfBjY9sO9lZsFA9IafZng3BlIyVefgd8XQFZBAWe8jfNxwsDhir6rzoCiPiy1K+J8/FRQemv2XfAdFcQ9znU4Viqg9ta1qYJ+D1BnAIBrkgGVOrXNqUA9rbyZm/AEzFh4jEeY/soAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-intersect-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkrkOpp2wAAAPhJREFUWMPtV1EKwjAMTUavI3oawR/vtn5srJdREfzwMvHHQlcT2mpdMzFfWxiP5r2+JMN+mAiCOB72CABgR1cln4oOGocJnuMTSxWk8jMm7OggYkYXA9gPE3uyd8NXHONJ+eYMdE/NqCJmEZ5ZqlJJ4sUksKN7cYSaPoCZFWR1QI+Xm1fBACU63Cw22x0AAJxudwrffVwvZ+JmQdAHZkw0d4EpAMCw8k87pMdbnwtizQumJYv3nwV6XOA1qbUT/oQLUJgFRbsiNwFVucBIlyR3p0tdMp+XmFjfLKi1LatyAXtCRjPWBdL3Ke3VuACJKFfDr/xFN2fgAR/Go0qaLlmEAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-subtract-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxgsF5XNOQAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAABFUlEQVRYw9VWUQqDMAxNpWfxQxD1MoP97G7zQ5mH2RTZYLtM9lWoMbXtxLXNX4OG9r28l4hrd0PQoqxqAACYpxH25C/nkwCHyCBwSPoS09k1T5Fo+4EiExcC4v584xGFmyIXHBLRISAVZyZufUPVa4rcrwmPDgr93ylo+2GliLRUYHK6th/o/6r7nfLpqaCsagEA8Hh9FmcNKeRmgeYDC+SCq0B6FFi8/BcV6BdR9cL3gCv3ijPKOacsn3rBEcjmaVxpfGcg4wHxzgJJnc6241Hn23DERFRAu1bNcWa3Q0uXi62XR6sCaWoSejbtdLYmU3kTEunNgj0bUbQqYG/IcMaqwPS9jftoVCAQ0ZVDJwf0zQdH4AsyW6fpQu4YegAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-clear-selection {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUGEhcuan3d3wAAAoRJREFUWMPtlzFP3EAQhd+b3TNSzg0N5TWXLkJQUUaKhIQ4fgP/g5ArrriE/I3opEgRrZtIVJR0FJQ010SioUmEZHtnUpwN9gWHGA5BJCy58MraffvmfZ41v3z9hqe8BE98vQh4cgG+Ydzmnrng8efvQJNi/uN7dznx/B3ggtfhf4ehNdUttRzBDIm/2VTiiWCG1HK0nc+3UWtq8BQIiEEakEQOADBIA4QCQmBqoHBhFNR27ikQSmGdYCdTqCpEHMDZmEKRWUBEv1gBDg5SzRJnpopILWICgWuRYflLamuzxB2BmtYqSRIka5VWU8QduXO+1hRc5YZu5GAwmP2ZJzND0IBu5HCV2+NQcAhAVRsnC2IbPzPdSjzd6to6VtfWkXi6YLaVWr7xoAwkfpb8MnC3SH7rKSMBe4M0jA/OTicFIbtCGRIyNbURhcf3ErCd6YwA1m0HgAxhw1NGQnlXBHG4kylVlSJuH0RfIP2CkL2I/qS1gIAAQiBl1QwFggIHtyxgrxK5PgyfC0JWKoT0HLh8LwoietB4TYKaIl7yeNURxB05UtMxDOcVQlZIrlRKdK6m47gjR/fuBRQihyLArtNeJD50Izcx2Eczu7iFkIug4VM3cpOr3MKDekFED0fWUHv9Zq0kpLnridjhY3XDg7NTN0jDrhO3X7O9Wg7wwyANu4mnayNg3gmbu0tCNoUyBNGv2l4rB9EXynA7082FOxAQLhU6rQVO9T2AvWowFToNCJcPORGxIRcnpjZSKATSU9NxvOQnAPArDSaQoUKnNI4iufkGtD4P3EHIcWZhz4HLceSOyrR3Izf5memPAL2cX3yhAkonysZVaWLBkd9dw1Ivv2a/AYPkK+ty1U1DAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-box-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg0kduFrowAAAIdJREFUWMPtVtEKwCAI9KL//4e9DPZ3+wP3KgOjNZouFYI4C8q7s7DtB1lGIeMoRMRinCLXg/ML3EcFqpjjloOyZxRntxpwQ8HsgHYARKFAtSFrCg3TCdMFCE1BuuALEXJLjC4qENsFVXCESZw38/kWLOkC/K4PcOc/Hj03WkoDT3EaWW9egQul6CUbq90JTwAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-box-zoom {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg82t254aQAAAkBJREFUWMPN11+E1FEUB/DPTFn2qaeIpcSwr5NlUyJiKWVXWUqvlUh/iE3RY9mUekkPPURtLKNRrFJEeuphGfUUaVliiX1aVjGs6aG7+XX9ZnZ+d2fTl2vmnHvPPfeee/79Sk+may2/UQq/q7Qu+bAJoxjHIKqB/wlfUMcMVqI9bLZ+DGIKwzlzQ2GcxCx2xwvKOUKlaHTiX8bHNspjDONHkOmJBW5jIof/FvPh/06MZOb6cRc7cGn1AKUE5cdzlM/gAr5F/O24H3xkFRfxAbVygvK+cIsspjGWo1zgjeFpxL+BvnLw7laBA4xjIFJwrgu52DoVjKdY4HBEX8dSF3JLYe1fe6UcYCii3xWQjdfuSTnAtoheKCC7GNED5Zx4L4qt61jbTLHA94geKSC7P7ZeShQ0Inoi1IJuEOeORooFXkV0FZNdZs5qvFfKAeqYy7nZ6yg//HG0MBfffh71lFrQDCW2EvEP4mt4okZUDftz9rmGZkotmMxJRtlisy+MTniAWrty3AlXw0hFM2TD89l+oNsoOJXjbIs4EpqNtTCLXbiZ0g+M4mFObj8U3vsNjoZCVcmk60ZwthpepLZkB/AsivWfOJZxtpUQHfWib7KWDwzjeegBZJSdKFiE2qJTFFTwElsi/unQ/awXrU4WGMD7nOJxBY/1EO2iYConq93CHT1GOwucjdqnRyFz+VcHmMNefMY9nNkA3SWUOoXhQviSWQ4huLIRFlirFixnQq/XaKXUgg2xQNGv4V7x/RcW+AXPB3h7H1PaiQAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-zoom-in {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsUBmL8iQAAA2JJREFUWMO9l12IlFUYx3//MzPrLpSjkm5oN4FFIWVEl66IQlFYwtLOzozsjHdGRSCRF0sfBEXRVV0FQuQiLm5CZNBFgRRaRLVFhbJ2EdiN5gbK7toObTPn6eYdPTvNzPvOBz5Xh/ec5/n/n89zXtEHmZqeSXSuXBz/3zfdKvBWJHQrwZuRcP0El+QkbQXeBX6WZEgm6TtJk5lM5o4Lc+cV6qpf4Ga20Tm338zeATItVK9Ker6yvPzp4NDQ3+XieGsCU9MzTYumGbhz7m4ze9/MHgvBgItACrgfGAj2jgAvAYs3wlEujjc13kii8YyZrXXOfWhmo9GnFUlvOOemarVapVqtkslksmb2KjARqL62ecuWN9NxbRInzrldAXhV0uFSIfdew7G/gNLU9MwS8CwSmE3Oz88fcXG5blfpqVRq0Ix8VIAAX0XgrVL7HDCHGcCaWrV60LUBN8Dae58aQIxEqcA592I9M610JL0cpG/U9TIHJNKY3RV5z0R+7Nd4HZ0P1g/2RMBuegLAsRMnb4vT8d5vqKfMzOgtAlADrkmqGywmiMBTwfr3dC9j1Xv/r6Tvg/5/5ejxE6cO7M9faVbQZrYNOFSPmqQvVo9FKexvi5uWX58943aM7DwAfBDY+FbSCxP5sdkGx55GeguzrUEXPaSo2pFkAbiSZQCAzZJOmdkjwd6SpB/M7KykQTPbA2wDhoIzRzcNDx9MJwGNIXdJ0mEzmwbujL7dbma7gd03A7lKfnTOvf74nl0r6bonTUbujRSUCrm2d4L3/kvn3JPe+8+BDW2i9o+kT7z3kxP5sYsA6W47oE64TsR7P9tQL4vA2mh9WdIscKxUyJ0M7aR7acOGzikD65EQLEjaa2ZXzMwDFeB6qZBbbLTRE4EGeSaozNOZgYFf8qP7lmIvs354n0qlHpB0T7B9Ogl4IgJJrmjv/SiQjbrkD+BMUkfSbYATPdckrTOzkciWAXOlQu5cYgLdPEIapud9wMOR9zVJH3ViKx333mtHMJvNuoWFhZ3A+ojMcja77njXBEKwJJfTcqUyCIQ34Mf7nnh0paMnXacFuGoC1mr3AtuDfLzd8Zuyl+rfuGn4HLAD+Az4qZQf+61TAj0Noj8vX6oC35SL43u7teG6rf5+iXppwW7/JUL5D03qaFRvvUe+AAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-zoom-out {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsHgty9VwAAA0FJREFUWMO9l09oXFUUxn/fmXlpItppi22k7UJBRSlVkCytSAuKUloIdjKT0El3FXVXdVFKRVAQV7qQohsNwdA0UFvBhYtqUVyIVlRaogtFQVq7qSTVjA3z3nHzBq/jvPmTN/Ss7rv3nvN99/y794kByMzcfE/7picn/jenmwWeRUI3E7wdCRskuCSTdDfwBvCtJEdySV9KOhpF0e0/LF5SqKtBgbv7ZjObcvfXgShD9Zqk5+orKx8Oj4z8NT05kU1gZm6+bdK0Azezu9z9hLs/HoIBvwAF4H5gKFh7B3gBWFY3460kWve4+3oze9fdx9OpVUmvmNlMHMf1RqNBFEUldz8OHAxUX9q6bduryut+Sfvc/Wz62ZD0fK1afjND9y3gGSRwv1GMojstTxUUCoVhdyopEYDzKXjWwZ4FFnEHWBc3Goet00m7lZlZYQixKw0FZnakGZksHUnHgvCN5/KARBH37enpOVg58H13HV0Kxg/kIuD/ngSA2ZMLt3bTSZJkUzNk7k4+D0AM/CGpaXCyBw/sC8Y/qZd2GpZiuL9YLN4Sx/HpoP5/c/exQ1OVq+1yyt13SLoArEsJnMjlgfOffvK3u58Kprab2QezJxfG2iTzUzI70wRPG9jbmpmb95SNB9mpzp7/j2yVdNbdx4K565K+cvfPJQ27+x5gBzAS7Hlvy+jo4WIvoC3kWpcvS3rR3eeAO9K529x9N7C7zX6AC2b28hN7Hl1Vt44niVq13LUjmtlYkiQfA5s6eO+GpDNJkhw9NFX5ueNt2ARodyF1IHIN2JiOl4H16fiKpK+B2Vq1vBAqFAf4IJkGNiIhWJK0192vunsC1IE/a9XycquNXARa5OnApeeioaHvKuP7r3dTGsiLqFAo7JR0T7B8rhfwXARa2us4UEqr5Ffgs151i/08oTNKdIO770ptObBYq5Yv5ibQq/sl3Qc8lJ4+lnSqH1vFfp9koZRKJVtaWnqkWXqSVkqlDe+vmUDWpZMlK/X6MBDegKf3P/nYaj8ErN9fqZBYEsf3Ag8G8Xit33BaniTcvGX0IvAw8BHwTa1y4Md+CeRqRL9fudwAvpienNi7Vhu21uwflOT+L+i1X2TJP57iUvUFtHWsAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-help {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABltpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlmZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMzIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDNDIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMTIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDMjIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNjoxMToyOCAxMToxMTo4MjwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjY8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cphjt2AAAAT7SURBVFgJxRdbaFxFdGb2bhui227BWrsVKYgf2kJUbP9EUPuzEB803WTXJjH61Q/7Ya1+CMYKEVTsh4J/EpvY7BoabUiNiA8s1p+4KIhpoUUEselHqyS76TbZ3HuP58ydc3d2u4+IkQxczpz3mZkzZ86VYpXjvenpjZsLhUcliE4AuUuASAgptmt1EFdwPiclzIIUUwubNn17OJlcXo1p2UpodHRiux9xB1Eug1+slbzhFxGOKc851tu7/0oznYYBDA8Pt0U2tL8KQryIq2tvZqQhD0QJHRz3yqWhgYGBpXpydQMwqz6NCnurleCSADkJEfgKfOePqL80R/wV1ZaQyr1LenKfkPCkEPKeaj0xg7vxVL3duCmA0Vyuw/fl52hgBxsBED+h4Cv9z3R/zbRm8MTJTx7HQN7GQB6w5C4L4SX7M5lfLBpurjXMyvNIShiyi0l1pL8n9b7EDGPR8fHxzSsQ6XDB3618/xqo6Pk25V5MpVJllgHM1BO58RdQ612kOYZ+GXdij70TYQB05mpj+1kU5G2fB+l3PZtOf8NGx6ambnMXb3yAxg8wjSEG6OKKR9oicBQD+ZvpH2Wzj0lQpxCPG9qMv1x6hHNCsSAlHM7ZOa682vlI9tRDbvHGbD3nZAPpDoD/3JIrLpAs26UFkC3EMUA99hpfGtEBfJjNJnS2Gwnadnvl+Xw+iuc3DAJuNyIaSCHpilVldyDjjUxj3WDZIAhxhHHyRcdNuA7AAfUaXzVKODpzFiZ4/uLvh5G+m2no+C/pyIf7MqlEJB7bpqR6nXkEUfbeawuLaZsW2ISfNQ2vtaktQlGFQyIVGT0o2+2EC4iQNGwjBIN9qdQ5Qg4mk4X4rW3vCClLtowE2FOFUxKDfNmiZci3ovKKRFPh4FK9q4Zbdr+lKKJiA13TcHR2dmLBgdmQ0GAS2MZaEowY+XbAk09IvgtYZGp16SyvFhaHcIUh645t8T9DBCcnz5zZ4hZLu3DzK2QlL1QQa0Y+pHiJKPSuOGj3PmZTheM5w2TwqBxnvBZOTk7G5gvXJ5Aelms8wnJURL+olSWcfEhf6gDoUXPMq6ZlqbzWU2pE+3hi4s6F68tfIj9cBMlikr7Z0/P0b/X0yIcUXsDCF1WhtL4OROHaXk+xlkbV0Cu732Nmhc4peaWSg73pA8dq5RkvO37ldUTfXCKZv2q45MkhvG87WQEzpCCUSvV1d9GONBy3lMvgKSwrZig8gjAietWY0QriylO2jIo4yVbOSb7KB/qmI9BPKjHpSSXYauRyn92Nq9/Kcrj13x3s3v8D481glQ/0raiNYgX9njPSBOImbrHZePl+tfFmc9sH+Xaoh8NjOKSVdDMhjjYzQLy+dFceH5+IJQf9VYXX4tROg4ZFU8m31M3mfPEqUoJqCGJfvWpo2xnNfdrhC28n06SCeSzNZxlvBINGRXCtKS7EY1uV6V7HWAm38y1cXaXsMcOCvr9ySPj+af7A1U2HJXHzVNvUXVLIGyPf+jV0pf8GHoN+TLAyPkidTCi2RpPApmnR0Bd1zGRaB/B8Oj2HSw7LLbVR1MmskW8RdEWVXSJf3JbpAMgRtc4IZoxTh9qotQjCasm46M0YX9pV1VmbpvRH5OwwgdRtSg2vKaAz/1dNKVtb17Y8DCL4HVufHxMOYl1/zTgIgiYvBnFKfaNp3YjTdPz3n9Na8//X7/k/O1tdwopcZlcAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-hover {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4oVHp0SwAAAQJJREFUWMPtlsENgzAMRb8RQ5VJItFDOgaZAMaAA0iZpN3KPZSoEEHSQBCViI/G8pfNt/KAFFcPshPdoAGgZkYVVYjQAFCyFLN8tlAbXRwAxp61nc9XCkGERpZCxRDvBl0zoxp7K98GAACxxH29srNNmPsK2l7zHoHHXZDr+/9vwDfB3kgeSB5IHkgeOH0DmesJjSXi6pUvkYt5u9teVy6aWREDM0D0BRvmGRV5N6DsQkMzI64FidtI5t3AOKWaFhuioY8dlYf9TO1PREUh/9HVeAqzIThHgWZ6MuNmC1jiL1mK4pAzlKUojEmNsxcmL0J60tazWjLZFpClPbd9BMJfL95145YajN5RHQAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-crosshair {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADEUlEQVRYR81XXVIaQRCeHqug8CXmBNETaE4gniDwIgpVspxAbxC9ATkBkCpQ8gKeQDiB5AQxNyAvUlrldr7eHxyGXZi1rMJ5opbp7m++7un+htSGF204vsoMoNXrlzSpfWa1oxQfhAegCZGaEtPorHo8znIoJwCt6+td8uk7ApUQCIHTF4BNAWzImq8ap6cP68CsBdDp9i9ZqXM7ML79g/EnCWD+jgMKENKqWT+tXK0CkQqgNRjs0OxpQIqKhoMxaG6/6JeRnK7T6yO2UvVqhYSlLX+ryORfgKn9ORDFIy7ky41yGcwsr0QAQfDH5zucOswx819fs4egI9OFCcD8DjBF7VNbEX0JzdWEt3NHSSASAcCxBDqMgt/623kvyTgNgNjJIfTjk4D4FqaJR1715MjmYAmA5Bx3AwUXQL+t105KaTlcBSC26XRvhjEIoLiq1yqXpr8FAGG16/ug4IT27fxBWu7EiQuAiImJpEMKE6nYM30uAIDDttSUOPfJP7JzbjPhAiBIh9QE67vIvoOi9WJfCwDavf40ulpjbCqmUf+W753ezURuh7Dg1SqflwAEHU6pgfyBq9Y4qx0LG++2fnZ/eUzcstmdM2AWH+jfc+liWdBJfSENf8Lifi3GVwC9mybOfi5dzatWVrbbLIHNva8p5h/16gkaFiLGGxbufkoE6XguwePiXLF3XmMfCUCUAqtKXU7sumd1CowOuJEi3Pg1FBpjitIGhyvVSfvmjci6ZR+rFQfDiPVE2jFYeICQ+PoewwjC5h7CZld6DBdyu6nDSKgzOyIMhmhK5TTqXYbRorZYM46TmpKAAOrGWwSJJekSB1yqJNOzp1Gs7YJ0EDeySDIMtJbQHh6Kf/uFfNFZkolJICRmz0P8DKWZuIG2g1hpok+Mk0Qphs0h9lzMtWRoNvYLuVImUWrmPJDlBKeRBDfATGOpHkhw670QSHWGLLckmF1PTsMlYqMJpyUbiO0weiMMceqLVTcotnMCYAYJJbcuQrVgZFP0NOOJYpr62pf3AmrHfWUG4O7abefGAfwH7EXSMJafOlYAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-lasso-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgwlGP1qdAAABMBJREFUWMO9V1uIVVUY/r61z57ZMx4DnbzgkbQXL5iCJphlWdpIGY4jpFBkEiU9ZNaDRRcITcIwMwgxoQtU2IMXdAZfMjFvpERXYiSbysyBEXFmyuHMnLP32uvrwT2xnY5nxvHQ93Jg7fWv71/r//7L4a59TRgqJk+Z6v3a+sv0OI5nk5wu6VaSVZImAThHsgjgrKTvM5nMUWvtmf5n8HodCIKgOgzDhc65pSTrJQWDsSNpJX1ljHnDOfdT37oZLLHv+8OMMasKhcIJ59xHAJYMlhwAJGUAzJfUTHLFuFzOG5QDU6dNMyQfs9Yedc5tBpAD4IYYNQGoBrDtQnt7/b0LFrJsCHzfn2itfQfAnZLiazytA3AaQAuAiwDaEgeNpGkkswAWSBqRONB38b88z5uTKePt6iiKXkk8jq+iJC5LOmiMaTLGHLPWhmWeHr7vV0dRtATAapAzIVmSo51zyzIlbm2stesFPA6pKk0r6Ryg93y/ek8YFvPOOTg3cDSiKCoC2OP7/rEoirYm4rUkF12lAWNM1lr7lqQn0+QA8gI2jBg5cj6Aj8OwmB+KAKIoukhyp6SRJAUgl0ndPLDWPi9pJQCbuviXvu+/GIZhW1dnJ24UJFuTjCCA2ADA8sYGWmsXS3qmL94kDYAtkh4Nw7ANlQJ5U6INT1KrAYC9zQdykl7nFSj5fXp5Y8NWVBhy7mUAjqShMYdMXV2dJ2klyRwAJ8lIeuGWCRMP7N7frEqSG2OmAFhKshNAp5wrmO7u7jEAngPQm1S2z2pqapr+OPt7XEly0oxwzq2RdFmSD2AMgKKJouhhAL4kA+Cs53l7e3t7uytJHgRBreTWkXwkKVJnJD0B4GAGwIJE9R6AFufc6UqSZ7PZbD6ff5dkA4CQZEHSqwAOISmXtwGIE+F1SeqqIP8d+Xz+C0mLJYWSAODteXffczjdDQNJ0BWMCoLg5gqIbRTJNwHsljQhUb0luWPM2LE7Thw/9m/5NCT/TByxAOYWi8X6/gdWV1dnfN8fNRBxJpMZTXKdc+6IpFVJWAEgkvSJpA0X2tvtVTaSjgOYBCAEEADYSHK87/sfhmEYA9gShuEDkgzJHyWtB/B1irQ2juP7ADxkrX0wOUOpzmdpzEY590HJ7Ni1r2kSyZOSiv2+hSRjSTXp/QAukzySNJOJkmalyNIl10hqMcasdc61XDNcQRD8BnITgNp+36r6kfcNFMMlLQGwTNLMEuQGQBfJl2bdPru+HDkAZAqFQux53jZHEsC6aw0eg2gylNRBcqcx5v04ji999+03AwsWAOI4Lsy9a94WkisAnE5a5WCJYwCfA1g7LJudI2lTHMeXBm1faiQzxkyRtF3S5CTupeAB+KG2tnZFT0/P30NO2VKLzrmfAbwGMipjG5Oc0dPTc0Md05SZ5U4Q2FxChErtEYD7jTGNQ3UgM8Asv90Yc9I5LSKRlXSI5CxJa0jWSALJjKRnAewfkniT+vwf7N7fXHK9rq7O7+jo+BTA/NRrdBpjnnLOnUrvXd7YMPQXSBunneno6IhIHgYwW1JtkgmBpBkATlVMAwOk3nFJ+VSoqgCMr6gIy2FcLtdKspAedyQN/98caDt/3kpyabUmf8WvG/8A1vODTBVE/0MAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-pan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4lKssI9gAAAOtJREFUWMPVll0KwyAMgNPgoc0JzDX2Mtgp3csKErSamGabIEUo/T6bHz0ezxdsjPJ5kvUDaROem7VJAp3gufkbtwtI+JYEOsHNEugIN0mgM1wtsVoF1MnyKtZHZBW4DVxoMh6jaAW0MTfnBAbALyUwCD6UwEB4VyJN4FXx4aqUAACgFLjzrsRP9AECAP4Cm88QtJeJrGivdeNdPpko+j1H7XzUB+6WYHmo4eDk4wj41XFMEfBZGXpK0F/eB+QhVcXslVo7i6eANjF5NYSojCN7wi05MJNgbfKiMaPZA75TBVKCrWWbnGrb3DPePZ9Bcbe/QecAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-xpan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4X4hxZdgAAAMpJREFUWMPtlsEKwjAMhr/pwOOedINJe/PobWXCfAIvgo/nA4heOiilZQqN2yE5lpD/I38SWt3uD9aMHSuHAiiAAmwaYCqoM/0KMABtQYDW11wEaHyiEei28bWb8LGOkk5C4iEEgE11YBQWDyHGuAMD0CeS30IQPfACbC3o+Vd2bOIOWMCtoO1mC+ap3CfmoCokFs/SZd6E0ILjnzrhvFbyEJ2FIZzXyB6iZ3AkjITn8WOdSbbAoaD4NSW+tIZdQYBOPyQKoAAKkIsPv0se4A/1UC0AAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-ypan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4anK0lywAAAMVJREFUWMPtlzEKwzAMRX/S7rlpIMXeOnaLaME36FLo8XqCdNFghGljyc4kgQi2Q/SUj0F/eL7eMMTKz6j9wNlYPGRrFcSoLH4XxQPvdQeYuPOlcLbw2dRTgqvoXEaolWM0aP4LYm0NkHYWzyFSSwlmzjw2sR6OvAXNwgEcwAEcwAEcwAEcoGYk20SiMCHlmVoCzACoojEqjHBmCeJOCOo1lgPA7Q8E8TvdjMmHuzsV3NFD4w+1t+Ai/gTx3qHuOFqdMQB8ASMwJX0IEHOeAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-range {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABCJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjU8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxkYzpzdWJqZWN0PgogICAgICAgICAgICA8cmRmOkJhZy8+CiAgICAgICAgIDwvZGM6c3ViamVjdD4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTgtMDQtMjhUMTQ6MDQ6NDk8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPlBpeGVsbWF0b3IgMy43PC94bXA6Q3JlYXRvclRvb2w+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgrsrWBhAAAD60lEQVRYCcVWv2scRxSemZ097SHbSeWkcYwwclDhzr1Q5T6QE1LghP6BGNIYJGRWNlaZItiFK1mr+JAu4HQu0kjpU8sgF3ITAsaFg0hOvt2Zyfvmdsa7a610Unx44Zgf773vvfneezPHNzrbhn3CT3xC3wPXYOC8LDzqdi8YY/gwh4BeknS/2th6dr2kf94AOp3OFyWgMyziOPbMDxV9FTtJnl1ut795Xd0/YQ0/vtYQwMT1KXWCfr2IjOWwtNehwN4xL9ykTrm6Pzl58yLn3J+mKh9mXbT3uRjGEDph+O8/TjfP5dBp7Ha7AX7O3o5nZeD/0E/OGyXntDgzA0X6qmCnrVutVlrUWV9f/3xo+pwhGDhvEPHOjoxnZjJggXmMHzBQ7NGNp9vxk61fr0HR7e/u7pZzCGHlc7qwBYYTT7tJYSx1AQzppyFPft5apta9w7SKcn0b7P7+/jCsDQ5mbc0dCmIJGDN0ehdcjsmkm6A6KUeKFOTE11PLxrC7Ukqh3ylL2fT0NAP9q6ur6rRCJJYsbKB0JsbCKMuy+xREePDyxQPCz+Crlw062QcA5wBOOt1l6vIl2WiI9F1fN6Q+BBqit6hEC4Hk08GQJMn4myjSP7RavVxgdaVUh/3U6HCMsPr9pYnJKRziHtWQ+un58+hGs6nsjQSjpuTyKGN3CX+FBwHXSiEVgjP+O8X6N12kIePES+GzTKAkGbNp8yJsGUMVzz8jPKReiyAQRimy5/cjye5RpF8utFp/+nwmT7d/NMzcFkS7yjJNGDaPURQxIQThEQy0SyF4l5WJYYhBa816vZ6dU7A6CAhbZVow/pDe0O9hVOoCi13r4BgBAvJHqMSQL2vE/iH6IAXEwgrRVUmBoRRwnwJQT98xEeVeSUyB4dJ5nwJBKdCFFGRmUCcu7rwIYypCTblaChuNBhWODrman5ub+4v0rMNBt8z6Ezh7GksJQpCbm79cMQE7QBFm/X6f0rjWnv8WRYg/QdbUpwDAEBy8vPyA8rNGzg3a8MiElwiM7dAtRqNoNptjGPM1laVxP9umWEMGLOKhKUOJDtBwDmzsw9fC/CzHr9SGuCTi2LbbKvVtmqXpCjMihBFa79Wrt5fGx9PDzc3fmu32Lf8qFliwU9emKhBSp+kRKn/hu9k1COEDbFdt/BoKWOAkuEbdVYyoIXv8+I/QK9dMHEb1Knb7MHOv8LFFOsjzCVHWOD7Ltn+MXCRF4729vWMDK+p8rLkvwjLg4N4v741m5YuwCI9CvHp1Ha8gFdBoPnQAkGsYYGxxcfEI7QQlFCTGUXwjAz4tWF+EpymOWu7fglE7qsOvrYE6g4+9/x/vhRbMdLOCFgAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-polygon-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjc1OfiVKAAAAe1JREFUWMPt1r9rU1EUB/DPK0XbqphFHETo4OCiFhwF0V1KHbRSROLqon+AUMVRRFBwEbRFMBiV+mMW/wIxi5OD1kERRVKRJHUwLvfBTZrU5OWBGXLgQu7Jfe98z/ec7z0vKa88b2q1BDtRHdAPBaylm1NzsxsOjPnPNt6WSWprbft+/c3I3zOAjhT1Y4+fvcjEQJIXnVECSa+AhqIHqlHH5lWCZoe+Gk4GRgDG86j9SAUdlDBSQaZhlOkuHyoVdJmsw98D1S5fM4NYM1LCpqM+Lwa240oLgmZzpVZvzKT75VLZcqksSZKWlQeAy/iORVwIvh31xvotvK7VG3Px4aWHj3Jl4C2uYSvq+Bn8v6LLbaVWb9zsBiKLCvbiNG7gLm7jAYqbPHMJMziZ9lsKoh8GtqCEVVzHftwJn+TFHp4/hg8BSCYVfMOZoPEv2NZGdy9WCGUr9toDR3E2/H4V6nwRe/BmgN65H1ZhvMuB3XiKIyFoGefwO6ysVkUlrNUNsyAK/jli533Q+Y8cJFvAeXyMS1CI/jiMr/gUtD2LQwMGr4R3p7bY3oQHQ5b38CT4D2AXXg6YcQXHpyYnlqKsi5iOAVSwL9zd7zJ09r+Cpwq72omFMazjT9Dnibym0dTkRDUKrrgwH7MwXVyYB38BstaGDfLUTsgAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-redo {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4itK+dVQAAAaFJREFUWMPt1L1rFFEUBfDfJDaBBSslIFjbaSFp1FJQFMVCHkzhKIqdUYOCoBgErVz8rCwiTDMwBCIKipDWyip/gxAIWAmBgBC0eYFh2Gx2l9lFcA5M8e59782Zc84dWrT435Hs1siLchqn43MS0zgW22vYxjesYjVLw3YjBPKinMUTBOwf8J5fKLGYpWFjJAJ5Uc7gIW6jM6Kim3iNZ1katgYmEL/6I+YasvY7Lg6iRpIX5VF8wuEe/XV8wGf8jN6LWTiAc7iEQ7ucPZ+lYW0vAtfwvlbfwCKW9gpXDOv1mJvZHiSO91MiyYsyiQSuxtpXXM7SsDmM5nlRdrCMMz3sOJWl4Xevc/vwBzdwAl+yNNwZxfRI+GxelK9ikHcwh8d4NNR/YFRES1ZwoTYdR7I0rNf3TzVNIGbmSvR/Bx08mIgCFSVu4l2ltIWD9WxNGR+W8KOynqnZ0rwCeVG+wa0hjrxtWoF5dAfc28V8Mib/n+Nev5dnabg/zgw87aNEN/bHOwVRiRe4Wym9zNKwMKkpgIWKEt24njxiJlq0aPFv4i9ZWXMSPPhE/QAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-reset {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4gWqH8eQAABLdJREFUWMPtlktsVGUUx3/nfvfOlLQaY2IiRRMQIRpI0PjamJhoVASDvNpCpYw1vJQYSVwZwIVQF6wwRHmkAUof9ElrI6VqDAXcID4TF0IiYQMkSlTokNCZ+b7jove2t+NMH7rQBWd3v+989/zP+Z8X3Jb/WGQySvUNTQBJESkNguAVYIWqzhaRhwBU9WcR+QXoymazn6jqzUQiMQSQzWZRVdal1vwzAI2tHQBPOuc2AbWTdOyQ53n7nHNfRwee51GzqoIQMCLDpr3x/tLQ0oZzrk5Vj0/BOEBt+KYuOlBVGlrahr0Wob27t3gEjnZ2AyQzmUwHsDgP6J/AYRE553neDwDOuUdU9QngNeCumK4TkRMhZUORcYC1qysLA6iuSQHIwkWLD6lqapQsuSmwTVV3h99I7EcAR462A2xR2Ilq6ehTaejvO1774kuLNALR33eclsaGsQDe3fYegHl43vyNwEeqGl1963mm2jl7YZRTQ82qlWP4HM6ZToC5ztkW4LHQoALru7s6Di5dvlIj/e6ujrEAWoZDn8hmMjXATMACGaAVuBjXTVVXFc/AxhaA+4zvn1DV+eHxVWPMAmvtb5GeMWZyZVhI2rt7qVy2pOh9U1snwIPW2vMi4oWJuBPYHkVAVScPoKmtkzVVK6cEMsyJraHhiCqJqJUwj/JRz7TW1iSSyR2rVyylqa0Ta+24Ic8vXaAEmDFc/l5Z2A/80OibuVyuz/f9ElUdHCmvw82t5HK5h6y1PYhsz2YyGw43t2KtBZHIGwB6+j4rCkBVUdV7gXrggnPuu8h4eP+xMeZS2D0rJYZ6AdAMzAt1b4nI26p6IFZOY8pugijcKSIHVLUK0LyST4vnrVfnWr3mjmP4QTATaERkXkypRFX3isjmuHdRJEK6Ckqquopp06bdKCkp2Sgi7XnGLcg7gzeutwNIiPYc8HixqIrIOlU9ONVIhHPEd851icgSVXUiskVV94gIqoonIt0i8gfQCfwae38e6BWRXuBZz5jZ8VbaOE4EIqlZVUEQBLlkMplS1QER2RwkEnsSyaREDUzyeNsvIhvCMqkH1kdIJ2o+k8iJB1LVVRfjZ6nqqlEAIbdVQGto8Lrv+/dbawcjAL7vc+6bs+zetetfLSHxniIFGofGGsU2oC7eOCbDfZ7nQawBOSAX74SF9oEPImOq+r7nmVmxb5raukZa8UReGmNmhbMkAwwBH467EYVZe49z7kdgenj8k7V2oTHm8kgdWcvrNdVFjR8cHkYzjDH9wLjDaEwEzpwa4MypgWvAjtjxfGNMj4jMiT+M+kFsZI/Q6Pv+HGNMT8w4wI7TAyevxXVPD5z8+zD64tRXAMHVK1eaVLUyVvuDqroV2BOnJF4ZIedviUidqt4Re9s+vbx8zZXLl7PR2+nl5Tz/zNOFp2FzxzGAklw22wUsLLaSKXwf8vhosZUM6PeDYEUum70VHfpBwKsVyyfeikOP6oBNwN1TrLbfgX3A1kKLzKeff8nLLzw38T5wZDgxn1LnNk5lLRfP26/OnR2hwfNYW2Atn9RCsrf+EECyrKysDFimqhXhyjY3VLkAXBKRDqA7nU6nS0tLhyIj6XSaN9bVclv+l/IXAmkwvZc+jNUAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-save {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4UexUIzAAAAIRJREFUWMNjXLhs5X+GAQRMDAMMWJDYjGhyf7CoIQf8x2H+f0KGM9M7BBio5FNcITo408CoA0YdQM1cwEhtB/ylgqMkCJmFLwrOQguj/xTg50hmkeyARAYGhlNUCIXjDAwM0eREwTUGBgbz0Ww46oBRB4w6YNQBow4YdcCIahP+H5EhAAAH2R8hH3Rg0QAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-tap-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3NzIwRUFGMDYyMjE2ODExOTdBNUNBNjVEQTY5OTRDRSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOTJBQzE0RDQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOTJBQzE0QzQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTQ0QzIwMUM1RjIxNjgxMUE3QkFFMzhGRjc2NTI3MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcyMEVBRjA2MjIxNjgxMTk3QTVDQTY1REE2OTk0Q0UiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6eYZ88AAADLklEQVR42rSXf2TUYRzHv7tuGcfE6Vwb5zLSSjEj7Y9KWqfEmFZJP+yPMdKKmUrrn0iUfjhWlLFi6YfNrF+StBoTo39iYkTGco4xxxG59P7k/T2PT8/37nu3bx9ezvPj+zyf5/PreS78bGLS8SmrwE6yje3NHJsDBTALpknBz6JhH3NiYAB0gHqPOVv52wJ6QQ48BzdAttTioRJjdeA8mAHHS2xuk3p+M8M16ipVQE49Ds6CiFO9RLjGONf05QLx6wPQaBlbBlPgJVgkP0ETiIJ2sB/E1XfimjfgBOOlKDUqCGOcqBcQnw6BYW5YTo4wbvQhMmCfGRemC2rBiGXzWUb+kM/NRZ6CHWBM9ce5R61NgX6ayhSJ5EPlItlDRNkz4JbFHf06BkSzHjXxM+gDv1S/mPUo2AXWgt9UUHL/IVhS8yUV1/EbV3o4N+NaoE9Fu/i827K5pNYHnqAVJECShWmAaddpscYFFXwR7vnXBRGlnUN/L6kqKJlxnRUuDbaDBiL+vst5d4gpcpBrqk/2jIgCKVUolhntplzivHmwh4stGOPfwBWwl/2dpp8p7xjQZqFLiQJtauKkivYm+kzccpK57yXfOUe+P23JqAnVbhMFmlXntCWnxbT31am9ZJ4BJifsUmNTqt0cYhA5ypympPg7VkEKunPbVb8cIG+0kyHLJZNR7fUMooUKFHAPkfQo58VLK+RzwRDd4FdWG9mjpaAXzqkJa1R7kQttqEABWXMjOOxxVRfnhRm5URX1prk/0pQHwNcKlchZ+jdpC+hFdVqO0my9Hj5dkYgCn1Rfh/KdlNDHrJhPqlDih+IfBd6qwpOgEqYMsorJ2HtWxtagLJDn/W3KRfPOZhoeBJfZPgVeGKeKrkQBh5dLXl25Ny3pc4/1fkTdbvFqFQgbxWeYD0hXulhQ0pYiM1jG547fcbMQpVnHTZEn9W3ljsCzwHxCdVteNHIZvQa7/7cC7nV6zHIfyFP9EXjFa7YxKAVqPP4bxhhoLWW+z9JyCb6M/MREg59/RlmmXbmneIybB+YC/ay+yrffqEddDzwGvKxxDmzhc0tc80XVgblqFfgjwAAPubcGjAOl1wAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-undo {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4em8Dh0gAAAatJREFUWMPt1rFrFFEQBvDfGhACASshkL/ALpWVrSAKEQV5sIULWlgZNSgIFkGIVQ412gkBt1lYLERREFJqJRaW1oHAoZUQsDqwecWy7N3tbe6C4H2wxc682Zn3zTfvLXPM8b8j6RqYF+UCzsfnHBawGt3fMcAX7GEvS8NgKgXkRbmMxwg41TLsN0psZmnodyogL8pFPMIdLHUk7hA7eJKl4U/rAuKu3+HslFr/FZezNPSTFslX8QErDe4DvMVH/Iq9F7VwGpdwZUjsPtaSFjv/1vCBPjaxO0xcNbHejLpZrrlvJCMCT+JzA+2fcC1Lw+GE4l3CG1yIptfjCtiKoqtiJ0vD3aM0Py/K57iIMxgkQxat4EdN7e9xdRzlk+LEEPvDWvIDXJ928sYxjL36icWK+VaWhlezOIqbGFirJd/H7szugrwoX+D2BDEvszSsT5OBdfRaru/F9dPXQF6U27g/KnmWhgctxqyzBrZGMNGL/rHI0nDkKXiKexXTsywNGx0OnFbFNk3BRoWJXnw//j+ivCi32/S8CxPVNiWOAdUiJtXITIqYY45/Cn8B2D97FYW2H+IAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-wheel-pan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgswOmEYWAAABddJREFUWMO9l09oXNcVxn/n3vc0fzRjj2RHyIZ6ERuy6CarxJtS0pQSCsXNpqGFWK5tTHAwyqIGN7VdEts1LV04BEoxdlJnUbfNogtDCYWQRZOSxtAUCoFiJY0pWJVUjeTKM9LMe+9+Xcyb8ZMychuofeHCffeee7/vnXvOuefYlV/+mv932//tb91z/Y2rvxmMHQ+4FcEfOIGN4A+UwDDwoQScc7vM7AIwB8yZ2QXn3K77Ab6OgJnVgeOSbkqaBiaACUnTkm4Cx3OZzwf+qzcRQup1zNZ9RwDe+0YI4YKZTUn6zCGSMLOfAF/03r+QZdnyfwO+ePEiI6N1nPMgMDMkETLRbd2mXG8gCbd9YiIKIUxLKoLfBN7I+80+CUlTIYTp7RMT0b3Af37p8kh5y9gZcy4Fzt+5szqSaxkzUR7dwtrKMmaGW242d0t6vrD/He/90865o865o977p4F3Ctp4frnZ3L0Z+OryUrVSrZ0z8ZxhHjhcq1XPrS43q/0flDlK9XpPA2ma7gMeyvfPx3H8TJZlH4YQWiGEVpZlH8Zx/Awwn8s8lKbpvmq1ahvB641SXNk6dhLskNA2MIBtwKHK1vGTW8bKMRbAMgyPqWeETxUM8VSSJAv52JmZA0iSZMHMThWwnipXKp8hsLLcSaIR92oU8xjSayCQXotiHotG3Ku3m+0EOQwPQCDggMf7BzQajSs5eAk4B5zLx4O1vD2eJMmAQKliscgASJMw21pansFs1swQ/DNLmUmTMNuXX+taXHTDaj5OW612R1JZ0nFJJ/J+XFJ5aWmpA6S5bHV8fHsPHFU6q3pJCjtFxtrKMuXRLUUXXxdrRLazFOtUolZlsGhmACsgnHPTwJnCnjP5HMBKLotzxsTE9rgDL0t6LoriKsDIaB31ZEK+JxQJRHFUBR2NqLw8OTkZR0OC0ntm9k1JWU7OA4vD/mZ+YfElsANmNEKi75vztzB5M8uAr+bx48me88g757PQ1U5zNg52YH7hX8l6f+4Fi3c3BqHNmkI4YQOV2MGCNu9qHPYCewfzbrC+XSGcWEcgTRKA3wFfyzdDz5d+D3x9CIcfA4eBbQS9LscskgfLnHNPAnslvS/pbZDHLLPADpx9N9fqpSIBH8cxWZY9m6bpb4Ev5fN/iKLo2TRNgdx/eo8Wk5O7Ts/N/SOSdMjHdj4kmgkIEJLJzPZKetvMTkIvFLsR25Ml2gfuF5M7vnA66sdooJYkCSGERe/9VAjhzRxoKk3Tvg3U8nulVqvx8cyNpER2umM+SdOkbc5B8JhpqBdIgTRR24h+lpKen731aRIN7thscH9Zlv0d2F8YD2TIX7F2uw3A7ZWV1a0TYz9ca8cJZHRbuRuaDfUCw9/qJHamPOKToAwHtHN6lMvlSkH2o7wDMDo6WuGuQbbn5+YAKNcb3J5fSvrhtTY+vsOPuD1IOyRhMOkj9kSx29HfXB5RUnS964NT2+3vbGbxG9auO2cDNuV6A8NTb5TitBuOpQkfYD2vwOxgmvBB2g3Hto5X42EJyVsFlztbKpXGNgqVSqUxSWcLU2+tdToa9hasLjfPYlwGa+bTi8Dl1dvNsyvNtQQL9MO2w+HM7BqwlAtPdrvdq9773WAVsIr3fne3270KTOYyS2Z2bbXdHhogKmPj7YWF+VOSXs/v/9KdO+0fVBrjbRkgB/KIDBnYu9f/7D+ZmfmRxPd6qwB8YmZXcq1MAQ/nJhTM+OnDe/a8+PGNG9lm19V/D1Qw7HXZlcRa69+U6w38l5/4ipxzf5X0CPBILjcGPJH34pVcc8692FxcXLlXRnTwwH7+9P4f8aWe3fY59LIqo1NMyQBCCHNmdgx4BegUWefjDvCKmR0LIcz9L8nokSNH+PRvH4HC3YQ098pSbevg24qlmZmNmtmjkg4D3+j/tZldkvQXSa3PW5ptlpL3ZaIN99OS9F7+IgKUgSyEkNyv2nHT7DZX0dr9rpjua2l2r4rogRAYVqZvnPsPqVnpEXjEaB4AAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-wheel-zoom {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgskILvMJQAABTtJREFUWMPdl1+MXVUVxn/fPvf2zrSFmUKnoBCUdjRoVaIxEpO2JhilMYBCtBQS2hejpg1Uo2NUrIFAoyGmtiE+GHwQGtvQJhqDmKYRBv+URFsFDNCSptH60DJTO3dKnX/33rM/H7rvsDu9M20fDMaVnGTvtb69z7fWXmvtc/TEzqd4OyXwNsv/FwFJQVI/sA14SZKRLOlPkr5TrVYXHz70quYkEEK4TtI2YAgYkrQthHDdhV5uuw+43/ZrwCbgRttgY/tjtrc0m83X3/f+D6ydnJhYcB4BSZcBA7aP2d4ELAGW2N5k+xgwkDB0IH19CGGH7R8B1aQeAf4KvAw0ku4K2zu7uru3ApdPEyiKohd4TNKjtjt5h6RHgccSNrddbvuHtm9Jqoak7xVF8WFgdavV+pSk5cCObNmXgK++85prCj3z28HKqZMnH7D9YAY4BvwujT8BvCuL1INX9vVt+dfwcCvNb7f9q2RuSfrGvWu/sL2Nf3LX7pzvj4ENSGBPVarVd4fRkZFltjdmoMGiKO4IIWwIIWwoiuIOYDDzeOPoyMiyFLkum7WJCMDztrcrTTrIRuAQZ6NcK1utL4dWq/VZoC8BhqvV6l1lWb4YYxyLMY6VZflitVq9CxhOmL60hhCKeYiV7WMKIXw9jT1HpXw3c+bOAKzOjJubzebJrKQCQLPZPClpc7bP6rMYKtjXth2OMf7tIkr11Wz8oQDc1Fb09vY+kQw1YAuwJY2nbUluAnCWpKkaFl6IQIzxivaR2SYA89sJVK/Xp2x32R6w/a30DNjuqtfrU0ArYecDCEqgLqm94T0dEm9mBG7PxkdDlkBnkhebgIezNQ8nHcCZPL9ijE1Jf/bZZoPtzbavmqNZLbf9tSxq+yoduuJ+SZ+zXSZyBXCqU+d8fvC5yRUrV+0G2j3g2hDCLyXd/+Su3QdnvP/zCuH72LWsgf2k0oHlH2c2odlkxcpVEdgr6aDtjyb8x20/J+mA7T9I6rL9SWA5dne2/GdXLl58qNJh398An85yTMA+4DOz8Dgu6Zu2dwJXJ91ltm8Gbp7Fgb+EEB4aHhpq5CEtACqVyr3AC0AlPS8k3TSmQ2YPhhBuS/1/LpmS9JTtNTHGfwBU2uUALARotVqniqJYH2Pck85pfavVaufAwnQvnHc0McaDKVptebN94QAnJB0EdtjekydyZXqjs/0ZgLIs/w6sy8bnYGYJ63pgERKC05JutT1kOwITwL9tvzlzUQUYB+Zjs2DBgu6xsbGJZHstByZbezregcBXeCsEz1bnzXt5anLyzLq71zDLxTRdVgemdx0fv2e2w5thO5DbiqL4oKT3ZKpnpyYnz+SY2ZpTAPZmJfdIrVZbNBNUq9UW2X4kU+2dcf53Aj1pj2PA7y/6m1DS00A9za9uNBq7iqJYBuoGdRdFsazRaOzKSqye1rTbaa/tlbYrqXQP2X4FIA9/J1l39xrC0v7+w5IeB8XkwS1lWe6TGJAYKMty31tfO4qSHl/a3384I3CDpI+kzC4lnRfrue6GytEjR8oQwlY73gC0L4qlth/q0M1/LYWtR48cKQF6enrC6dOnVwGLEpnxnp7en4+O1i/tszzGOCTpPmB7ahb57QUwBWyXdF+McWg6MScmuoA8OX8xOlpvXGz422XYTsB/SnpA0h7bX5R0WzI9HUL4qe2XbI+dk3xl+V7gxoztD5jRI+YK/zkEEokx2/uB/RdzIfUtueqVN04cXwF8G3iHY3z9Urw/j8ClyhsnjrcS2Vv/J/8NLxT+/zqBTkcxU/cfEkyEAu3kmjAAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-box-edit {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4QfHjM1QAAAGRJREFUWMNjXLhsJcNAAiaGAQYsDAwM/+lsJ+OgCwGsLqMB+D8o08CoA0YdMOqAUQewDFQdMBoFIyoN/B/U7YFRB7DQIc7xyo9GwbBMA4xDqhxgISH1klXbDYk0QOseEeOgDgEAIS0JQleje6IAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-freehand-draw {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADTElEQVRYCeWWTWwMYRjH/88721X1lZJIGxJxcEE4OOiBgzjXWh8TJKR76kWacOBGxdEJIdk4VChZI/phidRBHMRRIr7DSUiaSCRFRM3u88gz+o7Z6bBTdjmYZPf9eJ55fv/5zzvvDPC/H9QsA66Olo9Ga+/MdR+Ljm2/KQIULsz9FqItGdOfJKLhApLgVkiSCGODjWit7QpKWy+TNrFeXvzKVUT8NiTVaIgDcbiCFJ7GiT8WkARXAdYBK0Lbhi/CenArRNskuM7/tgNp4ArQ42dwjf3WY5gWTqC7O/NbNn2Xkfw/YwdSw/We14HP2IEZwX+y9cZ9SH0LmgFP7UCz4KkENBNeV0Cz4b8U8DfgKiDxMWwUXETqLvJpCQpXZfawbzS7t9v5pL19cHBwfja7YA0y/lyCM0+E5hv5+piZXwKYcF23as+37bTXsQVqgkL0p/34fHR7DcBtbetFsBmGDwMOJCggYG55yw7dMlk6DuC1Bdu2RsCU9TYWQq2IoGbsreZ5NzvEqfSBsIsIy8OTbcdgiRHeh4o8AFAEwDakbY2AaCCpH7V9aGhoUUUy3UyVbkPYFuYLDlUZH8XBpwxkK0Dbgxg5HcVi0ent7a0RULMIozaHBSMfF9b2SzdutFcFB2FkwMIJOG6qfteXOa1nHZ48tyefuwyfT9s6wtzZ3t7eZse2DR2I228TtHXzuWCx9g8MtK5cuHCZTH4tiHEOa4xFngvTyS8f35d6enomiCi4/foEXBkZaQuukChL4FYA2Whd7YcC4gEdW3CpdL3LtGAVCVYJywEyTpAuJKeMOKXZs/Bw947C50KhUFOG4cwz35cjWNBlHGeD53n3xsfHP/T19U1qciggar8Fa4I3PHobIotBWBtc2hSiChyZxVzM53Pv7FVH6Tp3uVy+g0r1ImD2GjIrQGYIxjnfuXTZGICS5k/bBwJoubwEFX4TLah9EXomJGMA3za+f9913Yl4TnzsDQ+vE6YTZOjHh4ngibstt1pzQwd04F0bPStEBpXqRoBeQ/AKghfBnOEKgS+Q7z91Xfdz/HGKg8Ox7z8iYD9z6wqTkZFgnvhMGP9VZ2or1XVkPM9z0mytSfVsHa1RLBZbLoyNzUnK+ydz3wC6I9x+lwbngwAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-poly-draw {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjglo9eZgwAAAc5JREFUWMPt1zFrU1EUB/DfS4OmVTGDIChCP4BgnQXRxVHqIJUupp9AB8VBQcRBQUXIB9DWQoMRiXZzcnQSA34A7aAuHSJKkgo2LvfBrU3aJnlYkBy4vHcP557zP/9z3r33JdXa647N0kHSZd5Nn0rSxc8G3cXp85sMcnZZ8vge3osZ+l3vB8CWFA0iL14t79h210swAjACMAIwAjACkB90D/8/GchI9ve4nPwTBh5E9ws7OepzGWb9EddSn51Op9ZstadSg4VK1UKlKkmSDSMLALewiuNh/hVJq71Wxttmqz0dG88vPc+MgWP4grvYG3SLOBrZFFFrttqPe4HIDxh4GSei+98iSlusuYopXEAjBtEPA3tQwUpwluAbDm4TPJUz+BTW9l2Ce6G7L0X/Bw8D3T/7SKKIDzHg7QCcxjvcQAEtXAnrrg/RP0/DKPbqgcN4iVOR7gcO4dcQgRuoh7HSqwlP4n20m63jJu5n8MkWMYfP3UowhzdR8FU8w9iQwevBdyq3/27CMRzAE5yLuvsRLg+ZcR1nJ8YL81HWJUzGAPaFZwe/Q5MdyYDyNHgjzO90YyGHtVDncuiJchaHw8R4oREFV5qdiVmYLM3OgD9k5209/atmIAAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-point-draw {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEiERGWPELgAAA4RJREFUWMO1lr1uG1cQhb9ztdRSP7AF1QxgwKlcuZSqRC9gWUUUINWqTh5AnaFOnVPEteQmRuhCURqWsSqqc9IolREXdEvQBElxtdw7KURSFEVKu4w8wAKLxdw9Z+bMnRmZGXfZ29//II8th4WwGVNyIoQLYB5vxA9Caq04iUd9A+7ZlsNC2I7TdSd2hZXMJKlnTqp9jtl/GBaqoyQ0noFKpUIzBicYYc+DEFpxkglc4oVJa5gvDn8v1xV2irG3FM4NSVwjUKlUaMcpJhCGmSEJQ6QGD8M5WnHCd8+f3QCXpPLx8WNwv0j6Bm9FMK7FJ3WBE+R/2t7c/GBmFvSBrzRTCsyTDjXrxUgEMtpxynJYmJoBJ4VAybwVARgvL7Oik0okCodnKpVKX7P0leiVMb0VvbJT+upznK4vh0GIeQwwQStJkHQD3MwsCALTJRG7Qrdrj5m/djgYaIa0hlkRdJk26XEgC9txurccBtVW3IudBImmZuACUP+ZlIDBt9FKcubYNTcAH/X0RYM1E7utJPlqe+uZzPxUcEkiSS4sTT95n15Mud0xWC0o2PAWOCdK3KYZlFxfM+tHOcnMzNr1es18ug+cgsVjP4yBU/Ppfrter1m/+l0+zYygML1xRVHU7TSb1cSzBzoBzszsH+AMdJJ49jrNZjWKou6wBnwOzcyndBpNbuueURR1Dw8Pq35p9cc5p/Dy9Dypt7jXrtdGwQECS9NPhr6Gq6txUzNigE6zydLK6lTw12/KT4FGFEUfJX2YJNONq5tVs4ODA7sD/DnwJ/BoADZuE3tHFs12dna6d4C/BI6AlbyzI8ii2TTw12/KK33gb2cdXsNZoAntbZC2SeO4c9592k/5eNQbiwvFd1kJuFGwLJr1wSPg/SwpvyFBHufOeXcFeAlE97U/uCxOY+P3b+Bn4B3Q+L8EdJfD4a+/AbC4UBzPxiPg3wlHZquB28Cn2IuR9x3gr3uV4DbwfvSDOvi4uFA8BDZmIRHkjHpS9Ht9iRqd8+5G3g05mAGcQbsdiX5QJ428G7Kygo8XYdb1/K4NWVmjzkNge2sz84bs+ELmpDDLtqWsNZBXgvmw8CTtpWVMT7x5YWBjLARnwZfKQNYN2U2LPvrh+5nBt7c2M2/It9bArCTKR8eZN+SJ13AScPnoODeRdqNenH+wul5w2gUr2WUjMFAt8bZ/0axX/wNnv4H8vTFb1QAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-poly-edit {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gELFi46qJmxxAAABV9JREFUWMOdl19vFFUYxn9n9u9sCyylUIzWUoMQBAWCMdEEIt6xIRQSLIEKtvHe6AcA4yeQb7CAUNJy0daLeomJN8SEULAC2kBBapBKoLvbmdl/c14vdmY7u91tF95kknPOnHmf95znPc97Ro2OTeBbdjFDT3c32ZxVHUOE9kSMB0/m6ExuoJn1H+ur6Y+OTfD50SMN5168OgrAlyf7CfuD+z7+iDs3p8hkLUQ0iFQ/yFl5Nm/qonfHVva+s32Zw9GxCYILsZ08tpNfBhbs+1YN4OH9+7huGdECSBVfqUosbsllfmauBqiR+cCNwOr7AEo8pPHJnymXykhg5fUWjoQpl0vVvhZhbSzGoUOHqgBlt6B6uruj2Zy1E9jo0fhfeyL2x4Mnc8VErK0KUEOB64JSyptfG4RSytsJjUJVxw2lsFy3urL9nx1Qd25ObctkrVMi+jQivd7U2ZyV/3Hzpq7h3h1b/7p9Y0o8v8rwAbTWrGpSocN/FGDlbAI0Rl23PCBan0Ok158H9Ipwzi25A/Mzc9Gl/BYx/E4kYqC1NKRARNAaDCNUM27Z+Zr+ouXs0q4+LSLBHPYCFkTkC6uU39kwCdsS7WRKmaYUiAhdnZ3MPX2K4+QjQI+C94A93rMzm8ltMwyDeDzWjMZeEb2pYQDdW3vITU2jtUZ5QThOPgm8C7wP7J15OPsBsB3oWpGnVWisCeDS1VHj4vBI92+/3tgB7Ab2AruAXiDBK5oIOkhtkEYRNRuJhObrd8Dl9ewf4D5wG7hVLpen29vb5wzD+BrkbBMaL3d1dk5nsrnlFDTTFWAWmAZueWD3gCemGde2k2fw1Al1YXhEvjozoO49eczdqekrWmsc2zlrmvEKOGoW1GUjFLqSk2KpJrCLwyMCPAP+BO54QL8DM6YZX/ClsP9YnwKkXnIBP4jdIpJRpdJTCYdMwwi98KU0Hjc/dDILNyUcwTCWdOSMJ0TRmBktGRhLugu0xyLk7CIqVNm+0bGJptl1YXikD0grpY4Rjc4a8Fbgdab/6OGbAJeCUuyJnnHmZH9pbSyGuBXV8NUwlUpR1EWyixmSyTWEwqGlJ2Swbo2JXbAAfgDGgGQA9I1A9t1tlq0AxrXxn0ilUpw4fhQqYkH/sT41OTnJJwf2s6FjI5mshdYa7bqVR2uezr9MJmJt14FvGrh/O9D+e6UkM/xyCuCqEKCYnJyUTKFQrZDHjxzGshwWLQcRsOz8Hi85P23id0ug/XilAMLBmm4tPGdoaKjSH5+oAGrhwvBI9SjZTn4QSK9yenoD7dlrExPoJlXW8G8ytpNHxRKk02lGxsdRKFwXLNvx5yY94HQLGhGk4LFCYQSqaE0AwWM1eOoEbR0dKBSW7bC4mKuffxs4D/wCLKwQQPAUzIkslfp6cVomROWSolh0GjldAM4nzDi2k9/i5UAzC9aKfwNJ3zgJg9YEvN6+C7SHgKm69+sD7RfNnKTTaZRPQfAut4oFV//IS7gkcB34VlVo8kGzphlfB+DU+TfNGBpZtRastvrvARJmfMF28ge9sc2B9/PNnCilMIDwK6y8/ow/Ai4kvILTljAXvDvEvrqKSUs60KolzPjBxspavQD2tKqCAGF/Ba+xE/Wbilu54wZV8NEKF5fXzQHl/bh4hUsE0WAXSlDMYcQSrQXgCmsTseXHsJkNnjqBFGwKJaHsKlxtUHYVhbLCzr1kaOA4bcn1y1Swmb+iLpJKpVrfgdpfsiVVCYcgluwgnU7jEgJ4s5UkLFtWYyHyEg0/N1q1tmQH+YXnAMFr97Nmv3p+0QsHQRsF8qpBOE5+rb9Nkaj50tVQKjqh4OU3GNL/1/So3vuUgbAAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-line-edit {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAG/3pUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjarVdpknSpDfzPKXwEJBDLccQW4Rv4+E4BtXR198znCdeLLijgQUoppWg3//Pv5f6FDwefXJRcUk3J4xNrrKzoFH8+pyUf9/f+8J3C7y/j7jnBGApow/mZ5l2vGJfXCzne8fZ13OV+9yl3ozvx2DDYyXbauCDvRoHPON3frl5Imt7MuX8hH0seiz9/xwxnDMFgYMczUPD7m89J4fwp/iK+OVRbiMf6gm8K4bv/3NN1Pzjw2fvwn+93PLzccTZ6mJU+/HTHSX723/bSOyLi58n8jmiqz/798+a/tUZZax7rNCKOakzXqIcpu4eFDe483kh4Mv4E/byfiqd49R2OHzC1Od/woxLD44siDVJaNHfbqQNi5MkZLXPnsMdKyFy5gwwCHXhocXahhhEK+OhgLmCYn1hon1vtPBxWcPIgrGTCZrR5fHvc58A/fb5stJaFOZEvT18BF1t8AYYxZ99YBUJoXZ/K9i+50/jPjxEbwKBsNxcYqL6dLZrQK7bC5jl4cVga/Ql5yuNuABfhbAEYCmDAJwpCiXxmzkTwYwE/CuQcIjcwQOKEB1ByDCGBnMJ2Nt7JtNey8BmGvIAICSlkUFODgqwYJSbkW0EIqZMgUUSSZClSRVNIMUlKKSfTKc0hxyw55ZxLrllLKLFISSWXUmrRyjVAxsTVVHMttVZVHKpRsZdivWKgcQstNmmp5VZabdoRPj126annXnrtOniEAQlwI408yqhDJ02E0oxTZpp5llmnLsTaCisuWWnlVVZd+mTtsvqVtU/m/po1uqzxJsrW5RdrGM75sQWZnIhxBsY4EhjPxgACmo0zXyhGNuaMM185uBCEgVKMnEHGGBiMk1gWPbl7Mfcrbw7e/V9545+Yc0bd/4M5Z9S9Mfedtx9YG7rlNmyCLAvhUyhkQPrNhvO5AJFnrZIR0plaLL5liQYdDi5TubaIokFDkmoFEB8CzxZVxemssDqthPhUblPgW1iQU5g6XwNwyVI7bUFRm035iNziMkgWvEso2SXnsJfveR0Y4SlVF8YWC1pVQhJiQa8JwDvlMNIxAfq3F7GDObHU1LlhzlZaWwNp6BvACxAgInGXlllMGZCpEnZHrGA6GM2718xuFcz7YdUQxzEEfjdWz4GlkcwaonT0pgA6mB25grPILtnSMhuCpsGhmMU6uJbixJs4lbKHqh+wos1jW2rchyGRCIvN9MXu+KAmMSfAlIKVvi/tybhCPJZCu2Ow9pLdyo427+X2ovMBmKNu8PA0zgl3fS0PB1DWWkVYB47bkyiJHhkFPzTzCjzn4Dq1mqoIWzCmcDGsHQmQAQdEHsixK1IXESd5rLU7THVJNV8obHS8sZeN0G5Jdt5pQTVKCCbgK1hItTS8o92iEZpuWJ/oC2r/0+zTmhvFXoaMVKRe27altDtid6OvG1hENVwBnC61KKugNoemOiPCCNb3GoHAZOFuDxxPsD+07nbSPcr/o1Zmc4jARhotrA5F5ZcjP9rPk90vR8A+k028A+8+5wKlHVID542sMzMCuXktkRzUCpE+xCBZywjNcJITx0II9x5948CekBl4XaC5OCX2nCyObdwN3HwQh5DWL/BBEkhDYHn/vpXNgZkVTZs8rj+HO8JFC6qvDVhgAEQSYCDyC86rMhG1WPzAVB9ZldDWG6EzDcFiqJBDvFS8mXDv3SK2LPoguVB2kwUx7UL5KqZWiEzocsbvSjNnaYDNtcYJuA5cDcsrvHd6yCxGjqvl9+wh3Qh8Kc9py8sNW8ncU8qwxdPj1qIGfrPqlXeoS4/JLa/LwRLTCtxuSoZUT+2Su6kXW3QNacYQbId6NUKVbROpviybFSPQQL9lhB2MamEnFyB9Y+hrG1+xBg+L0QG2TZdTdlcsBdq9oHdt9Bu5/IM9+Nfh1AwrSqlboTA6Bgq568A7UfbaMrZjoQZhQphofvNw93+bN+5X7FYKBgLmRid+tSdV6c02A4R0cHwKobmoMt5+6WI9XNISFIywpf6RMd5/a91vE78FzVHIFmxud4woyJx76OMTCa4yhgN3iJO2VfRPFMv9sYTxFzU+1eWeYS52pwOoSJldZY6koib4P1O427rbeUrNZfu44hWjz5ZSuu/vKPpimoXbLkfxWSPetvxDWG5jQSaZCxA3ad+p6rlttDhK+YwwK1LHVe0drDtorc5vnQ1247g58vewDtU7L3DRwrG4dhCUDRKKOtYr2dXHtpt+33d1WZmfkAHdl7Q8ENF+CNgB+nOw29n5F7SeNo/ckbu4laLTCdqJLHjmhJbKzmrCEX7zULrhefuHmu0V/1nbP1pnb6FaT7sOxn4pvWkfrYhYtCeJ4Xv+kOXrroIs1eHWXN1/AfzaY94ms5vaAAABg2lDQ1BJQ0MgcHJvZmlsZQAAeJx9kT1Iw0AcxV/TSkUqDnYQUchQnSyIijhqFYpQIdQKrTqYXPoFTRqSFBdHwbXg4Mdi1cHFWVcHV0EQ/ABxcnRSdJES/5cUWsR4cNyPd/ced+8AoVFhmhUaBzTdNtPJhJjNrYrhV4QwjAgGIMrMMuYkKQXf8XWPAF/v4jzL/9yfo1fNWwwIiMSzzDBt4g3i6U3b4LxPHGUlWSU+Jx4z6YLEj1xXPH7jXHRZ4JlRM5OeJ44Si8UOVjqYlUyNeIo4pmo65QtZj1XOW5y1So217slfGMnrK8tcpzmEJBaxBAkiFNRQRgU24rTqpFhI037Cxz/o+iVyKeQqg5FjAVVokF0/+B/87tYqTE54SZEE0PXiOB8jQHgXaNYd5/vYcZonQPAZuNLb/moDmPkkvd7WYkdA3zZwcd3WlD3gcgcYeDJkU3alIE2hUADez+ibckD/LdCz5vXW2sfpA5ChrlI3wMEhMFqk7HWfd3d39vbvmVZ/P2aecqIM1FFZAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AQdDBkQmV+argAABM5JREFUWMOtl9trHFUcxz9n9jYzm7Tb9JIWGtqUllLwVgRBQWl90S6lTaGmF6E2/4H+A4r+A0offdlWodL4kEZw9bG+iC9iKqLF0os0EBq02dtcdmdnfj7szGZ2M5vulv5g4JwzZ873+7ufUfMLi0RSa1TZNzVFrW511xBhzMxx79EyOwrbGSSzZ073zOcXFnlv5lTi3mvfzAPwwYVZ0tHiq6+/xu+/LlGtWYgEINL9oG657N41yfSRgxw9cHjDgfMLi8QVsR0X23E3gMXnkXQJ3L9zB99vI4EA0sVXqsPF93xW7y73ACVJBJwE1j8HUBIi3Sz/QNtrIzHN+yWdSdNue915IMKWXI4TJ050Adp+U+2bmkrV6tZeYAXwEJExMyf3Hi0rM5fvAvS4wPdBKRW6vZeEUiq0RIBCddddpymu0+rRbPvEzkPVmmWLBA1EdGAbYNctt7V712QwfeSgd/uXJQnPVVoEEAQBTxXpuEMELNtNNFW1WrsrQdBCRImQEeE/wBUh53v+7tW7y5n1+BZRIoJSioXvy3itdgclURSZTBrP87AdV57G1TT0d4GPgC+Bw8Ca7bifATsTgzBvjlH1qgNdICJM7tjB8soKw4jtuD+Gw3c229e1wF+P/uHPpT86rhBBRHActwAcAl4EjgIvAYcFJnlOoq5dv6EBU8AR4OUQ6AVgGjATwuC5YUdZ4A+z+1mBTUM/AKwqpZSIpPfu2VP7+/6DYEMMPE9N83lzq23ZWwxDd4GaQnmgUloqperSCpKC8HGCXz8G7NANU8CWUKPzsUDbyLPVyjYC39e0VMZx3Ccoha4b4lQqbUlnsBqNWCXpEMgKfA38DNSBcdPQr4zlMtTtFiqlulmQmJv9ks2idUZGZMjZmZMAfBUvxWHR0y5dmPV2FcbPG9ncFdPQS3nTuAJQLBZpBS1qjSqFwjipdGr9SWlsHTewm9ZmnngMKAaV9nBd+/bmdxSLRc6dnemm3+yZ06pcLvPGW2+yfWIn1ZpFEAQEvt95goCV1TXMXH4zAt4woaRF7RTAVylAUS6Xpdpsdjvk2VMnsSyHhuVEZTh+xgywBhwLfZIdKRfj7dWqPGFubq7T428ukslkaHttLNsZ9P3nwIfh+DhwS4EO9DA0zByBCE2n1fPxpQuznSCaX1js9nFp2pjbtqGhobQ0jUY9CbgALERah3IM+El1rNqTaqaph5W1uYGAFrfA5YvnyE9MoFBYtjMI/BXgQR/4pqVDZL3V9/cYrX+x7SnsXh/H5TLwW2iBQbVLNgn65CDsrSPOIJOXwmdQ4fRHrZilUqmXwNXrNzbbfxv4ArgFVBLeJ95oDEMHwHHcvvUcRqEwuBf0SSUEB9gfxsAgAkO1kcj/WvwKPaR8EhvPAUvRtdIMtR1FtBH37w8DEeChaehXw/xfAnzHcVOjEkhHrIe0Qlz7T8PuWLEd9+2w9KphgUUgQJ7JAgAPDT13NTrJyOYqIilrlEwQv/NPMTSByxfPIU37eCqtq2zWmPYDjbavaLYVdn2NuffPjqRJK2hRLBaHzoK+X7L1QE+nIFeYoFQqkTVMaTn2UOe1LWtwEJqGzqgRnS9M4Fb+3XBJGfSrFzW9dBw0icioJBzHzUXdMJM18APwWo6Kmy1O6X+V8UHDotBqogAAAABJRU5ErkJggg==\");\\n}\\n'},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),s=t(72),o=t(303),l=n.__importStar(t(282));class h{constructor(t,e={}){this.items=t,this.options=e,this.el=s.div(),this._open=!1,this._item_click=t=>{var e;null===(e=this.items[t])||void 0===e||e.handler(),this.hide()},this._on_mousedown=t=>{var e,i;const{target:n}=t;n instanceof Node&&this.el.contains(n)||(null===(i=(e=this.options).prevent_hide)||void 0===i?void 0:i.call(e,t))||this.hide()},this._on_keydown=t=>{t.keyCode==s.Keys.Esc&&this.hide()},this._on_blur=()=>{this.hide()},s.undisplay(this.el)}get is_open(){return this._open}get can_open(){return 0!=this.items.length}remove(){s.remove(this.el),this._unlisten()}_listen(){document.addEventListener(\"mousedown\",this._on_mousedown),document.addEventListener(\"keydown\",this._on_keydown),window.addEventListener(\"blur\",this._on_blur)}_unlisten(){document.removeEventListener(\"mousedown\",this._on_mousedown),document.removeEventListener(\"keydown\",this._on_keydown),window.removeEventListener(\"blur\",this._on_blur)}_position(t){const e=this.el.parentElement;if(null!=e){const i=e.getBoundingClientRect();this.el.style.left=null!=t.left?t.left-i.left+\"px\":\"\",this.el.style.top=null!=t.top?t.top-i.top+\"px\":\"\",this.el.style.right=null!=t.right?i.right-t.right+\"px\":\"\",this.el.style.bottom=null!=t.bottom?i.bottom-t.bottom+\"px\":\"\"}}render(){var t,e;s.empty(this.el,!0);const i=null!==(t=this.options.orientation)&&void 0!==t?t:\"vertical\";s.classes(this.el).add(\"bk-context-menu\",\"bk-\"+i);for(const[t,i]of o.enumerate(this.items)){let n;if(null==t)n=s.div({class:l.bk_divider});else{if(null!=t.if&&!t.if())continue;{const i=null!=t.icon?s.div({class:[\"bk-menu-icon\",t.icon]}):null;n=s.div({class:(null===(e=t.active)||void 0===e?void 0:e.call(t))?\"bk-active\":null,title:t.tooltip},i,t.label)}}n.addEventListener(\"click\",()=>this._item_click(i)),this.el.appendChild(n)}}show(t){if(0!=this.items.length&&!this._open){if(this.render(),0==this.el.children.length)return;this._position(null!=t?t:{left:0,top:0}),s.display(this.el),this._listen(),this._open=!0}}hide(){this._open&&(this._open=!1,this._unlisten(),s.undisplay(this.el))}toggle(t){this._open?this.hide():this.show(t)}}i.ContextMenu=h,h.__name__=\"ContextMenu\"},\n",
       "      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const t=e(9);function*r(e,n){const o=e.length;if(n>o)return;const r=t.range(n);for(yield r.map(n=>e[n]);;){let f;for(const e of t.reversed(t.range(n)))if(r[e]!=e+o-n){f=e;break}if(null==f)return;r[f]+=1;for(const e of t.range(f+1,n))r[e]=r[e-1]+1;yield r.map(n=>e[n])}}o.enumerate=function*(e){let n=0;for(const o of e)yield[o,n++]},o.combinations=r,o.subsets=function*(e){for(const n of t.range(e.length+1))yield*r(e,n)}},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(296),i=e(173),s=e(72);class c extends o.ButtonToolButtonView{render(){super.render(),s.classes(this.el).toggle(i.bk_active,this.model.active)}_clicked(){const{active:e}=this.model;this.model.active=!e}}n.OnOffButtonView=c,c.__name__=\"OnOffButtonView\"},\n",
       "      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),s=t(19),l=t(72),n=t(115),a=i.__importStar(t(18)),r=t(78),_=t(9),c=t(13),h=t(8),u=t(81),v=t(306),d=t(307),b=t(308),p=t(295),g=t(299),f=t(310),m=t(173),w=i.__importDefault(t(300)),y=i.__importDefault(t(311));class T extends u.Model{constructor(t){super(t)}static init_ToolbarViewModel(){this.define({_visible:[a.Any,null],autohide:[a.Boolean,!1]})}get visible(){return!this.autohide||null!=this._visible&&this._visible}}e.ToolbarViewModel=T,T.__name__=\"ToolbarViewModel\",T.init_ToolbarViewModel();class k extends r.DOMView{initialize(){super.initialize(),this._tool_button_views=new Map,this._toolbar_view_model=new T({autohide:this.model.autohide})}async lazy_initialize(){await this._build_tool_button_views()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.tools.change,async()=>{await this._build_tool_button_views(),this.render()}),this.connect(this.model.properties.autohide.change,()=>{this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change()}),this.connect(this._toolbar_view_model.properties._visible.change,()=>this._on_visible_change())}styles(){return[...super.styles(),w.default,y.default]}remove(){n.remove_views(this._tool_button_views),super.remove()}async _build_tool_button_views(){const t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;await n.build_views(this._tool_button_views,t,{parent:this},t=>t.button_view)}set_visibility(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)}_on_visible_change(){const t=this._toolbar_view_model.visible,o=g.bk_toolbar_hidden;this.el.classList.contains(o)&&t?this.el.classList.remove(o):t||this.el.classList.add(o)}render(){if(l.empty(this.el),this.el.classList.add(g.bk_toolbar),this.el.classList.add(m.bk_side(this.model.toolbar_location)),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){const t=\"grey\"===this.model.logo?f.bk_grey:null,o=l.a({href:\"https://bokeh.org/\",target:\"_blank\",class:[f.bk_logo,f.bk_logo_small,t]});this.el.appendChild(o)}for(const[,t]of this._tool_button_views)t.render();const t=[],o=t=>this._tool_button_views.get(t).el,{gestures:e}=this.model;for(const i of c.values(e))t.push(i.tools.map(o));t.push(this.model.actions.map(o)),t.push(this.model.inspectors.filter(t=>t.toggleable).map(o));for(const o of t)if(0!==o.length){const t=l.div({class:g.bk_button_bar},o);this.el.appendChild(t)}}update_layout(){}update_position(){}after_layout(){this._has_finished=!0}}function M(){return{pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}e.ToolbarBaseView=k,k.__name__=\"ToolbarBaseView\";class B extends u.Model{constructor(t){super(t)}static init_ToolbarBase(){this.prototype.default_view=k,this.define({tools:[a.Array,[]],logo:[a.Logo,\"normal\"],autohide:[a.Boolean,!1]}),this.internal({gestures:[a.Any,M],actions:[a.Array,[]],inspectors:[a.Array,[]],help:[a.Array,[]],toolbar_location:[a.Location,\"right\"]})}initialize(){super.initialize(),this._init_tools()}_init_tools(){const t=function(t,o){if(t.length!=o.length)return!0;const e=new Set(o.map(t=>t.id));return _.some(t,t=>!e.has(t.id))},o=this.tools.filter(t=>t instanceof p.InspectTool);t(this.inspectors,o)&&(this.inspectors=o);const e=this.tools.filter(t=>t instanceof b.HelpTool);t(this.help,e)&&(this.help=e);const i=this.tools.filter(t=>t instanceof d.ActionTool);t(this.actions,i)&&(this.actions=i);const l=(t,o)=>{t in this.gestures||s.logger.warn(`Toolbar: unknown event type '${t}' for tool: ${o}`)},n={pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}};for(const t of this.tools)if(t instanceof v.GestureTool&&t.event_type)if(h.isString(t.event_type))n[t.event_type].tools.push(t),l(t.event_type,t);else{n.multi.tools.push(t);for(const o of t.event_type)l(o,t)}for(const o of Object.keys(n)){const e=this.gestures[o];t(e.tools,n[o].tools)&&(e.tools=n[o].tools),e.active&&_.every(e.tools,t=>t.id!=e.active.id)&&(e.active=null)}}get horizontal(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location}get vertical(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location}_active_change(t){const{event_type:o}=t;if(null==o)return;const e=h.isString(o)?[o]:o;for(const o of e)if(t.active){const e=this.gestures[o].active;null!=e&&t!=e&&(s.logger.debug(`Toolbar: deactivating tool: ${e} for event type '${o}'`),e.active=!1),this.gestures[o].active=t,s.logger.debug(`Toolbar: activating tool: ${t} for event type '${o}'`)}else this.gestures[o].active=null}}e.ToolbarBase=B,B.__name__=\"ToolbarBase\",B.init_ToolbarBase()},\n",
       "      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(296),n=e(304);class u extends s.ButtonToolView{}t.GestureToolView=u,u.__name__=\"GestureToolView\";class _ extends s.ButtonTool{constructor(e){super(e),this.button_view=n.OnOffButtonView}}t.GestureTool=_,_.__name__=\"GestureTool\"},\n",
       "      function _(o,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=o(296),i=o(15);class s extends e.ButtonToolButtonView{_clicked(){this.model.do.emit(void 0)}}n.ActionToolButtonView=s,s.__name__=\"ActionToolButtonView\";class c extends e.ButtonToolView{connect_signals(){super.connect_signals(),this.connect(this.model.do,o=>this.doit(o))}}n.ActionToolView=c,c.__name__=\"ActionToolView\";class l extends e.ButtonTool{constructor(o){super(o),this.button_view=s,this.do=new i.Signal(this,\"do\")}}n.ActionTool=l,l.__name__=\"ActionTool\"},\n",
       "      function _(o,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=o(1),l=o(307),s=i.__importStar(o(18)),n=o(309);class _ extends l.ActionToolView{doit(){window.open(this.model.redirect)}}t.HelpToolView=_,_.__name__=\"HelpToolView\";class r extends l.ActionTool{constructor(o){super(o),this.tool_name=\"Help\",this.icon=n.bk_tool_icon_help}static init_HelpTool(){this.prototype.default_view=_,this.define({help_tooltip:[s.String,\"Click the question mark to learn more about Bokeh plot tools.\"],redirect:[s.String,\"https://docs.bokeh.org/en/latest/docs/user_guide/tools.html\"]}),this.register_alias(\"help\",()=>new r)}get tooltip(){return this.help_tooltip}}t.HelpTool=r,r.__name__=\"HelpTool\",r.init_HelpTool()},\n",
       "      function _(o,_,l){Object.defineProperty(l,\"__esModule\",{value:!0}),l.bk_tool_icon_box_select=\"bk-tool-icon-box-select\",l.bk_tool_icon_box_zoom=\"bk-tool-icon-box-zoom\",l.bk_tool_icon_zoom_in=\"bk-tool-icon-zoom-in\",l.bk_tool_icon_zoom_out=\"bk-tool-icon-zoom-out\",l.bk_tool_icon_help=\"bk-tool-icon-help\",l.bk_tool_icon_hover=\"bk-tool-icon-hover\",l.bk_tool_icon_crosshair=\"bk-tool-icon-crosshair\",l.bk_tool_icon_lasso_select=\"bk-tool-icon-lasso-select\",l.bk_tool_icon_pan=\"bk-tool-icon-pan\",l.bk_tool_icon_xpan=\"bk-tool-icon-xpan\",l.bk_tool_icon_ypan=\"bk-tool-icon-ypan\",l.bk_tool_icon_range=\"bk-tool-icon-range\",l.bk_tool_icon_polygon_select=\"bk-tool-icon-polygon-select\",l.bk_tool_icon_redo=\"bk-tool-icon-redo\",l.bk_tool_icon_reset=\"bk-tool-icon-reset\",l.bk_tool_icon_save=\"bk-tool-icon-save\",l.bk_tool_icon_tap_select=\"bk-tool-icon-tap-select\",l.bk_tool_icon_undo=\"bk-tool-icon-undo\",l.bk_tool_icon_wheel_pan=\"bk-tool-icon-wheel-pan\",l.bk_tool_icon_wheel_zoom=\"bk-tool-icon-wheel-zoom\",l.bk_tool_icon_box_edit=\"bk-tool-icon-box-edit\",l.bk_tool_icon_freehand_draw=\"bk-tool-icon-freehand-draw\",l.bk_tool_icon_poly_draw=\"bk-tool-icon-poly-draw\",l.bk_tool_icon_point_draw=\"bk-tool-icon-point-draw\",l.bk_tool_icon_poly_edit=\"bk-tool-icon-poly-edit\",l.bk_tool_icon_line_edit=\"bk-tool-icon-line-edit\"},\n",
       "      function _(o,l,b){Object.defineProperty(b,\"__esModule\",{value:!0}),b.bk_logo=\"bk-logo\",b.bk_logo_notebook=\"bk-logo-notebook\",b.bk_logo_small=\"bk-logo-small\",b.bk_grey=\"bk-grey\"},\n",
       "      function _(l,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});o.default=\"\\n.bk-root .bk-logo {\\n  margin: 5px;\\n  position: relative;\\n  display: block;\\n  background-repeat: no-repeat;\\n}\\n.bk-root .bk-logo.bk-grey {\\n  filter: url(\\\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale\\\");\\n  /* Firefox 10+, Firefox on Android */\\n  filter: gray;\\n  /* IE6-9 */\\n  -webkit-filter: grayscale(100%);\\n  /* Chrome 19+, Safari 6+, Safari 6+ iOS */\\n}\\n.bk-root .bk-logo-small {\\n  width: 20px;\\n  height: 20px;\\n  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAOkSURBVDiNjZRtaJVlGMd/1/08zzln5zjP1LWcU9N0NkN8m2CYjpgQYQXqSs0I84OLIC0hkEKoPtiH3gmKoiJDU7QpLgoLjLIQCpEsNJ1vqUOdO7ppbuec5+V+rj4ctwzd8IIbbi6u+8f1539dt3A78eXC7QizUF7gyV1fD1Yqg4JWz84yffhm0qkFqBogB9rM8tZdtwVsPUhWhGcFJngGeWrPzHm5oaMmkfEg1usvLFyc8jLRqDOMru7AyC8saQr7GG7f5fvDeH7Ej8CM66nIF+8yngt6HWaKh7k49Soy9nXurCi1o3qUbS3zWfrYeQDTB/Qj6kX6Ybhw4B+bOYoLKCC9H3Nu/leUTZ1JdRWkkn2ldcCamzrcf47KKXdAJllSlxAOkRgyHsGC/zRday5Qld9DyoM4/q/rUoy/CXh3jzOu3bHUVZeU+DEn8FInkPBFlu3+nW3Nw0mk6vCDiWg8CeJaxEwuHS3+z5RgY+YBR6V1Z1nxSOfoaPa4LASWxxdNp+VWTk7+4vzaou8v8PN+xo+KY2xsw6une2frhw05CTYOmQvsEhjhWjn0bmXPjpE1+kplmmkP3suftwTubK9Vq22qKmrBhpY4jvd5afdRA3wGjFAgcnTK2s4hY0/GPNIb0nErGMCRxWOOX64Z8RAC4oCXdklmEvcL8o0BfkNK4lUg9HTl+oPlQxdNo3Mg4Nv175e/1LDGzZen30MEjRUtmXSfiTVu1kK8W4txyV6BMKlbgk3lMwYCiusNy9fVfvvwMxv8Ynl6vxoByANLTWplvuj/nF9m2+PDtt1eiHPBr1oIfhCChQMBw6Aw0UulqTKZdfVvfG7VcfIqLG9bcldL/+pdWTLxLUy8Qq38heUIjh4XlzZxzQm19lLFlr8vdQ97rjZVOLf8nclzckbcD4wxXMidpX30sFd37Fv/GtwwhzhxGVAprjbg0gCAEeIgwCZyTV2Z1REEW8O4py0wsjeloKoMr6iCY6dP92H6Vw/oTyICIthibxjm/DfN9lVz8IqtqKYLUXfoKVMVQVVJOElGjrnnUt9T9wbgp8AyYKaGlqingHZU/uG2NTZSVqwHQTWkx9hxjkpWDaCg6Ckj5qebgBVbT3V3NNXMSiWSDdGV3hrtzla7J+duwPOToIg42ChPQOQjspnSlp1V+Gjdged7+8UN5CRAV7a5EdFNwCjEaBR27b3W890TE7g24NAP/mMDXRWrGoFPQI9ls/MWO2dWFAar/xcOIImbbpA3zgAAAABJRU5ErkJggg==);\\n}\\n.bk-root .bk-logo-notebook {\\n  display: inline-block;\\n  vertical-align: middle;\\n  margin-right: 5px;\\n}\\n\"},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});var s=this&&this.__rest||function(t,e){var i={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(i[s]=t[s]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(t);n<s.length;n++)e.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(t,s[n])&&(i[s[n]]=t[s[n]])}return i};const n=t(208),a=t(77),o=t(210),l=t(90),r=t(272),h=t(169),_=t(177),d=t(170),c=t(313),u=t(15),p=t(115),f=t(314),b=t(74),g=t(19),m=t(316),v=t(8),w=t(9),y=t(215),x=t(317),z=t(318),M=t(216),O=t(79);class k extends r.LayoutDOMView{constructor(){super(...arguments),this._outer_bbox=new O.BBox,this._inner_bbox=new O.BBox,this._needs_paint=!0,this._needs_layout=!1,this._invalidated_painters=new Set,this._invalidate_all=!0}get is_paused(){return null!=this._is_paused&&0!==this._is_paused}get child_models(){return[]}pause(){null==this._is_paused?this._is_paused=1:this._is_paused+=1}unpause(t=!1){if(null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||t||this.request_paint()}request_render(){this.request_paint()}request_paint(t){if(null!=t?this._invalidated_painters.add(t):this._invalidate_all=!0,!this.is_paused){const t=this.throttled_paint();this._ready=this._ready.then(()=>t)}}request_layout(){this._needs_layout=!0,this.request_paint()}reset(){\"standard\"==this.model.reset_policy&&(this.clear_state(),this.reset_range(),this.reset_selection()),this.model.trigger_event(new c.Reset)}remove(){this.ui_event_bus.destroy(),p.remove_views(this.renderer_views),p.remove_views(this.tool_views),this.canvas_view.remove(),super.remove()}render(){super.render(),this.el.appendChild(this.canvas_view.el),this.canvas_view.render()}initialize(){this.pause(),super.initialize(),this.state_changed=new u.Signal0(this,\"state_changed\"),this.lod_started=!1,this.visuals=new b.Visuals(this.model),this._initial_state_info={selection:new Map,dimensions:{width:0,height:0}},this.visibility_callbacks=[],this.state={history:[],index:-1};const{hidpi:t,output_backend:e}=this.model;this.canvas=new a.Canvas({hidpi:t,output_backend:e}),this.frame=new n.CartesianFrame(this.model.x_scale,this.model.y_scale,this.model.x_range,this.model.y_range,this.model.extra_x_ranges,this.model.extra_y_ranges),this.throttled_paint=m.throttle(()=>this.repaint(),1e3/60);const{title_location:i,title:s}=this.model;null!=i&&null!=s&&(this._title=s instanceof h.Title?s:new h.Title({text:s}));const{toolbar_location:o,toolbar:l}=this.model;null!=o&&null!=l&&(this._toolbar=new d.ToolbarPanel({toolbar:l}),l.toolbar_location=o),this.renderer_views=new Map,this.tool_views=new Map}async lazy_initialize(){this.canvas_view=await p.build_view(this.canvas,{parent:this}),this.ui_event_bus=new f.UIEvents(this,this.model.toolbar,this.canvas_view.events_el),await this.build_renderer_views(),await this.build_tool_views(),this.update_dataranges(),this.unpause(!0),g.logger.debug(\"PlotView initialized\")}_width_policy(){return null==this.model.frame_width?super._width_policy():\"min\"}_height_policy(){return null==this.model.frame_height?super._height_policy():\"min\"}_update_layout(){this.layout=new x.BorderLayout,this.layout.set_sizing(this.box_sizing());const{frame_width:t,frame_height:e}=this.model;this.layout.center_panel=this.frame,this.layout.center_panel.set_sizing(Object.assign(Object.assign({},null!=t?{width_policy:\"fixed\",width:t}:{width_policy:\"fit\"}),null!=e?{height_policy:\"fixed\",height:e}:{height_policy:\"fit\"}));const i=w.copy(this.model.above),s=w.copy(this.model.below),n=w.copy(this.model.left),a=w.copy(this.model.right),o=t=>{switch(t){case\"above\":return i;case\"below\":return s;case\"left\":return n;case\"right\":return a}},{title_location:l,title:r}=this.model;null!=l&&null!=r&&o(l).push(this._title);const{toolbar_location:_,toolbar:c}=this.model;if(null!=_&&null!=c){const t=o(_);let e=!0;if(this.model.toolbar_sticky)for(let i=0;i<t.length;i++){const s=t[i];if(s instanceof h.Title){t[i]=\"above\"==_||\"below\"==_?[s,this._toolbar]:[this._toolbar,s],e=!1;break}}e&&t.push(this._toolbar)}const u=(t,e)=>{const i=this.renderer_views.get(e);return i.layout=new z.SidePanel(t,i)},p=(t,e)=>{const i=\"above\"==t||\"below\"==t,s=[];for(const n of e)if(v.isArray(n)){const e=n.map(e=>{const s=u(t,e);if(e instanceof d.ToolbarPanel){const t=i?\"width_policy\":\"height_policy\";s.set_sizing(Object.assign(Object.assign({},s.sizing),{[t]:\"min\"}))}return s});let a;i?(a=new M.Row(e),a.set_sizing({width_policy:\"max\",height_policy:\"min\"})):(a=new M.Column(e),a.set_sizing({width_policy:\"min\",height_policy:\"max\"})),a.absolute=!0,s.push(a)}else s.push(u(t,n));return s},f=null!=this.model.min_border?this.model.min_border:0;this.layout.min_border={left:null!=this.model.min_border_left?this.model.min_border_left:f,top:null!=this.model.min_border_top?this.model.min_border_top:f,right:null!=this.model.min_border_right?this.model.min_border_right:f,bottom:null!=this.model.min_border_bottom?this.model.min_border_bottom:f};const b=new y.VStack,g=new y.VStack,m=new y.HStack,O=new y.HStack;b.children=w.reversed(p(\"above\",i)),g.children=p(\"below\",s),m.children=w.reversed(p(\"left\",n)),O.children=p(\"right\",a),b.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),g.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),m.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),O.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),this.layout.top_panel=b,this.layout.bottom_panel=g,this.layout.left_panel=m,this.layout.right_panel=O}get axis_views(){const t=[];for(const[,e]of this.renderer_views)e instanceof _.AxisView&&t.push(e);return t}set_cursor(t=\"default\"){this.canvas_view.el.style.cursor=t}set_toolbar_visibility(t){for(const e of this.visibility_callbacks)e(t)}update_dataranges(){const t=new Map,e=new Map;let i=!1;for(const[,t]of this.frame.x_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(i=!0);for(const[,t]of this.frame.y_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(i=!0);for(const[s,n]of this.renderer_views)if(n instanceof l.GlyphRendererView){const a=n.glyph.bounds();if(null!=a&&t.set(s,a),i){const t=n.glyph.log_bounds();null!=t&&e.set(s,t)}}let s=!1,n=!1;const{width:a,height:r}=this.frame.bbox;let h;!1!==this.model.match_aspect&&0!=a&&0!=r&&(h=1/this.model.aspect_scale*(a/r));for(const[,i]of this.frame.x_ranges){if(i instanceof o.DataRange1d){const n=\"log\"==i.scale_hint?e:t;i.update(n,0,this.model,h),i.follow&&(s=!0)}null!=i.bounds&&(n=!0)}for(const[,i]of this.frame.y_ranges){if(i instanceof o.DataRange1d){const n=\"log\"==i.scale_hint?e:t;i.update(n,1,this.model,h),i.follow&&(s=!0)}null!=i.bounds&&(n=!0)}if(s&&n){g.logger.warn(\"Follow enabled so bounds are unset.\");for(const[,t]of this.frame.x_ranges)t.bounds=null;for(const[,t]of this.frame.y_ranges)t.bounds=null}this.range_update_timestamp=Date.now()}push_state(t,e){const{history:i,index:s}=this.state,n=null!=i[s]?i[s].info:{},a=Object.assign(Object.assign(Object.assign({},this._initial_state_info),n),e);this.state.history=this.state.history.slice(0,this.state.index+1),this.state.history.push({type:t,info:a}),this.state.index=this.state.history.length-1,this.state_changed.emit()}clear_state(){this.state={history:[],index:-1},this.state_changed.emit()}can_undo(){return this.state.index>=0}can_redo(){return this.state.index<this.state.history.length-1}undo(){this.can_undo()&&(this.state.index-=1,this._do_state_change(this.state.index),this.state_changed.emit())}redo(){this.can_redo()&&(this.state.index+=1,this._do_state_change(this.state.index),this.state_changed.emit())}_do_state_change(t){const e=null!=this.state.history[t]?this.state.history[t].info:this._initial_state_info;null!=e.range&&this.update_range(e.range),null!=e.selection&&this.update_selection(e.selection)}get_selection(){const t=new Map;for(const e of this.model.renderers)if(e instanceof l.GlyphRenderer){const{selected:i}=e.data_source;t.set(e,i)}return t}update_selection(t){for(const e of this.model.renderers){if(!(e instanceof l.GlyphRenderer))continue;const i=e.data_source;if(null!=t){const s=t.get(e);null!=s&&i.selected.update(s,!0)}else i.selection_manager.clear()}}reset_selection(){this.update_selection(null)}_update_ranges_together(t){let e=1;for(const[i,s]of t)e=Math.min(e,this._get_weight_to_constrain_interval(i,s));if(e<1)for(const[i,s]of t)s.start=e*s.start+(1-e)*i.start,s.end=e*s.end+(1-e)*i.end}_update_ranges_individually(t,e,i,s){let n=!1;for(const[s,a]of t){if(!i){const t=this._get_weight_to_constrain_interval(s,a);t<1&&(a.start=t*a.start+(1-t)*s.start,a.end=t*a.end+(1-t)*s.end)}if(null!=s.bounds&&\"auto\"!=s.bounds){const[t,o]=s.bounds,l=Math.abs(a.end-a.start);s.is_reversed?(null!=t&&t>=a.end&&(n=!0,a.end=t,(e||i)&&(a.start=t+l)),null!=o&&o<=a.start&&(n=!0,a.start=o,(e||i)&&(a.end=o-l))):(null!=t&&t>=a.start&&(n=!0,a.start=t,(e||i)&&(a.end=t+l)),null!=o&&o<=a.end&&(n=!0,a.end=o,(e||i)&&(a.start=o-l)))}}if(!(i&&n&&s))for(const[e,i]of t)e.have_updated_interactively=!0,e.start==i.start&&e.end==i.end||e.setv(i)}_get_weight_to_constrain_interval(t,e){const{min_interval:i}=t;let{max_interval:s}=t;if(null!=t.bounds&&\"auto\"!=t.bounds){const[e,i]=t.bounds;if(null!=e&&null!=i){const t=Math.abs(i-e);s=null!=s?Math.min(s,t):t}}let n=1;if(null!=i||null!=s){const a=Math.abs(t.end-t.start),o=Math.abs(e.end-e.start);i>0&&o<i&&(n=(a-i)/(a-o)),s>0&&o>s&&(n=(s-a)/(o-a)),n=Math.max(0,Math.min(1,n))}return n}update_range(t,e=!1,i=!1,s=!0){this.pause();const{x_ranges:n,y_ranges:a}=this.frame;if(null==t){for(const[,t]of n)t.reset();for(const[,t]of a)t.reset();this.update_dataranges()}else{const o=[];for(const[e,i]of n)o.push([i,t.xrs.get(e)]);for(const[e,i]of a)o.push([i,t.yrs.get(e)]);i&&this._update_ranges_together(o),this._update_ranges_individually(o,e,i,s)}this.unpause()}reset_range(){this.update_range(null)}_invalidate_layout(){(()=>{for(const t of this.model.side_panels){if(this.renderer_views.get(t).layout.has_size_changed())return!0}return!1})()&&this.root.compute_layout()}get_renderer_views(){return this.computed_renderers.map(t=>this.renderer_views.get(t))}async build_renderer_views(){this.computed_renderers=[];const{above:t,below:e,left:i,right:s,center:n,renderers:a}=this.model;this.computed_renderers.push(...t,...e,...i,...s,...n,...a),null!=this._title&&this.computed_renderers.push(this._title),null!=this._toolbar&&this.computed_renderers.push(this._toolbar);for(const t of this.model.toolbar.tools)null!=t.overlay&&this.computed_renderers.push(t.overlay),this.computed_renderers.push(...t.synthetic_renderers);await p.build_views(this.renderer_views,this.computed_renderers,{parent:this})}async build_tool_views(){const t=this.model.toolbar.tools;(await p.build_views(this.tool_views,t,{parent:this})).map(t=>this.ui_event_bus.register_tool(t))}connect_signals(){super.connect_signals();const{x_ranges:t,y_ranges:e}=this.frame;for(const[,e]of t)this.connect(e.change,()=>{this._needs_layout=!0,this.request_paint()});for(const[,t]of e)this.connect(t.change,()=>{this._needs_layout=!0,this.request_paint()});const{plot_width:i,plot_height:s}=this.model.properties;this.on_change([i,s],()=>this.invalidate_layout());const{above:n,below:a,left:o,right:l,center:r,renderers:h}=this.model.properties;this.on_change([n,a,o,l,r,h],async()=>await this.build_renderer_views()),this.connect(this.model.toolbar.properties.tools.change,async()=>{await this.build_renderer_views(),await this.build_tool_views()}),this.connect(this.model.change,()=>this.request_paint()),this.connect(this.model.reset,()=>this.reset())}set_initial_range(){let t=!0;const{x_ranges:e,y_ranges:i}=this.frame,s=new Map,n=new Map;for(const[i,n]of e){const{start:e,end:a}=n;if(null==e||null==a||isNaN(e+a)){t=!1;break}s.set(i,{start:e,end:a})}if(t)for(const[e,s]of i){const{start:i,end:a}=s;if(null==i||null==a||isNaN(i+a)){t=!1;break}n.set(e,{start:i,end:a})}t?(this._initial_state_info.range={xrs:s,yrs:n},g.logger.debug(\"initial ranges set\")):g.logger.warn(\"could not set initial ranges\")}has_finished(){if(!super.has_finished())return!1;if(this.model.visible)for(const[,t]of this.renderer_views)if(!t.has_finished())return!1;return!0}after_layout(){if(super.after_layout(),this._needs_layout=!1,this.model.setv({inner_width:Math.round(this.frame.bbox.width),inner_height:Math.round(this.frame.bbox.height),outer_width:Math.round(this.layout.bbox.width),outer_height:Math.round(this.layout.bbox.height)},{no_change:!0}),!1!==this.model.match_aspect&&(this.pause(),this.update_dataranges(),this.unpause(!0)),!this._outer_bbox.equals(this.layout.bbox)){const{width:t,height:e}=this.layout.bbox;this.canvas_view.resize(t,e),this._outer_bbox=this.layout.bbox,this._invalidate_all=!0,this._needs_paint=!0}this._inner_bbox.equals(this.frame.inner_bbox)||(this._inner_bbox=this.layout.inner_bbox,this._needs_paint=!0),this._needs_paint&&this.paint()}repaint(){this._needs_layout&&this._invalidate_layout(),this.paint()}paint(){if(this.is_paused||!this.model.visible)return;g.logger.trace(\"PlotView.paint() for \"+this.model.id);const{document:t}=this.model;if(null!=t){const e=t.interactive_duration();e>=0&&e<this.model.lod_interval?setTimeout(()=>{t.interactive_duration()>this.model.lod_timeout&&t.interactive_stop(),this.request_paint()},this.model.lod_timeout):t.interactive_stop()}for(const[,t]of this.renderer_views)if(null==this.range_update_timestamp||t instanceof l.GlyphRendererView&&t.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}let e=!1,i=!1;if(this._invalidate_all)e=!0,i=!0;else for(const t of this._invalidated_painters){const{level:s}=t.model;if(\"overlay\"!=s?e=!0:i=!0,e&&i)break}this._invalidated_painters.clear(),this._invalidate_all=!1;const s=[this.frame.bbox.left,this.frame.bbox.top,this.frame.bbox.width,this.frame.bbox.height],{primary:n,overlays:a}=this.canvas_view;e&&(n.prepare(),this.canvas_view.prepare_webgl(s),this.canvas_view.clear_webgl(),this._map_hook(n.ctx,s),this._paint_empty(n.ctx,s),this._paint_outline(n.ctx,s),this._paint_levels(n.ctx,\"image\",s,!0),this._paint_levels(n.ctx,\"underlay\",s,!0),this._paint_levels(n.ctx,\"glyph\",s,!0),this._paint_levels(n.ctx,\"guide\",s,!1),this._paint_levels(n.ctx,\"annotation\",s,!1),n.finish()),i&&(a.prepare(),this._paint_levels(a.ctx,\"overlay\",s,!1),a.finish()),null==this._initial_state_info.range&&this.set_initial_range(),this._needs_paint=!1}_paint_levels(t,e,i,s){for(const n of this.computed_renderers){if(n.level!=e)continue;const a=this.renderer_views.get(n);t.save(),(s||a.needs_clip)&&(t.beginPath(),t.rect(...i),t.clip()),a.render(),t.restore(),a.has_webgl&&a.needs_webgl_blit&&(this.canvas_view.blit_webgl(t),this.canvas_view.clear_webgl())}}_map_hook(t,e){}_paint_empty(t,e){const[i,s,n,a]=[0,0,this.layout.bbox.width,this.layout.bbox.height],[o,l,r,h]=e;this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(t),t.fillRect(i,s,n,a),t.clearRect(o,l,r,h)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(o,l,r,h))}_paint_outline(t,e){if(this.visuals.outline_line.doit){t.save(),this.visuals.outline_line.set_value(t);let[i,s,n,a]=e;i+n==this.layout.bbox.width&&(n-=1),s+a==this.layout.bbox.height&&(a-=1),t.strokeRect(i,s,n,a),t.restore()}}to_blob(){return this.canvas_view.to_blob()}export(t,e=!0){const i=\"png\"==t?\"canvas\":\"svg\",s=new a.CanvasLayer(i,e),{width:n,height:o}=this.layout.bbox;s.resize(n,o);const{canvas:l}=this.canvas_view.compose();return s.ctx.drawImage(l,0,0),s}serializable_state(){const t=super.serializable_state(),{children:e}=t,i=s(t,[\"children\"]),n=this.get_renderer_views().map(t=>t.serializable_state()).filter(t=>\"bbox\"in t);return Object.assign(Object.assign({},i),{children:[...e,...n]})}}i.PlotView=k,k.__name__=\"PlotView\"},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});var n=this&&this.__decorate||function(e,t,s,n){var _,a=arguments.length,o=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,s):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)o=Reflect.decorate(e,t,s,n);else for(var r=e.length-1;r>=0;r--)(_=e[r])&&(o=(a<3?_(o):a>3?_(t,s,o):_(t,s))||o);return a>3&&o&&Object.defineProperty(t,s,o),o};function _(e){return function(t){t.prototype.event_name=e}}class a{to_json(){const{event_name:e}=this;return{event_name:e,event_values:this._to_json()}}}s.BokehEvent=a,a.__name__=\"BokehEvent\";class o extends a{constructor(){super(...arguments),this.origin=null}_to_json(){return{model:this.origin}}}s.ModelEvent=o,o.__name__=\"ModelEvent\";let r=class extends a{_to_json(){return{}}};s.DocumentReady=r,r.__name__=\"DocumentReady\",s.DocumentReady=r=n([_(\"document_ready\")],r);let c=class extends o{};s.ButtonClick=c,c.__name__=\"ButtonClick\",s.ButtonClick=c=n([_(\"button_click\")],c);let l=class extends o{constructor(e){super(),this.item=e}_to_json(){const{item:e}=this;return Object.assign(Object.assign({},super._to_json()),{item:e})}};s.MenuItemClick=l,l.__name__=\"MenuItemClick\",s.MenuItemClick=l=n([_(\"menu_item_click\")],l);class i extends o{}s.UIEvent=i,i.__name__=\"UIEvent\";let u=class extends i{};s.LODStart=u,u.__name__=\"LODStart\",s.LODStart=u=n([_(\"lodstart\")],u);let d=class extends i{};s.LODEnd=d,d.__name__=\"LODEnd\",s.LODEnd=d=n([_(\"lodend\")],d);let h=class extends i{constructor(e,t){super(),this.geometry=e,this.final=t}_to_json(){const{geometry:e,final:t}=this;return Object.assign(Object.assign({},super._to_json()),{geometry:e,final:t})}};s.SelectionGeometry=h,h.__name__=\"SelectionGeometry\",s.SelectionGeometry=h=n([_(\"selectiongeometry\")],h);let m=class extends i{};s.Reset=m,m.__name__=\"Reset\",s.Reset=m=n([_(\"reset\")],m);class x extends i{constructor(e,t,s,n){super(),this.sx=e,this.sy=t,this.x=s,this.y=n}_to_json(){const{sx:e,sy:t,x:s,y:n}=this;return Object.assign(Object.assign({},super._to_json()),{sx:e,sy:t,x:s,y:n})}}s.PointEvent=x,x.__name__=\"PointEvent\";let p=class extends x{constructor(e,t,s,n,_,a){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta_x=_,this.delta_y=a}_to_json(){const{delta_x:e,delta_y:t}=this;return Object.assign(Object.assign({},super._to_json()),{delta_x:e,delta_y:t})}};s.Pan=p,p.__name__=\"Pan\",s.Pan=p=n([_(\"pan\")],p);let j=class extends x{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.scale=_}_to_json(){const{scale:e}=this;return Object.assign(Object.assign({},super._to_json()),{scale:e})}};s.Pinch=j,j.__name__=\"Pinch\",s.Pinch=j=n([_(\"pinch\")],j);let y=class extends x{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.rotation=_}_to_json(){const{rotation:e}=this;return Object.assign(Object.assign({},super._to_json()),{rotation:e})}};s.Rotate=y,y.__name__=\"Rotate\",s.Rotate=y=n([_(\"rotate\")],y);let P=class extends x{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta=_}_to_json(){const{delta:e}=this;return Object.assign(Object.assign({},super._to_json()),{delta:e})}};s.MouseWheel=P,P.__name__=\"MouseWheel\",s.MouseWheel=P=n([_(\"wheel\")],P);let v=class extends x{};s.MouseMove=v,v.__name__=\"MouseMove\",s.MouseMove=v=n([_(\"mousemove\")],v);let O=class extends x{};s.MouseEnter=O,O.__name__=\"MouseEnter\",s.MouseEnter=O=n([_(\"mouseenter\")],O);let b=class extends x{};s.MouseLeave=b,b.__name__=\"MouseLeave\",s.MouseLeave=b=n([_(\"mouseleave\")],b);let g=class extends x{};s.Tap=g,g.__name__=\"Tap\",s.Tap=g=n([_(\"tap\")],g);let E=class extends x{};s.DoubleTap=E,E.__name__=\"DoubleTap\",s.DoubleTap=E=n([_(\"doubletap\")],E);let M=class extends x{};s.Press=M,M.__name__=\"Press\",s.Press=M=n([_(\"press\")],M);let R=class extends x{};s.PressUp=R,R.__name__=\"PressUp\",s.PressUp=R=n([_(\"pressup\")],R);let f=class extends x{};s.PanStart=f,f.__name__=\"PanStart\",s.PanStart=f=n([_(\"panstart\")],f);let S=class extends x{};s.PanEnd=S,S.__name__=\"PanEnd\",s.PanEnd=S=n([_(\"panend\")],S);let D=class extends x{};s.PinchStart=D,D.__name__=\"PinchStart\",s.PinchStart=D=n([_(\"pinchstart\")],D);let k=class extends x{};s.PinchEnd=k,k.__name__=\"PinchEnd\",s.PinchEnd=k=n([_(\"pinchend\")],k);let L=class extends x{};s.RotateStart=L,L.__name__=\"RotateStart\",s.RotateStart=L=n([_(\"rotatestart\")],L);let C=class extends x{};s.RotateEnd=C,C.__name__=\"RotateEnd\",s.RotateEnd=C=n([_(\"rotateend\")],C)},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),i=n.__importDefault(t(297)),r=t(15),a=t(19),h=t(72),_=n.__importStar(t(313)),o=t(315),c=t(9),l=t(8),p=t(32),u=t(302);class d{constructor(t,e,s){this.plot_view=t,this.toolbar=e,this.hit_area=s,this.pan_start=new r.Signal(this,\"pan:start\"),this.pan=new r.Signal(this,\"pan\"),this.pan_end=new r.Signal(this,\"pan:end\"),this.pinch_start=new r.Signal(this,\"pinch:start\"),this.pinch=new r.Signal(this,\"pinch\"),this.pinch_end=new r.Signal(this,\"pinch:end\"),this.rotate_start=new r.Signal(this,\"rotate:start\"),this.rotate=new r.Signal(this,\"rotate\"),this.rotate_end=new r.Signal(this,\"rotate:end\"),this.tap=new r.Signal(this,\"tap\"),this.doubletap=new r.Signal(this,\"doubletap\"),this.press=new r.Signal(this,\"press\"),this.pressup=new r.Signal(this,\"pressup\"),this.move_enter=new r.Signal(this,\"move:enter\"),this.move=new r.Signal(this,\"move\"),this.move_exit=new r.Signal(this,\"move:exit\"),this.scroll=new r.Signal(this,\"scroll\"),this.keydown=new r.Signal(this,\"keydown\"),this.keyup=new r.Signal(this,\"keyup\"),this.hammer=new i.default(this.hit_area,{touchAction:\"auto\",inputClass:i.default.TouchMouseInput}),this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",t=>this._mouse_move(t)),this.hit_area.addEventListener(\"mouseenter\",t=>this._mouse_enter(t)),this.hit_area.addEventListener(\"mouseleave\",t=>this._mouse_exit(t)),this.hit_area.addEventListener(\"contextmenu\",t=>this._context_menu(t)),this.hit_area.addEventListener(\"wheel\",t=>this._mouse_wheel(t)),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this),this.menu=new u.ContextMenu([],{prevent_hide:t=>2==t.button&&t.target==this.hit_area}),this.hit_area.appendChild(this.menu.el)}destroy(){this.menu.remove(),this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)}handleEvent(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)}_configure_hammerjs(){this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",t=>this._doubletap(t)),this.hammer.on(\"tap\",t=>this._tap(t)),this.hammer.on(\"press\",t=>this._press(t)),this.hammer.on(\"pressup\",t=>this._pressup(t)),this.hammer.get(\"pan\").set({direction:i.default.DIRECTION_ALL}),this.hammer.on(\"panstart\",t=>this._pan_start(t)),this.hammer.on(\"pan\",t=>this._pan(t)),this.hammer.on(\"panend\",t=>this._pan_end(t)),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",t=>this._pinch_start(t)),this.hammer.on(\"pinch\",t=>this._pinch(t)),this.hammer.on(\"pinchend\",t=>this._pinch_end(t)),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",t=>this._rotate_start(t)),this.hammer.on(\"rotate\",t=>this._rotate(t)),this.hammer.on(\"rotateend\",t=>this._rotate_end(t))}register_tool(t){const e=t.model.event_type;null!=e&&(l.isString(e)?this._register_tool(t,e):e.forEach((e,s)=>this._register_tool(t,e,s<1)))}_register_tool(t,e,s=!0){const n=t,{id:i}=n.model,r=t=>e=>{e.id==i&&t(e.e)},h=t=>e=>{t(e.e)};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,r(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,r(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,r(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,r(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,r(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,r(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,r(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,r(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,r(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,r(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,r(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,r(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,r(n._tap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,r(n._press.bind(n))),null!=n._pressup&&n.connect(this.pressup,r(n._pressup.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,r(n._scroll.bind(n)));break;default:throw new Error(\"unsupported event_type: \"+e)}s&&(null!=n._doubletap&&n.connect(this.doubletap,h(n._doubletap.bind(n))),null!=n._keydown&&n.connect(this.keydown,h(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,h(n._keyup.bind(n))),p.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(a.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,r(n._scroll.bind(n)))))}_hit_test_renderers(t,e){const s=this.plot_view.get_renderer_views();for(const n of c.reversed(s)){const{level:s}=n.model;if((\"annotation\"==s||\"overlay\"==s)&&null!=n.interactive_hit&&n.interactive_hit(t,e))return n}return null}_hit_test_frame(t,e){return this.plot_view.frame.bbox.contains(t,e)}_hit_test_canvas(t,e){return this.plot_view.layout.bbox.contains(t,e)}_trigger(t,e,s){const n=this.toolbar.gestures,i=t.name.split(\":\")[0],r=this._hit_test_renderers(e.sx,e.sy),a=this._hit_test_canvas(e.sx,e.sy);switch(i){case\"move\":{const s=n[i].active;null!=s&&this.trigger(t,e,s.id);const h=this.toolbar.inspectors.filter(t=>t.active);let _=\"default\";null!=r?(_=r.cursor(e.sx,e.sy)||_,c.is_empty(h)||(t=this.move_exit)):this._hit_test_frame(e.sx,e.sy)&&(c.is_empty(h)||(_=\"crosshair\")),this.plot_view.set_cursor(_),this.plot_view.set_toolbar_visibility(a),h.map(s=>this.trigger(t,e,s.id));break}case\"tap\":{const{target:a}=s;if(null!=a&&a!=this.hit_area)return;null!=r&&null!=r.on_hit&&r.on_hit(e.sx,e.sy);const h=n[i].active;null!=h&&this.trigger(t,e,h.id);break}case\"scroll\":{const i=n[p.is_mobile?\"pinch\":\"scroll\"].active;null!=i&&(s.preventDefault(),s.stopPropagation(),this.trigger(t,e,i.id));break}case\"pan\":{const r=n[i].active;null!=r&&(s.preventDefault(),this.trigger(t,e,r.id));break}default:{const s=n[i].active;null!=s&&this.trigger(t,e,s.id)}}this._trigger_bokeh_event(e)}trigger(t,e,s=null){t.emit({id:s,e})}_trigger_bokeh_event(t){const e=(()=>{const{sx:e,sy:s}=t,n=this.plot_view.frame.x_scale.invert(e),i=this.plot_view.frame.y_scale.invert(s);switch(t.type){case\"wheel\":return new _.MouseWheel(e,s,n,i,t.delta);case\"mousemove\":return new _.MouseMove(e,s,n,i);case\"mouseenter\":return new _.MouseEnter(e,s,n,i);case\"mouseleave\":return new _.MouseLeave(e,s,n,i);case\"tap\":return new _.Tap(e,s,n,i);case\"doubletap\":return new _.DoubleTap(e,s,n,i);case\"press\":return new _.Press(e,s,n,i);case\"pressup\":return new _.PressUp(e,s,n,i);case\"pan\":return new _.Pan(e,s,n,i,t.deltaX,t.deltaY);case\"panstart\":return new _.PanStart(e,s,n,i);case\"panend\":return new _.PanEnd(e,s,n,i);case\"pinch\":return new _.Pinch(e,s,n,i,t.scale);case\"pinchstart\":return new _.PinchStart(e,s,n,i);case\"pinchend\":return new _.PinchEnd(e,s,n,i);case\"rotate\":return new _.Rotate(e,s,n,i,t.rotation);case\"rotatestart\":return new _.RotateStart(e,s,n,i);case\"rotateend\":return new _.RotateEnd(e,s,n,i);default:return}})();null!=e&&this.plot_view.model.trigger_event(e)}_get_sxy(t){const{pageX:e,pageY:s}=function(t){return\"undefined\"!=typeof TouchEvent&&t instanceof TouchEvent}(t)?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t,{left:n,top:i}=h.offset(this.hit_area);return{sx:e-n,sy:s-i}}_pan_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{deltaX:t.deltaX,deltaY:t.deltaY,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_pinch_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{scale:t.scale,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_rotate_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{rotation:t.rotation,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_tap_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_move_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_scroll_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{delta:o.getDeltaY(t),shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_key_event(t){return{type:t.type,keyCode:t.keyCode}}_pan_start(t){const e=this._pan_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)}_pan(t){this._trigger(this.pan,this._pan_event(t),t.srcEvent)}_pan_end(t){this._trigger(this.pan_end,this._pan_event(t),t.srcEvent)}_pinch_start(t){this._trigger(this.pinch_start,this._pinch_event(t),t.srcEvent)}_pinch(t){this._trigger(this.pinch,this._pinch_event(t),t.srcEvent)}_pinch_end(t){this._trigger(this.pinch_end,this._pinch_event(t),t.srcEvent)}_rotate_start(t){this._trigger(this.rotate_start,this._rotate_event(t),t.srcEvent)}_rotate(t){this._trigger(this.rotate,this._rotate_event(t),t.srcEvent)}_rotate_end(t){this._trigger(this.rotate_end,this._rotate_event(t),t.srcEvent)}_tap(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)}_doubletap(t){const e=this._tap_event(t);this._trigger_bokeh_event(e),this.trigger(this.doubletap,e)}_press(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)}_pressup(t){this._trigger(this.pressup,this._tap_event(t),t.srcEvent)}_mouse_enter(t){this._trigger(this.move_enter,this._move_event(t),t)}_mouse_move(t){this._trigger(this.move,this._move_event(t),t)}_mouse_exit(t){this._trigger(this.move_exit,this._move_event(t),t)}_mouse_wheel(t){this._trigger(this.scroll,this._scroll_event(t),t)}_context_menu(t){!this.menu.is_open&&this.menu.can_open&&t.preventDefault();const{sx:e,sy:s}=this._get_sxy(t);this.menu.toggle({left:e,top:s})}_key_down(t){this.trigger(this.keydown,this._key_event(t))}_key_up(t){this.trigger(this.keyup,this._key_event(t))}}s.UIEvents=d,d.__name__=\"UIEvents\"},\n",
       "      function _(e,t,n){\n",
       "      /*!\n",
       "           * jQuery Mousewheel 3.1.13\n",
       "           *\n",
       "           * Copyright jQuery Foundation and other contributors\n",
       "           * Released under the MIT license\n",
       "           * http://jquery.org/license\n",
       "           */\n",
       "      function r(e){const t=getComputedStyle(e).fontSize;return null!=t?parseInt(t,10):null}Object.defineProperty(n,\"__esModule\",{value:!0}),n.getDeltaY=function(e){let t=-e.deltaY;if(e.target instanceof HTMLElement)switch(e.deltaMode){case e.DOM_DELTA_LINE:t*=r((n=e.target).offsetParent||document.body)||r(n)||16;break;case e.DOM_DELTA_PAGE:t*=function(e){return e.clientHeight}(e.target)}var n;return t}},\n",
       "      function _(n,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const t=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(n){return n(Date.now()),-1};o.throttle=function(n,e){let o=null,i=0,u=!1;return function(){return new Promise((d,w)=>{const r=function(){i=Date.now(),o=null,u=!1;try{n(),d()}catch(n){w(n)}},a=Date.now(),f=e-(a-i);f<=0&&!u?(null!=o&&clearTimeout(o),u=!0,t(r)):o||u?d():o=setTimeout(()=>t(r),f)})}}},\n",
       "      function _(t,e,h){Object.defineProperty(h,\"__esModule\",{value:!0});const i=t(213),o=t(214),r=t(79);class s extends o.Layoutable{constructor(){super(...arguments),this.min_border={left:0,top:0,right:0,bottom:0}}_measure(t){t=new i.Sizeable(t).bounded_to(this.sizing.size);const e=this.left_panel.measure({width:0,height:t.height}),h=Math.max(e.width,this.min_border.left),o=this.right_panel.measure({width:0,height:t.height}),r=Math.max(o.width,this.min_border.right),s=this.top_panel.measure({width:t.width,height:0}),n=Math.max(s.height,this.min_border.top),a=this.bottom_panel.measure({width:t.width,height:0}),g=Math.max(a.height,this.min_border.bottom),_=new i.Sizeable(t).shrink_by({left:h,right:r,top:n,bottom:g}),m=this.center_panel.measure(_);return{width:h+m.width+r,height:n+m.height+g,inner:{left:h,right:r,top:n,bottom:g},align:(()=>{const{width_policy:t,height_policy:e}=this.center_panel.sizing;return\"fixed\"!=t&&\"fixed\"!=e})()}}_set_geometry(t,e){super._set_geometry(t,e),this.center_panel.set_geometry(e);const h=this.left_panel.measure({width:0,height:t.height}),i=this.right_panel.measure({width:0,height:t.height}),o=this.top_panel.measure({width:t.width,height:0}),s=this.bottom_panel.measure({width:t.width,height:0}),{left:n,top:a,right:g,bottom:_}=e;this.top_panel.set_geometry(new r.BBox({left:n,right:g,bottom:a,height:o.height})),this.bottom_panel.set_geometry(new r.BBox({left:n,right:g,top:_,height:s.height})),this.left_panel.set_geometry(new r.BBox({top:a,bottom:_,right:n,width:h.width})),this.right_panel.set_geometry(new r.BBox({top:a,bottom:_,left:g,width:i.width}))}}h.BorderLayout=s,s.__name__=\"BorderLayout\"},\n",
       "      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const l=i(213),a=i(214),r=i(8),o=Math.PI/2,h=\"left\",s=\"center\",n={above:{parallel:0,normal:-o,horizontal:0,vertical:-o},below:{parallel:0,normal:o,horizontal:0,vertical:o},left:{parallel:-o,normal:0,horizontal:0,vertical:-o},right:{parallel:o,normal:0,horizontal:0,vertical:o}},d={above:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"alphabetic\",vertical:\"middle\"},below:{justified:\"bottom\",parallel:\"hanging\",normal:\"middle\",horizontal:\"hanging\",vertical:\"middle\"},left:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"middle\",vertical:\"alphabetic\"},right:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"middle\",vertical:\"alphabetic\"}},_={above:{justified:s,parallel:s,normal:h,horizontal:s,vertical:h},below:{justified:s,parallel:s,normal:h,horizontal:s,vertical:h},left:{justified:s,parallel:s,normal:\"right\",horizontal:\"right\",vertical:s},right:{justified:s,parallel:s,normal:h,horizontal:h,vertical:s}},c={above:\"right\",below:h,left:\"right\",right:h},m={above:h,below:\"right\",left:\"right\",right:h};class g extends a.ContentLayoutable{constructor(i,t){switch(super(),this.side=i,this.obj=t,this.side){case\"above\":this._dim=0,this._normals=[0,-1];break;case\"below\":this._dim=0,this._normals=[0,1];break;case\"left\":this._dim=1,this._normals=[-1,0];break;case\"right\":this._dim=1,this._normals=[1,0]}this.is_horizontal?this.set_sizing({width_policy:\"max\",height_policy:\"fixed\"}):this.set_sizing({width_policy:\"fixed\",height_policy:\"max\"})}_content_size(){return new l.Sizeable(this.get_oriented_size())}get_oriented_size(){const{width:i,height:t}=this.obj.get_size();return!this.obj.rotate||this.is_horizontal?{width:i,height:t}:{width:t,height:i}}has_size_changed(){const{width:i,height:t}=this.get_oriented_size();return this.is_horizontal?this.bbox.height!=t:this.bbox.width!=i}get dimension(){return this._dim}get normals(){return this._normals}get is_horizontal(){return 0==this._dim}get is_vertical(){return 1==this._dim}apply_label_text_heuristics(i,t){const e=this.side;let l,a;r.isString(t)?(l=d[e][t],a=_[e][t]):t<0?(l=\"middle\",a=c[e]):(l=\"middle\",a=m[e]),i.textBaseline=l,i.textAlign=a}get_label_angle_heuristic(i){return n[this.side][i]}}e.SidePanel=g,g.__name__=\"SidePanel\"},\n",
       "      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(15),o=t(72),a=t(37),n=t(312),p=new i.Signal0({},\"gmaps_ready\");class l extends n.PlotView{initialize(){this.pause(),super.initialize(),this._tiles_loaded=!1,this.zoom_count=0;const{zoom:t,lat:e,lng:s}=this.model.map_options;if(this.initial_zoom=t,this.initial_lat=e,this.initial_lng=s,\"undefined\"==typeof google||null==google.maps){if(void 0===window._bokeh_gmaps_callback){!function(t){window._bokeh_gmaps_callback=()=>p.emit();const e=document.createElement(\"script\");e.type=\"text/javascript\",e.src=`https://maps.googleapis.com/maps/api/js?v=3.36&key=${t}&callback=_bokeh_gmaps_callback`,document.body.appendChild(e)}(atob(this.model.api_key))}p.connect(()=>this.request_render())}this.unpause()}remove(){o.remove(this.map_el),super.remove()}update_range(t){if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),super.update_range(null);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(t.sdx||0,t.sdy||0),super.update_range(t);else if(null!=t.factor){if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),super.update_range(t);const e=t.factor<0?-1:1,s=this.map.getZoom(),i=s+e;if(i>=2){this.map.setZoom(i);const[t,e,,]=this._get_projected_bounds();e-t<0&&this.map.setZoom(s)}this.unpause()}this._set_bokeh_ranges()}_build_map(){const{maps:t}=google;this.map_types={satellite:t.MapTypeId.SATELLITE,terrain:t.MapTypeId.TERRAIN,roadmap:t.MapTypeId.ROADMAP,hybrid:t.MapTypeId.HYBRID};const e=this.model.map_options,s={center:new t.LatLng(e.lat,e.lng),zoom:e.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[e.map_type],scaleControl:e.scale_control,tilt:e.tilt};null!=e.styles&&(s.styles=JSON.parse(e.styles)),this.map_el=o.div({style:{position:\"absolute\"}}),this.canvas_view.add_underlay(this.map_el),this.map=new t.Map(this.map_el,s),t.event.addListener(this.map,\"idle\",()=>this._set_bokeh_ranges()),t.event.addListener(this.map,\"bounds_changed\",()=>this._set_bokeh_ranges()),t.event.addListenerOnce(this.map,\"tilesloaded\",()=>this._render_finished()),this.connect(this.model.properties.map_options.change,()=>this._update_options()),this.connect(this.model.map_options.properties.styles.change,()=>this._update_styles()),this.connect(this.model.map_options.properties.lat.change,()=>this._update_center(\"lat\")),this.connect(this.model.map_options.properties.lng.change,()=>this._update_center(\"lng\")),this.connect(this.model.map_options.properties.zoom.change,()=>this._update_zoom()),this.connect(this.model.map_options.properties.map_type.change,()=>this._update_map_type()),this.connect(this.model.map_options.properties.scale_control.change,()=>this._update_scale_control()),this.connect(this.model.map_options.properties.tilt.change,()=>this._update_tilt())}_render_finished(){this._tiles_loaded=!0,this.notify_finished()}has_finished(){return super.has_finished()&&!0===this._tiles_loaded}_get_latlon_bounds(){const t=this.map.getBounds(),e=t.getNorthEast(),s=t.getSouthWest();return[s.lng(),e.lng(),s.lat(),e.lat()]}_get_projected_bounds(){const[t,e,s,i]=this._get_latlon_bounds(),[o,n]=a.wgs84_mercator.compute(t,s),[p,l]=a.wgs84_mercator.compute(e,i);return[o,p,n,l]}_set_bokeh_ranges(){const[t,e,s,i]=this._get_projected_bounds();this.frame.x_range.setv({start:t,end:e}),this.frame.y_range.setv({start:s,end:i})}_update_center(t){const e=this.map.getCenter().toJSON();e[t]=this.model.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()}_update_map_type(){this.map.setOptions({mapTypeId:this.map_types[this.model.map_options.map_type]})}_update_scale_control(){this.map.setOptions({scaleControl:this.model.map_options.scale_control})}_update_tilt(){this.map.setOptions({tilt:this.model.map_options.tilt})}_update_options(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()}_update_styles(){this.map.setOptions({styles:JSON.parse(this.model.map_options.styles)})}_update_zoom(){this.map.setOptions({zoom:this.model.map_options.zoom}),this._set_bokeh_ranges()}_map_hook(t,e){if(null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map(),null!=this.map_el){const[t,s,i,o]=e;this.map_el.style.top=s+\"px\",this.map_el.style.left=t+\"px\",this.map_el.style.width=i+\"px\",this.map_el.style.height=o+\"px\"}}_paint_empty(t,e){const s=this.layout.bbox.width,i=this.layout.bbox.height,[o,a,n,p]=e;t.clearRect(0,0,s,i),t.beginPath(),t.moveTo(0,0),t.lineTo(0,i),t.lineTo(s,i),t.lineTo(s,0),t.lineTo(0,0),t.moveTo(o,a),t.lineTo(o+n,a),t.lineTo(o+n,a+p),t.lineTo(o,a+p),t.lineTo(o,a),t.closePath(),null!=this.model.border_fill_color&&(t.fillStyle=this.model.border_fill_color,t.fill())}}s.GMapPlotView=l,l.__name__=\"GMapPlotView\"},\n",
       "      function _(a,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});var g=a(211);n.DataRange=g.DataRange;var R=a(210);n.DataRange1d=R.DataRange1d;var r=a(98);n.FactorRange=r.FactorRange;var t=a(99);n.Range=t.Range;var d=a(158);n.Range1d=d.Range1d},\n",
       "      function _(e,r,d){Object.defineProperty(d,\"__esModule\",{value:!0});var n=e(90);d.GlyphRenderer=n.GlyphRenderer;var R=e(116);d.GraphRenderer=R.GraphRenderer;var a=e(178);d.GuideRenderer=a.GuideRenderer;var G=e(70);d.Renderer=G.Renderer},\n",
       "      function _(a,e,l){Object.defineProperty(l,\"__esModule\",{value:!0});var c=a(209);l.CategoricalScale=c.CategoricalScale;var r=a(146);l.ContinuousScale=r.ContinuousScale;var n=a(145);l.LinearScale=n.LinearScale;var o=a(156);l.LinearInterpolationScale=o.LinearInterpolationScale;var i=a(157);l.LogScale=i.LogScale;var S=a(147);l.Scale=S.Scale},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});e(1).__exportStar(e(118),o);var n=e(88);o.Selection=n.Selection},\n",
       "      function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});var o=a(325);r.ServerSentDataSource=o.ServerSentDataSource;var S=a(327);r.AjaxDataSource=S.AjaxDataSource;var u=a(85);r.ColumnDataSource=u.ColumnDataSource;var t=a(86);r.ColumnarDataSource=t.ColumnarDataSource;var c=a(114);r.CDSView=c.CDSView;var D=a(87);r.DataSource=D.DataSource;var v=a(328);r.GeoJSONDataSource=v.GeoJSONDataSource;var n=a(326);r.WebDataSource=n.WebDataSource},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=e(326);class s extends a.WebDataSource{constructor(e){super(e),this.initialized=!1}destroy(){super.destroy()}setup(){if(!this.initialized){this.initialized=!0;new EventSource(this.data_url).onmessage=e=>{this.load_data(JSON.parse(e.data),this.mode,this.max_size)}}}}i.ServerSentDataSource=s,s.__name__=\"ServerSentDataSource\"},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=e(1),s=e(85),i=r.__importStar(e(18));class n extends s.ColumnDataSource{constructor(e){super(e)}get_column(e){const t=this.data[e];return null!=t?t:[]}initialize(){super.initialize(),this.setup()}load_data(e,t,a){const{adapter:r}=this;let s;switch(s=null!=r?r.execute(this,{response:e}):e,t){case\"replace\":this.data=s;break;case\"append\":{const e=this.data;for(const t of this.columns()){const r=Array.from(e[t]),i=Array.from(s[t]);s[t]=r.concat(i).slice(-a)}this.data=s;break}}}static init_WebDataSource(){this.define({mode:[i.UpdateMode,\"replace\"],max_size:[i.Number],adapter:[i.Any,null],data_url:[i.String]})}}a.WebDataSource=n,n.__name__=\"WebDataSource\",n.init_WebDataSource()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),a=t(326),r=t(19),o=s.__importStar(t(18)),n=t(13);class d extends a.WebDataSource{constructor(t){super(t),this.initialized=!1}static init_AjaxDataSource(){this.define({polling_interval:[o.Number],content_type:[o.String,\"application/json\"],http_headers:[o.Any,{}],method:[o.HTTPMethod,\"POST\"],if_modified:[o.Boolean,!1]})}destroy(){null!=this.interval&&clearInterval(this.interval),super.destroy()}setup(){if(!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)){const t=()=>this.get_data(this.mode,this.max_size,this.if_modified);this.interval=setInterval(t,this.polling_interval)}}get_data(t,e=0,i=!1){const s=this.prepare_request();s.addEventListener(\"load\",()=>this.do_load(s,t,e)),s.addEventListener(\"error\",()=>this.do_error(s)),s.send()}prepare_request(){const t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);const e=this.http_headers;for(const[i,s]of n.entries(e))t.setRequestHeader(i,s);return t}do_load(t,e,i){if(200===t.status){const s=JSON.parse(t.responseText);this.load_data(s,e,i)}}do_error(t){r.logger.error(`Failed to fetch JSON from ${this.data_url} with code ${t.status}`)}}i.AjaxDataSource=d,d.__name__=\"AjaxDataSource\",d.init_AjaxDataSource()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(1),n=e(86),s=e(19),a=r.__importStar(e(18)),i=e(9),l=e(13);function c(e){return null!=e?e:NaN}class _ extends n.ColumnarDataSource{constructor(e){super(e)}static init_GeoJSONDataSource(){this.define({geojson:[a.Any]}),this.internal({data:[a.Any,{}]})}initialize(){super.initialize(),this._update_data()}connect_signals(){super.connect_signals(),this.connect(this.properties.geojson.change,()=>this._update_data())}_update_data(){this.data=this.geojson_to_column_data()}_get_new_list_array(e){return i.range(0,e).map(e=>[])}_get_new_nan_array(e){return i.range(0,e).map(e=>NaN)}_add_properties(e,t,o,r){var n;const s=null!==(n=e.properties)&&void 0!==n?n:{};for(const[e,n]of l.entries(s))t.hasOwnProperty(e)||(t[e]=this._get_new_nan_array(r)),t[e][o]=c(n)}_add_geometry(e,t,o){function r(e,t){return e.concat([[NaN,NaN,NaN]]).concat(t)}switch(e.type){case\"Point\":{const[r,n,s]=e.coordinates;t.x[o]=r,t.y[o]=n,t.z[o]=c(s);break}case\"LineString\":{const{coordinates:r}=e;for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"Polygon\":{e.coordinates.length>1&&s.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");const r=e.coordinates[0];for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPoint\":s.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":{const n=e.coordinates.reduce(r);for(let e=0;e<n.length;e++){const[r,s,a]=n[e];t.xs[o][e]=r,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPolygon\":{const n=[];for(const t of e.coordinates)t.length>1&&s.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),n.push(t[0]);const a=n.reduce(r);for(let e=0;e<a.length;e++){const[r,n,s]=a[e];t.xs[o][e]=r,t.ys[o][e]=n,t.zs[o][e]=c(s)}break}default:throw new Error(\"Invalid GeoJSON geometry type: \"+e.type)}}geojson_to_column_data(){const e=JSON.parse(this.geojson);let t;switch(e.type){case\"GeometryCollection\":if(null==e.geometries)throw new Error(\"No geometries found in GeometryCollection\");if(0===e.geometries.length)throw new Error(\"geojson.geometries must have one or more items\");t=e.geometries;break;case\"FeatureCollection\":if(null==e.features)throw new Error(\"No features found in FeaturesCollection\");if(0==e.features.length)throw new Error(\"geojson.features must have one or more items\");t=e.features;break;default:throw new Error(\"Bokeh only supports type GeometryCollection and FeatureCollection at top level\")}let o=0;for(const e of t){const t=\"Feature\"===e.type?e.geometry:e;\"GeometryCollection\"==t.type?o+=t.geometries.length:o+=1}const r={x:this._get_new_nan_array(o),y:this._get_new_nan_array(o),z:this._get_new_nan_array(o),xs:this._get_new_list_array(o),ys:this._get_new_list_array(o),zs:this._get_new_list_array(o)};let n=0;for(const e of t){const t=\"Feature\"==e.type?e.geometry:e;if(\"GeometryCollection\"==t.type)for(const s of t.geometries)this._add_geometry(s,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1;else this._add_geometry(t,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1}return r}}o.GeoJSONDataSource=_,_.__name__=\"GeoJSONDataSource\",_.init_GeoJSONDataSource()},\n",
       "      function _(e,r,i){Object.defineProperty(i,\"__esModule\",{value:!0});var c=e(127);i.AdaptiveTicker=c.AdaptiveTicker;var a=e(126);i.BasicTicker=a.BasicTicker;var k=e(180);i.CategoricalTicker=k.CategoricalTicker;var T=e(191);i.CompositeTicker=T.CompositeTicker;var t=e(128);i.ContinuousTicker=t.ContinuousTicker;var o=e(190);i.DatetimeTicker=o.DatetimeTicker;var v=e(192);i.DaysTicker=v.DaysTicker;var n=e(330);i.FixedTicker=n.FixedTicker;var s=e(199);i.LogTicker=s.LogTicker;var l=e(202);i.MercatorTicker=l.MercatorTicker;var u=e(195);i.MonthsTicker=u.MonthsTicker;var d=e(193);i.SingleIntervalTicker=d.SingleIntervalTicker;var g=e(129);i.Ticker=g.Ticker;var C=e(196);i.YearsTicker=C.YearsTicker},\n",
       "      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=i(1),n=i(128),s=r.__importStar(i(18));class _ extends n.ContinuousTicker{constructor(i){super(i),this.min_interval=0,this.max_interval=0}static init_FixedTicker(){this.define({ticks:[s.Array,[]],minor_ticks:[s.Array,[]]})}get_ticks_no_defaults(i,t,e,r){return{major:this.ticks,minor:this.minor_ticks}}get_interval(i,t,e){return 0}}e.FixedTicker=_,_.__name__=\"FixedTicker\",_.init_FixedTicker()},\n",
       "      function _(e,r,o){Object.defineProperty(o,\"__esModule\",{value:!0});var T=e(332);o.BBoxTileSource=T.BBoxTileSource;var c=e(333);o.MercatorTileSource=c.MercatorTileSource;var i=e(336);o.QUADKEYTileSource=i.QUADKEYTileSource;var l=e(337);o.TileRenderer=l.TileRenderer;var S=e(334);o.TileSource=S.TileSource;var u=e(341);o.TMSTileSource=u.TMSTileSource;var a=e(338);o.WMTSTileSource=a.WMTSTileSource},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(1),i=e(333),l=o.__importStar(e(18));class _ extends i.MercatorTileSource{constructor(e){super(e)}static init_BBoxTileSource(){this.define({use_latlon:[l.Boolean,!1]})}get_image_url(e,t,r){const o=this.string_lookup_replace(this.url,this.extra_url_vars);let i,l,_,n;return this.use_latlon?[l,n,i,_]=this.get_tile_geographic_bounds(e,t,r):[l,n,i,_]=this.get_tile_meter_bounds(e,t,r),o.replace(\"{XMIN}\",l.toString()).replace(\"{YMIN}\",n.toString()).replace(\"{XMAX}\",i.toString()).replace(\"{YMAX}\",_.toString())}}r.BBoxTileSource=_,_.__name__=\"BBoxTileSource\",_.init_BBoxTileSource()},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const _=t(1),s=t(334),r=_.__importStar(t(18)),o=t(9),n=t(335);class l extends s.TileSource{constructor(t){super(t)}static init_MercatorTileSource(){this.define({snap_to_zoom:[r.Boolean,!1],wrap_around:[r.Boolean,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})}initialize(){super.initialize(),this._resolutions=o.range(this.min_zoom,this.max_zoom+1).map(t=>this.get_resolution(t))}_computed_initial_resolution(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size}is_valid_tile(t,e,i){return!(!this.wrap_around&&(t<0||t>=2**i))&&!(e<0||e>=2**i)}parent_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=_.substring(0,_.length-1);return this.quadkey_to_tile_xyz(s)}get_resolution(t){return this._computed_initial_resolution()/2**t}get_resolution_by_extent(t,e,i){return[(t[2]-t[0])/i,(t[3]-t[1])/e]}get_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s);let o=0;for(const t of this._resolutions){if(r>t){if(0==o)return 0;if(o>0)return o-1}o+=1}return o-1}get_closest_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s),o=this._resolutions.reduce((function(t,e){return Math.abs(e-r)<Math.abs(t-r)?e:t}));return this._resolutions.indexOf(o)}snap_to_zoom_level(t,e,i,_){const[s,r,o,n]=t,l=this._resolutions[_];let u=i*l,a=e*l;if(!this.snap_to_zoom){const t=(o-s)/u,e=(n-r)/a;t>e?(u=o-s,a*=t):(u*=e,a=n-r)}const h=(u-(o-s))/2,c=(a-(n-r))/2;return[s-h,r-c,o+h,n+c]}tms_to_wmts(t,e,i){return[t,2**i-1-e,i]}wmts_to_tms(t,e,i){return[t,2**i-1-e,i]}pixels_to_meters(t,e,i){const _=this.get_resolution(i);return[t*_-this.x_origin_offset,e*_-this.y_origin_offset]}meters_to_pixels(t,e,i){const _=this.get_resolution(i);return[(t+this.x_origin_offset)/_,(e+this.y_origin_offset)/_]}pixels_to_tile(t,e){let i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;return[i,Math.max(Math.ceil(e/this.tile_size)-1,0)]}pixels_to_raster(t,e,i){return[t,(this.tile_size<<i)-e]}meters_to_tile(t,e,i){const[_,s]=this.meters_to_pixels(t,e,i);return this.pixels_to_tile(_,s)}get_tile_meter_bounds(t,e,i){const[_,s]=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),[r,o]=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i);return[_,s,r,o]}get_tile_geographic_bounds(t,e,i){const _=this.get_tile_meter_bounds(t,e,i),[s,r,o,l]=n.meters_extent_to_geographic(_);return[s,r,o,l]}get_tiles_by_extent(t,e,i=1){const[_,s,r,o]=t;let[n,l]=this.meters_to_tile(_,s,e),[u,a]=this.meters_to_tile(r,o,e);n-=i,l-=i,u+=i,a+=i;const h=[];for(let t=a;t>=l;t--)for(let i=n;i<=u;i++)this.is_valid_tile(i,t,e)&&h.push([i,t,e,this.get_tile_meter_bounds(i,t,e)]);return this.sort_tiles_from_center(h,[n,l,u,a]),h}quadkey_to_tile_xyz(t){let e=0,i=0;const _=t.length;for(let s=_;s>0;s--){const r=1<<s-1;switch(t.charAt(_-s)){case\"0\":continue;case\"1\":e|=r;break;case\"2\":i|=r;break;case\"3\":e|=r,i|=r;break;default:throw new TypeError(\"Invalid Quadkey: \"+t)}}return[e,i,_]}tile_xyz_to_quadkey(t,e,i){let _=\"\";for(let s=i;s>0;s--){const i=1<<s-1;let r=0;0!=(t&i)&&(r+=1),0!=(e&i)&&(r+=2),_+=r.toString()}return _}children_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=[];for(let t=0;t<=3;t++){const[e,i,r]=this.quadkey_to_tile_xyz(_+t.toString()),o=this.get_tile_meter_bounds(e,i,r);s.push([e,i,r,o])}return s}get_closest_parent_by_tile_xyz(t,e,i){const _=this.calculate_world_x_by_tile_xyz(t,e,i);[t,e,i]=this.normalize_xyz(t,e,i);let s=this.tile_xyz_to_quadkey(t,e,i);for(;s.length>0;)if(s=s.substring(0,s.length-1),[t,e,i]=this.quadkey_to_tile_xyz(s),[t,e,i]=this.denormalize_xyz(t,e,i,_),this.tiles.has(this.tile_xyz_to_key(t,e,i)))return[t,e,i];return[0,0,0]}normalize_xyz(t,e,i){if(this.wrap_around){const _=2**i;return[(t%_+_)%_,e,i]}return[t,e,i]}denormalize_xyz(t,e,i,_){return[t+_*2**i,e,i]}denormalize_meters(t,e,i,_){return[t+2*_*Math.PI*6378137,e]}calculate_world_x_by_tile_xyz(t,e,i){return Math.floor(t/2**i)}}i.MercatorTileSource=l,l.__name__=\"MercatorTileSource\",l.init_MercatorTileSource()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1),n=e(81),s=e(13),l=i.__importStar(e(18));class a extends n.Model{constructor(e){super(e)}static init_TileSource(){this.define({url:[l.String,\"\"],tile_size:[l.Number,256],max_zoom:[l.Number,30],min_zoom:[l.Number,0],extra_url_vars:[l.Any,{}],attribution:[l.String,\"\"],x_origin_offset:[l.Number],y_origin_offset:[l.Number],initial_resolution:[l.Number]})}initialize(){super.initialize(),this.tiles=new Map,this._normalize_case()}connect_signals(){super.connect_signals(),this.connect(this.change,()=>this._clear_cache())}string_lookup_replace(e,t){let r=e;for(const[e,i]of s.entries(t))r=r.replace(`{${e}}`,i);return r}_normalize_case(){const e=this.url.replace(\"{x}\",\"{X}\").replace(\"{y}\",\"{Y}\").replace(\"{z}\",\"{Z}\").replace(\"{q}\",\"{Q}\").replace(\"{xmin}\",\"{XMIN}\").replace(\"{ymin}\",\"{YMIN}\").replace(\"{xmax}\",\"{XMAX}\").replace(\"{ymax}\",\"{YMAX}\");this.url=e}_clear_cache(){this.tiles=new Map}tile_xyz_to_key(e,t,r){return`${e}:${t}:${r}`}key_to_tile_xyz(e){const[t,r,i]=e.split(\":\").map(e=>parseInt(e));return[t,r,i]}sort_tiles_from_center(e,t){const[r,i,n,s]=t,l=(n-r)/2+r,a=(s-i)/2+i;e.sort((function(e,t){return Math.sqrt((l-e[0])**2+(a-e[1])**2)-Math.sqrt((l-t[0])**2+(a-t[1])**2)}))}get_image_url(e,t,r){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",t.toString()).replace(\"{Z}\",r.toString())}}r.TileSource=a,a.__name__=\"TileSource\",a.init_TileSource()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=e(37);function o(e,t){return n.wgs84_mercator.compute(e,t)}function c(e,t){return n.wgs84_mercator.invert(e,t)}r.geographic_to_meters=o,r.meters_to_geographic=c,r.geographic_extent_to_meters=function(e){const[t,r,n,c]=e,[_,u]=o(t,r),[i,g]=o(n,c);return[_,u,i,g]},r.meters_extent_to_geographic=function(e){const[t,r,n,o]=e,[_,u]=c(t,r),[i,g]=c(n,o);return[_,u,i,g]}},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const _=e(333);class s extends _.MercatorTileSource{constructor(e){super(e)}get_image_url(e,t,r){const _=this.string_lookup_replace(this.url,this.extra_url_vars),[s,o,u]=this.tms_to_wmts(e,t,r),c=this.tile_xyz_to_quadkey(s,o,u);return _.replace(\"{Q}\",c)}}r.QUADKEYTileSource=s,s.__name__=\"QUADKEYTileSource\"},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),_=t(338),n=t(91),a=t(158),r=t(72),o=s.__importStar(t(18)),h=t(251),l=t(9),d=t(8),m=t(89),c=t(85),g=t(339),p=s.__importDefault(t(340));class u extends n.DataRendererView{initialize(){this._tiles=[],super.initialize()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.request_render()),this.connect(this.model.tile_source.change,()=>this.request_render())}styles(){return[...super.styles(),p.default]}get_extent(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]}get map_plot(){return this.plot_model}get map_canvas(){return this.layer.ctx}get map_frame(){return this.plot_view.frame}get x_range(){return this.map_plot.x_range}get y_range(){return this.map_plot.y_range}_set_data(){this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0}_update_attribution(){null!=this.attribution_el&&r.removeElement(this.attribution_el);const{attribution:t}=this.model.tile_source;if(d.isString(t)&&t.length>0){const{layout:e,frame:i}=this.plot_view,s=e.bbox.width-i.bbox.right,_=e.bbox.height-i.bbox.bottom,n=i.bbox.width;this.attribution_el=r.div({class:g.bk_tile_attribution,style:{position:\"absolute\",right:s+\"px\",bottom:_+\"px\",\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"9px\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}}),this.plot_view.canvas_view.add_event(this.attribution_el),this.attribution_el.innerHTML=t,this.attribution_el.title=this.attribution_el.textContent.replace(/\\s*\\n\\s*/g,\" \")}}_map_data(){this.initial_extent=this.get_extent();const t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width,t);this.x_range.start=e[0],this.y_range.start=e[1],this.x_range.end=e[2],this.y_range.end=e[3],this.x_range instanceof a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._update_attribution()}_create_tile(t,e,i,s,_=!1){const[n,a,r]=this.model.tile_source.normalize_xyz(t,e,i),o={img:void 0,tile_coords:[t,e,i],normalized_coords:[n,a,r],quadkey:this.model.tile_source.tile_xyz_to_quadkey(t,e,i),cache_key:this.model.tile_source.tile_xyz_to_key(t,e,i),bounds:s,loaded:!1,finished:!1,x_coord:s[0],y_coord:s[3]},l=this.model.tile_source.get_image_url(n,a,r);new h.ImageLoader(l,{loaded:t=>{Object.assign(o,{img:t,loaded:!0}),_?(o.finished=!0,this.notify_finished()):this.request_render()},failed(){o.finished=!0}}),this.model.tile_source.tiles.set(o.cache_key,o),this._tiles.push(o)}_enforce_aspect_ratio(){if(this._last_height!==this.map_frame.bbox.height||this._last_width!==this.map_frame.bbox.width){const t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame.bbox.height,this.map_frame.bbox.width),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame.bbox.height,this.map_frame.bbox.width,e);this.x_range.setv({start:i[0],end:i[2]}),this.y_range.setv({start:i[1],end:i[3]}),this.extent=i,this._last_height=this.map_frame.bbox.height,this._last_width=this.map_frame.bbox.width}}has_finished(){if(!super.has_finished())return!1;if(0===this._tiles.length)return!1;for(const t of this._tiles)if(!t.finished)return!1;return!0}_render(){null==this.map_initialized&&(this._set_data(),this._map_data(),this.map_initialized=!0),this._enforce_aspect_ratio(),this._update(),null!=this.prefetch_timer&&clearTimeout(this.prefetch_timer),this.prefetch_timer=setTimeout(this._prefetch_tiles.bind(this),500),this.has_finished()&&this.notify_finished()}_draw_tile(t){const e=this.model.tile_source.tiles.get(t);if(null!=e&&e.loaded){const[[t],[i]]=this.coordinates.map_to_screen([e.bounds[0]],[e.bounds[3]]),[[s],[_]]=this.coordinates.map_to_screen([e.bounds[2]],[e.bounds[1]]),n=s-t,a=_-i,r=t,o=i,h=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,r,o,n,a),this.map_canvas.setImageSmoothingEnabled(h),e.finished=!0}}_set_rect(){const t=this.plot_model.properties.outline_line_width.value(),e=this.map_frame.bbox.left+t/2,i=this.map_frame.bbox.top+t/2,s=this.map_frame.bbox.width-t,_=this.map_frame.bbox.height-t;this.map_canvas.rect(e,i,s,_),this.map_canvas.clip()}_render_tiles(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(const e of t)this._draw_tile(e);this.map_canvas.restore()}_prefetch_tiles(){const{tile_source:t}=this.model,e=this.get_extent(),i=this.map_frame.bbox.height,s=this.map_frame.bbox.width,_=this.model.tile_source.get_level_by_extent(e,i,s),n=this.model.tile_source.get_tiles_by_extent(e,_);for(let e=0,i=Math.min(10,n.length);e<i;e++){const[i,s,_]=n[e],a=this.model.tile_source.children_by_tile_xyz(i,s,_);for(const e of a){const[i,s,_,n]=e;t.tiles.has(t.tile_xyz_to_key(i,s,_))||this._create_tile(i,s,_,n,!0)}}}_fetch_tiles(t){for(const e of t){const[t,i,s,_]=e;this._create_tile(t,i,s,_)}}_update(){const{tile_source:t}=this.model,{min_zoom:e}=t,{max_zoom:i}=t;let s=this.get_extent();const _=this.extent[2]-this.extent[0]<s[2]-s[0],n=this.map_frame.bbox.height,a=this.map_frame.bbox.width;let r=t.get_level_by_extent(s,n,a),o=!1;r<e?(s=this.extent,r=e,o=!0):r>i&&(s=this.extent,r=i,o=!0),o&&(this.x_range.setv({x_range:{start:s[0],end:s[2]}}),this.y_range.setv({start:s[1],end:s[3]})),this.extent=s;const h=t.get_tiles_by_extent(s,r),d=[],m=[],c=[],g=[];for(const e of h){const[i,s,n]=e,a=t.tile_xyz_to_key(i,s,n),r=t.tiles.get(a);if(null!=r&&r.loaded)m.push(a);else if(this.model.render_parents){const[e,a,r]=t.get_closest_parent_by_tile_xyz(i,s,n),o=t.tile_xyz_to_key(e,a,r),h=t.tiles.get(o);if(null!=h&&h.loaded&&!l.includes(c,o)&&c.push(o),_){const e=t.children_by_tile_xyz(i,s,n);for(const[i,s,_]of e){const e=t.tile_xyz_to_key(i,s,_);t.tiles.has(e)&&g.push(e)}}}null==r&&d.push(e)}this._render_tiles(c),this._render_tiles(g),this._render_tiles(m),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout(()=>this._fetch_tiles(d),65)}}i.TileRendererView=u,u.__name__=\"TileRendererView\";class b extends n.DataRenderer{constructor(t){super(t),this._selection_manager=new m.SelectionManager({source:new c.ColumnDataSource})}static init_TileRenderer(){this.prototype.default_view=u,this.define({alpha:[o.Number,1],smoothing:[o.Boolean,!0],tile_source:[o.Instance,()=>new _.WMTSTileSource],render_parents:[o.Boolean,!0]})}get_selection_manager(){return this._selection_manager}}i.TileRenderer=b,b.__name__=\"TileRenderer\",b.init_TileRenderer()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(333);class s extends o.MercatorTileSource{constructor(e){super(e)}get_image_url(e,t,r){const o=this.string_lookup_replace(this.url,this.extra_url_vars),[s,c,_]=this.tms_to_wmts(e,t,r);return o.replace(\"{X}\",s.toString()).replace(\"{Y}\",c.toString()).replace(\"{Z}\",_.toString())}}r.WMTSTileSource=s,s.__name__=\"WMTSTileSource\"},\n",
       "      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.bk_tile_attribution=\"bk-tile-attribution\"},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});n.default=\"\\n.bk-root .bk-tile-attribution a {\\n  color: black;\\n}\\n\"},\n",
       "      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(333);class c extends o.MercatorTileSource{constructor(e){super(e)}get_image_url(e,r,t){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",r.toString()).replace(\"{Z}\",t.toString())}}t.TMSTileSource=c,c.__name__=\"TMSTileSource\"},\n",
       "      function _(e,r,a){Object.defineProperty(a,\"__esModule\",{value:!0});var t=e(343);a.CanvasTexture=t.CanvasTexture;var u=e(345);a.ImageURLTexture=u.ImageURLTexture;var v=e(344);a.Texture=v.Texture},\n",
       "      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),c=t(344),s=r.__importStar(t(18)),i=t(29);class a extends c.Texture{constructor(t){super(t)}static init_CanvasTexture(){this.define({code:[s.String]})}get func(){const t=i.use_strict(this.code);return new Function(\"ctx\",\"color\",\"scale\",\"weight\",t)}get_pattern(t,e,n){return r=>{const c=document.createElement(\"canvas\");c.width=e,c.height=e;const s=c.getContext(\"2d\");return this.func.call(this,s,t,e,n),r.createPattern(c,this.repetition)}}}n.CanvasTexture=a,a.__name__=\"CanvasTexture\",a.init_CanvasTexture()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1),n=e(81),o=r.__importStar(e(18));class _ extends n.Model{constructor(e){super(e)}static init_Texture(){this.define({repetition:[o.TextureRepetition,\"repeat\"]})}onload(e){e()}}i.Texture=_,_.__name__=\"Texture\",_.init_Texture()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1),a=e(344),n=r.__importStar(e(18)),s=e(251);class o extends a.Texture{constructor(e){super(e)}static init_ImageURLTexture(){this.define({url:[n.String]})}initialize(){super.initialize(),this._loader=new s.ImageLoader(this.url)}get_pattern(e,t,i){return e=>this._loader.finished?e.createPattern(this._loader.image,this.repetition):null}onload(e){this._loader.promise.then(()=>e())}}i.ImageURLTexture=o,o.__name__=\"ImageURLTexture\",o.init_ImageURLTexture()},\n",
       "      function _(o,l,T){Object.defineProperty(T,\"__esModule\",{value:!0});var a=o(307);T.ActionTool=a.ActionTool;var r=o(347);T.CustomAction=r.CustomAction;var e=o(308);T.HelpTool=e.HelpTool;var v=o(348);T.RedoTool=v.RedoTool;var t=o(349);T.ResetTool=t.ResetTool;var n=o(350);T.SaveTool=n.SaveTool;var s=o(351);T.UndoTool=s.UndoTool;var i=o(352);T.ZoomInTool=i.ZoomInTool;var P=o(355);T.ZoomOutTool=P.ZoomOutTool;var c=o(296);T.ButtonTool=c.ButtonTool;var d=o(356);T.EditTool=d.EditTool;var u=o(357);T.BoxEditTool=u.BoxEditTool;var y=o(358);T.FreehandDrawTool=y.FreehandDrawTool;var m=o(359);T.PointDrawTool=m.PointDrawTool;var x=o(360);T.PolyDrawTool=x.PolyDrawTool;var B=o(361);T.PolyTool=B.PolyTool;var S=o(362);T.PolyEditTool=S.PolyEditTool;var b=o(363);T.BoxSelectTool=b.BoxSelectTool;var h=o(366);T.BoxZoomTool=h.BoxZoomTool;var E=o(306);T.GestureTool=E.GestureTool;var Z=o(367);T.LassoSelectTool=Z.LassoSelectTool;var p=o(369);T.LineEditTool=p.LineEditTool;var w=o(371);T.PanTool=w.PanTool;var C=o(368);T.PolySelectTool=C.PolySelectTool;var D=o(372);T.RangeTool=D.RangeTool;var H=o(364);T.SelectTool=H.SelectTool;var R=o(373);T.TapTool=R.TapTool;var A=o(374);T.WheelPanTool=A.WheelPanTool;var I=o(375);T.WheelZoomTool=I.WheelZoomTool;var L=o(376);T.CrosshairTool=L.CrosshairTool;var W=o(377);T.CustomJSHover=W.CustomJSHover;var O=o(378);T.HoverTool=O.HoverTool;var _=o(295);T.InspectTool=_.InspectTool;var f=o(298);T.Tool=f.Tool;var g=o(379);T.ToolProxy=g.ToolProxy;var F=o(294);T.Toolbar=F.Toolbar;var G=o(305);T.ToolbarBase=G.ToolbarBase;var J=o(380);T.ProxyToolbar=J.ProxyToolbar;var U=o(380);T.ToolbarBox=U.ToolbarBox},\n",
       "      function _(t,o,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),s=t(307),e=n.__importStar(t(18)),c=t(299);class _ extends s.ActionToolButtonView{css_classes(){return super.css_classes().concat(c.bk_toolbar_button_custom_action)}}i.CustomActionButtonView=_,_.__name__=\"CustomActionButtonView\";class l extends s.ActionToolView{doit(){null!=this.model.callback&&this.model.callback.execute(this.model)}}i.CustomActionView=l,l.__name__=\"CustomActionView\";class u extends s.ActionTool{constructor(t){super(t),this.tool_name=\"Custom Action\",this.button_view=_}static init_CustomAction(){this.prototype.default_view=l,this.define({action_tooltip:[e.String,\"Perform a Custom Action\"],callback:[e.Any],icon:[e.String]})}get tooltip(){return this.action_tooltip}}i.CustomAction=u,u.__name__=\"CustomAction\",u.init_CustomAction()},\n",
       "      function _(o,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=o(307),s=o(309);class n extends i.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state_changed,()=>this.model.disabled=!this.plot_view.can_redo())}doit(){this.plot_view.redo()}}t.RedoToolView=n,n.__name__=\"RedoToolView\";class _ extends i.ActionTool{constructor(o){super(o),this.tool_name=\"Redo\",this.icon=s.bk_tool_icon_redo}static init_RedoTool(){this.prototype.default_view=n,this.override({disabled:!0}),this.register_alias(\"redo\",()=>new _)}}t.RedoTool=_,_.__name__=\"RedoTool\",_.init_RedoTool()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(307),i=e(309);class _ extends s.ActionToolView{doit(){this.plot_view.reset()}}o.ResetToolView=_,_.__name__=\"ResetToolView\";class l extends s.ActionTool{constructor(e){super(e),this.tool_name=\"Reset\",this.icon=i.bk_tool_icon_reset}static init_ResetTool(){this.prototype.default_view=_,this.register_alias(\"reset\",()=>new l)}}o.ResetTool=l,l.__name__=\"ResetTool\",l.init_ResetTool()},\n",
       "      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const a=e(307),i=e(309);class n extends a.ActionToolView{async copy(){const e=await this.plot_view.to_blob(),o=new ClipboardItem({[e.type]:e});await navigator.clipboard.write([o])}async save(e){const o=await this.plot_view.to_blob(),t=document.createElement(\"a\");t.href=URL.createObjectURL(o),t.download=e,t.target=\"_blank\",t.dispatchEvent(new MouseEvent(\"click\"))}doit(e=\"save\"){switch(e){case\"save\":this.save(\"bokeh_plot\");break;case\"copy\":this.copy()}}}t.SaveToolView=n,n.__name__=\"SaveToolView\";class s extends a.ActionTool{constructor(e){super(e),this.tool_name=\"Save\",this.icon=i.bk_tool_icon_save}static init_SaveTool(){this.prototype.default_view=n,this.register_alias(\"save\",()=>new s)}get menu(){return[{icon:\"bk-tool-icon-copy-to-clipboard\",tooltip:\"Copy image to clipboard\",if:()=>\"undefined\"!=typeof ClipboardItem,handler:()=>{this.do.emit(\"copy\")}}]}}t.SaveTool=s,s.__name__=\"SaveTool\",s.init_SaveTool()},\n",
       "      function _(o,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=o(307),i=o(309);class s extends n.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state_changed,()=>this.model.disabled=!this.plot_view.can_undo())}doit(){this.plot_view.undo()}}e.UndoToolView=s,s.__name__=\"UndoToolView\";class _ extends n.ActionTool{constructor(o){super(o),this.tool_name=\"Undo\",this.icon=i.bk_tool_icon_undo}static init_UndoTool(){this.prototype.default_view=s,this.override({disabled:!0}),this.register_alias(\"undo\",()=>new _)}}e.UndoTool=_,_.__name__=\"UndoTool\",_.init_UndoTool()},\n",
       "      function _(o,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=o(353),s=o(309);class t extends n.ZoomBaseTool{constructor(o){super(o),this.sign=1,this.tool_name=\"Zoom In\",this.icon=s.bk_tool_icon_zoom_in}static init_ZoomInTool(){this.prototype.default_view=n.ZoomBaseToolView,this.register_alias(\"zoom_in\",()=>new t({dimensions:\"both\"})),this.register_alias(\"xzoom_in\",()=>new t({dimensions:\"width\"})),this.register_alias(\"yzoom_in\",()=>new t({dimensions:\"height\"}))}}e.ZoomInTool=t,t.__name__=\"ZoomInTool\",t.init_ZoomInTool()},\n",
       "      function _(o,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=o(1),s=o(307),n=o(354),_=i.__importStar(o(18));class l extends s.ActionToolView{doit(){const o=this.plot_view.frame,t=this.model.dimensions,e=\"width\"==t||\"both\"==t,i=\"height\"==t||\"both\"==t,s=n.scale_range(o,this.model.sign*this.model.factor,e,i);this.plot_view.push_state(\"zoom_out\",{range:s}),this.plot_view.update_range(s,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model)}}e.ZoomBaseToolView=l,l.__name__=\"ZoomBaseToolView\";class a extends s.ActionTool{constructor(o){super(o)}static init_ZoomBaseTool(){this.prototype.default_view=l,this.define({factor:[_.Percent,.1],dimensions:[_.Dimensions,\"both\"]})}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}e.ZoomBaseTool=a,a.__name__=\"ZoomBaseTool\",a.init_ZoomBaseTool()},\n",
       "      function _(n,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=n(10);function r(n,e,t){const[o,r]=[n.start,n.end],s=null!=t?t:(r+o)/2;return[o-(o-s)*e,r-(r-s)*e]}function s(n,[e,t]){const o=new Map;for(const[r,s]of n){const[n,c]=s.r_invert(e,t);o.set(r,{start:n,end:c})}return o}t.scale_highlow=r,t.get_info=s,t.scale_range=function(n,e,t=!0,c=!0,l){e=o.clamp(e,-.9,.9);const a=t?e:0,[u,_]=r(n.bbox.h_range,a,null!=l?l.x:void 0),i=s(n.x_scales,[u,_]),f=c?e:0,[d,b]=r(n.bbox.v_range,f,null!=l?l.y:void 0);return{xrs:i,yrs:s(n.y_scales,[d,b]),factor:e}}},\n",
       "      function _(o,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=o(353),s=o(309);class n extends e.ZoomBaseTool{constructor(o){super(o),this.sign=-1,this.tool_name=\"Zoom Out\",this.icon=s.bk_tool_icon_zoom_out}static init_ZoomOutTool(){this.prototype.default_view=e.ZoomBaseToolView,this.register_alias(\"zoom_out\",()=>new n({dimensions:\"both\"})),this.register_alias(\"xzoom_out\",()=>new n({dimensions:\"width\"})),this.register_alias(\"yzoom_out\",()=>new n({dimensions:\"height\"}))}}i.ZoomOutTool=n,n.__name__=\"ZoomOutTool\",n.init_ZoomOutTool()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(1).__importStar(e(18)),i=e(9),n=e(8),r=e(11),_=e(306);class c extends _.GestureToolView{constructor(){super(...arguments),this._mouse_in_frame=!0}_select_mode(e){const{shiftKey:t,ctrlKey:o}=e;return t||o?t&&!o?\"append\":!t&&o?\"intersect\":t&&o?\"subtract\":void r.unreachable():\"replace\"}_move_enter(e){this._mouse_in_frame=!0}_move_exit(e){this._mouse_in_frame=!1}_map_drag(e,t,o){if(!this.plot_view.frame.bbox.contains(e,t))return null;const s=this.plot_view.renderer_views.get(o);return[s.coordinates.x_scale.invert(e),s.coordinates.y_scale.invert(t)]}_delete_selected(e){const t=e.data_source,o=t.selected.indices;o.sort();for(const e of t.columns()){const s=t.get_array(e);for(let e=0;e<o.length;e++){const t=o[e];s.splice(t-e,1)}}this._emit_cds_changes(t)}_pop_glyphs(e,t){const o=e.columns();if(t&&o.length)for(const s of o){let o=e.get_array(s);const i=o.length-t+1;i<1||(n.isArray(o)||(o=Array.from(o),e.data[s]=o),o.splice(0,i))}}_emit_cds_changes(e,t=!0,o=!0,s=!0){o&&e.selection_manager.clear(),t&&e.change.emit(),s&&(e.data=e.data,e.properties.data.change.emit())}_drag_points(e,t,o=\"both\"){if(null==this._basepoint)return;const[s,i]=this._basepoint;for(const n of t){const t=this._map_drag(s,i,n),r=this._map_drag(e.sx,e.sy,n);if(null==r||null==t)continue;const[_,c]=r,[a,l]=t,[d,u]=[_-a,c-l],h=n.glyph,m=n.data_source,[p,f]=[h.x.field,h.y.field];for(const e of m.selected.indices)!p||\"width\"!=o&&\"both\"!=o||(m.data[p][e]+=d),!f||\"height\"!=o&&\"both\"!=o||(m.data[f][e]+=u);m.change.emit()}this._basepoint=[e.sx,e.sy]}_pad_empty_columns(e,t){for(const o of e.columns())i.includes(t,o)||e.get_array(o).push(this.model.empty_value)}_select_event(e,t,o){const s=this.plot_view.frame,{sx:i,sy:n}=e;if(!s.bbox.contains(i,n))return[];const r={type:\"point\",sx:i,sy:n},_=[];for(const e of o){const o=e.get_selection_manager(),s=e.data_source,i=[this.plot_view.renderer_views.get(e)];o.select(i,r,!0,t)&&_.push(e),s.properties.selected.change.emit()}return _}}o.EditToolView=c,c.__name__=\"EditToolView\";class a extends _.GestureTool{constructor(e){super(e)}static init_EditTool(){this.define({custom_icon:[s.String],custom_tooltip:[s.String],empty_value:[s.Any],renderers:[s.Array,[]]})}get tooltip(){return this.custom_tooltip||this.tool_name}get computed_icon(){return this.custom_icon||this.icon}}o.EditTool=a,a.__name__=\"EditTool\",a.init_EditTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),_=e(72),o=i.__importStar(e(18)),n=e(356),a=e(309);class d extends n.EditToolView{_tap(e){null==this._draw_basepoint&&null==this._basepoint&&this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)if(e.keyCode===_.Keys.Backspace)this._delete_selected(t);else if(e.keyCode==_.Keys.Esc){t.data_source.selection_manager.clear()}}_set_extent([e,t],[s,i],_,o=!1){const n=this.model.renderers[0],a=this.plot_view.renderer_views.get(n),d=n.glyph,l=n.data_source,[r,h]=a.coordinates.x_scale.r_invert(e,t),[p,u]=a.coordinates.y_scale.r_invert(s,i),[c,m]=[(r+h)/2,(p+u)/2],[f,b]=[h-r,u-p],[x,y]=[d.x.field,d.y.field],[w,v]=[d.width.field,d.height.field];if(_)this._pop_glyphs(l,this.model.num_objects),x&&l.get_array(x).push(c),y&&l.get_array(y).push(m),w&&l.get_array(w).push(f),v&&l.get_array(v).push(b),this._pad_empty_columns(l,[x,y,w,v]);else{const e=l.data[x].length-1;x&&(l.data[x][e]=c),y&&(l.data[y][e]=m),w&&(l.data[w][e]=f),v&&(l.data[v][e]=b)}this._emit_cds_changes(l,!0,!1,o)}_update_box(e,t=!1,s=!1){if(null==this._draw_basepoint)return;const i=[e.sx,e.sy],_=this.plot_view.frame,o=this.model.dimensions,n=this.model._get_dim_limits(this._draw_basepoint,i,_,o);if(null!=n){const[e,i]=n;this._set_extent(e,i,t,s)}}_doubletap(e){this.model.active&&(null!=this._draw_basepoint?(this._update_box(e,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[e.sx,e.sy],this._select_event(e,\"append\",this.model.renderers),this._update_box(e,!0,!1)))}_move(e){this._update_box(e,!1,!1)}_pan_start(e){if(e.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[e.sx,e.sy],this._update_box(e,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy]}}_pan(e,t=!1,s=!1){if(e.shiftKey){if(null==this._draw_basepoint)return;this._update_box(e,t,s)}else{if(null==this._basepoint)return;this._drag_points(e,this.model.renderers)}}_pan_end(e){if(this._pan(e,!1,!0),e.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0)}}}s.BoxEditToolView=d,d.__name__=\"BoxEditToolView\";class l extends n.EditTool{constructor(e){super(e),this.tool_name=\"Box Edit Tool\",this.icon=a.bk_tool_icon_box_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=1}static init_BoxEditTool(){this.prototype.default_view=d,this.define({dimensions:[o.Dimensions,\"both\"],num_objects:[o.Int,0]})}}s.BoxEditTool=l,l.__name__=\"BoxEditTool\",l.init_BoxEditTool()},\n",
       "      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const s=e(1),r=e(72),_=s.__importStar(e(18)),o=e(8),i=e(356),d=e(309);class n extends i.EditToolView{_draw(e,t,a=!1){if(!this.model.active)return;const s=this.model.renderers[0],r=this._map_drag(e.sx,e.sy,s);if(null==r)return;const[_,i]=r,d=s.data_source,n=s.glyph,[l,h]=[n.xs.field,n.ys.field];if(\"new\"==t)this._pop_glyphs(d,this.model.num_objects),l&&d.get_array(l).push([_]),h&&d.get_array(h).push([i]),this._pad_empty_columns(d,[l,h]);else if(\"add\"==t){if(l){const e=d.data[l].length-1;let t=d.get_array(l)[e];o.isArray(t)||(t=Array.from(t),d.data[l][e]=t),t.push(_)}if(h){const e=d.data[h].length-1;let t=d.get_array(h)[e];o.isArray(t)||(t=Array.from(t),d.data[h][e]=t),t.push(i)}}this._emit_cds_changes(d,!0,!0,a)}_pan_start(e){this._draw(e,\"new\")}_pan(e){this._draw(e,\"add\")}_pan_end(e){this._draw(e,\"add\",!0)}_tap(e){this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===r.Keys.Esc?t.data_source.selection_manager.clear():e.keyCode===r.Keys.Backspace&&this._delete_selected(t)}}a.FreehandDrawToolView=n,n.__name__=\"FreehandDrawToolView\";class l extends i.EditTool{constructor(e){super(e),this.tool_name=\"Freehand Draw Tool\",this.icon=d.bk_tool_icon_freehand_draw,this.event_type=[\"pan\",\"tap\"],this.default_order=3}static init_FreehandDrawTool(){this.prototype.default_view=n,this.define({num_objects:[_.Int,0]})}}a.FreehandDrawTool=l,l.__name__=\"FreehandDrawTool\",l.init_FreehandDrawTool()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(1),i=e(72),a=s.__importStar(e(18)),n=e(356),_=e(309);class r extends n.EditToolView{_tap(e){if(this._select_event(e,this._select_mode(e),this.model.renderers).length||!this.model.add)return;const t=this.model.renderers[0],o=this._map_drag(e.sx,e.sy,t);if(null==o)return;const s=t.glyph,i=t.data_source,[a,n]=[s.x.field,s.y.field],[_,r]=o;this._pop_glyphs(i,this.model.num_objects),a&&i.get_array(a).push(_),n&&i.get_array(n).push(r),this._pad_empty_columns(i,[a,n]),i.change.emit(),i.data=i.data,i.properties.data.change.emit()}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===i.Keys.Backspace?this._delete_selected(t):e.keyCode==i.Keys.Esc&&t.data_source.selection_manager.clear()}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){this.model.drag&&null!=this._basepoint&&this._drag_points(e,this.model.renderers)}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0);this._basepoint=null}}}o.PointDrawToolView=r,r.__name__=\"PointDrawToolView\";class d extends n.EditTool{constructor(e){super(e),this.tool_name=\"Point Draw Tool\",this.icon=_.bk_tool_icon_point_draw,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=2}static init_PointDrawTool(){this.prototype.default_view=r,this.define({add:[a.Boolean,!0],drag:[a.Boolean,!0],num_objects:[a.Int,0]})}}o.PointDrawTool=d,d.__name__=\"PointDrawTool\",d.init_PointDrawTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(72),a=i.__importStar(e(18)),o=e(8),n=e(361),_=e(309);class d extends n.PolyToolView{constructor(){super(...arguments),this._drawing=!1,this._initialized=!1}_tap(e){this._drawing?this._draw(e,\"add\",!0):this._select_event(e,this._select_mode(e),this.model.renderers)}_draw(e,t,s=!1){const i=this.model.renderers[0],r=this._map_drag(e.sx,e.sy,i);if(this._initialized||this.activate(),null==r)return;const[a,n]=this._snap_to_vertex(e,...r),_=i.data_source,d=i.glyph,[l,h]=[d.xs.field,d.ys.field];if(\"new\"==t)this._pop_glyphs(_,this.model.num_objects),l&&_.get_array(l).push([a,a]),h&&_.get_array(h).push([n,n]),this._pad_empty_columns(_,[l,h]);else if(\"edit\"==t){if(l){const e=_.data[l][_.data[l].length-1];e[e.length-1]=a}if(h){const e=_.data[h][_.data[h].length-1];e[e.length-1]=n}}else if(\"add\"==t){if(l){const e=_.data[l].length-1;let t=_.get_array(l)[e];const s=t[t.length-1];t[t.length-1]=a,o.isArray(t)||(t=Array.from(t),_.data[l][e]=t),t.push(s)}if(h){const e=_.data[h].length-1;let t=_.get_array(h)[e];const s=t[t.length-1];t[t.length-1]=n,o.isArray(t)||(t=Array.from(t),_.data[h][e]=t),t.push(s)}}this._emit_cds_changes(_,!0,!1,s)}_show_vertices(){if(!this.model.active)return;const e=[],t=[];for(let s=0;s<this.model.renderers.length;s++){const i=this.model.renderers[s],r=i.data_source,a=i.glyph,[o,n]=[a.xs.field,a.ys.field];if(o)for(const t of r.get_array(o))Array.prototype.push.apply(e,t);if(n)for(const e of r.get_array(n))Array.prototype.push.apply(t,e);this._drawing&&s==this.model.renderers.length-1&&(e.splice(e.length-1,1),t.splice(t.length-1,1))}this._set_vertices(e,t)}_doubletap(e){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(e,\"edit\",!0)):(this._drawing=!0,this._draw(e,\"new\",!0)))}_move(e){this._drawing&&this._draw(e,\"edit\")}_remove(){const e=this.model.renderers[0],t=e.data_source,s=e.glyph,[i,r]=[s.xs.field,s.ys.field];if(i){const e=t.data[i].length-1,s=t.get_array(i)[e];s.splice(s.length-1,1)}if(r){const e=t.data[r].length-1,s=t.get_array(r)[e];s.splice(s.length-1,1)}this._emit_cds_changes(t)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===r.Keys.Backspace?this._delete_selected(t):e.keyCode==r.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),t.data_source.selection_manager.clear())}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){if(null==this._basepoint||!this.model.drag)return;const[t,s]=this._basepoint;for(const i of this.model.renderers){const r=this._map_drag(t,s,i),a=this._map_drag(e.sx,e.sy,i);if(null==a||null==r)continue;const o=i.data_source,n=i.glyph,[_,d]=[n.xs.field,n.ys.field];if(!_&&!d)continue;const[l,h]=a,[c,g]=r,[p,f]=[l-c,h-g];for(const e of o.selected.indices){let t,s,i;_&&(s=o.data[_][e]),d?(i=o.data[d][e],t=i.length):t=s.length;for(let e=0;e<t;e++)s&&(s[e]+=p),i&&(i[e]+=f)}o.change.emit()}this._basepoint=[e.sx,e.sy]}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source);this._basepoint=null}}activate(){if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(const e of this.model.renderers){const t=e.data_source;t.connect(t.properties.data.change,()=>this._show_vertices())}this._initialized=!0}}deactivate(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()}}s.PolyDrawToolView=d,d.__name__=\"PolyDrawToolView\";class l extends n.PolyTool{constructor(e){super(e),this.tool_name=\"Polygon Draw Tool\",this.icon=_.bk_tool_icon_poly_draw,this.event_type=[\"pan\",\"tap\",\"move\"],this.default_order=3}static init_PolyDrawTool(){this.prototype.default_view=d,this.define({drag:[a.Boolean,!0],num_objects:[a.Int,0]})}}s.PolyDrawTool=l,l.__name__=\"PolyDrawTool\",l.init_PolyDrawTool()},\n",
       "      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(1).__importStar(e(18)),i=e(8),s=e(356);class _ extends s.EditToolView{_set_vertices(e,t){const r=this.model.vertex_renderer.glyph,o=this.model.vertex_renderer.data_source,[s,_]=[r.x.field,r.y.field];s&&(i.isArray(e)?o.data[s]=e:r.x={value:e}),_&&(i.isArray(t)?o.data[_]=t:r.y={value:t}),this._emit_cds_changes(o,!0,!0,!1)}_hide_vertices(){this._set_vertices([],[])}_snap_to_vertex(e,t,r){if(this.model.vertex_renderer){const o=this._select_event(e,\"replace\",[this.model.vertex_renderer]),i=this.model.vertex_renderer.data_source,s=this.model.vertex_renderer.glyph,[_,l]=[s.x.field,s.y.field];if(o.length){const e=i.selected.indices[0];_&&(t=i.data[_][e]),l&&(r=i.data[l][e]),i.selection_manager.clear()}}return[t,r]}}r.PolyToolView=_,_.__name__=\"PolyToolView\";class l extends s.EditTool{constructor(e){super(e)}static init_PolyTool(){this.prototype.default_view=_,this.define({vertex_renderer:[o.Instance]})}}r.PolyTool=l,l.__name__=\"PolyTool\",l.init_PolyTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=e(72),i=e(8),_=e(361),d=e(309);class n extends _.PolyToolView{constructor(){super(...arguments),this._drawing=!1}_doubletap(e){if(!this.model.active)return;const t=this._map_drag(e.sx,e.sy,this.model.vertex_renderer);if(null==t)return;const[s,r]=t,i=this._select_event(e,\"replace\",[this.model.vertex_renderer]),_=this.model.vertex_renderer.data_source,d=this.model.vertex_renderer.glyph,[n,l]=[d.x.field,d.y.field];if(i.length&&null!=this._selected_renderer){const e=_.selected.indices[0];this._drawing?(this._drawing=!1,_.selection_manager.clear()):(_.selected.indices=[e+1],n&&_.get_array(n).splice(e+1,0,s),l&&_.get_array(l).splice(e+1,0,r),this._drawing=!0),_.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(e)}_show_vertices(e){if(!this.model.active)return;const t=this._select_event(e,\"replace\",this.model.renderers);if(!t.length)return this._set_vertices([],[]),this._selected_renderer=null,void(this._drawing=!1);const s=t[0],r=s.glyph,_=s.data_source,d=_.selected.indices[0],[n,l]=[r.xs.field,r.ys.field];let a,c;n?(a=_.data[n][d],i.isArray(a)||(_.data[n][d]=a=Array.from(a))):a=r.xs.value,l?(c=_.data[l][d],i.isArray(c)||(_.data[l][d]=c=Array.from(c))):c=r.ys.value,this._selected_renderer=s,this._set_vertices(a,c)}_move(e){if(this._drawing&&null!=this._selected_renderer){const t=this.model.vertex_renderer,s=t.data_source,r=t.glyph,i=this._map_drag(e.sx,e.sy,t);if(null==i)return;let[_,d]=i;const n=s.selected.indices;[_,d]=this._snap_to_vertex(e,_,d),s.selected.indices=n;const[l,a]=[r.x.field,r.y.field],c=n[0];l&&(s.data[l][c]=_),a&&(s.data[a][c]=d),s.change.emit(),this._selected_renderer.data_source.change.emit()}}_tap(e){const t=this.model.vertex_renderer,s=this._map_drag(e.sx,e.sy,t);if(null==s)return;if(this._drawing&&this._selected_renderer){let[r,i]=s;const _=t.data_source,d=t.glyph,[n,l]=[d.x.field,d.y.field],a=_.selected.indices;[r,i]=this._snap_to_vertex(e,r,i);const c=a[0];if(_.selected.indices=[c+1],n){const e=_.get_array(n),t=e[c];e[c]=r,e.splice(c+1,0,t)}if(l){const e=_.get_array(l),t=e[c];e[c]=i,e.splice(c+1,0,t)}return _.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}const r=this._select_mode(e);this._select_event(e,r,[t]),this._select_event(e,r,this.model.renderers)}_remove_vertex(){if(!this._drawing||!this._selected_renderer)return;const e=this.model.vertex_renderer,t=e.data_source,s=e.glyph,r=t.selected.indices[0],[i,_]=[s.x.field,s.y.field];i&&t.get_array(i).splice(r,1),_&&t.get_array(_).splice(r,1),t.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}_pan_start(e){this._select_event(e,\"append\",[this.model.vertex_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._emit_cds_changes(this.model.vertex_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}_keyup(e){if(!this.model.active||!this._mouse_in_frame)return;let t;t=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(const s of t)e.keyCode===r.Keys.Backspace?(this._delete_selected(s),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):e.keyCode==r.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),s.data_source.selection_manager.clear())}deactivate(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())}}s.PolyEditToolView=n,n.__name__=\"PolyEditToolView\";class l extends _.PolyTool{constructor(e){super(e),this.tool_name=\"Poly Edit Tool\",this.icon=d.bk_tool_icon_poly_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_PolyEditTool(){this.prototype.default_view=n}}s.PolyEditTool=l,l.__name__=\"PolyEditTool\",l.init_PolyEditTool()},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(1),i=e(364),l=e(124),_=s.__importStar(e(18)),n=e(309);class c extends i.SelectToolView{_compute_limits(e){const t=this.plot_view.frame,o=this.model.dimensions;let s=this._base_point;if(\"center\"==this.model.origin){const[t,o]=s,[i,l]=e;s=[t-(i-t),o-(l-o)]}return this.model._get_dim_limits(s,e,t,o)}_pan_start(e){const{sx:t,sy:o}=e;this._base_point=[t,o]}_pan(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this.model.overlay.update({left:i[0],right:i[1],top:l[0],bottom:l[1]}),this.model.select_every_mousemove&&this._do_select(i,l,!1,this._select_mode(e))}_pan_end(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this._do_select(i,l,!0,this._select_mode(e)),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.push_state(\"box_select\",{selection:this.plot_view.get_selection()})}_do_select([e,t],[o,s],i,l=\"replace\"){const _={type:\"rect\",sx0:e,sx1:t,sy0:o,sy1:s};this._select(_,i,l)}}o.BoxSelectToolView=c,c.__name__=\"BoxSelectToolView\";const r=()=>new l.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class h extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Box Select\",this.icon=n.bk_tool_icon_box_select,this.event_type=\"pan\",this.default_order=30}static init_BoxSelectTool(){this.prototype.default_view=c,this.define({dimensions:[_.Dimensions,\"both\"],select_every_mousemove:[_.Boolean,!1],overlay:[_.Instance,r],origin:[_.BoxOrigin,\"corner\"]}),this.register_alias(\"box_select\",()=>new h),this.register_alias(\"xbox_select\",()=>new h({dimensions:\"width\"})),this.register_alias(\"ybox_select\",()=>new h({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}o.BoxSelectTool=h,h.__name__=\"BoxSelectTool\",h.init_BoxSelectTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(1),o=e(306),r=e(90),c=e(116),i=e(365),l=n.__importStar(e(18)),a=e(72),_=e(313),d=e(15),h=e(11);class p extends o.GestureToolView{connect_signals(){super.connect_signals(),this.model.clear.connect(()=>this._clear())}get computed_renderers(){const e=this.model.renderers,t=this.plot_model.renderers,s=this.model.names;return i.compute_renderers(e,t,s)}_computed_renderers_by_data_source(){var e;const t=new Map;for(const s of this.computed_renderers){let n;if(s instanceof r.GlyphRenderer)n=s.data_source;else{if(!(s instanceof c.GraphRenderer))continue;n=s.node_renderer.data_source}const o=null!==(e=t.get(n))&&void 0!==e?e:[];t.set(n,[...o,s])}return t}_select_mode(e){const{shiftKey:t,ctrlKey:s}=e;return t||s?t&&!s?\"append\":!t&&s?\"intersect\":t&&s?\"subtract\":void h.unreachable():this.model.mode}_keyup(e){e.keyCode==a.Keys.Esc&&this._clear()}_clear(){for(const e of this.computed_renderers)e.get_selection_manager().clear();this.plot_view.request_render()}_select(e,t,s){const n=this._computed_renderers_by_data_source();for(const[,o]of n){const n=o[0].get_selection_manager(),r=[];for(const e of o){const t=this.plot_view.renderer_views.get(e);null!=t&&r.push(t)}n.select(r,e,t,s)}null!=this.model.callback&&this._emit_callback(e),this._emit_selection_event(e,t)}_emit_selection_event(e,t=!0){const{x_scale:s,y_scale:n}=this.plot_view.frame;let o;switch(e.type){case\"point\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"span\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"rect\":{const{sx0:t,sx1:r,sy0:c,sy1:i}=e,[l,a]=s.r_invert(t,r),[_,d]=n.r_invert(c,i);o=Object.assign(Object.assign({},e),{x0:l,y0:_,x1:a,y1:d});break}case\"poly\":{const{sx:t,sy:r}=e,c=s.v_invert(t),i=n.v_invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}}this.plot_model.trigger_event(new _.SelectionGeometry(o,t))}}s.SelectToolView=p,p.__name__=\"SelectToolView\";class u extends o.GestureTool{constructor(e){super(e)}initialize(){super.initialize(),this.clear=new d.Signal0(this,\"clear\")}static init_SelectTool(){this.define({renderers:[l.Any,\"auto\"],names:[l.Array,[]],mode:[l.Any,\"replace\"]})}get menu(){return[{icon:\"bk-tool-icon-replace-mode\",tooltip:\"Replace the current selection\",active:()=>\"replace\"==this.mode,handler:()=>{this.mode=\"replace\",this.active=!0}},{icon:\"bk-tool-icon-append-mode\",tooltip:\"Append to the current selection (Shift)\",active:()=>\"append\"==this.mode,handler:()=>{this.mode=\"append\",this.active=!0}},{icon:\"bk-tool-icon-intersect-mode\",tooltip:\"Intersect with the current selection (Ctrl)\",active:()=>\"intersect\"==this.mode,handler:()=>{this.mode=\"intersect\",this.active=!0}},{icon:\"bk-tool-icon-subtract-mode\",tooltip:\"Subtract from the current selection (Shift+Ctrl)\",active:()=>\"subtract\"==this.mode,handler:()=>{this.mode=\"subtract\",this.active=!0}},null,{icon:\"bk-tool-icon-clear-selection\",tooltip:\"Clear the current selection (Esc)\",handler:()=>{this.clear.emit()}}]}}s.SelectTool=u,u.__name__=\"SelectTool\",u.init_SelectTool()},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const r=e(9);t.compute_renderers=function(e,n,t){if(null==e)return[];let u=\"auto\"==e?n:e;return t.length>0&&(u=u.filter(e=>r.includes(t,e.name))),u}},\n",
       "      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const s=t(1),i=t(306),n=t(124),_=s.__importStar(t(18)),a=t(309);class l extends i.GestureToolView{_match_aspect(t,o,e){const s=e.bbox.aspect,i=e.bbox.h_range.end,n=e.bbox.h_range.start,_=e.bbox.v_range.end,a=e.bbox.v_range.start;let l=Math.abs(t[0]-o[0]),r=Math.abs(t[1]-o[1]);const h=0==r?0:l/r,[c]=h>=s?[1,h/s]:[s/h,1];let m,p,d,b;return t[0]<=o[0]?(m=t[0],p=t[0]+l*c,p>i&&(p=i)):(p=t[0],m=t[0]-l*c,m<n&&(m=n)),l=Math.abs(p-m),t[1]<=o[1]?(b=t[1],d=t[1]+l/s,d>_&&(d=_)):(d=t[1],b=t[1]-l/s,b<a&&(b=a)),r=Math.abs(d-b),t[0]<=o[0]?p=t[0]+s*r:m=t[0]-s*r,[[m,p],[b,d]]}_compute_limits(t){const o=this.plot_view.frame,e=this.model.dimensions;let s,i,n=this._base_point;if(\"center\"==this.model.origin){const[o,e]=n,[s,i]=t;n=[o-(s-o),e-(i-e)]}return this.model.match_aspect&&\"both\"==e?[s,i]=this._match_aspect(n,t,o):[s,i]=this.model._get_dim_limits(n,t,o,e),[s,i]}_pan_start(t){this._base_point=[t.sx,t.sy]}_pan(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this.model.overlay.update({left:e[0],right:e[1],top:s[0],bottom:s[1]})}_pan_end(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this._update(e,s),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null}_update([t,o],[e,s]){if(Math.abs(o-t)<=5||Math.abs(s-e)<=5)return;const{x_scales:i,y_scales:n}=this.plot_view.frame,_=new Map;for(const[e,s]of i){const[i,n]=s.r_invert(t,o);_.set(e,{start:i,end:n})}const a=new Map;for(const[t,o]of n){const[i,n]=o.r_invert(e,s);a.set(t,{start:i,end:n})}const l={xrs:_,yrs:a};this.plot_view.push_state(\"box_zoom\",{range:l}),this.plot_view.update_range(l)}}e.BoxZoomToolView=l,l.__name__=\"BoxZoomToolView\";const r=()=>new n.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class h extends i.GestureTool{constructor(t){super(t),this.tool_name=\"Box Zoom\",this.icon=a.bk_tool_icon_box_zoom,this.event_type=\"pan\",this.default_order=20}static init_BoxZoomTool(){this.prototype.default_view=l,this.define({dimensions:[_.Dimensions,\"both\"],overlay:[_.Instance,r],match_aspect:[_.Boolean,!1],origin:[_.BoxOrigin,\"corner\"]}),this.register_alias(\"box_zoom\",()=>new h({dimensions:\"both\"})),this.register_alias(\"xbox_zoom\",()=>new h({dimensions:\"width\"})),this.register_alias(\"ybox_zoom\",()=>new h({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}e.BoxZoomTool=h,h.__name__=\"BoxZoomTool\",h.init_BoxZoomTool()},\n",
       "      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(1),a=e(364),i=e(368),l=e(72),_=o.__importStar(e(18)),c=e(309);class n extends a.SelectToolView{initialize(){super.initialize(),this.data=null}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>this._active_change())}_active_change(){this.model.active||this._clear_overlay()}_keyup(e){e.keyCode==l.Keys.Enter&&this._clear_overlay()}_pan_start(e){const{sx:s,sy:t}=e;this.data={sx:[s],sy:[t]}}_pan(e){const{sx:s,sy:t}=e,[o,a]=this.plot_view.frame.bbox.clip(s,t);this.data.sx.push(o),this.data.sy.push(a);this.model.overlay.update({xs:this.data.sx,ys:this.data.sy}),this.model.select_every_mousemove&&this._do_select(this.data.sx,this.data.sy,!1,this._select_mode(e))}_pan_end(e){this._clear_overlay(),this._do_select(this.data.sx,this.data.sy,!0,this._select_mode(e)),this.plot_view.push_state(\"lasso_select\",{selection:this.plot_view.get_selection()})}_clear_overlay(){this.model.overlay.update({xs:[],ys:[]})}_do_select(e,s,t,o){const a={type:\"poly\",sx:e,sy:s};this._select(a,t,o)}}t.LassoSelectToolView=n,n.__name__=\"LassoSelectToolView\";class h extends a.SelectTool{constructor(e){super(e),this.tool_name=\"Lasso Select\",this.icon=c.bk_tool_icon_lasso_select,this.event_type=\"pan\",this.default_order=12}static init_LassoSelectTool(){this.prototype.default_view=n,this.define({select_every_mousemove:[_.Boolean,!0],overlay:[_.Instance,i.DEFAULT_POLY_OVERLAY]}),this.register_alias(\"lasso_select\",()=>new h)}}t.LassoSelectTool=h,h.__name__=\"LassoSelectTool\",h.init_LassoSelectTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const l=e(1),i=e(364),o=e(166),a=e(72),_=l.__importStar(e(18)),c=e(9),n=e(309);class h extends i.SelectToolView{initialize(){super.initialize(),this.data={sx:[],sy:[]}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>this._active_change())}_active_change(){this.model.active||this._clear_data()}_keyup(e){e.keyCode==a.Keys.Enter&&this._clear_data()}_doubletap(e){this._do_select(this.data.sx,this.data.sy,!0,this._select_mode(e)),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()}_clear_data(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})}_tap(e){const{sx:t,sy:s}=e;this.plot_view.frame.bbox.contains(t,s)&&(this.data.sx.push(t),this.data.sy.push(s),this.model.overlay.update({xs:c.copy(this.data.sx),ys:c.copy(this.data.sy)}))}_do_select(e,t,s,l){const i={type:\"poly\",sx:e,sy:t};this._select(i,s,l)}}s.PolySelectToolView=h,h.__name__=\"PolySelectToolView\",s.DEFAULT_POLY_OVERLAY=()=>new o.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class y extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Poly Select\",this.icon=n.bk_tool_icon_polygon_select,this.event_type=\"tap\",this.default_order=11}static init_PolySelectTool(){this.prototype.default_view=h,this.define({overlay:[_.Instance,s.DEFAULT_POLY_OVERLAY]}),this.register_alias(\"poly_select\",()=>new y)}}s.PolySelectTool=y,y.__name__=\"PolySelectTool\",y.init_PolySelectTool()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(370),r=s.__importStar(e(18)),_=e(309);class d extends n.LineToolView{constructor(){super(...arguments),this._drawing=!1}_doubletap(e){if(!this.model.active)return;const t=this.model.renderers;for(const i of t){1==this._select_event(e,\"replace\",[i]).length&&(this._selected_renderer=i)}this._show_intersections(),this._update_line_cds()}_show_intersections(){if(!this.model.active)return;if(null==this._selected_renderer)return;if(!this.model.renderers.length)return this._set_intersection([],[]),this._selected_renderer=null,void(this._drawing=!1);const e=this._selected_renderer.data_source,t=this._selected_renderer.glyph,[i,s]=[t.x.field,t.y.field],n=e.get_array(i),r=e.get_array(s);this._set_intersection(n,r)}_tap(e){const t=this.model.intersection_renderer;if(null==this._map_drag(e.sx,e.sy,t))return;if(this._drawing&&this._selected_renderer){const i=this._select_mode(e);if(0==this._select_event(e,i,[t]).length)return}const i=this._select_mode(e);this._select_event(e,i,[t]),this._select_event(e,i,this.model.renderers)}_update_line_cds(){if(null==this._selected_renderer)return;const e=this.model.intersection_renderer.glyph,t=this.model.intersection_renderer.data_source,[i,s]=[e.x.field,e.y.field];if(i&&s){const e=t.data[i],n=t.data[s];this._selected_renderer.data_source.data[i]=e,this._selected_renderer.data_source.data[s]=n}this._emit_cds_changes(this._selected_renderer.data_source,!0,!0,!1)}_pan_start(e){this._select_event(e,\"append\",[this.model.intersection_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer],this.model.dimensions),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer]),this._emit_cds_changes(this.model.intersection_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}activate(){this._drawing=!0}deactivate(){this._selected_renderer&&(this._drawing&&(this._drawing=!1),this._hide_intersections())}}i.LineEditToolView=d,d.__name__=\"LineEditToolView\";class o extends n.LineTool{constructor(e){super(e),this.tool_name=\"Line Edit Tool\",this.icon=_.bk_tool_icon_line_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_LineEditTool(){this.prototype.default_view=d,this.define({dimensions:[r.Dimensions,\"both\"]})}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}i.LineEditTool=o,o.__name__=\"LineEditTool\",o.init_LineEditTool()},\n",
       "      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1).__importStar(e(18)),o=e(8),s=e(356);class _ extends s.EditToolView{_set_intersection(e,i){const t=this.model.intersection_renderer.glyph,n=this.model.intersection_renderer.data_source,[s,_]=[t.x.field,t.y.field];s&&(o.isArray(e)?n.data[s]=e:t.x={value:e}),_&&(o.isArray(i)?n.data[_]=i:t.y={value:i}),this._emit_cds_changes(n,!0,!0,!1)}_hide_intersections(){this._set_intersection([],[])}}t.LineToolView=_,_.__name__=\"LineToolView\";class r extends s.EditTool{constructor(e){super(e)}static init_LineTool(){this.prototype.default_view=_,this.define({intersection_renderer:[n.Instance]})}}t.LineTool=r,r.__name__=\"LineTool\",r.init_LineTool()},\n",
       "      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(1),i=t(306),o=n.__importStar(t(18)),a=t(309);function _(t,s,e){const n=new Map;for(const[i,o]of t){const[t,a]=o.r_invert(s,e);n.set(i,{start:t,end:a})}return n}e.update_ranges=_;class h extends i.GestureToolView{_pan_start(t){this.last_dx=0,this.last_dy=0;const{sx:s,sy:e}=t,n=this.plot_view.frame.bbox;if(!n.contains(s,e)){const t=n.h_range,i=n.v_range;(s<t.start||s>t.end)&&(this.v_axis_only=!0),(e<i.start||e>i.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}_pan(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}_pan_end(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})}_update(t,s){const e=this.plot_view.frame,n=t-this.last_dx,i=s-this.last_dy,o=e.bbox.h_range,a=o.start-n,h=o.end-n,l=e.bbox.v_range,r=l.start-i,d=l.end-i,p=this.model.dimensions;let c,u,m,x,y,g;\"width\"!=p&&\"both\"!=p||this.v_axis_only?(c=o.start,u=o.end,m=0):(c=a,u=h,m=-n),\"height\"!=p&&\"both\"!=p||this.h_axis_only?(x=l.start,y=l.end,g=0):(x=r,y=d,g=-i),this.last_dx=t,this.last_dy=s;const{x_scales:w,y_scales:b}=e,f=_(w,c,u),v=_(b,x,y);this.pan_info={xrs:f,yrs:v,sdx:m,sdy:g},this.plot_view.update_range(this.pan_info,!0)}}e.PanToolView=h,h.__name__=\"PanToolView\";class l extends i.GestureTool{constructor(t){super(t),this.tool_name=\"Pan\",this.event_type=\"pan\",this.default_order=10}static init_PanTool(){this.prototype.default_view=h,this.define({dimensions:[o.Dimensions,\"both\"]}),this.register_alias(\"pan\",()=>new l({dimensions:\"both\"})),this.register_alias(\"xpan\",()=>new l({dimensions:\"width\"})),this.register_alias(\"ypan\",()=>new l({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(\"Pan\",this.dimensions)}get icon(){switch(this.dimensions){case\"both\":return a.bk_tool_icon_pan;case\"width\":return a.bk_tool_icon_xpan;case\"height\":return a.bk_tool_icon_ypan}}}e.PanTool=l,l.__name__=\"PanTool\",l.init_PanTool()},\n",
       "      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(124),l=e(19),a=s.__importStar(e(18)),r=e(306),o=e(309);function _(e){switch(e){case 1:return 2;case 2:return 1;case 4:return 5;case 5:return 4;default:return e}}function h(e,t,i,s){if(null==t)return!1;const n=i.compute(t);return Math.abs(e-n)<s}function d(e,t,i,s,n){let l=!0;if(null!=n.left&&null!=n.right){const t=i.invert(e);(t<n.left||t>n.right)&&(l=!1)}if(null!=n.bottom&&null!=n.top){const e=s.invert(t);(e<n.bottom||e>n.top)&&(l=!1)}return l}function u(e,t,i){let s=0;return e>=i.start&&e<=i.end&&(s+=1),t>=i.start&&t<=i.end&&(s+=1),s}function c(e,t,i,s){const n=t.compute(e),l=t.invert(n+i);return l>=s.start&&l<=s.end?l:e}function g(e,t,i){return e>t.start?(t.end=e,i):(t.end=t.start,t.start=e,_(i))}function y(e,t,i){return e<t.end?(t.start=e,i):(t.start=t.end,t.end=e,_(i))}function f(e,t,i,s){const[n,l]=t.r_compute(e.start,e.end),[a,r]=t.r_invert(n+i,l+i),o=u(e.start,e.end,s);u(a,r,s)>=o&&(e.start=a,e.end=r)}i.flip_side=_,i.is_near=h,i.is_inside=d,i.sides_inside=u,i.compute_value=c,i.update_range_end_side=g,i.update_range_start_side=y,i.update_range=f;class p extends r.GestureToolView{initialize(){super.initialize(),this.side=0,this.model.update_overlay_from_ranges()}connect_signals(){super.connect_signals(),null!=this.model.x_range&&this.connect(this.model.x_range.change,()=>this.model.update_overlay_from_ranges()),null!=this.model.y_range&&this.connect(this.model.y_range.change,()=>this.model.update_overlay_from_ranges())}_pan_start(e){this.last_dx=0,this.last_dy=0;const t=this.model.x_range,i=this.model.y_range,{frame:s}=this.plot_view,l=s.x_scale,a=s.y_scale,r=this.model.overlay,{left:o,right:_,top:u,bottom:c}=r,g=this.model.overlay.properties.line_width.value()+n.EDGE_TOLERANCE;null!=t&&this.model.x_interaction&&(h(e.sx,o,l,g)?this.side=1:h(e.sx,_,l,g)?this.side=2:d(e.sx,e.sy,l,a,r)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&h(e.sy,c,a,g)&&(this.side=4),0==this.side&&h(e.sy,u,a,g)?this.side=5:d(e.sx,e.sy,l,a,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))}_pan(e){const t=this.plot_view.frame,i=e.deltaX-this.last_dx,s=e.deltaY-this.last_dy,n=this.model.x_range,l=this.model.y_range,a=t.x_scale,r=t.y_scale;if(null!=n)if(3==this.side||7==this.side)f(n,a,i,t.x_range);else if(1==this.side){const e=c(n.start,a,i,t.x_range);this.side=y(e,n,this.side)}else if(2==this.side){const e=c(n.end,a,i,t.x_range);this.side=g(e,n,this.side)}if(null!=l)if(6==this.side||7==this.side)f(l,r,s,t.y_range);else if(4==this.side){const e=c(l.start,r,s,t.y_range);this.side=y(e,l,this.side)}else if(5==this.side){const e=c(l.end,r,s,t.y_range);this.side=g(e,l,this.side)}this.last_dx=e.deltaX,this.last_dy=e.deltaY}_pan_end(e){this.side=0}}i.RangeToolView=p,p.__name__=\"RangeToolView\";const m=()=>new n.BoxAnnotation({level:\"overlay\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:.5,line_dash:[2,2]});class v extends r.GestureTool{constructor(e){super(e),this.tool_name=\"Range Tool\",this.icon=o.bk_tool_icon_range,this.event_type=\"pan\",this.default_order=1}static init_RangeTool(){this.prototype.default_view=p,this.define({x_range:[a.Instance,null],x_interaction:[a.Boolean,!0],y_range:[a.Instance,null],y_interaction:[a.Boolean,!0],overlay:[a.Instance,m]})}initialize(){super.initialize(),this.overlay.in_cursor=\"grab\",this.overlay.ew_cursor=null!=this.x_range&&this.x_interaction?\"ew-resize\":null,this.overlay.ns_cursor=null!=this.y_range&&this.y_interaction?\"ns-resize\":null}update_overlay_from_ranges(){null==this.x_range&&null==this.y_range&&(this.overlay.left=null,this.overlay.right=null,this.overlay.bottom=null,this.overlay.top=null,l.logger.warn(\"RangeTool not configured with any Ranges.\")),null==this.x_range?(this.overlay.left=null,this.overlay.right=null):(this.overlay.left=this.x_range.start,this.overlay.right=this.x_range.end),null==this.y_range?(this.overlay.bottom=null,this.overlay.top=null):(this.overlay.bottom=this.y_range.start,this.overlay.top=this.y_range.end)}}i.RangeTool=v,v.__name__=\"RangeTool\",v.init_RangeTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),i=e(364),c=o.__importStar(e(18)),n=e(309);class a extends i.SelectToolView{_tap(e){const{sx:t,sy:s}=e,o={type:\"point\",sx:t,sy:s};this._select(o,!0,this._select_mode(e))}_select(e,t,s){const o=this.model.callback;if(\"select\"==this.model.behavior){const i=this._computed_renderers_by_data_source();for(const[,c]of i){const i=c[0].get_selection_manager(),n=c.map(e=>this.plot_view.renderer_views.get(e));if(i.select(n,e,t,s)&&null!=o){const t=n[0].coordinates.x_scale.invert(e.sx),s=n[0].coordinates.y_scale.invert(e.sy),c={geometries:Object.assign(Object.assign({},e),{x:t,y:s}),source:i.source};o.execute(this.model,c)}}this._emit_selection_event(e),this.plot_view.push_state(\"tap\",{selection:this.plot_view.get_selection()})}else for(const t of this.computed_renderers){const s=this.plot_view.renderer_views.get(t),i=t.get_selection_manager();if(i.inspect(s,e)&&null!=o){const t=s.coordinates.x_scale.invert(e.sx),c=s.coordinates.y_scale.invert(e.sy),n={geometries:Object.assign(Object.assign({},e),{x:t,y:c}),source:i.source};o.execute(this.model,n)}}}}s.TapToolView=a,a.__name__=\"TapToolView\";class _ extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Tap\",this.icon=n.bk_tool_icon_tap_select,this.event_type=\"tap\",this.default_order=10}static init_TapTool(){this.prototype.default_view=a,this.define({behavior:[c.TapBehavior,\"select\"],callback:[c.Any]}),this.register_alias(\"click\",()=>new _({behavior:\"inspect\"})),this.register_alias(\"tap\",()=>new _)}}s.TapTool=_,_.__name__=\"TapTool\",_.init_TapTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),o=e(306),n=i.__importStar(e(18)),a=e(309),l=e(371);class _ extends o.GestureToolView{_scroll(e){let t=this.model.speed*e.delta;t>.9?t=.9:t<-.9&&(t=-.9),this._update_ranges(t)}_update_ranges(e){const{frame:t}=this.plot_view,s=t.bbox.h_range,i=t.bbox.v_range,[o,n]=[s.start,s.end],[a,_]=[i.start,i.end];let h,r,d,p;switch(this.model.dimension){case\"height\":{const t=Math.abs(_-a);h=o,r=n,d=a-t*e,p=_-t*e;break}case\"width\":{const t=Math.abs(n-o);h=o-t*e,r=n-t*e,d=a,p=_;break}default:throw new Error(\"this shouldn't have happened\")}const{x_scales:c,y_scales:u}=t,m={xrs:l.update_ranges(c,h,r),yrs:l.update_ranges(u,d,p),factor:e};this.plot_view.push_state(\"wheel_pan\",{range:m}),this.plot_view.update_range(m,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}}s.WheelPanToolView=_,_.__name__=\"WheelPanToolView\";class h extends o.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Pan\",this.icon=a.bk_tool_icon_wheel_pan,this.event_type=\"scroll\",this.default_order=12}static init_WheelPanTool(){this.prototype.default_view=_,this.define({dimension:[n.Dimension,\"width\"]}),this.internal({speed:[n.Number,.001]}),this.register_alias(\"xwheel_pan\",()=>new h({dimension:\"width\"})),this.register_alias(\"ywheel_pan\",()=>new h({dimension:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimension)}}s.WheelPanTool=h,h.__name__=\"WheelPanTool\",h.init_WheelPanTool()},\n",
       "      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),i=e(306),l=e(354),n=s.__importStar(e(18)),_=e(32),h=e(309);class a extends i.GestureToolView{_pinch(e){const{sx:o,sy:t,scale:s,ctrlKey:i,shiftKey:l}=e;let n;n=s>=1?20*(s-1):-20/s,this._scroll({type:\"wheel\",sx:o,sy:t,delta:n,ctrlKey:i,shiftKey:l})}_scroll(e){const{frame:o}=this.plot_view,t=o.bbox.h_range,s=o.bbox.v_range,{sx:i,sy:n}=e,_=this.model.dimensions,h=(\"width\"==_||\"both\"==_)&&t.start<i&&i<t.end,a=(\"height\"==_||\"both\"==_)&&s.start<n&&n<s.end;if(!(h&&a||this.model.zoom_on_axis))return;const m=this.model.speed*e.delta,r=l.scale_range(o,m,h,a,{x:i,y:n});this.plot_view.push_state(\"wheel_zoom\",{range:r}),this.plot_view.update_range(r,!1,!0,this.model.maintain_focus),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}}t.WheelZoomToolView=a,a.__name__=\"WheelZoomToolView\";class m extends i.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Zoom\",this.icon=h.bk_tool_icon_wheel_zoom,this.event_type=_.is_mobile?\"pinch\":\"scroll\",this.default_order=10}static init_WheelZoomTool(){this.prototype.default_view=a,this.define({dimensions:[n.Dimensions,\"both\"],maintain_focus:[n.Boolean,!0],zoom_on_axis:[n.Boolean,!0],speed:[n.Number,1/600]}),this.register_alias(\"wheel_zoom\",()=>new m({dimensions:\"both\"})),this.register_alias(\"xwheel_zoom\",()=>new m({dimensions:\"width\"})),this.register_alias(\"ywheel_zoom\",()=>new m({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}t.WheelZoomTool=m,m.__name__=\"WheelZoomTool\",m.init_WheelZoomTool()},\n",
       "      function _(i,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const t=i(1),o=i(295),n=i(168),l=t.__importStar(i(18)),h=i(13),a=i(309);class r extends o.InspectToolView{_move(i){if(!this.model.active)return;const{sx:s,sy:e}=i;this.plot_view.frame.bbox.contains(s,e)?this._update_spans(s,e):this._update_spans(null,null)}_move_exit(i){this._update_spans(null,null)}_update_spans(i,s){const e=this.model.dimensions;\"width\"!=e&&\"both\"!=e||(this.model.spans.width.location=s),\"height\"!=e&&\"both\"!=e||(this.model.spans.height.location=i)}}e.CrosshairToolView=r,r.__name__=\"CrosshairToolView\";class _ extends o.InspectTool{constructor(i){super(i),this.tool_name=\"Crosshair\",this.icon=a.bk_tool_icon_crosshair}static init_CrosshairTool(){this.prototype.default_view=r,this.define({dimensions:[l.Dimensions,\"both\"],line_color:[l.Color,\"black\"],line_width:[l.Number,1],line_alpha:[l.Number,1]}),this.internal({spans:[l.Any]}),this.register_alias(\"crosshair\",()=>new _)}get tooltip(){return this._get_dim_tooltip(\"Crosshair\",this.dimensions)}get synthetic_renderers(){return h.values(this.spans)}initialize(){super.initialize(),this.spans={width:new n.Span({for_hover:!0,dimension:\"width\",location_units:\"screen\",level:\"overlay\",line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha}),height:new n.Span({for_hover:!0,dimension:\"height\",location_units:\"screen\",level:\"overlay\",line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha})}}}e.CrosshairTool=_,_.__name__=\"CrosshairTool\",_.init_CrosshairTool()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=e(1),o=e(81),i=r.__importStar(e(18)),a=e(13),n=e(29);class u extends o.Model{constructor(e){super(e)}static init_CustomJSHover(){this.define({args:[i.Any,{}],code:[i.String,\"\"]})}get values(){return a.values(this.args)}_make_code(e,t,s,r){return new Function(...a.keys(this.args),e,t,s,n.use_strict(r))}format(e,t,s){return this._make_code(\"value\",\"format\",\"special_vars\",this.code)(...this.values,e,t,s)}}s.CustomJSHover=u,u.__name__=\"CustomJSHover\",u.init_CustomJSHover()},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),n=e(295),i=e(171),r=e(90),l=e(116),c=e(365),a=o.__importStar(e(101)),_=e(187),d=e(72),p=o.__importStar(e(18)),h=e(22),m=e(13),u=e(303),y=e(8),f=e(115),x=e(309),v=e(172);function w(e,t,s,o,n,i){const r={x:n[e],y:i[e]},l={x:n[e+1],y:i[e+1]};let c,_;if(\"span\"==t.type)\"h\"==t.direction?(c=Math.abs(r.x-s),_=Math.abs(l.x-s)):(c=Math.abs(r.y-o),_=Math.abs(l.y-o));else{const e={x:s,y:o};c=a.dist_2_pts(r,e),_=a.dist_2_pts(l,e)}return c<_?[[r.x,r.y],e]:[[l.x,l.y],e+1]}function g(e,t,s){return[[e[s],t[s]],s]}s._nearest_line_hit=w,s._line_hit=g;class b extends n.InspectToolView{initialize(){super.initialize(),this._ttmodels=null,this._ttviews=new Map;const{tooltips:e}=this.model;y.isArray(e)&&(this._template_el=this._create_template(e))}remove(){f.remove_views(this._ttviews),super.remove()}connect_signals(){super.connect_signals();for(const e of this.computed_renderers)e instanceof r.GlyphRenderer?this.connect(e.data_source.inspect,this._update):e instanceof l.GraphRenderer&&(this.connect(e.node_renderer.data_source.inspect,this._update),this.connect(e.edge_renderer.data_source.inspect,this._update));this.connect(this.model.properties.renderers.change,()=>this._computed_renderers=this._ttmodels=null),this.connect(this.model.properties.names.change,()=>this._computed_renderers=this._ttmodels=null),this.connect(this.model.properties.tooltips.change,()=>this._ttmodels=null)}_compute_ttmodels(){const e=new Map,t=this.model.tooltips;if(null!=t)for(const s of this.computed_renderers){const o=new i.Tooltip({custom:y.isString(t)||y.isFunction(t),attachment:this.model.attachment,show_arrow:this.model.show_arrow});s instanceof r.GlyphRenderer?e.set(s,o):s instanceof l.GraphRenderer&&(e.set(s.node_renderer,o),e.set(s.edge_renderer,o))}return(async()=>{const t=await f.build_views(this._ttviews,[...e.values()],{parent:this.plot_view});for(const e of t)e.render()})(),e}get computed_renderers(){if(null==this._computed_renderers){const e=this.model.renderers,t=this.plot_model.renderers,s=this.model.names;this._computed_renderers=c.compute_renderers(e,t,s)}return this._computed_renderers}get ttmodels(){return null==this._ttmodels&&(this._ttmodels=this._compute_ttmodels()),this._ttmodels}_clear(){this._inspect(1/0,1/0);for(const[,e]of this.ttmodels)e.clear()}_move(e){if(!this.model.active)return;const{sx:t,sy:s}=e;this.plot_view.frame.bbox.contains(t,s)?this._inspect(t,s):this._clear()}_move_exit(){this._clear()}_inspect(e,t){let s;if(\"mouse\"==this.model.mode)s={type:\"point\",sx:e,sy:t};else{s={type:\"span\",direction:\"vline\"==this.model.mode?\"h\":\"v\",sx:e,sy:t}}for(const e of this.computed_renderers){e.get_selection_manager().inspect(this.plot_view.renderer_views.get(e),s)}null!=this.model.callback&&this._emit_callback(s)}_update([e,{geometry:t}]){if(!this.model.active)return;if(!(e instanceof r.GlyphRendererView))return;const{model:s}=e;if(\"ignore\"==this.model.muted_policy&&s instanceof r.GlyphRenderer&&s.muted)return;const o=this.ttmodels.get(s);if(null==o)return;const n=s.get_selection_manager();let i=n.inspectors.get(s);if(s instanceof r.GlyphRenderer&&(i=s.view.convert_selection_to_subset(i)),i.is_empty())return void o.clear();const l=n.source,{sx:c,sy:a}=t,_=e.coordinates.x_scale,p=e.coordinates.y_scale,h=_.invert(c),u=p.invert(a),y=e.glyph,f=[];for(const s of i.line_indices){let o,n,r=y._x[s+1],d=y._y[s+1],m=s;switch(this.model.line_policy){case\"interp\":[r,d]=y.get_interpolation_hit(s,t),o=_.compute(r),n=p.compute(d);break;case\"prev\":[[o,n],m]=g(y.sx,y.sy,s);break;case\"next\":[[o,n],m]=g(y.sx,y.sy,s+1);break;case\"nearest\":[[o,n],m]=w(s,t,c,a,y.sx,y.sy),r=y._x[m],d=y._y[m];break;default:[o,n]=[c,a]}const x={index:m,x:h,y:u,sx:c,sy:a,data_x:r,data_y:d,rx:o,ry:n,indices:i.line_indices,name:e.model.name};f.push([o,n,this._render_tooltips(l,m,x)])}for(const t of i.image_indices){const s={index:t.index,x:h,y:u,sx:c,sy:a,name:e.model.name},o=this._render_tooltips(l,t,s);f.push([c,a,o])}for(const o of i.indices)if(m.isEmpty(i.multiline_indices)){const t=null!=y._x?y._x[o]:void 0,n=null!=y._y?y._y[o]:void 0;let _,d,p;if(\"snap_to_data\"==this.model.point_policy){let e=y.get_anchor_point(this.model.anchor,o,[c,a]);null==e&&(e=y.get_anchor_point(\"center\",o,[c,a])),_=e.x,d=e.y}else[_,d]=[c,a];p=s instanceof r.GlyphRenderer?s.view.convert_indices_from_subset([o])[0]:o;const m={index:p,x:h,y:u,sx:c,sy:a,data_x:t,data_y:n,indices:i.indices,name:e.model.name};f.push([_,d,this._render_tooltips(l,p,m)])}else for(const n of i.multiline_indices[o.toString()]){let d,m,x,v=y._xs[o][n],b=y._ys[o][n],k=n;switch(this.model.line_policy){case\"interp\":[v,b]=y.get_interpolation_hit(o,n,t),d=_.compute(v),m=p.compute(b);break;case\"prev\":[[d,m],k]=g(y.sxs[o],y.sys[o],n);break;case\"next\":[[d,m],k]=g(y.sxs[o],y.sys[o],n+1);break;case\"nearest\":[[d,m],k]=w(n,t,c,a,y.sxs[o],y.sys[o]),v=y._xs[o][k],b=y._ys[o][k];break;default:throw new Error(\"should't have happened\")}x=s instanceof r.GlyphRenderer?s.view.convert_indices_from_subset([o])[0]:o;const A={index:x,x:h,y:u,sx:c,sy:a,data_x:v,data_y:b,segment_index:k,indices:i.multiline_indices,name:e.model.name};f.push([d,m,this._render_tooltips(l,x,A)])}if(0==f.length)o.clear();else{const{content:e}=o;d.empty(o.content);for(const[,,t]of f)e.appendChild(t);const[t,s]=f[f.length-1];o.setv({position:[t,s]},{check_eq:!1})}}_emit_callback(e){for(const t of this.computed_renderers){const s=this.plot_view.renderer_views.get(t),o=s.coordinates.x_scale.invert(e.sx),n=s.coordinates.y_scale.invert(e.sy),i=t.data_source.inspected,r=Object.assign({x:o,y:n},e);this.model.callback.execute(this.model,{index:i,geometry:r,renderer:t})}}_create_template(e){const t=d.div({style:{display:\"table\",borderSpacing:\"2px\"}});for(const[s]of e){const e=d.div({style:{display:\"table-row\"}});t.appendChild(e);const o=d.div({style:{display:\"table-cell\"},class:v.bk_tooltip_row_label},0!=s.length?s+\": \":\"\");e.appendChild(o);const n=d.span();n.dataset.value=\"\";const i=d.span({class:v.bk_tooltip_color_block},\" \");i.dataset.swatch=\"\",d.undisplay(i);const r=d.div({style:{display:\"table-cell\"},class:v.bk_tooltip_row_value},n,i);e.appendChild(r)}return t}_render_template(e,t,s,o,n){const i=e.cloneNode(!0),r=i.querySelectorAll(\"[data-value]\"),l=i.querySelectorAll(\"[data-swatch]\"),c=/\\$color(\\[.*\\])?:(\\w*)/;for(const[[,e],i]of u.enumerate(t)){const t=e.match(c);if(null!=t){const[,e=\"\",n]=t,c=s.get_column(n);if(null==c){r[i].textContent=n+\" unknown\";continue}const a=e.indexOf(\"hex\")>=0,_=e.indexOf(\"swatch\")>=0;let p=y.isNumber(o)?c[o]:null;if(null==p){r[i].textContent=\"(null)\";continue}a&&(p=h.color2hex(p)),r[i].textContent=p,_&&(l[i].style.backgroundColor=p,d.display(l[i]))}else{const t=_.replace_placeholders(e.replace(\"$~\",\"$data_\"),s,o,this.model.formatters,n);if(y.isString(t))r[i].textContent=t;else for(const e of t)r[i].appendChild(e)}}return i}_render_tooltips(e,t,s){const o=this.model.tooltips;if(y.isString(o)){const n=_.replace_placeholders({html:o},e,t,this.model.formatters,s);return d.div({},n)}return y.isFunction(o)?o(e,s):this._render_template(this._template_el,o,e,t,s)}}s.HoverToolView=b,b.__name__=\"HoverToolView\";class k extends n.InspectTool{constructor(e){super(e),this.tool_name=\"Hover\",this.icon=x.bk_tool_icon_hover}static init_HoverTool(){this.prototype.default_view=b,this.define({tooltips:[p.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[p.Any,{}],renderers:[p.Any,\"auto\"],names:[p.Array,[]],mode:[p.HoverMode,\"mouse\"],muted_policy:[p.MutedPolicy,\"show\"],point_policy:[p.PointPolicy,\"snap_to_data\"],line_policy:[p.LinePolicy,\"nearest\"],show_arrow:[p.Boolean,!0],anchor:[p.Anchor,\"center\"],attachment:[p.TooltipAttachment,\"horizontal\"],callback:[p.Any]}),this.register_alias(\"hover\",()=>new k)}}s.HoverTool=k,k.__name__=\"HoverTool\",k.init_HoverTool()},\n",
       "      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1).__importStar(t(18)),n=t(15),s=t(81),l=t(295),c=t(303);class r extends s.Model{constructor(t){super(t)}static init_ToolProxy(){this.define({tools:[i.Array,[]],active:[i.Boolean,!1],disabled:[i.Boolean,!1]})}get button_view(){return this.tools[0].button_view}get event_type(){return this.tools[0].event_type}get tooltip(){return this.tools[0].tooltip}get tool_name(){return this.tools[0].tool_name}get icon(){return this.tools[0].computed_icon}get computed_icon(){return this.icon}get toggleable(){const t=this.tools[0];return t instanceof l.InspectTool&&t.toggleable}initialize(){super.initialize(),this.do=new n.Signal0(this,\"do\")}connect_signals(){super.connect_signals(),this.connect(this.do,()=>this.doit()),this.connect(this.properties.active.change,()=>this.set_active());for(const t of this.tools)this.connect(t.properties.active.change,()=>{this.active=t.active})}doit(){for(const t of this.tools)t.do.emit()}set_active(){for(const t of this.tools)t.active=this.active}get menu(){const{menu:t}=this.tools[0];if(null==t)return null;const o=[];for(const[e,i]of c.enumerate(t))if(null==e)o.push(null);else{const t=()=>{var t,o;for(const e of this.tools)null===(o=null===(t=e.menu)||void 0===t?void 0:t[i])||void 0===o||o.handler()};o.push(Object.assign(Object.assign({},e),{handler:t}))}return o}}e.ToolProxy=r,r.__name__=\"ToolProxy\",r.init_ToolProxy()},\n",
       "      function _(o,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=o(1).__importStar(o(18)),e=o(9),n=o(13),r=o(305),l=o(379),c=o(272),h=o(212);class a extends r.ToolbarBase{constructor(o){super(o)}static init_ProxyToolbar(){this.define({toolbars:[i.Array,[]]})}initialize(){super.initialize(),this._merge_tools()}_merge_tools(){this._proxied_tools=[];const o={},t={},s={},i=[],r=[];for(const o of this.help)e.includes(r,o.redirect)||(i.push(o),r.push(o.redirect));this._proxied_tools.push(...i),this.help=i;for(const[o,t]of n.entries(this.gestures)){o in s||(s[o]={});for(const i of t.tools)i.type in s[o]||(s[o][i.type]=[]),s[o][i.type].push(i)}for(const t of this.inspectors)t.type in o||(o[t.type]=[]),o[t.type].push(t);for(const o of this.actions)o.type in t||(t[o.type]=[]),t[o.type].push(o);const c=(o,t=!1)=>{const s=new l.ToolProxy({tools:o,active:t});return this._proxied_tools.push(s),s};for(const o of n.keys(s)){const t=this.gestures[o];t.tools=[];for(const i of n.keys(s[o])){const e=s[o][i];if(e.length>0)if(\"multi\"==o)for(const o of e){const s=c([o]);t.tools.push(s),this.connect(s.properties.active.change,()=>this._active_change(s))}else{const o=c(e);t.tools.push(o),this.connect(o.properties.active.change,()=>this._active_change(o))}}}this.actions=[];for(const[o,s]of n.entries(t))if(\"CustomAction\"==o)for(const o of s)this.actions.push(c([o]));else s.length>0&&this.actions.push(c(s));this.inspectors=[];for(const t of n.values(o))t.length>0&&this.inspectors.push(c(t,!0));for(const[o,t]of n.entries(this.gestures))0!=t.tools.length&&(t.tools=e.sort_by(t.tools,o=>o.default_order),\"pinch\"!=o&&\"scroll\"!=o&&\"multi\"!=o&&(t.tools[0].active=!0))}}s.ProxyToolbar=a,a.__name__=\"ProxyToolbar\",a.init_ProxyToolbar();class _ extends c.LayoutDOMView{initialize(){this.model.toolbar.toolbar_location=this.model.toolbar_location,super.initialize()}get child_models(){return[this.model.toolbar]}_update_layout(){this.layout=new h.ContentBox(this.child_views[0].el);const{toolbar:o}=this.model;o.horizontal?this.layout.set_sizing({width_policy:\"fit\",min_width:100,height_policy:\"fixed\"}):this.layout.set_sizing({width_policy:\"fixed\",height_policy:\"fit\",min_height:100})}}s.ToolbarBoxView=_,_.__name__=\"ToolbarBoxView\";class p extends c.LayoutDOM{constructor(o){super(o)}static init_ToolbarBox(){this.prototype.default_view=_,this.define({toolbar:[i.Instance],toolbar_location:[i.Location,\"right\"]})}}s.ToolbarBox=p,p.__name__=\"ToolbarBox\",p.init_ToolbarBox()},\n",
       "      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(5),i=e(78),d=e(115),c=e(72),l=e(382);t.index={},t.add_document_standalone=async function(e,n,s=[],a=!1){const u=new Map;async function r(o){let a;const r=e.roots().indexOf(o),f=s[r];null!=f?a=f:n.classList.contains(l.BOKEH_ROOT)?a=n:(a=c.div({class:l.BOKEH_ROOT}),n.appendChild(a));const v=await d.build_view(o,{parent:null});return v instanceof i.DOMView&&v.renderTo(a),u.set(o,v),t.index[o.id]=v,v}for(const n of e.roots())await r(n);return a&&(window.document.title=e.title()),e.on_change(e=>{e instanceof o.RootAddedEvent?r(e.model):e instanceof o.RootRemovedEvent?function(e){const n=u.get(e);null!=n&&(n.remove(),u.delete(e),delete t.index[e.id])}(e.model):a&&e instanceof o.TitleChangedEvent&&(window.document.title=e.title)}),[...u.values()]}},\n",
       "      function _(e,o,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(72),r=e(273);function l(e){let o=document.getElementById(e);if(null==o)throw new Error(`Error rendering Bokeh model: could not find #${e} HTML tag`);if(!document.body.contains(o))throw new Error(`Error rendering Bokeh model: element #${e} must be under <body>`);if(\"SCRIPT\"==o.tagName){const e=t.div({class:n.BOKEH_ROOT});t.replaceWith(o,e),o=e}return o}n.BOKEH_ROOT=r.bk_root,n._resolve_element=function(e){const{elementid:o}=e;return null!=o?l(o):document.body},n._resolve_root_elements=function(e){const o=[];if(null!=e.root_ids&&null!=e.roots)for(const n of e.root_ids)o.push(l(e.roots[n]));return o}},\n",
       "      function _(n,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const e=n(384),s=n(19),c=n(381);t._get_ws_url=function(n,o){let t,e=\"ws:\";return\"https:\"==window.location.protocol&&(e=\"wss:\"),null!=o?(t=document.createElement(\"a\"),t.href=o):t=window.location,null!=n?\"/\"==n&&(n=\"\"):n=t.pathname.replace(/\\/+$/,\"\"),e+\"//\"+t.host+n+\"/ws\"};const r={};t.add_document_from_session=async function(n,o,t,a=[],i=!1){const l=window.location.search.substr(1);let d;try{d=await function(n,o,t){const s=e.parse_token(o).session_id;n in r||(r[n]={});const c=r[n];return s in c||(c[s]=e.pull_session(n,o,t)),c[s]}(n,o,l)}catch(n){const t=e.parse_token(o).session_id;throw s.logger.error(`Failed to load Bokeh session ${t}: ${n}`),n}return c.add_document_standalone(d.document,t,a,i)}},\n",
       "      function _(e,s,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(19),o=e(5),r=e(385),i=e(386),c=e(387);n.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",n.DEFAULT_TOKEN=\"eyJzZXNzaW9uX2lkIjogImRlZmF1bHQifQ\";let l=0;function _(e){let s=e.split(\".\")[0];const n=s.length%4;return 0!=n&&(s+=\"=\".repeat(4-n)),JSON.parse(atob(s.replace(/_/g,\"/\").replace(/-/g,\"+\")))}n.parse_token=_;class h{constructor(e=n.DEFAULT_SERVER_WEBSOCKET_URL,s=n.DEFAULT_TOKEN,o=null){this.url=e,this.token=s,this.args_string=o,this._number=l++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_replies=new Map,this._pending_messages=[],this._receiver=new i.Receiver,this.id=_(s).session_id.split(\".\")[0],t.logger.debug(`Creating websocket ${this._number} to '${this.url}' session '${this.id}'`)}async connect(){if(this.closed_permanently)throw new Error(\"Cannot connect() a closed ClientConnection\");if(null!=this.socket)throw new Error(\"Already connected\");this._current_handler=null,this._pending_replies.clear(),this._pending_messages=[];try{let e=\"\"+this.url;return null!=this.args_string&&this.args_string.length>0&&(e+=\"?\"+this.args_string),this.socket=new WebSocket(e,[\"bokeh\",this.token]),new Promise((e,s)=>{this.socket.binaryType=\"arraybuffer\",this.socket.onopen=()=>this._on_open(e,s),this.socket.onmessage=e=>this._on_message(e),this.socket.onclose=e=>this._on_close(e,s),this.socket.onerror=()=>this._on_error(s)})}catch(e){throw t.logger.error(\"websocket creation failed to url: \"+this.url),t.logger.error(\" - \"+e),e}}close(){this.closed_permanently||(t.logger.debug(\"Permanently closing websocket connection \"+this._number),this.closed_permanently=!0,null!=this.socket&&this.socket.close(1e3,\"close method called on ClientConnection \"+this._number),this.session._connection_closed())}_schedule_reconnect(e){setTimeout(()=>{this.closed_permanently||t.logger.info(`Websocket connection ${this._number} disconnected, will not attempt to reconnect`)},e)}send(e){if(null==this.socket)throw new Error(\"not connected so cannot send \"+e);e.send(this.socket)}async send_with_reply(e){const s=await new Promise((s,n)=>{this._pending_replies.set(e.msgid(),{resolve:s,reject:n}),this.send(e)});if(\"ERROR\"===s.msgtype())throw new Error(\"Error reply \"+s.content.text);return s}async _pull_doc_json(){const e=r.Message.create(\"PULL-DOC-REQ\",{}),s=await this.send_with_reply(e);if(!(\"doc\"in s.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return s.content.doc}async _repull_session_doc(e,s){var n;t.logger.debug(this.session?\"Repulling session\":\"Pulling session for first time\");try{const n=await this._pull_doc_json();if(null==this.session)if(this.closed_permanently)t.logger.debug(\"Got new document after connection was already closed\"),s(new Error(\"The connection has been closed\"));else{const s=o.Document.from_json(n),i=o.Document._compute_patch_since_json(n,s);if(i.events.length>0){t.logger.debug(`Sending ${i.events.length} changes from model construction back to server`);const e=r.Message.create(\"PATCH-DOC\",{},i);this.send(e)}this.session=new c.ClientSession(this,s,this.id);for(const e of this._pending_messages)this.session.handle(e);this._pending_messages=[],t.logger.debug(\"Created a new session from new pulled doc\"),e(this.session)}else this.session.document.replace_with_json(n),t.logger.debug(\"Updated existing session with new pulled doc\")}catch(e){null===(n=console.trace)||void 0===n||n.call(console,e),t.logger.error(\"Failed to repull session \"+e),s(e)}}_on_open(e,s){t.logger.info(`Websocket connection ${this._number} is now open`),this._current_handler=n=>{this._awaiting_ack_handler(n,e,s)}}_on_message(e){null==this._current_handler&&t.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(e.data)}catch(e){this._close_bad_protocol(e.toString())}const s=this._receiver.message;if(null!=s){const e=s.problem();null!=e&&this._close_bad_protocol(e),this._current_handler(s)}}_on_close(e,s){t.logger.info(`Lost websocket ${this._number} connection, ${e.code} (${e.reason})`),this.socket=null,this._pending_replies.forEach(e=>e.reject(\"Disconnected\")),this._pending_replies.clear(),this.closed_permanently||this._schedule_reconnect(2e3),s(new Error(`Lost websocket connection, ${e.code} (${e.reason})`))}_on_error(e){t.logger.debug(\"Websocket error on socket \"+this._number);const s=\"Could not open websocket\";t.logger.error(\"Failed to connect to Bokeh server: \"+s),e(new Error(s))}_close_bad_protocol(e){t.logger.error(\"Closing connection: \"+e),null!=this.socket&&this.socket.close(1002,e)}_awaiting_ack_handler(e,s,n){\"ACK\"===e.msgtype()?(this._current_handler=e=>this._steady_state_handler(e),this._repull_session_doc(s,n)):this._close_bad_protocol(\"First message was not an ACK\")}_steady_state_handler(e){const s=e.reqid(),n=this._pending_replies.get(s);n?(this._pending_replies.delete(s),n.resolve(e)):this.session?this.session.handle(e):\"PATCH-DOC\"!=e.msgtype()&&this._pending_messages.push(e)}}n.ClientConnection=h,h.__name__=\"ClientConnection\",n.pull_session=function(e,s,n){return new h(e,s,n).connect()}},\n",
       "      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const r=e(29);class n{constructor(e,s,t){this.header=e,this.metadata=s,this.content=t,this.buffers=new Map}static assemble(e,s,t){const r=JSON.parse(e),i=JSON.parse(s),a=JSON.parse(t);return new n(r,i,a)}assemble_buffer(e,s){const t=null!=this.header.num_buffers?this.header.num_buffers:0;if(t<=this.buffers.size)throw new Error(\"too many buffers received, expecting \"+t);const{id:r}=JSON.parse(e);this.buffers.set(r,s)}static create(e,s,t={}){const r=n.create_header(e);return new n(r,s,t)}static create_header(e){return{msgid:r.uniqueId(),msgtype:e}}complete(){return null!=this.header&&null!=this.metadata&&null!=this.content&&(null==this.header.num_buffers||this.buffers.size==this.header.num_buffers)}send(e){if((null!=this.header.num_buffers?this.header.num_buffers:0)>0)throw new Error(\"BokehJS only supports receiving buffers, not sending\");const s=JSON.stringify(this.header),t=JSON.stringify(this.metadata),r=JSON.stringify(this.content);e.send(s),e.send(t),e.send(r)}msgid(){return this.header.msgid}msgtype(){return this.header.msgtype}reqid(){return this.header.reqid}problem(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"}}t.Message=n,n.__name__=\"Message\"},\n",
       "      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const _=e(385),r=e(8);class i{constructor(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}consume(e){this._current_consumer(e)}_HEADER(e){this._assume_text(e),this.message=null,this._partial=null,this._fragments=[e],this._buf_header=null,this._current_consumer=this._METADATA}_METADATA(e){this._assume_text(e),this._fragments.push(e),this._current_consumer=this._CONTENT}_CONTENT(e){this._assume_text(e),this._fragments.push(e);const[t,s,r]=this._fragments.slice(0,3);this._partial=_.Message.assemble(t,s,r),this._check_complete()}_BUFFER_HEADER(e){this._assume_text(e),this._buf_header=e,this._current_consumer=this._BUFFER_PAYLOAD}_BUFFER_PAYLOAD(e){this._assume_binary(e),this._partial.assemble_buffer(this._buf_header,e),this._check_complete()}_assume_text(e){if(!r.isString(e))throw new Error(\"Expected text fragment but received binary fragment\")}_assume_binary(e){if(!(e instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")}_check_complete(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER}}s.Receiver=i,i.__name__=\"Receiver\"},\n",
       "      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(5),s=e(385),c=e(19);class i{constructor(e,t,n){this._connection=e,this.document=t,this.id=n,this._document_listener=e=>{this._document_changed(e)},this.document.on_change(this._document_listener,!0)}handle(e){const t=e.msgtype();\"PATCH-DOC\"===t?this._handle_patch(e):\"OK\"===t?this._handle_ok(e):\"ERROR\"===t?this._handle_error(e):c.logger.debug(\"Doing nothing with message \"+e.msgtype())}close(){this._connection.close()}_connection_closed(){this.document.remove_on_change(this._document_listener)}async request_server_info(){const e=s.Message.create(\"SERVER-INFO-REQ\",{});return(await this._connection.send_with_reply(e)).content}async force_roundtrip(){await this.request_server_info()}_document_changed(e){if(e.setter_id===this.id)return;const t=e instanceof o.DocumentEventBatch?e.events:[e],n=this.document.create_json_patch(t),c=s.Message.create(\"PATCH-DOC\",{},n);this._connection.send(c)}_handle_patch(e){this.document.apply_json_patch(e.content,e.buffers,this.id)}_handle_ok(e){c.logger.trace(\"Unhandled OK reply to \"+e.reqid())}_handle_error(e){c.logger.error(`Unhandled ERROR reply to ${e.reqid()}: ${e.content.text}`)}}n.ClientSession=i,i.__name__=\"ClientSession\"},\n",
       "      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1);var r=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var o,t=e[Symbol.asyncIterator];return t?t.call(e):(e=\"function\"==typeof __values?__values(e):e[Symbol.iterator](),o={},n(\"next\"),n(\"throw\"),n(\"return\"),o[Symbol.asyncIterator]=function(){return this},o);function n(t){o[t]=e[t]&&function(o){return new Promise((function(n,r){(function(e,o,t,n){Promise.resolve(n).then((function(o){e({value:o,done:t})}),o)})(n,r,(o=e[t](o)).done,o.value)}))}}};const s=e(5),i=e(386),l=e(19),a=e(72),c=e(13),u=e(381),f=e(382),g=n.__importDefault(e(73)),m=n.__importDefault(e(311)),d=n.__importDefault(e(389));function p(e,o){o.buffers.length>0?e.consume(o.buffers[0].buffer):e.consume(o.content.data);const t=e.message;null!=t&&this.apply_json_patch(t.content,t.buffers)}function _(e,o){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){l.logger.info(\"Registering Jupyter comms for target \"+e);const t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(e,t=>{l.logger.info(\"Registering Jupyter comms for target \"+e);const n=new i.Receiver;t.on_msg(p.bind(o,n))})}catch(e){l.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(o.roots()[0].id in t.kernels){l.logger.info(\"Registering JupyterLab comms for target \"+e);const n=t.kernels[o.roots()[0].id];try{n.registerCommTarget(e,t=>{l.logger.info(\"Registering JupyterLab comms for target \"+e);const n=new i.Receiver;t.onMsg=p.bind(o,n)})}catch(e){l.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(\"undefined\"!=typeof google&&null!=google.colab.kernel){l.logger.info(\"Registering Google Colab comms for target \"+e);const t=google.colab.kernel.comms;try{t.registerTarget(e,async t=>{var n,s,a;l.logger.info(\"Registering Google Colab comms for target \"+e);const c=new i.Receiver;try{for(var u,f=r(t.messages);!(u=await f.next()).done;){const e=u.value,t={data:e.data},n=[];for(const o of null!==(a=e.buffers)&&void 0!==a?a:[])n.push(new DataView(o));const r={content:t,buffers:n};p.bind(o)(c,r)}}catch(e){n={error:e}}finally{try{u&&!u.done&&(s=f.return)&&await s.call(f)}finally{if(n)throw n.error}}})}catch(e){l.logger.warn(`Google Colab comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest @bokeh/jupyter_bokeh extension is installed. In an exported notebook this warning is expected.\")}a.stylesheet.append(g.default),a.stylesheet.append(m.default),a.stylesheet.append(d.default),t.kernels={},t.embed_items_notebook=function(e,o){if(1!=c.size(e))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");const t=s.Document.from_json(c.values(e)[0]);for(const e of o){null!=e.notebook_comms_target&&_(e.notebook_comms_target,t);const o=f._resolve_element(e),n=f._resolve_root_elements(e);u.add_document_standalone(t,o,n)}}},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});o.default=\"\\n/* notebook specific tweaks so no black outline and matching padding\\n/* can't be wrapped inside bk-root. here are the offending jupyter lines:\\n/* https://github.com/jupyter/notebook/blob/master/notebook/static/notebook/less/renderedhtml.less#L59-L76 */\\n.rendered_html .bk-root .bk-tooltip table,\\n.rendered_html .bk-root .bk-tooltip tr,\\n.rendered_html .bk-root .bk-tooltip th,\\n.rendered_html .bk-root .bk-tooltip td {\\n  border: none;\\n  padding: 1px;\\n}\\n\"},\n",
       "      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});const o=e(1);o.__exportStar(e(385),_),o.__exportStar(e(386),_)},\n",
       "      function _(e,t,n){function s(){const e=document.getElementsByTagName(\"body\")[0],t=document.getElementsByClassName(\"bokeh-test-div\");1==t.length&&(e.removeChild(t[0]),delete t[0]);const n=document.createElement(\"div\");n.classList.add(\"bokeh-test-div\"),n.style.display=\"none\",e.insertBefore(n,e.firstChild)}Object.defineProperty(n,\"__esModule\",{value:!0}),n.results={},n.init=function(){s()},n.record0=function(e,t){n.results[e]=t},n.record=function(e,t){n.results[e]=t,s()},n.count=function(e){null==n.results[e]&&(n.results[e]=0),n.results[e]+=1,s()}},\n",
       "      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0}),o.safely=function(e,t=!1){try{return e()}catch(e){if(function(e){const t=document.createElement(\"div\");t.style.backgroundColor=\"#f2dede\",t.style.border=\"1px solid #a94442\",t.style.borderRadius=\"4px\",t.style.display=\"inline-block\",t.style.fontFamily=\"sans-serif\",t.style.marginTop=\"5px\",t.style.minWidth=\"200px\",t.style.padding=\"5px 5px 5px 10px\",t.classList.add(\"bokeh-error-box-into-flames\");const o=document.createElement(\"span\");o.style.backgroundColor=\"#a94442\",o.style.borderRadius=\"0px 4px 0px 0px\",o.style.color=\"white\",o.style.cursor=\"pointer\",o.style.cssFloat=\"right\",o.style.fontSize=\"0.8em\",o.style.margin=\"-6px -6px 0px 0px\",o.style.padding=\"2px 5px 4px 5px\",o.title=\"close\",o.setAttribute(\"aria-label\",\"close\"),o.appendChild(document.createTextNode(\"x\")),o.addEventListener(\"click\",()=>r.removeChild(t));const n=document.createElement(\"h3\");n.style.color=\"#a94442\",n.style.margin=\"8px 0px 0px 0px\",n.style.padding=\"0px\",n.appendChild(document.createTextNode(\"Bokeh Error\"));const l=document.createElement(\"pre\");l.style.whiteSpace=\"unset\",l.style.overflowX=\"auto\";const s=e instanceof Error?e.message:e;l.appendChild(document.createTextNode(s)),t.appendChild(o),t.appendChild(n),t.appendChild(l);const r=document.getElementsByTagName(\"body\")[0];r.insertBefore(t,r.firstChild)}(e),t)return;throw e}}},\n",
       "      ], 0, {\"main\":0,\"tslib\":1,\"index\":2,\"version\":3,\"embed/index\":4,\"document/index\":5,\"document/document\":6,\"base\":7,\"core/util/types\":8,\"core/util/array\":9,\"core/util/math\":10,\"core/util/assert\":11,\"core/util/arrayable\":12,\"core/util/object\":13,\"core/has_props\":14,\"core/signaling\":15,\"core/util/callback\":16,\"core/util/refs\":17,\"core/properties\":18,\"core/logging\":19,\"core/enums\":20,\"core/kinds\":21,\"core/util/color\":22,\"core/util/svg_colors\":23,\"core/types\":24,\"core/util/eq\":25,\"core/util/data_structures\":26,\"core/settings\":27,\"core/property_mixins\":28,\"core/util/string\":29,\"core/util/ndarray\":30,\"core/util/serialization\":31,\"core/util/compat\":32,\"core/util/pretty\":33,\"models/index\":34,\"models/annotations/index\":35,\"models/annotations/annotation\":36,\"core/util/projections\":37,\"models/renderers/renderer\":70,\"core/view\":71,\"core/dom\":72,\"styles/root.css\":73,\"core/visuals\":74,\"core/util/svg\":75,\"core/util/affine\":76,\"models/canvas/canvas\":77,\"core/dom_view\":78,\"core/util/bbox\":79,\"core/util/canvas\":80,\"model\":81,\"models/canvas/coordinates\":82,\"models/annotations/arrow\":83,\"models/annotations/arrow_head\":84,\"models/sources/column_data_source\":85,\"models/sources/columnar_data_source\":86,\"models/sources/data_source\":87,\"models/selections/selection\":88,\"core/selection_manager\":89,\"models/renderers/glyph_renderer\":90,\"models/renderers/data_renderer\":91,\"models/glyphs/line\":92,\"models/glyphs/xy_glyph\":93,\"models/glyphs/glyph\":94,\"core/util/spatial\":95,\"models/ranges/factor_range\":98,\"models/ranges/range\":99,\"models/glyphs/utils\":100,\"core/hittest\":101,\"models/glyphs/webgl/line\":102,\"models/glyphs/webgl/utils/index\":103,\"models/glyphs/webgl/utils/program\":104,\"models/glyphs/webgl/utils/buffer\":105,\"models/glyphs/webgl/utils/texture\":106,\"models/glyphs/webgl/base\":107,\"models/glyphs/webgl/line.vert\":108,\"models/glyphs/webgl/line.frag\":109,\"models/glyphs/patch\":110,\"models/glyphs/harea\":111,\"models/glyphs/area\":112,\"models/glyphs/varea\":113,\"models/sources/cds_view\":114,\"core/build_views\":115,\"models/renderers/graph_renderer\":116,\"models/graphs/graph_hit_test_policy\":117,\"models/selections/interaction_policy\":118,\"core/util/typed_array\":119,\"core/util/set\":120,\"document/events\":121,\"models/annotations/band\":122,\"models/annotations/upper_lower\":123,\"models/annotations/box_annotation\":124,\"models/annotations/color_bar\":125,\"models/tickers/basic_ticker\":126,\"models/tickers/adaptive_ticker\":127,\"models/tickers/continuous_ticker\":128,\"models/tickers/ticker\":129,\"models/formatters/basic_tick_formatter\":130,\"models/formatters/tick_formatter\":131,\"models/mappers/index\":132,\"models/mappers/categorical_color_mapper\":133,\"models/mappers/categorical_mapper\":134,\"models/mappers/color_mapper\":135,\"models/mappers/mapper\":136,\"models/transforms/transform\":137,\"models/mappers/categorical_marker_mapper\":138,\"models/mappers/categorical_pattern_mapper\":139,\"models/mappers/continuous_color_mapper\":140,\"models/mappers/linear_color_mapper\":141,\"models/mappers/log_color_mapper\":142,\"models/mappers/scanning_color_mapper\":143,\"models/mappers/eqhist_color_mapper\":144,\"models/scales/linear_scale\":145,\"models/scales/continuous_scale\":146,\"models/scales/scale\":147,\"models/transforms/index\":148,\"models/transforms/customjs_transform\":149,\"models/transforms/dodge\":150,\"models/transforms/range_transform\":151,\"models/transforms/interpolator\":152,\"models/transforms/jitter\":153,\"models/transforms/linear_interpolator\":154,\"models/transforms/step_interpolator\":155,\"models/scales/linear_interpolation_scale\":156,\"models/scales/log_scale\":157,\"models/ranges/range1d\":158,\"core/util/text\":159,\"models/annotations/label\":160,\"models/annotations/text_annotation\":161,\"models/annotations/label_set\":162,\"models/annotations/legend\":163,\"models/annotations/legend_item\":164,\"core/vectorization\":165,\"models/annotations/poly_annotation\":166,\"models/annotations/slope\":167,\"models/annotations/span\":168,\"models/annotations/title\":169,\"models/annotations/toolbar_panel\":170,\"models/annotations/tooltip\":171,\"styles/tooltips\":172,\"styles/mixins\":173,\"styles/tooltips.css\":174,\"models/annotations/whisker\":175,\"models/axes/index\":176,\"models/axes/axis\":177,\"models/renderers/guide_renderer\":178,\"models/axes/categorical_axis\":179,\"models/tickers/categorical_ticker\":180,\"models/formatters/categorical_tick_formatter\":181,\"models/axes/continuous_axis\":182,\"models/axes/datetime_axis\":183,\"models/axes/linear_axis\":184,\"models/formatters/datetime_tick_formatter\":185,\"core/util/templating\":187,\"models/tickers/datetime_ticker\":190,\"models/tickers/composite_ticker\":191,\"models/tickers/days_ticker\":192,\"models/tickers/single_interval_ticker\":193,\"models/tickers/util\":194,\"models/tickers/months_ticker\":195,\"models/tickers/years_ticker\":196,\"models/axes/log_axis\":197,\"models/formatters/log_tick_formatter\":198,\"models/tickers/log_ticker\":199,\"models/axes/mercator_axis\":200,\"models/formatters/mercator_tick_formatter\":201,\"models/tickers/mercator_ticker\":202,\"models/callbacks/index\":203,\"models/callbacks/customjs\":204,\"models/callbacks/callback\":205,\"models/callbacks/open_url\":206,\"models/canvas/index\":207,\"models/canvas/cartesian_frame\":208,\"models/scales/categorical_scale\":209,\"models/ranges/data_range1d\":210,\"models/ranges/data_range\":211,\"core/layout/index\":212,\"core/layout/types\":213,\"core/layout/layoutable\":214,\"core/layout/alignments\":215,\"core/layout/grid\":216,\"core/layout/html\":217,\"models/expressions/index\":218,\"models/expressions/expression\":219,\"models/expressions/stack\":220,\"models/expressions/cumsum\":221,\"models/filters/index\":222,\"models/filters/boolean_filter\":223,\"models/filters/filter\":224,\"models/filters/customjs_filter\":225,\"models/filters/group_filter\":226,\"models/filters/index_filter\":227,\"models/formatters/index\":228,\"models/formatters/func_tick_formatter\":229,\"models/formatters/numeral_tick_formatter\":230,\"models/formatters/printf_tick_formatter\":231,\"models/glyphs/index\":232,\"models/glyphs/annular_wedge\":233,\"models/glyphs/annulus\":234,\"models/glyphs/arc\":235,\"models/glyphs/bezier\":236,\"models/glyphs/circle\":237,\"models/glyphs/webgl/markers\":238,\"models/glyphs/webgl/markers.vert\":239,\"models/glyphs/webgl/markers.frag\":240,\"models/glyphs/center_rotatable\":241,\"models/glyphs/ellipse\":242,\"models/glyphs/ellipse_oval\":243,\"models/glyphs/hbar\":244,\"models/glyphs/box\":245,\"models/glyphs/hex_tile\":246,\"models/glyphs/image\":247,\"models/glyphs/image_base\":248,\"models/glyphs/image_rgba\":249,\"models/glyphs/image_url\":250,\"core/util/image\":251,\"models/glyphs/multi_line\":252,\"models/glyphs/multi_polygons\":253,\"models/glyphs/oval\":254,\"models/glyphs/patches\":255,\"models/glyphs/quad\":256,\"models/glyphs/quadratic\":257,\"models/glyphs/ray\":258,\"models/glyphs/rect\":259,\"models/glyphs/segment\":260,\"models/glyphs/step\":261,\"models/glyphs/text\":262,\"models/glyphs/vbar\":263,\"models/glyphs/wedge\":264,\"models/graphs/index\":265,\"models/graphs/layout_provider\":266,\"models/graphs/static_layout_provider\":267,\"models/grids/index\":268,\"models/grids/grid\":269,\"models/layouts/index\":270,\"models/layouts/box\":271,\"models/layouts/layout_dom\":272,\"styles/root\":273,\"models/layouts/column\":274,\"models/layouts/grid_box\":275,\"models/layouts/html_box\":276,\"models/layouts/row\":277,\"models/layouts/spacer\":278,\"models/layouts/tabs\":279,\"styles/tabs\":280,\"styles/buttons\":281,\"styles/menus\":282,\"styles/buttons.css\":283,\"styles/menus.css\":284,\"styles/tabs.css\":285,\"models/layouts/widget_box\":286,\"models/markers/index\":287,\"models/markers/defs\":288,\"models/markers/marker\":289,\"models/markers/scatter\":290,\"models/plots/index\":291,\"models/plots/gmap_plot\":292,\"models/plots/plot\":293,\"models/tools/toolbar\":294,\"models/tools/inspectors/inspect_tool\":295,\"models/tools/button_tool\":296,\"models/tools/tool\":298,\"styles/toolbar\":299,\"styles/toolbar.css\":300,\"styles/icons.css\":301,\"core/util/menus\":302,\"core/util/iterator\":303,\"models/tools/on_off_button\":304,\"models/tools/toolbar_base\":305,\"models/tools/gestures/gesture_tool\":306,\"models/tools/actions/action_tool\":307,\"models/tools/actions/help_tool\":308,\"styles/icons\":309,\"styles/logo\":310,\"styles/logo.css\":311,\"models/plots/plot_canvas\":312,\"core/bokeh_events\":313,\"core/ui_events\":314,\"core/util/wheel\":315,\"core/util/throttle\":316,\"core/layout/border\":317,\"core/layout/side_panel\":318,\"models/plots/gmap_plot_canvas\":319,\"models/ranges/index\":320,\"models/renderers/index\":321,\"models/scales/index\":322,\"models/selections/index\":323,\"models/sources/index\":324,\"models/sources/server_sent_data_source\":325,\"models/sources/web_data_source\":326,\"models/sources/ajax_data_source\":327,\"models/sources/geojson_data_source\":328,\"models/tickers/index\":329,\"models/tickers/fixed_ticker\":330,\"models/tiles/index\":331,\"models/tiles/bbox_tile_source\":332,\"models/tiles/mercator_tile_source\":333,\"models/tiles/tile_source\":334,\"models/tiles/tile_utils\":335,\"models/tiles/quadkey_tile_source\":336,\"models/tiles/tile_renderer\":337,\"models/tiles/wmts_tile_source\":338,\"styles/tiles\":339,\"styles/tiles.css\":340,\"models/tiles/tms_tile_source\":341,\"models/textures/index\":342,\"models/textures/canvas_texture\":343,\"models/textures/texture\":344,\"models/textures/image_url_texture\":345,\"models/tools/index\":346,\"models/tools/actions/custom_action\":347,\"models/tools/actions/redo_tool\":348,\"models/tools/actions/reset_tool\":349,\"models/tools/actions/save_tool\":350,\"models/tools/actions/undo_tool\":351,\"models/tools/actions/zoom_in_tool\":352,\"models/tools/actions/zoom_base_tool\":353,\"core/util/zoom\":354,\"models/tools/actions/zoom_out_tool\":355,\"models/tools/edit/edit_tool\":356,\"models/tools/edit/box_edit_tool\":357,\"models/tools/edit/freehand_draw_tool\":358,\"models/tools/edit/point_draw_tool\":359,\"models/tools/edit/poly_draw_tool\":360,\"models/tools/edit/poly_tool\":361,\"models/tools/edit/poly_edit_tool\":362,\"models/tools/gestures/box_select_tool\":363,\"models/tools/gestures/select_tool\":364,\"models/tools/util\":365,\"models/tools/gestures/box_zoom_tool\":366,\"models/tools/gestures/lasso_select_tool\":367,\"models/tools/gestures/poly_select_tool\":368,\"models/tools/edit/line_edit_tool\":369,\"models/tools/edit/line_tool\":370,\"models/tools/gestures/pan_tool\":371,\"models/tools/gestures/range_tool\":372,\"models/tools/gestures/tap_tool\":373,\"models/tools/gestures/wheel_pan_tool\":374,\"models/tools/gestures/wheel_zoom_tool\":375,\"models/tools/inspectors/crosshair_tool\":376,\"models/tools/inspectors/customjs_hover\":377,\"models/tools/inspectors/hover_tool\":378,\"models/tools/tool_proxy\":379,\"models/tools/toolbar_box\":380,\"embed/standalone\":381,\"embed/dom\":382,\"embed/server\":383,\"client/connection\":384,\"protocol/message\":385,\"protocol/receiver\":386,\"client/session\":387,\"embed/notebook\":388,\"styles/notebook.css\":389,\"protocol/index\":390,\"testing\":391,\"safely\":392}, {});\n",
       "      })\n",
       "\n",
       "\n",
       "      /* END bokeh.min.js */\n",
       "    },\n",
       "    \n",
       "    function(Bokeh) {\n",
       "      /* BEGIN bokeh-widgets.min.js */\n",
       "      /*!\n",
       "       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n",
       "       * All rights reserved.\n",
       "       * \n",
       "       * Redistribution and use in source and binary forms, with or without modification,\n",
       "       * are permitted provided that the following conditions are met:\n",
       "       * \n",
       "       * Redistributions of source code must retain the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer.\n",
       "       * \n",
       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer in the documentation\n",
       "       * and/or other materials provided with the distribution.\n",
       "       * \n",
       "       * Neither the name of Anaconda nor the names of any contributors\n",
       "       * may be used to endorse or promote products derived from this software\n",
       "       * without specific prior written permission.\n",
       "       * \n",
       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
       "      */\n",
       "      (function(root, factory) {\n",
       "        factory(root[\"Bokeh\"], \"2.2.1\");\n",
       "      })(this, function(Bokeh, version) {\n",
       "        var define;\n",
       "        return (function(modules, entry, aliases, externals) {\n",
       "          const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n",
       "          if (bokeh != null) {\n",
       "            return bokeh.register_plugin(modules, entry, aliases);\n",
       "          } else {\n",
       "            throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n",
       "          }\n",
       "        })\n",
       "      ({\n",
       "      402: function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(1).__importStar(e(403));o.Widgets=r;e(7).register_models(r)},\n",
       "      403: function _(r,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});var a=r(404);t.AbstractButton=a.AbstractButton;var o=r(407);t.AbstractIcon=o.AbstractIcon;var u=r(408);t.AutocompleteInput=u.AutocompleteInput;var n=r(413);t.Button=n.Button;var i=r(414);t.CheckboxButtonGroup=i.CheckboxButtonGroup;var v=r(416);t.CheckboxGroup=v.CheckboxGroup;var p=r(418);t.ColorPicker=p.ColorPicker;var c=r(419);t.DatePicker=c.DatePicker;var l=r(422);t.DateRangeSlider=l.DateRangeSlider;var d=r(428);t.DateSlider=d.DateSlider;var I=r(429);t.Div=I.Div;var g=r(433);t.Dropdown=g.Dropdown;var S=r(434);t.FileInput=S.FileInput;var P=r(410);t.InputWidget=P.InputWidget;var k=r(430);t.Markup=k.Markup;var x=r(435);t.MultiSelect=x.MultiSelect;var D=r(436);t.Paragraph=D.Paragraph;var b=r(437);t.PasswordInput=b.PasswordInput;var s=r(438);t.MultiChoice=s.MultiChoice;var h=r(441);t.NumericInput=h.NumericInput;var A=r(444);t.PreText=A.PreText;var B=r(445);t.RadioButtonGroup=B.RadioButtonGroup;var C=r(446);t.RadioGroup=C.RadioGroup;var G=r(447);t.RangeSlider=G.RangeSlider;var R=r(448);t.Select=R.Select;var T=r(449);t.Slider=T.Slider;var M=r(450);t.Spinner=M.Spinner;var m=r(409);t.TextInput=m.TextInput;var w=r(451);t.TextAreaInput=w.TextAreaInput;var W=r(452);t.Toggle=W.Toggle;var _=r(472);t.Widget=_.Widget},\n",
       "      404: function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=t(1),s=i.__importStar(t(18)),o=t(72),l=t(115),r=t(405),_=t(281),c=i.__importDefault(t(283));class u extends r.ControlView{*controls(){yield this.button_el}async lazy_initialize(){await super.lazy_initialize();const{icon:t}=this.model;null!=t&&(this.icon_view=await l.build_view(t,{parent:this}))}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render())}remove(){null!=this.icon_view&&this.icon_view.remove(),super.remove()}styles(){return[...super.styles(),c.default]}_render_button(...t){return o.button({type:\"button\",disabled:this.model.disabled,class:[_.bk_btn,_.bk_btn_type(this.model.button_type)]},...t)}render(){super.render(),this.button_el=this._render_button(this.model.label),this.button_el.addEventListener(\"click\",()=>this.click()),null!=this.icon_view&&(o.prepend(this.button_el,this.icon_view.el,o.nbsp()),this.icon_view.render()),this.group_el=o.div({class:_.bk_btn_group},this.button_el),this.el.appendChild(this.group_el)}click(){}}n.AbstractButtonView=u,u.__name__=\"AbstractButtonView\";class a extends r.Control{constructor(t){super(t)}static init_AbstractButton(){this.define({label:[s.String,\"Button\"],icon:[s.Instance],button_type:[s.ButtonType,\"default\"]})}}n.AbstractButton=a,a.__name__=\"AbstractButton\",a.init_AbstractButton()},\n",
       "      405: function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(472),n=e(72);class i extends s.WidgetView{connect_signals(){super.connect_signals();const e=this.model.properties;this.on_change(e.disabled,()=>{for(const e of this.controls())n.toggle_attribute(e,\"disabled\",this.model.disabled)})}}o.ControlView=i,i.__name__=\"ControlView\";class l extends s.Widget{constructor(e){super(e)}}o.Control=l,l.__name__=\"Control\"},\n",
       "      472: function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=i(1),n=i(276),r=o.__importStar(i(18));class _ extends n.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}t.WidgetView=_,_.__name__=\"WidgetView\";class s extends n.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define({orientation:[r.Orientation,\"horizontal\"],default_size:[r.Number,300]}),this.override({margin:[5,5,5,5]})}}t.Widget=s,s.__name__=\"Widget\",s.init_Widget()},\n",
       "      407: function _(e,t,c){Object.defineProperty(c,\"__esModule\",{value:!0});const s=e(81),n=e(78);class o extends n.DOMView{}c.AbstractIconView=o,o.__name__=\"AbstractIconView\";class _ extends s.Model{constructor(e){super(e)}}c.AbstractIcon=_,_.__name__=\"AbstractIcon\"},\n",
       "      408: function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=e(1),s=e(409),h=e(72),_=i.__importStar(e(18)),o=e(10),u=e(173),r=e(282),c=i.__importDefault(e(284));class l extends s.TextInputView{constructor(){super(...arguments),this._open=!1,this._last_value=\"\",this._hover_index=0}styles(){return[...super.styles(),c.default]}render(){super.render(),this.input_el.addEventListener(\"keydown\",e=>this._keydown(e)),this.input_el.addEventListener(\"keyup\",e=>this._keyup(e)),this.menu=h.div({class:[r.bk_menu,u.bk_below]}),this.menu.addEventListener(\"click\",e=>this._menu_click(e)),this.menu.addEventListener(\"mouseover\",e=>this._menu_hover(e)),this.el.appendChild(this.menu),h.undisplay(this.menu)}change_input(){this._open&&this.menu.children.length>0&&(this.model.value=this.menu.children[this._hover_index].textContent,this.input_el.focus(),this._hide_menu())}_update_completions(e){h.empty(this.menu);for(const t of e){const e=h.div({},t);this.menu.appendChild(e)}e.length>0&&this.menu.children[0].classList.add(u.bk_active)}_show_menu(){if(!this._open){this._open=!0,this._hover_index=0,this._last_value=this.model.value,h.display(this.menu);const e=t=>{const{target:n}=t;n instanceof HTMLElement&&!this.el.contains(n)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,h.undisplay(this.menu))}_menu_click(e){e.target!=e.currentTarget&&e.target instanceof Element&&(this.model.value=e.target.textContent,this.input_el.focus(),this._hide_menu())}_menu_hover(e){if(e.target!=e.currentTarget&&e.target instanceof Element){let t=0;for(t=0;t<this.menu.children.length&&this.menu.children[t].textContent!=e.target.textContent;t++);this._bump_hover(t)}}_bump_hover(e){const t=this.menu.children.length;this._open&&t>0&&(this.menu.children[this._hover_index].classList.remove(u.bk_active),this._hover_index=o.clamp(e,0,t-1),this.menu.children[this._hover_index].classList.add(u.bk_active))}_keydown(e){}_keyup(e){switch(e.keyCode){case h.Keys.Enter:this.change_input();break;case h.Keys.Esc:this._hide_menu();break;case h.Keys.Up:this._bump_hover(this._hover_index-1);break;case h.Keys.Down:this._bump_hover(this._hover_index+1);break;default:{const e=this.input_el.value;if(e.length<this.model.min_characters)return void this._hide_menu();const t=[],{case_sensitive:n}=this.model;let i;i=n?e=>e:e=>e.toLowerCase();for(const n of this.model.completions)i(n).startsWith(i(e))&&t.push(n);this._update_completions(t),0==t.length?this._hide_menu():this._show_menu()}}}}n.AutocompleteInputView=l,l.__name__=\"AutocompleteInputView\";class a extends s.TextInput{constructor(e){super(e)}static init_AutocompleteInput(){this.prototype.default_view=l,this.define({completions:[_.Array,[]],min_characters:[_.Int,2],case_sensitive:[_.Boolean,!0]})}}n.AutocompleteInput=a,a.__name__=\"AutocompleteInput\",a.init_AutocompleteInput()},\n",
       "      409: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(410),l=e(72),p=n.__importStar(e(18)),u=e(412);class a extends s.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.value.change,()=>this.input_el.value=this.model.value),this.connect(this.model.properties.value_input.change,()=>this.input_el.value=this.model.value_input),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled),this.connect(this.model.properties.placeholder.change,()=>this.input_el.placeholder=this.model.placeholder)}render(){super.render(),this.input_el=l.input({type:\"text\",class:u.bk_input,name:this.model.name,value:this.model.value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.input_el.addEventListener(\"input\",()=>this.change_input_oninput()),this.group_el.appendChild(this.input_el)}change_input(){this.model.value=this.input_el.value,super.change_input()}change_input_oninput(){this.model.value_input=this.input_el.value,super.change_input()}}i.TextInputView=a,a.__name__=\"TextInputView\";class h extends s.InputWidget{constructor(e){super(e)}static init_TextInput(){this.prototype.default_view=a,this.define({value:[p.String,\"\"],value_input:[p.String,\"\"],placeholder:[p.String,\"\"]})}}i.TextInput=h,h.__name__=\"TextInput\",h.init_TextInput()},\n",
       "      410: function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),l=t(405),s=t(72),_=n.__importStar(t(18)),o=n.__importDefault(t(411)),r=t(412);class p extends l.ControlView{*controls(){yield this.input_el}connect_signals(){super.connect_signals(),this.connect(this.model.properties.title.change,()=>{this.label_el.textContent=this.model.title})}styles(){return[...super.styles(),o.default]}render(){super.render();const{title:t}=this.model;this.label_el=s.label({style:{display:0==t.length?\"none\":\"\"}},t),this.group_el=s.div({class:r.bk_input_group},this.label_el),this.el.appendChild(this.group_el)}change_input(){}}i.InputWidgetView=p,p.__name__=\"InputWidgetView\";class u extends l.Control{constructor(t){super(t)}static init_InputWidget(){this.define({title:[_.String,\"\"]})}}i.InputWidget=u,u.__name__=\"InputWidget\",u.init_InputWidget()},\n",
       "      411: function _(n,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root .bk-input {\\n  display: inline-block;\\n  width: 100%;\\n  flex-grow: 1;\\n  -webkit-flex-grow: 1;\\n  min-height: 31px;\\n  padding: 0 12px;\\n  background-color: #fff;\\n  border: 1px solid #ccc;\\n  border-radius: 4px;\\n}\\n.bk-root .bk-input:focus {\\n  border-color: #66afe9;\\n  outline: 0;\\n  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\\n}\\n.bk-root .bk-input::placeholder,\\n.bk-root .bk-input:-ms-input-placeholder,\\n.bk-root .bk-input::-moz-placeholder,\\n.bk-root .bk-input::-webkit-input-placeholder {\\n  color: #999;\\n  opacity: 1;\\n}\\n.bk-root .bk-input[disabled] {\\n  cursor: not-allowed;\\n  background-color: #eee;\\n  opacity: 1;\\n}\\n.bk-root select:not([multiple]).bk-input,\\n.bk-root select:not([size]).bk-input {\\n  height: auto;\\n  appearance: none;\\n  -webkit-appearance: none;\\n  background-image: url(\\'data:image/svg+xml;utf8,<svg version=\"1.1\" viewBox=\"0 0 25 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0,0 25,0 12.5,20 Z\" fill=\"black\" /></svg>\\');\\n  background-position: right 0.5em center;\\n  background-size: 8px 6px;\\n  background-repeat: no-repeat;\\n}\\n.bk-root select[multiple].bk-input,\\n.bk-root select[size].bk-input,\\n.bk-root textarea.bk-input {\\n  height: auto;\\n}\\n.bk-root .bk-input-group {\\n  width: 100%;\\n  height: 100%;\\n  display: inline-flex;\\n  display: -webkit-inline-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: start;\\n  -webkit-align-items: start;\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n  white-space: nowrap;\\n}\\n.bk-root .bk-input-group.bk-inline {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-input-group.bk-inline > *:not(:first-child) {\\n  margin-left: 5px;\\n}\\n.bk-root .bk-input-group input[type=\"checkbox\"] + span,\\n.bk-root .bk-input-group input[type=\"radio\"] + span {\\n  position: relative;\\n  top: -2px;\\n  margin-left: 3px;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper {\\n  display: inherit;\\n  width: inherit;\\n  height: inherit;\\n  position: relative;\\n  overflow: hidden;\\n  padding: 0;\\n  vertical-align: middle;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper input {\\n  padding-right: 20px;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn {\\n  position: absolute;\\n  display: block;\\n  height: 50%;\\n  min-height: 0;\\n  min-width: 0;\\n  width: 30px;\\n  padding: 0;\\n  margin: 0;\\n  right: 0;\\n  border: none;\\n  background: none;\\n  cursor: pointer;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn:before {\\n  content: \"\";\\n  display: inline-block;\\n  transform: translateY(-50%);\\n  border-left: 5px solid transparent;\\n  border-right: 5px solid transparent;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up {\\n  top: 0;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:before {\\n  border-bottom: 5px solid black;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:disabled:before {\\n  border-bottom-color: grey;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down {\\n  bottom: 0;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:before {\\n  border-top: 5px solid black;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:disabled:before {\\n  border-top-color: grey;\\n}\\n'},\n",
       "      412: function _(u,e,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.bk_input=\"bk-input\",n.bk_input_group=\"bk-input-group\"},\n",
       "      413: function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=t(404),i=t(313);class s extends o.AbstractButtonView{click(){this.model.trigger_event(new i.ButtonClick),super.click()}}n.ButtonView=s,s.__name__=\"ButtonView\";class u extends o.AbstractButton{constructor(t){super(t)}static init_Button(){this.prototype.default_view=s,this.override({label:\"Button\"})}}n.Button=u,u.__name__=\"Button\",u.init_Button()},\n",
       "      414: function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=t(1),c=t(415),s=t(72),n=i.__importStar(t(18)),a=t(173);class u extends c.ButtonGroupView{get active(){return new Set(this.model.active)}change_active(t){const{active:e}=this;e.has(t)?e.delete(t):e.add(t),this.model.active=[...e].sort()}_update_active(){const{active:t}=this;this._buttons.forEach((e,o)=>{s.classes(e).toggle(a.bk_active,t.has(o))})}}o.CheckboxButtonGroupView=u,u.__name__=\"CheckboxButtonGroupView\";class r extends c.ButtonGroup{constructor(t){super(t)}static init_CheckboxButtonGroup(){this.prototype.default_view=u,this.define({active:[n.Array,[]]})}}o.CheckboxButtonGroup=r,r.__name__=\"CheckboxButtonGroup\",r.init_CheckboxButtonGroup()},\n",
       "      415: function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),o=t(405),i=t(72),r=n.__importStar(t(18)),_=t(281),u=n.__importDefault(t(283));class a extends o.ControlView{*controls(){yield*this._buttons}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.button_type,()=>this.render()),this.on_change(t.labels,()=>this.render()),this.on_change(t.active,()=>this._update_active())}styles(){return[...super.styles(),u.default]}render(){super.render(),this._buttons=this.model.labels.map((t,e)=>{const s=i.div({class:[_.bk_btn,_.bk_btn_type(this.model.button_type)],disabled:this.model.disabled},t);return s.addEventListener(\"click\",()=>this.change_active(e)),s}),this._update_active();const t=i.div({class:_.bk_btn_group},this._buttons);this.el.appendChild(t)}}s.ButtonGroupView=a,a.__name__=\"ButtonGroupView\";class l extends o.Control{constructor(t){super(t)}static init_ButtonGroup(){this.define({labels:[r.Array,[]],button_type:[r.ButtonType,\"default\"]})}}s.ButtonGroup=l,l.__name__=\"ButtonGroup\",l.init_ButtonGroup()},\n",
       "      416: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(417),o=e(72),c=e(9),a=n.__importStar(e(18)),l=e(173),d=e(412);class r extends s.InputGroupView{render(){super.render();const e=o.div({class:[d.bk_input_group,this.model.inline?l.bk_inline:null]});this.el.appendChild(e);const{active:t,labels:i}=this.model;this._inputs=[];for(let n=0;n<i.length;n++){const s=o.input({type:\"checkbox\",value:\"\"+n});s.addEventListener(\"change\",()=>this.change_active(n)),this._inputs.push(s),this.model.disabled&&(s.disabled=!0),c.includes(t,n)&&(s.checked=!0);const a=o.label({},s,o.span({},i[n]));e.appendChild(a)}}change_active(e){const t=new Set(this.model.active);t.has(e)?t.delete(e):t.add(e),this.model.active=[...t].sort()}}i.CheckboxGroupView=r,r.__name__=\"CheckboxGroupView\";class p extends s.InputGroup{constructor(e){super(e)}static init_CheckboxGroup(){this.prototype.default_view=r,this.define({active:[a.Array,[]],labels:[a.Array,[]],inline:[a.Boolean,!1]})}}i.CheckboxGroup=p,p.__name__=\"CheckboxGroup\",p.init_CheckboxGroup()},\n",
       "      417: function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=e(1),o=e(405),r=s.__importDefault(e(411));class u extends o.ControlView{*controls(){yield*this._inputs}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render())}styles(){return[...super.styles(),r.default]}}n.InputGroupView=u,u.__name__=\"InputGroupView\";class _ extends o.Control{constructor(e){super(e)}}n.InputGroup=_,_.__name__=\"InputGroup\"},\n",
       "      418: function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),o=e(410),s=e(72),l=n.__importStar(e(18)),r=e(412);class c extends o.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.color.change,()=>this.input_el.value=this.model.color),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled)}render(){super.render(),this.input_el=s.input({type:\"color\",class:r.bk_input,name:this.model.name,value:this.model.color,disabled:this.model.disabled}),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.input_el)}change_input(){this.model.color=this.input_el.value,super.change_input()}}t.ColorPickerView=c,c.__name__=\"ColorPickerView\";class d extends o.InputWidget{constructor(e){super(e)}static init_ColorPicker(){this.prototype.default_view=c,this.define({color:[l.Color,\"#000000\"]})}}t.ColorPicker=d,d.__name__=\"ColorPicker\",d.init_ColorPicker()},\n",
       "      419: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=n.__importDefault(e(420)),a=e(410),l=e(72),o=n.__importStar(e(18)),r=e(8),d=e(412),c=n.__importDefault(e(421));function u(e){const t=[];for(const i of e)if(r.isString(i))t.push(i);else{const[e,n]=i;t.push({from:e,to:n})}return t}class _ extends a.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,min_date:t,max_date:i,disabled_dates:n,enabled_dates:s,position:a,inline:l}=this.model.properties;this.connect(e.change,()=>{var t;return null===(t=this._picker)||void 0===t?void 0:t.setDate(e.value())}),this.connect(t.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"minDate\",t.value())}),this.connect(i.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"maxDate\",i.value())}),this.connect(n.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"disable\",n.value())}),this.connect(s.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enable\",s.value())}),this.connect(a.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"position\",a.value())}),this.connect(l.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"inline\",l.value())})}remove(){var e;null===(e=this._picker)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),c.default]}render(){null==this._picker&&(super.render(),this.input_el=l.input({type:\"text\",class:d.bk_input,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=s.default(this.input_el,{defaultDate:this.model.value,minDate:this.model.min_date,maxDate:this.model.max_date,inline:this.model.inline,position:this.model.position,disable:u(this.model.disabled_dates),enable:u(this.model.enabled_dates),onChange:(e,t,i)=>this._on_change(e,t,i)}))}_on_change(e,t,i){this.model.value=t,this.change_input()}}i.DatePickerView=_,_.__name__=\"DatePickerView\";class h extends a.InputWidget{constructor(e){super(e)}static init_DatePicker(){this.prototype.default_view=_,this.define({value:[o.Any],min_date:[o.Any],max_date:[o.Any],disabled_dates:[o.Any,[]],enabled_dates:[o.Any,[]],position:[o.CalendarPosition,\"auto\"],inline:[o.Boolean,!1]})}}i.DatePicker=h,h.__name__=\"DatePicker\",h.init_DatePicker()},\n",
       "      420: function _(e,t,n){\n",
       "      /* flatpickr v4.6.3, @license MIT */var a,i;a=this,i=function(){\"use strict\";\n",
       "      /*! *****************************************************************************\n",
       "              Copyright (c) Microsoft Corporation. All rights reserved.\n",
       "              Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n",
       "              this file except in compliance with the License. You may obtain a copy of the\n",
       "              License at http://www.apache.org/licenses/LICENSE-2.0\n",
       "          \n",
       "              THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n",
       "              KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n",
       "              WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n",
       "              MERCHANTABLITY OR NON-INFRINGEMENT.\n",
       "          \n",
       "              See the Apache Version 2.0 License for specific language governing permissions\n",
       "              and limitations under the License.\n",
       "              ***************************************************************************** */var e=function(){return(e=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)},t=[\"onChange\",\"onClose\",\"onDayCreate\",\"onDestroy\",\"onKeyDown\",\"onMonthChange\",\"onOpen\",\"onParseConfig\",\"onReady\",\"onValueUpdate\",\"onYearChange\",\"onPreCalendarPosition\"],n={_disable:[],_enable:[],allowInput:!1,altFormat:\"F j, Y\",altInput:!1,altInputClass:\"form-control input\",animate:\"object\"==typeof window&&-1===window.navigator.userAgent.indexOf(\"MSIE\"),ariaDateFormat:\"F j, Y\",clickOpens:!0,closeOnSelect:!0,conjunction:\", \",dateFormat:\"Y-m-d\",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:function(e){return\"undefined\"!=typeof console&&console.warn(e)},getWeek:function(e){var t=new Date(e.getTime());t.setHours(0,0,0,0),t.setDate(t.getDate()+3-(t.getDay()+6)%7);var n=new Date(t.getFullYear(),0,4);return 1+Math.round(((t.getTime()-n.getTime())/864e5-3+(n.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:\"default\",minuteIncrement:5,mode:\"single\",monthSelectorType:\"dropdown\",nextArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:\"auto\",positionElement:void 0,prevArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},a={weekdays:{shorthand:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longhand:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"]},months:{shorthand:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longhand:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var t=e%100;if(t>3&&t<21)return\"th\";switch(t%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\"}},rangeSeparator:\" to \",weekAbbreviation:\"Wk\",scrollTitle:\"Scroll to increment\",toggleTitle:\"Click to toggle\",amPM:[\"AM\",\"PM\"],yearAriaLabel:\"Year\",hourAriaLabel:\"Hour\",minuteAriaLabel:\"Minute\",time_24hr:!1},i=function(e){return(\"0\"+e).slice(-2)},o=function(e){return!0===e?1:0};function r(e,t,n){var a;return void 0===n&&(n=!1),function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout((function(){a=null,n||e.apply(i,o)}),t),n&&!a&&e.apply(i,o)}}var l=function(e){return e instanceof Array?e:[e]};function c(e,t,n){if(!0===n)return e.classList.add(t);e.classList.remove(t)}function d(e,t,n){var a=window.document.createElement(e);return t=t||\"\",n=n||\"\",a.className=t,void 0!==n&&(a.textContent=n),a}function s(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function u(e,t){var n=d(\"div\",\"numInputWrapper\"),a=d(\"input\",\"numInput \"+e),i=d(\"span\",\"arrowUp\"),o=d(\"span\",\"arrowDown\");if(-1===navigator.userAgent.indexOf(\"MSIE 9.0\")?a.type=\"number\":(a.type=\"text\",a.pattern=\"\\\\d*\"),void 0!==t)for(var r in t)a.setAttribute(r,t[r]);return n.appendChild(a),n.appendChild(i),n.appendChild(o),n}var f=function(){},m=function(e,t,n){return n.months[t?\"shorthand\":\"longhand\"][e]},g={D:f,F:function(e,t,n){e.setMonth(n.months.longhand.indexOf(t))},G:function(e,t){e.setHours(parseFloat(t))},H:function(e,t){e.setHours(parseFloat(t))},J:function(e,t){e.setDate(parseFloat(t))},K:function(e,t,n){e.setHours(e.getHours()%12+12*o(new RegExp(n.amPM[1],\"i\").test(t)))},M:function(e,t,n){e.setMonth(n.months.shorthand.indexOf(t))},S:function(e,t){e.setSeconds(parseFloat(t))},U:function(e,t){return new Date(1e3*parseFloat(t))},W:function(e,t,n){var a=parseInt(t),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+n.firstDayOfWeek),i},Y:function(e,t){e.setFullYear(parseFloat(t))},Z:function(e,t){return new Date(t)},d:function(e,t){e.setDate(parseFloat(t))},h:function(e,t){e.setHours(parseFloat(t))},i:function(e,t){e.setMinutes(parseFloat(t))},j:function(e,t){e.setDate(parseFloat(t))},l:f,m:function(e,t){e.setMonth(parseFloat(t)-1)},n:function(e,t){e.setMonth(parseFloat(t)-1)},s:function(e,t){e.setSeconds(parseFloat(t))},u:function(e,t){return new Date(parseFloat(t))},w:f,y:function(e,t){e.setFullYear(2e3+parseFloat(t))}},p={D:\"(\\\\w+)\",F:\"(\\\\w+)\",G:\"(\\\\d\\\\d|\\\\d)\",H:\"(\\\\d\\\\d|\\\\d)\",J:\"(\\\\d\\\\d|\\\\d)\\\\w+\",K:\"\",M:\"(\\\\w+)\",S:\"(\\\\d\\\\d|\\\\d)\",U:\"(.+)\",W:\"(\\\\d\\\\d|\\\\d)\",Y:\"(\\\\d{4})\",Z:\"(.+)\",d:\"(\\\\d\\\\d|\\\\d)\",h:\"(\\\\d\\\\d|\\\\d)\",i:\"(\\\\d\\\\d|\\\\d)\",j:\"(\\\\d\\\\d|\\\\d)\",l:\"(\\\\w+)\",m:\"(\\\\d\\\\d|\\\\d)\",n:\"(\\\\d\\\\d|\\\\d)\",s:\"(\\\\d\\\\d|\\\\d)\",u:\"(.+)\",w:\"(\\\\d\\\\d|\\\\d)\",y:\"(\\\\d{2})\"},h={Z:function(e){return e.toISOString()},D:function(e,t,n){return t.weekdays.shorthand[h.w(e,t,n)]},F:function(e,t,n){return m(h.n(e,t,n)-1,!1,t)},G:function(e,t,n){return i(h.h(e,t,n))},H:function(e){return i(e.getHours())},J:function(e,t){return void 0!==t.ordinal?e.getDate()+t.ordinal(e.getDate()):e.getDate()},K:function(e,t){return t.amPM[o(e.getHours()>11)]},M:function(e,t){return m(e.getMonth(),!0,t)},S:function(e){return i(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,t,n){return n.getWeek(e)},Y:function(e){return e.getFullYear()},d:function(e){return i(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return i(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,t){return t.weekdays.longhand[e.getDay()]},m:function(e){return i(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},v=function(e){var t=e.config,i=void 0===t?n:t,o=e.l10n,r=void 0===o?a:o;return function(e,t,n){var a=n||r;return void 0!==i.formatDate?i.formatDate(e,t,a):t.split(\"\").map((function(t,n,o){return h[t]&&\"\\\\\"!==o[n-1]?h[t](e,a,i):\"\\\\\"!==t?t:\"\"})).join(\"\")}},D=function(e){var t=e.config,i=void 0===t?n:t,o=e.l10n,r=void 0===o?a:o;return function(e,t,a,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if(\"string\"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if(\"string\"==typeof e){var s=t||(i||n).dateFormat,u=String(e).trim();if(\"today\"===u)l=new Date,a=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(i&&i.parseDate)l=i.parseDate(e,s);else{l=i&&i.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],h=0,v=0,D=\"\";h<s.length;h++){var w=s[h],b=\"\\\\\"===w,C=\"\\\\\"===s[h-1]||b;if(p[w]&&!C){D+=p[w];var M=new RegExp(D).exec(e);M&&(f=!0)&&m[\"Y\"!==w?\"push\":\"unshift\"]({fn:g[w],val:M[++v]})}else b||(D+=\".\");m.forEach((function(e){var t=e.fn,n=e.val;return l=t(l,n,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===a&&l.setHours(0,0,0,0),l;i.errorHandler(new Error(\"Invalid date provided: \"+d))}}};function w(e,t,n){return void 0===n&&(n=!0),!1!==n?new Date(e.getTime()).setHours(0,0,0,0)-new Date(t.getTime()).setHours(0,0,0,0):e.getTime()-t.getTime()}var b=864e5;function C(f,g){var h={config:e({},n,y.defaultConfig),l10n:a};function C(e){return e.bind(h)}function M(){var e=h.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==h.calendarContainer&&(h.calendarContainer.style.visibility=\"hidden\",h.calendarContainer.style.display=\"block\"),void 0!==h.daysContainer){var t=(h.days.offsetWidth+1)*e.showMonths;h.daysContainer.style.width=t+\"px\",h.calendarContainer.style.width=t+(void 0!==h.weekWrapper?h.weekWrapper.offsetWidth:0)+\"px\",h.calendarContainer.style.removeProperty(\"visibility\"),h.calendarContainer.style.removeProperty(\"display\")}}))}function x(e){0===h.selectedDates.length&&ne(),void 0!==e&&\"blur\"!==e.type&&function(e){e.preventDefault();var t=\"keydown\"===e.type,n=e.target;void 0!==h.amPM&&e.target===h.amPM&&(h.amPM.textContent=h.l10n.amPM[o(h.amPM.textContent===h.l10n.amPM[0])]);var a=parseFloat(n.getAttribute(\"min\")),r=parseFloat(n.getAttribute(\"max\")),l=parseFloat(n.getAttribute(\"step\")),c=parseInt(n.value,10),d=e.delta||(t?38===e.which?1:-1:0),s=c+l*d;if(void 0!==n.value&&2===n.value.length){var u=n===h.hourElement,f=n===h.minuteElement;s<a?(s=r+s+o(!u)+(o(u)&&o(!h.amPM)),f&&Y(void 0,-1,h.hourElement)):s>r&&(s=n===h.hourElement?s-r-o(!h.amPM):a,f&&Y(void 0,1,h.hourElement)),h.amPM&&u&&(1===l?s+c===23:Math.abs(s-c)>l)&&(h.amPM.textContent=h.l10n.amPM[o(h.amPM.textContent===h.l10n.amPM[0])]),n.value=i(s)}}(e);var t=h._input.value;E(),ve(),h._input.value!==t&&h._debouncedChange()}function E(){if(void 0!==h.hourElement&&void 0!==h.minuteElement){var e,t,n=(parseInt(h.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(h.minuteElement.value,10)||0)%60,i=void 0!==h.secondElement?(parseInt(h.secondElement.value,10)||0)%60:0;void 0!==h.amPM&&(e=n,t=h.amPM.textContent,n=e%12+12*o(t===h.l10n.amPM[1]));var r=void 0!==h.config.minTime||h.config.minDate&&h.minDateHasTime&&h.latestSelectedDateObj&&0===w(h.latestSelectedDateObj,h.config.minDate,!0);if(void 0!==h.config.maxTime||h.config.maxDate&&h.maxDateHasTime&&h.latestSelectedDateObj&&0===w(h.latestSelectedDateObj,h.config.maxDate,!0)){var l=void 0!==h.config.maxTime?h.config.maxTime:h.config.maxDate;(n=Math.min(n,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(r){var c=void 0!==h.config.minTime?h.config.minTime:h.config.minDate;(n=Math.max(n,c.getHours()))===c.getHours()&&(a=Math.max(a,c.getMinutes())),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}I(n,a,i)}}function T(e){var t=e||h.latestSelectedDateObj;t&&I(t.getHours(),t.getMinutes(),t.getSeconds())}function k(){var e=h.config.defaultHour,t=h.config.defaultMinute,n=h.config.defaultSeconds;if(void 0!==h.config.minDate){var a=h.config.minDate.getHours(),i=h.config.minDate.getMinutes();(e=Math.max(e,a))===a&&(t=Math.max(i,t)),e===a&&t===i&&(n=h.config.minDate.getSeconds())}if(void 0!==h.config.maxDate){var o=h.config.maxDate.getHours(),r=h.config.maxDate.getMinutes();(e=Math.min(e,o))===o&&(t=Math.min(r,t)),e===o&&t===r&&(n=h.config.maxDate.getSeconds())}I(e,t,n)}function I(e,t,n){void 0!==h.latestSelectedDateObj&&h.latestSelectedDateObj.setHours(e%24,t,n||0,0),h.hourElement&&h.minuteElement&&!h.isMobile&&(h.hourElement.value=i(h.config.time_24hr?e:(12+e)%12+12*o(e%12==0)),h.minuteElement.value=i(t),void 0!==h.amPM&&(h.amPM.textContent=h.l10n.amPM[o(e>=12)]),void 0!==h.secondElement&&(h.secondElement.value=i(n)))}function S(e){var t=parseInt(e.target.value)+(e.delta||0);(t/1e3>1||\"Enter\"===e.key&&!/[^\\d]/.test(t.toString()))&&V(t)}function O(e,t,n,a){return t instanceof Array?t.forEach((function(t){return O(e,t,n,a)})):e instanceof Array?e.forEach((function(e){return O(e,t,n,a)})):(e.addEventListener(t,n,a),void h._handlers.push({element:e,event:t,handler:n,options:a}))}function _(e){return function(t){1===t.which&&e(t)}}function F(){fe(\"onChange\")}function N(e,t){var n=void 0!==e?h.parseDate(e):h.latestSelectedDateObj||(h.config.minDate&&h.config.minDate>h.now?h.config.minDate:h.config.maxDate&&h.config.maxDate<h.now?h.config.maxDate:h.now),a=h.currentYear,i=h.currentMonth;try{void 0!==n&&(h.currentYear=n.getFullYear(),h.currentMonth=n.getMonth())}catch(e){e.message=\"Invalid date supplied: \"+n,h.config.errorHandler(e)}t&&h.currentYear!==a&&(fe(\"onYearChange\"),B()),!t||h.currentYear===a&&h.currentMonth===i||fe(\"onMonthChange\"),h.redraw()}function P(e){~e.target.className.indexOf(\"arrow\")&&Y(e,e.target.classList.contains(\"arrowUp\")?1:-1)}function Y(e,t,n){var a=e&&e.target,i=n||a&&a.parentNode&&a.parentNode.firstChild,o=me(\"increment\");o.delta=t,i&&i.dispatchEvent(o)}function A(e,t,n,a){var i=Z(t,!0),o=d(\"span\",\"flatpickr-day \"+e,t.getDate().toString());return o.dateObj=t,o.$i=a,o.setAttribute(\"aria-label\",h.formatDate(t,h.config.ariaDateFormat)),-1===e.indexOf(\"hidden\")&&0===w(t,h.now)&&(h.todayDateElem=o,o.classList.add(\"today\"),o.setAttribute(\"aria-current\",\"date\")),i?(o.tabIndex=-1,ge(t)&&(o.classList.add(\"selected\"),h.selectedDateElem=o,\"range\"===h.config.mode&&(c(o,\"startRange\",h.selectedDates[0]&&0===w(t,h.selectedDates[0],!0)),c(o,\"endRange\",h.selectedDates[1]&&0===w(t,h.selectedDates[1],!0)),\"nextMonthDay\"===e&&o.classList.add(\"inRange\")))):o.classList.add(\"flatpickr-disabled\"),\"range\"===h.config.mode&&function(e){return!(\"range\"!==h.config.mode||h.selectedDates.length<2)&&w(e,h.selectedDates[0])>=0&&w(e,h.selectedDates[1])<=0}(t)&&!ge(t)&&o.classList.add(\"inRange\"),h.weekNumbers&&1===h.config.showMonths&&\"prevMonthDay\"!==e&&n%7==1&&h.weekNumbers.insertAdjacentHTML(\"beforeend\",\"<span class='flatpickr-day'>\"+h.config.getWeek(t)+\"</span>\"),fe(\"onDayCreate\",o),o}function j(e){e.focus(),\"range\"===h.config.mode&&ee(e)}function H(e){for(var t=e>0?0:h.config.showMonths-1,n=e>0?h.config.showMonths:-1,a=t;a!=n;a+=e)for(var i=h.daysContainer.children[a],o=e>0?0:i.children.length-1,r=e>0?i.children.length:-1,l=o;l!=r;l+=e){var c=i.children[l];if(-1===c.className.indexOf(\"hidden\")&&Z(c.dateObj))return c}}function L(e,t){var n=Q(document.activeElement||document.body),a=void 0!==e?e:n?document.activeElement:void 0!==h.selectedDateElem&&Q(h.selectedDateElem)?h.selectedDateElem:void 0!==h.todayDateElem&&Q(h.todayDateElem)?h.todayDateElem:H(t>0?1:-1);return void 0===a?h._input.focus():n?void function(e,t){for(var n=-1===e.className.indexOf(\"Month\")?e.dateObj.getMonth():h.currentMonth,a=t>0?h.config.showMonths:-1,i=t>0?1:-1,o=n-h.currentMonth;o!=a;o+=i)for(var r=h.daysContainer.children[o],l=n-h.currentMonth===o?e.$i+t:t<0?r.children.length-1:0,c=r.children.length,d=l;d>=0&&d<c&&d!=(t>0?c:-1);d+=i){var s=r.children[d];if(-1===s.className.indexOf(\"hidden\")&&Z(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(t))return j(s)}h.changeMonth(i),L(H(i),0)}(a,t):j(a)}function W(e,t){for(var n=(new Date(e,t,1).getDay()-h.l10n.firstDayOfWeek+7)%7,a=h.utils.getDaysInMonth((t-1+12)%12),i=h.utils.getDaysInMonth(t),o=window.document.createDocumentFragment(),r=h.config.showMonths>1,l=r?\"prevMonthDay hidden\":\"prevMonthDay\",c=r?\"nextMonthDay hidden\":\"nextMonthDay\",s=a+1-n,u=0;s<=a;s++,u++)o.appendChild(A(l,new Date(e,t-1,s),s,u));for(s=1;s<=i;s++,u++)o.appendChild(A(\"\",new Date(e,t,s),s,u));for(var f=i+1;f<=42-n&&(1===h.config.showMonths||u%7!=0);f++,u++)o.appendChild(A(c,new Date(e,t+1,f%i),f,u));var m=d(\"div\",\"dayContainer\");return m.appendChild(o),m}function R(){if(void 0!==h.daysContainer){s(h.daysContainer),h.weekNumbers&&s(h.weekNumbers);for(var e=document.createDocumentFragment(),t=0;t<h.config.showMonths;t++){var n=new Date(h.currentYear,h.currentMonth,1);n.setMonth(h.currentMonth+t),e.appendChild(W(n.getFullYear(),n.getMonth()))}h.daysContainer.appendChild(e),h.days=h.daysContainer.firstChild,\"range\"===h.config.mode&&1===h.selectedDates.length&&ee()}}function B(){if(!(h.config.showMonths>1||\"dropdown\"!==h.config.monthSelectorType)){var e=function(e){return!(void 0!==h.config.minDate&&h.currentYear===h.config.minDate.getFullYear()&&e<h.config.minDate.getMonth()||void 0!==h.config.maxDate&&h.currentYear===h.config.maxDate.getFullYear()&&e>h.config.maxDate.getMonth())};h.monthsDropdownContainer.tabIndex=-1,h.monthsDropdownContainer.innerHTML=\"\";for(var t=0;t<12;t++)if(e(t)){var n=d(\"option\",\"flatpickr-monthDropdown-month\");n.value=new Date(h.currentYear,t).getMonth().toString(),n.textContent=m(t,h.config.shorthandCurrentMonth,h.l10n),n.tabIndex=-1,h.currentMonth===t&&(n.selected=!0),h.monthsDropdownContainer.appendChild(n)}}}function J(){var e,t=d(\"div\",\"flatpickr-month\"),n=window.document.createDocumentFragment();h.config.showMonths>1||\"static\"===h.config.monthSelectorType?e=d(\"span\",\"cur-month\"):(h.monthsDropdownContainer=d(\"select\",\"flatpickr-monthDropdown-months\"),O(h.monthsDropdownContainer,\"change\",(function(e){var t=e.target,n=parseInt(t.value,10);h.changeMonth(n-h.currentMonth),fe(\"onMonthChange\")})),B(),e=h.monthsDropdownContainer);var a=u(\"cur-year\",{tabindex:\"-1\"}),i=a.getElementsByTagName(\"input\")[0];i.setAttribute(\"aria-label\",h.l10n.yearAriaLabel),h.config.minDate&&i.setAttribute(\"min\",h.config.minDate.getFullYear().toString()),h.config.maxDate&&(i.setAttribute(\"max\",h.config.maxDate.getFullYear().toString()),i.disabled=!!h.config.minDate&&h.config.minDate.getFullYear()===h.config.maxDate.getFullYear());var o=d(\"div\",\"flatpickr-current-month\");return o.appendChild(e),o.appendChild(a),n.appendChild(o),t.appendChild(n),{container:t,yearElement:i,monthElement:e}}function K(){s(h.monthNav),h.monthNav.appendChild(h.prevMonthNav),h.config.showMonths&&(h.yearElements=[],h.monthElements=[]);for(var e=h.config.showMonths;e--;){var t=J();h.yearElements.push(t.yearElement),h.monthElements.push(t.monthElement),h.monthNav.appendChild(t.container)}h.monthNav.appendChild(h.nextMonthNav)}function U(){h.weekdayContainer?s(h.weekdayContainer):h.weekdayContainer=d(\"div\",\"flatpickr-weekdays\");for(var e=h.config.showMonths;e--;){var t=d(\"div\",\"flatpickr-weekdaycontainer\");h.weekdayContainer.appendChild(t)}return q(),h.weekdayContainer}function q(){if(h.weekdayContainer){var e=h.l10n.firstDayOfWeek,t=h.l10n.weekdays.shorthand.slice();e>0&&e<t.length&&(t=t.splice(e,t.length).concat(t.splice(0,e)));for(var n=h.config.showMonths;n--;)h.weekdayContainer.children[n].innerHTML=\"\\n      <span class='flatpickr-weekday'>\\n        \"+t.join(\"</span><span class='flatpickr-weekday'>\")+\"\\n      </span>\\n      \"}}function $(e,t){void 0===t&&(t=!0);var n=t?e:e-h.currentMonth;n<0&&!0===h._hidePrevMonthArrow||n>0&&!0===h._hideNextMonthArrow||(h.currentMonth+=n,(h.currentMonth<0||h.currentMonth>11)&&(h.currentYear+=h.currentMonth>11?1:-1,h.currentMonth=(h.currentMonth+12)%12,fe(\"onYearChange\"),B()),R(),fe(\"onMonthChange\"),pe())}function z(e){return!(!h.config.appendTo||!h.config.appendTo.contains(e))||h.calendarContainer.contains(e)}function G(e){if(h.isOpen&&!h.config.inline){var t=\"function\"==typeof(r=e).composedPath?r.composedPath()[0]:r.target,n=z(t),a=t===h.input||t===h.altInput||h.element.contains(t)||e.path&&e.path.indexOf&&(~e.path.indexOf(h.input)||~e.path.indexOf(h.altInput)),i=\"blur\"===e.type?a&&e.relatedTarget&&!z(e.relatedTarget):!a&&!n&&!z(e.relatedTarget),o=!h.config.ignoredFocusElements.some((function(e){return e.contains(t)}));i&&o&&(void 0!==h.timeContainer&&void 0!==h.minuteElement&&void 0!==h.hourElement&&x(),h.close(),\"range\"===h.config.mode&&1===h.selectedDates.length&&(h.clear(!1),h.redraw()))}var r}function V(e){if(!(!e||h.config.minDate&&e<h.config.minDate.getFullYear()||h.config.maxDate&&e>h.config.maxDate.getFullYear())){var t=e,n=h.currentYear!==t;h.currentYear=t||h.currentYear,h.config.maxDate&&h.currentYear===h.config.maxDate.getFullYear()?h.currentMonth=Math.min(h.config.maxDate.getMonth(),h.currentMonth):h.config.minDate&&h.currentYear===h.config.minDate.getFullYear()&&(h.currentMonth=Math.max(h.config.minDate.getMonth(),h.currentMonth)),n&&(h.redraw(),fe(\"onYearChange\"),B())}}function Z(e,t){void 0===t&&(t=!0);var n=h.parseDate(e,void 0,t);if(h.config.minDate&&n&&w(n,h.config.minDate,void 0!==t?t:!h.minDateHasTime)<0||h.config.maxDate&&n&&w(n,h.config.maxDate,void 0!==t?t:!h.maxDateHasTime)>0)return!1;if(0===h.config.enable.length&&0===h.config.disable.length)return!0;if(void 0===n)return!1;for(var a=h.config.enable.length>0,i=a?h.config.enable:h.config.disable,o=0,r=void 0;o<i.length;o++){if(\"function\"==typeof(r=i[o])&&r(n))return a;if(r instanceof Date&&void 0!==n&&r.getTime()===n.getTime())return a;if(\"string\"==typeof r&&void 0!==n){var l=h.parseDate(r,void 0,!0);return l&&l.getTime()===n.getTime()?a:!a}if(\"object\"==typeof r&&void 0!==n&&r.from&&r.to&&n.getTime()>=r.from.getTime()&&n.getTime()<=r.to.getTime())return a}return!a}function Q(e){return void 0!==h.daysContainer&&-1===e.className.indexOf(\"hidden\")&&h.daysContainer.contains(e)}function X(e){var t=e.target===h._input,n=h.config.allowInput,a=h.isOpen&&(!n||!t),i=h.config.inline&&t&&!n;if(13===e.keyCode&&t){if(n)return h.setDate(h._input.value,!0,e.target===h.altInput?h.config.altFormat:h.config.dateFormat),e.target.blur();h.open()}else if(z(e.target)||a||i){var o=!!h.timeContainer&&h.timeContainer.contains(e.target);switch(e.keyCode){case 13:o?(e.preventDefault(),x(),le()):ce(e);break;case 27:e.preventDefault(),le();break;case 8:case 46:t&&!h.config.allowInput&&(e.preventDefault(),h.clear());break;case 37:case 39:if(o||t)h.hourElement&&h.hourElement.focus();else if(e.preventDefault(),void 0!==h.daysContainer&&(!1===n||document.activeElement&&Q(document.activeElement))){var r=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),$(r),L(H(1),0)):L(void 0,r)}break;case 38:case 40:e.preventDefault();var l=40===e.keyCode?1:-1;h.daysContainer&&void 0!==e.target.$i||e.target===h.input||e.target===h.altInput?e.ctrlKey?(e.stopPropagation(),V(h.currentYear-l),L(H(1),0)):o||L(void 0,7*l):e.target===h.currentYearElement?V(h.currentYear-l):h.config.enableTime&&(!o&&h.hourElement&&h.hourElement.focus(),x(e),h._debouncedChange());break;case 9:if(o){var c=[h.hourElement,h.minuteElement,h.secondElement,h.amPM].concat(h.pluginElements).filter((function(e){return e})),d=c.indexOf(e.target);if(-1!==d){var s=c[d+(e.shiftKey?-1:1)];e.preventDefault(),(s||h._input).focus()}}else!h.config.noCalendar&&h.daysContainer&&h.daysContainer.contains(e.target)&&e.shiftKey&&(e.preventDefault(),h._input.focus())}}if(void 0!==h.amPM&&e.target===h.amPM)switch(e.key){case h.l10n.amPM[0].charAt(0):case h.l10n.amPM[0].charAt(0).toLowerCase():h.amPM.textContent=h.l10n.amPM[0],E(),ve();break;case h.l10n.amPM[1].charAt(0):case h.l10n.amPM[1].charAt(0).toLowerCase():h.amPM.textContent=h.l10n.amPM[1],E(),ve()}(t||z(e.target))&&fe(\"onKeyDown\",e)}function ee(e){if(1===h.selectedDates.length&&(!e||e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\"))){for(var t=e?e.dateObj.getTime():h.days.firstElementChild.dateObj.getTime(),n=h.parseDate(h.selectedDates[0],void 0,!0).getTime(),a=Math.min(t,h.selectedDates[0].getTime()),i=Math.max(t,h.selectedDates[0].getTime()),o=!1,r=0,l=0,c=a;c<i;c+=b)Z(new Date(c),!0)||(o=o||c>a&&c<i,c<n&&(!r||c>r)?r=c:c>n&&(!l||c<l)&&(l=c));for(var d=0;d<h.config.showMonths;d++)for(var s=h.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add(\"notAllowed\"),[\"inRange\",\"startRange\",\"endRange\"].forEach((function(e){f.classList.remove(e)})),\"continue\"):o&&!g?\"continue\":([\"startRange\",\"inRange\",\"endRange\",\"notAllowed\"].forEach((function(e){f.classList.remove(e)})),void(void 0!==e&&(e.classList.add(t<=h.selectedDates[0].getTime()?\"startRange\":\"endRange\"),n<t&&m===n?f.classList.add(\"startRange\"):n>t&&m===n&&f.classList.add(\"endRange\"),m>=r&&(0===l||m<=l)&&(d=n,u=t,(c=m)>Math.min(d,u)&&c<Math.max(d,u))&&f.classList.add(\"inRange\"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function te(){!h.isOpen||h.config.static||h.config.inline||oe()}function ne(){h.setDate(void 0!==h.config.minDate?new Date(h.config.minDate.getTime()):new Date,!0),k(),ve()}function ae(e){return function(t){var n=h.config[\"_\"+e+\"Date\"]=h.parseDate(t,h.config.dateFormat),a=h.config[\"_\"+(\"min\"===e?\"max\":\"min\")+\"Date\"];void 0!==n&&(h[\"min\"===e?\"minDateHasTime\":\"maxDateHasTime\"]=n.getHours()>0||n.getMinutes()>0||n.getSeconds()>0),h.selectedDates&&(h.selectedDates=h.selectedDates.filter((function(e){return Z(e)})),h.selectedDates.length||\"min\"!==e||T(n),ve()),h.daysContainer&&(re(),void 0!==n?h.currentYearElement[e]=n.getFullYear().toString():h.currentYearElement.removeAttribute(e),h.currentYearElement.disabled=!!a&&void 0!==n&&a.getFullYear()===n.getFullYear())}}function ie(){\"object\"!=typeof h.config.locale&&void 0===y.l10ns[h.config.locale]&&h.config.errorHandler(new Error(\"flatpickr: invalid locale \"+h.config.locale)),h.l10n=e({},y.l10ns.default,\"object\"==typeof h.config.locale?h.config.locale:\"default\"!==h.config.locale?y.l10ns[h.config.locale]:void 0),p.K=\"(\"+h.l10n.amPM[0]+\"|\"+h.l10n.amPM[1]+\"|\"+h.l10n.amPM[0].toLowerCase()+\"|\"+h.l10n.amPM[1].toLowerCase()+\")\",void 0===e({},g,JSON.parse(JSON.stringify(f.dataset||{}))).time_24hr&&void 0===y.defaultConfig.time_24hr&&(h.config.time_24hr=h.l10n.time_24hr),h.formatDate=v(h),h.parseDate=D({config:h.config,l10n:h.l10n})}function oe(e){if(void 0!==h.calendarContainer){fe(\"onPreCalendarPosition\");var t=e||h._positionElement,n=Array.prototype.reduce.call(h.calendarContainer.children,(function(e,t){return e+t.offsetHeight}),0),a=h.calendarContainer.offsetWidth,i=h.config.position.split(\" \"),o=i[0],r=i.length>1?i[1]:null,l=t.getBoundingClientRect(),d=window.innerHeight-l.bottom,s=\"above\"===o||\"below\"!==o&&d<n&&l.top>n,u=window.pageYOffset+l.top+(s?-n-2:t.offsetHeight+2);if(c(h.calendarContainer,\"arrowTop\",!s),c(h.calendarContainer,\"arrowBottom\",s),!h.config.inline){var f=window.pageXOffset+l.left-(null!=r&&\"center\"===r?(a-l.width)/2:0),m=window.document.body.offsetWidth-(window.pageXOffset+l.right),g=f+a>window.document.body.offsetWidth,p=m+a>window.document.body.offsetWidth;if(c(h.calendarContainer,\"rightMost\",g),!h.config.static)if(h.calendarContainer.style.top=u+\"px\",g)if(p){var v=document.styleSheets[0];if(void 0===v)return;var D=window.document.body.offsetWidth,w=Math.max(0,D/2-a/2),b=v.cssRules.length,C=\"{left:\"+l.left+\"px;right:auto;}\";c(h.calendarContainer,\"rightMost\",!1),c(h.calendarContainer,\"centerMost\",!0),v.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\"+C,b),h.calendarContainer.style.left=w+\"px\",h.calendarContainer.style.right=\"auto\"}else h.calendarContainer.style.left=\"auto\",h.calendarContainer.style.right=m+\"px\";else h.calendarContainer.style.left=f+\"px\",h.calendarContainer.style.right=\"auto\"}}}function re(){h.config.noCalendar||h.isMobile||(pe(),R())}function le(){h._input.focus(),-1!==window.navigator.userAgent.indexOf(\"MSIE\")||void 0!==navigator.msMaxTouchPoints?setTimeout(h.close,0):h.close()}function ce(e){e.preventDefault(),e.stopPropagation();var t=function e(t,n){return n(t)?t:t.parentNode?e(t.parentNode,n):void 0}(e.target,(function(e){return e.classList&&e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\")&&!e.classList.contains(\"notAllowed\")}));if(void 0!==t){var n=t,a=h.latestSelectedDateObj=new Date(n.dateObj.getTime()),i=(a.getMonth()<h.currentMonth||a.getMonth()>h.currentMonth+h.config.showMonths-1)&&\"range\"!==h.config.mode;if(h.selectedDateElem=n,\"single\"===h.config.mode)h.selectedDates=[a];else if(\"multiple\"===h.config.mode){var o=ge(a);o?h.selectedDates.splice(parseInt(o),1):h.selectedDates.push(a)}else\"range\"===h.config.mode&&(2===h.selectedDates.length&&h.clear(!1,!1),h.latestSelectedDateObj=a,h.selectedDates.push(a),0!==w(a,h.selectedDates[0],!0)&&h.selectedDates.sort((function(e,t){return e.getTime()-t.getTime()})));if(E(),i){var r=h.currentYear!==a.getFullYear();h.currentYear=a.getFullYear(),h.currentMonth=a.getMonth(),r&&(fe(\"onYearChange\"),B()),fe(\"onMonthChange\")}if(pe(),R(),ve(),h.config.enableTime&&setTimeout((function(){return h.showTimeInput=!0}),50),i||\"range\"===h.config.mode||1!==h.config.showMonths?void 0!==h.selectedDateElem&&void 0===h.hourElement&&h.selectedDateElem&&h.selectedDateElem.focus():j(n),void 0!==h.hourElement&&void 0!==h.hourElement&&h.hourElement.focus(),h.config.closeOnSelect){var l=\"single\"===h.config.mode&&!h.config.enableTime,c=\"range\"===h.config.mode&&2===h.selectedDates.length&&!h.config.enableTime;(l||c)&&le()}F()}}h.parseDate=D({config:h.config,l10n:h.l10n}),h._handlers=[],h.pluginElements=[],h.loadedPlugins=[],h._bind=O,h._setHoursFromDate=T,h._positionCalendar=oe,h.changeMonth=$,h.changeYear=V,h.clear=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0),h.input.value=\"\",void 0!==h.altInput&&(h.altInput.value=\"\"),void 0!==h.mobileInput&&(h.mobileInput.value=\"\"),h.selectedDates=[],h.latestSelectedDateObj=void 0,!0===t&&(h.currentYear=h._initialDate.getFullYear(),h.currentMonth=h._initialDate.getMonth()),h.showTimeInput=!1,!0===h.config.enableTime&&k(),h.redraw(),e&&fe(\"onChange\")},h.close=function(){h.isOpen=!1,h.isMobile||(void 0!==h.calendarContainer&&h.calendarContainer.classList.remove(\"open\"),void 0!==h._input&&h._input.classList.remove(\"active\")),fe(\"onClose\")},h._createElement=d,h.destroy=function(){void 0!==h.config&&fe(\"onDestroy\");for(var e=h._handlers.length;e--;){var t=h._handlers[e];t.element.removeEventListener(t.event,t.handler,t.options)}if(h._handlers=[],h.mobileInput)h.mobileInput.parentNode&&h.mobileInput.parentNode.removeChild(h.mobileInput),h.mobileInput=void 0;else if(h.calendarContainer&&h.calendarContainer.parentNode)if(h.config.static&&h.calendarContainer.parentNode){var n=h.calendarContainer.parentNode;if(n.lastChild&&n.removeChild(n.lastChild),n.parentNode){for(;n.firstChild;)n.parentNode.insertBefore(n.firstChild,n);n.parentNode.removeChild(n)}}else h.calendarContainer.parentNode.removeChild(h.calendarContainer);h.altInput&&(h.input.type=\"text\",h.altInput.parentNode&&h.altInput.parentNode.removeChild(h.altInput),delete h.altInput),h.input&&(h.input.type=h.input._type,h.input.classList.remove(\"flatpickr-input\"),h.input.removeAttribute(\"readonly\"),h.input.value=\"\"),[\"_showTimeInput\",\"latestSelectedDateObj\",\"_hideNextMonthArrow\",\"_hidePrevMonthArrow\",\"__hideNextMonthArrow\",\"__hidePrevMonthArrow\",\"isMobile\",\"isOpen\",\"selectedDateElem\",\"minDateHasTime\",\"maxDateHasTime\",\"days\",\"daysContainer\",\"_input\",\"_positionElement\",\"innerContainer\",\"rContainer\",\"monthNav\",\"todayDateElem\",\"calendarContainer\",\"weekdayContainer\",\"prevMonthNav\",\"nextMonthNav\",\"monthsDropdownContainer\",\"currentMonthElement\",\"currentYearElement\",\"navigationCurrentMonth\",\"selectedDateElem\",\"config\"].forEach((function(e){try{delete h[e]}catch(e){}}))},h.isEnabled=Z,h.jumpToDate=N,h.open=function(e,t){if(void 0===t&&(t=h._positionElement),!0===h.isMobile)return e&&(e.preventDefault(),e.target&&e.target.blur()),void 0!==h.mobileInput&&(h.mobileInput.focus(),h.mobileInput.click()),void fe(\"onOpen\");if(!h._input.disabled&&!h.config.inline){var n=h.isOpen;h.isOpen=!0,n||(h.calendarContainer.classList.add(\"open\"),h._input.classList.add(\"active\"),fe(\"onOpen\"),oe(t)),!0===h.config.enableTime&&!0===h.config.noCalendar&&(0===h.selectedDates.length&&ne(),!1!==h.config.allowInput||void 0!==e&&h.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return h.hourElement.select()}),50))}},h.redraw=re,h.set=function(e,n){if(null!==e&&\"object\"==typeof e)for(var a in Object.assign(h.config,e),e)void 0!==de[a]&&de[a].forEach((function(e){return e()}));else h.config[e]=n,void 0!==de[e]?de[e].forEach((function(e){return e()})):t.indexOf(e)>-1&&(h.config[e]=l(n));h.redraw(),ve(!1)},h.setDate=function(e,t,n){if(void 0===t&&(t=!1),void 0===n&&(n=h.config.dateFormat),0!==e&&!e||e instanceof Array&&0===e.length)return h.clear(t);se(e,n),h.showTimeInput=h.selectedDates.length>0,h.latestSelectedDateObj=h.selectedDates[h.selectedDates.length-1],h.redraw(),N(),T(),0===h.selectedDates.length&&h.clear(!1),ve(t),t&&fe(\"onChange\")},h.toggle=function(e){if(!0===h.isOpen)return h.close();h.open(e)};var de={locale:[ie,q],showMonths:[K,M,U],minDate:[N],maxDate:[N]};function se(e,t){var n=[];if(e instanceof Array)n=e.map((function(e){return h.parseDate(e,t)}));else if(e instanceof Date||\"number\"==typeof e)n=[h.parseDate(e,t)];else if(\"string\"==typeof e)switch(h.config.mode){case\"single\":case\"time\":n=[h.parseDate(e,t)];break;case\"multiple\":n=e.split(h.config.conjunction).map((function(e){return h.parseDate(e,t)}));break;case\"range\":n=e.split(h.l10n.rangeSeparator).map((function(e){return h.parseDate(e,t)}))}else h.config.errorHandler(new Error(\"Invalid date supplied: \"+JSON.stringify(e)));h.selectedDates=n.filter((function(e){return e instanceof Date&&Z(e,!1)})),\"range\"===h.config.mode&&h.selectedDates.sort((function(e,t){return e.getTime()-t.getTime()}))}function ue(e){return e.slice().map((function(e){return\"string\"==typeof e||\"number\"==typeof e||e instanceof Date?h.parseDate(e,void 0,!0):e&&\"object\"==typeof e&&e.from&&e.to?{from:h.parseDate(e.from,void 0),to:h.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function fe(e,t){if(void 0!==h.config){var n=h.config[e];if(void 0!==n&&n.length>0)for(var a=0;n[a]&&a<n.length;a++)n[a](h.selectedDates,h.input.value,h,t);\"onChange\"===e&&(h.input.dispatchEvent(me(\"change\")),h.input.dispatchEvent(me(\"input\")))}}function me(e){var t=document.createEvent(\"Event\");return t.initEvent(e,!0,!0),t}function ge(e){for(var t=0;t<h.selectedDates.length;t++)if(0===w(h.selectedDates[t],e))return\"\"+t;return!1}function pe(){h.config.noCalendar||h.isMobile||!h.monthNav||(h.yearElements.forEach((function(e,t){var n=new Date(h.currentYear,h.currentMonth,1);n.setMonth(h.currentMonth+t),h.config.showMonths>1||\"static\"===h.config.monthSelectorType?h.monthElements[t].textContent=m(n.getMonth(),h.config.shorthandCurrentMonth,h.l10n)+\" \":h.monthsDropdownContainer.value=n.getMonth().toString(),e.value=n.getFullYear().toString()})),h._hidePrevMonthArrow=void 0!==h.config.minDate&&(h.currentYear===h.config.minDate.getFullYear()?h.currentMonth<=h.config.minDate.getMonth():h.currentYear<h.config.minDate.getFullYear()),h._hideNextMonthArrow=void 0!==h.config.maxDate&&(h.currentYear===h.config.maxDate.getFullYear()?h.currentMonth+1>h.config.maxDate.getMonth():h.currentYear>h.config.maxDate.getFullYear()))}function he(e){return h.selectedDates.map((function(t){return h.formatDate(t,e)})).filter((function(e,t,n){return\"range\"!==h.config.mode||h.config.enableTime||n.indexOf(e)===t})).join(\"range\"!==h.config.mode?h.config.conjunction:h.l10n.rangeSeparator)}function ve(e){void 0===e&&(e=!0),void 0!==h.mobileInput&&h.mobileFormatStr&&(h.mobileInput.value=void 0!==h.latestSelectedDateObj?h.formatDate(h.latestSelectedDateObj,h.mobileFormatStr):\"\"),h.input.value=he(h.config.dateFormat),void 0!==h.altInput&&(h.altInput.value=he(h.config.altFormat)),!1!==e&&fe(\"onValueUpdate\")}function De(e){var t=h.prevMonthNav.contains(e.target),n=h.nextMonthNav.contains(e.target);t||n?$(t?-1:1):h.yearElements.indexOf(e.target)>=0?e.target.select():e.target.classList.contains(\"arrowUp\")?h.changeYear(h.currentYear+1):e.target.classList.contains(\"arrowDown\")&&h.changeYear(h.currentYear-1)}return function(){h.element=h.input=f,h.isOpen=!1,function(){var a=[\"wrap\",\"weekNumbers\",\"allowInput\",\"clickOpens\",\"time_24hr\",\"enableTime\",\"noCalendar\",\"altInput\",\"shorthandCurrentMonth\",\"inline\",\"static\",\"enableSeconds\",\"disableMobile\"],i=e({},g,JSON.parse(JSON.stringify(f.dataset||{}))),o={};h.config.parseDate=i.parseDate,h.config.formatDate=i.formatDate,Object.defineProperty(h.config,\"enable\",{get:function(){return h.config._enable},set:function(e){h.config._enable=ue(e)}}),Object.defineProperty(h.config,\"disable\",{get:function(){return h.config._disable},set:function(e){h.config._disable=ue(e)}});var r=\"time\"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var c=y.defaultConfig.dateFormat||n.dateFormat;o.dateFormat=i.noCalendar||r?\"H:i\"+(i.enableSeconds?\":S\":\"\"):c+\" H:i\"+(i.enableSeconds?\":S\":\"\")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=y.defaultConfig.altFormat||n.altFormat;o.altFormat=i.noCalendar||r?\"h:i\"+(i.enableSeconds?\":S K\":\" K\"):d+\" h:i\"+(i.enableSeconds?\":S\":\"\")+\" K\"}i.altInputClass||(h.config.altInputClass=h.input.className+\" \"+h.config.altInputClass),Object.defineProperty(h.config,\"minDate\",{get:function(){return h.config._minDate},set:ae(\"min\")}),Object.defineProperty(h.config,\"maxDate\",{get:function(){return h.config._maxDate},set:ae(\"max\")});var s=function(e){return function(t){h.config[\"min\"===e?\"_minTime\":\"_maxTime\"]=h.parseDate(t,\"H:i:S\")}};Object.defineProperty(h.config,\"minTime\",{get:function(){return h.config._minTime},set:s(\"min\")}),Object.defineProperty(h.config,\"maxTime\",{get:function(){return h.config._maxTime},set:s(\"max\")}),\"time\"===i.mode&&(h.config.noCalendar=!0,h.config.enableTime=!0),Object.assign(h.config,o,i);for(var u=0;u<a.length;u++)h.config[a[u]]=!0===h.config[a[u]]||\"true\"===h.config[a[u]];for(t.filter((function(e){return void 0!==h.config[e]})).forEach((function(e){h.config[e]=l(h.config[e]||[]).map(C)})),h.isMobile=!h.config.disableMobile&&!h.config.inline&&\"single\"===h.config.mode&&!h.config.disable.length&&!h.config.enable.length&&!h.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),u=0;u<h.config.plugins.length;u++){var m=h.config.plugins[u](h)||{};for(var p in m)t.indexOf(p)>-1?h.config[p]=l(m[p]).map(C).concat(h.config[p]):void 0===i[p]&&(h.config[p]=m[p])}fe(\"onParseConfig\")}(),ie(),h.input=h.config.wrap?f.querySelector(\"[data-input]\"):f,h.input?(h.input._type=h.input.type,h.input.type=\"text\",h.input.classList.add(\"flatpickr-input\"),h._input=h.input,h.config.altInput&&(h.altInput=d(h.input.nodeName,h.config.altInputClass),h._input=h.altInput,h.altInput.placeholder=h.input.placeholder,h.altInput.disabled=h.input.disabled,h.altInput.required=h.input.required,h.altInput.tabIndex=h.input.tabIndex,h.altInput.type=\"text\",h.input.setAttribute(\"type\",\"hidden\"),!h.config.static&&h.input.parentNode&&h.input.parentNode.insertBefore(h.altInput,h.input.nextSibling)),h.config.allowInput||h._input.setAttribute(\"readonly\",\"readonly\"),h._positionElement=h.config.positionElement||h._input):h.config.errorHandler(new Error(\"Invalid input element specified\")),function(){h.selectedDates=[],h.now=h.parseDate(h.config.now)||new Date;var e=h.config.defaultDate||(\"INPUT\"!==h.input.nodeName&&\"TEXTAREA\"!==h.input.nodeName||!h.input.placeholder||h.input.value!==h.input.placeholder?h.input.value:null);e&&se(e,h.config.dateFormat),h._initialDate=h.selectedDates.length>0?h.selectedDates[0]:h.config.minDate&&h.config.minDate.getTime()>h.now.getTime()?h.config.minDate:h.config.maxDate&&h.config.maxDate.getTime()<h.now.getTime()?h.config.maxDate:h.now,h.currentYear=h._initialDate.getFullYear(),h.currentMonth=h._initialDate.getMonth(),h.selectedDates.length>0&&(h.latestSelectedDateObj=h.selectedDates[0]),void 0!==h.config.minTime&&(h.config.minTime=h.parseDate(h.config.minTime,\"H:i\")),void 0!==h.config.maxTime&&(h.config.maxTime=h.parseDate(h.config.maxTime,\"H:i\")),h.minDateHasTime=!!h.config.minDate&&(h.config.minDate.getHours()>0||h.config.minDate.getMinutes()>0||h.config.minDate.getSeconds()>0),h.maxDateHasTime=!!h.config.maxDate&&(h.config.maxDate.getHours()>0||h.config.maxDate.getMinutes()>0||h.config.maxDate.getSeconds()>0),Object.defineProperty(h,\"showTimeInput\",{get:function(){return h._showTimeInput},set:function(e){h._showTimeInput=e,h.calendarContainer&&c(h.calendarContainer,\"showTimeInput\",e),h.isOpen&&oe()}})}(),h.utils={getDaysInMonth:function(e,t){return void 0===e&&(e=h.currentMonth),void 0===t&&(t=h.currentYear),1===e&&(t%4==0&&t%100!=0||t%400==0)?29:h.l10n.daysInMonth[e]}},h.isMobile||function(){var e=window.document.createDocumentFragment();if(h.calendarContainer=d(\"div\",\"flatpickr-calendar\"),h.calendarContainer.tabIndex=-1,!h.config.noCalendar){if(e.appendChild((h.monthNav=d(\"div\",\"flatpickr-months\"),h.yearElements=[],h.monthElements=[],h.prevMonthNav=d(\"span\",\"flatpickr-prev-month\"),h.prevMonthNav.innerHTML=h.config.prevArrow,h.nextMonthNav=d(\"span\",\"flatpickr-next-month\"),h.nextMonthNav.innerHTML=h.config.nextArrow,K(),Object.defineProperty(h,\"_hidePrevMonthArrow\",{get:function(){return h.__hidePrevMonthArrow},set:function(e){h.__hidePrevMonthArrow!==e&&(c(h.prevMonthNav,\"flatpickr-disabled\",e),h.__hidePrevMonthArrow=e)}}),Object.defineProperty(h,\"_hideNextMonthArrow\",{get:function(){return h.__hideNextMonthArrow},set:function(e){h.__hideNextMonthArrow!==e&&(c(h.nextMonthNav,\"flatpickr-disabled\",e),h.__hideNextMonthArrow=e)}}),h.currentYearElement=h.yearElements[0],pe(),h.monthNav)),h.innerContainer=d(\"div\",\"flatpickr-innerContainer\"),h.config.weekNumbers){var t=function(){h.calendarContainer.classList.add(\"hasWeeks\");var e=d(\"div\",\"flatpickr-weekwrapper\");e.appendChild(d(\"span\",\"flatpickr-weekday\",h.l10n.weekAbbreviation));var t=d(\"div\",\"flatpickr-weeks\");return e.appendChild(t),{weekWrapper:e,weekNumbers:t}}(),n=t.weekWrapper,a=t.weekNumbers;h.innerContainer.appendChild(n),h.weekNumbers=a,h.weekWrapper=n}h.rContainer=d(\"div\",\"flatpickr-rContainer\"),h.rContainer.appendChild(U()),h.daysContainer||(h.daysContainer=d(\"div\",\"flatpickr-days\"),h.daysContainer.tabIndex=-1),R(),h.rContainer.appendChild(h.daysContainer),h.innerContainer.appendChild(h.rContainer),e.appendChild(h.innerContainer)}h.config.enableTime&&e.appendChild(function(){h.calendarContainer.classList.add(\"hasTime\"),h.config.noCalendar&&h.calendarContainer.classList.add(\"noCalendar\"),h.timeContainer=d(\"div\",\"flatpickr-time\"),h.timeContainer.tabIndex=-1;var e=d(\"span\",\"flatpickr-time-separator\",\":\"),t=u(\"flatpickr-hour\",{\"aria-label\":h.l10n.hourAriaLabel});h.hourElement=t.getElementsByTagName(\"input\")[0];var n=u(\"flatpickr-minute\",{\"aria-label\":h.l10n.minuteAriaLabel});if(h.minuteElement=n.getElementsByTagName(\"input\")[0],h.hourElement.tabIndex=h.minuteElement.tabIndex=-1,h.hourElement.value=i(h.latestSelectedDateObj?h.latestSelectedDateObj.getHours():h.config.time_24hr?h.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(h.config.defaultHour)),h.minuteElement.value=i(h.latestSelectedDateObj?h.latestSelectedDateObj.getMinutes():h.config.defaultMinute),h.hourElement.setAttribute(\"step\",h.config.hourIncrement.toString()),h.minuteElement.setAttribute(\"step\",h.config.minuteIncrement.toString()),h.hourElement.setAttribute(\"min\",h.config.time_24hr?\"0\":\"1\"),h.hourElement.setAttribute(\"max\",h.config.time_24hr?\"23\":\"12\"),h.minuteElement.setAttribute(\"min\",\"0\"),h.minuteElement.setAttribute(\"max\",\"59\"),h.timeContainer.appendChild(t),h.timeContainer.appendChild(e),h.timeContainer.appendChild(n),h.config.time_24hr&&h.timeContainer.classList.add(\"time24hr\"),h.config.enableSeconds){h.timeContainer.classList.add(\"hasSeconds\");var a=u(\"flatpickr-second\");h.secondElement=a.getElementsByTagName(\"input\")[0],h.secondElement.value=i(h.latestSelectedDateObj?h.latestSelectedDateObj.getSeconds():h.config.defaultSeconds),h.secondElement.setAttribute(\"step\",h.minuteElement.getAttribute(\"step\")),h.secondElement.setAttribute(\"min\",\"0\"),h.secondElement.setAttribute(\"max\",\"59\"),h.timeContainer.appendChild(d(\"span\",\"flatpickr-time-separator\",\":\")),h.timeContainer.appendChild(a)}return h.config.time_24hr||(h.amPM=d(\"span\",\"flatpickr-am-pm\",h.l10n.amPM[o((h.latestSelectedDateObj?h.hourElement.value:h.config.defaultHour)>11)]),h.amPM.title=h.l10n.toggleTitle,h.amPM.tabIndex=-1,h.timeContainer.appendChild(h.amPM)),h.timeContainer}()),c(h.calendarContainer,\"rangeMode\",\"range\"===h.config.mode),c(h.calendarContainer,\"animate\",!0===h.config.animate),c(h.calendarContainer,\"multiMonth\",h.config.showMonths>1),h.calendarContainer.appendChild(e);var r=void 0!==h.config.appendTo&&void 0!==h.config.appendTo.nodeType;if((h.config.inline||h.config.static)&&(h.calendarContainer.classList.add(h.config.inline?\"inline\":\"static\"),h.config.inline&&(!r&&h.element.parentNode?h.element.parentNode.insertBefore(h.calendarContainer,h._input.nextSibling):void 0!==h.config.appendTo&&h.config.appendTo.appendChild(h.calendarContainer)),h.config.static)){var l=d(\"div\",\"flatpickr-wrapper\");h.element.parentNode&&h.element.parentNode.insertBefore(l,h.element),l.appendChild(h.element),h.altInput&&l.appendChild(h.altInput),l.appendChild(h.calendarContainer)}h.config.static||h.config.inline||(void 0!==h.config.appendTo?h.config.appendTo:window.document.body).appendChild(h.calendarContainer)}(),function(){if(h.config.wrap&&[\"open\",\"close\",\"toggle\",\"clear\"].forEach((function(e){Array.prototype.forEach.call(h.element.querySelectorAll(\"[data-\"+e+\"]\"),(function(t){return O(t,\"click\",h[e])}))})),h.isMobile)!function(){var e=h.config.enableTime?h.config.noCalendar?\"time\":\"datetime-local\":\"date\";h.mobileInput=d(\"input\",h.input.className+\" flatpickr-mobile\"),h.mobileInput.step=h.input.getAttribute(\"step\")||\"any\",h.mobileInput.tabIndex=1,h.mobileInput.type=e,h.mobileInput.disabled=h.input.disabled,h.mobileInput.required=h.input.required,h.mobileInput.placeholder=h.input.placeholder,h.mobileFormatStr=\"datetime-local\"===e?\"Y-m-d\\\\TH:i:S\":\"date\"===e?\"Y-m-d\":\"H:i:S\",h.selectedDates.length>0&&(h.mobileInput.defaultValue=h.mobileInput.value=h.formatDate(h.selectedDates[0],h.mobileFormatStr)),h.config.minDate&&(h.mobileInput.min=h.formatDate(h.config.minDate,\"Y-m-d\")),h.config.maxDate&&(h.mobileInput.max=h.formatDate(h.config.maxDate,\"Y-m-d\")),h.input.type=\"hidden\",void 0!==h.altInput&&(h.altInput.type=\"hidden\");try{h.input.parentNode&&h.input.parentNode.insertBefore(h.mobileInput,h.input.nextSibling)}catch(e){}O(h.mobileInput,\"change\",(function(e){h.setDate(e.target.value,!1,h.mobileFormatStr),fe(\"onChange\"),fe(\"onClose\")}))}();else{var e=r(te,50);h._debouncedChange=r(F,300),h.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&O(h.daysContainer,\"mouseover\",(function(e){\"range\"===h.config.mode&&ee(e.target)})),O(window.document.body,\"keydown\",X),h.config.inline||h.config.static||O(window,\"resize\",e),void 0!==window.ontouchstart?O(window.document,\"touchstart\",G):O(window.document,\"mousedown\",_(G)),O(window.document,\"focus\",G,{capture:!0}),!0===h.config.clickOpens&&(O(h._input,\"focus\",h.open),O(h._input,\"mousedown\",_(h.open))),void 0!==h.daysContainer&&(O(h.monthNav,\"mousedown\",_(De)),O(h.monthNav,[\"keyup\",\"increment\"],S),O(h.daysContainer,\"mousedown\",_(ce))),void 0!==h.timeContainer&&void 0!==h.minuteElement&&void 0!==h.hourElement&&(O(h.timeContainer,[\"increment\"],x),O(h.timeContainer,\"blur\",x,{capture:!0}),O(h.timeContainer,\"mousedown\",_(P)),O([h.hourElement,h.minuteElement],[\"focus\",\"click\"],(function(e){return e.target.select()})),void 0!==h.secondElement&&O(h.secondElement,\"focus\",(function(){return h.secondElement&&h.secondElement.select()})),void 0!==h.amPM&&O(h.amPM,\"mousedown\",_((function(e){x(e),F()}))))}}(),(h.selectedDates.length||h.config.noCalendar)&&(h.config.enableTime&&T(h.config.noCalendar?h.latestSelectedDateObj||h.config.minDate:void 0),ve(!1)),M(),h.showTimeInput=h.selectedDates.length>0||h.config.noCalendar;var a=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!h.isMobile&&a&&oe(),fe(\"onReady\")}(),h}function M(e,t){for(var n=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<n.length;i++){var o=n[i];try{if(null!==o.getAttribute(\"data-fp-omit\"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=C(o,t||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}\"function\"!=typeof Object.assign&&(Object.assign=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];if(!e)throw TypeError(\"Cannot convert undefined or null to object\");for(var a=function(t){t&&Object.keys(t).forEach((function(n){return e[n]=t[n]}))},i=0,o=t;i<o.length;i++){var r=o[i];a(r)}return e}),\"undefined\"!=typeof HTMLElement&&\"undefined\"!=typeof HTMLCollection&&\"undefined\"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return M(this,e)},HTMLElement.prototype.flatpickr=function(e){return M([this],e)});var y=function(e,t){return\"string\"==typeof e?M(window.document.querySelectorAll(e),t):e instanceof Node?M([e],t):M(e,t)};return y.defaultConfig={},y.l10ns={en:e({},a),default:e({},a)},y.localize=function(t){y.l10ns.default=e({},y.l10ns.default,t)},y.setDefaults=function(t){y.defaultConfig=e({},y.defaultConfig,t)},y.parseDate=D({}),y.formatDate=v({}),y.compareDates=w,\"undefined\"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return M(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(\"string\"==typeof e?parseInt(e,10):e))},\"undefined\"!=typeof window&&(window.flatpickr=y),y},\"object\"==typeof n&&void 0!==t?t.exports=i():\"function\"==typeof define&&define.amd?define(i):(a=a||self).flatpickr=i()},\n",
       "      421: function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default='\\n.flatpickr-calendar {\\n  background: transparent;\\n  opacity: 0;\\n  display: none;\\n  text-align: center;\\n  visibility: hidden;\\n  padding: 0;\\n  -webkit-animation: none;\\n  animation: none;\\n  direction: ltr;\\n  border: 0;\\n  font-size: 14px;\\n  line-height: 24px;\\n  border-radius: 5px;\\n  position: absolute;\\n  width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -ms-touch-action: manipulation;\\n  touch-action: manipulation;\\n  background: #fff;\\n  -webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);\\n  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);\\n}\\n.flatpickr-calendar.open,\\n.flatpickr-calendar.inline {\\n  opacity: 1;\\n  max-height: 640px;\\n  visibility: visible;\\n}\\n.flatpickr-calendar.open {\\n  display: inline-block;\\n  z-index: 99999;\\n}\\n.flatpickr-calendar.animate.open {\\n  -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n}\\n.flatpickr-calendar.inline {\\n  display: block;\\n  position: relative;\\n  top: 2px;\\n}\\n.flatpickr-calendar.static {\\n  position: absolute;\\n  top: calc(100% + 2px);\\n}\\n.flatpickr-calendar.static.open {\\n  z-index: 999;\\n  display: block;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {\\n  -webkit-box-shadow: none !important;\\n  box-shadow: none !important;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {\\n  -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer,\\n.flatpickr-calendar .hasTime .dayContainer {\\n  border-bottom: 0;\\n  border-bottom-right-radius: 0;\\n  border-bottom-left-radius: 0;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer {\\n  border-left: 0;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\\n  height: 40px;\\n  border-top: 1px solid #e6e6e6;\\n}\\n.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {\\n  height: auto;\\n}\\n.flatpickr-calendar:before,\\n.flatpickr-calendar:after {\\n  position: absolute;\\n  display: block;\\n  pointer-events: none;\\n  border: solid transparent;\\n  content: \\'\\';\\n  height: 0;\\n  width: 0;\\n  left: 22px;\\n}\\n.flatpickr-calendar.rightMost:before,\\n.flatpickr-calendar.rightMost:after {\\n  left: auto;\\n  right: 22px;\\n}\\n.flatpickr-calendar:before {\\n  border-width: 5px;\\n  margin: 0 -5px;\\n}\\n.flatpickr-calendar:after {\\n  border-width: 4px;\\n  margin: 0 -4px;\\n}\\n.flatpickr-calendar.arrowTop:before,\\n.flatpickr-calendar.arrowTop:after {\\n  bottom: 100%;\\n}\\n.flatpickr-calendar.arrowTop:before {\\n  border-bottom-color: #e6e6e6;\\n}\\n.flatpickr-calendar.arrowTop:after {\\n  border-bottom-color: #fff;\\n}\\n.flatpickr-calendar.arrowBottom:before,\\n.flatpickr-calendar.arrowBottom:after {\\n  top: 100%;\\n}\\n.flatpickr-calendar.arrowBottom:before {\\n  border-top-color: #e6e6e6;\\n}\\n.flatpickr-calendar.arrowBottom:after {\\n  border-top-color: #fff;\\n}\\n.flatpickr-calendar:focus {\\n  outline: 0;\\n}\\n.flatpickr-wrapper {\\n  position: relative;\\n  display: inline-block;\\n}\\n.flatpickr-months {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n}\\n.flatpickr-months .flatpickr-month {\\n  background: transparent;\\n  color: rgba(0, 0, 0, 0.9);\\n  fill: rgba(0, 0, 0, 0.9);\\n  height: 34px;\\n  line-height: 1;\\n  text-align: center;\\n  position: relative;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  overflow: hidden;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\n.flatpickr-months .flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month {\\n  text-decoration: none;\\n  cursor: pointer;\\n  position: absolute;\\n  top: 0;\\n  height: 34px;\\n  padding: 10px;\\n  z-index: 3;\\n  color: rgba(0, 0, 0, 0.9);\\n  fill: rgba(0, 0, 0, 0.9);\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,\\n.flatpickr-months .flatpickr-next-month.flatpickr-disabled {\\n  display: none;\\n}\\n.flatpickr-months .flatpickr-prev-month i,\\n.flatpickr-months .flatpickr-next-month i {\\n  position: relative;\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  left: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-next-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  right: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month:hover,\\n.flatpickr-months .flatpickr-next-month:hover {\\n  color: #959ea9;\\n}\\n.flatpickr-months .flatpickr-prev-month:hover svg,\\n.flatpickr-months .flatpickr-next-month:hover svg {\\n  fill: #f64747;\\n}\\n.flatpickr-months .flatpickr-prev-month svg,\\n.flatpickr-months .flatpickr-next-month svg {\\n  width: 14px;\\n  height: 14px;\\n}\\n.flatpickr-months .flatpickr-prev-month svg path,\\n.flatpickr-months .flatpickr-next-month svg path {\\n  -webkit-transition: fill 0.1s;\\n  transition: fill 0.1s;\\n  fill: inherit;\\n}\\n.numInputWrapper {\\n  position: relative;\\n  height: auto;\\n}\\n.numInputWrapper input,\\n.numInputWrapper span {\\n  display: inline-block;\\n}\\n.numInputWrapper input {\\n  width: 100%;\\n}\\n.numInputWrapper input::-ms-clear {\\n  display: none;\\n}\\n.numInputWrapper input::-webkit-outer-spin-button,\\n.numInputWrapper input::-webkit-inner-spin-button {\\n  margin: 0;\\n  -webkit-appearance: none;\\n}\\n.numInputWrapper span {\\n  position: absolute;\\n  right: 0;\\n  width: 14px;\\n  padding: 0 4px 0 2px;\\n  height: 50%;\\n  line-height: 50%;\\n  opacity: 0;\\n  cursor: pointer;\\n  border: 1px solid rgba(57, 57, 57, 0.15);\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.numInputWrapper span:hover {\\n  background: rgba(0, 0, 0, 0.1);\\n}\\n.numInputWrapper span:active {\\n  background: rgba(0, 0, 0, 0.2);\\n}\\n.numInputWrapper span:after {\\n  display: block;\\n  content: \"\";\\n  position: absolute;\\n}\\n.numInputWrapper span.arrowUp {\\n  top: 0;\\n  border-bottom: 0;\\n}\\n.numInputWrapper span.arrowUp:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-bottom: 4px solid rgba(57, 57, 57, 0.6);\\n  top: 26%;\\n}\\n.numInputWrapper span.arrowDown {\\n  top: 50%;\\n}\\n.numInputWrapper span.arrowDown:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-top: 4px solid rgba(57, 57, 57, 0.6);\\n  top: 40%;\\n}\\n.numInputWrapper span svg {\\n  width: inherit;\\n  height: auto;\\n}\\n.numInputWrapper span svg path {\\n  fill: rgba(0, 0, 0, 0.5);\\n}\\n.numInputWrapper:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.numInputWrapper:hover span {\\n  opacity: 1;\\n}\\n.flatpickr-current-month {\\n  font-size: 135%;\\n  line-height: inherit;\\n  font-weight: 300;\\n  color: inherit;\\n  position: absolute;\\n  width: 75%;\\n  left: 12.5%;\\n  padding: 7.48px 0 0 0;\\n  line-height: 1;\\n  height: 34px;\\n  display: inline-block;\\n  text-align: center;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n}\\n.flatpickr-current-month span.cur-month {\\n  font-family: inherit;\\n  font-weight: 700;\\n  color: inherit;\\n  display: inline-block;\\n  margin-left: 0.5ch;\\n  padding: 0;\\n}\\n.flatpickr-current-month span.cur-month:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .numInputWrapper {\\n  width: 6ch;\\n  width: 7ch\\0;\\n  display: inline-block;\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: rgba(0, 0, 0, 0.9);\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowDown:after {\\n  border-top-color: rgba(0, 0, 0, 0.9);\\n}\\n.flatpickr-current-month input.cur-year {\\n  background: transparent;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: text;\\n  padding: 0 0 0 0.5ch;\\n  margin: 0;\\n  display: inline-block;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  line-height: inherit;\\n  height: auto;\\n  border: 0;\\n  border-radius: 0;\\n  vertical-align: initial;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-current-month input.cur-year:focus {\\n  outline: 0;\\n}\\n.flatpickr-current-month input.cur-year[disabled],\\n.flatpickr-current-month input.cur-year[disabled]:hover {\\n  font-size: 100%;\\n  color: rgba(0, 0, 0, 0.5);\\n  background: transparent;\\n  pointer-events: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months {\\n  appearance: menulist;\\n  background: transparent;\\n  border: none;\\n  border-radius: 0;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: pointer;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  height: auto;\\n  line-height: inherit;\\n  margin: -1px 0 0 0;\\n  outline: none;\\n  padding: 0 0 0 0.5ch;\\n  position: relative;\\n  vertical-align: initial;\\n  -webkit-box-sizing: border-box;\\n  -webkit-appearance: menulist;\\n  -moz-appearance: menulist;\\n  width: auto;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:focus,\\n.flatpickr-current-month .flatpickr-monthDropdown-months:active {\\n  outline: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {\\n  background-color: transparent;\\n  outline: none;\\n  padding: 0;\\n}\\n.flatpickr-weekdays {\\n  background: transparent;\\n  text-align: center;\\n  overflow: hidden;\\n  width: 100%;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: center;\\n  -webkit-align-items: center;\\n  -ms-flex-align: center;\\n  align-items: center;\\n  height: 28px;\\n}\\n.flatpickr-weekdays .flatpickr-weekdaycontainer {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\nspan.flatpickr-weekday {\\n  cursor: default;\\n  font-size: 90%;\\n  background: transparent;\\n  color: rgba(0, 0, 0, 0.54);\\n  line-height: 1;\\n  margin: 0;\\n  text-align: center;\\n  display: block;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  font-weight: bolder;\\n}\\n.dayContainer,\\n.flatpickr-weeks {\\n  padding: 1px 0 0 0;\\n}\\n.flatpickr-days {\\n  position: relative;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: start;\\n  -webkit-align-items: flex-start;\\n  -ms-flex-align: start;\\n  align-items: flex-start;\\n  width: 307.875px;\\n}\\n.flatpickr-days:focus {\\n  outline: 0;\\n}\\n.dayContainer {\\n  padding: 0;\\n  outline: 0;\\n  text-align: left;\\n  width: 307.875px;\\n  min-width: 307.875px;\\n  max-width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  display: inline-block;\\n  display: -ms-flexbox;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: flex;\\n  -webkit-flex-wrap: wrap;\\n  flex-wrap: wrap;\\n  -ms-flex-wrap: wrap;\\n  -ms-flex-pack: justify;\\n  -webkit-justify-content: space-around;\\n  justify-content: space-around;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n  opacity: 1;\\n}\\n.dayContainer + .dayContainer {\\n  -webkit-box-shadow: -1px 0 0 #e6e6e6;\\n  box-shadow: -1px 0 0 #e6e6e6;\\n}\\n.flatpickr-day {\\n  background: none;\\n  border: 1px solid transparent;\\n  border-radius: 150px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: #393939;\\n  cursor: pointer;\\n  font-weight: 400;\\n  width: 14.2857143%;\\n  -webkit-flex-basis: 14.2857143%;\\n  -ms-flex-preferred-size: 14.2857143%;\\n  flex-basis: 14.2857143%;\\n  max-width: 39px;\\n  height: 39px;\\n  line-height: 39px;\\n  margin: 0;\\n  display: inline-block;\\n  position: relative;\\n  -webkit-box-pack: center;\\n  -webkit-justify-content: center;\\n  -ms-flex-pack: center;\\n  justify-content: center;\\n  text-align: center;\\n}\\n.flatpickr-day.inRange,\\n.flatpickr-day.prevMonthDay.inRange,\\n.flatpickr-day.nextMonthDay.inRange,\\n.flatpickr-day.today.inRange,\\n.flatpickr-day.prevMonthDay.today.inRange,\\n.flatpickr-day.nextMonthDay.today.inRange,\\n.flatpickr-day:hover,\\n.flatpickr-day.prevMonthDay:hover,\\n.flatpickr-day.nextMonthDay:hover,\\n.flatpickr-day:focus,\\n.flatpickr-day.prevMonthDay:focus,\\n.flatpickr-day.nextMonthDay:focus {\\n  cursor: pointer;\\n  outline: 0;\\n  background: #e6e6e6;\\n  border-color: #e6e6e6;\\n}\\n.flatpickr-day.today {\\n  border-color: #959ea9;\\n}\\n.flatpickr-day.today:hover,\\n.flatpickr-day.today:focus {\\n  border-color: #959ea9;\\n  background: #959ea9;\\n  color: #fff;\\n}\\n.flatpickr-day.selected,\\n.flatpickr-day.startRange,\\n.flatpickr-day.endRange,\\n.flatpickr-day.selected.inRange,\\n.flatpickr-day.startRange.inRange,\\n.flatpickr-day.endRange.inRange,\\n.flatpickr-day.selected:focus,\\n.flatpickr-day.startRange:focus,\\n.flatpickr-day.endRange:focus,\\n.flatpickr-day.selected:hover,\\n.flatpickr-day.startRange:hover,\\n.flatpickr-day.endRange:hover,\\n.flatpickr-day.selected.prevMonthDay,\\n.flatpickr-day.startRange.prevMonthDay,\\n.flatpickr-day.endRange.prevMonthDay,\\n.flatpickr-day.selected.nextMonthDay,\\n.flatpickr-day.startRange.nextMonthDay,\\n.flatpickr-day.endRange.nextMonthDay {\\n  background: #569ff7;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  color: #fff;\\n  border-color: #569ff7;\\n}\\n.flatpickr-day.selected.startRange,\\n.flatpickr-day.startRange.startRange,\\n.flatpickr-day.endRange.startRange {\\n  border-radius: 50px 0 0 50px;\\n}\\n.flatpickr-day.selected.endRange,\\n.flatpickr-day.startRange.endRange,\\n.flatpickr-day.endRange.endRange {\\n  border-radius: 0 50px 50px 0;\\n}\\n.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {\\n  -webkit-box-shadow: -10px 0 0 #569ff7;\\n  box-shadow: -10px 0 0 #569ff7;\\n}\\n.flatpickr-day.selected.startRange.endRange,\\n.flatpickr-day.startRange.startRange.endRange,\\n.flatpickr-day.endRange.startRange.endRange {\\n  border-radius: 50px;\\n}\\n.flatpickr-day.inRange {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n  box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover,\\n.flatpickr-day.prevMonthDay,\\n.flatpickr-day.nextMonthDay,\\n.flatpickr-day.notAllowed,\\n.flatpickr-day.notAllowed.prevMonthDay,\\n.flatpickr-day.notAllowed.nextMonthDay {\\n  color: rgba(57, 57, 57, 0.3);\\n  background: transparent;\\n  border-color: transparent;\\n  cursor: default;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover {\\n  cursor: not-allowed;\\n  color: rgba(57, 57, 57, 0.1);\\n}\\n.flatpickr-day.week.selected {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;\\n  box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;\\n}\\n.flatpickr-day.hidden {\\n  visibility: hidden;\\n}\\n.rangeMode .flatpickr-day {\\n  margin-top: 1px;\\n}\\n.flatpickr-weekwrapper {\\n  float: left;\\n}\\n.flatpickr-weekwrapper .flatpickr-weeks {\\n  padding: 0 12px;\\n  -webkit-box-shadow: 1px 0 0 #e6e6e6;\\n  box-shadow: 1px 0 0 #e6e6e6;\\n}\\n.flatpickr-weekwrapper .flatpickr-weekday {\\n  float: none;\\n  width: 100%;\\n  line-height: 28px;\\n}\\n.flatpickr-weekwrapper span.flatpickr-day,\\n.flatpickr-weekwrapper span.flatpickr-day:hover {\\n  display: block;\\n  width: 100%;\\n  max-width: none;\\n  color: rgba(57, 57, 57, 0.3);\\n  background: transparent;\\n  cursor: default;\\n  border: none;\\n}\\n.flatpickr-innerContainer {\\n  display: block;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n}\\n.flatpickr-rContainer {\\n  display: inline-block;\\n  padding: 0;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.flatpickr-time {\\n  text-align: center;\\n  outline: 0;\\n  display: block;\\n  height: 0;\\n  line-height: 40px;\\n  max-height: 40px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n}\\n.flatpickr-time:after {\\n  content: \"\";\\n  display: table;\\n  clear: both;\\n}\\n.flatpickr-time .numInputWrapper {\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  width: 40%;\\n  height: 40px;\\n  float: left;\\n}\\n.flatpickr-time .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: #393939;\\n}\\n.flatpickr-time .numInputWrapper span.arrowDown:after {\\n  border-top-color: #393939;\\n}\\n.flatpickr-time.hasSeconds .numInputWrapper {\\n  width: 26%;\\n}\\n.flatpickr-time.time24hr .numInputWrapper {\\n  width: 49%;\\n}\\n.flatpickr-time input {\\n  background: transparent;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  border: 0;\\n  border-radius: 0;\\n  text-align: center;\\n  margin: 0;\\n  padding: 0;\\n  height: inherit;\\n  line-height: inherit;\\n  color: #393939;\\n  font-size: 14px;\\n  position: relative;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-time input.flatpickr-hour {\\n  font-weight: bold;\\n}\\n.flatpickr-time input.flatpickr-minute,\\n.flatpickr-time input.flatpickr-second {\\n  font-weight: 400;\\n}\\n.flatpickr-time input:focus {\\n  outline: 0;\\n  border: 0;\\n}\\n.flatpickr-time .flatpickr-time-separator,\\n.flatpickr-time .flatpickr-am-pm {\\n  height: inherit;\\n  float: left;\\n  line-height: inherit;\\n  color: #393939;\\n  font-weight: bold;\\n  width: 2%;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  -webkit-align-self: center;\\n  -ms-flex-item-align: center;\\n  align-self: center;\\n}\\n.flatpickr-time .flatpickr-am-pm {\\n  outline: 0;\\n  width: 18%;\\n  cursor: pointer;\\n  text-align: center;\\n  font-weight: 400;\\n}\\n.flatpickr-time input:hover,\\n.flatpickr-time .flatpickr-am-pm:hover,\\n.flatpickr-time input:focus,\\n.flatpickr-time .flatpickr-am-pm:focus {\\n  background: #eee;\\n}\\n.flatpickr-input[readonly] {\\n  cursor: pointer;\\n}\\n@-webkit-keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\n@keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\n.flatpickr-calendar {\\n  background: transparent;\\n  opacity: 0;\\n  display: none;\\n  text-align: center;\\n  visibility: hidden;\\n  padding: 0;\\n  -webkit-animation: none;\\n  animation: none;\\n  direction: ltr;\\n  border: 0;\\n  font-size: 14px;\\n  line-height: 24px;\\n  border-radius: 5px;\\n  position: absolute;\\n  width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -ms-touch-action: manipulation;\\n  touch-action: manipulation;\\n  -webkit-box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);\\n  box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);\\n}\\n.flatpickr-calendar.open,\\n.flatpickr-calendar.inline {\\n  opacity: 1;\\n  max-height: 640px;\\n  visibility: visible;\\n}\\n.flatpickr-calendar.open {\\n  display: inline-block;\\n  z-index: 99999;\\n}\\n.flatpickr-calendar.animate.open {\\n  -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n}\\n.flatpickr-calendar.inline {\\n  display: block;\\n  position: relative;\\n  top: 2px;\\n}\\n.flatpickr-calendar.static {\\n  position: absolute;\\n  top: calc(100% + 2px);\\n}\\n.flatpickr-calendar.static.open {\\n  z-index: 999;\\n  display: block;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {\\n  -webkit-box-shadow: none !important;\\n  box-shadow: none !important;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {\\n  -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer,\\n.flatpickr-calendar .hasTime .dayContainer {\\n  border-bottom: 0;\\n  border-bottom-right-radius: 0;\\n  border-bottom-left-radius: 0;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer {\\n  border-left: 0;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\\n  height: 40px;\\n  border-top: 1px solid #eceef1;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-innerContainer {\\n  border-bottom: 0;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\\n  border: 1px solid #eceef1;\\n}\\n.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {\\n  height: auto;\\n}\\n.flatpickr-calendar:before,\\n.flatpickr-calendar:after {\\n  position: absolute;\\n  display: block;\\n  pointer-events: none;\\n  border: solid transparent;\\n  content: \\'\\';\\n  height: 0;\\n  width: 0;\\n  left: 22px;\\n}\\n.flatpickr-calendar.rightMost:before,\\n.flatpickr-calendar.rightMost:after {\\n  left: auto;\\n  right: 22px;\\n}\\n.flatpickr-calendar:before {\\n  border-width: 5px;\\n  margin: 0 -5px;\\n}\\n.flatpickr-calendar:after {\\n  border-width: 4px;\\n  margin: 0 -4px;\\n}\\n.flatpickr-calendar.arrowTop:before,\\n.flatpickr-calendar.arrowTop:after {\\n  bottom: 100%;\\n}\\n.flatpickr-calendar.arrowTop:before {\\n  border-bottom-color: #eceef1;\\n}\\n.flatpickr-calendar.arrowTop:after {\\n  border-bottom-color: #eceef1;\\n}\\n.flatpickr-calendar.arrowBottom:before,\\n.flatpickr-calendar.arrowBottom:after {\\n  top: 100%;\\n}\\n.flatpickr-calendar.arrowBottom:before {\\n  border-top-color: #eceef1;\\n}\\n.flatpickr-calendar.arrowBottom:after {\\n  border-top-color: #eceef1;\\n}\\n.flatpickr-calendar:focus {\\n  outline: 0;\\n}\\n.flatpickr-wrapper {\\n  position: relative;\\n  display: inline-block;\\n}\\n.flatpickr-months {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n}\\n.flatpickr-months .flatpickr-month {\\n  border-radius: 5px 5px 0 0;\\n  background: #eceef1;\\n  color: #5a6171;\\n  fill: #5a6171;\\n  height: 34px;\\n  line-height: 1;\\n  text-align: center;\\n  position: relative;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  overflow: hidden;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\n.flatpickr-months .flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month {\\n  text-decoration: none;\\n  cursor: pointer;\\n  position: absolute;\\n  top: 0;\\n  height: 34px;\\n  padding: 10px;\\n  z-index: 3;\\n  color: #5a6171;\\n  fill: #5a6171;\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,\\n.flatpickr-months .flatpickr-next-month.flatpickr-disabled {\\n  display: none;\\n}\\n.flatpickr-months .flatpickr-prev-month i,\\n.flatpickr-months .flatpickr-next-month i {\\n  position: relative;\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  left: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-next-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  right: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month:hover,\\n.flatpickr-months .flatpickr-next-month:hover {\\n  color: #bbb;\\n}\\n.flatpickr-months .flatpickr-prev-month:hover svg,\\n.flatpickr-months .flatpickr-next-month:hover svg {\\n  fill: #f64747;\\n}\\n.flatpickr-months .flatpickr-prev-month svg,\\n.flatpickr-months .flatpickr-next-month svg {\\n  width: 14px;\\n  height: 14px;\\n}\\n.flatpickr-months .flatpickr-prev-month svg path,\\n.flatpickr-months .flatpickr-next-month svg path {\\n  -webkit-transition: fill 0.1s;\\n  transition: fill 0.1s;\\n  fill: inherit;\\n}\\n.numInputWrapper {\\n  position: relative;\\n  height: auto;\\n}\\n.numInputWrapper input,\\n.numInputWrapper span {\\n  display: inline-block;\\n}\\n.numInputWrapper input {\\n  width: 100%;\\n}\\n.numInputWrapper input::-ms-clear {\\n  display: none;\\n}\\n.numInputWrapper input::-webkit-outer-spin-button,\\n.numInputWrapper input::-webkit-inner-spin-button {\\n  margin: 0;\\n  -webkit-appearance: none;\\n}\\n.numInputWrapper span {\\n  position: absolute;\\n  right: 0;\\n  width: 14px;\\n  padding: 0 4px 0 2px;\\n  height: 50%;\\n  line-height: 50%;\\n  opacity: 0;\\n  cursor: pointer;\\n  border: 1px solid rgba(72, 72, 72, 0.15);\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.numInputWrapper span:hover {\\n  background: rgba(0, 0, 0, 0.1);\\n}\\n.numInputWrapper span:active {\\n  background: rgba(0, 0, 0, 0.2);\\n}\\n.numInputWrapper span:after {\\n  display: block;\\n  content: \"\";\\n  position: absolute;\\n}\\n.numInputWrapper span.arrowUp {\\n  top: 0;\\n  border-bottom: 0;\\n}\\n.numInputWrapper span.arrowUp:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-bottom: 4px solid rgba(72, 72, 72, 0.6);\\n  top: 26%;\\n}\\n.numInputWrapper span.arrowDown {\\n  top: 50%;\\n}\\n.numInputWrapper span.arrowDown:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-top: 4px solid rgba(72, 72, 72, 0.6);\\n  top: 40%;\\n}\\n.numInputWrapper span svg {\\n  width: inherit;\\n  height: auto;\\n}\\n.numInputWrapper span svg path {\\n  fill: rgba(90, 97, 113, 0.5);\\n}\\n.numInputWrapper:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.numInputWrapper:hover span {\\n  opacity: 1;\\n}\\n.flatpickr-current-month {\\n  font-size: 135%;\\n  line-height: inherit;\\n  font-weight: 300;\\n  color: inherit;\\n  position: absolute;\\n  width: 75%;\\n  left: 12.5%;\\n  padding: 7.48px 0 0 0;\\n  line-height: 1;\\n  height: 34px;\\n  display: inline-block;\\n  text-align: center;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n}\\n.flatpickr-current-month span.cur-month {\\n  font-family: inherit;\\n  font-weight: 700;\\n  color: inherit;\\n  display: inline-block;\\n  margin-left: 0.5ch;\\n  padding: 0;\\n}\\n.flatpickr-current-month span.cur-month:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .numInputWrapper {\\n  width: 6ch;\\n  width: 7ch\\0;\\n  display: inline-block;\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: #5a6171;\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowDown:after {\\n  border-top-color: #5a6171;\\n}\\n.flatpickr-current-month input.cur-year {\\n  background: transparent;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: text;\\n  padding: 0 0 0 0.5ch;\\n  margin: 0;\\n  display: inline-block;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  line-height: inherit;\\n  height: auto;\\n  border: 0;\\n  border-radius: 0;\\n  vertical-align: initial;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-current-month input.cur-year:focus {\\n  outline: 0;\\n}\\n.flatpickr-current-month input.cur-year[disabled],\\n.flatpickr-current-month input.cur-year[disabled]:hover {\\n  font-size: 100%;\\n  color: rgba(90, 97, 113, 0.5);\\n  background: transparent;\\n  pointer-events: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months {\\n  appearance: menulist;\\n  background: #eceef1;\\n  border: none;\\n  border-radius: 0;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: pointer;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  height: auto;\\n  line-height: inherit;\\n  margin: -1px 0 0 0;\\n  outline: none;\\n  padding: 0 0 0 0.5ch;\\n  position: relative;\\n  vertical-align: initial;\\n  -webkit-box-sizing: border-box;\\n  -webkit-appearance: menulist;\\n  -moz-appearance: menulist;\\n  width: auto;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:focus,\\n.flatpickr-current-month .flatpickr-monthDropdown-months:active {\\n  outline: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {\\n  background-color: #eceef1;\\n  outline: none;\\n  padding: 0;\\n}\\n.flatpickr-weekdays {\\n  background: #eceef1;\\n  text-align: center;\\n  overflow: hidden;\\n  width: 100%;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: center;\\n  -webkit-align-items: center;\\n  -ms-flex-align: center;\\n  align-items: center;\\n  height: 28px;\\n}\\n.flatpickr-weekdays .flatpickr-weekdaycontainer {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\nspan.flatpickr-weekday {\\n  cursor: default;\\n  font-size: 90%;\\n  background: #eceef1;\\n  color: #5a6171;\\n  line-height: 1;\\n  margin: 0;\\n  text-align: center;\\n  display: block;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  font-weight: bolder;\\n}\\n.dayContainer,\\n.flatpickr-weeks {\\n  padding: 1px 0 0 0;\\n}\\n.flatpickr-days {\\n  position: relative;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: start;\\n  -webkit-align-items: flex-start;\\n  -ms-flex-align: start;\\n  align-items: flex-start;\\n  width: 307.875px;\\n  border-left: 1px solid #eceef1;\\n  border-right: 1px solid #eceef1;\\n}\\n.flatpickr-days:focus {\\n  outline: 0;\\n}\\n.dayContainer {\\n  padding: 0;\\n  outline: 0;\\n  text-align: left;\\n  width: 307.875px;\\n  min-width: 307.875px;\\n  max-width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  display: inline-block;\\n  display: -ms-flexbox;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: flex;\\n  -webkit-flex-wrap: wrap;\\n  flex-wrap: wrap;\\n  -ms-flex-wrap: wrap;\\n  -ms-flex-pack: justify;\\n  -webkit-justify-content: space-around;\\n  justify-content: space-around;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n  opacity: 1;\\n}\\n.dayContainer + .dayContainer {\\n  -webkit-box-shadow: -1px 0 0 #eceef1;\\n  box-shadow: -1px 0 0 #eceef1;\\n}\\n.flatpickr-day {\\n  background: none;\\n  border: 1px solid transparent;\\n  border-radius: 150px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: #484848;\\n  cursor: pointer;\\n  font-weight: 400;\\n  width: 14.2857143%;\\n  -webkit-flex-basis: 14.2857143%;\\n  -ms-flex-preferred-size: 14.2857143%;\\n  flex-basis: 14.2857143%;\\n  max-width: 39px;\\n  height: 39px;\\n  line-height: 39px;\\n  margin: 0;\\n  display: inline-block;\\n  position: relative;\\n  -webkit-box-pack: center;\\n  -webkit-justify-content: center;\\n  -ms-flex-pack: center;\\n  justify-content: center;\\n  text-align: center;\\n}\\n.flatpickr-day.inRange,\\n.flatpickr-day.prevMonthDay.inRange,\\n.flatpickr-day.nextMonthDay.inRange,\\n.flatpickr-day.today.inRange,\\n.flatpickr-day.prevMonthDay.today.inRange,\\n.flatpickr-day.nextMonthDay.today.inRange,\\n.flatpickr-day:hover,\\n.flatpickr-day.prevMonthDay:hover,\\n.flatpickr-day.nextMonthDay:hover,\\n.flatpickr-day:focus,\\n.flatpickr-day.prevMonthDay:focus,\\n.flatpickr-day.nextMonthDay:focus {\\n  cursor: pointer;\\n  outline: 0;\\n  background: #e2e2e2;\\n  border-color: #e2e2e2;\\n}\\n.flatpickr-day.today {\\n  border-color: #bbb;\\n}\\n.flatpickr-day.today:hover,\\n.flatpickr-day.today:focus {\\n  border-color: #bbb;\\n  background: #bbb;\\n  color: #fff;\\n}\\n.flatpickr-day.selected,\\n.flatpickr-day.startRange,\\n.flatpickr-day.endRange,\\n.flatpickr-day.selected.inRange,\\n.flatpickr-day.startRange.inRange,\\n.flatpickr-day.endRange.inRange,\\n.flatpickr-day.selected:focus,\\n.flatpickr-day.startRange:focus,\\n.flatpickr-day.endRange:focus,\\n.flatpickr-day.selected:hover,\\n.flatpickr-day.startRange:hover,\\n.flatpickr-day.endRange:hover,\\n.flatpickr-day.selected.prevMonthDay,\\n.flatpickr-day.startRange.prevMonthDay,\\n.flatpickr-day.endRange.prevMonthDay,\\n.flatpickr-day.selected.nextMonthDay,\\n.flatpickr-day.startRange.nextMonthDay,\\n.flatpickr-day.endRange.nextMonthDay {\\n  background: #ff5a5f;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  color: #fff;\\n  border-color: #ff5a5f;\\n}\\n.flatpickr-day.selected.startRange,\\n.flatpickr-day.startRange.startRange,\\n.flatpickr-day.endRange.startRange {\\n  border-radius: 50px 0 0 50px;\\n}\\n.flatpickr-day.selected.endRange,\\n.flatpickr-day.startRange.endRange,\\n.flatpickr-day.endRange.endRange {\\n  border-radius: 0 50px 50px 0;\\n}\\n.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {\\n  -webkit-box-shadow: -10px 0 0 #ff5a5f;\\n  box-shadow: -10px 0 0 #ff5a5f;\\n}\\n.flatpickr-day.selected.startRange.endRange,\\n.flatpickr-day.startRange.startRange.endRange,\\n.flatpickr-day.endRange.startRange.endRange {\\n  border-radius: 50px;\\n}\\n.flatpickr-day.inRange {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;\\n  box-shadow: -5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover,\\n.flatpickr-day.prevMonthDay,\\n.flatpickr-day.nextMonthDay,\\n.flatpickr-day.notAllowed,\\n.flatpickr-day.notAllowed.prevMonthDay,\\n.flatpickr-day.notAllowed.nextMonthDay {\\n  color: rgba(72, 72, 72, 0.3);\\n  background: transparent;\\n  border-color: transparent;\\n  cursor: default;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover {\\n  cursor: not-allowed;\\n  color: rgba(72, 72, 72, 0.1);\\n}\\n.flatpickr-day.week.selected {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;\\n  box-shadow: -5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;\\n}\\n.flatpickr-day.hidden {\\n  visibility: hidden;\\n}\\n.rangeMode .flatpickr-day {\\n  margin-top: 1px;\\n}\\n.flatpickr-weekwrapper {\\n  float: left;\\n}\\n.flatpickr-weekwrapper .flatpickr-weeks {\\n  padding: 0 12px;\\n  border-left: 1px solid #eceef1;\\n}\\n.flatpickr-weekwrapper .flatpickr-weekday {\\n  float: none;\\n  width: 100%;\\n  line-height: 28px;\\n}\\n.flatpickr-weekwrapper span.flatpickr-day,\\n.flatpickr-weekwrapper span.flatpickr-day:hover {\\n  display: block;\\n  width: 100%;\\n  max-width: none;\\n  color: rgba(72, 72, 72, 0.3);\\n  background: transparent;\\n  cursor: default;\\n  border: none;\\n}\\n.flatpickr-innerContainer {\\n  display: block;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n  background: #fff;\\n  border-bottom: 1px solid #eceef1;\\n}\\n.flatpickr-rContainer {\\n  display: inline-block;\\n  padding: 0;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.flatpickr-time {\\n  text-align: center;\\n  outline: 0;\\n  display: block;\\n  height: 0;\\n  line-height: 40px;\\n  max-height: 40px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  background: #fff;\\n  border-radius: 0 0 5px 5px;\\n}\\n.flatpickr-time:after {\\n  content: \"\";\\n  display: table;\\n  clear: both;\\n}\\n.flatpickr-time .numInputWrapper {\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  width: 40%;\\n  height: 40px;\\n  float: left;\\n}\\n.flatpickr-time .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: #484848;\\n}\\n.flatpickr-time .numInputWrapper span.arrowDown:after {\\n  border-top-color: #484848;\\n}\\n.flatpickr-time.hasSeconds .numInputWrapper {\\n  width: 26%;\\n}\\n.flatpickr-time.time24hr .numInputWrapper {\\n  width: 49%;\\n}\\n.flatpickr-time input {\\n  background: transparent;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  border: 0;\\n  border-radius: 0;\\n  text-align: center;\\n  margin: 0;\\n  padding: 0;\\n  height: inherit;\\n  line-height: inherit;\\n  color: #484848;\\n  font-size: 14px;\\n  position: relative;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-time input.flatpickr-hour {\\n  font-weight: bold;\\n}\\n.flatpickr-time input.flatpickr-minute,\\n.flatpickr-time input.flatpickr-second {\\n  font-weight: 400;\\n}\\n.flatpickr-time input:focus {\\n  outline: 0;\\n  border: 0;\\n}\\n.flatpickr-time .flatpickr-time-separator,\\n.flatpickr-time .flatpickr-am-pm {\\n  height: inherit;\\n  float: left;\\n  line-height: inherit;\\n  color: #484848;\\n  font-weight: bold;\\n  width: 2%;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  -webkit-align-self: center;\\n  -ms-flex-item-align: center;\\n  align-self: center;\\n}\\n.flatpickr-time .flatpickr-am-pm {\\n  outline: 0;\\n  width: 18%;\\n  cursor: pointer;\\n  text-align: center;\\n  font-weight: 400;\\n}\\n.flatpickr-time input:hover,\\n.flatpickr-time .flatpickr-am-pm:hover,\\n.flatpickr-time input:focus,\\n.flatpickr-time .flatpickr-am-pm:focus {\\n  background: #eaeaea;\\n}\\n.flatpickr-input[readonly] {\\n  cursor: pointer;\\n}\\n@-webkit-keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\n@keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\nspan.flatpickr-day.selected {\\n  font-weight: bold;\\n}\\n'},\n",
       "      422: function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(1).__importDefault(e(186)),r=e(423);class n extends r.AbstractRangeSliderView{}a.DateRangeSliderView=n,n.__name__=\"DateRangeSliderView\";class d extends r.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_DateRangeSlider(){this.prototype.default_view=n,this.override({format:\"%d %b %Y\"})}_formatter(e,t){return i.default(e,t)}}a.DateRangeSlider=d,d.__name__=\"DateRangeSlider\",d.init_DateRangeSlider()},\n",
       "      423: function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),l=s.__importStar(t(424)),r=t(72),o=t(9),n=t(405),a=t(131),d=t(425),_=t(412),h=s.__importDefault(t(426)),c=s.__importDefault(t(427));class u extends n.ControlView{*controls(){yield this.slider_el}get noUiSlider(){return this.slider_el.noUiSlider}connect_signals(){super.connect_signals();const{direction:t,orientation:e,tooltips:i}=this.model.properties;this.on_change([t,e,i],()=>this.render());const{start:s,end:l,value:r,step:o,title:n}=this.model.properties;this.on_change([s,l,r,o],()=>{const{start:t,end:e,value:i,step:s}=this._calc_to();this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s})});const{bar_color:a}=this.model.properties;this.on_change(a,()=>{this._set_bar_color()});const{show_value:d}=this.model.properties;this.on_change([r,n,d],()=>this._update_title())}styles(){return[...super.styles(),h.default,c.default]}_update_title(){r.empty(this.title_el);const t=null==this.model.title||0==this.model.title.length&&!this.model.show_value;if(this.title_el.style.display=t?\"none\":\"\",!t&&(0!=this.model.title.length&&(this.title_el.textContent=this.model.title+\": \"),this.model.show_value)){const{value:t}=this._calc_to(),e=t.map(t=>this.model.pretty(t)).join(\" .. \");this.title_el.appendChild(r.span({class:d.bk_slider_value},e))}}_set_bar_color(){if(!this.model.disabled){this.slider_el.querySelector(\".noUi-connect\").style.backgroundColor=this.model.bar_color}}render(){super.render();const{start:t,end:e,value:i,step:s}=this._calc_to();let n;if(this.model.tooltips){const t={to:t=>this.model.pretty(t)};n=o.repeat(t,i.length)}else n=!1;if(null==this.slider_el){this.slider_el=r.div(),l.create(this.slider_el,{range:{min:t,max:e},start:i,step:s,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:n,orientation:this.model.orientation,direction:this.model.direction}),this.noUiSlider.on(\"slide\",(t,e,i)=>this._slide(i)),this.noUiSlider.on(\"change\",(t,e,i)=>this._change(i));const o=(t,e)=>{if(!n)return;this.slider_el.querySelectorAll(\".noUi-handle\")[t].querySelector(\".noUi-tooltip\").style.display=e?\"block\":\"\"};this.noUiSlider.on(\"start\",(t,e)=>o(e,!0)),this.noUiSlider.on(\"end\",(t,e)=>o(e,!1))}else this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s});this._set_bar_color(),this.model.disabled?this.slider_el.setAttribute(\"disabled\",\"true\"):this.slider_el.removeAttribute(\"disabled\"),this.title_el=r.div({class:d.bk_slider_title}),this._update_title(),this.group_el=r.div({class:_.bk_input_group},this.title_el,this.slider_el),this.el.appendChild(this.group_el)}_slide(t){this.model.value=this._calc_from(t)}_change(t){this.model.value=this._calc_from(t),this.model.value_throttled=this.model.value}}u.__name__=\"AbstractBaseSliderView\";class m extends u{_calc_to(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}}_calc_from([t]){return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(t):t}}i.AbstractSliderView=m,m.__name__=\"AbstractSliderView\";class p extends u{_calc_to(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}}_calc_from(t){return t}}i.AbstractRangeSliderView=p,p.__name__=\"AbstractRangeSliderView\";class b extends n.Control{constructor(t){super(t),this.connected=!1}static init_AbstractSlider(){this.define(({Any:t,Boolean:e,Number:i,String:s,Color:l,Or:r,Enum:o,Ref:n})=>({title:[s,\"\"],show_value:[e,!0],start:[t],end:[t],value:[t],value_throttled:[t],step:[i,1],format:[r(s,n(a.TickFormatter))],direction:[o(\"ltr\",\"rtl\"),\"ltr\"],tooltips:[e,!0],bar_color:[l,\"#e6e6e6\"]}))}_formatter(t,e){return\"\"+t}pretty(t){return this._formatter(t,this.format)}}i.AbstractSlider=b,b.__name__=\"AbstractSlider\",b.init_AbstractSlider()},\n",
       "      424: function _(t,e,r){\n",
       "      /*! nouislider - 14.6.0 - 6/27/2020 */\n",
       "      var n;n=function(){\"use strict\";var t=\"14.6.0\";function e(t){t.parentElement.removeChild(t)}function r(t){return null!=t}function n(t){t.preventDefault()}function i(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function o(t,e,r){r>0&&(u(t,e),setTimeout((function(){c(t,e)}),r))}function s(t){return Math.max(Math.min(t,100),0)}function a(t){return Array.isArray(t)?t:[t]}function l(t){var e=(t=String(t)).split(\".\");return e.length>1?e[1].length:0}function u(t,e){t.classList&&!/\\s/.test(e)?t.classList.add(e):t.className+=\" \"+e}function c(t,e){t.classList&&!/\\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function p(t){var e=void 0!==window.pageXOffset,r=\"CSS1Compat\"===(t.compatMode||\"\");return{x:e?window.pageXOffset:r?t.documentElement.scrollLeft:t.body.scrollLeft,y:e?window.pageYOffset:r?t.documentElement.scrollTop:t.body.scrollTop}}function f(t,e){return 100/(e-t)}function d(t,e,r){return 100*e/(t[r+1]-t[r])}function h(t,e){for(var r=1;t>=e[r];)r+=1;return r}function m(t,e,r){if(r>=t.slice(-1)[0])return 100;var n=h(r,t),i=t[n-1],o=t[n],s=e[n-1],a=e[n];return s+function(t,e){return d(t,t[0]<0?e+Math.abs(t[0]):e-t[0],0)}([i,o],r)/f(s,a)}function g(t,e,r,n){if(100===n)return n;var i=h(n,t),o=t[i-1],s=t[i];return r?n-o>(s-o)/2?s:o:e[i-1]?t[i-1]+function(t,e){return Math.round(t/e)*e}(n-t[i-1],e[i-1]):n}function v(t,e,r){var n;if(\"number\"==typeof e&&(e=[e]),!Array.isArray(e))throw new Error(\"noUiSlider (14.6.0): 'range' contains invalid value.\");if(!i(n=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!i(e[0]))throw new Error(\"noUiSlider (14.6.0): 'range' value isn't numeric.\");r.xPct.push(n),r.xVal.push(e[0]),n?r.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(r.xSteps[0]=e[1]),r.xHighestCompleteStep.push(0)}function b(t,e,r){if(e)if(r.xVal[t]!==r.xVal[t+1]){r.xSteps[t]=d([r.xVal[t],r.xVal[t+1]],e,0)/f(r.xPct[t],r.xPct[t+1]);var n=(r.xVal[t+1]-r.xVal[t])/r.xNumSteps[t],i=Math.ceil(Number(n.toFixed(3))-1),o=r.xVal[t]+r.xNumSteps[t]*i;r.xHighestCompleteStep[t]=o}else r.xSteps[t]=r.xHighestCompleteStep[t]=r.xVal[t]}function x(t,e,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i=[];for(n in t)t.hasOwnProperty(n)&&i.push([t[n],n]);for(i.length&&\"object\"==typeof i[0][0]?i.sort((function(t,e){return t[0][0]-e[0][0]})):i.sort((function(t,e){return t[0]-e[0]})),n=0;n<i.length;n++)v(i[n][1],i[n][0],this);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)b(n,this.xNumSteps[n],this)}x.prototype.getDistance=function(t){var e,r=[];for(e=0;e<this.xNumSteps.length-1;e++){var n=this.xNumSteps[e];if(n&&t/n%1!=0)throw new Error(\"noUiSlider (14.6.0): 'limit', 'margin' and 'padding' of \"+this.xPct[e]+\"% range must be divisible by step.\");r[e]=d(this.xVal,t,e)}return r},x.prototype.getAbsoluteDistance=function(t,e,r){var n,i=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[i+1];)i++;else t===this.xPct[this.xPct.length-1]&&(i=this.xPct.length-2);r||t!==this.xPct[i+1]||i++;var o=1,s=e[i],a=0,l=0,u=0,c=0;for(n=r?(t-this.xPct[i])/(this.xPct[i+1]-this.xPct[i]):(this.xPct[i+1]-t)/(this.xPct[i+1]-this.xPct[i]);s>0;)a=this.xPct[i+1+c]-this.xPct[i+c],e[i+c]*o+100-100*n>100?(l=a*n,o=(s-100*n)/e[i+c],n=1):(l=e[i+c]*a/100*o,o=0),r?(u-=l,this.xPct.length+c>=1&&c--):(u+=l,this.xPct.length-c>=1&&c++),s=e[i+c]*o;return t+u},x.prototype.toStepping=function(t){return t=m(this.xVal,this.xPct,t)},x.prototype.fromStepping=function(t){return function(t,e,r){if(r>=100)return t.slice(-1)[0];var n=h(r,e),i=t[n-1],o=t[n],s=e[n-1];return function(t,e){return e*(t[1]-t[0])/100+t[0]}([i,o],(r-s)*f(s,e[n]))}(this.xVal,this.xPct,t)},x.prototype.getStep=function(t){return t=g(this.xPct,this.xSteps,this.snap,t)},x.prototype.getDefaultStep=function(t,e,r){var n=h(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},x.prototype.getNearbySteps=function(t){var e=h(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e],step:this.xNumSteps[e],highestStep:this.xHighestCompleteStep[e]}}},x.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(l);return Math.max.apply(null,t)},x.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var S={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number},w={target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",touchArea:\"touch-area\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",connects:\"connects\",ltr:\"ltr\",rtl:\"rtl\",textDirectionLtr:\"txt-dir-ltr\",textDirectionRtl:\"txt-dir-rtl\",draggable:\"draggable\",drag:\"state-drag\",tap:\"state-tap\",active:\"active\",tooltip:\"tooltip\",pips:\"pips\",pipsHorizontal:\"pips-horizontal\",pipsVertical:\"pips-vertical\",marker:\"marker\",markerHorizontal:\"marker-horizontal\",markerVertical:\"marker-vertical\",markerNormal:\"marker-normal\",markerLarge:\"marker-large\",markerSub:\"marker-sub\",value:\"value\",valueHorizontal:\"value-horizontal\",valueVertical:\"value-vertical\",valueNormal:\"value-normal\",valueLarge:\"value-large\",valueSub:\"value-sub\"};function y(t){if(function(t){return\"object\"==typeof t&&\"function\"==typeof t.to&&\"function\"==typeof t.from}(t))return!0;throw new Error(\"noUiSlider (14.6.0): 'format' requires 'to' and 'from' methods.\")}function E(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'step' is not numeric.\");t.singleStep=e}function C(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'keyboardPageMultiplier' is not numeric.\");t.keyboardPageMultiplier=e}function P(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'keyboardDefaultStep' is not numeric.\");t.keyboardDefaultStep=e}function N(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (14.6.0): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (14.6.0): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (14.6.0): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new x(e,t.snap,t.singleStep)}function k(t,e){if(e=a(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (14.6.0): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function U(t,e){if(t.snap=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'snap' option must be a boolean.\")}function A(t,e){if(t.animate=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'animate' option must be a boolean.\")}function V(t,e){if(t.animationDuration=e,\"number\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'animationDuration' option must be a number.\")}function D(t,e){var r,n=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (14.6.0): 'connect' option doesn't match handle count.\");n=e}t.connect=n}function M(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (14.6.0): 'orientation' option is invalid.\")}}function O(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'margin' option must be numeric.\");0!==e&&(t.margin=t.spectrum.getDistance(e))}function L(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (14.6.0): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function z(t,e){var r;if(!i(e)&&!Array.isArray(e))throw new Error(\"noUiSlider (14.6.0): 'padding' option must be numeric or array of exactly 2 numbers.\");if(Array.isArray(e)&&2!==e.length&&!i(e[0])&&!i(e[1]))throw new Error(\"noUiSlider (14.6.0): 'padding' option must be numeric or array of exactly 2 numbers.\");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error(\"noUiSlider (14.6.0): 'padding' option must be a positive number(s).\");var n=e[0]+e[1],o=t.spectrum.xVal[0];if(n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-o)>1)throw new Error(\"noUiSlider (14.6.0): 'padding' option must not exceed 100% of the range.\")}}function H(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (14.6.0): 'direction' option was not recognized.\")}}function j(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'behaviour' must be a string containing options.\");var r=e.indexOf(\"tap\")>=0,n=e.indexOf(\"drag\")>=0,i=e.indexOf(\"fixed\")>=0,o=e.indexOf(\"snap\")>=0,s=e.indexOf(\"hover\")>=0,a=e.indexOf(\"unconstrained\")>=0;if(i){if(2!==t.handles)throw new Error(\"noUiSlider (14.6.0): 'fixed' behaviour must be used with 2 handles\");O(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error(\"noUiSlider (14.6.0): 'unconstrained' behaviour cannot be used with margin or limit\");t.events={tap:r||o,drag:n,fixed:i,snap:o,hover:s,unconstrained:a}}function F(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(!0)}else{if(t.tooltips=a(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (14.6.0): must pass a formatter for all handles.\");t.tooltips.forEach((function(t){if(\"boolean\"!=typeof t&&(\"object\"!=typeof t||\"function\"!=typeof t.to))throw new Error(\"noUiSlider (14.6.0): 'tooltips' must be passed a formatter or 'false'.\")}))}}function R(t,e){t.ariaFormat=e,y(e)}function T(t,e){t.format=e,y(e)}function B(t,e){if(t.keyboardSupport=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'keyboardSupport' option must be a boolean.\")}function q(t,e){t.documentElement=e}function X(t,e){if(\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (14.6.0): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function _(t,e){if(\"object\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var r in t.cssClasses={},e)e.hasOwnProperty(r)&&(t.cssClasses[r]=t.cssPrefix+e[r]);else t.cssClasses=e}function Y(t){var e={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:S,format:S},n={step:{r:!1,t:E},keyboardPageMultiplier:{r:!1,t:C},keyboardDefaultStep:{r:!1,t:P},start:{r:!0,t:k},connect:{r:!0,t:D},direction:{r:!0,t:H},snap:{r:!1,t:U},animate:{r:!1,t:A},animationDuration:{r:!1,t:V},range:{r:!0,t:N},orientation:{r:!1,t:M},margin:{r:!1,t:O},limit:{r:!1,t:L},padding:{r:!1,t:z},behaviour:{r:!0,t:j},ariaFormat:{r:!1,t:R},format:{r:!1,t:T},tooltips:{r:!1,t:F},keyboardSupport:{r:!0,t:B},documentElement:{r:!1,t:q},cssPrefix:{r:!0,t:X},cssClasses:{r:!0,t:_}},i={connect:!1,direction:\"ltr\",behaviour:\"tap\",orientation:\"horizontal\",keyboardSupport:!0,cssPrefix:\"noUi-\",cssClasses:w,keyboardPageMultiplier:5,keyboardDefaultStep:10};t.format&&!t.ariaFormat&&(t.ariaFormat=t.format),Object.keys(n).forEach((function(o){if(!r(t[o])&&void 0===i[o]){if(n[o].r)throw new Error(\"noUiSlider (14.6.0): '\"+o+\"' is required.\");return!0}n[o].t(e,r(t[o])?t[o]:i[o])})),e.pips=t.pips;var o=document.createElement(\"div\"),s=void 0!==o.style.msTransform,a=void 0!==o.style.transform;return e.transformRule=a?\"transform\":s?\"msTransform\":\"webkitTransform\",e.style=[[\"left\",\"top\"],[\"right\",\"bottom\"]][e.dir][e.ort],e}function I(t,r,i){var l,f,d,h,m,g,v,b,x=window.navigator.pointerEnabled?{start:\"pointerdown\",move:\"pointermove\",end:\"pointerup\"}:window.navigator.msPointerEnabled?{start:\"MSPointerDown\",move:\"MSPointerMove\",end:\"MSPointerUp\"}:{start:\"mousedown touchstart\",move:\"mousemove touchmove\",end:\"mouseup touchend\"},S=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\")&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),w=t,y=r.spectrum,E=[],C=[],P=[],N=0,k={},U=t.ownerDocument,A=r.documentElement||U.documentElement,V=U.body,D=\"rtl\"===U.dir||1===r.ort?0:100;function M(t,e){var r=U.createElement(\"div\");return e&&u(r,e),t.appendChild(r),r}function O(t,e){var n=M(t,r.cssClasses.origin),i=M(n,r.cssClasses.handle);return M(i,r.cssClasses.touchArea),i.setAttribute(\"data-handle\",e),r.keyboardSupport&&(i.setAttribute(\"tabindex\",\"0\"),i.addEventListener(\"keydown\",(function(t){return function(t,e){if(H()||j(e))return!1;var n=[\"Left\",\"Right\"],i=[\"Down\",\"Up\"],o=[\"PageDown\",\"PageUp\"],s=[\"Home\",\"End\"];r.dir&&!r.ort?n.reverse():r.ort&&!r.dir&&(i.reverse(),o.reverse());var a,l=t.key.replace(\"Arrow\",\"\"),u=l===o[0],c=l===o[1],p=l===i[0]||l===n[0]||u,f=l===i[1]||l===n[1]||c,d=l===s[0],h=l===s[1];if(!(p||f||d||h))return!0;if(t.preventDefault(),f||p){var m=r.keyboardPageMultiplier,g=p?0:1,v=ft(e)[g];if(null===v)return!1;!1===v&&(v=y.getDefaultStep(C[e],p,r.keyboardDefaultStep)),(c||u)&&(v*=m),v=Math.max(v,1e-7),v*=p?-1:1,a=E[e]+v}else a=h?r.spectrum.xVal[r.spectrum.xVal.length-1]:r.spectrum.xVal[0];return at(e,y.toStepping(a),!0,!0),et(\"slide\",e),et(\"update\",e),et(\"change\",e),et(\"set\",e),!1}(t,e)}))),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",r.ort?\"vertical\":\"horizontal\"),0===e?u(i,r.cssClasses.handleLower):e===r.handles-1&&u(i,r.cssClasses.handleUpper),n}function L(t,e){return!!e&&M(t,r.cssClasses.connect)}function z(t,e){return!!r.tooltips[e]&&M(t.firstChild,r.cssClasses.tooltip)}function H(){return w.hasAttribute(\"disabled\")}function j(t){return f[t].hasAttribute(\"disabled\")}function F(){m&&(tt(\"update.tooltips\"),m.forEach((function(t){t&&e(t)})),m=null)}function R(){F(),m=f.map(z),Z(\"update.tooltips\",(function(t,e,n){if(m[e]){var i=t[e];!0!==r.tooltips[e]&&(i=r.tooltips[e].to(n[e])),m[e].innerHTML=i}}))}function T(t,e,n){var i=U.createElement(\"div\"),o=[];o[0]=r.cssClasses.valueNormal,o[1]=r.cssClasses.valueLarge,o[2]=r.cssClasses.valueSub;var s=[];s[0]=r.cssClasses.markerNormal,s[1]=r.cssClasses.markerLarge,s[2]=r.cssClasses.markerSub;var a=[r.cssClasses.valueHorizontal,r.cssClasses.valueVertical],l=[r.cssClasses.markerHorizontal,r.cssClasses.markerVertical];function c(t,e){var n=e===r.cssClasses.value,i=n?o:s;return e+\" \"+(n?a:l)[r.ort]+\" \"+i[t]}return u(i,r.cssClasses.pips),u(i,0===r.ort?r.cssClasses.pipsHorizontal:r.cssClasses.pipsVertical),Object.keys(t).forEach((function(o){!function(t,o,s){if(-1!==(s=e?e(o,s):s)){var a=M(i,!1);a.className=c(s,r.cssClasses.marker),a.style[r.style]=t+\"%\",s>0&&((a=M(i,!1)).className=c(s,r.cssClasses.value),a.setAttribute(\"data-value\",o),a.style[r.style]=t+\"%\",a.innerHTML=n.to(o))}}(o,t[o][0],t[o][1])})),i}function B(){h&&(e(h),h=null)}function q(t){B();var e=t.mode,r=t.density||1,n=t.filter||!1,i=function(t,e,r){if(\"range\"===t||\"steps\"===t)return y.xVal;if(\"count\"===t){if(e<2)throw new Error(\"noUiSlider (14.6.0): 'values' (>= 2) required for mode 'count'.\");var n=e-1,i=100/n;for(e=[];n--;)e[n]=n*i;e.push(100),t=\"positions\"}return\"positions\"===t?e.map((function(t){return y.fromStepping(r?y.getStep(t):t)})):\"values\"===t?r?e.map((function(t){return y.fromStepping(y.getStep(y.toStepping(t)))})):e:void 0}(e,t.values||!1,t.stepped||!1),o=function(t,e,r){var n,i={},o=y.xVal[0],s=y.xVal[y.xVal.length-1],a=!1,l=!1,u=0;return n=r.slice().sort((function(t,e){return t-e})),(r=n.filter((function(t){return!this[t]&&(this[t]=!0)}),{}))[0]!==o&&(r.unshift(o),a=!0),r[r.length-1]!==s&&(r.push(s),l=!0),r.forEach((function(n,o){var s,c,p,f,d,h,m,g,v,b,x=n,S=r[o+1],w=\"steps\"===e;if(w&&(s=y.xNumSteps[o]),s||(s=S-x),!1!==x&&void 0!==S)for(s=Math.max(s,1e-7),c=x;c<=S;c=(c+s).toFixed(7)/1){for(g=(d=(f=y.toStepping(c))-u)/t,b=d/(v=Math.round(g)),p=1;p<=v;p+=1)i[(h=u+p*b).toFixed(5)]=[y.fromStepping(h),0];m=r.indexOf(c)>-1?1:w?2:0,!o&&a&&c!==S&&(m=0),c===S&&l||(i[f.toFixed(5)]=[c,m]),u=f}})),i}(r,e,i),s=t.format||{to:Math.round};return h=w.appendChild(T(o,n,s))}function X(){var t=l.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][r.ort];return 0===r.ort?t.width||l[e]:t.height||l[e]}function _(t,e,n,i){var o=function(o){return!!(o=function(t,e,r){var n,i,o=0===t.type.indexOf(\"touch\"),s=0===t.type.indexOf(\"mouse\"),a=0===t.type.indexOf(\"pointer\");if(0===t.type.indexOf(\"MSPointer\")&&(a=!0),o){var l=function(t){return t.target===r||r.contains(t.target)||t.target.shadowRoot&&t.target.shadowRoot.contains(r)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(u.length>1)return!1;n=u[0].pageX,i=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;n=c.pageX,i=c.pageY}}return e=e||p(U),(s||a)&&(n=t.clientX+e.x,i=t.clientY+e.y),t.pageOffset=e,t.points=[n,i],t.cursor=s||a,t}(o,i.pageOffset,i.target||e))&&!(H()&&!i.doNotReject)&&(s=w,a=r.cssClasses.tap,!((s.classList?s.classList.contains(a):new RegExp(\"\\\\b\"+a+\"\\\\b\").test(s.className))&&!i.doNotReject)&&!(t===x.start&&void 0!==o.buttons&&o.buttons>1)&&(!i.hover||!o.buttons)&&(S||o.preventDefault(),o.calcPoint=o.points[r.ort],void n(o,i)));var s,a},s=[];return t.split(\" \").forEach((function(t){e.addEventListener(t,o,!!S&&{passive:!0}),s.push([t,o])})),s}function I(t){var e,n,i,o,a,u,c=100*(t-(e=l,n=r.ort,i=e.getBoundingClientRect(),o=e.ownerDocument,a=o.documentElement,u=p(o),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(u.x=0),n?i.top+u.y-a.clientTop:i.left+u.x-a.clientLeft))/X();return c=s(c),r.dir?100-c:c}function W(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&G(t,e)}function $(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return G(t,e);var n=(r.dir?-1:1)*(t.calcPoint-e.startCalcPoint);it(n>0,100*n/e.baseSize,e.locations,e.handleNumbers)}function G(t,e){e.handle&&(c(e.handle,r.cssClasses.active),N-=1),e.listeners.forEach((function(t){A.removeEventListener(t[0],t[1])})),0===N&&(c(w,r.cssClasses.drag),st(),t.cursor&&(V.style.cursor=\"\",V.removeEventListener(\"selectstart\",n))),e.handleNumbers.forEach((function(t){et(\"change\",t),et(\"set\",t),et(\"end\",t)}))}function J(t,e){if(e.handleNumbers.some(j))return!1;var i;1===e.handleNumbers.length&&(i=f[e.handleNumbers[0]].children[0],N+=1,u(i,r.cssClasses.active)),t.stopPropagation();var o=[],s=_(x.move,A,$,{target:t.target,handle:i,listeners:o,startCalcPoint:t.calcPoint,baseSize:X(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:C.slice()}),a=_(x.end,A,G,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers}),l=_(\"mouseout\",A,W,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers});o.push.apply(o,s.concat(a,l)),t.cursor&&(V.style.cursor=getComputedStyle(t.target).cursor,f.length>1&&u(w,r.cssClasses.drag),V.addEventListener(\"selectstart\",n,!1)),e.handleNumbers.forEach((function(t){et(\"start\",t)}))}function K(t){if(!t.buttons&&!t.touches)return!1;t.stopPropagation();var e=I(t.calcPoint),n=function(t){var e=100,r=!1;return f.forEach((function(n,i){if(!j(i)){var o=C[i],s=Math.abs(o-t);(s<e||s<=e&&t>o||100===s&&100===e)&&(r=i,e=s)}})),r}(e);if(!1===n)return!1;r.events.snap||o(w,r.cssClasses.tap,r.animationDuration),at(n,e,!0,!0),st(),et(\"slide\",n,!0),et(\"update\",n,!0),et(\"change\",n,!0),et(\"set\",n,!0),r.events.snap&&J(t,{handleNumbers:[n]})}function Q(t){var e=I(t.calcPoint),r=y.getStep(e),n=y.fromStepping(r);Object.keys(k).forEach((function(t){\"hover\"===t.split(\".\")[0]&&k[t].forEach((function(t){t.call(g,n)}))}))}function Z(t,e){k[t]=k[t]||[],k[t].push(e),\"update\"===t.split(\".\")[0]&&f.forEach((function(t,e){et(\"update\",e)}))}function tt(t){var e=t&&t.split(\".\")[0],r=e&&t.substring(e.length);Object.keys(k).forEach((function(t){var n=t.split(\".\")[0],i=t.substring(n.length);e&&e!==n||r&&r!==i||delete k[t]}))}function et(t,e,n){Object.keys(k).forEach((function(i){var o=i.split(\".\")[0];t===o&&k[i].forEach((function(t){t.call(g,E.map(r.format.to),e,E.slice(),n||!1,C.slice(),g)}))}))}function rt(t,e,n,i,o,a){var l;return f.length>1&&!r.events.unconstrained&&(i&&e>0&&(l=y.getAbsoluteDistance(t[e-1],r.margin,0),n=Math.max(n,l)),o&&e<f.length-1&&(l=y.getAbsoluteDistance(t[e+1],r.margin,1),n=Math.min(n,l))),f.length>1&&r.limit&&(i&&e>0&&(l=y.getAbsoluteDistance(t[e-1],r.limit,0),n=Math.min(n,l)),o&&e<f.length-1&&(l=y.getAbsoluteDistance(t[e+1],r.limit,1),n=Math.max(n,l))),r.padding&&(0===e&&(l=y.getAbsoluteDistance(0,r.padding[0],0),n=Math.max(n,l)),e===f.length-1&&(l=y.getAbsoluteDistance(100,r.padding[1],1),n=Math.min(n,l))),!((n=s(n=y.getStep(n)))===t[e]&&!a)&&n}function nt(t,e){var n=r.ort;return(n?e:t)+\", \"+(n?t:e)}function it(t,e,r,n){var i=r.slice(),o=[!t,t],s=[t,!t];n=n.slice(),t&&n.reverse(),n.length>1?n.forEach((function(t,r){var n=rt(i,t,i[t]+e,o[r],s[r],!1);!1===n?e=0:(e=n-i[t],i[t]=n)})):o=s=[!0];var a=!1;n.forEach((function(t,n){a=at(t,r[t]+e,o[n],s[n])||a})),a&&n.forEach((function(t){et(\"update\",t),et(\"slide\",t)}))}function ot(t,e){return r.dir?100-t-e:t}function st(){P.forEach((function(t){var e=C[t]>50?-1:1,r=3+(f.length+e*t);f[t].style.zIndex=r}))}function at(t,e,n,i){return!1!==(e=rt(C,t,e,n,i,!1))&&(function(t,e){C[t]=e,E[t]=y.fromStepping(e);var n=\"translate(\"+nt(10*(ot(e,0)-D)+\"%\",\"0\")+\")\";f[t].style[r.transformRule]=n,lt(t),lt(t+1)}(t,e),!0)}function lt(t){if(d[t]){var e=0,n=100;0!==t&&(e=C[t-1]),t!==d.length-1&&(n=C[t]);var i=n-e,o=\"translate(\"+nt(ot(e,i)+\"%\",\"0\")+\")\",s=\"scale(\"+nt(i/100,\"1\")+\")\";d[t].style[r.transformRule]=o+\" \"+s}}function ut(t,e){return null===t||!1===t||void 0===t?C[e]:(\"number\"==typeof t&&(t=String(t)),t=r.format.from(t),!1===(t=y.toStepping(t))||isNaN(t)?C[e]:t)}function ct(t,e){var n=a(t),i=void 0===C[0];e=void 0===e||!!e,r.animate&&!i&&o(w,r.cssClasses.tap,r.animationDuration),P.forEach((function(t){at(t,ut(n[t],t),!0,!1)}));for(var s=1===P.length?0:1;s<P.length;++s)P.forEach((function(t){at(t,C[t],!0,!0)}));st(),P.forEach((function(t){et(\"update\",t),null!==n[t]&&e&&et(\"set\",t)}))}function pt(){var t=E.map(r.format.to);return 1===t.length?t[0]:t}function ft(t){var e=C[t],n=y.getNearbySteps(e),i=E[t],o=n.thisStep.step,s=null;if(r.snap)return[i-n.stepBefore.startValue||null,n.stepAfter.startValue-i||null];!1!==o&&i+o>n.stepAfter.startValue&&(o=n.stepAfter.startValue-i),s=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===e?o=null:0===e&&(s=null);var a=y.countStepDecimals();return null!==o&&!1!==o&&(o=Number(o.toFixed(a))),null!==s&&!1!==s&&(s=Number(s.toFixed(a))),[s,o]}return u(v=w,r.cssClasses.target),0===r.dir?u(v,r.cssClasses.ltr):u(v,r.cssClasses.rtl),0===r.ort?u(v,r.cssClasses.horizontal):u(v,r.cssClasses.vertical),u(v,\"rtl\"===getComputedStyle(v).direction?r.cssClasses.textDirectionRtl:r.cssClasses.textDirectionLtr),l=M(v,r.cssClasses.base),function(t,e){var n=M(e,r.cssClasses.connects);f=[],(d=[]).push(L(n,t[0]));for(var i=0;i<r.handles;i++)f.push(O(e,i)),P[i]=i,d.push(L(n,t[i+1]))}(r.connect,l),(b=r.events).fixed||f.forEach((function(t,e){_(x.start,t.children[0],J,{handleNumbers:[e]})})),b.tap&&_(x.start,l,K,{}),b.hover&&_(x.move,l,Q,{hover:!0}),b.drag&&d.forEach((function(t,e){if(!1!==t&&0!==e&&e!==d.length-1){var n=f[e-1],i=f[e],o=[t];u(t,r.cssClasses.draggable),b.fixed&&(o.push(n.children[0]),o.push(i.children[0])),o.forEach((function(t){_(x.start,t,J,{handles:[n,i],handleNumbers:[e-1,e]})}))}})),ct(r.start),r.pips&&q(r.pips),r.tooltips&&R(),Z(\"update\",(function(t,e,n,i,o){P.forEach((function(t){var e=f[t],i=rt(C,t,0,!0,!0,!0),s=rt(C,t,100,!0,!0,!0),a=o[t],l=r.ariaFormat.to(n[t]);i=y.fromStepping(i).toFixed(1),s=y.fromStepping(s).toFixed(1),a=y.fromStepping(a).toFixed(1),e.children[0].setAttribute(\"aria-valuemin\",i),e.children[0].setAttribute(\"aria-valuemax\",s),e.children[0].setAttribute(\"aria-valuenow\",a),e.children[0].setAttribute(\"aria-valuetext\",l)}))})),g={destroy:function(){for(var t in r.cssClasses)r.cssClasses.hasOwnProperty(t)&&c(w,r.cssClasses[t]);for(;w.firstChild;)w.removeChild(w.firstChild);delete w.noUiSlider},steps:function(){return P.map(ft)},on:Z,off:tt,get:pt,set:ct,setHandle:function(t,e,r){if(!((t=Number(t))>=0&&t<P.length))throw new Error(\"noUiSlider (14.6.0): invalid handle number, got: \"+t);at(t,ut(e,t),!0,!0),et(\"update\",t),r&&et(\"set\",t)},reset:function(t){ct(r.start,t)},__moveHandles:function(t,e,r){it(t,e,C,r)},options:i,updateOptions:function(t,e){var n=pt(),o=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\",\"pips\",\"tooltips\"];o.forEach((function(e){void 0!==t[e]&&(i[e]=t[e])}));var s=Y(i);o.forEach((function(e){void 0!==t[e]&&(r[e]=s[e])})),y=s.spectrum,r.margin=s.margin,r.limit=s.limit,r.padding=s.padding,r.pips?q(r.pips):B(),r.tooltips?R():F(),C=[],ct(t.start||n,e)},target:w,removePips:B,removeTooltips:F,getTooltips:function(){return m},getOrigins:function(){return f},pips:q}}return{__spectrum:x,version:t,cssClasses:w,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (14.6.0): create requires a single element, got: \"+t);if(t.noUiSlider)throw new Error(\"noUiSlider (14.6.0): Slider was already initialized.\");var r=I(t,Y(e),e);return t.noUiSlider=r,r}}},\"function\"==typeof define&&define.amd?define([],n):\"object\"==typeof r?e.exports=n():window.noUiSlider=n()},\n",
       "      425: function _(e,l,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.bk_slider_value=\"bk-slider-value\",i.bk_slider_title=\"bk-slider-title\"},\n",
       "      426: function _(n,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default=\"\\n.bk-root {\\n  /*! nouislider - 14.6.0 - 6/27/2020 */\\n  /* Functional styling;\\n * These styles are required for noUiSlider to function.\\n * You don't need to change these rules to apply your design.\\n */\\n  /* Wrapper for all connect elements.\\n */\\n  /* Offset direction\\n */\\n  /* Give origins 0 height/width so they don't interfere with clicking the\\n * connect elements.\\n */\\n  /* Slider size and handle placement;\\n */\\n  /* Styling;\\n * Giving the connect element a border radius causes issues with using transform: scale\\n */\\n  /* Handles and cursors;\\n */\\n  /* Handle stripes;\\n */\\n  /* Disabled state;\\n */\\n  /* Base;\\n *\\n */\\n  /* Values;\\n *\\n */\\n  /* Markings;\\n *\\n */\\n  /* Horizontal layout;\\n *\\n */\\n  /* Vertical layout;\\n *\\n */\\n}\\n.bk-root .noUi-target,\\n.bk-root .noUi-target * {\\n  -webkit-touch-callout: none;\\n  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n  -webkit-user-select: none;\\n  -ms-touch-action: none;\\n  touch-action: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  user-select: none;\\n  -moz-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.bk-root .noUi-target {\\n  position: relative;\\n}\\n.bk-root .noUi-base,\\n.bk-root .noUi-connects {\\n  width: 100%;\\n  height: 100%;\\n  position: relative;\\n  z-index: 1;\\n}\\n.bk-root .noUi-connects {\\n  overflow: hidden;\\n  z-index: 0;\\n}\\n.bk-root .noUi-connect,\\n.bk-root .noUi-origin {\\n  will-change: transform;\\n  position: absolute;\\n  z-index: 1;\\n  top: 0;\\n  right: 0;\\n  -ms-transform-origin: 0 0;\\n  -webkit-transform-origin: 0 0;\\n  -webkit-transform-style: preserve-3d;\\n  transform-origin: 0 0;\\n  transform-style: flat;\\n}\\n.bk-root .noUi-connect {\\n  height: 100%;\\n  width: 100%;\\n}\\n.bk-root .noUi-origin {\\n  height: 10%;\\n  width: 10%;\\n}\\n.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {\\n  left: 0;\\n  right: auto;\\n}\\n.bk-root .noUi-vertical .noUi-origin {\\n  width: 0;\\n}\\n.bk-root .noUi-horizontal .noUi-origin {\\n  height: 0;\\n}\\n.bk-root .noUi-handle {\\n  -webkit-backface-visibility: hidden;\\n  backface-visibility: hidden;\\n  position: absolute;\\n}\\n.bk-root .noUi-touch-area {\\n  height: 100%;\\n  width: 100%;\\n}\\n.bk-root .noUi-state-tap .noUi-connect,\\n.bk-root .noUi-state-tap .noUi-origin {\\n  -webkit-transition: transform 0.3s;\\n  transition: transform 0.3s;\\n}\\n.bk-root .noUi-state-drag * {\\n  cursor: inherit !important;\\n}\\n.bk-root .noUi-horizontal {\\n  height: 18px;\\n}\\n.bk-root .noUi-horizontal .noUi-handle {\\n  width: 34px;\\n  height: 28px;\\n  right: -17px;\\n  top: -6px;\\n}\\n.bk-root .noUi-vertical {\\n  width: 18px;\\n}\\n.bk-root .noUi-vertical .noUi-handle {\\n  width: 28px;\\n  height: 34px;\\n  right: -6px;\\n  top: -17px;\\n}\\n.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {\\n  left: -17px;\\n  right: auto;\\n}\\n.bk-root .noUi-target {\\n  background: #FAFAFA;\\n  border-radius: 4px;\\n  border: 1px solid #D3D3D3;\\n  box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;\\n}\\n.bk-root .noUi-connects {\\n  border-radius: 3px;\\n}\\n.bk-root .noUi-connect {\\n  background: #3FB8AF;\\n}\\n.bk-root .noUi-draggable {\\n  cursor: ew-resize;\\n}\\n.bk-root .noUi-vertical .noUi-draggable {\\n  cursor: ns-resize;\\n}\\n.bk-root .noUi-handle {\\n  border: 1px solid #D9D9D9;\\n  border-radius: 3px;\\n  background: #FFF;\\n  cursor: default;\\n  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;\\n}\\n.bk-root .noUi-active {\\n  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;\\n}\\n.bk-root .noUi-handle:before,\\n.bk-root .noUi-handle:after {\\n  content: \\\"\\\";\\n  display: block;\\n  position: absolute;\\n  height: 14px;\\n  width: 1px;\\n  background: #E8E7E6;\\n  left: 14px;\\n  top: 6px;\\n}\\n.bk-root .noUi-handle:after {\\n  left: 17px;\\n}\\n.bk-root .noUi-vertical .noUi-handle:before,\\n.bk-root .noUi-vertical .noUi-handle:after {\\n  width: 14px;\\n  height: 1px;\\n  left: 6px;\\n  top: 14px;\\n}\\n.bk-root .noUi-vertical .noUi-handle:after {\\n  top: 17px;\\n}\\n.bk-root [disabled] .noUi-connect {\\n  background: #B8B8B8;\\n}\\n.bk-root [disabled].noUi-target,\\n.bk-root [disabled].noUi-handle,\\n.bk-root [disabled] .noUi-handle {\\n  cursor: not-allowed;\\n}\\n.bk-root .noUi-pips,\\n.bk-root .noUi-pips * {\\n  -moz-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.bk-root .noUi-pips {\\n  position: absolute;\\n  color: #999;\\n}\\n.bk-root .noUi-value {\\n  position: absolute;\\n  white-space: nowrap;\\n  text-align: center;\\n}\\n.bk-root .noUi-value-sub {\\n  color: #ccc;\\n  font-size: 10px;\\n}\\n.bk-root .noUi-marker {\\n  position: absolute;\\n  background: #CCC;\\n}\\n.bk-root .noUi-marker-sub {\\n  background: #AAA;\\n}\\n.bk-root .noUi-marker-large {\\n  background: #AAA;\\n}\\n.bk-root .noUi-pips-horizontal {\\n  padding: 10px 0;\\n  height: 80px;\\n  top: 100%;\\n  left: 0;\\n  width: 100%;\\n}\\n.bk-root .noUi-value-horizontal {\\n  -webkit-transform: translate(-50%, 50%);\\n  transform: translate(-50%, 50%);\\n}\\n.bk-root .noUi-rtl .noUi-value-horizontal {\\n  -webkit-transform: translate(50%, 50%);\\n  transform: translate(50%, 50%);\\n}\\n.bk-root .noUi-marker-horizontal.noUi-marker {\\n  margin-left: -1px;\\n  width: 2px;\\n  height: 5px;\\n}\\n.bk-root .noUi-marker-horizontal.noUi-marker-sub {\\n  height: 10px;\\n}\\n.bk-root .noUi-marker-horizontal.noUi-marker-large {\\n  height: 15px;\\n}\\n.bk-root .noUi-pips-vertical {\\n  padding: 0 10px;\\n  height: 100%;\\n  top: 0;\\n  left: 100%;\\n}\\n.bk-root .noUi-value-vertical {\\n  -webkit-transform: translate(0, -50%);\\n  transform: translate(0, -50%);\\n  padding-left: 25px;\\n}\\n.bk-root .noUi-rtl .noUi-value-vertical {\\n  -webkit-transform: translate(0, 50%);\\n  transform: translate(0, 50%);\\n}\\n.bk-root .noUi-marker-vertical.noUi-marker {\\n  width: 5px;\\n  height: 2px;\\n  margin-top: -1px;\\n}\\n.bk-root .noUi-marker-vertical.noUi-marker-sub {\\n  width: 10px;\\n}\\n.bk-root .noUi-marker-vertical.noUi-marker-large {\\n  width: 15px;\\n}\\n.bk-root .noUi-tooltip {\\n  display: block;\\n  position: absolute;\\n  border: 1px solid #D9D9D9;\\n  border-radius: 3px;\\n  background: #fff;\\n  color: #000;\\n  padding: 5px;\\n  text-align: center;\\n  white-space: nowrap;\\n}\\n.bk-root .noUi-horizontal .noUi-tooltip {\\n  -webkit-transform: translate(-50%, 0);\\n  transform: translate(-50%, 0);\\n  left: 50%;\\n  bottom: 120%;\\n}\\n.bk-root .noUi-vertical .noUi-tooltip {\\n  -webkit-transform: translate(0, -50%);\\n  transform: translate(0, -50%);\\n  top: 50%;\\n  right: 120%;\\n}\\n.bk-root .noUi-horizontal .noUi-origin > .noUi-tooltip {\\n  -webkit-transform: translate(50%, 0);\\n  transform: translate(50%, 0);\\n  left: auto;\\n  bottom: 10px;\\n}\\n.bk-root .noUi-vertical .noUi-origin > .noUi-tooltip {\\n  -webkit-transform: translate(0, -18px);\\n  transform: translate(0, -18px);\\n  top: auto;\\n  right: 28px;\\n}\\n.bk-root .noUi-handle {\\n  cursor: grab;\\n  cursor: -webkit-grab;\\n}\\n.bk-root .noUi-handle.noUi-active {\\n  cursor: grabbing;\\n  cursor: -webkit-grabbing;\\n}\\n.bk-root .noUi-handle:after,\\n.bk-root .noUi-handle:before {\\n  display: none;\\n}\\n.bk-root .noUi-tooltip {\\n  display: none;\\n  white-space: nowrap;\\n}\\n.bk-root .noUi-handle:hover .noUi-tooltip {\\n  display: block;\\n}\\n.bk-root .noUi-horizontal {\\n  width: 100%;\\n  height: 10px;\\n}\\n.bk-root .noUi-vertical {\\n  width: 10px;\\n  height: 100%;\\n}\\n.bk-root .noUi-horizontal .noUi-handle {\\n  width: 14px;\\n  height: 18px;\\n  right: -7px;\\n  top: -5px;\\n}\\n.bk-root .noUi-vertical .noUi-handle {\\n  width: 18px;\\n  height: 14px;\\n  right: -5px;\\n  top: -7px;\\n}\\n.bk-root .noUi-target.noUi-horizontal {\\n  margin: 5px 0px;\\n}\\n.bk-root .noUi-target.noUi-vertical {\\n  margin: 0px 5px;\\n}\\n\"},\n",
       "      427: function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default=\"\\n.bk-root .bk-slider-title {\\n  white-space: nowrap;\\n}\\n.bk-root .bk-slider-value {\\n  font-weight: 600;\\n}\\n\"},\n",
       "      428: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1).__importDefault(e(186)),a=e(423);class d extends a.AbstractSliderView{}i.DateSliderView=d,d.__name__=\"DateSliderView\";class s extends a.AbstractSlider{constructor(e){super(e),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_DateSlider(){this.prototype.default_view=d,this.override({format:\"%d %b %Y\"})}_formatter(e,t){return r.default(e,t)}}i.DateSlider=s,s.__name__=\"DateSlider\",s.init_DateSlider()},\n",
       "      429: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1),_=e(430),n=r.__importStar(e(18));class s extends _.MarkupView{render(){super.render(),this.model.render_as_text?this.markup_el.textContent=this.model.text:this.markup_el.innerHTML=this.model.text}}i.DivView=s,s.__name__=\"DivView\";class a extends _.Markup{constructor(e){super(e)}static init_Div(){this.prototype.default_view=s,this.define({render_as_text:[n.Boolean,!1]})}}i.Div=a,a.__name__=\"Div\",a.init_Div()},\n",
       "      430: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),a=e(217),n=e(72),l=i.__importStar(e(18)),r=e(472),_=e(431),c=i.__importDefault(e(432));class u extends r.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>{this.layout.invalidate_cache(),this.render(),this.root.compute_layout()})}styles(){return[...super.styles(),c.default]}_update_layout(){this.layout=new a.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render();const e=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.markup_el=n.div({class:_.bk_clearfix,style:e}),this.el.appendChild(this.markup_el)}}s.MarkupView=u,u.__name__=\"MarkupView\";class o extends r.Widget{constructor(e){super(e)}static init_Markup(){this.define({text:[l.String,\"\"],style:[l.Any,{}]})}}s.Markup=o,o.__name__=\"Markup\",o.init_Markup()},\n",
       "      431: function _(e,c,f){Object.defineProperty(f,\"__esModule\",{value:!0}),f.bk_clearfix=\"bk-clearfix\"},\n",
       "      432: function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root .bk-clearfix:before,\\n.bk-root .bk-clearfix:after {\\n  content: \"\";\\n  display: table;\\n}\\n.bk-root .bk-clearfix:after {\\n  clear: both;\\n}\\n'},\n",
       "      433: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(404),o=e(313),_=e(72),d=n.__importStar(e(18)),l=e(8),r=e(173),u=e(281),c=e(282),h=n.__importDefault(e(284));class p extends s.AbstractButtonView{constructor(){super(...arguments),this._open=!1}styles(){return[...super.styles(),h.default]}render(){super.render();const e=_.div({class:[c.bk_caret,r.bk_down]});if(this.model.is_split){const t=this._render_button(e);t.classList.add(u.bk_dropdown_toggle),t.addEventListener(\"click\",()=>this._toggle_menu()),this.group_el.appendChild(t)}else this.button_el.appendChild(e);const t=this.model.menu.map((e,t)=>{if(null==e)return _.div({class:c.bk_divider});{const i=l.isString(e)?e:e[0],n=_.div({},i);return n.addEventListener(\"click\",()=>this._item_click(t)),n}});this.menu=_.div({class:[c.bk_menu,r.bk_below]},t),this.el.appendChild(this.menu),_.undisplay(this.menu)}_show_menu(){if(!this._open){this._open=!0,_.display(this.menu);const e=t=>{const{target:i}=t;i instanceof HTMLElement&&!this.el.contains(i)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,_.undisplay(this.menu))}_toggle_menu(){this._open?this._hide_menu():this._show_menu()}click(){this.model.is_split?(this._hide_menu(),this.model.trigger_event(new o.ButtonClick),super.click()):this._toggle_menu()}_item_click(e){this._hide_menu();const t=this.model.menu[e];if(null!=t){const i=l.isString(t)?t:t[1];l.isString(i)?this.model.trigger_event(new o.MenuItemClick(i)):i.execute(this.model,{index:e})}}}i.DropdownView=p,p.__name__=\"DropdownView\";class m extends s.AbstractButton{constructor(e){super(e)}static init_Dropdown(){this.prototype.default_view=p,this.define({split:[d.Boolean,!1],menu:[d.Array,[]]}),this.override({label:\"Dropdown\"})}get is_split(){return this.split}}i.Dropdown=m,m.__name__=\"Dropdown\",m.init_Dropdown()},\n",
       "      434: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=e(1).__importStar(e(18)),s=e(472);class n extends s.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render()),this.connect(this.model.properties.width.change,()=>this.render())}render(){null==this.dialogEl&&(this.dialogEl=document.createElement(\"input\"),this.dialogEl.type=\"file\",this.dialogEl.multiple=this.model.multiple,this.dialogEl.onchange=()=>{const{files:e}=this.dialogEl;null!=e&&this.load_files(e)},this.el.appendChild(this.dialogEl)),null!=this.model.accept&&\"\"!=this.model.accept&&(this.dialogEl.accept=this.model.accept),this.dialogEl.style.width=\"{this.model.width}px\",this.dialogEl.disabled=this.model.disabled}async load_files(e){const t=[],i=[],l=[];let s;for(s=0;s<e.length;s++){i.push(e[s].name);const n=await this.readfile(e[s]),[,o,,a]=n.split(/[:;,]/,4);t.push(a),l.push(o)}this.model.multiple?(this.model.filename=i,this.model.mime_type=l,this.model.value=t):(this.model.filename=i[0],this.model.mime_type=l[0],this.model.value=t[0])}readfile(e){return new Promise((t,i)=>{const l=new FileReader;l.onload=()=>{var s;const{result:n}=l;null!=n?t(n):i(null!==(s=l.error)&&void 0!==s?s:new Error(`unable to read '${e.name}'`))},l.readAsDataURL(e)})}}i.FileInputView=n,n.__name__=\"FileInputView\";class o extends s.Widget{constructor(e){super(e)}static init_FileInput(){this.prototype.default_view=n,this.define({value:[l.Any,\"\"],mime_type:[l.Any,\"\"],filename:[l.Any,\"\"],accept:[l.String,\"\"],multiple:[l.Boolean,!1]})}}i.FileInput=o,o.__name__=\"FileInput\",o.init_FileInput()},\n",
       "      435: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(72),l=e(8),o=i.__importStar(e(18)),c=e(410),r=e(412);class h extends c.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,()=>this.render_selection()),this.connect(this.model.properties.options.change,()=>this.render()),this.connect(this.model.properties.name.change,()=>this.render()),this.connect(this.model.properties.title.change,()=>this.render()),this.connect(this.model.properties.size.change,()=>this.render()),this.connect(this.model.properties.disabled.change,()=>this.render())}render(){super.render();const e=this.model.options.map(e=>{let t,s;return l.isString(e)?t=s=e:[t,s]=e,n.option({value:t},s)});this.select_el=n.select({multiple:!0,class:r.bk_input,name:this.model.name,disabled:this.model.disabled},e),this.select_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.select_el),this.render_selection()}render_selection(){const e=new Set(this.model.value);for(const t of this.el.querySelectorAll(\"option\"))t.selected=e.has(t.value);this.select_el.size=this.model.size}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.select_el.focus()}}s.MultiSelectView=h,h.__name__=\"MultiSelectView\";class d extends c.InputWidget{constructor(e){super(e)}static init_MultiSelect(){this.prototype.default_view=h,this.define({value:[o.Array,[]],options:[o.Array,[]],size:[o.Number,4]})}}s.MultiSelect=d,d.__name__=\"MultiSelect\",d.init_MultiSelect()},\n",
       "      436: function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const t=a(430),p=a(72);class s extends t.MarkupView{render(){super.render();const a=p.p({style:{margin:0}},this.model.text);this.markup_el.appendChild(a)}}r.ParagraphView=s,s.__name__=\"ParagraphView\";class i extends t.Markup{constructor(a){super(a)}static init_Paragraph(){this.prototype.default_view=s}}r.Paragraph=i,i.__name__=\"Paragraph\",i.init_Paragraph()},\n",
       "      437: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(409);class r extends n.TextInputView{render(){super.render(),this.input_el.type=\"password\"}}s.PasswordInputView=r,r.__name__=\"PasswordInputView\";class p extends n.TextInput{constructor(e){super(e)}static init_PasswordInput(){this.prototype.default_view=r}}s.PasswordInput=p,p.__name__=\"PasswordInput\",p.init_PasswordInput()},\n",
       "      438: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=e(1),s=l.__importDefault(e(439)),o=e(72),n=e(8),h=e(217),a=l.__importStar(e(18)),c=e(412),u=l.__importDefault(e(440)),d=e(410);class _ extends d.InputWidgetView{constructor(){super(...arguments),this._last_height=null}connect_signals(){super.connect_signals(),this.connect(this.model.properties.disabled.change,()=>this.set_disabled());const{value:e,max_items:t,option_limit:i,delete_button:l,placeholder:s,options:o,name:n,title:h}=this.model.properties;this.on_change([e,t,i,l,s,o,n,h],()=>this.render())}styles(){return[...super.styles(),u.default]}_update_layout(){this.layout=new h.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render(),this.select_el=o.select({multiple:!0,class:c.bk_input,name:this.model.name,disabled:this.model.disabled}),this.group_el.appendChild(this.select_el);const e=new Set(this.model.value),t=this.model.options.map(t=>{let i,l;return n.isString(t)?i=l=t:[i,l]=t,{value:i,label:l,selected:e.has(i)}}),i=this.model.solid?\"solid\":\"light\",l=\"choices__item \"+i,h=\"choices__button \"+i,a={choices:t,duplicateItemsAllowed:!1,removeItemButton:this.model.delete_button,classNames:{item:l,button:h}};null!=this.model.placeholder&&(a.placeholderValue=this.model.placeholder),null!=this.model.max_items&&(a.maxItemCount=this.model.max_items),null!=this.model.option_limit&&(a.renderChoiceLimit=this.model.option_limit),this.choice_el=new s.default(this.select_el,a);const u=()=>this.choice_el.containerOuter.element.getBoundingClientRect().height;null!=this._last_height&&this._last_height!=u()&&this.root.invalidate_layout(),this._last_height=u(),this.select_el.addEventListener(\"change\",()=>this.change_input())}set_disabled(){this.model.disabled?this.choice_el.disable():this.choice_el.enable()}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.select_el.focus()}}i.MultiChoiceView=_,_.__name__=\"MultiChoiceView\";class r extends d.InputWidget{constructor(e){super(e)}static init_MultiChoice(){this.prototype.default_view=_,this.define({value:[a.Array,[]],options:[a.Array,[]],max_items:[a.Number,null],delete_button:[a.Boolean,!0],placeholder:[a.String,null],option_limit:[a.Number,null],solid:[a.Boolean,!0]})}}i.MultiChoice=r,r.__name__=\"MultiChoice\",r.init_MultiChoice()},\n",
       "      439: function _(e,t,i){\n",
       "      /*! choices.js v9.0.1 | © 2019 Josh Johnson | https://github.com/jshjohnson/Choices#readme */\n",
       "      var n,s;n=window,s=function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"/public/assets/scripts/\",i(i.s=4)}([function(e,t,i){\"use strict\";var n=function(e){return function(e){return!!e&&\"object\"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return\"[object RegExp]\"===t||\"[object Date]\"===t||function(e){return e.$$typeof===s}(e)}(e)},s=\"function\"==typeof Symbol&&Symbol.for?Symbol.for(\"react.element\"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?l((i=e,Array.isArray(i)?[]:{}),e,t):e;var i}function o(e,t,i){return e.concat(t).map((function(e){return r(e,i)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function c(e,t,i){var n={};return i.isMergeableObject(e)&&a(e).forEach((function(t){n[t]=r(e[t],i)})),a(t).forEach((function(s){(function(e,t){try{return t in e&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}catch(e){return!1}})(e,s)||(i.isMergeableObject(t[s])&&e[s]?n[s]=function(e,t){if(!t.customMerge)return l;var i=t.customMerge(e);return\"function\"==typeof i?i:l}(s,i)(e[s],t[s],i):n[s]=r(t[s],i))})),n}function l(e,t,i){(i=i||{}).arrayMerge=i.arrayMerge||o,i.isMergeableObject=i.isMergeableObject||n,i.cloneUnlessOtherwiseSpecified=r;var s=Array.isArray(t);return s===Array.isArray(e)?s?i.arrayMerge(e,t,i):c(e,t,i):r(t,i)}l.all=function(e,t){if(!Array.isArray(e))throw new Error(\"first argument should be an array\");return e.reduce((function(e,i){return l(e,i,t)}),{})};var h=l;e.exports=h},function(e,t,i){\"use strict\";(function(e,n){var s,r=i(3);s=\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:void 0!==e?e:n;var o=Object(r.a)(s);t.a=o}).call(this,i(5),i(6)(e))},function(e,t,i){\n",
       "      /*!\n",
       "                       * Fuse.js v3.4.5 - Lightweight fuzzy-search (http://fusejs.io)\n",
       "                       *\n",
       "                       * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me)\n",
       "                       * All Rights Reserved. Apache Software License 2.0\n",
       "                       *\n",
       "                       * http://www.apache.org/licenses/LICENSE-2.0\n",
       "                       */\n",
       "      e.exports=function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"\",i(i.s=1)}([function(e,t){e.exports=function(e){return Array.isArray?Array.isArray(e):\"[object Array]\"===Object.prototype.toString.call(e)}},function(e,t,i){function n(e){return(n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function s(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var r=i(2),o=i(8),a=i(0),c=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.caseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_,y=i.id,E=void 0===y?null:y,I=i.keys,S=void 0===I?[]:I,w=i.shouldSort,O=void 0===w||w,C=i.getFn,A=void 0===C?o:C,L=i.sortFn,T=void 0===L?function(e,t){return e.score-t.score}:L,x=i.tokenize,k=void 0!==x&&x,P=i.matchAllTokens,D=void 0!==P&&P,M=i.includeMatches,N=void 0!==M&&M,F=i.includeScore,j=void 0!==F&&F,K=i.verbose,R=void 0!==K&&K;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b,id:E,keys:S,includeMatches:N,includeScore:j,shouldSort:O,getFn:A,sortFn:T,verbose:R,tokenize:k,matchAllTokens:D},this.setCollection(t)}var t,i;return t=e,(i=[{key:\"setCollection\",value:function(e){return this.list=e,e}},{key:\"search\",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{limit:!1};this._log('---------\\nSearch pattern: \"'.concat(e,'\"'));var i=this._prepareSearchers(e),n=i.tokenSearchers,s=i.fullSearcher,r=this._search(n,s),o=r.weights,a=r.results;return this._computeScore(o,a),this.options.shouldSort&&this._sort(a),t.limit&&\"number\"==typeof t.limit&&(a=a.slice(0,t.limit)),this._format(a)}},{key:\"_prepareSearchers\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",t=[];if(this.options.tokenize)for(var i=e.split(this.options.tokenSeparator),n=0,s=i.length;n<s;n+=1)t.push(new r(i[n],this.options));return{tokenSearchers:t,fullSearcher:new r(e,this.options)}}},{key:\"_search\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,i=this.list,n={},s=[];if(\"string\"==typeof i[0]){for(var r=0,o=i.length;r<o;r+=1)this._analyze({key:\"\",value:i[r],record:r,index:r},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t});return{weights:null,results:s}}for(var a={},c=0,l=i.length;c<l;c+=1)for(var h=i[c],u=0,d=this.options.keys.length;u<d;u+=1){var p=this.options.keys[u];if(\"string\"!=typeof p){if(a[p.name]={weight:1-p.weight||1},p.weight<=0||p.weight>1)throw new Error(\"Key weight has to be > 0 and <= 1\");p=p.name}else a[p]={weight:1};this._analyze({key:p,value:this.options.getFn(h,p),record:h,index:c},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t})}return{weights:a,results:s}}},{key:\"_analyze\",value:function(e,t){var i=e.key,n=e.arrayIndex,s=void 0===n?-1:n,r=e.value,o=e.record,c=e.index,l=t.tokenSearchers,h=void 0===l?[]:l,u=t.fullSearcher,d=void 0===u?[]:u,p=t.resultMap,m=void 0===p?{}:p,f=t.results,v=void 0===f?[]:f;if(null!=r){var g=!1,_=-1,b=0;if(\"string\"==typeof r){this._log(\"\\nKey: \".concat(\"\"===i?\"-\":i));var y=d.search(r);if(this._log('Full text: \"'.concat(r,'\", score: ').concat(y.score)),this.options.tokenize){for(var E=r.split(this.options.tokenSeparator),I=[],S=0;S<h.length;S+=1){var w=h[S];this._log('\\nPattern: \"'.concat(w.pattern,'\"'));for(var O=!1,C=0;C<E.length;C+=1){var A=E[C],L=w.search(A),T={};L.isMatch?(T[A]=L.score,g=!0,O=!0,I.push(L.score)):(T[A]=1,this.options.matchAllTokens||I.push(1)),this._log('Token: \"'.concat(A,'\", score: ').concat(T[A]))}O&&(b+=1)}_=I[0];for(var x=I.length,k=1;k<x;k+=1)_+=I[k];_/=x,this._log(\"Token score average:\",_)}var P=y.score;_>-1&&(P=(P+_)/2),this._log(\"Score average:\",P);var D=!this.options.tokenize||!this.options.matchAllTokens||b>=h.length;if(this._log(\"\\nCheck Matches: \".concat(D)),(g||y.isMatch)&&D){var M=m[c];M?M.output.push({key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}):(m[c]={item:o,output:[{key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}]},v.push(m[c]))}}else if(a(r))for(var N=0,F=r.length;N<F;N+=1)this._analyze({key:i,arrayIndex:N,value:r[N],record:o,index:c},{resultMap:m,results:v,tokenSearchers:h,fullSearcher:d})}}},{key:\"_computeScore\",value:function(e,t){this._log(\"\\n\\nComputing score:\\n\");for(var i=0,n=t.length;i<n;i+=1){for(var s=t[i].output,r=s.length,o=1,a=1,c=0;c<r;c+=1){var l=e?e[s[c].key].weight:1,h=(1===l?s[c].score:s[c].score||.001)*l;1!==l?a=Math.min(a,h):(s[c].nScore=h,o*=h)}t[i].score=1===a?o:a,this._log(t[i])}}},{key:\"_sort\",value:function(e){this._log(\"\\n\\nSorting....\"),e.sort(this.options.sortFn)}},{key:\"_format\",value:function(e){var t=[];if(this.options.verbose){var i=[];this._log(\"\\n\\nOutput:\\n\\n\",JSON.stringify(e,(function(e,t){if(\"object\"===n(t)&&null!==t){if(-1!==i.indexOf(t))return;i.push(t)}return t}))),i=null}var s=[];this.options.includeMatches&&s.push((function(e,t){var i=e.output;t.matches=[];for(var n=0,s=i.length;n<s;n+=1){var r=i[n];if(0!==r.matchedIndices.length){var o={indices:r.matchedIndices,value:r.value};r.key&&(o.key=r.key),r.hasOwnProperty(\"arrayIndex\")&&r.arrayIndex>-1&&(o.arrayIndex=r.arrayIndex),t.matches.push(o)}}})),this.options.includeScore&&s.push((function(e,t){t.score=e.score}));for(var r=0,o=e.length;r<o;r+=1){var a=e[r];if(this.options.id&&(a.item=this.options.getFn(a.item,this.options.id)[0]),s.length){for(var c={item:a.item},l=0,h=s.length;l<h;l+=1)s[l](a,c);t.push(c)}else t.push(a.item)}return t}},{key:\"_log\",value:function(){var e;this.options.verbose&&(e=console).log.apply(e,arguments)}}])&&s(t.prototype,i),e}();e.exports=c},function(e,t,i){function n(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var s=i(3),r=i(4),o=i(7),a=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.isCaseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b},this.pattern=this.options.isCaseSensitive?t:t.toLowerCase(),this.pattern.length<=u&&(this.patternAlphabet=o(this.pattern))}var t,i;return t=e,(i=[{key:\"search\",value:function(e){if(this.options.isCaseSensitive||(e=e.toLowerCase()),this.pattern===e)return{isMatch:!0,score:0,matchedIndices:[[0,e.length-1]]};var t=this.options,i=t.maxPatternLength,n=t.tokenSeparator;if(this.pattern.length>i)return s(e,this.pattern,n);var o=this.options,a=o.location,c=o.distance,l=o.threshold,h=o.findAllMatches,u=o.minMatchCharLength;return r(e,this.pattern,this.patternAlphabet,{location:a,distance:c,threshold:l,findAllMatches:h,minMatchCharLength:u})}}])&&n(t.prototype,i),e}();e.exports=a},function(e,t){var i=/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g;e.exports=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/ +/g,s=new RegExp(t.replace(i,\"\\\\$&\").replace(n,\"|\")),r=e.match(s),o=!!r,a=[];if(o)for(var c=0,l=r.length;c<l;c+=1){var h=r[c];a.push([e.indexOf(h),h.length-1])}return{score:o?.5:1,isMatch:o,matchedIndices:a}}},function(e,t,i){var n=i(5),s=i(6);e.exports=function(e,t,i,r){for(var o=r.location,a=void 0===o?0:o,c=r.distance,l=void 0===c?100:c,h=r.threshold,u=void 0===h?.6:h,d=r.findAllMatches,p=void 0!==d&&d,m=r.minMatchCharLength,f=void 0===m?1:m,v=a,g=e.length,_=u,b=e.indexOf(t,v),y=t.length,E=[],I=0;I<g;I+=1)E[I]=0;if(-1!==b){var S=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});if(_=Math.min(S,_),-1!==(b=e.lastIndexOf(t,v+y))){var w=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});_=Math.min(w,_)}}b=-1;for(var O=[],C=1,A=y+g,L=1<<y-1,T=0;T<y;T+=1){for(var x=0,k=A;x<k;)n(t,{errors:T,currentLocation:v+k,expectedLocation:v,distance:l})<=_?x=k:A=k,k=Math.floor((A-x)/2+x);A=k;var P=Math.max(1,v-k+1),D=p?g:Math.min(v+k,g)+y,M=Array(D+2);M[D+1]=(1<<T)-1;for(var N=D;N>=P;N-=1){var F=N-1,j=i[e.charAt(F)];if(j&&(E[F]=1),M[N]=(M[N+1]<<1|1)&j,0!==T&&(M[N]|=(O[N+1]|O[N])<<1|1|O[N+1]),M[N]&L&&(C=n(t,{errors:T,currentLocation:F,expectedLocation:v,distance:l}))<=_){if(_=C,(b=F)<=v)break;P=Math.max(1,2*v-b)}}if(n(t,{errors:T+1,currentLocation:v,expectedLocation:v,distance:l})>_)break;O=M}return{isMatch:b>=0,score:0===C?.001:C,matchedIndices:s(E,f)}}},function(e,t){e.exports=function(e,t){var i=t.errors,n=void 0===i?0:i,s=t.currentLocation,r=void 0===s?0:s,o=t.expectedLocation,a=void 0===o?0:o,c=t.distance,l=void 0===c?100:c,h=n/e.length,u=Math.abs(a-r);return l?h+u/l:u?1:h}},function(e,t){e.exports=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=[],n=-1,s=-1,r=0,o=e.length;r<o;r+=1){var a=e[r];a&&-1===n?n=r:a||-1===n||((s=r-1)-n+1>=t&&i.push([n,s]),n=-1)}return e[r-1]&&r-n>=t&&i.push([n,r-1]),i}},function(e,t){e.exports=function(e){for(var t={},i=e.length,n=0;n<i;n+=1)t[e.charAt(n)]=0;for(var s=0;s<i;s+=1)t[e.charAt(s)]|=1<<i-s-1;return t}},function(e,t,i){var n=i(0);e.exports=function(e,t){return function e(t,i,s){if(i){var r=i.indexOf(\".\"),o=i,a=null;-1!==r&&(o=i.slice(0,r),a=i.slice(r+1));var c=t[o];if(null!=c)if(a||\"string\"!=typeof c&&\"number\"!=typeof c)if(n(c))for(var l=0,h=c.length;l<h;l+=1)e(c[l],a,s);else a&&e(c,a,s);else s.push(c.toString())}else s.push(t);return s}(e,t,[])}}])},function(e,t,i){\"use strict\";function n(e){var t,i=e.Symbol;return\"function\"==typeof i?i.observable?t=i.observable:(t=i(\"observable\"),i.observable=t):t=\"@@observable\",t}i.d(t,\"a\",(function(){return n}))},function(e,t,i){e.exports=i(7)},function(e,t){var i;i=function(){return this}();try{i=i||new Function(\"return this\")()}catch(e){\"object\"==typeof window&&(i=window)}e.exports=i},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,\"loaded\",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,\"id\",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,\"exports\",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,i){\"use strict\";i.r(t);var n=i(2),s=i.n(n),r=i(0),o=i.n(r),a=i(1),c=function(){return Math.random().toString(36).substring(7).split(\"\").join(\".\")},l={INIT:\"@@redux/INIT\"+c(),REPLACE:\"@@redux/REPLACE\"+c(),PROBE_UNKNOWN_ACTION:function(){return\"@@redux/PROBE_UNKNOWN_ACTION\"+c()}};function h(e){if(\"object\"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function u(e,t,i){var n;if(\"function\"==typeof t&&\"function\"==typeof i||\"function\"==typeof i&&\"function\"==typeof arguments[3])throw new Error(\"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.\");if(\"function\"==typeof t&&void 0===i&&(i=t,t=void 0),void 0!==i){if(\"function\"!=typeof i)throw new Error(\"Expected the enhancer to be a function.\");return i(u)(e,t)}if(\"function\"!=typeof e)throw new Error(\"Expected the reducer to be a function.\");var s=e,r=t,o=[],c=o,d=!1;function p(){c===o&&(c=o.slice())}function m(){if(d)throw new Error(\"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.\");return r}function f(e){if(\"function\"!=typeof e)throw new Error(\"Expected the listener to be a function.\");if(d)throw new Error(\"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");var t=!0;return p(),c.push(e),function(){if(t){if(d)throw new Error(\"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");t=!1,p();var i=c.indexOf(e);c.splice(i,1)}}}function v(e){if(!h(e))throw new Error(\"Actions must be plain objects. Use custom middleware for async actions.\");if(void 0===e.type)throw new Error('Actions may not have an undefined \"type\" property. Have you misspelled a constant?');if(d)throw new Error(\"Reducers may not dispatch actions.\");try{d=!0,r=s(r,e)}finally{d=!1}for(var t=o=c,i=0;i<t.length;i++)(0,t[i])();return e}function g(e){if(\"function\"!=typeof e)throw new Error(\"Expected the nextReducer to be a function.\");s=e,v({type:l.REPLACE})}function _(){var e,t=f;return(e={subscribe:function(e){if(\"object\"!=typeof e||null===e)throw new TypeError(\"Expected the observer to be an object.\");function i(){e.next&&e.next(m())}return i(),{unsubscribe:t(i)}}})[a.a]=function(){return this},e}return v({type:l.INIT}),(n={dispatch:v,subscribe:f,getState:m,replaceReducer:g})[a.a]=_,n}function d(e,t){var i=t&&t.type;return\"Given \"+(i&&'action \"'+String(i)+'\"'||\"an action\")+', reducer \"'+e+'\" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}var p,m=[],f=[],v=[],g={loading:!1},_=function(e,t){switch(void 0===e&&(e=g),t.type){case\"SET_IS_LOADING\":return{loading:t.isLoading};default:return e}},b=function(e){return Array.from({length:e},(function(){return(e=0,t=36,Math.floor(Math.random()*(t-e)+e)).toString(36);var e,t})).join(\"\")},y=function(e){return Object.prototype.toString.call(e).slice(8,-1)},E=function(e,t){return null!=t&&y(t)===e},I=function(e){return\"string\"!=typeof e?e:e.replace(/&/g,\"&amp;\").replace(/>/g,\"&rt;\").replace(/</g,\"&lt;\").replace(/\"/g,\"&quot;\")},S=(p=document.createElement(\"div\"),function(e){var t=e.trim();p.innerHTML=t;for(var i=p.children[0];p.firstChild;)p.removeChild(p.firstChild);return i}),w=function(e,t){return e.score-t.score},O=function(e){return JSON.parse(JSON.stringify(e))},C=function(e){for(var t=Object.keys(e),i={},n=0;n<t.length;n++){var s=t[n];\"function\"==typeof e[s]&&(i[s]=e[s])}var r,o=Object.keys(i);try{!function(e){Object.keys(e).forEach((function(t){var i=e[t];if(void 0===i(void 0,{type:l.INIT}))throw new Error('Reducer \"'+t+\"\\\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.\");if(void 0===i(void 0,{type:l.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer \"'+t+\"\\\" returned undefined when probed with a random type. Don't try to handle \"+l.INIT+' or other actions in \"redux/*\" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(i)}catch(e){r=e}return function(e,t){if(void 0===e&&(e={}),r)throw r;for(var n=!1,s={},a=0;a<o.length;a++){var c=o[a],l=i[c],h=e[c],u=l(h,t);if(void 0===u){var p=d(c,t);throw new Error(p)}s[c]=u,n=n||u!==h}return n?s:e}}({items:function(e,t){switch(void 0===e&&(e=m),t.type){case\"ADD_ITEM\":return[].concat(e,[{id:t.id,choiceId:t.choiceId,groupId:t.groupId,value:t.value,label:t.label,active:!0,highlighted:!1,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]).map((function(e){var t=e;return t.highlighted=!1,t}));case\"REMOVE_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.active=!1),i}));case\"HIGHLIGHT_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.highlighted=t.highlighted),i}));default:return e}},groups:function(e,t){switch(void 0===e&&(e=f),t.type){case\"ADD_GROUP\":return[].concat(e,[{id:t.id,value:t.value,active:t.active,disabled:t.disabled}]);case\"CLEAR_CHOICES\":return[];default:return e}},choices:function(e,t){switch(void 0===e&&(e=v),t.type){case\"ADD_CHOICE\":return[].concat(e,[{id:t.id,elementId:t.elementId,groupId:t.groupId,value:t.value,label:t.label||t.value,disabled:t.disabled||!1,selected:!1,active:!0,score:9999,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]);case\"ADD_ITEM\":return t.activateOptions?e.map((function(e){var i=e;return i.active=t.active,i})):t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!0),i})):e;case\"REMOVE_ITEM\":return t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!1),i})):e;case\"FILTER_CHOICES\":return e.map((function(e){var i=e;return i.active=t.results.some((function(e){var t=e.item,n=e.score;return t.id===i.id&&(i.score=n,!0)})),i}));case\"ACTIVATE_CHOICES\":return e.map((function(e){var i=e;return i.active=t.active,i}));case\"CLEAR_CHOICES\":return v;default:return e}},general:_}),A=function(e,t){var i=e;if(\"CLEAR_ALL\"===t.type)i=void 0;else if(\"RESET_TO\"===t.type)return O(t.state);return C(i,t)};function L(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var T=function(){function e(){this._store=u(A,window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__())}var t,i,n,s=e.prototype;return s.subscribe=function(e){this._store.subscribe(e)},s.dispatch=function(e){this._store.dispatch(e)},s.isLoading=function(){return this.state.general.loading},s.getChoiceById=function(e){return this.activeChoices.find((function(t){return t.id===parseInt(e,10)}))},s.getGroupById=function(e){return this.groups.find((function(t){return t.id===e}))},t=e,(i=[{key:\"state\",get:function(){return this._store.getState()}},{key:\"items\",get:function(){return this.state.items}},{key:\"activeItems\",get:function(){return this.items.filter((function(e){return!0===e.active}))}},{key:\"highlightedActiveItems\",get:function(){return this.items.filter((function(e){return e.active&&e.highlighted}))}},{key:\"choices\",get:function(){return this.state.choices}},{key:\"activeChoices\",get:function(){return this.choices.filter((function(e){return!0===e.active}))}},{key:\"selectableChoices\",get:function(){return this.choices.filter((function(e){return!0!==e.disabled}))}},{key:\"searchableChoices\",get:function(){return this.selectableChoices.filter((function(e){return!0!==e.placeholder}))}},{key:\"placeholderChoice\",get:function(){return[].concat(this.choices).reverse().find((function(e){return!0===e.placeholder}))}},{key:\"groups\",get:function(){return this.state.groups}},{key:\"activeGroups\",get:function(){var e=this.groups,t=this.choices;return e.filter((function(e){var i=!0===e.active&&!1===e.disabled,n=t.some((function(e){return!0===e.active&&!1===e.disabled}));return i&&n}),[])}}])&&L(t.prototype,i),n&&L(t,n),e}();function x(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var k=function(){function e(e){var t=e.element,i=e.type,n=e.classNames;this.element=t,this.classNames=n,this.type=i,this.isActive=!1}var t,i,n,s=e.prototype;return s.getChild=function(e){return this.element.querySelector(e)},s.show=function(){return this.element.classList.add(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isActive=!0,this},s.hide=function(){return this.element.classList.remove(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.isActive=!1,this},t=e,(i=[{key:\"distanceFromTopWindow\",get:function(){return this.element.getBoundingClientRect().bottom}}])&&x(t.prototype,i),n&&x(t,n),e}(),P={items:[],choices:[],silent:!1,renderChoiceLimit:-1,maxItemCount:-1,addItems:!0,addItemFilter:null,removeItems:!0,removeItemButton:!1,editItems:!1,duplicateItemsAllowed:!0,delimiter:\",\",paste:!0,searchEnabled:!0,searchChoices:!0,searchFloor:1,searchResultLimit:4,searchFields:[\"label\",\"value\"],position:\"auto\",resetScrollPosition:!0,shouldSort:!0,shouldSortItems:!1,sorter:function(e,t){var i=e.value,n=e.label,s=void 0===n?i:n,r=t.value,o=t.label,a=void 0===o?r:o;return s.localeCompare(a,[],{sensitivity:\"base\",ignorePunctuation:!0,numeric:!0})},placeholder:!0,placeholderValue:null,searchPlaceholderValue:null,prependValue:null,appendValue:null,renderSelectedChoices:\"auto\",loadingText:\"Loading...\",noResultsText:\"No results found\",noChoicesText:\"No choices to choose from\",itemSelectText:\"Press to select\",uniqueItemText:\"Only unique values can be added\",customAddItemText:\"Only values matching specific conditions can be added\",addItemText:function(e){return'Press Enter to add <b>\"'+I(e)+'\"</b>'},maxItemText:function(e){return\"Only \"+e+\" values can be added\"},valueComparer:function(e,t){return e===t},fuseOptions:{includeScore:!0},callbackOnInit:null,callbackOnCreateTemplates:null,classNames:{containerOuter:\"choices\",containerInner:\"choices__inner\",input:\"choices__input\",inputCloned:\"choices__input--cloned\",list:\"choices__list\",listItems:\"choices__list--multiple\",listSingle:\"choices__list--single\",listDropdown:\"choices__list--dropdown\",item:\"choices__item\",itemSelectable:\"choices__item--selectable\",itemDisabled:\"choices__item--disabled\",itemChoice:\"choices__item--choice\",placeholder:\"choices__placeholder\",group:\"choices__group\",groupHeading:\"choices__heading\",button:\"choices__button\",activeState:\"is-active\",focusState:\"is-focused\",openState:\"is-open\",disabledState:\"is-disabled\",highlightedState:\"is-highlighted\",selectedState:\"is-selected\",flippedState:\"is-flipped\",loadingState:\"is-loading\",noResults:\"has-no-results\",noChoices:\"has-no-choices\"}},D=\"showDropdown\",M=\"hideDropdown\",N=\"change\",F=\"choice\",j=\"search\",K=\"addItem\",R=\"removeItem\",H=\"highlightItem\",B=\"highlightChoice\",V=\"ADD_CHOICE\",G=\"FILTER_CHOICES\",q=\"ACTIVATE_CHOICES\",U=\"CLEAR_CHOICES\",z=\"ADD_GROUP\",W=\"ADD_ITEM\",X=\"REMOVE_ITEM\",$=\"HIGHLIGHT_ITEM\",J=46,Y=8,Z=13,Q=65,ee=27,te=38,ie=40,ne=33,se=34,re=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.position;this.element=t,this.classNames=n,this.type=i,this.position=s,this.isOpen=!1,this.isFlipped=!1,this.isFocussed=!1,this.isDisabled=!1,this.isLoading=!1,this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t=e.prototype;return t.addEventListeners=function(){this.element.addEventListener(\"focus\",this._onFocus),this.element.addEventListener(\"blur\",this._onBlur)},t.removeEventListeners=function(){this.element.removeEventListener(\"focus\",this._onFocus),this.element.removeEventListener(\"blur\",this._onBlur)},t.shouldFlip=function(e){if(\"number\"!=typeof e)return!1;var t=!1;return\"auto\"===this.position?t=!window.matchMedia(\"(min-height: \"+(e+1)+\"px)\").matches:\"top\"===this.position&&(t=!0),t},t.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},t.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},t.open=function(e){this.element.classList.add(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isOpen=!0,this.shouldFlip(e)&&(this.element.classList.add(this.classNames.flippedState),this.isFlipped=!0)},t.close=function(){this.element.classList.remove(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.removeActiveDescendant(),this.isOpen=!1,this.isFlipped&&(this.element.classList.remove(this.classNames.flippedState),this.isFlipped=!1)},t.focus=function(){this.isFocussed||this.element.focus()},t.addFocusState=function(){this.element.classList.add(this.classNames.focusState)},t.removeFocusState=function(){this.element.classList.remove(this.classNames.focusState)},t.enable=function(){this.element.classList.remove(this.classNames.disabledState),this.element.removeAttribute(\"aria-disabled\"),\"select-one\"===this.type&&this.element.setAttribute(\"tabindex\",\"0\"),this.isDisabled=!1},t.disable=function(){this.element.classList.add(this.classNames.disabledState),this.element.setAttribute(\"aria-disabled\",\"true\"),\"select-one\"===this.type&&this.element.setAttribute(\"tabindex\",\"-1\"),this.isDisabled=!0},t.wrap=function(e){!function(e,t){void 0===t&&(t=document.createElement(\"div\")),e.nextSibling?e.parentNode.insertBefore(t,e.nextSibling):e.parentNode.appendChild(t),t.appendChild(e)}(e,this.element)},t.unwrap=function(e){this.element.parentNode.insertBefore(e,this.element),this.element.parentNode.removeChild(this.element)},t.addLoadingState=function(){this.element.classList.add(this.classNames.loadingState),this.element.setAttribute(\"aria-busy\",\"true\"),this.isLoading=!0},t.removeLoadingState=function(){this.element.classList.remove(this.classNames.loadingState),this.element.removeAttribute(\"aria-busy\"),this.isLoading=!1},t._onFocus=function(){this.isFocussed=!0},t._onBlur=function(){this.isFocussed=!1},e}();function oe(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var ae=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.preventPaste;this.element=t,this.type=i,this.classNames=n,this.preventPaste=s,this.isFocussed=this.element===document.activeElement,this.isDisabled=t.disabled,this._onPaste=this._onPaste.bind(this),this._onInput=this._onInput.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t,i,n,s=e.prototype;return s.addEventListeners=function(){this.element.addEventListener(\"paste\",this._onPaste),this.element.addEventListener(\"input\",this._onInput,{passive:!0}),this.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.addEventListener(\"blur\",this._onBlur,{passive:!0})},s.removeEventListeners=function(){this.element.removeEventListener(\"input\",this._onInput,{passive:!0}),this.element.removeEventListener(\"paste\",this._onPaste),this.element.removeEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.removeEventListener(\"blur\",this._onBlur,{passive:!0})},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.isDisabled=!0},s.focus=function(){this.isFocussed||this.element.focus()},s.blur=function(){this.isFocussed&&this.element.blur()},s.clear=function(e){return void 0===e&&(e=!0),this.element.value&&(this.element.value=\"\"),e&&this.setWidth(),this},s.setWidth=function(){var e=this.element,t=e.style,i=e.value,n=e.placeholder;t.minWidth=n.length+1+\"ch\",t.width=i.length+1+\"ch\"},s.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},s.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},s._onInput=function(){\"select-one\"!==this.type&&this.setWidth()},s._onPaste=function(e){this.preventPaste&&e.preventDefault()},s._onFocus=function(){this.isFocussed=!0},s._onBlur=function(){this.isFocussed=!1},t=e,(i=[{key:\"placeholder\",set:function(e){this.element.placeholder=e}},{key:\"value\",get:function(){return I(this.element.value)},set:function(e){this.element.value=e}}])&&oe(t.prototype,i),n&&oe(t,n),e}(),ce=function(){function e(e){var t=e.element;this.element=t,this.scrollPos=this.element.scrollTop,this.height=this.element.offsetHeight}var t=e.prototype;return t.clear=function(){this.element.innerHTML=\"\"},t.append=function(e){this.element.appendChild(e)},t.getChild=function(e){return this.element.querySelector(e)},t.hasChildren=function(){return this.element.hasChildNodes()},t.scrollToTop=function(){this.element.scrollTop=0},t.scrollToChildElement=function(e,t){var i=this;if(e){var n=this.element.offsetHeight,s=this.element.scrollTop+n,r=e.offsetHeight,o=e.offsetTop+r,a=t>0?this.element.scrollTop+o-s:e.offsetTop;requestAnimationFrame((function(){i._animateScroll(a,t)}))}},t._scrollDown=function(e,t,i){var n=(i-e)/t,s=n>1?n:1;this.element.scrollTop=e+s},t._scrollUp=function(e,t,i){var n=(e-i)/t,s=n>1?n:1;this.element.scrollTop=e-s},t._animateScroll=function(e,t){var i=this,n=this.element.scrollTop,s=!1;t>0?(this._scrollDown(n,4,e),n<e&&(s=!0)):(this._scrollUp(n,4,e),n>e&&(s=!0)),s&&requestAnimationFrame((function(){i._animateScroll(e,t)}))},e}();function le(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var he=function(){function e(e){var t=e.element,i=e.classNames;if(this.element=t,this.classNames=i,!(t instanceof HTMLInputElement||t instanceof HTMLSelectElement))throw new TypeError(\"Invalid element passed\");this.isDisabled=!1}var t,i,n,s=e.prototype;return s.conceal=function(){this.element.classList.add(this.classNames.input),this.element.hidden=!0,this.element.tabIndex=-1;var e=this.element.getAttribute(\"style\");e&&this.element.setAttribute(\"data-choice-orig-style\",e),this.element.setAttribute(\"data-choice\",\"active\")},s.reveal=function(){this.element.classList.remove(this.classNames.input),this.element.hidden=!1,this.element.removeAttribute(\"tabindex\");var e=this.element.getAttribute(\"data-choice-orig-style\");e?(this.element.removeAttribute(\"data-choice-orig-style\"),this.element.setAttribute(\"style\",e)):this.element.removeAttribute(\"style\"),this.element.removeAttribute(\"data-choice\"),this.element.value=this.element.value},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.element.disabled=!1,this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.element.disabled=!0,this.isDisabled=!0},s.triggerEvent=function(e,t){!function(e,t,i){void 0===i&&(i=null);var n=new CustomEvent(t,{detail:i,bubbles:!0,cancelable:!0});e.dispatchEvent(n)}(this.element,e,t)},t=e,(i=[{key:\"isActive\",get:function(){return\"active\"===this.element.dataset.choice}},{key:\"dir\",get:function(){return this.element.dir}},{key:\"value\",get:function(){return this.element.value},set:function(e){this.element.value=e}}])&&le(t.prototype,i),n&&le(t,n),e}();function ue(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var de=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.delimiter;return(i=e.call(this,{element:n,classNames:s})||this).delimiter=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,n=o,(s=[{key:\"value\",get:function(){return this.element.value},set:function(e){var t=e.map((function(e){return e.value})).join(this.delimiter);this.element.setAttribute(\"value\",t),this.element.value=t}}])&&ue(n.prototype,s),r&&ue(n,r),o}(he);function pe(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var me=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.template;return(i=e.call(this,{element:n,classNames:s})||this).template=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,o.prototype.appendDocFragment=function(e){this.element.innerHTML=\"\",this.element.appendChild(e)},n=o,(s=[{key:\"placeholderOption\",get:function(){return this.element.querySelector('option[value=\"\"]')||this.element.querySelector(\"option[placeholder]\")}},{key:\"optionGroups\",get:function(){return Array.from(this.element.getElementsByTagName(\"OPTGROUP\"))}},{key:\"options\",get:function(){return Array.from(this.element.options)},set:function(e){var t=this,i=document.createDocumentFragment();e.forEach((function(e){return n=e,s=t.template(n),void i.appendChild(s);var n,s})),this.appendDocFragment(i)}}])&&pe(n.prototype,s),r&&pe(n,r),o}(he),fe={containerOuter:function(e,t,i,n,s,r){var o=e.containerOuter,a=Object.assign(document.createElement(\"div\"),{className:o});return a.dataset.type=r,t&&(a.dir=t),n&&(a.tabIndex=0),i&&(a.setAttribute(\"role\",s?\"combobox\":\"listbox\"),s&&a.setAttribute(\"aria-autocomplete\",\"list\")),a.setAttribute(\"aria-haspopup\",\"true\"),a.setAttribute(\"aria-expanded\",\"false\"),a},containerInner:function(e){var t=e.containerInner;return Object.assign(document.createElement(\"div\"),{className:t})},itemList:function(e,t){var i=e.list,n=e.listSingle,s=e.listItems;return Object.assign(document.createElement(\"div\"),{className:i+\" \"+(t?n:s)})},placeholder:function(e,t){var i=e.placeholder;return Object.assign(document.createElement(\"div\"),{className:i,innerHTML:t})},item:function(e,t,i){var n=e.item,s=e.button,r=e.highlightedState,o=e.itemSelectable,a=e.placeholder,c=t.id,l=t.value,h=t.label,u=t.customProperties,d=t.active,p=t.disabled,m=t.highlighted,f=t.placeholder,v=Object.assign(document.createElement(\"div\"),{className:n,innerHTML:h});if(Object.assign(v.dataset,{item:\"\",id:c,value:l,customProperties:u}),d&&v.setAttribute(\"aria-selected\",\"true\"),p&&v.setAttribute(\"aria-disabled\",\"true\"),f&&v.classList.add(a),v.classList.add(m?r:o),i){p&&v.classList.remove(o),v.dataset.deletable=\"\";var g=Object.assign(document.createElement(\"button\"),{type:\"button\",className:s,innerHTML:\"Remove item\"});g.setAttribute(\"aria-label\",\"Remove item: '\"+l+\"'\"),g.dataset.button=\"\",v.appendChild(g)}return v},choiceList:function(e,t){var i=e.list,n=Object.assign(document.createElement(\"div\"),{className:i});return t||n.setAttribute(\"aria-multiselectable\",\"true\"),n.setAttribute(\"role\",\"listbox\"),n},choiceGroup:function(e,t){var i=e.group,n=e.groupHeading,s=e.itemDisabled,r=t.id,o=t.value,a=t.disabled,c=Object.assign(document.createElement(\"div\"),{className:i+\" \"+(a?s:\"\")});return c.setAttribute(\"role\",\"group\"),Object.assign(c.dataset,{group:\"\",id:r,value:o}),a&&c.setAttribute(\"aria-disabled\",\"true\"),c.appendChild(Object.assign(document.createElement(\"div\"),{className:n,innerHTML:o})),c},choice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.itemSelectable,o=e.selectedState,a=e.itemDisabled,c=e.placeholder,l=t.id,h=t.value,u=t.label,d=t.groupId,p=t.elementId,m=t.disabled,f=t.selected,v=t.placeholder,g=Object.assign(document.createElement(\"div\"),{id:p,innerHTML:u,className:n+\" \"+s});return f&&g.classList.add(o),v&&g.classList.add(c),g.setAttribute(\"role\",d>0?\"treeitem\":\"option\"),Object.assign(g.dataset,{choice:\"\",id:l,value:h,selectText:i}),m?(g.classList.add(a),g.dataset.choiceDisabled=\"\",g.setAttribute(\"aria-disabled\",\"true\")):(g.classList.add(r),g.dataset.choiceSelectable=\"\"),g},input:function(e,t){var i=e.input,n=e.inputCloned,s=Object.assign(document.createElement(\"input\"),{type:\"text\",className:i+\" \"+n,autocomplete:\"off\",autocapitalize:\"off\",spellcheck:!1});return s.setAttribute(\"role\",\"textbox\"),s.setAttribute(\"aria-autocomplete\",\"list\"),s.setAttribute(\"aria-label\",t),s},dropdown:function(e){var t=e.list,i=e.listDropdown,n=document.createElement(\"div\");return n.classList.add(t,i),n.setAttribute(\"aria-expanded\",\"false\"),n},notice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.noResults,o=e.noChoices;void 0===i&&(i=\"\");var a=[n,s];return\"no-choices\"===i?a.push(o):\"no-results\"===i&&a.push(r),Object.assign(document.createElement(\"div\"),{innerHTML:t,className:a.join(\" \")})},option:function(e){var t=e.label,i=e.value,n=e.customProperties,s=e.active,r=e.disabled,o=new Option(t,i,!1,s);return n&&(o.dataset.customProperties=n),o.disabled=r,o}},ve=function(e){return void 0===e&&(e=!0),{type:q,active:e}},ge=function(e,t){return{type:$,id:e,highlighted:t}},_e=function(e){var t=e.value,i=e.id,n=e.active,s=e.disabled;return{type:z,value:t,id:i,active:n,disabled:s}},be=function(e){return{type:\"SET_IS_LOADING\",isLoading:e}};function ye(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var Ee=\"-ms-scroll-limit\"in document.documentElement.style&&\"-ms-ime-align\"in document.documentElement.style,Ie={},Se=function(){var e,t,i;function n(e,t){var i=this;void 0===e&&(e=\"[data-choice]\"),void 0===t&&(t={}),this.config=o.a.all([P,n.defaults.options,t],{arrayMerge:function(e,t){return[].concat(t)}});var s,r,a,c,l=(s=this.config,r=P,a=Object.keys(s).sort(),c=Object.keys(r).sort(),a.filter((function(e){return c.indexOf(e)<0})));l.length&&console.warn(\"Unknown config option(s) passed\",l.join(\", \"));var h=\"string\"==typeof e?document.querySelector(e):e;if(!(h instanceof HTMLInputElement||h instanceof HTMLSelectElement))throw TypeError(\"Expected one of the following types text|select-one|select-multiple\");if(this._isTextElement=\"text\"===h.type,this._isSelectOneElement=\"select-one\"===h.type,this._isSelectMultipleElement=\"select-multiple\"===h.type,this._isSelectElement=this._isSelectOneElement||this._isSelectMultipleElement,this.config.searchEnabled=this._isSelectMultipleElement||this.config.searchEnabled,[\"auto\",\"always\"].includes(this.config.renderSelectedChoices)||(this.config.renderSelectedChoices=\"auto\"),t.addItemFilter&&\"function\"!=typeof t.addItemFilter){var u=t.addItemFilter instanceof RegExp?t.addItemFilter:new RegExp(t.addItemFilter);this.config.addItemFilter=u.test.bind(u)}if(this._isTextElement?this.passedElement=new de({element:h,classNames:this.config.classNames,delimiter:this.config.delimiter}):this.passedElement=new me({element:h,classNames:this.config.classNames,template:function(e){return i._templates.option(e)}}),this.initialised=!1,this._store=new T,this._initialState={},this._currentState={},this._prevState={},this._currentValue=\"\",this._canSearch=this.config.searchEnabled,this._isScrollingOnIe=!1,this._highlightPosition=0,this._wasTap=!0,this._placeholderValue=this._generatePlaceholderValue(),this._baseId=function(e,t){var i=e.id||e.name&&e.name+\"-\"+b(2)||b(4);return i=t+\"-\"+(i=i.replace(/(:|\\.|\\[|\\]|,)/g,\"\"))}(this.passedElement.element,\"choices-\"),this._direction=this.passedElement.dir,!this._direction){var d=window.getComputedStyle(this.passedElement.element).direction;d!==window.getComputedStyle(document.documentElement).direction&&(this._direction=d)}if(this._idNames={itemChoice:\"item-choice\"},this._presetGroups=this.passedElement.optionGroups,this._presetOptions=this.passedElement.options,this._presetChoices=this.config.choices,this._presetItems=this.config.items,this.passedElement.value&&(this._presetItems=this._presetItems.concat(this.passedElement.value.split(this.config.delimiter))),this.passedElement.options&&this.passedElement.options.forEach((function(e){i._presetChoices.push({value:e.value,label:e.innerHTML,selected:e.selected,disabled:e.disabled||e.parentNode.disabled,placeholder:\"\"===e.value||e.hasAttribute(\"placeholder\"),customProperties:e.getAttribute(\"data-custom-properties\")})})),this._render=this._render.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this),this._onKeyUp=this._onKeyUp.bind(this),this._onKeyDown=this._onKeyDown.bind(this),this._onClick=this._onClick.bind(this),this._onTouchMove=this._onTouchMove.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onMouseDown=this._onMouseDown.bind(this),this._onMouseOver=this._onMouseOver.bind(this),this._onFormReset=this._onFormReset.bind(this),this._onAKey=this._onAKey.bind(this),this._onEnterKey=this._onEnterKey.bind(this),this._onEscapeKey=this._onEscapeKey.bind(this),this._onDirectionKey=this._onDirectionKey.bind(this),this._onDeleteKey=this._onDeleteKey.bind(this),this.passedElement.isActive)return this.config.silent||console.warn(\"Trying to initialise Choices on element already initialised\"),void(this.initialised=!0);this.init()}e=n,i=[{key:\"defaults\",get:function(){return Object.preventExtensions({get options(){return Ie},get templates(){return fe}})}}],(t=null)&&ye(e.prototype,t),i&&ye(e,i);var r=n.prototype;return r.init=function(){if(!this.initialised){this._createTemplates(),this._createElements(),this._createStructure(),this._initialState=O(this._store.state),this._store.subscribe(this._render),this._render(),this._addEventListeners(),(!this.config.addItems||this.passedElement.element.hasAttribute(\"disabled\"))&&this.disable(),this.initialised=!0;var e=this.config.callbackOnInit;e&&\"function\"==typeof e&&e.call(this)}},r.destroy=function(){this.initialised&&(this._removeEventListeners(),this.passedElement.reveal(),this.containerOuter.unwrap(this.passedElement.element),this.clearStore(),this._isSelectElement&&(this.passedElement.options=this._presetOptions),this._templates=null,this.initialised=!1)},r.enable=function(){return this.passedElement.isDisabled&&this.passedElement.enable(),this.containerOuter.isDisabled&&(this._addEventListeners(),this.input.enable(),this.containerOuter.enable()),this},r.disable=function(){return this.passedElement.isDisabled||this.passedElement.disable(),this.containerOuter.isDisabled||(this._removeEventListeners(),this.input.disable(),this.containerOuter.disable()),this},r.highlightItem=function(e,t){if(void 0===t&&(t=!0),!e)return this;var i=e.id,n=e.groupId,s=void 0===n?-1:n,r=e.value,o=void 0===r?\"\":r,a=e.label,c=void 0===a?\"\":a,l=s>=0?this._store.getGroupById(s):null;return this._store.dispatch(ge(i,!0)),t&&this.passedElement.triggerEvent(H,{id:i,value:o,label:c,groupValue:l&&l.value?l.value:null}),this},r.unhighlightItem=function(e){if(!e)return this;var t=e.id,i=e.groupId,n=void 0===i?-1:i,s=e.value,r=void 0===s?\"\":s,o=e.label,a=void 0===o?\"\":o,c=n>=0?this._store.getGroupById(n):null;return this._store.dispatch(ge(t,!1)),this.passedElement.triggerEvent(H,{id:t,value:r,label:a,groupValue:c&&c.value?c.value:null}),this},r.highlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.highlightItem(t)})),this},r.unhighlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.unhighlightItem(t)})),this},r.removeActiveItemsByValue=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.value===e})).forEach((function(e){return t._removeItem(e)})),this},r.removeActiveItems=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.id!==e})).forEach((function(e){return t._removeItem(e)})),this},r.removeHighlightedItems=function(e){var t=this;return void 0===e&&(e=!1),this._store.highlightedActiveItems.forEach((function(i){t._removeItem(i),e&&t._triggerChange(i.value)})),this},r.showDropdown=function(e){var t=this;return this.dropdown.isActive||requestAnimationFrame((function(){t.dropdown.show(),t.containerOuter.open(t.dropdown.distanceFromTopWindow),!e&&t._canSearch&&t.input.focus(),t.passedElement.triggerEvent(D,{})})),this},r.hideDropdown=function(e){var t=this;return this.dropdown.isActive?(requestAnimationFrame((function(){t.dropdown.hide(),t.containerOuter.close(),!e&&t._canSearch&&(t.input.removeActiveDescendant(),t.input.blur()),t.passedElement.triggerEvent(M,{})})),this):this},r.getValue=function(e){void 0===e&&(e=!1);var t=this._store.activeItems.reduce((function(t,i){var n=e?i.value:i;return t.push(n),t}),[]);return this._isSelectOneElement?t[0]:t},r.setValue=function(e){var t=this;return this.initialised?(e.forEach((function(e){return t._setChoiceOrItem(e)})),this):this},r.setChoiceByValue=function(e){var t=this;return!this.initialised||this._isTextElement||(Array.isArray(e)?e:[e]).forEach((function(e){return t._findAndSelectChoiceByValue(e)})),this},r.setChoices=function(e,t,i,n){var s=this;if(void 0===e&&(e=[]),void 0===t&&(t=\"value\"),void 0===i&&(i=\"label\"),void 0===n&&(n=!1),!this.initialised)throw new ReferenceError(\"setChoices was called on a non-initialized instance of Choices\");if(!this._isSelectElement)throw new TypeError(\"setChoices can't be used with INPUT based Choices\");if(\"string\"!=typeof t||!t)throw new TypeError(\"value parameter must be a name of 'value' field in passed objects\");if(n&&this.clearChoices(),\"function\"==typeof e){var r=e(this);if(\"function\"==typeof Promise&&r instanceof Promise)return new Promise((function(e){return requestAnimationFrame(e)})).then((function(){return s._handleLoadingState(!0)})).then((function(){return r})).then((function(e){return s.setChoices(e,t,i,n)})).catch((function(e){s.config.silent||console.error(e)})).then((function(){return s._handleLoadingState(!1)})).then((function(){return s}));if(!Array.isArray(r))throw new TypeError(\".setChoices first argument function must return either array of choices or Promise, got: \"+typeof r);return this.setChoices(r,t,i,!1)}if(!Array.isArray(e))throw new TypeError(\".setChoices must be called either with array of choices with a function resulting into Promise of array of choices\");return this.containerOuter.removeLoadingState(),this._startLoading(),e.forEach((function(e){e.choices?s._addGroup({id:parseInt(e.id,10)||null,group:e,valueKey:t,labelKey:i}):s._addChoice({value:e[t],label:e[i],isSelected:e.selected,isDisabled:e.disabled,customProperties:e.customProperties,placeholder:e.placeholder})})),this._stopLoading(),this},r.clearChoices=function(){return this._store.dispatch({type:U}),this},r.clearStore=function(){return this._store.dispatch({type:\"CLEAR_ALL\"}),this},r.clearInput=function(){var e=!this._isSelectOneElement;return this.input.clear(e),!this._isTextElement&&this._canSearch&&(this._isSearching=!1,this._store.dispatch(ve(!0))),this},r._render=function(){if(!this._store.isLoading()){this._currentState=this._store.state;var e=this._currentState.choices!==this._prevState.choices||this._currentState.groups!==this._prevState.groups||this._currentState.items!==this._prevState.items,t=this._isSelectElement,i=this._currentState.items!==this._prevState.items;e&&(t&&this._renderChoices(),i&&this._renderItems(),this._prevState=this._currentState)}},r._renderChoices=function(){var e=this,t=this._store,i=t.activeGroups,n=t.activeChoices,s=document.createDocumentFragment();if(this.choiceList.clear(),this.config.resetScrollPosition&&requestAnimationFrame((function(){return e.choiceList.scrollToTop()})),i.length>=1&&!this._isSearching){var r=n.filter((function(e){return!0===e.placeholder&&-1===e.groupId}));r.length>=1&&(s=this._createChoicesFragment(r,s)),s=this._createGroupsFragment(i,n,s)}else n.length>=1&&(s=this._createChoicesFragment(n,s));if(s.childNodes&&s.childNodes.length>0){var o=this._store.activeItems,a=this._canAddItem(o,this.input.value);a.response?(this.choiceList.append(s),this._highlightChoice()):this.choiceList.append(this._getTemplate(\"notice\",a.notice))}else{var c,l;this._isSearching?(l=\"function\"==typeof this.config.noResultsText?this.config.noResultsText():this.config.noResultsText,c=this._getTemplate(\"notice\",l,\"no-results\")):(l=\"function\"==typeof this.config.noChoicesText?this.config.noChoicesText():this.config.noChoicesText,c=this._getTemplate(\"notice\",l,\"no-choices\")),this.choiceList.append(c)}},r._renderItems=function(){var e=this._store.activeItems||[];this.itemList.clear();var t=this._createItemsFragment(e);t.childNodes&&this.itemList.append(t)},r._createGroupsFragment=function(e,t,i){var n=this;return void 0===i&&(i=document.createDocumentFragment()),this.config.shouldSort&&e.sort(this.config.sorter),e.forEach((function(e){var s=function(e){return t.filter((function(t){return n._isSelectOneElement?t.groupId===e.id:t.groupId===e.id&&(\"always\"===n.config.renderSelectedChoices||!t.selected)}))}(e);if(s.length>=1){var r=n._getTemplate(\"choiceGroup\",e);i.appendChild(r),n._createChoicesFragment(s,i,!0)}})),i},r._createChoicesFragment=function(e,t,i){var n=this;void 0===t&&(t=document.createDocumentFragment()),void 0===i&&(i=!1);var s=this.config,r=s.renderSelectedChoices,o=s.searchResultLimit,a=s.renderChoiceLimit,c=this._isSearching?w:this.config.sorter,l=function(e){if(\"auto\"!==r||n._isSelectOneElement||!e.selected){var i=n._getTemplate(\"choice\",e,n.config.itemSelectText);t.appendChild(i)}},h=e;\"auto\"!==r||this._isSelectOneElement||(h=e.filter((function(e){return!e.selected})));var u=h.reduce((function(e,t){return t.placeholder?e.placeholderChoices.push(t):e.normalChoices.push(t),e}),{placeholderChoices:[],normalChoices:[]}),d=u.placeholderChoices,p=u.normalChoices;(this.config.shouldSort||this._isSearching)&&p.sort(c);var m=h.length,f=this._isSelectOneElement?[].concat(d,p):p;this._isSearching?m=o:a&&a>0&&!i&&(m=a);for(var v=0;v<m;v+=1)f[v]&&l(f[v]);return t},r._createItemsFragment=function(e,t){var i=this;void 0===t&&(t=document.createDocumentFragment());var n=this.config,s=n.shouldSortItems,r=n.sorter,o=n.removeItemButton;return s&&!this._isSelectOneElement&&e.sort(r),this._isTextElement?this.passedElement.value=e:this.passedElement.options=e,e.forEach((function(e){var n=i._getTemplate(\"item\",e,o);t.appendChild(n)})),t},r._triggerChange=function(e){null!=e&&this.passedElement.triggerEvent(N,{value:e})},r._selectPlaceholderChoice=function(){var e=this._store.placeholderChoice;e&&(this._addItem({value:e.value,label:e.label,choiceId:e.id,groupId:e.groupId,placeholder:e.placeholder}),this._triggerChange(e.value))},r._handleButtonAction=function(e,t){if(e&&t&&this.config.removeItems&&this.config.removeItemButton){var i=t.parentNode.getAttribute(\"data-id\"),n=e.find((function(e){return e.id===parseInt(i,10)}));this._removeItem(n),this._triggerChange(n.value),this._isSelectOneElement&&this._selectPlaceholderChoice()}},r._handleItemAction=function(e,t,i){var n=this;if(void 0===i&&(i=!1),e&&t&&this.config.removeItems&&!this._isSelectOneElement){var s=t.getAttribute(\"data-id\");e.forEach((function(e){e.id!==parseInt(s,10)||e.highlighted?!i&&e.highlighted&&n.unhighlightItem(e):n.highlightItem(e)})),this.input.focus()}},r._handleChoiceAction=function(e,t){if(e&&t){var i=t.dataset.id,n=this._store.getChoiceById(i);if(n){var s=e[0]&&e[0].keyCode?e[0].keyCode:null,r=this.dropdown.isActive;n.keyCode=s,this.passedElement.triggerEvent(F,{choice:n}),n.selected||n.disabled||this._canAddItem(e,n.value).response&&(this._addItem({value:n.value,label:n.label,choiceId:n.id,groupId:n.groupId,customProperties:n.customProperties,placeholder:n.placeholder,keyCode:n.keyCode}),this._triggerChange(n.value)),this.clearInput(),r&&this._isSelectOneElement&&(this.hideDropdown(!0),this.containerOuter.focus())}}},r._handleBackspace=function(e){if(this.config.removeItems&&e){var t=e[e.length-1],i=e.some((function(e){return e.highlighted}));this.config.editItems&&!i&&t?(this.input.value=t.value,this.input.setWidth(),this._removeItem(t),this._triggerChange(t.value)):(i||this.highlightItem(t,!1),this.removeHighlightedItems(!0))}},r._startLoading=function(){this._store.dispatch(be(!0))},r._stopLoading=function(){this._store.dispatch(be(!1))},r._handleLoadingState=function(e){void 0===e&&(e=!0);var t=this.itemList.getChild(\".\"+this.config.classNames.placeholder);e?(this.disable(),this.containerOuter.addLoadingState(),this._isSelectOneElement?t?t.innerHTML=this.config.loadingText:(t=this._getTemplate(\"placeholder\",this.config.loadingText),this.itemList.append(t)):this.input.placeholder=this.config.loadingText):(this.enable(),this.containerOuter.removeLoadingState(),this._isSelectOneElement?t.innerHTML=this._placeholderValue||\"\":this.input.placeholder=this._placeholderValue||\"\")},r._handleSearch=function(e){if(e&&this.input.isFocussed){var t=this._store.choices,i=this.config,n=i.searchFloor,s=i.searchChoices,r=t.some((function(e){return!e.active}));if(e&&e.length>=n){var o=s?this._searchChoices(e):0;this.passedElement.triggerEvent(j,{value:e,resultCount:o})}else r&&(this._isSearching=!1,this._store.dispatch(ve(!0)))}},r._canAddItem=function(e,t){var i=!0,n=\"function\"==typeof this.config.addItemText?this.config.addItemText(t):this.config.addItemText;if(!this._isSelectOneElement){var s=function(e,t,i){return void 0===i&&(i=\"value\"),e.some((function(e){return\"string\"==typeof t?e[i]===t.trim():e[i]===t}))}(e,t);this.config.maxItemCount>0&&this.config.maxItemCount<=e.length&&(i=!1,n=\"function\"==typeof this.config.maxItemText?this.config.maxItemText(this.config.maxItemCount):this.config.maxItemText),!this.config.duplicateItemsAllowed&&s&&i&&(i=!1,n=\"function\"==typeof this.config.uniqueItemText?this.config.uniqueItemText(t):this.config.uniqueItemText),this._isTextElement&&this.config.addItems&&i&&\"function\"==typeof this.config.addItemFilter&&!this.config.addItemFilter(t)&&(i=!1,n=\"function\"==typeof this.config.customAddItemText?this.config.customAddItemText(t):this.config.customAddItemText)}return{response:i,notice:n}},r._searchChoices=function(e){var t=\"string\"==typeof e?e.trim():e,i=\"string\"==typeof this._currentValue?this._currentValue.trim():this._currentValue;if(t.length<1&&t===i+\" \")return 0;var n=this._store.searchableChoices,r=t,o=[].concat(this.config.searchFields),a=Object.assign(this.config.fuseOptions,{keys:o}),c=new s.a(n,a).search(r);return this._currentValue=t,this._highlightPosition=0,this._isSearching=!0,this._store.dispatch(function(e){return{type:G,results:e}}(c)),c.length},r._addEventListeners=function(){var e=document.documentElement;e.addEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.addEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.addEventListener(\"mousedown\",this._onMouseDown,!0),e.addEventListener(\"click\",this._onClick,{passive:!0}),e.addEventListener(\"touchmove\",this._onTouchMove,{passive:!0}),this.dropdown.element.addEventListener(\"mouseover\",this._onMouseOver,{passive:!0}),this._isSelectOneElement&&(this.containerOuter.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.containerOuter.element.addEventListener(\"blur\",this._onBlur,{passive:!0})),this.input.element.addEventListener(\"keyup\",this._onKeyUp,{passive:!0}),this.input.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.input.element.addEventListener(\"blur\",this._onBlur,{passive:!0}),this.input.element.form&&this.input.element.form.addEventListener(\"reset\",this._onFormReset,{passive:!0}),this.input.addEventListeners()},r._removeEventListeners=function(){var e=document.documentElement;e.removeEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.removeEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.removeEventListener(\"mousedown\",this._onMouseDown,!0),e.removeEventListener(\"click\",this._onClick),e.removeEventListener(\"touchmove\",this._onTouchMove),this.dropdown.element.removeEventListener(\"mouseover\",this._onMouseOver),this._isSelectOneElement&&(this.containerOuter.element.removeEventListener(\"focus\",this._onFocus),this.containerOuter.element.removeEventListener(\"blur\",this._onBlur)),this.input.element.removeEventListener(\"keyup\",this._onKeyUp),this.input.element.removeEventListener(\"focus\",this._onFocus),this.input.element.removeEventListener(\"blur\",this._onBlur),this.input.element.form&&this.input.element.form.removeEventListener(\"reset\",this._onFormReset),this.input.removeEventListeners()},r._onKeyDown=function(e){var t,i=e.target,n=e.keyCode,s=e.ctrlKey,r=e.metaKey,o=this._store.activeItems,a=this.input.isFocussed,c=this.dropdown.isActive,l=this.itemList.hasChildren(),h=String.fromCharCode(n),u=J,d=Y,p=Z,m=Q,f=ee,v=te,g=ie,_=ne,b=se,y=s||r;!this._isTextElement&&/[a-zA-Z0-9-_ ]/.test(h)&&this.showDropdown();var E=((t={})[m]=this._onAKey,t[p]=this._onEnterKey,t[f]=this._onEscapeKey,t[v]=this._onDirectionKey,t[_]=this._onDirectionKey,t[g]=this._onDirectionKey,t[b]=this._onDirectionKey,t[d]=this._onDeleteKey,t[u]=this._onDeleteKey,t);E[n]&&E[n]({event:e,target:i,keyCode:n,metaKey:r,activeItems:o,hasFocusedInput:a,hasActiveDropdown:c,hasItems:l,hasCtrlDownKeyPressed:y})},r._onKeyUp=function(e){var t=e.target,i=e.keyCode,n=this.input.value,s=this._store.activeItems,r=this._canAddItem(s,n),o=J,a=Y;if(this._isTextElement)if(r.notice&&n){var c=this._getTemplate(\"notice\",r.notice);this.dropdown.element.innerHTML=c.outerHTML,this.showDropdown(!0)}else this.hideDropdown(!0);else{var l=(i===o||i===a)&&!t.value,h=!this._isTextElement&&this._isSearching,u=this._canSearch&&r.response;l&&h?(this._isSearching=!1,this._store.dispatch(ve(!0))):u&&this._handleSearch(this.input.value)}this._canSearch=this.config.searchEnabled},r._onAKey=function(e){var t=e.hasItems;e.hasCtrlDownKeyPressed&&t&&(this._canSearch=!1,this.config.removeItems&&!this.input.value&&this.input.element===document.activeElement&&this.highlightAll())},r._onEnterKey=function(e){var t=e.event,i=e.target,n=e.activeItems,s=e.hasActiveDropdown,r=Z,o=i.hasAttribute(\"data-button\");if(this._isTextElement&&i.value){var a=this.input.value;this._canAddItem(n,a).response&&(this.hideDropdown(!0),this._addItem({value:a}),this._triggerChange(a),this.clearInput())}if(o&&(this._handleButtonAction(n,i),t.preventDefault()),s){var c=this.dropdown.getChild(\".\"+this.config.classNames.highlightedState);c&&(n[0]&&(n[0].keyCode=r),this._handleChoiceAction(n,c)),t.preventDefault()}else this._isSelectOneElement&&(this.showDropdown(),t.preventDefault())},r._onEscapeKey=function(e){e.hasActiveDropdown&&(this.hideDropdown(!0),this.containerOuter.focus())},r._onDirectionKey=function(e){var t,i,n,s=e.event,r=e.hasActiveDropdown,o=e.keyCode,a=e.metaKey,c=ie,l=ne,h=se;if(r||this._isSelectOneElement){this.showDropdown(),this._canSearch=!1;var u,d=o===c||o===h?1:-1;if(a||o===h||o===l)u=d>0?this.dropdown.element.querySelector(\"[data-choice-selectable]:last-of-type\"):this.dropdown.element.querySelector(\"[data-choice-selectable]\");else{var p=this.dropdown.element.querySelector(\".\"+this.config.classNames.highlightedState);u=p?function(e,t,i){if(void 0===i&&(i=1),e instanceof Element&&\"string\"==typeof t){for(var n=(i>0?\"next\":\"previous\")+\"ElementSibling\",s=e[n];s;){if(s.matches(t))return s;s=s[n]}return s}}(p,\"[data-choice-selectable]\",d):this.dropdown.element.querySelector(\"[data-choice-selectable]\")}u&&(t=u,i=this.choiceList.element,void 0===(n=d)&&(n=1),t&&(n>0?i.scrollTop+i.offsetHeight>=t.offsetTop+t.offsetHeight:t.offsetTop>=i.scrollTop)||this.choiceList.scrollToChildElement(u,d),this._highlightChoice(u)),s.preventDefault()}},r._onDeleteKey=function(e){var t=e.event,i=e.target,n=e.hasFocusedInput,s=e.activeItems;!n||i.value||this._isSelectOneElement||(this._handleBackspace(s),t.preventDefault())},r._onTouchMove=function(){this._wasTap&&(this._wasTap=!1)},r._onTouchEnd=function(e){var t=(e||e.touches[0]).target;this._wasTap&&this.containerOuter.element.contains(t)&&((t===this.containerOuter.element||t===this.containerInner.element)&&(this._isTextElement?this.input.focus():this._isSelectMultipleElement&&this.showDropdown()),e.stopPropagation()),this._wasTap=!0},r._onMouseDown=function(e){var t=e.target;if(t instanceof HTMLElement){if(Ee&&this.choiceList.element.contains(t)){var i=this.choiceList.element.firstElementChild,n=\"ltr\"===this._direction?e.offsetX>=i.offsetWidth:e.offsetX<i.offsetLeft;this._isScrollingOnIe=n}if(t!==this.input.element){var s=t.closest(\"[data-button],[data-item],[data-choice]\");if(s instanceof HTMLElement){var r=e.shiftKey,o=this._store.activeItems,a=s.dataset;\"button\"in a?this._handleButtonAction(o,s):\"item\"in a?this._handleItemAction(o,s,r):\"choice\"in a&&this._handleChoiceAction(o,s)}e.preventDefault()}}},r._onMouseOver=function(e){var t=e.target;t instanceof HTMLElement&&\"choice\"in t.dataset&&this._highlightChoice(t)},r._onClick=function(e){var t=e.target;this.containerOuter.element.contains(t)?this.dropdown.isActive||this.containerOuter.isDisabled?this._isSelectOneElement&&t!==this.input.element&&!this.dropdown.element.contains(t)&&this.hideDropdown():this._isTextElement?document.activeElement!==this.input.element&&this.input.focus():(this.showDropdown(),this.containerOuter.focus()):(this._store.highlightedActiveItems.length>0&&this.unhighlightAll(),this.containerOuter.removeFocusState(),this.hideDropdown(!0))},r._onFocus=function(e){var t,i=this,n=e.target;this.containerOuter.element.contains(n)&&((t={}).text=function(){n===i.input.element&&i.containerOuter.addFocusState()},t[\"select-one\"]=function(){i.containerOuter.addFocusState(),n===i.input.element&&i.showDropdown(!0)},t[\"select-multiple\"]=function(){n===i.input.element&&(i.showDropdown(!0),i.containerOuter.addFocusState())},t)[this.passedElement.element.type]()},r._onBlur=function(e){var t=this,i=e.target;if(this.containerOuter.element.contains(i)&&!this._isScrollingOnIe){var n,s=this._store.activeItems.some((function(e){return e.highlighted}));((n={}).text=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),s&&t.unhighlightAll(),t.hideDropdown(!0))},n[\"select-one\"]=function(){t.containerOuter.removeFocusState(),(i===t.input.element||i===t.containerOuter.element&&!t._canSearch)&&t.hideDropdown(!0)},n[\"select-multiple\"]=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),t.hideDropdown(!0),s&&t.unhighlightAll())},n)[this.passedElement.element.type]()}else this._isScrollingOnIe=!1,this.input.element.focus()},r._onFormReset=function(){this._store.dispatch({type:\"RESET_TO\",state:this._initialState})},r._highlightChoice=function(e){var t=this;void 0===e&&(e=null);var i=Array.from(this.dropdown.element.querySelectorAll(\"[data-choice-selectable]\"));if(i.length){var n=e;Array.from(this.dropdown.element.querySelectorAll(\".\"+this.config.classNames.highlightedState)).forEach((function(e){e.classList.remove(t.config.classNames.highlightedState),e.setAttribute(\"aria-selected\",\"false\")})),n?this._highlightPosition=i.indexOf(n):(n=i.length>this._highlightPosition?i[this._highlightPosition]:i[i.length-1])||(n=i[0]),n.classList.add(this.config.classNames.highlightedState),n.setAttribute(\"aria-selected\",\"true\"),this.passedElement.triggerEvent(B,{el:n}),this.dropdown.isActive&&(this.input.setActiveDescendant(n.id),this.containerOuter.setActiveDescendant(n.id))}},r._addItem=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.choiceId,r=void 0===s?-1:s,o=e.groupId,a=void 0===o?-1:o,c=e.customProperties,l=void 0===c?null:c,h=e.placeholder,u=void 0!==h&&h,d=e.keyCode,p=void 0===d?null:d,m=\"string\"==typeof t?t.trim():t,f=p,v=l,g=this._store.items,_=n||m,b=r||-1,y=a>=0?this._store.getGroupById(a):null,E=g?g.length+1:1;return this.config.prependValue&&(m=this.config.prependValue+m.toString()),this.config.appendValue&&(m+=this.config.appendValue.toString()),this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.choiceId,r=e.groupId,o=e.customProperties,a=e.placeholder,c=e.keyCode;return{type:W,value:t,label:i,id:n,choiceId:s,groupId:r,customProperties:o,placeholder:a,keyCode:c}}({value:m,label:_,id:E,choiceId:b,groupId:a,customProperties:l,placeholder:u,keyCode:f})),this._isSelectOneElement&&this.removeActiveItems(E),this.passedElement.triggerEvent(K,{id:E,value:m,label:_,customProperties:v,groupValue:y&&y.value?y.value:void 0,keyCode:f}),this},r._removeItem=function(e){if(!e||!E(\"Object\",e))return this;var t=e.id,i=e.value,n=e.label,s=e.choiceId,r=e.groupId,o=r>=0?this._store.getGroupById(r):null;return this._store.dispatch(function(e,t){return{type:X,id:e,choiceId:t}}(t,s)),o&&o.value?this.passedElement.triggerEvent(R,{id:t,value:i,label:n,groupValue:o.value}):this.passedElement.triggerEvent(R,{id:t,value:i,label:n}),this},r._addChoice=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.isSelected,r=void 0!==s&&s,o=e.isDisabled,a=void 0!==o&&o,c=e.groupId,l=void 0===c?-1:c,h=e.customProperties,u=void 0===h?null:h,d=e.placeholder,p=void 0!==d&&d,m=e.keyCode,f=void 0===m?null:m;if(null!=t){var v=this._store.choices,g=n||t,_=v?v.length+1:1,b=this._baseId+\"-\"+this._idNames.itemChoice+\"-\"+_;this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.groupId,r=e.disabled,o=e.elementId,a=e.customProperties,c=e.placeholder,l=e.keyCode;return{type:V,value:t,label:i,id:n,groupId:s,disabled:r,elementId:o,customProperties:a,placeholder:c,keyCode:l}}({id:_,groupId:l,elementId:b,value:t,label:g,disabled:a,customProperties:u,placeholder:p,keyCode:f})),r&&this._addItem({value:t,label:g,choiceId:_,customProperties:u,placeholder:p,keyCode:f})}},r._addGroup=function(e){var t=this,i=e.group,n=e.id,s=e.valueKey,r=void 0===s?\"value\":s,o=e.labelKey,a=void 0===o?\"label\":o,c=E(\"Object\",i)?i.choices:Array.from(i.getElementsByTagName(\"OPTION\")),l=n||Math.floor((new Date).valueOf()*Math.random()),h=!!i.disabled&&i.disabled;c?(this._store.dispatch(_e({value:i.label,id:l,active:!0,disabled:h})),c.forEach((function(e){var i=e.disabled||e.parentNode&&e.parentNode.disabled;t._addChoice({value:e[r],label:E(\"Object\",e)?e[a]:e.innerHTML,isSelected:e.selected,isDisabled:i,groupId:l,customProperties:e.customProperties,placeholder:e.placeholder})}))):this._store.dispatch(_e({value:i.label,id:i.id,active:!1,disabled:i.disabled}))},r._getTemplate=function(e){var t;if(!e)return null;for(var i=this.config.classNames,n=arguments.length,s=new Array(n>1?n-1:0),r=1;r<n;r++)s[r-1]=arguments[r];return(t=this._templates[e]).call.apply(t,[this,i].concat(s))},r._createTemplates=function(){var e=this.config.callbackOnCreateTemplates,t={};e&&\"function\"==typeof e&&(t=e.call(this,S)),this._templates=o()(fe,t)},r._createElements=function(){this.containerOuter=new re({element:this._getTemplate(\"containerOuter\",this._direction,this._isSelectElement,this._isSelectOneElement,this.config.searchEnabled,this.passedElement.element.type),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.containerInner=new re({element:this._getTemplate(\"containerInner\"),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.input=new ae({element:this._getTemplate(\"input\",this._placeholderValue),classNames:this.config.classNames,type:this.passedElement.element.type,preventPaste:!this.config.paste}),this.choiceList=new ce({element:this._getTemplate(\"choiceList\",this._isSelectOneElement)}),this.itemList=new ce({element:this._getTemplate(\"itemList\",this._isSelectOneElement)}),this.dropdown=new k({element:this._getTemplate(\"dropdown\"),classNames:this.config.classNames,type:this.passedElement.element.type})},r._createStructure=function(){this.passedElement.conceal(),this.containerInner.wrap(this.passedElement.element),this.containerOuter.wrap(this.containerInner.element),this._isSelectOneElement?this.input.placeholder=this.config.searchPlaceholderValue||\"\":this._placeholderValue&&(this.input.placeholder=this._placeholderValue,this.input.setWidth()),this.containerOuter.element.appendChild(this.containerInner.element),this.containerOuter.element.appendChild(this.dropdown.element),this.containerInner.element.appendChild(this.itemList.element),this._isTextElement||this.dropdown.element.appendChild(this.choiceList.element),this._isSelectOneElement?this.config.searchEnabled&&this.dropdown.element.insertBefore(this.input.element,this.dropdown.element.firstChild):this.containerInner.element.appendChild(this.input.element),this._isSelectElement&&(this._highlightPosition=0,this._isSearching=!1,this._startLoading(),this._presetGroups.length?this._addPredefinedGroups(this._presetGroups):this._addPredefinedChoices(this._presetChoices),this._stopLoading()),this._isTextElement&&this._addPredefinedItems(this._presetItems)},r._addPredefinedGroups=function(e){var t=this,i=this.passedElement.placeholderOption;i&&\"SELECT\"===i.parentNode.tagName&&this._addChoice({value:i.value,label:i.innerHTML,isSelected:i.selected,isDisabled:i.disabled,placeholder:!0}),e.forEach((function(e){return t._addGroup({group:e,id:e.id||null})}))},r._addPredefinedChoices=function(e){var t=this;this.config.shouldSort&&e.sort(this.config.sorter);var i=e.some((function(e){return e.selected})),n=e.findIndex((function(e){return void 0===e.disabled||!e.disabled}));e.forEach((function(e,s){var r=e.value,o=e.label,a=e.customProperties,c=e.placeholder;if(t._isSelectElement)if(e.choices)t._addGroup({group:e,id:e.id||null});else{var l=!(!t._isSelectOneElement||i||s!==n)||e.selected,h=e.disabled;t._addChoice({value:r,label:o,isSelected:l,isDisabled:h,customProperties:a,placeholder:c})}else t._addChoice({value:r,label:o,isSelected:e.selected,isDisabled:e.disabled,customProperties:a,placeholder:c})}))},r._addPredefinedItems=function(e){var t=this;e.forEach((function(e){\"object\"==typeof e&&e.value&&t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}),\"string\"==typeof e&&t._addItem({value:e})}))},r._setChoiceOrItem=function(e){var t=this;({object:function(){e.value&&(t._isTextElement?t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}):t._addChoice({value:e.value,label:e.label,isSelected:!0,isDisabled:!1,customProperties:e.customProperties,placeholder:e.placeholder}))},string:function(){t._isTextElement?t._addItem({value:e}):t._addChoice({value:e,label:e,isSelected:!0,isDisabled:!1})}})[y(e).toLowerCase()]()},r._findAndSelectChoiceByValue=function(e){var t=this,i=this._store.choices.find((function(i){return t.config.valueComparer(i.value,e)}));i&&!i.selected&&this._addItem({value:i.value,label:i.label,choiceId:i.id,groupId:i.groupId,customProperties:i.customProperties,placeholder:i.placeholder,keyCode:i.keyCode})},r._generatePlaceholderValue=function(){if(this._isSelectElement){var e=this.passedElement.placeholderOption;return!!e&&e.text}var t=this.config,i=t.placeholder,n=t.placeholderValue,s=this.passedElement.element.dataset;if(i){if(n)return n;if(s.placeholder)return s.placeholder}return!1},n}();t.default=Se}]).default},\"object\"==typeof i&&\"object\"==typeof t?t.exports=s():\"function\"==typeof define&&define.amd?define([],s):\"object\"==typeof i?i.Choices=s():n.Choices=s()},\n",
       "      440: function _(n,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default=\"\\n.bk-root {\\n  /*===============================\\n=            Choices            =\\n===============================*/\\n  /*=====  End of Choices  ======*/\\n}\\n.bk-root .choices {\\n  position: relative;\\n  margin-bottom: 24px;\\n  font-size: 16px;\\n}\\n.bk-root .choices:focus {\\n  outline: none;\\n}\\n.bk-root .choices:last-child {\\n  margin-bottom: 0;\\n}\\n.bk-root .choices.is-disabled .choices__inner,\\n.bk-root .choices.is-disabled .choices__input {\\n  background-color: #eaeaea;\\n  cursor: not-allowed;\\n  -webkit-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n}\\n.bk-root .choices.is-disabled .choices__item {\\n  cursor: not-allowed;\\n}\\n.bk-root .choices [hidden] {\\n  display: none !important;\\n}\\n.bk-root .choices[data-type*='select-one'] {\\n  cursor: pointer;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__inner {\\n  padding-bottom: 7.5px;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__input {\\n  display: block;\\n  width: 100%;\\n  padding: 10px;\\n  border-bottom: 1px solid #dddddd;\\n  background-color: #ffffff;\\n  margin: 0;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__button {\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n  padding: 0;\\n  background-size: 8px;\\n  position: absolute;\\n  top: 50%;\\n  right: 0;\\n  margin-top: -10px;\\n  margin-right: 25px;\\n  height: 20px;\\n  width: 20px;\\n  border-radius: 10em;\\n  opacity: 0.5;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__button:hover,\\n.bk-root .choices[data-type*='select-one'] .choices__button:focus {\\n  opacity: 1;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__button:focus {\\n  box-shadow: 0px 0px 0px 2px #00bcd4;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__item[data-value=''] .choices__button {\\n  display: none;\\n}\\n.bk-root .choices[data-type*='select-one']:after {\\n  content: '';\\n  height: 0;\\n  width: 0;\\n  border-style: solid;\\n  border-color: #333333 transparent transparent transparent;\\n  border-width: 5px;\\n  position: absolute;\\n  right: 11.5px;\\n  top: 50%;\\n  margin-top: -2.5px;\\n  pointer-events: none;\\n}\\n.bk-root .choices[data-type*='select-one'].is-open:after {\\n  border-color: transparent transparent #333333 transparent;\\n  margin-top: -7.5px;\\n}\\n.bk-root .choices[data-type*='select-one'][dir='rtl']:after {\\n  left: 11.5px;\\n  right: auto;\\n}\\n.bk-root .choices[data-type*='select-one'][dir='rtl'] .choices__button {\\n  right: auto;\\n  left: 0;\\n  margin-left: 25px;\\n  margin-right: 0;\\n}\\n.bk-root .choices[data-type*='select-multiple'] .choices__inner,\\n.bk-root .choices[data-type*='text'] .choices__inner {\\n  cursor: text;\\n}\\n.bk-root .choices[data-type*='select-multiple'] .choices__button,\\n.bk-root .choices[data-type*='text'] .choices__button {\\n  position: relative;\\n  display: inline-block;\\n  margin-top: 0;\\n  margin-right: -4px;\\n  margin-bottom: 0;\\n  margin-left: 8px;\\n  padding-left: 16px;\\n  border-left: 1px solid #008fa1;\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n  background-size: 8px;\\n  width: 8px;\\n  line-height: 1;\\n  opacity: 0.75;\\n  border-radius: 0;\\n}\\n.bk-root .choices[data-type*='select-multiple'] .choices__button:hover,\\n.bk-root .choices[data-type*='select-multiple'] .choices__button:focus,\\n.bk-root .choices[data-type*='text'] .choices__button:hover,\\n.bk-root .choices[data-type*='text'] .choices__button:focus {\\n  opacity: 1;\\n}\\n.bk-root .choices__inner {\\n  display: inline-block;\\n  vertical-align: top;\\n  width: 100%;\\n  background-color: #f9f9f9;\\n  padding: 7.5px 7.5px 3.75px;\\n  border: 1px solid #dddddd;\\n  border-radius: 2.5px;\\n  font-size: 14px;\\n  min-height: 44px;\\n  overflow: hidden;\\n}\\n.bk-root .is-focused .choices__inner,\\n.bk-root .is-open .choices__inner {\\n  border-color: #b7b7b7;\\n}\\n.bk-root .is-open .choices__inner {\\n  border-radius: 2.5px 2.5px 0 0;\\n}\\n.bk-root .is-flipped.is-open .choices__inner {\\n  border-radius: 0 0 2.5px 2.5px;\\n}\\n.bk-root .choices__list {\\n  margin: 0;\\n  padding-left: 0;\\n  list-style: none;\\n}\\n.bk-root .choices__list--single {\\n  display: inline-block;\\n  padding: 4px 16px 4px 4px;\\n  width: 100%;\\n}\\n.bk-root [dir='rtl'] .choices__list--single {\\n  padding-right: 4px;\\n  padding-left: 16px;\\n}\\n.bk-root .choices__list--single .choices__item {\\n  width: 100%;\\n}\\n.bk-root .choices__list--multiple {\\n  display: inline;\\n}\\n.bk-root .choices__list--multiple .choices__item {\\n  display: inline-block;\\n  vertical-align: middle;\\n  border-radius: 20px;\\n  padding: 4px 10px;\\n  font-size: 12px;\\n  font-weight: 500;\\n  margin-right: 3.75px;\\n  margin-bottom: 3.75px;\\n  background-color: #00bcd4;\\n  border: 1px solid #00a5bb;\\n  color: #ffffff;\\n  word-break: break-all;\\n  box-sizing: border-box;\\n}\\n.bk-root .choices__list--multiple .choices__item[data-deletable] {\\n  padding-right: 5px;\\n}\\n.bk-root [dir='rtl'] .choices__list--multiple .choices__item {\\n  margin-right: 0;\\n  margin-left: 3.75px;\\n}\\n.bk-root .choices__list--multiple .choices__item.is-highlighted {\\n  background-color: #00a5bb;\\n  border: 1px solid #008fa1;\\n}\\n.bk-root .is-disabled .choices__list--multiple .choices__item {\\n  background-color: #aaaaaa;\\n  border: 1px solid #919191;\\n}\\n.bk-root .choices__list--dropdown {\\n  visibility: hidden;\\n  z-index: 1;\\n  position: absolute;\\n  width: 100%;\\n  background-color: #ffffff;\\n  border: 1px solid #dddddd;\\n  top: 100%;\\n  margin-top: -1px;\\n  border-bottom-left-radius: 2.5px;\\n  border-bottom-right-radius: 2.5px;\\n  overflow: hidden;\\n  word-break: break-all;\\n  will-change: visibility;\\n}\\n.bk-root .choices__list--dropdown.is-active {\\n  visibility: visible;\\n}\\n.bk-root .is-open .choices__list--dropdown {\\n  border-color: #b7b7b7;\\n}\\n.bk-root .is-flipped .choices__list--dropdown {\\n  top: auto;\\n  bottom: 100%;\\n  margin-top: 0;\\n  margin-bottom: -1px;\\n  border-radius: 0.25rem 0.25rem 0 0;\\n}\\n.bk-root .choices__list--dropdown .choices__list {\\n  position: relative;\\n  max-height: 300px;\\n  overflow: auto;\\n  -webkit-overflow-scrolling: touch;\\n  will-change: scroll-position;\\n}\\n.bk-root .choices__list--dropdown .choices__item {\\n  position: relative;\\n  padding: 10px;\\n  font-size: 14px;\\n}\\n.bk-root [dir='rtl'] .choices__list--dropdown .choices__item {\\n  text-align: right;\\n}\\n@media (min-width: 640px) {\\n  .bk-root .choices__list--dropdown .choices__item--selectable {\\n    padding-right: 100px;\\n  }\\n  .bk-root .choices__list--dropdown .choices__item--selectable:after {\\n    content: attr(data-select-text);\\n    font-size: 12px;\\n    opacity: 0;\\n    position: absolute;\\n    right: 10px;\\n    top: 50%;\\n    transform: translateY(-50%);\\n  }\\n  .bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable {\\n    text-align: right;\\n    padding-left: 100px;\\n    padding-right: 10px;\\n  }\\n  .bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable:after {\\n    right: auto;\\n    left: 10px;\\n  }\\n}\\n.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted {\\n  background-color: #f2f2f2;\\n}\\n.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted:after {\\n  opacity: 0.5;\\n}\\n.bk-root .choices__item {\\n  cursor: default;\\n}\\n.bk-root .choices__item--selectable {\\n  cursor: pointer;\\n}\\n.bk-root .choices__item--disabled {\\n  cursor: not-allowed;\\n  -webkit-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  opacity: 0.5;\\n}\\n.bk-root .choices__heading {\\n  font-weight: 600;\\n  font-size: 12px;\\n  padding: 10px;\\n  border-bottom: 1px solid #f7f7f7;\\n  color: gray;\\n}\\n.bk-root .choices__button {\\n  text-indent: -9999px;\\n  -webkit-appearance: none;\\n  -moz-appearance: none;\\n  appearance: none;\\n  border: 0;\\n  background-color: transparent;\\n  background-repeat: no-repeat;\\n  background-position: center;\\n  cursor: pointer;\\n}\\n.bk-root .choices__button:focus {\\n  outline: none;\\n}\\n.bk-root .choices__input {\\n  display: inline-block;\\n  vertical-align: baseline;\\n  background-color: #f9f9f9;\\n  font-size: 14px;\\n  margin-bottom: 5px;\\n  border: 0;\\n  border-radius: 0;\\n  max-width: 100%;\\n  padding: 4px 0 4px 2px;\\n}\\n.bk-root .choices__input:focus {\\n  outline: 0;\\n}\\n.bk-root [dir='rtl'] .choices__input {\\n  padding-right: 2px;\\n  padding-left: 0;\\n}\\n.bk-root .choices__placeholder {\\n  opacity: 0.5;\\n}\\n.bk-root .choices {\\n  width: 100%;\\n}\\n.bk-root .choices {\\n  box-sizing: border-box;\\n}\\n.bk-root .choices *,\\n.bk-root .choices *:before,\\n.bk-root .choices *:after {\\n  box-sizing: inherit;\\n}\\n.bk-root .choices__inner .choices__item.light {\\n  background-color: rgba(0, 126, 255, 0.08);\\n  border-radius: 5px;\\n  border: 1px solid rgba(0, 126, 255, 0.24);\\n  color: #007eff;\\n}\\n.bk-root .choices__inner .choices__item.solid {\\n  background-color: #1f77b4;\\n  border: none;\\n  border-radius: 5px;\\n  color: white;\\n}\\n.bk-root .choices__inner .choices__item.solid .is-highlighted {\\n  background-color: #1f77b4;\\n  border: none;\\n}\\n.bk-root .choices__input {\\n  background-color: transparent;\\n}\\n.bk-root .choices__inner {\\n  background: transparent;\\n  border: 1px solid darkgray;\\n  border-radius: 5px;\\n  min-height: unset;\\n}\\n.bk-root .choices__list {\\n  white-space: initial;\\n}\\n.bk-root .choices[data-type*=select-multiple] .choices__button.light {\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDA3ZWZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n}\\n.bk-root .choices[data-type*=select-multiple] .choices__button.solid {\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n  border-left: 1px solid white;\\n  opacity: 1;\\n}\\n\"},\n",
       "      441: function _(e,t,l){Object.defineProperty(l,\"__esModule\",{value:!0});const i=e(1),n=i.__importStar(e(188)),s=e(410),u=e(72),h=e(11),o=i.__importStar(e(18)),a=e(442),r=e(412),d=/^[-+]?\\d*$/,p=/^[-+]?\\d*\\.?\\d*(?:(?:\\d|\\d.)[eE][-+]?)*\\d*$/;class _ extends s.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.value.change,()=>{this.input_el.value=this.format_value,this.old_value=this.input_el.value}),this.connect(this.model.properties.low.change,()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&h.assert(t<=l,\"Invalid bounds, low must be inferior to high\"),null!=e&&null!=t&&(this.model.value=Math.max(e,t))}),this.connect(this.model.properties.high.change,()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&h.assert(l>=t,\"Invalid bounds, high must be superior to low\"),null!=e&&null!=l&&(this.model.value=Math.min(e,l))}),this.connect(this.model.properties.high.change,()=>this.input_el.placeholder=this.model.placeholder),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled),this.connect(this.model.properties.placeholder.change,()=>this.input_el.placeholder=this.model.placeholder)}get format_value(){return null!=this.model.value?this.model.pretty(this.model.value):\"\"}_set_input_filter(e){this.input_el.addEventListener(\"input\",()=>{const{selectionStart:t,selectionEnd:l}=this.input_el;if(e(this.input_el.value))this.old_value=this.input_el.value;else{const e=this.old_value.length-this.input_el.value.length;this.input_el.value=this.old_value,t&&l&&this.input_el.setSelectionRange(t-1,l+e)}})}render(){super.render(),this.input_el=u.input({type:\"text\",class:r.bk_input,name:this.model.name,value:this.format_value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.old_value=this.format_value,this.set_input_filter(),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.input_el.addEventListener(\"focusout\",()=>this.input_el.value=this.format_value),this.group_el.appendChild(this.input_el)}set_input_filter(){\"int\"==this.model.mode?this._set_input_filter(e=>d.test(e)):\"float\"==this.model.mode&&this._set_input_filter(e=>p.test(e))}bound_value(e){let t=e;const{low:l,high:i}=this.model;return t=null!=l?Math.max(l,t):t,t=null!=i?Math.min(i,t):t,t}get value(){let e=\"\"!==this.input_el.value?Number(this.input_el.value):null;return null!=e&&(e=this.bound_value(e)),e}change_input(){null==this.value?this.model.value=null:Number.isNaN(this.value)||(this.model.value=this.value)}}l.NumericInputView=_,_.__name__=\"NumericInputView\";class m extends s.InputWidget{constructor(e){super(e)}static init_NumericInput(){this.prototype.default_view=_,this.define({value:[o.Number,null],placeholder:[o.String,\"\"],mode:[o.Any,\"int\"],format:[o.Any],low:[o.Number,null],high:[o.Number,null]})}_formatter(e,t){return a.isString(t)?n.format(e,t):t.doFormat([e],{loc:0})[0]}pretty(e){return null!=this.format?this._formatter(e,this.format):\"\"+e}}l.NumericInput=m,m.__name__=\"NumericInput\",m.init_NumericInput()},\n",
       "      442: function _(t,_,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=t(1);e.__exportStar(t(13),r),e.__exportStar(t(9),r),e.__exportStar(t(29),r),e.__exportStar(t(443),r),e.__exportStar(t(8),r),e.__exportStar(t(25),r)},\n",
       "      443: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});class n{constructor(e){this.seed=e%2147483647,this.seed<=0&&(this.seed+=2147483646)}integer(){return this.seed=48271*this.seed%2147483647,this.seed}float(){return(this.integer()-1)/2147483646}floats(e){const t=new Array(e);for(let s=0;s<e;s++)t[s]=this.float();return t}}s.Random=n,n.__name__=\"Random\",s.random=new n(Date.now())},\n",
       "      444: function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=e(430),i=e(72);class n extends s.MarkupView{render(){super.render();const e=i.pre({style:{overflow:\"auto\"}},this.model.text);this.markup_el.appendChild(e)}}r.PreTextView=n,n.__name__=\"PreTextView\";class _ extends s.Markup{constructor(e){super(e)}static init_PreText(){this.prototype.default_view=n}}r.PreText=_,_.__name__=\"PreText\",_.init_PreText()},\n",
       "      445: function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),a=t(415),n=t(72),u=i.__importStar(t(18)),s=t(173);class _ extends a.ButtonGroupView{change_active(t){this.model.active!==t&&(this.model.active=t)}_update_active(){const{active:t}=this.model;this._buttons.forEach((o,e)=>{n.classes(o).toggle(s.bk_active,t===e)})}}e.RadioButtonGroupView=_,_.__name__=\"RadioButtonGroupView\";class c extends a.ButtonGroup{constructor(t){super(t)}static init_RadioButtonGroup(){this.prototype.default_view=_,this.define({active:[u.Any,null]})}}e.RadioButtonGroup=c,c.__name__=\"RadioButtonGroup\",c.init_RadioButtonGroup()},\n",
       "      446: function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),a=e(72),s=e(29),o=n.__importStar(e(18)),d=e(417),l=e(173),p=e(412);class r extends d.InputGroupView{render(){super.render();const e=a.div({class:[p.bk_input_group,this.model.inline?l.bk_inline:null]});this.el.appendChild(e);const i=s.uniqueId(),{active:t,labels:n}=this.model;this._inputs=[];for(let s=0;s<n.length;s++){const o=a.input({type:\"radio\",name:i,value:\"\"+s});o.addEventListener(\"change\",()=>this.change_active(s)),this._inputs.push(o),this.model.disabled&&(o.disabled=!0),s==t&&(o.checked=!0);const d=a.label({},o,a.span({},n[s]));e.appendChild(d)}}change_active(e){this.model.active=e}}t.RadioGroupView=r,r.__name__=\"RadioGroupView\";class u extends d.InputGroup{constructor(e){super(e)}static init_RadioGroup(){this.prototype.default_view=r,this.define({active:[o.Number],labels:[o.Array,[]],inline:[o.Boolean,!1]})}}t.RadioGroup=u,u.__name__=\"RadioGroup\",u.init_RadioGroup()},\n",
       "      447: function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1).__importStar(e(188)),a=e(423),n=e(8);class o extends a.AbstractRangeSliderView{}r.RangeSliderView=o,o.__name__=\"RangeSliderView\";class s extends a.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_RangeSlider(){this.prototype.default_view=o,this.override({format:\"0[.]00\"})}_formatter(e,t){return n.isString(t)?i.format(e,t):t.doFormat([e],{loc:0})[0]}}r.RangeSlider=s,s.__name__=\"RangeSlider\",s.init_RangeSlider()},\n",
       "      448: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(72),l=e(8),o=e(13),p=n.__importStar(e(18)),u=e(410),a=e(412);class _ extends u.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,options:t}=this.model.properties;this.on_change(e,()=>{this._update_value()}),this.on_change(t,()=>{s.empty(this.input_el),s.append(this.input_el,...this.options_el())})}options_el(){function e(e){return e.map(e=>{let t,i;return l.isString(e)?t=i=e:[t,i]=e,s.option({value:t},i)})}const{options:t}=this.model;return l.isArray(t)?e(t):o.entries(t).map(([t,i])=>s.optgroup({label:t},e(i)))}render(){super.render(),this.input_el=s.select({class:a.bk_input,name:this.model.name,disabled:this.model.disabled},this.options_el()),this._update_value(),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.input_el)}change_input(){const e=this.input_el.value;this.model.value=e,super.change_input()}_update_value(){const{value:e}=this.model;null!=e&&0!=e.length&&(this.input_el.value=this.model.value)}}i.SelectView=_,_.__name__=\"SelectView\";class h extends u.InputWidget{constructor(e){super(e)}static init_Select(){this.prototype.default_view=_,this.define({value:[p.String,\"\"],options:[p.Any,[]]})}}i.Select=h,h.__name__=\"Select\",h.init_Select()},\n",
       "      449: function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1).__importStar(e(188)),o=e(423),s=e(8);class _ extends o.AbstractSliderView{}r.SliderView=_,_.__name__=\"SliderView\";class a extends o.AbstractSlider{constructor(e){super(e),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_Slider(){this.prototype.default_view=_,this.override({format:\"0[.]00\"})}_formatter(e,t){return s.isString(t)?i.format(e,t):t.doFormat([e],{loc:0})[0]}}r.Slider=a,a.__name__=\"Slider\",a.init_Slider()},\n",
       "      450: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(441),l=n.__importStar(e(18)),r=e(72),{min:o,max:_,floor:a,abs:h}=Math;function u(e){return a(e)!==e?e.toFixed(16).replace(/0+$/,\"\").split(\".\")[1].length:0}class p extends s.NumericInputView{*buttons(){yield this.btn_up_el,yield this.btn_down_el}initialize(){super.initialize(),this._interval=200}connect_signals(){super.connect_signals();const e=this.model.properties;this.on_change(e.disabled,()=>{for(const e of this.buttons())r.toggle_attribute(e,\"disabled\",this.model.disabled)})}render(){super.render(),this.wrapper_el=r.div({class:\"bk-spin-wrapper\"}),this.group_el.replaceChild(this.wrapper_el,this.input_el),this.btn_up_el=r.button({class:\"bk-spin-btn bk-spin-btn-up\"}),this.btn_down_el=r.button({class:\"bk-spin-btn bk-spin-btn-down\"}),this.wrapper_el.appendChild(this.input_el),this.wrapper_el.appendChild(this.btn_up_el),this.wrapper_el.appendChild(this.btn_down_el);for(const e of this.buttons())r.toggle_attribute(e,\"disabled\",this.model.disabled),e.addEventListener(\"mousedown\",e=>this._btn_mouse_down(e)),e.addEventListener(\"mouseup\",()=>this._btn_mouse_up()),e.addEventListener(\"mouseleave\",()=>this._btn_mouse_leave());this.input_el.addEventListener(\"keydown\",e=>this._input_key_down(e)),this.input_el.addEventListener(\"keyup\",()=>this.model.value_throttled=this.model.value),this.input_el.addEventListener(\"wheel\",e=>this._input_mouse_wheel(e)),this.input_el.addEventListener(\"wheel\",function(e,t,i=!1){let n;return function(...s){const l=this,r=i&&void 0===n;void 0!==n&&clearTimeout(n),n=setTimeout((function(){n=void 0,i||e.apply(l,s)}),t),r&&e.apply(l,s)}}(()=>{this.model.value_throttled=this.model.value},this.model.wheel_wait,!1))}get precision(){const{low:e,high:t,step:i}=this.model;return _(...[e,t,i].map(h).reduce((e,t)=>(null!=t&&e.push(t),e),[]).map(u))}_start_incrementation(e){clearInterval(this._interval_handle),this._counter=0;const{step:t}=this.model,i=e=>{if(this._counter+=1,this._counter%5==0){const t=Math.floor(this._counter/5);t<10?(clearInterval(this._interval_handle),this._interval_handle=setInterval(()=>i(e),this._interval/(t+1))):t>=10&&t<=13&&(clearInterval(this._interval_handle),this._interval_handle=setInterval(()=>i(2*e),this._interval/10))}this.increment(e)};this._interval_handle=setInterval(()=>i(e*t),this._interval)}_stop_incrementation(){clearInterval(this._interval_handle),this.model.value_throttled=this.model.value}_btn_mouse_down(e){e.preventDefault();const t=e.currentTarget===this.btn_up_el?1:-1;this.increment(t*this.model.step),this.input_el.focus(),this._start_incrementation(t)}_btn_mouse_up(){this._stop_incrementation()}_btn_mouse_leave(){this._stop_incrementation()}_input_mouse_wheel(e){if(document.activeElement===this.input_el){e.preventDefault();const t=e.deltaY>0?-1:1;this.increment(t*this.model.step)}}_input_key_down(e){switch(e.keyCode){case r.Keys.Up:return e.preventDefault(),this.increment(this.model.step);case r.Keys.Down:return e.preventDefault(),this.increment(-this.model.step);case r.Keys.PageUp:return e.preventDefault(),this.increment(this.model.page_step_multiplier*this.model.step);case r.Keys.PageDown:return e.preventDefault(),this.increment(-this.model.page_step_multiplier*this.model.step)}}adjust_to_precision(e){return this.bound_value(Number(e.toFixed(this.precision)))}increment(e){const{low:t,high:i}=this.model;null==this.model.value?e>0?this.model.value=null!=t?t:null!=i?o(0,i):0:e<0&&(this.model.value=null!=i?i:null!=t?_(t,0):0):this.model.value=this.adjust_to_precision(this.model.value+e)}change_input(){super.change_input(),this.model.value_throttled=this.model.value}}i.SpinnerView=p,p.__name__=\"SpinnerView\";class d extends s.NumericInput{constructor(e){super(e)}static init_Spinner(){this.prototype.default_view=p,this.define({value_throttled:[l.Number,null],step:[l.Number,1],page_step_multiplier:[l.Number,10],wheel_wait:[l.Number,100]}),this.override({mode:\"float\"})}}i.Spinner=d,d.__name__=\"Spinner\",d.init_Spinner()},\n",
       "      451: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(410),l=e(72),h=s.__importStar(e(18)),o=e(412);class a extends n.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.value.change,()=>this.input_el.value=this.model.value),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled),this.connect(this.model.properties.placeholder.change,()=>this.input_el.placeholder=this.model.placeholder),this.connect(this.model.properties.rows.change,()=>this.input_el.rows=this.model.rows),this.connect(this.model.properties.cols.change,()=>this.input_el.cols=this.model.cols),this.connect(this.model.properties.max_length.change,()=>this.input_el.maxLength=this.model.max_length)}render(){super.render(),this.input_el=l.textarea({class:o.bk_input,name:this.model.name,disabled:this.model.disabled,placeholder:this.model.placeholder,cols:this.model.cols,rows:this.model.rows,maxLength:this.model.max_length}),this.input_el.textContent=this.model.value,this.input_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.input_el)}change_input(){this.model.value=this.input_el.value,super.change_input()}}i.TextAreaInputView=a,a.__name__=\"TextAreaInputView\";class p extends n.InputWidget{constructor(e){super(e)}static init_TextAreaInput(){this.prototype.default_view=a,this.define({value:[h.String,\"\"],value_input:[h.String,\"\"],placeholder:[h.String,\"\"],cols:[h.Number,20],rows:[h.Number,2],max_length:[h.Number,500]})}}i.TextAreaInput=p,p.__name__=\"TextAreaInput\",p.init_TextAreaInput()},\n",
       "      452: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),c=e(404),o=e(72),a=s.__importStar(e(18)),n=e(173);class l extends c.AbstractButtonView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>this._update_active())}render(){super.render(),this._update_active()}click(){this.model.active=!this.model.active,super.click()}_update_active(){o.classes(this.button_el).toggle(n.bk_active,this.model.active)}}i.ToggleView=l,l.__name__=\"ToggleView\";class _ extends c.AbstractButton{constructor(e){super(e)}static init_Toggle(){this.prototype.default_view=l,this.define({active:[a.Boolean,!1]}),this.override({label:\"Toggle\"})}}i.Toggle=_,_.__name__=\"Toggle\",_.init_Toggle()},\n",
       "      }, 402, {\"models/widgets/main\":402,\"models/widgets/index\":403,\"models/widgets/abstract_button\":404,\"models/widgets/control\":405,\"models/widgets/widget\":472,\"models/widgets/abstract_icon\":407,\"models/widgets/autocomplete_input\":408,\"models/widgets/text_input\":409,\"models/widgets/input_widget\":410,\"styles/widgets/inputs.css\":411,\"styles/widgets/inputs\":412,\"models/widgets/button\":413,\"models/widgets/checkbox_button_group\":414,\"models/widgets/button_group\":415,\"models/widgets/checkbox_group\":416,\"models/widgets/input_group\":417,\"models/widgets/color_picker\":418,\"models/widgets/date_picker\":419,\"styles/widgets/flatpickr.css\":421,\"models/widgets/date_range_slider\":422,\"models/widgets/abstract_slider\":423,\"styles/widgets/sliders\":425,\"styles/widgets/nouislider.css\":426,\"styles/widgets/sliders.css\":427,\"models/widgets/date_slider\":428,\"models/widgets/div\":429,\"models/widgets/markup\":430,\"styles/clearfix\":431,\"styles/clearfix.css\":432,\"models/widgets/dropdown\":433,\"models/widgets/file_input\":434,\"models/widgets/multiselect\":435,\"models/widgets/paragraph\":436,\"models/widgets/password_input\":437,\"models/widgets/multichoice\":438,\"styles/widgets/choices.css\":440,\"models/widgets/numeric_input\":441,\"api/linalg\":442,\"core/util/random\":443,\"models/widgets/pretext\":444,\"models/widgets/radio_button_group\":445,\"models/widgets/radio_group\":446,\"models/widgets/range_slider\":447,\"models/widgets/selectbox\":448,\"models/widgets/slider\":449,\"models/widgets/spinner\":450,\"models/widgets/textarea_input\":451,\"models/widgets/toggle\":452}, {});\n",
       "      })\n",
       "\n",
       "\n",
       "      /* END bokeh-widgets.min.js */\n",
       "    },\n",
       "    \n",
       "    function(Bokeh) {\n",
       "      /* BEGIN bokeh-tables.min.js */\n",
       "      /*!\n",
       "       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n",
       "       * All rights reserved.\n",
       "       * \n",
       "       * Redistribution and use in source and binary forms, with or without modification,\n",
       "       * are permitted provided that the following conditions are met:\n",
       "       * \n",
       "       * Redistributions of source code must retain the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer.\n",
       "       * \n",
       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer in the documentation\n",
       "       * and/or other materials provided with the distribution.\n",
       "       * \n",
       "       * Neither the name of Anaconda nor the names of any contributors\n",
       "       * may be used to endorse or promote products derived from this software\n",
       "       * without specific prior written permission.\n",
       "       * \n",
       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
       "      */\n",
       "      (function(root, factory) {\n",
       "        factory(root[\"Bokeh\"], \"2.2.1\");\n",
       "      })(this, function(Bokeh, version) {\n",
       "        var define;\n",
       "        return (function(modules, entry, aliases, externals) {\n",
       "          const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n",
       "          if (bokeh != null) {\n",
       "            return bokeh.register_plugin(modules, entry, aliases);\n",
       "          } else {\n",
       "            throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n",
       "          }\n",
       "        })\n",
       "      ({\n",
       "      453: function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(1).__importStar(e(454));o.Tables=r;e(7).register_models(r)},\n",
       "      454: function _(a,g,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=a(1);e.__exportStar(a(455),r),e.__exportStar(a(475),r);var t=a(456);r.DataTable=t.DataTable;var o=a(474);r.TableColumn=o.TableColumn;var n=a(473);r.TableWidget=n.TableWidget;var u=a(481);r.AvgAggregator=u.AvgAggregator,r.MinAggregator=u.MinAggregator,r.MaxAggregator=u.MaxAggregator,r.SumAggregator=u.SumAggregator;var l=a(482);r.GroupingInfo=l.GroupingInfo,r.DataCube=l.DataCube},\n",
       "      455: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1).__importStar(e(18)),r=e(72),a=e(78),n=e(81),l=e(456),u=e(478);class d extends a.DOMView{constructor(e){const{model:t,parent:i}=e.column;super(Object.assign({model:t,parent:i},e)),this.args=e,this.initialize(),this.render()}get emptyValue(){return null}initialize(){super.initialize(),this.inputEl=this._createInput(),this.defaultValue=null}async lazy_initialize(){throw new Error(\"unsupported\")}css_classes(){return super.css_classes().concat(u.bk_cell_editor)}render(){super.render(),this.args.container.append(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()}renderEditor(){}disableNavigation(){this.inputEl.addEventListener(\"keydown\",e=>{switch(e.keyCode){case r.Keys.Left:case r.Keys.Right:case r.Keys.Up:case r.Keys.Down:case r.Keys.PageUp:case r.Keys.PageDown:e.stopImmediatePropagation()}})}destroy(){this.remove()}focus(){this.inputEl.focus()}show(){}hide(){}position(){}getValue(){return this.inputEl.value}setValue(e){this.inputEl.value=e}serializeValue(){return this.getValue()}isValueChanged(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue}applyValue(e,t){const i=this.args.grid.getData(),s=i.index.indexOf(e[l.DTINDEX_NAME]);i.setField(s,this.args.column.field,t)}loadValue(e){const t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)}validateValue(e){if(this.args.column.validator){const t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}}validate(){return this.validateValue(this.getValue())}}i.CellEditorView=d,d.__name__=\"CellEditorView\";class o extends n.Model{}i.CellEditor=o,o.__name__=\"CellEditor\";class _ extends d{get emptyValue(){return\"\"}_createInput(){return r.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}}i.StringEditorView=_,_.__name__=\"StringEditorView\";class c extends o{static init_StringEditor(){this.prototype.default_view=_,this.define({completions:[s.Array,[]]})}}i.StringEditor=c,c.__name__=\"StringEditor\",c.init_StringEditor();class p extends d{_createInput(){return r.textarea()}renderEditor(){this.inputEl.focus(),this.inputEl.select()}}i.TextEditorView=p,p.__name__=\"TextEditorView\";class h extends o{static init_TextEditor(){this.prototype.default_view=p}}i.TextEditor=h,h.__name__=\"TextEditor\",h.init_TextEditor();class E extends d{_createInput(){return r.select()}renderEditor(){for(const e of this.model.options)this.inputEl.appendChild(r.option({value:e},e));this.focus()}}i.SelectEditorView=E,E.__name__=\"SelectEditorView\";class V extends o{static init_SelectEditor(){this.prototype.default_view=E,this.define({options:[s.Array,[]]})}}i.SelectEditor=V,V.__name__=\"SelectEditor\",V.init_SelectEditor();class m extends d{_createInput(){return r.input({type:\"text\"})}}i.PercentEditorView=m,m.__name__=\"PercentEditorView\";class f extends o{static init_PercentEditor(){this.prototype.default_view=m}}i.PercentEditor=f,f.__name__=\"PercentEditor\",f.init_PercentEditor();class x extends d{_createInput(){return r.input({type:\"checkbox\"})}renderEditor(){this.focus()}loadValue(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue}serializeValue(){return this.inputEl.checked}}i.CheckboxEditorView=x,x.__name__=\"CheckboxEditorView\";class w extends o{static init_CheckboxEditor(){this.prototype.default_view=x}}i.CheckboxEditor=w,w.__name__=\"CheckboxEditor\",w.init_CheckboxEditor();class g extends d{_createInput(){return r.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){return parseInt(this.getValue(),10)||0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:super.validateValue(e)}}i.IntEditorView=g,g.__name__=\"IntEditorView\";class y extends o{static init_IntEditor(){this.prototype.default_view=g,this.define({step:[s.Number,1]})}}i.IntEditor=y,y.__name__=\"IntEditor\",y.init_IntEditor();class v extends d{_createInput(){return r.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){return parseFloat(this.getValue())||0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:super.validateValue(e)}}i.NumberEditorView=v,v.__name__=\"NumberEditorView\";class b extends o{static init_NumberEditor(){this.prototype.default_view=v,this.define({step:[s.Number,.01]})}}i.NumberEditor=b,b.__name__=\"NumberEditor\",b.init_NumberEditor();class I extends d{_createInput(){return r.input({type:\"text\"})}}i.TimeEditorView=I,I.__name__=\"TimeEditorView\";class N extends o{static init_TimeEditor(){this.prototype.default_view=I}}i.TimeEditor=N,N.__name__=\"TimeEditor\",N.init_TimeEditor();class C extends d{_createInput(){return r.input({type:\"text\"})}get emptyValue(){return new Date}renderEditor(){this.inputEl.focus(),this.inputEl.select()}destroy(){super.destroy()}show(){super.show()}hide(){super.hide()}position(){return super.position()}getValue(){}setValue(e){}}i.DateEditorView=C,C.__name__=\"DateEditorView\";class D extends o{static init_DateEditor(){this.prototype.default_view=C}}i.DateEditor=D,D.__name__=\"DateEditor\",D.init_DateEditor()},\n",
       "      456: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),o=e(457),n=e(461),l=e(462),r=e(463),d=e(29),a=e(8),h=e(9),u=e(13),c=e(19),_=e(472),m=e(473),g=e(474),p=e(478),f=s.__importDefault(e(479)),b=s.__importDefault(e(480));i.DTINDEX_NAME=\"__bkdt_internal_index__\",i.AutosizeModes={fit_columns:\"FCV\",fit_viewport:\"FVC\",force_fit:\"LFF\",none:\"NOA\"};class w{constructor(e,t){this.init(e,t)}init(e,t){if(i.DTINDEX_NAME in e.data)throw new Error(`special name ${i.DTINDEX_NAME} cannot be used as a data table column`);this.source=e,this.view=t,this.index=[...this.view.indices]}getLength(){return this.index.length}getItem(e){const t={};for(const i of u.keys(this.source.data))t[i]=this.source.data[i][this.index[e]];return t[i.DTINDEX_NAME]=this.index[e],t}getField(e,t){return t==i.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]}setField(e,t,i){const s=this.index[e];this.source.patch({[t]:[[s,i]]})}getRecords(){return h.range(0,this.getLength()).map(e=>this.getItem(e))}getItems(){return this.getRecords()}slice(e,t,i){return e=null!=e?e:0,t=null!=t?t:this.getLength(),i=null!=i?i:1,h.range(e,t,i).map(e=>this.getItem(e))}sort(e){let t=e.map(e=>[e.sortCol.field,e.sortAsc?1:-1]);0==t.length&&(t=[[i.DTINDEX_NAME,1]]);const s=this.getRecords(),o=this.index.slice();this.index.sort((e,i)=>{for(const[n,l]of t){const t=s[o.indexOf(e)][n],r=s[o.indexOf(i)][n];if(t!==r)return a.isNumber(t)&&a.isNumber(r)?l*(t-r||+isNaN(t)-+isNaN(r)):\"\"+t>\"\"+r?l:-l}return 0})}}i.TableDataProvider=w,w.__name__=\"TableDataProvider\";class x extends _.WidgetView{constructor(){super(...arguments),this._in_selection_update=!1,this._warned_not_reorderable=!1,this._width=null}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render()),this.connect(this.model.source.streaming,()=>this.updateGrid()),this.connect(this.model.source.patching,()=>this.updateGrid()),this.connect(this.model.source.change,()=>this.updateGrid()),this.connect(this.model.source.properties.data.change,()=>this.updateGrid()),this.connect(this.model.source.selected.change,()=>this.updateSelection()),this.connect(this.model.source.selected.properties.indices.change,()=>this.updateSelection())}remove(){var e;null===(e=this.grid)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),f.default,b.default]}update_position(){super.update_position(),this.grid.resizeCanvas()}after_layout(){super.after_layout(),this.updateLayout(!0,!1)}box_sizing(){const e=super.box_sizing();return\"fit_viewport\"===this.model.autosize_mode&&null!=this._width&&(e.width=this._width),e}updateLayout(e,t){const s=this.autosize;s===i.AutosizeModes.fit_columns||s===i.AutosizeModes.force_fit?(e||this.grid.resizeCanvas(),this.grid.autosizeColumns()):e&&t&&s===i.AutosizeModes.fit_viewport&&this.invalidate_layout()}updateGrid(){if(this.model.view.compute_indices(),this.data.init(this.model.source,this.model.view),this.model.sortable){const e=this.grid.getColumns(),t=this.grid.getSortColumns().map(t=>({sortCol:{field:e[this.grid.getColumnIndex(t.columnId)].field},sortAsc:t.sortAsc}));this.data.sort(t)}this.grid.invalidate(),this.updateLayout(!0,!0)}updateSelection(){if(this._in_selection_update)return;const{selected:e}=this.model.source,t=e.indices.map(e=>this.data.index.indexOf(e)).sort();this._in_selection_update=!0,this.grid.setSelectedRows(t),this._in_selection_update=!1;const i=this.grid.getViewport(),s=this.model.get_scroll_index(i,t);null!=s&&this.grid.scrollRowToTop(s)}newIndexColumn(){return{id:d.uniqueId(),name:this.model.index_header,field:i.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:p.bk_cell_index,headerCssClass:p.bk_header_index}}css_classes(){return super.css_classes().concat(p.bk_data_table)}get autosize(){let e;return e=!0===this.model.fit_columns?i.AutosizeModes.force_fit:!1===this.model.fit_columns?i.AutosizeModes.none:i.AutosizeModes[this.model.autosize_mode],e}render(){var e;const t=this.model.columns.map(e=>Object.assign(Object.assign({},e.toColumn()),{parent:this}));let s=null;if(\"checkbox\"==this.model.selectable&&(s=new n.CheckboxSelectColumn({cssClass:p.bk_cell_select}),t.unshift(s.getColumnDefinition())),null!=this.model.index_position){const e=this.model.index_position,i=this.newIndexColumn();-1==e?t.push(i):e<-1?t.splice(e+1,0,i):t.splice(e,0,i)}let{reorderable:d}=this.model;!d||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(c.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),d=!1);let h=-1,u=!1;const{frozen_rows:_,frozen_columns:m}=this.model,g=null==m?-1:m-1;null!=_&&(u=_<0,h=Math.abs(_));const f={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:d,autosizeColsMode:this.autosize,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:this.model.auto_edit,autoHeight:!1,rowHeight:this.model.row_height,frozenColumn:g,frozenRow:h,frozenBottom:u},b=null!=this.grid;if(this.data=new w(this.model.source,this.model.view),this.grid=new r.Grid(this.el,this.data,t,f),this.autosize==i.AutosizeModes.fit_viewport){this.grid.autosizeColumns();let i=0;for(const s of t)i+=null!==(e=s.width)&&void 0!==e?e:0;this._width=Math.ceil(i)}if(this.grid.onSort.subscribe((e,t)=>{if(!this.model.sortable)return;const i=t.sortCols;null!=i&&(this.data.sort(i),this.grid.invalidate(),this.updateSelection(),this.grid.render(),this.model.header_row||this._hide_header(),this.model.update_sort_columns(i))}),!1!==this.model.selectable){this.grid.setSelectionModel(new o.RowSelectionModel({selectActiveRow:null==s})),null!=s&&this.grid.registerPlugin(s);const e={dataItemColumnValueExtractor(e,t){let i=e[t.field];return a.isString(i)&&(i=i.replace(/\\n/g,\"\\\\n\")),i},includeHeaderWhenCopying:!1};this.grid.registerPlugin(new l.CellExternalCopyManager(e)),this.grid.onSelectedRowsChanged.subscribe((e,t)=>{this._in_selection_update||(this.model.source.selected.indices=t.rows.map(e=>this.data.index[e]))}),this.updateSelection(),this.model.header_row||this._hide_header()}b&&this.updateLayout(b,!1)}_hide_header(){for(const e of this.el.querySelectorAll(\".slick-header-columns\"))e.style.height=\"0px\";this.grid.resizeCanvas()}}i.DataTableView=x,x.__name__=\"DataTableView\";class C extends m.TableWidget{constructor(e){super(e),this._sort_columns=[]}get sort_columns(){return this._sort_columns}static init_DataTable(){this.prototype.default_view=x,this.define(({Array:e,Boolean:t,Int:i,Ref:s,String:o,Enum:n,Or:l,Null:r})=>({autosize_mode:[n(\"fit_columns\",\"fit_viewport\",\"none\",\"force_fit\"),\"force_fit\"],auto_edit:[t,!1],columns:[e(s(g.TableColumn)),[]],fit_columns:[l(t,r),null],frozen_columns:[l(i,r),null],frozen_rows:[l(i,r),null],sortable:[t,!0],reorderable:[t,!0],editable:[t,!1],selectable:[l(t,n(\"checkbox\")),!0],index_position:[l(i,r),0],index_header:[o,\"#\"],index_width:[i,40],scroll_to_selection:[t,!0],header_row:[t,!0],row_height:[i,25]})),this.override({width:600,height:400})}update_sort_columns(e){this._sort_columns=e.map(({sortCol:e,sortAsc:t})=>({field:e.field,sortAsc:t}))}get_scroll_index(e,t){return this.scroll_to_selection&&0!=t.length?h.some(t,t=>e.top<=t&&t<=e.bottom)?null:Math.max(0,Math.min(...t)-1):null}}i.DataTable=C,C.__name__=\"DataTable\",C.init_DataTable()},\n",
       "      457: function _(e,t,n){var o=e(458),r=e(460);t.exports={RowSelectionModel:function(e){var t,n,l,i=[],c=this,u=new r.EventHandler,s={selectActiveRow:!0};function a(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function f(e){for(var t=[],n=0;n<e.length;n++)for(var o=e[n].fromRow;o<=e[n].toRow;o++)t.push(o);return t}function h(e){for(var n=[],o=t.getColumns().length-1,l=0;l<e.length;l++)n.push(new r.Range(e[l],0,e[l],o));return n}function w(){return f(i)}function g(e){(i&&0!==i.length||e&&0!==e.length)&&(i=e,c.onSelectedRangesChanged.notify(i))}function v(e,n){l.selectActiveRow&&null!=n.row&&g([new r.Range(n.row,0,n.row,t.getColumns().length-1)])}function p(e){var n=t.getActiveCell();if(t.getOptions().multiSelect&&n&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(e.which==r.keyCode.UP||e.which==r.keyCode.DOWN)){var o=w();o.sort((function(e,t){return e-t})),o.length||(o=[n.row]);var l,i=o[0],c=o[o.length-1];if((l=e.which==r.keyCode.DOWN?n.row<c||i==c?++c:++i:n.row<c?--c:--i)>=0&&l<t.getDataLength())t.scrollRowIntoView(l),g(h(function(e,t){var n,o=[];for(n=e;n<=t;n++)o.push(n);for(n=t;n<e;n++)o.push(n);return o}(i,c)));e.preventDefault(),e.stopPropagation()}}function y(e){var n=t.getCellFromEvent(e);if(!n||!t.canCellBeActive(n.row,n.cell))return!1;if(!t.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var r=f(i),l=o.inArray(n.row,r);if(-1===l&&(e.ctrlKey||e.metaKey))r.push(n.row),t.setActiveCell(n.row,n.cell);else if(-1!==l&&(e.ctrlKey||e.metaKey))r=o.grep(r,(function(e,t){return e!==n.row})),t.setActiveCell(n.row,n.cell);else if(r.length&&e.shiftKey){var c=r.pop(),u=Math.min(n.row,c),s=Math.max(n.row,c);r=[];for(var a=u;a<=s;a++)a!==c&&r.push(a);r.push(c),t.setActiveCell(n.row,n.cell)}return g(h(r)),e.stopImmediatePropagation(),!0}o.extend(this,{getSelectedRows:w,setSelectedRows:function(e){g(h(e))},getSelectedRanges:function(){return i},setSelectedRanges:g,init:function(n){l=o.extend(!0,{},s,e),t=n,u.subscribe(t.onActiveCellChanged,a(v)),u.subscribe(t.onKeyDown,a(p)),u.subscribe(t.onClick,a(y))},destroy:function(){u.unsubscribeAll()},pluginName:\"RowSelectionModel\",onSelectedRangesChanged:new r.Event})}}},\n",
       "      458: function _(e,n,f){n.exports=\"undefined\"!=typeof $?$:e(459)},\n",
       "      459: function _(e,t,n){\n",
       "      /*!\n",
       "           * jQuery JavaScript Library v3.5.1\n",
       "           * https://jquery.com/\n",
       "           *\n",
       "           * Includes Sizzle.js\n",
       "           * https://sizzlejs.com/\n",
       "           *\n",
       "           * Copyright JS Foundation and other contributors\n",
       "           * Released under the MIT license\n",
       "           * https://jquery.org/license\n",
       "           *\n",
       "           * Date: 2020-05-04T22:49Z\n",
       "           */\n",
       "      !function(e,n){\"use strict\";\"object\"==typeof t&&\"object\"==typeof t.exports?t.exports=e.document?n(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return n(e)}:n(e)}(\"undefined\"!=typeof window?window:this,(function(e,t){\"use strict\";var n=[],r=Object.getPrototypeOf,i=n.slice,o=n.flat?function(e){return n.flat.call(e)}:function(e){return n.concat.apply([],e)},a=n.push,s=n.indexOf,u={},l=u.toString,c=u.hasOwnProperty,f=c.toString,p=f.call(Object),d={},h=function(e){return\"function\"==typeof e&&\"number\"!=typeof e.nodeType},g=function(e){return null!=e&&e===e.window},v=e.document,y={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||v).createElement(\"script\");if(o.text=e,t)for(r in y)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?u[l.call(e)]||\"object\":typeof e}var b=function(e,t){return new b.fn.init(e,t)};function w(e){var t=!!e&&\"length\"in e&&e.length,n=x(e);return!h(e)&&!g(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&t>0&&t-1 in e)}b.fn=b.prototype={jquery:\"3.5.1\",constructor:b,length:0,toArray:function(){return i.call(this)},get:function(e){return null==e?i.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=b.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return b.each(this,e)},map:function(e){return this.pushStack(b.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(i.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(b.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(b.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:n.sort,splice:n.splice},b.extend=b.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for(\"boolean\"==typeof a&&(l=a,a=arguments[s]||{},s++),\"object\"==typeof a||h(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],\"__proto__\"!==t&&a!==r&&(l&&r&&(b.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||b.isPlainObject(n)?n:{},i=!1,a[t]=b.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},b.extend({expando:\"jQuery\"+(\"3.5.1\"+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==l.call(e))&&(!(t=r(e))||\"function\"==typeof(n=c.call(t,\"constructor\")&&t.constructor)&&f.call(n)===p)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){m(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(w(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(w(Object(e))?b.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:s.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,a=0,s=[];if(w(e))for(r=e.length;a<r;a++)null!=(i=t(e[a],a,n))&&s.push(i);else for(a in e)null!=(i=t(e[a],a,n))&&s.push(i);return o(s)},guid:1,support:d}),\"function\"==typeof Symbol&&(b.fn[Symbol.iterator]=n[Symbol.iterator]),b.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),(function(e,t){u[\"[object \"+t+\"]\"]=t.toLowerCase()}));var T=\n",
       "      /*!\n",
       "               * Sizzle CSS Selector Engine v2.3.5\n",
       "               * https://sizzlejs.com/\n",
       "               *\n",
       "               * Copyright JS Foundation and other contributors\n",
       "               * Released under the MIT license\n",
       "               * https://js.foundation/\n",
       "               *\n",
       "               * Date: 2020-03-14\n",
       "               */\n",
       "      function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,v,y,m,x,b=\"sizzle\"+1*new Date,w=e.document,T=0,C=0,E=ue(),S=ue(),k=ue(),A=ue(),N=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,j=[],q=j.pop,L=j.push,H=j.push,O=j.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",M=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\[\\\\da-fA-F]{1,6}\"+M+\"?|\\\\\\\\[^\\\\r\\\\n\\\\f]|[\\\\w-]|[^\\0-\\\\x7f])+\",W=\"\\\\[\"+M+\"*(\"+I+\")(?:\"+M+\"*([*^$|!~]?=)\"+M+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+M+\"*\\\\]\",F=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+W+\")*)|.*)\\\\)|)\",B=new RegExp(M+\"+\",\"g\"),$=new RegExp(\"^\"+M+\"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\"+M+\"+$\",\"g\"),_=new RegExp(\"^\"+M+\"*,\"+M+\"*\"),z=new RegExp(\"^\"+M+\"*([>+~]|\"+M+\")\"+M+\"*\"),U=new RegExp(M+\"|>\"),X=new RegExp(F),V=new RegExp(\"^\"+I+\"$\"),G={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+W),PSEUDO:new RegExp(\"^\"+F),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+M+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+M+\"*(?:([+-]|)\"+M+\"*(\\\\d+)|))\"+M+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+R+\")$\",\"i\"),needsContext:new RegExp(\"^\"+M+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+M+\"*((?:-\\\\d)?\\\\d*)\"+M+\"*\\\\)|)(?=[^-]|$)\",\"i\")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\\d$/i,K=/^[^{]+\\{\\s*\\[native \\w/,Z=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,ee=/[+~]/,te=new RegExp(\"\\\\\\\\[\\\\da-fA-F]{1,6}\"+M+\"?|\\\\\\\\([^\\\\r\\\\n\\\\f])\",\"g\"),ne=function(e,t){var n=\"0x\"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ie=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){p()},ae=be((function(e){return!0===e.disabled&&\"fieldset\"===e.nodeName.toLowerCase()}),{dir:\"parentNode\",next:\"legend\"});try{H.apply(j=O.call(w.childNodes),w.childNodes),j[w.childNodes.length].nodeType}catch(e){H={apply:j.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var o,s,l,c,f,h,y,m=t&&t.ownerDocument,w=t?t.nodeType:9;if(r=r||[],\"string\"!=typeof e||!e||1!==w&&9!==w&&11!==w)return r;if(!i&&(p(t),t=t||d,g)){if(11!==w&&(f=Z.exec(e)))if(o=f[1]){if(9===w){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return H.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return H.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!A[e+\" \"]&&(!v||!v.test(e))&&(1!==w||\"object\"!==t.nodeName.toLowerCase())){if(y=e,m=t,1===w&&(U.test(e)||z.test(e))){for((m=ee.test(e)&&ye(t.parentNode)||t)===t&&n.scope||((c=t.getAttribute(\"id\"))?c=c.replace(re,ie):t.setAttribute(\"id\",c=b)),s=(h=a(e)).length;s--;)h[s]=(c?\"#\"+c:\":scope\")+\" \"+xe(h[s]);y=h.join(\",\")}try{return H.apply(r,m.querySelectorAll(y)),r}catch(t){A(e,!0)}finally{c===b&&t.removeAttribute(\"id\")}}}return u(e.replace($,\"$1\"),t,r,i)}function ue(){var e=[];return function t(n,i){return e.push(n+\" \")>r.cacheLength&&delete t[e.shift()],t[n+\" \"]=i}}function le(e){return e[b]=!0,e}function ce(e){var t=d.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split(\"|\"),i=n.length;i--;)r.attrHandle[n[i]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return\"input\"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return(\"input\"===n||\"button\"===n)&&t.type===e}}function ge(e){return function(t){return\"form\"in t?t.parentNode&&!1===t.disabled?\"label\"in t?\"label\"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:\"label\"in t&&t.disabled===e}}function ve(e){return le((function(t){return t=+t,le((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function ye(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||\"HTML\")},p=se.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!=d&&9===a.nodeType&&a.documentElement?(h=(d=a).documentElement,g=!o(d),w!=d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener(\"unload\",oe,!1):i.attachEvent&&i.attachEvent(\"onunload\",oe)),n.scope=ce((function(e){return h.appendChild(e).appendChild(d.createElement(\"div\")),void 0!==e.querySelectorAll&&!e.querySelectorAll(\":scope fieldset div\").length})),n.attributes=ce((function(e){return e.className=\"i\",!e.getAttribute(\"className\")})),n.getElementsByTagName=ce((function(e){return e.appendChild(d.createComment(\"\")),!e.getElementsByTagName(\"*\").length})),n.getElementsByClassName=K.test(d.getElementsByClassName),n.getById=ce((function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute(\"id\")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if(\"*\"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=K.test(d.querySelectorAll))&&(ce((function(e){var t;h.appendChild(e).innerHTML=\"<a id='\"+b+\"'></a><select id='\"+b+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&v.push(\"[*^$]=\"+M+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||v.push(\"\\\\[\"+M+\"*(?:value|\"+R+\")\"),e.querySelectorAll(\"[id~=\"+b+\"-]\").length||v.push(\"~=\"),(t=d.createElement(\"input\")).setAttribute(\"name\",\"\"),e.appendChild(t),e.querySelectorAll(\"[name='']\").length||v.push(\"\\\\[\"+M+\"*name\"+M+\"*=\"+M+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\":checked\").length||v.push(\":checked\"),e.querySelectorAll(\"a#\"+b+\"+*\").length||v.push(\".#.+[+~]\"),e.querySelectorAll(\"\\\\\\f\"),v.push(\"[\\\\r\\\\n\\\\f]\")})),ce((function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=d.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&v.push(\"name\"+M+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&v.push(\":enabled\",\":disabled\"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&v.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),v.push(\",.*:\")}))),(n.matchesSelector=K.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ce((function(e){n.disconnectedMatch=m.call(e,\"*\"),m.call(e,\"[s!='']:x\"),y.push(\"!=\",F)})),v=v.length&&new RegExp(v.join(\"|\")),y=y.length&&new RegExp(y.join(\"|\")),t=K.test(h.compareDocumentPosition),x=t||K.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},N=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==d||e.ownerDocument==w&&x(w,e)?-1:t==d||t.ownerDocument==w&&x(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==d?-1:t==d?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return pe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?pe(a[r],s[r]):a[r]==w?-1:s[r]==w?1:0},d):d},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(p(e),n.matchesSelector&&g&&!A[t+\" \"]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){A(t,!0)}return se(t,d,null,[e]).length>0},se.contains=function(e,t){return(e.ownerDocument||e)!=d&&p(e),x(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},se.escape=function(e){return(e+\"\").replace(re,ie)},se.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},se.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(N),f){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return c=null,e},i=se.getText=function(e){var t,n=\"\",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{\">\":{dir:\"parentNode\",first:!0},\" \":{dir:\"parentNode\"},\"+\":{dir:\"previousSibling\",first:!0},\"~\":{dir:\"previousSibling\"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||\"\").replace(te,ne),\"~=\"===e[2]&&(e[3]=\" \"+e[3]+\" \"),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),\"nth\"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*(\"even\"===e[3]||\"odd\"===e[3])),e[5]=+(e[7]+e[8]||\"odd\"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(\")\",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+\" \"];return t||(t=new RegExp(\"(^|\"+M+\")\"+e+\"(\"+M+\"|$)\"))&&E(e,(function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")}))},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?\"!=\"===t:!t||(i+=\"\",\"=\"===t?i===n:\"!=\"===t?i!==n:\"^=\"===t?n&&0===i.indexOf(n):\"*=\"===t?n&&i.indexOf(n)>-1:\"$=\"===t?n&&i.slice(-n.length)===n:\"~=\"===t?(\" \"+i.replace(B,\" \")+\" \").indexOf(n)>-1:\"|=\"===t&&(i===n||i.slice(0,n.length+1)===n+\"-\"))}},CHILD:function(e,t,n,r,i){var o=\"nth\"!==e.slice(0,3),a=\"last\"!==e.slice(-4),s=\"of-type\"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?\"nextSibling\":\"previousSibling\",v=t.parentNode,y=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(v){if(o){for(;g;){for(p=t;p=p[g];)if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g=\"only\"===e&&!h&&\"nextSibling\"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){for(x=(d=(l=(c=(f=(p=v)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&v.childNodes[d];p=++d&&p&&p[g]||(x=d=0)||h.pop();)if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)for(;(p=++d&&p&&p[g]||(x=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==y:1!==p.nodeType)||!++x||(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||se.error(\"unsupported pseudo: \"+e);return i[b]?i(t):i.length>1?(n=[e,e,\"\",t],r.setFilters.hasOwnProperty(e.toLowerCase())?le((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=P(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:le((function(e){var t=[],n=[],r=s(e.replace($,\"$1\"));return r[b]?le((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:le((function(e){return function(t){return se(e,t).length>0}})),contains:le((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:le((function(e){return V.test(e||\"\")||se.error(\"unsupported lang: \"+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute(\"xml:lang\")||t.getAttribute(\"lang\"))return(n=n.toLowerCase())===e||0===n.indexOf(e+\"-\")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&!!e.checked||\"option\"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&\"button\"===e.type||\"button\"===t},text:function(e){var t;return\"input\"===e.nodeName.toLowerCase()&&\"text\"===e.type&&(null==(t=e.getAttribute(\"type\"))||\"text\"===t.toLowerCase())},first:ve((function(){return[0]})),last:ve((function(e,t){return[t-1]})),eq:ve((function(e,t,n){return[n<0?n+t:n]})),even:ve((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:ve((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:ve((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:ve((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}}).pseudos.nth=r.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=de(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=he(t);function me(){}function xe(e){for(var t=0,n=e.length,r=\"\";t<n;t++)r+=e[t].value;return r}function be(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&\"parentNode\"===o,s=C++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,p=[T,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(c=(f=t[b]||(t[b]={}))[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===T&&l[1]===s)return p[2]=l[2];if(c[o]=p,p[2]=e(t,n,u))return!0}return!1}}function we(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(e,t,n,r,i,o){return r&&!r[b]&&(r=Ce(r)),i&&!i[b]&&(i=Ce(i,o)),le((function(o,a,s,u){var l,c,f,p=[],d=[],h=a.length,g=o||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(t||\"*\",s.nodeType?[s]:s,[]),v=!e||!o&&t?g:Te(g,p,e,s,u),y=n?i||(o?e:h||r)?[]:a:v;if(n&&n(v,y,s,u),r)for(l=Te(y,d),r(l,[],s,u),c=l.length;c--;)(f=l[c])&&(y[d[c]]=!(v[d[c]]=f));if(o){if(i||e){if(i){for(l=[],c=y.length;c--;)(f=y[c])&&l.push(v[c]=f);i(null,y=[],l,u)}for(c=y.length;c--;)(f=y[c])&&(l=i?P(o,f):p[c])>-1&&(o[l]=!(a[l]=f))}}else y=Te(y===a?y.splice(h,y.length):y),i?i(null,a,y,u):H.apply(a,y)}))}function Ee(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[\" \"],u=a?1:0,c=be((function(e){return e===t}),s,!0),f=be((function(e){return P(t,e)>-1}),s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u<o;u++)if(n=r.relative[e[u].type])p=[be(we(p),n)];else{if((n=r.filter[e[u].type].apply(null,e[u].matches))[b]){for(i=++u;i<o&&!r.relative[e[i].type];i++);return Ce(u>1&&we(p),u>1&&xe(e.slice(0,u-1).concat({value:\" \"===e[u-2].type?\"*\":\"\"})).replace($,\"$1\"),n,u<i&&Ee(e.slice(u,i)),i<o&&Ee(e=e.slice(i)),i<o&&xe(e))}p.push(n)}return we(p)}return me.prototype=r.filters=r.pseudos,r.setFilters=new me,a=se.tokenize=function(e,t){var n,i,o,a,s,u,l,c=S[e+\" \"];if(c)return t?0:c.slice(0);for(s=e,u=[],l=r.preFilter;s;){for(a in n&&!(i=_.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),n=!1,(i=z.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace($,\" \")}),s=s.slice(n.length)),r.filter)!(i=G[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?se.error(e):S(e,u).slice(0)},s=se.compile=function(e,t){var n,i=[],o=[],s=k[e+\" \"];if(!s){for(t||(t=a(e)),n=t.length;n--;)(s=Ee(t[n]))[b]?i.push(s):o.push(s);(s=k(e,function(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,s,u,c){var f,h,v,y=0,m=\"0\",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG(\"*\",c),E=T+=null==w?1:Math.random()||.1,S=C.length;for(c&&(l=a==d||a||c);m!==S&&null!=(f=C[m]);m++){if(i&&f){for(h=0,a||f.ownerDocument==d||(p(f),s=!g);v=e[h++];)if(v(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!v&&f)&&y--,o&&x.push(f))}if(y+=m,n&&m!==y){for(h=0;v=t[h++];)v(x,b,a,s);if(o){if(y>0)for(;m--;)x[m]||b[m]||(b[m]=q.call(u));b=Te(b)}H.apply(u,b),c&&!o&&b.length>0&&y+t.length>1&&se.uniqueSort(u)}return c&&(T=E,l=w),x};return n?le(o):o}(o,i))).selector=e}return s},u=se.select=function(e,t,n,i){var o,u,l,c,f,p=\"function\"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&\"ID\"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(te,ne),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}for(o=G.needsContext.test(e)?0:u.length;o--&&(l=u[o],!r.relative[c=l.type]);)if((f=r.find[c])&&(i=f(l.matches[0].replace(te,ne),ee.test(u[0].type)&&ye(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&xe(u)))return H.apply(n,i),n;break}}return(p||s(e,d))(i,t,!g,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},n.sortStable=b.split(\"\").sort(N).join(\"\")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ce((function(e){return 1&e.compareDocumentPosition(d.createElement(\"fieldset\"))})),ce((function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")}))||fe(\"type|href|height|width\",(function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)})),n.attributes&&ce((function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")}))||fe(\"value\",(function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue})),ce((function(e){return null==e.getAttribute(\"disabled\")}))||fe(R,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),se}(e);b.find=T,b.expr=T.selectors,b.expr[\":\"]=b.expr.pseudos,b.uniqueSort=b.unique=T.uniqueSort,b.text=T.getText,b.isXMLDoc=T.isXML,b.contains=T.contains,b.escapeSelector=T.escape;var C=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&b(e).is(n))break;r.push(e)}return r},E=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},S=b.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var A=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i;function N(e,t,n){return h(t)?b.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?b.grep(e,(function(e){return e===t!==n})):\"string\"!=typeof t?b.grep(e,(function(e){return s.call(t,e)>-1!==n})):b.filter(t,e,n)}b.filter=function(e,t,n){var r=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===r.nodeType?b.find.matchesSelector(r,e)?[r]:[]:b.find.matches(e,b.grep(t,(function(e){return 1===e.nodeType})))},b.fn.extend({find:function(e){var t,n,r=this.length,i=this;if(\"string\"!=typeof e)return this.pushStack(b(e).filter((function(){for(t=0;t<r;t++)if(b.contains(i[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)b.find(e,i[t],n);return r>1?b.uniqueSort(n):n},filter:function(e){return this.pushStack(N(this,e||[],!1))},not:function(e){return this.pushStack(N(this,e||[],!0))},is:function(e){return!!N(this,\"string\"==typeof e&&S.test(e)?b(e):e||[],!1).length}});var D,j=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/;(b.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,\"string\"==typeof e){if(!(r=\"<\"===e[0]&&\">\"===e[e.length-1]&&e.length>=3?[null,e,null]:j.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof b?t[0]:t,b.merge(this,b.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:v,!0)),A.test(r[1])&&b.isPlainObject(t))for(r in t)h(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=v.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):h(e)?void 0!==n.ready?n.ready(e):e(b):b.makeArray(e,this)}).prototype=b.fn,D=b(v);var q=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function H(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}b.fn.extend({has:function(e){var t=b(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(b.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,i=this.length,o=[],a=\"string\"!=typeof e&&b(e);if(!S.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&b.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?b.uniqueSort(o):o)},index:function(e){return e?\"string\"==typeof e?s.call(b(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(b.uniqueSort(b.merge(this.get(),b(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),b.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,\"parentNode\")},parentsUntil:function(e,t,n){return C(e,\"parentNode\",n)},next:function(e){return H(e,\"nextSibling\")},prev:function(e){return H(e,\"previousSibling\")},nextAll:function(e){return C(e,\"nextSibling\")},prevAll:function(e){return C(e,\"previousSibling\")},nextUntil:function(e,t,n){return C(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return C(e,\"previousSibling\",n)},siblings:function(e){return E((e.parentNode||{}).firstChild,e)},children:function(e){return E(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(k(e,\"template\")&&(e=e.content||e),b.merge([],e.childNodes))}},(function(e,t){b.fn[e]=function(n,r){var i=b.map(this,t,n);return\"Until\"!==e.slice(-5)&&(r=n),r&&\"string\"==typeof r&&(i=b.filter(r,i)),this.length>1&&(L[e]||b.uniqueSort(i),q.test(e)&&i.reverse()),this.pushStack(i)}}));var O=/[^\\x20\\t\\r\\n\\f]+/g;function P(e){return e}function R(e){throw e}function M(e,t,n,r){var i;try{e&&h(i=e.promise)?i.call(e).done(t).fail(n):e&&h(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}b.Callbacks=function(e){e=\"string\"==typeof e?function(e){var t={};return b.each(e.match(O)||[],(function(e,n){t[n]=!0})),t}(e):b.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:\"\")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){b.each(n,(function(n,r){h(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&\"string\"!==x(r)&&t(r)}))}(arguments),n&&!t&&u()),this},remove:function(){return b.each(arguments,(function(e,t){for(var n;(n=b.inArray(t,o,n))>-1;)o.splice(n,1),n<=s&&s--})),this},has:function(e){return e?b.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n=\"\",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=\"\"),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},b.extend({Deferred:function(t){var n=[[\"notify\",\"progress\",b.Callbacks(\"memory\"),b.Callbacks(\"memory\"),2],[\"resolve\",\"done\",b.Callbacks(\"once memory\"),b.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",b.Callbacks(\"once memory\"),b.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return b.Deferred((function(t){b.each(n,(function(n,r){var i=h(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&h(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+\"With\"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t<o)){if((e=r.apply(s,u))===n.promise())throw new TypeError(\"Thenable self-resolution\");l=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,h(l)?i?l.call(e,a(o,n,P,i),a(o,n,R,i)):(o++,l.call(e,a(o,n,P,i),a(o,n,R,i),a(o,n,P,n.notifyWith))):(r!==P&&(s=void 0,u=[e]),(i||n.resolveWith)(s,u))}},c=i?l:function(){try{l()}catch(e){b.Deferred.exceptionHook&&b.Deferred.exceptionHook(e,c.stackTrace),t+1>=o&&(r!==R&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(b.Deferred.getStackHook&&(c.stackTrace=b.Deferred.getStackHook()),e.setTimeout(c))}}return b.Deferred((function(e){n[0][3].add(a(0,e,h(i)?i:P,e.notifyWith)),n[1][3].add(a(0,e,h(t)?t:P)),n[2][3].add(a(0,e,h(r)?r:R))})).promise()},promise:function(e){return null!=e?b.extend(e,i):i}},o={};return b.each(n,(function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add((function(){r=s}),n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+\"With\"](this===o?void 0:this,arguments),this},o[t[0]+\"With\"]=a.fireWith})),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),o=i.call(arguments),a=b.Deferred(),s=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?i.call(arguments):n,--t||a.resolveWith(r,o)}};if(t<=1&&(M(e,a.done(s(n)).resolve,a.reject,!t),\"pending\"===a.state()||h(o[n]&&o[n].then)))return a.then();for(;n--;)M(o[n],s(n),a.reject);return a.promise()}});var I=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;b.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&I.test(t.name)&&e.console.warn(\"jQuery.Deferred exception: \"+t.message,t.stack,n)},b.readyException=function(t){e.setTimeout((function(){throw t}))};var W=b.Deferred();function F(){v.removeEventListener(\"DOMContentLoaded\",F),e.removeEventListener(\"load\",F),b.ready()}b.fn.ready=function(e){return W.then(e).catch((function(e){b.readyException(e)})),this},b.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--b.readyWait:b.isReady)||(b.isReady=!0,!0!==e&&--b.readyWait>0||W.resolveWith(v,[b]))}}),b.ready.then=W.then,\"complete\"===v.readyState||\"loading\"!==v.readyState&&!v.documentElement.doScroll?e.setTimeout(b.ready):(v.addEventListener(\"DOMContentLoaded\",F),e.addEventListener(\"load\",F));var B=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if(\"object\"===x(n))for(s in i=!0,n)B(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,h(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(b(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},$=/^-ms-/,_=/-([a-z])/g;function z(e,t){return t.toUpperCase()}function U(e){return e.replace($,\"ms-\").replace(_,z)}var X=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function V(){this.expando=b.expando+V.uid++}V.uid=1,V.prototype={cache:function(e){var t=e[this.expando];return t||(t={},X(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if(\"string\"==typeof t)i[U(t)]=n;else for(r in t)i[U(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][U(t)]},access:function(e,t,n){return void 0===t||t&&\"string\"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(U):(t=U(t))in r?[t]:t.match(O)||[]).length;for(;n--;)delete r[t[n]]}(void 0===t||b.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!b.isEmptyObject(t)}};var G=new V,Y=new V,Q=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,J=/[A-Z]/g;function K(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r=\"data-\"+t.replace(J,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(r))){try{n=function(e){return\"true\"===e||\"false\"!==e&&(\"null\"===e?null:e===+e+\"\"?+e:Q.test(e)?JSON.parse(e):e)}(n)}catch(e){}Y.set(e,t,n)}else n=void 0;return n}b.extend({hasData:function(e){return Y.hasData(e)||G.hasData(e)},data:function(e,t,n){return Y.access(e,t,n)},removeData:function(e,t){Y.remove(e,t)},_data:function(e,t,n){return G.access(e,t,n)},_removeData:function(e,t){G.remove(e,t)}}),b.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Y.get(o),1===o.nodeType&&!G.get(o,\"hasDataAttrs\"))){for(n=a.length;n--;)a[n]&&0===(r=a[n].name).indexOf(\"data-\")&&(r=U(r.slice(5)),K(o,r,i[r]));G.set(o,\"hasDataAttrs\",!0)}return i}return\"object\"==typeof e?this.each((function(){Y.set(this,e)})):B(this,(function(t){var n;if(o&&void 0===t)return void 0!==(n=Y.get(o,e))||void 0!==(n=K(o,e))?n:void 0;this.each((function(){Y.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){Y.remove(this,e)}))}}),b.extend({queue:function(e,t,n){var r;if(e)return t=(t||\"fx\")+\"queue\",r=G.get(e,t),n&&(!r||Array.isArray(n)?r=G.access(e,t,b.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||\"fx\";var n=b.queue(e,t),r=n.length,i=n.shift(),o=b._queueHooks(e,t);\"inprogress\"===i&&(i=n.shift(),r--),i&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete o.stop,i.call(e,(function(){b.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return G.get(e,n)||G.access(e,n,{empty:b.Callbacks(\"once memory\").add((function(){G.remove(e,[t+\"queue\",n])}))})}}),b.fn.extend({queue:function(e,t){var n=2;return\"string\"!=typeof e&&(t=e,e=\"fx\",n--),arguments.length<n?b.queue(this[0],e):void 0===t?this:this.each((function(){var n=b.queue(this,e,t);b._queueHooks(this,e),\"fx\"===e&&\"inprogress\"!==n[0]&&b.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){b.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,r=1,i=b.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";a--;)(n=G.get(o[a],e+\"queueHooks\"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var Z=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,ee=new RegExp(\"^(?:([+-])=|)(\"+Z+\")([a-z%]*)$\",\"i\"),te=[\"Top\",\"Right\",\"Bottom\",\"Left\"],ne=v.documentElement,re=function(e){return b.contains(e.ownerDocument,e)},ie={composed:!0};ne.getRootNode&&(re=function(e){return b.contains(e.ownerDocument,e)||e.getRootNode(ie)===e.ownerDocument});var oe=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&re(e)&&\"none\"===b.css(e,\"display\")};function ae(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return b.css(e,t,\"\")},u=s(),l=n&&n[3]||(b.cssNumber[t]?\"\":\"px\"),c=e.nodeType&&(b.cssNumber[t]||\"px\"!==l&&+u)&&ee.exec(b.css(e,t));if(c&&c[3]!==l){for(u/=2,l=l||c[3],c=+u||1;a--;)b.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,b.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var se={};function ue(e){var t,n=e.ownerDocument,r=e.nodeName,i=se[r];return i||(t=n.body.appendChild(n.createElement(r)),i=b.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===i&&(i=\"block\"),se[r]=i,i)}function le(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)(r=e[o]).style&&(n=r.style.display,t?(\"none\"===n&&(i[o]=G.get(r,\"display\")||null,i[o]||(r.style.display=\"\")),\"\"===r.style.display&&oe(r)&&(i[o]=ue(r))):\"none\"!==n&&(i[o]=\"none\",G.set(r,\"display\",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}b.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each((function(){oe(this)?b(this).show():b(this).hide()}))}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i,he=/^$|^module$|\\/(?:java|ecma)script/i;ce=v.createDocumentFragment().appendChild(v.createElement(\"div\")),(fe=v.createElement(\"input\")).setAttribute(\"type\",\"radio\"),fe.setAttribute(\"checked\",\"checked\"),fe.setAttribute(\"name\",\"t\"),ce.appendChild(fe),d.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML=\"<textarea>x</textarea>\",d.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML=\"<option></option>\",d.option=!!ce.lastChild;var ge={thead:[1,\"<table>\",\"</table>\"],col:[2,\"<table><colgroup>\",\"</colgroup></table>\"],tr:[2,\"<table><tbody>\",\"</tbody></table>\"],td:[3,\"<table><tbody><tr>\",\"</tr></tbody></table>\"],_default:[0,\"\",\"\"]};function ve(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&k(e,t)?b.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)G.set(e[n],\"globalEval\",!t||G.get(t[n],\"globalEval\"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,d.option||(ge.optgroup=ge.option=[1,\"<select multiple='multiple'>\",\"</select>\"]);var me=/<|&#?\\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if(\"object\"===x(o))b.merge(p,o.nodeType?[o]:o);else if(me.test(o)){for(a=a||f.appendChild(t.createElement(\"div\")),s=(de.exec(o)||[\"\",\"\"])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+b.htmlPrefilter(o)+u[2],c=u[0];c--;)a=a.lastChild;b.merge(p,a.childNodes),(a=f.firstChild).textContent=\"\"}else p.push(t.createTextNode(o));for(f.textContent=\"\",d=0;o=p[d++];)if(r&&b.inArray(o,r)>-1)i&&i.push(o);else if(l=re(o),a=ve(f.appendChild(o),\"script\"),l&&ye(a),n)for(c=0;o=a[c++];)he.test(o.type||\"\")&&n.push(o);return f}var be=/^key/,we=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\\.(.+)|)/;function Ce(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return v.activeElement}catch(e){}}()==(\"focus\"===t)}function ke(e,t,n,r,i,o){var a,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&(\"string\"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return b().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=b.guid++)),e.each((function(){b.event.add(this,t,i,r,n)}))}function Ae(e,t,n){n?(G.set(e,t,!1),b.event.add(e,t,{namespace:!1,handler:function(e){var r,o,a=G.get(this,t);if(1&e.isTrigger&&this[t]){if(a.length)(b.event.special[t]||{}).delegateType&&e.stopPropagation();else if(a=i.call(arguments),G.set(this,t,a),r=n(this,t),this[t](),a!==(o=G.get(this,t))||r?G.set(this,t,!1):o={},a!==o)return e.stopImmediatePropagation(),e.preventDefault(),o.value}else a.length&&(G.set(this,t,{value:b.event.trigger(b.extend(a[0],b.Event.prototype),a.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===G.get(e,t)&&b.event.add(e,t,Ce)}b.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=G.get(e);if(X(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&b.find.matchesSelector(ne,i),n.guid||(n.guid=b.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(t){return void 0!==b&&b.event.triggered!==t.type?b.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||\"\").match(O)||[\"\"]).length;l--;)d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d&&(f=b.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=b.event.special[d]||{},c=b.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&b.expr.match.needsContext.test(i),namespace:h.join(\".\")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),b.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=G.hasData(e)&&G.get(e);if(v&&(u=v.events)){for(l=(t=(t||\"\").match(O)||[\"\"]).length;l--;)if(d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d){for(f=b.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&(\"**\"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||b.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)b.event.remove(e,d+t[l],n,r,!0);b.isEmptyObject(u)&&G.remove(e,\"handle events\")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=b.event.fix(e),l=(G.get(this,\"events\")||Object.create(null))[u.type]||[],c=b.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){for(a=b.event.handlers.call(this,u,l),t=0;(i=a[t++])&&!u.isPropagationStopped();)for(u.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!u.isImmediatePropagationStopped();)u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((b.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!(\"click\"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&(\"click\"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+\" \"]&&(a[i]=r.needsContext?b(i,this).index(l)>-1:b.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(b.Event.prototype,e,{enumerable:!0,configurable:!0,get:h(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[b.expando]?e:new b.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&k(t,\"input\")&&Ae(t,\"click\",Ce),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&k(t,\"input\")&&Ae(t,\"click\"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&k(t,\"input\")&&G.get(t,\"click\")||k(t,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},b.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},b.Event=function(e,t){if(!(this instanceof b.Event))return new b.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ce:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&b.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[b.expando]=!0},b.Event.prototype={constructor:b.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ce,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ce,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ce,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},b.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&be.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&we.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},b.event.addProp),b.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){b.event.special[e]={setup:function(){return Ae(this,e,Se),!1},trigger:function(){return Ae(this,e),!0},delegateType:t}})),b.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},(function(e,t){b.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||b.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}})),b.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,b(e.delegateTarget).off(r.namespace?r.origType+\".\"+r.namespace:r.origType,r.selector,r.handler),this;if(\"object\"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each((function(){b.event.remove(this,e,n,t)}))}});var Ne=/<script|<style|<link/i,De=/checked\\s*(?:[^=]|=\\s*.checked.)/i,je=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function qe(e,t){return k(e,\"table\")&&k(11!==t.nodeType?t:t.firstChild,\"tr\")&&b(e).children(\"tbody\")[0]||e}function Le(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function He(e){return\"true/\"===(e.type||\"\").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute(\"type\"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(G.hasData(e)&&(s=G.get(e).events))for(i in G.remove(t,\"handle events\"),s)for(n=0,r=s[i].length;n<r;n++)b.event.add(t,i,s[i][n]);Y.hasData(e)&&(o=Y.access(e),a=b.extend({},o),Y.set(t,a))}}function Pe(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&pe.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function Re(e,t,n,r){t=o(t);var i,a,s,u,l,c,f=0,p=e.length,g=p-1,v=t[0],y=h(v);if(y||p>1&&\"string\"==typeof v&&!d.checkClone&&De.test(v))return e.each((function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Re(o,t,n,r)}));if(p&&(a=(i=xe(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=a),a||r)){for(u=(s=b.map(ve(i,\"script\"),Le)).length;f<p;f++)l=i,f!==g&&(l=b.clone(l,!0,!0),u&&b.merge(s,ve(l,\"script\"))),n.call(e[f],l,f);if(u)for(c=s[s.length-1].ownerDocument,b.map(s,He),f=0;f<u;f++)l=s[f],he.test(l.type||\"\")&&!G.access(l,\"globalEval\")&&b.contains(c,l)&&(l.src&&\"module\"!==(l.type||\"\").toLowerCase()?b._evalUrl&&!l.noModule&&b._evalUrl(l.src,{nonce:l.nonce||l.getAttribute(\"nonce\")},c):m(l.textContent.replace(je,\"\"),l,c))}return e}function Me(e,t,n){for(var r,i=t?b.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||b.cleanData(ve(r)),r.parentNode&&(n&&re(r)&&ye(ve(r,\"script\")),r.parentNode.removeChild(r));return e}b.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=re(e);if(!(d.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||b.isXMLDoc(e)))for(a=ve(s),r=0,i=(o=ve(e)).length;r<i;r++)Pe(o[r],a[r]);if(t)if(n)for(o=o||ve(e),a=a||ve(s),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,s);return(a=ve(s,\"script\")).length>0&&ye(a,!u&&ve(e,\"script\")),s},cleanData:function(e){for(var t,n,r,i=b.event.special,o=0;void 0!==(n=e[o]);o++)if(X(n)){if(t=n[G.expando]){if(t.events)for(r in t.events)i[r]?b.event.remove(n,r):b.removeEvent(n,r,t.handle);n[G.expando]=void 0}n[Y.expando]&&(n[Y.expando]=void 0)}}}),b.fn.extend({detach:function(e){return Me(this,e,!0)},remove:function(e){return Me(this,e)},text:function(e){return B(this,(function(e){return void 0===e?b.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return Re(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)}))},prepend:function(){return Re(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Re(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Re(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(b.cleanData(ve(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return b.clone(this,e,t)}))},html:function(e){return B(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=b.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(b.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Re(this,arguments,(function(t){var n=this.parentNode;b.inArray(this,e)<0&&(b.cleanData(ve(this)),n&&n.replaceChild(t,this))}),e)}}),b.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},(function(e,t){b.fn[e]=function(e){for(var n,r=[],i=b(e),o=i.length-1,s=0;s<=o;s++)n=s===o?this:this.clone(!0),b(i[s])[t](n),a.apply(r,n.get());return this.pushStack(r)}}));var Ie=new RegExp(\"^(\"+Z+\")(?!px)[a-z%]+$\",\"i\"),We=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},Fe=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Be=new RegExp(te.join(\"|\"),\"i\");function $e(e,t,n){var r,i,o,a,s=e.style;return(n=n||We(e))&&(\"\"!==(a=n.getPropertyValue(t)||n[t])||re(e)||(a=b.style(e,t)),!d.pixelBoxStyles()&&Ie.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+\"\":a}function _e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function t(){if(c){l.style.cssText=\"position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0\",c.style.cssText=\"position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%\",ne.appendChild(l).appendChild(c);var t=e.getComputedStyle(c);r=\"1%\"!==t.top,u=12===n(t.marginLeft),c.style.right=\"60%\",a=36===n(t.right),i=36===n(t.width),c.style.position=\"absolute\",o=12===n(c.offsetWidth/3),ne.removeChild(l),c=null}}function n(e){return Math.round(parseFloat(e))}var r,i,o,a,s,u,l=v.createElement(\"div\"),c=v.createElement(\"div\");c.style&&(c.style.backgroundClip=\"content-box\",c.cloneNode(!0).style.backgroundClip=\"\",d.clearCloneStyle=\"content-box\"===c.style.backgroundClip,b.extend(d,{boxSizingReliable:function(){return t(),i},pixelBoxStyles:function(){return t(),a},pixelPosition:function(){return t(),r},reliableMarginLeft:function(){return t(),u},scrollboxSize:function(){return t(),o},reliableTrDimensions:function(){var t,n,r,i;return null==s&&(t=v.createElement(\"table\"),n=v.createElement(\"tr\"),r=v.createElement(\"div\"),t.style.cssText=\"position:absolute;left:-11111px\",n.style.height=\"1px\",r.style.height=\"9px\",ne.appendChild(t).appendChild(n).appendChild(r),i=e.getComputedStyle(n),s=parseInt(i.height)>3,ne.removeChild(t)),s}}))}();var ze=[\"Webkit\",\"Moz\",\"ms\"],Ue=v.createElement(\"div\").style,Xe={};function Ve(e){var t=b.cssProps[e]||Xe[e];return t||(e in Ue?e:Xe[e]=function(e){for(var t=e[0].toUpperCase()+e.slice(1),n=ze.length;n--;)if((e=ze[n]+t)in Ue)return e}(e)||e)}var Ge=/^(none|table(?!-c[ea]).+)/,Ye=/^--/,Qe={position:\"absolute\",visibility:\"hidden\",display:\"block\"},Je={letterSpacing:\"0\",fontWeight:\"400\"};function Ke(e,t,n){var r=ee.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||\"px\"):t}function Ze(e,t,n,r,i,o){var a=\"width\"===t?1:0,s=0,u=0;if(n===(r?\"border\":\"content\"))return 0;for(;a<4;a+=2)\"margin\"===n&&(u+=b.css(e,n+te[a],!0,i)),r?(\"content\"===n&&(u-=b.css(e,\"padding\"+te[a],!0,i)),\"margin\"!==n&&(u-=b.css(e,\"border\"+te[a]+\"Width\",!0,i))):(u+=b.css(e,\"padding\"+te[a],!0,i),\"padding\"!==n?u+=b.css(e,\"border\"+te[a]+\"Width\",!0,i):s+=b.css(e,\"border\"+te[a]+\"Width\",!0,i));return!r&&o>=0&&(u+=Math.max(0,Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function et(e,t,n){var r=We(e),i=(!d.boxSizingReliable()||n)&&\"border-box\"===b.css(e,\"boxSizing\",!1,r),o=i,a=$e(e,t,r),s=\"offset\"+t[0].toUpperCase()+t.slice(1);if(Ie.test(a)){if(!n)return a;a=\"auto\"}return(!d.boxSizingReliable()&&i||!d.reliableTrDimensions()&&k(e,\"tr\")||\"auto\"===a||!parseFloat(a)&&\"inline\"===b.css(e,\"display\",!1,r))&&e.getClientRects().length&&(i=\"border-box\"===b.css(e,\"boxSizing\",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ze(e,t,n||(i?\"border\":\"content\"),o,r,a)+\"px\"}function tt(e,t,n,r,i){return new tt.prototype.init(e,t,n,r,i)}b.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=$e(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=U(t),u=Ye.test(t),l=e.style;if(u||(t=Ve(s)),a=b.cssHooks[t]||b.cssHooks[s],void 0===n)return a&&\"get\"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];\"string\"===(o=typeof n)&&(i=ee.exec(n))&&i[1]&&(n=ae(e,t,i),o=\"number\"),null!=n&&n==n&&(\"number\"!==o||u||(n+=i&&i[3]||(b.cssNumber[s]?\"\":\"px\")),d.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(l[t]=\"inherit\"),a&&\"set\"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=U(t);return Ye.test(t)||(t=Ve(s)),(a=b.cssHooks[t]||b.cssHooks[s])&&\"get\"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=$e(e,t,r)),\"normal\"===i&&t in Je&&(i=Je[t]),\"\"===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),b.each([\"height\",\"width\"],(function(e,t){b.cssHooks[t]={get:function(e,n,r){if(n)return!Ge.test(b.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):Fe(e,Qe,(function(){return et(e,t,r)}))},set:function(e,n,r){var i,o=We(e),a=!d.scrollboxSize()&&\"absolute\"===o.position,s=(a||r)&&\"border-box\"===b.css(e,\"boxSizing\",!1,o),u=r?Ze(e,t,r,s,o):0;return s&&a&&(u-=Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,\"border\",!1,o)-.5)),u&&(i=ee.exec(n))&&\"px\"!==(i[3]||\"px\")&&(e.style[t]=n,n=b.css(e,t)),Ke(0,n,u)}}})),b.cssHooks.marginLeft=_e(d.reliableMarginLeft,(function(e,t){if(t)return(parseFloat($e(e,\"marginLeft\"))||e.getBoundingClientRect().left-Fe(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+\"px\"})),b.each({margin:\"\",padding:\"\",border:\"Width\"},(function(e,t){b.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o=\"string\"==typeof n?n.split(\" \"):[n];r<4;r++)i[e+te[r]+t]=o[r]||o[r-2]||o[0];return i}},\"margin\"!==e&&(b.cssHooks[e+t].set=Ke)})),b.fn.extend({css:function(e,t){return B(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a<i;a++)o[t[a]]=b.css(e,t[a],!1,r);return o}return void 0!==n?b.style(e,t,n):b.css(e,t)}),e,t,arguments.length>1)}}),b.Tween=tt,tt.prototype={constructor:tt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||b.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(b.cssNumber[n]?\"\":\"px\")},cur:function(){var e=tt.propHooks[this.prop];return e&&e.get?e.get(this):tt.propHooks._default.get(this)},run:function(e){var t,n=tt.propHooks[this.prop];return this.options.duration?this.pos=t=b.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):tt.propHooks._default.set(this),this}},tt.prototype.init.prototype=tt.prototype,tt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=b.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){b.fx.step[e.prop]?b.fx.step[e.prop](e):1!==e.elem.nodeType||!b.cssHooks[e.prop]&&null==e.elem.style[Ve(e.prop)]?e.elem[e.prop]=e.now:b.style(e.elem,e.prop,e.now+e.unit)}}},tt.propHooks.scrollTop=tt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},b.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},b.fx=tt.prototype.init,b.fx.step={};var nt,rt,it=/^(?:toggle|show|hide)$/,ot=/queueHooks$/;function at(){rt&&(!1===v.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(at):e.setTimeout(at,b.fx.interval),b.fx.tick())}function st(){return e.setTimeout((function(){nt=void 0})),nt=Date.now()}function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i[\"margin\"+(n=te[r])]=i[\"padding\"+n]=e;return t&&(i.opacity=i.width=e),i}function lt(e,t,n){for(var r,i=(ct.tweeners[t]||[]).concat(ct.tweeners[\"*\"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ct(e,t,n){var r,i,o=0,a=ct.prefilters.length,s=b.Deferred().always((function(){delete u.elem})),u=function(){if(i)return!1;for(var t=nt||st(),n=Math.max(0,l.startTime+l.duration-t),r=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(r);return s.notifyWith(e,[l,r,n]),r<1&&a?n:(a||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:b.extend({},t),opts:b.extend(!0,{specialEasing:{},easing:b.easing._default},n),originalProperties:t,originalOptions:n,startTime:nt||st(),duration:n.duration,tweens:[],createTween:function(t,n){var r=b.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=U(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=b.cssHooks[r])&&\"expand\"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);o<a;o++)if(r=ct.prefilters[o].call(l,e,c,l.opts))return h(r.stop)&&(b._queueHooks(l.elem,l.opts.queue).stop=r.stop.bind(r)),r;return b.map(c,lt,l),h(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),b.fx.timer(b.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}b.Animation=b.extend(ct,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return ae(n.elem,e,ee.exec(t),n),n}]},tweener:function(e,t){h(e)?(t=e,e=[\"*\"]):e=e.match(O);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ct.tweeners[n]=ct.tweeners[n]||[],ct.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f=\"width\"in t||\"height\"in t,p=this,d={},h=e.style,g=e.nodeType&&oe(e),v=G.get(e,\"fxshow\");for(r in n.queue||(null==(a=b._queueHooks(e,\"fx\")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always((function(){p.always((function(){a.unqueued--,b.queue(e,\"fx\").length||a.empty.fire()}))}))),t)if(i=t[r],it.test(i)){if(delete t[r],o=o||\"toggle\"===i,i===(g?\"hide\":\"show\")){if(\"show\"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||b.style(e,r)}if((u=!b.isEmptyObject(t))||!b.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=G.get(e,\"display\")),\"none\"===(c=b.css(e,\"display\"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=b.css(e,\"display\"),le([e]))),(\"inline\"===c||\"inline-block\"===c&&null!=l)&&\"none\"===b.css(e,\"float\")&&(u||(p.done((function(){h.display=l})),null==l&&(c=h.display,l=\"none\"===c?\"\":c)),h.display=\"inline-block\")),n.overflow&&(h.overflow=\"hidden\",p.always((function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]}))),u=!1,d)u||(v?\"hidden\"in v&&(g=v.hidden):v=G.access(e,\"fxshow\",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done((function(){for(r in g||le([e]),G.remove(e,\"fxshow\"),d)b.style(e,r,d[r])}))),u=lt(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ct.prefilters.unshift(e):ct.prefilters.push(e)}}),b.speed=function(e,t,n){var r=e&&\"object\"==typeof e?b.extend({},e):{complete:n||!n&&t||h(e)&&e,duration:e,easing:n&&t||t&&!h(t)&&t};return b.fx.off?r.duration=0:\"number\"!=typeof r.duration&&(r.duration in b.fx.speeds?r.duration=b.fx.speeds[r.duration]:r.duration=b.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue=\"fx\"),r.old=r.complete,r.complete=function(){h(r.old)&&r.old.call(this),r.queue&&b.dequeue(this,r.queue)},r},b.fn.extend({fadeTo:function(e,t,n,r){return this.filter(oe).css(\"opacity\",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=b.isEmptyObject(e),o=b.speed(t,n,r),a=function(){var t=ct(this,b.extend({},e),o);(i||G.get(this,\"finish\"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return\"string\"!=typeof e&&(n=t,t=e,e=void 0),t&&this.queue(e||\"fx\",[]),this.each((function(){var t=!0,i=null!=e&&e+\"queueHooks\",o=b.timers,a=G.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&ot.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||b.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||\"fx\"),this.each((function(){var t,n=G.get(this),r=n[e+\"queue\"],i=n[e+\"queueHooks\"],o=b.timers,a=r?r.length:0;for(n.finish=!0,b.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),b.each([\"toggle\",\"show\",\"hide\"],(function(e,t){var n=b.fn[t];b.fn[t]=function(e,r,i){return null==e||\"boolean\"==typeof e?n.apply(this,arguments):this.animate(ut(t,!0),e,r,i)}})),b.each({slideDown:ut(\"show\"),slideUp:ut(\"hide\"),slideToggle:ut(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},(function(e,t){b.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),b.timers=[],b.fx.tick=function(){var e,t=0,n=b.timers;for(nt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||b.fx.stop(),nt=void 0},b.fx.timer=function(e){b.timers.push(e),b.fx.start()},b.fx.interval=13,b.fx.start=function(){rt||(rt=!0,at())},b.fx.stop=function(){rt=null},b.fx.speeds={slow:600,fast:200,_default:400},b.fn.delay=function(t,n){return t=b.fx&&b.fx.speeds[t]||t,n=n||\"fx\",this.queue(n,(function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}}))},function(){var e=v.createElement(\"input\"),t=v.createElement(\"select\").appendChild(v.createElement(\"option\"));e.type=\"checkbox\",d.checkOn=\"\"!==e.value,d.optSelected=t.selected,(e=v.createElement(\"input\")).value=\"t\",e.type=\"radio\",d.radioValue=\"t\"===e.value}();var ft,pt=b.expr.attrHandle;b.fn.extend({attr:function(e,t){return B(this,b.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){b.removeAttr(this,e)}))}}),b.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?b.prop(e,t,n):(1===o&&b.isXMLDoc(e)||(i=b.attrHooks[t.toLowerCase()]||(b.expr.match.bool.test(t)?ft:void 0)),void 0!==n?null===n?void b.removeAttr(e,t):i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+\"\"),n):i&&\"get\"in i&&null!==(r=i.get(e,t))?r:null==(r=b.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!d.radioValue&&\"radio\"===t&&k(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(O);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),ft={set:function(e,t,n){return!1===t?b.removeAttr(e,n):e.setAttribute(n,n),n}},b.each(b.expr.match.bool.source.match(/\\w+/g),(function(e,t){var n=pt[t]||b.find.attr;pt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=pt[a],pt[a]=i,i=null!=n(e,t,r)?a:null,pt[a]=o),i}}));var dt=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function gt(e){return(e.match(O)||[]).join(\" \")}function vt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}function yt(e){return Array.isArray(e)?e:\"string\"==typeof e&&e.match(O)||[]}b.fn.extend({prop:function(e,t){return B(this,b.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[b.propFix[e]||e]}))}}),b.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&b.isXMLDoc(e)||(t=b.propFix[t]||t,i=b.propHooks[t]),void 0!==n?i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&\"get\"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=b.find.attr(e,\"tabindex\");return t?parseInt(t,10):dt.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),d.optSelected||(b.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),b.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],(function(){b.propFix[this.toLowerCase()]=this})),b.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){b(this).addClass(e.call(this,t,vt(this)))}));if((t=yt(e)).length)for(;n=this[u++];)if(i=vt(n),r=1===n.nodeType&&\" \"+gt(i)+\" \"){for(a=0;o=t[a++];)r.indexOf(\" \"+o+\" \")<0&&(r+=o+\" \");i!==(s=gt(r))&&n.setAttribute(\"class\",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){b(this).removeClass(e.call(this,t,vt(this)))}));if(!arguments.length)return this.attr(\"class\",\"\");if((t=yt(e)).length)for(;n=this[u++];)if(i=vt(n),r=1===n.nodeType&&\" \"+gt(i)+\" \"){for(a=0;o=t[a++];)for(;r.indexOf(\" \"+o+\" \")>-1;)r=r.replace(\" \"+o+\" \",\" \");i!==(s=gt(r))&&n.setAttribute(\"class\",s)}return this},toggleClass:function(e,t){var n=typeof e,r=\"string\"===n||Array.isArray(e);return\"boolean\"==typeof t&&r?t?this.addClass(e):this.removeClass(e):h(e)?this.each((function(n){b(this).toggleClass(e.call(this,n,vt(this),t),t)})):this.each((function(){var t,i,o,a;if(r)for(i=0,o=b(this),a=yt(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&\"boolean\"!==n||((t=vt(this))&&G.set(this,\"__className__\",t),this.setAttribute&&this.setAttribute(\"class\",t||!1===e?\"\":G.get(this,\"__className__\")||\"\"))}))},hasClass:function(e){var t,n,r=0;for(t=\" \"+e+\" \";n=this[r++];)if(1===n.nodeType&&(\" \"+gt(vt(n))+\" \").indexOf(t)>-1)return!0;return!1}});var mt=/\\r/g;b.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=h(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,b(this).val()):e)?i=\"\":\"number\"==typeof i?i+=\"\":Array.isArray(i)&&(i=b.map(i,(function(e){return null==e?\"\":e+\"\"}))),(t=b.valHooks[this.type]||b.valHooks[this.nodeName.toLowerCase()])&&\"set\"in t&&void 0!==t.set(this,i,\"value\")||(this.value=i))}))):i?(t=b.valHooks[i.type]||b.valHooks[i.nodeName.toLowerCase()])&&\"get\"in t&&void 0!==(n=t.get(i,\"value\"))?n:\"string\"==typeof(n=i.value)?n.replace(mt,\"\"):null==n?\"\":n:void 0}}),b.extend({valHooks:{option:{get:function(e){var t=b.find.attr(e,\"value\");return null!=t?t:gt(b.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a=\"select-one\"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,\"optgroup\"))){if(t=b(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=b.makeArray(t),a=i.length;a--;)((r=i[a]).selected=b.inArray(b.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),b.each([\"radio\",\"checkbox\"],(function(){b.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=b.inArray(b(e).val(),t)>-1}},d.checkOn||(b.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})})),d.focusin=\"onfocusin\"in e;var xt=/^(?:focusinfocus|focusoutblur)$/,bt=function(e){e.stopPropagation()};b.extend(b.event,{trigger:function(t,n,r,i){var o,a,s,u,l,f,p,d,y=[r||v],m=c.call(t,\"type\")?t.type:t,x=c.call(t,\"namespace\")?t.namespace.split(\".\"):[];if(a=d=s=r=r||v,3!==r.nodeType&&8!==r.nodeType&&!xt.test(m+b.event.triggered)&&(m.indexOf(\".\")>-1&&(x=m.split(\".\"),m=x.shift(),x.sort()),l=m.indexOf(\":\")<0&&\"on\"+m,(t=t[b.expando]?t:new b.Event(m,\"object\"==typeof t&&t)).isTrigger=i?2:3,t.namespace=x.join(\".\"),t.rnamespace=t.namespace?new RegExp(\"(^|\\\\.)\"+x.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:b.makeArray(n,[t]),p=b.event.special[m]||{},i||!p.trigger||!1!==p.trigger.apply(r,n))){if(!i&&!p.noBubble&&!g(r)){for(u=p.delegateType||m,xt.test(u+m)||(a=a.parentNode);a;a=a.parentNode)y.push(a),s=a;s===(r.ownerDocument||v)&&y.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=y[o++])&&!t.isPropagationStopped();)d=a,t.type=o>1?u:p.bindType||m,(f=(G.get(a,\"events\")||Object.create(null))[t.type]&&G.get(a,\"handle\"))&&f.apply(a,n),(f=l&&a[l])&&f.apply&&X(a)&&(t.result=f.apply(a,n),!1===t.result&&t.preventDefault());return t.type=m,i||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!X(r)||l&&h(r[m])&&!g(r)&&((s=r[l])&&(r[l]=null),b.event.triggered=m,t.isPropagationStopped()&&d.addEventListener(m,bt),r[m](),t.isPropagationStopped()&&d.removeEventListener(m,bt),b.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=b.extend(new b.Event,n,{type:e,isSimulated:!0});b.event.trigger(r,null,t)}}),b.fn.extend({trigger:function(e,t){return this.each((function(){b.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return b.event.trigger(e,t,n,!0)}}),d.focusin||b.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){var n=function(e){b.event.simulate(t,e.target,b.event.fix(e))};b.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=G.access(r,t);i||r.addEventListener(e,n,!0),G.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=G.access(r,t)-1;i?G.access(r,t,i):(r.removeEventListener(e,n,!0),G.remove(r,t))}}}));var wt=e.location,Tt={guid:Date.now()},Ct=/\\?/;b.parseXML=function(t){var n;if(!t||\"string\"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,\"text/xml\")}catch(e){n=void 0}return n&&!n.getElementsByTagName(\"parsererror\").length||b.error(\"Invalid XML: \"+t),n};var Et=/\\[\\]$/,St=/\\r?\\n/g,kt=/^(?:submit|button|image|reset|file)$/i,At=/^(?:input|select|textarea|keygen)/i;function Nt(e,t,n,r){var i;if(Array.isArray(t))b.each(t,(function(t,i){n||Et.test(e)?r(e,i):Nt(e+\"[\"+(\"object\"==typeof i&&null!=i?t:\"\")+\"]\",i,n,r)}));else if(n||\"object\"!==x(t))r(e,t);else for(i in t)Nt(e+\"[\"+i+\"]\",t[i],n,r)}b.param=function(e,t){var n,r=[],i=function(e,t){var n=h(t)?t():t;r[r.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(null==e)return\"\";if(Array.isArray(e)||e.jquery&&!b.isPlainObject(e))b.each(e,(function(){i(this.name,this.value)}));else for(n in e)Nt(n,e[n],t,i);return r.join(\"&\")},b.fn.extend({serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=b.prop(this,\"elements\");return e?b.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!b(this).is(\":disabled\")&&At.test(this.nodeName)&&!kt.test(e)&&(this.checked||!pe.test(e))})).map((function(e,t){var n=b(this).val();return null==n?null:Array.isArray(n)?b.map(n,(function(e){return{name:t.name,value:e.replace(St,\"\\r\\n\")}})):{name:t.name,value:n.replace(St,\"\\r\\n\")}})).get()}});var Dt=/%20/g,jt=/#.*$/,qt=/([?&])_=[^&]*/,Lt=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Ht=/^(?:GET|HEAD)$/,Ot=/^\\/\\//,Pt={},Rt={},Mt=\"*/\".concat(\"*\"),It=v.createElement(\"a\");function Wt(e){return function(t,n){\"string\"!=typeof t&&(n=t,t=\"*\");var r,i=0,o=t.toLowerCase().match(O)||[];if(h(n))for(;r=o[i++];)\"+\"===r[0]?(r=r.slice(1)||\"*\",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Ft(e,t,n,r){var i={},o=e===Rt;function a(s){var u;return i[s]=!0,b.each(e[s]||[],(function(e,s){var l=s(t,n,r);return\"string\"!=typeof l||o||i[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),a(l),!1)})),u}return a(t.dataTypes[0])||!i[\"*\"]&&a(\"*\")}function Bt(e,t){var n,r,i=b.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&b.extend(!0,e,r),e}It.href=wt.href,b.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:wt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(wt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":Mt,text:\"text/plain\",html:\"text/html\",xml:\"application/xml, text/xml\",json:\"application/json, text/javascript\"},contents:{xml:/\\bxml\\b/,html:/\\bhtml/,json:/\\bjson\\b/},responseFields:{xml:\"responseXML\",text:\"responseText\",json:\"responseJSON\"},converters:{\"* text\":String,\"text html\":!0,\"text json\":JSON.parse,\"text xml\":b.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Bt(Bt(e,b.ajaxSettings),t):Bt(b.ajaxSettings,e)},ajaxPrefilter:Wt(Pt),ajaxTransport:Wt(Rt),ajax:function(t,n){\"object\"==typeof t&&(n=t,t=void 0),n=n||{};var r,i,o,a,s,u,l,c,f,p,d=b.ajaxSetup({},n),h=d.context||d,g=d.context&&(h.nodeType||h.jquery)?b(h):b.event,y=b.Deferred(),m=b.Callbacks(\"once memory\"),x=d.statusCode||{},w={},T={},C=\"canceled\",E={readyState:0,getResponseHeader:function(e){var t;if(l){if(!a)for(a={};t=Lt.exec(o);)a[t[1].toLowerCase()+\" \"]=(a[t[1].toLowerCase()+\" \"]||[]).concat(t[2]);t=a[e.toLowerCase()+\" \"]}return null==t?null:t.join(\", \")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==l&&(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)E.always(e[E.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||C;return r&&r.abort(t),S(0,t),this}};if(y.promise(E),d.url=((t||d.url||wt.href)+\"\").replace(Ot,wt.protocol+\"//\"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=(d.dataType||\"*\").toLowerCase().match(O)||[\"\"],null==d.crossDomain){u=v.createElement(\"a\");try{u.href=d.url,u.href=u.href,d.crossDomain=It.protocol+\"//\"+It.host!=u.protocol+\"//\"+u.host}catch(e){d.crossDomain=!0}}if(d.data&&d.processData&&\"string\"!=typeof d.data&&(d.data=b.param(d.data,d.traditional)),Ft(Pt,d,n,E),l)return E;for(f in(c=b.event&&d.global)&&0==b.active++&&b.event.trigger(\"ajaxStart\"),d.type=d.type.toUpperCase(),d.hasContent=!Ht.test(d.type),i=d.url.replace(jt,\"\"),d.hasContent?d.data&&d.processData&&0===(d.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(d.data=d.data.replace(Dt,\"+\")):(p=d.url.slice(i.length),d.data&&(d.processData||\"string\"==typeof d.data)&&(i+=(Ct.test(i)?\"&\":\"?\")+d.data,delete d.data),!1===d.cache&&(i=i.replace(qt,\"$1\"),p=(Ct.test(i)?\"&\":\"?\")+\"_=\"+Tt.guid+++p),d.url=i+p),d.ifModified&&(b.lastModified[i]&&E.setRequestHeader(\"If-Modified-Since\",b.lastModified[i]),b.etag[i]&&E.setRequestHeader(\"If-None-Match\",b.etag[i])),(d.data&&d.hasContent&&!1!==d.contentType||n.contentType)&&E.setRequestHeader(\"Content-Type\",d.contentType),E.setRequestHeader(\"Accept\",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(\"*\"!==d.dataTypes[0]?\", \"+Mt+\"; q=0.01\":\"\"):d.accepts[\"*\"]),d.headers)E.setRequestHeader(f,d.headers[f]);if(d.beforeSend&&(!1===d.beforeSend.call(h,E,d)||l))return E.abort();if(C=\"abort\",m.add(d.complete),E.done(d.success),E.fail(d.error),r=Ft(Rt,d,n,E)){if(E.readyState=1,c&&g.trigger(\"ajaxSend\",[E,d]),l)return E;d.async&&d.timeout>0&&(s=e.setTimeout((function(){E.abort(\"timeout\")}),d.timeout));try{l=!1,r.send(w,S)}catch(e){if(l)throw e;S(-1,e)}}else S(-1,\"No Transport\");function S(t,n,a,u){var f,p,v,w,T,C=n;l||(l=!0,s&&e.clearTimeout(s),r=void 0,o=u||\"\",E.readyState=t>0?4:0,f=t>=200&&t<300||304===t,a&&(w=function(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;\"*\"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+\" \"+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(d,E,a)),!f&&b.inArray(\"script\",d.dataTypes)>-1&&(d.converters[\"text script\"]=function(){}),w=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if(\"*\"===o)o=u;else if(\"*\"!==u&&u!==o){if(!(a=l[u+\" \"+o]||l[\"* \"+o]))for(i in l)if((s=i.split(\" \"))[1]===o&&(a=l[u+\" \"+s[0]]||l[\"* \"+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:\"parsererror\",error:a?e:\"No conversion from \"+u+\" to \"+o}}}return{state:\"success\",data:t}}(d,w,E,f),f?(d.ifModified&&((T=E.getResponseHeader(\"Last-Modified\"))&&(b.lastModified[i]=T),(T=E.getResponseHeader(\"etag\"))&&(b.etag[i]=T)),204===t||\"HEAD\"===d.type?C=\"nocontent\":304===t?C=\"notmodified\":(C=w.state,p=w.data,f=!(v=w.error))):(v=C,!t&&C||(C=\"error\",t<0&&(t=0))),E.status=t,E.statusText=(n||C)+\"\",f?y.resolveWith(h,[p,C,E]):y.rejectWith(h,[E,C,v]),E.statusCode(x),x=void 0,c&&g.trigger(f?\"ajaxSuccess\":\"ajaxError\",[E,d,f?p:v]),m.fireWith(h,[E,C]),c&&(g.trigger(\"ajaxComplete\",[E,d]),--b.active||b.event.trigger(\"ajaxStop\")))}return E},getJSON:function(e,t,n){return b.get(e,t,n,\"json\")},getScript:function(e,t){return b.get(e,void 0,t,\"script\")}}),b.each([\"get\",\"post\"],(function(e,t){b[t]=function(e,n,r,i){return h(n)&&(i=i||r,r=n,n=void 0),b.ajax(b.extend({url:e,type:t,dataType:i,data:n,success:r},b.isPlainObject(e)&&e))}})),b.ajaxPrefilter((function(e){var t;for(t in e.headers)\"content-type\"===t.toLowerCase()&&(e.contentType=e.headers[t]||\"\")})),b._evalUrl=function(e,t,n){return b.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,converters:{\"text script\":function(){}},dataFilter:function(e){b.globalEval(e,t,n)}})},b.fn.extend({wrapAll:function(e){var t;return this[0]&&(h(e)&&(e=e.call(this[0])),t=b(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return h(e)?this.each((function(t){b(this).wrapInner(e.call(this,t))})):this.each((function(){var t=b(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=h(e);return this.each((function(n){b(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not(\"body\").each((function(){b(this).replaceWith(this.childNodes)})),this}}),b.expr.pseudos.hidden=function(e){return!b.expr.pseudos.visible(e)},b.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},b.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var $t={0:200,1223:204},_t=b.ajaxSettings.xhr();d.cors=!!_t&&\"withCredentials\"in _t,d.ajax=_t=!!_t,b.ajaxTransport((function(t){var n,r;if(d.cors||_t&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i[\"X-Requested-With\"]||(i[\"X-Requested-With\"]=\"XMLHttpRequest\"),i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,\"abort\"===e?s.abort():\"error\"===e?\"number\"!=typeof s.status?o(0,\"error\"):o(s.status,s.statusText):o($t[s.status]||s.status,s.statusText,\"text\"!==(s.responseType||\"text\")||\"string\"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n(\"error\"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout((function(){n&&r()}))},n=n(\"abort\");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}})),b.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),b.ajaxSetup({accepts:{script:\"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"},contents:{script:/\\b(?:java|ecma)script\\b/},converters:{\"text script\":function(e){return b.globalEval(e),e}}}),b.ajaxPrefilter(\"script\",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")})),b.ajaxTransport(\"script\",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=b(\"<script>\").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on(\"load error\",n=function(e){t.remove(),n=null,e&&i(\"error\"===e.type?404:200,e.type)}),v.head.appendChild(t[0])},abort:function(){n&&n()}}}));var zt,Ut=[],Xt=/(=)\\?(?=&|$)|\\?\\?/;b.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=Ut.pop()||b.expando+\"_\"+Tt.guid++;return this[e]=!0,e}}),b.ajaxPrefilter(\"json jsonp\",(function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(Xt.test(t.url)?\"url\":\"string\"==typeof t.data&&0===(t.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Xt.test(t.data)&&\"data\");if(s||\"jsonp\"===t.dataTypes[0])return i=t.jsonpCallback=h(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(Xt,\"$1\"+i):!1!==t.jsonp&&(t.url+=(Ct.test(t.url)?\"&\":\"?\")+t.jsonp+\"=\"+i),t.converters[\"script json\"]=function(){return a||b.error(i+\" was not called\"),a[0]},t.dataTypes[0]=\"json\",o=e[i],e[i]=function(){a=arguments},r.always((function(){void 0===o?b(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Ut.push(i)),a&&h(o)&&o(a[0]),a=o=void 0})),\"script\"})),d.createHTMLDocument=((zt=v.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===zt.childNodes.length),b.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(d.createHTMLDocument?((r=(t=v.implementation.createHTMLDocument(\"\")).createElement(\"base\")).href=v.location.href,t.head.appendChild(r)):t=v),o=!n&&[],(i=A.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&b(o).remove(),b.merge([],i.childNodes)));var r,i,o},b.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(\" \");return s>-1&&(r=gt(e.slice(s)),e=e.slice(0,s)),h(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(i=\"POST\"),a.length>0&&b.ajax({url:e,type:i||\"GET\",dataType:\"html\",data:t}).done((function(e){o=arguments,a.html(r?b(\"<div>\").append(b.parseHTML(e)).find(r):e)})).always(n&&function(e,t){a.each((function(){n.apply(this,o||[e.responseText,t,e])}))}),this},b.expr.pseudos.animated=function(e){return b.grep(b.timers,(function(t){return e===t.elem})).length},b.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=b.css(e,\"position\"),c=b(e),f={};\"static\"===l&&(e.style.position=\"relative\"),s=c.offset(),o=b.css(e,\"top\"),u=b.css(e,\"left\"),(\"absolute\"===l||\"fixed\"===l)&&(o+u).indexOf(\"auto\")>-1?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),h(t)&&(t=t.call(e,n,b.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),\"using\"in t?t.using.call(e,f):(\"number\"==typeof f.top&&(f.top+=\"px\"),\"number\"==typeof f.left&&(f.left+=\"px\"),c.css(f))}},b.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){b.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if(\"fixed\"===b.css(r,\"position\"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&\"static\"===b.css(e,\"position\");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=b(e).offset()).top+=b.css(e,\"borderTopWidth\",!0),i.left+=b.css(e,\"borderLeftWidth\",!0))}return{top:t.top-i.top-b.css(r,\"marginTop\",!0),left:t.left-i.left-b.css(r,\"marginLeft\",!0)}}},offsetParent:function(){return this.map((function(){for(var e=this.offsetParent;e&&\"static\"===b.css(e,\"position\");)e=e.offsetParent;return e||ne}))}}),b.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},(function(e,t){var n=\"pageYOffset\"===t;b.fn[e]=function(r){return B(this,(function(e,r,i){var o;if(g(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i}),e,r,arguments.length)}})),b.each([\"top\",\"left\"],(function(e,t){b.cssHooks[t]=_e(d.pixelPosition,(function(e,n){if(n)return n=$e(e,t),Ie.test(n)?b(e).position()[t]+\"px\":n}))})),b.each({Height:\"height\",Width:\"width\"},(function(e,t){b.each({padding:\"inner\"+e,content:t,\"\":\"outer\"+e},(function(n,r){b.fn[r]=function(i,o){var a=arguments.length&&(n||\"boolean\"!=typeof i),s=n||(!0===i||!0===o?\"margin\":\"border\");return B(this,(function(t,n,i){var o;return g(t)?0===r.indexOf(\"outer\")?t[\"inner\"+e]:t.document.documentElement[\"client\"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body[\"scroll\"+e],o[\"scroll\"+e],t.body[\"offset\"+e],o[\"offset\"+e],o[\"client\"+e])):void 0===i?b.css(t,n,s):b.style(t,n,i,s)}),t,a?i:void 0,a)}}))})),b.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],(function(e,t){b.fn[t]=function(e){return this.on(t,e)}})),b.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),b.each(\"blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu\".split(\" \"),(function(e,t){b.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var Vt=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g;b.proxy=function(e,t){var n,r,o;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),h(e))return r=i.call(arguments,2),(o=function(){return e.apply(t||this,r.concat(i.call(arguments)))}).guid=e.guid=e.guid||b.guid++,o},b.holdReady=function(e){e?b.readyWait++:b.ready(!0)},b.isArray=Array.isArray,b.parseJSON=JSON.parse,b.nodeName=k,b.isFunction=h,b.isWindow=g,b.camelCase=U,b.type=x,b.now=Date.now,b.isNumeric=function(e){var t=b.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},b.trim=function(e){return null==e?\"\":(e+\"\").replace(Vt,\"\")},\"function\"==typeof define&&define.amd&&define(\"jquery\",[],(function(){return b}));var Gt=e.jQuery,Yt=e.$;return b.noConflict=function(t){return e.$===b&&(e.$=Yt),t&&e.jQuery===b&&(e.jQuery=Gt),b},void 0===t&&(e.jQuery=e.$=b),b}))},\n",
       "      460: function _(t,n,i){var o=t(458);function e(){var t=!1,n=!1;this.stopPropagation=function(){t=!0},this.isPropagationStopped=function(){return t},this.stopImmediatePropagation=function(){n=!0},this.isImmediatePropagationStopped=function(){return n}}function r(){this.__nonDataRow=!0}function u(){this.__group=!0,this.level=0,this.count=0,this.value=null,this.title=null,this.collapsed=!1,this.selectChecked=!1,this.totals=null,this.rows=[],this.groups=null,this.groupingKey=null}function s(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function l(){var t=null;this.isActive=function(n){return n?t===n:null!==t},this.activate=function(n){if(n!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!n.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!n.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=n}},this.deactivate=function(n){if(t!==n)throw new Error(\"SlickGrid.EditorLock.deactivate: specified editController is not the currently active one\");t=null},this.commitCurrentEdit=function(){return!t||t.commitCurrentEdit()},this.cancelCurrentEdit=function(){return!t||t.cancelCurrentEdit()}}u.prototype=new r,u.prototype.equals=function(t){return this.value===t.value&&this.count===t.count&&this.collapsed===t.collapsed&&this.title===t.title},s.prototype=new r,n.exports={Event:function(){var t=[];this.subscribe=function(n){t.push(n)},this.unsubscribe=function(n){for(var i=t.length-1;i>=0;i--)t[i]===n&&t.splice(i,1)},this.notify=function(n,i,o){var r;i=i||new e,o=o||this;for(var u=0;u<t.length&&!i.isPropagationStopped()&&!i.isImmediatePropagationStopped();u++)r=t[u].call(o,i,n);return r}},EventData:e,EventHandler:function(){var t=[];this.subscribe=function(n,i){return t.push({event:n,handler:i}),n.subscribe(i),this},this.unsubscribe=function(n,i){for(var o=t.length;o--;)if(t[o].event===n&&t[o].handler===i)return t.splice(o,1),void n.unsubscribe(i);return this},this.unsubscribeAll=function(){for(var n=t.length;n--;)t[n].event.unsubscribe(t[n].handler);return t=[],this}},Range:function(t,n,i,o){void 0===i&&void 0===o&&(i=t,o=n),this.fromRow=Math.min(t,i),this.fromCell=Math.min(n,o),this.toRow=Math.max(t,i),this.toCell=Math.max(n,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(t,n){return t>=this.fromRow&&t<=this.toRow&&n>=this.fromCell&&n<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:r,Group:u,GroupTotals:s,EditorLock:l,GlobalEditorLock:new l,TreeColumns:function(t){var n={};function i(t,n){return t.filter((function(t){var o=n.call(t);return o&&t.columns&&(t.columns=i(t.columns,n)),o&&(!t.columns||t.columns.length)}))}function e(t){return void 0===t?-1:t}function r(t){var n=[];if(t.hasOwnProperty(\"length\"))for(var i=0;i<t.length;i++)n=n.concat(r(t[i]));else{if(!t.hasOwnProperty(\"columns\"))return t;n=n.concat(r(t.columns))}return n}function u(){return o.extend(!0,[],t)}!function t(i){i.forEach((function(i){n[i.id]=i,i.columns&&t(i.columns)}))}(t),this.hasDepth=function(){for(var n in t)if(t[n].hasOwnProperty(\"columns\"))return!0;return!1},this.getTreeColumns=function(){return t},this.extractColumns=function(){return this.hasDepth()?r(t):t},this.getDepth=function(){return function t(n){if(!n.length)return n.columns?1+t(n.columns):1;for(var i in n)return t(n[i])}(t)},this.getColumnsInDepth=function(n){return function t(n,i,o){var e=[];if(i==(o=o||0))return n.length&&n.forEach((function(t){t.columns&&(t.extractColumns=function(){return r(t)})})),n;for(var u in n)n[u].columns&&(e=e.concat(t(n[u].columns,i,o+1)));return e}(t,n)},this.getColumnsInGroup=function(t){return r(t)},this.visibleColumns=function(){return i(u(),(function(){return this.visible}))},this.filter=function(t){return i(u(),t)},this.reOrder=function(n){return function t(n,i){n.sort((function(t,n){return e(i.getColumnIndex(t.id))-e(i.getColumnIndex(n.id))})).forEach((function(n){n.columns&&t(n.columns,i)}))}(t,n)},this.getById=function(t){return n[t]},this.getInIds=function(t){return t.map((function(t){return n[t]}))}},keyCode:{SPACE:8,BACKSPACE:8,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,ESC:27,HOME:36,INSERT:45,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,RIGHT:39,TAB:9,UP:38,A:65,C:67,V:86},preClickClassName:\"slick-edit-preclick\",GridAutosizeColsMode:{None:\"NOA\",LegacyOff:\"LOF\",LegacyForceFit:\"LFF\",IgnoreViewport:\"IGV\",FitColsToViewport:\"FCV\",FitViewportToCols:\"FVC\"},ColAutosizeMode:{Locked:\"LCK\",Guide:\"GUI\",Content:\"CON\",ContentIntelligent:\"CTI\"},RowSelectionMode:{FirstRow:\"FS1\",FirstNRows:\"FSN\",AllRows:\"ALL\",LastRow:\"LS1\"},ValueFilterMode:{None:\"NONE\",DeDuplicate:\"DEDP\",GetGreatestAndSub:\"GR8T\",GetLongestTextAndSub:\"LNSB\",GetLongestText:\"LNSC\"},WidthEvalMode:{CanvasTextSize:\"CANV\",HTML:\"HTML\"}}},\n",
       "      461: function _(e,t,o){var l=e(458),n=e(460);t.exports={CheckboxSelectColumn:function(e){var t,o=null,i=k(),c=new n.EventHandler,r={},d=!1,a=l.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,hideSelectAllCheckbox:!1,toolTip:\"Select/Deselect All\",width:30,hideInColumnTitleRow:!1,hideInFilterHeaderRow:!0},e);function s(){t.updateColumnHeader(a.columnId,\"\",\"\")}function u(){l(\"#filter-checkbox-selectall-container\").hide()}function h(e,n){var c,s,u,h=t.getSelectedRows(),f={},p=0;if(\"function\"==typeof o)for(u=0;u<t.getDataLength();u++){C(s,t.getDataItem(u),t)||p++}var b=[];for(s=0;s<h.length;s++){c=h[s],C(s,t.getDataItem(c),t)?(f[c]=!0,f[c]!==r[c]&&(t.invalidateRow(c),delete r[c])):b.push(c)}for(s in r)t.invalidateRow(s);(r=f,t.render(),d=h.length&&h.length+p>=t.getDataLength(),a.hideInColumnTitleRow||a.hideSelectAllCheckbox||R(d),a.hideInFilterHeaderRow)||l(\"#header-filter-selector\"+i).prop(\"checked\",d);if(b.length>0){for(s=0;s<b.length;s++){var m=h.indexOf(b[s]);h.splice(m,1)}t.setSelectedRows(h)}}function f(e,o){32==e.which&&t.getColumns()[o.cell].id===a.columnId&&(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit()||b(o.row),e.preventDefault(),e.stopImmediatePropagation())}function p(e,o){if(t.getColumns()[o.cell].id===a.columnId&&l(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();b(o.row),e.stopPropagation(),e.stopImmediatePropagation()}}function b(e){var o=t.getDataItem(e);C(e,o,t)&&(r[e]?t.setSelectedRows(l.grep(t.getSelectedRows(),(function(t){return t!=e}))):t.setSelectedRows(t.getSelectedRows().concat(e)),t.setActiveCell(e,function(){if(null===g){g=0;for(var e=t.getColumns(),o=0;o<e.length;o++)e[o].id==a.columnId&&(g=o)}return g}()))}function m(e,o){if(o.column.id==a.columnId&&l(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(l(e.target).is(\":checked\")){for(var n=[],i=0;i<t.getDataLength();i++){C(i,t.getDataItem(i),t)&&n.push(i)}t.setSelectedRows(n)}else t.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}\"function\"==typeof a.selectableOverride&&v(a.selectableOverride);var g=null;function k(){return Math.round(1e7*Math.random())}function w(e,t,o,l,n,i){var c=k()+e;return n&&C(e,n,i)?r[e]?\"<input id='selector\"+c+\"' type='checkbox' checked='checked'><label for='selector\"+c+\"'></label>\":\"<input id='selector\"+c+\"' type='checkbox'><label for='selector\"+c+\"'></label>\":null}function C(e,t,l){return\"function\"!=typeof o||o(e,t,l)}function R(e){e?t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+i+\"' type='checkbox' checked='checked'><label for='header-selector\"+i+\"'></label>\",a.toolTip):t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+i+\"' type='checkbox'><label for='header-selector\"+i+\"'></label>\",a.toolTip)}function v(e){o=e}l.extend(this,{init:function(e){t=e,c.subscribe(t.onSelectedRowsChanged,h).subscribe(t.onClick,p).subscribe(t.onKeyDown,f),a.hideInFilterHeaderRow||function(e){e.onHeaderRowCellRendered.subscribe((function(e,t){\"sel\"===t.column.field&&(l(t.node).empty(),l(\"<span id='filter-checkbox-selectall-container'><input id='header-filter-selector\"+i+\"' type='checkbox'><label for='header-filter-selector\"+i+\"'></label></span>\").appendTo(t.node).on(\"click\",(function(e){m(e,t)})))}))}(e),a.hideInColumnTitleRow||c.subscribe(t.onHeaderClick,m)},destroy:function(){c.unsubscribeAll()},pluginName:\"CheckboxSelectColumn\",deSelectRows:function(e){var o,n=e.length,i=[];for(o=0;o<n;o++)r[e[o]]&&(i[i.length]=e[o]);t.setSelectedRows(l.grep(t.getSelectedRows(),(function(e){return i.indexOf(e)<0})))},selectRows:function(e){var o,l=e.length,n=[];for(o=0;o<l;o++)r[e[o]]||(n[n.length]=e[o]);t.setSelectedRows(t.getSelectedRows().concat(n))},getColumnDefinition:function(){return{id:a.columnId,name:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":\"<input id='header-selector\"+i+\"' type='checkbox'><label for='header-selector\"+i+\"'></label>\",toolTip:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,hideSelectAllCheckbox:a.hideSelectAllCheckbox,formatter:w}},getOptions:function(){return a},selectableOverride:v,setOptions:function(e){if((a=l.extend(!0,{},a,e)).hideSelectAllCheckbox)s(),u();else if(a.hideInColumnTitleRow?s():(R(d),c.subscribe(t.onHeaderClick,m)),a.hideInFilterHeaderRow)u();else{var o=l(\"#filter-checkbox-selectall-container\");o.show(),o.find('input[type=\"checkbox\"]').prop(\"checked\",d)}}})}}},\n",
       "      462: function _(e,t,o){var l=e(458),n=e(460),a=n.keyCode;t.exports={CellExternalCopyManager:function(e){var t,o,r=this,i=e||{},s=i.copiedCellStyleLayerKey||\"copy-manager\",u=i.copiedCellStyle||\"copied\",c=0,d=i.bodyElement||document.body,f=i.onCopyInit||null,h=i.onCopySuccess||null;function C(e){if(i.headerColumnValueExtractor){var t=i.headerColumnValueExtractor(e);if(t)return t}return e.name}function m(e,o,n){if(i.dataItemColumnValueExtractor){var a=i.dataItemColumnValueExtractor(e,o);if(a)return a}var r=\"\";if(o.editor){var s={container:l(\"<p>\"),column:o,position:{top:0,left:0},grid:t,event:n},u=new o.editor(s);u.loadValue(e),r=u.serializeValue(),u.destroy()}else r=e[o.field];return r}function g(e,o,n){if(o.denyPaste)return null;if(i.dataItemColumnValueSetter)return i.dataItemColumnValueSetter(e,o,n);if(o.editor){var a={container:l(\"body\"),column:o,position:{top:0,left:0},grid:t},r=new o.editor(a);r.loadValue(e),r.applyValue(e,n),r.destroy()}else e[o.field]=n}function p(e){var t=document.createElement(\"textarea\");return t.style.position=\"absolute\",t.style.left=\"-1000px\",t.style.top=document.body.scrollTop+\"px\",t.value=e,d.appendChild(t),t.select(),t}function y(e,l){var n;if(!t.getEditorLock().isActive()||t.getOptions().autoEdit){if(e.which==a.ESC&&o&&(e.preventDefault(),w(),r.onCopyCancelled.notify({ranges:o}),o=null),(e.which===a.C||e.which===a.INSERT)&&(e.ctrlKey||e.metaKey)&&!e.shiftKey&&(f&&f.call(),0!==(n=t.getSelectionModel().getSelectedRanges()).length)){o=n,v(n),r.onCopyCells.notify({ranges:n});for(var s=t.getColumns(),u=\"\",c=0;c<n.length;c++){for(var y=n[c],D=[],S=y.fromRow;S<y.toRow+1;S++){var R=[],x=t.getDataItem(S);if(0===D.length&&i.includeHeaderWhenCopying){for(var E=[],V=y.fromCell;V<y.toCell+1;V++)s[V].name.length>0&&E.push(C(s[V]));D.push(E.join(\"\\t\"))}for(V=y.fromCell;V<y.toCell+1;V++)R.push(m(x,s[V],e));D.push(R.join(\"\\t\"))}u+=D.join(\"\\r\\n\")+\"\\r\\n\"}if(window.clipboardData)return window.clipboardData.setData(\"Text\",u),!0;var b=document.activeElement;if((M=p(u)).focus(),setTimeout((function(){d.removeChild(M),b?b.focus():console.log(\"Not element to restore focus to after copy?\")}),100),h){var I=0;I=1===n.length?n[0].toRow+1-n[0].fromRow:n.length,h.call(this,I)}return!1}if(!i.readOnlyMode&&(e.which===a.V&&(e.ctrlKey||e.metaKey)&&!e.shiftKey||e.which===a.INSERT&&e.shiftKey&&!e.ctrlKey)){var M=p(\"\");return setTimeout((function(){!function(e,t){var o=e.getColumns(),l=t.value.split(/[\\n\\f\\r]/);\"\"===l[l.length-1]&&l.pop();var n=[],a=0;d.removeChild(t);for(var s=0;s<l.length;s++)\"\"!==l[s]?n[a++]=l[s].split(\"\\t\"):n[a++]=[\"\"];var u=e.getActiveCell(),c=e.getSelectionModel().getSelectedRanges(),f=c&&c.length?c[0]:null,h=null,C=null;if(f)h=f.fromRow,C=f.fromCell;else{if(!u)return;h=u.row,C=u.cell}var m=!1,p=n.length,y=n.length?n[0].length:0;1==n.length&&1==n[0].length&&f&&(m=!0,p=f.toRow-f.fromRow+1,y=f.toCell-f.fromCell+1);var w=e.getData().length-h,D=0;if(w<p&&i.newRowCreator){var S=e.getData();for(D=1;D<=p-w;D++)S.push({});e.setData(S),e.render()}var R=h+p>e.getDataLength();if(i.newRowCreator&&R){var x=h+p-e.getDataLength();i.newRowCreator(x)}var E={isClipboardCommand:!0,clippedRange:n,oldValues:[],cellExternalCopyManager:r,_options:i,setDataItemValueForColumn:g,markCopySelection:v,oneCellToMultiple:m,activeRow:h,activeCell:C,destH:p,destW:y,maxDestY:e.getDataLength(),maxDestX:e.getColumns().length,h:0,w:0,execute:function(){this.h=0;for(var t=0;t<this.destH;t++){this.oldValues[t]=[],this.w=0,this.h++;for(var l=0;l<this.destW;l++){this.w++;var a=h+t,r=C+l;if(a<this.maxDestY&&r<this.maxDestX){e.getCellNode(a,r);var i=e.getDataItem(a);this.oldValues[t][l]=i[o[r].field],m?this.setDataItemValueForColumn(i,o[r],n[0][0]):this.setDataItemValueForColumn(i,o[r],n[t]?n[t][l]:\"\"),e.updateCell(a,r),e.onCellChange.notify({row:a,cell:r,item:i,grid:e})}}}var s={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};this.markCopySelection([s]),e.getSelectionModel().setSelectedRanges([s]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[s]})},undo:function(){for(var t=0;t<this.destH;t++)for(var l=0;l<this.destW;l++){var n=h+t,a=C+l;if(n<this.maxDestY&&a<this.maxDestX){e.getCellNode(n,a);var r=e.getDataItem(n);m?this.setDataItemValueForColumn(r,o[a],this.oldValues[0][0]):this.setDataItemValueForColumn(r,o[a],this.oldValues[t][l]),e.updateCell(n,a),e.onCellChange.notify({row:n,cell:a,item:r,grid:e})}}var i={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};if(this.markCopySelection([i]),e.getSelectionModel().setSelectedRanges([i]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[i]}),D>1){for(var s=e.getData();D>1;D--)s.splice(s.length-1,1);e.setData(s),e.render()}}};i.clipboardCommandHandler?i.clipboardCommandHandler(E):E.execute()}(t,M)}),100),!1}}}function v(e){w();for(var o=t.getColumns(),l={},n=0;n<e.length;n++)for(var a=e[n].fromRow;a<=e[n].toRow;a++){l[a]={};for(var i=e[n].fromCell;i<=e[n].toCell&&i<o.length;i++)l[a][o[i].id]=u}t.setCellCssStyles(s,l),clearTimeout(c),c=setTimeout((function(){r.clearCopySelection()}),2e3)}function w(){t.removeCellCssStyles(s)}l.extend(this,{init:function(e){(t=e).onKeyDown.subscribe(y);var o=e.getSelectionModel();if(!o)throw new Error(\"Selection model is mandatory for this plugin. Please set a selection model on the grid before adding this plugin: grid.setSelectionModel(new Slick.CellSelectionModel())\");o.onSelectedRangesChanged.subscribe((function(e,o){t.focus()}))},destroy:function(){t.onKeyDown.unsubscribe(y)},pluginName:\"CellExternalCopyManager\",clearCopySelection:w,handleKeyDown:y,onCopyCells:new n.Event,onCopyCancelled:new n.Event,onPasteCells:new n.Event,setIncludeHeaderWhenCopying:function(e){i.includeHeaderWhenCopying=e}})}}},\n",
       "      463: function _(r,t,o){var _=r(1);_.__exportStar(r(460),t.exports),_.__exportStar(r(464),t.exports),_.__exportStar(r(467),t.exports),_.__exportStar(r(468),t.exports),_.__exportStar(r(469),t.exports),_.__exportStar(r(470),t.exports),_.__exportStar(r(471),t.exports)},\n",
       "      464: function _(require,module,exports){\n",
       "      /**\n",
       "           * @license\n",
       "           * (c) 2009-2016 Michael Leibman\n",
       "           * michael{dot}leibman{at}gmail{dot}com\n",
       "           * http://github.com/mleibman/slickgrid\n",
       "           *\n",
       "           * Distributed under MIT license.\n",
       "           * All rights reserved.\n",
       "           *\n",
       "           * SlickGrid v2.4\n",
       "           *\n",
       "           * NOTES:\n",
       "           *     Cell/row DOM manipulations are done directly bypassing jQuery's DOM manipulation methods.\n",
       "           *     This increases the speed dramatically, but can only be done safely because there are no event handlers\n",
       "           *     or data associated with any cell/row DOM nodes.  Cell editors must make sure they implement .destroy()\n",
       "           *     and do proper cleanup.\n",
       "           */\n",
       "      var $=require(458),Slick=require(460),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(465),$.fn.drop||require(466);var defaults={alwaysShowVerticalScroll:!1,alwaysAllowHorizontalScroll:!1,explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,suppressActiveCellChangeOnEdit:!1,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,showColumnHeader:!0,showHeaderRow:!1,headerRowHeight:25,createFooterRow:!1,showFooterRow:!1,footerRowHeight:25,createPreHeaderPanel:!1,showPreHeaderPanel:!1,preHeaderPanelHeight:25,showTopPanel:!1,topPanelHeight:25,formatterFactory:null,editorFactory:null,cellFlashingCssClass:\"flashing\",selectedCellCssClass:\"selected\",multiSelect:!0,enableTextSelectionOnCells:!1,dataItemColumnValueExtractor:null,frozenBottom:!1,frozenColumn:-1,frozenRow:-1,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,sortColNumberInSeparateSpan:!1,defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0,viewportClass:null,minRowBuffer:3,emulatePagingWhenScrolling:!0,editorCellNavOnLRKeys:!1,doPaging:!0,autosizeColsMode:Slick.GridAutosizeColsMode.LegacyOff,autosizeColPaddingPx:4,autosizeTextAvgToMWidthRatio:.75,viewportSwitchToScrollModeWidthPercent:void 0,viewportMinWidthPx:void 0,viewportMaxWidthPx:void 0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,maxWidth:void 0,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!0},columnAutosizeDefaults={ignoreHeaderText:!1,colValueArray:void 0,allowAddlPercent:void 0,formatterOverride:void 0,autosizeMode:Slick.ColAutosizeMode.ContentIntelligent,rowSelectionModeOnInit:void 0,rowSelectionMode:Slick.RowSelectionMode.FirstNRows,rowSelectionCount:100,valueFilterMode:Slick.ValueFilterMode.None,widthEvalMode:Slick.WidthEvalMode.CanvasTextSize,sizeToRemaining:void 0,widthPx:void 0,colDataTypeOf:void 0},th,h,ph,n,cj,page=0,offset=0,vScrollDir=1,initialized=!1,$container,uid=\"slickgrid_\"+Math.round(1e6*Math.random()),self=this,$focusSink,$focusSink2,$groupHeaders=$(),$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacerL,$headerRowSpacerR,$footerRow,$footerRowScroller,$footerRowSpacerL,$footerRowSpacerR,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$preHeaderPanelR,$preHeaderPanelScrollerR,$preHeaderPanelSpacerR,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,treeColumns,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,canvasWidthL,canvasWidthR,headersWidth,headersWidthL,headersWidthR,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,hasFrozenRows=!1,frozenRowsHeight=0,actualFrozenRow=-1,paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,topPanelH=0,headerRowH=0,footerRowH=0,tabbingDirection=1,$activeCanvasNode,$activeViewportNode,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows=0,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,scrollThrottle=ActionThrottle(render,50),h_editorLoader=null,h_render=null,h_postrender=null,h_postrenderCleanup=null,postProcessedRows={},postProcessToRow=null,postProcessFromRow=null,postProcessedCleanupQueue=[],postProcessgroupId=0,counter_rows_rendered=0,counter_rows_removed=0,rowNodeFromLastMouseWheelEvent,zombieRowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent,$paneHeaderL,$paneHeaderR,$paneTopL,$paneTopR,$paneBottomL,$paneBottomR,$headerScrollerL,$headerScrollerR,$headerL,$headerR,$groupHeadersL,$groupHeadersR,$headerRowScrollerL,$headerRowScrollerR,$footerRowScrollerL,$footerRowScrollerR,$headerRowL,$headerRowR,$footerRowL,$footerRowR,$topPanelScrollerL,$topPanelScrollerR,$topPanelL,$topPanelR,$viewportTopL,$viewportTopR,$viewportBottomL,$viewportBottomR,$canvasTopL,$canvasTopR,$canvasBottomL,$canvasBottomR,$viewportScrollContainerX,$viewportScrollContainerY,$headerScrollContainer,$headerRowScrollContainer,$footerRowScrollContainer,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[],columnResizeDragging=!1;function init(){if(($container=container instanceof $?container:$(container)).length<1)throw new Error(\"SlickGrid requires a valid container, \"+container+\" does not exist in the DOM.\");if(cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,treeColumns=new Slick.TreeColumns(columns),columns=treeColumns.extractColumns(),updateColumnProps(),options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");if(editController={commitCurrentEdit,cancelCurrentEdit},$container.empty().css(\"overflow\",\"hidden\").css(\"outline\",0).addClass(uid).addClass(\"ui-widget\"),/relative|absolute|fixed/.test($container.css(\"position\"))||$container.css(\"position\",\"relative\"),$focusSink=$(\"<div tabIndex='0' hideFocus style='position:fixed;width:0;height:0;top:0;left:0;outline:0;'></div>\").appendTo($container),$paneHeaderL=$(\"<div class='slick-pane slick-pane-header slick-pane-left' tabIndex='0' />\").appendTo($container),$paneHeaderR=$(\"<div class='slick-pane slick-pane-header slick-pane-right' tabIndex='0' />\").appendTo($container),$paneTopL=$(\"<div class='slick-pane slick-pane-top slick-pane-left' tabIndex='0' />\").appendTo($container),$paneTopR=$(\"<div class='slick-pane slick-pane-top slick-pane-right' tabIndex='0' />\").appendTo($container),$paneBottomL=$(\"<div class='slick-pane slick-pane-bottom slick-pane-left' tabIndex='0' />\").appendTo($container),$paneBottomR=$(\"<div class='slick-pane slick-pane-bottom slick-pane-right' tabIndex='0' />\").appendTo($container),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderL),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScroller),$preHeaderPanelScrollerR=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderR),$preHeaderPanelR=$(\"<div />\").appendTo($preHeaderPanelScrollerR),$preHeaderPanelSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScrollerR),options.showPreHeaderPanel||($preHeaderPanelScroller.hide(),$preHeaderPanelScrollerR.hide())),$headerScrollerL=$(\"<div class='slick-header ui-state-default slick-header-left' />\").appendTo($paneHeaderL),$headerScrollerR=$(\"<div class='slick-header ui-state-default slick-header-right' />\").appendTo($paneHeaderR),$headerScroller=$().add($headerScrollerL).add($headerScrollerR),treeColumns.hasDepth()){$groupHeadersL=[],$groupHeadersR=[];for(var e=0;e<treeColumns.getDepth()-1;e++)$groupHeadersL[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$groupHeadersR[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR);$groupHeaders=$().add($groupHeadersL).add($groupHeadersR)}$headerL=$(\"<div class='slick-header-columns slick-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$headerR=$(\"<div class='slick-header-columns slick-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR),$headers=$().add($headerL).add($headerR),$headerRowScrollerL=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopL),$headerRowScrollerR=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopR),$headerRowScroller=$().add($headerRowScrollerL).add($headerRowScrollerR),$headerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerL),$headerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerR),$headerRowL=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-left' />\").appendTo($headerRowScrollerL),$headerRowR=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-right' />\").appendTo($headerRowScrollerR),$headerRow=$().add($headerRowL).add($headerRowR),$topPanelScrollerL=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopL),$topPanelScrollerR=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopR),$topPanelScroller=$().add($topPanelScrollerL).add($topPanelScrollerR),$topPanelL=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerL),$topPanelR=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerR),$topPanel=$().add($topPanelL).add($topPanelR),options.showColumnHeader||$headerScroller.hide(),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),$viewportTopL=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneTopL),$viewportTopR=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneTopR),$viewportBottomL=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneBottomL),$viewportBottomR=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneBottomR),$viewport=$().add($viewportTopL).add($viewportTopR).add($viewportBottomL).add($viewportBottomR),$activeViewportNode=$viewportTopL,$canvasTopL=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportTopL),$canvasTopR=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportTopR),$canvasBottomL=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportBottomL),$canvasBottomR=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportBottomR),options.viewportClass&&$viewport.toggleClass(options.viewportClass,!0),$canvas=$().add($canvasTopL).add($canvasTopR).add($canvasBottomL).add($canvasBottomR),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),$activeCanvasNode=$canvasTopL,$preHeaderPanelSpacer&&$preHeaderPanelSpacer.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headers.width(getHeadersWidth()),$headerRowSpacerL.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headerRowSpacerR.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),options.createFooterRow&&($footerRowScrollerR=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopR),$footerRowScrollerL=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopL),$footerRowScroller=$().add($footerRowScrollerL).add($footerRowScrollerR),$footerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerL),$footerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerR),$footerRowL=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-left' />\").appendTo($footerRowScrollerL),$footerRowR=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-right' />\").appendTo($footerRowScrollerR),$footerRow=$().add($footerRowL).add($footerRowR),options.showFooterRow||$footerRowScroller.hide()),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,getViewportWidth(),getViewportHeight(),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",(function(e){return $(e.target).is(\"input,textarea\")})),setFrozenOptions(),setPaneVisibility(),setScroller(),setOverflow(),updateColumnCaches(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$.fn.mousewheel&&$viewport.on(\"mousewheel\",handleMouseWheel),$headerScroller.on(\"contextmenu\",handleHeaderContextMenu).on(\"click\",handleHeaderClick).on(\"mouseenter\",\".slick-header-column\",handleHeaderMouseEnter).on(\"mouseleave\",\".slick-header-column\",handleHeaderMouseLeave),$headerRowScroller.on(\"scroll\",handleHeaderRowScroll),options.createFooterRow&&($footerRow.on(\"contextmenu\",handleFooterContextMenu).on(\"click\",handleFooterClick),$footerRowScroller.on(\"scroll\",handleFooterRowScroll)),options.createPreHeaderPanel&&$preHeaderPanelScroller.on(\"scroll\",handlePreHeaderPanelScroll),$focusSink.add($focusSink2).on(\"keydown\",handleKeyDown),$canvas.on(\"keydown\",handleKeyDown).on(\"click\",handleClick).on(\"dblclick\",handleDblClick).on(\"contextmenu\",handleContextMenu).on(\"draginit\",handleDragInit).on(\"dragstart\",{distance:3},handleDragStart).on(\"drag\",handleDrag).on(\"dragend\",handleDragEnd).on(\"mouseenter\",\".slick-cell\",handleMouseEnter).on(\"mouseleave\",\".slick-cell\",handleMouseLeave),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each((function(){var e={};for(var o in cssShow)e[o]=this.style[o],this.style[o]=cssShow[o];oldProps.push(e)}))}function restoreCssFromHiddenInit(){$hiddenParents.each((function(e){var o=oldProps[e];for(var t in cssShow)this.style[t]=o[t]}))}function hasFrozenColumns(){return options.frozenColumn>-1}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var o=plugins.length;o>=0;o--)if(plugins[o]===e){plugins[o].destroy&&plugins[o].destroy(),plugins.splice(o,1);break}}function getPluginByName(e){for(var o=plugins.length-1;o>=0;o--)if(plugins[o].pluginName===e)return plugins[o]}function setSelectionModel(e){selectionModel&&(selectionModel.onSelectedRangesChanged.unsubscribe(handleSelectedRangesChanged),selectionModel.destroy&&selectionModel.destroy()),(selectionModel=e)&&(selectionModel.init(self),selectionModel.onSelectedRangesChanged.subscribe(handleSelectedRangesChanged))}function getSelectionModel(){return selectionModel}function getCanvasNode(e,o){e||(e=0),o||(o=0);var t=\"number\"==typeof e?e:getColumnIndex(e);return hasFrozenRows&&o>=actualFrozenRow+(options.frozenBottom?0:1)?hasFrozenColumns()&&t>options.frozenColumn?$canvasBottomR[0]:$canvasBottomL[0]:hasFrozenColumns()&&t>options.frozenColumn?$canvasTopR[0]:$canvasTopL[0]}function getActiveCanvasNode(e){return setActiveCanvasNode(e),$activeCanvasNode[0]}function getCanvases(){return $canvas}function setActiveCanvasNode(e){e&&($activeCanvasNode=$(e.target).closest(\".grid-canvas\"))}function getViewportNode(){return $viewport[0]}function getActiveViewportNode(e){return setActiveViewPortNode(e),$activeViewportNode[0]}function setActiveViewportNode(e){e&&($activeViewportNode=$(e.target).closest(\".slick-viewport\"))}function measureScrollbar(){var e=$('<div class=\"'+$viewport.className+'\" style=\"position:absolute; top:-10000px; left:-10000px; overflow:auto; width:100px; height:100px;\"></div>').appendTo(\"body\"),o=$('<div style=\"width:200px; height:200px; overflow:auto;\"></div>').appendTo(e),t={width:e[0].offsetWidth-e[0].clientWidth,height:e[0].offsetHeight-e[0].clientHeight};return o.remove(),e.remove(),t}function getHeadersWidth(){headersWidth=headersWidthL=headersWidthR=0;for(var e=!options.autoHeight,o=0,t=columns.length;o<t;o++){var n=columns[o].width;options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=n:headersWidthL+=n}return e&&(options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=scrollbarDimensions.width:headersWidthL+=scrollbarDimensions.width),hasFrozenColumns()?(headersWidthL+=1e3,headersWidthR=Math.max(headersWidthR,viewportW)+headersWidthL,headersWidthR+=scrollbarDimensions.width):(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidth=headersWidthL+headersWidthR,Math.max(headersWidth,viewportW)+1e3}function getHeadersWidthL(){return headersWidthL=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn||(headersWidthL+=e.width)})),hasFrozenColumns()?headersWidthL+=1e3:(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidthL}function getHeadersWidthR(){return headersWidthR=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn&&(headersWidthR+=e.width)})),hasFrozenColumns()&&(headersWidthR=Math.max(headersWidthR,viewportW)+getHeadersWidthL(),headersWidthR+=scrollbarDimensions.width),headersWidthR}function getCanvasWidth(){var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,o=columns.length;for(canvasWidthL=canvasWidthR=0;o--;)hasFrozenColumns()&&o>options.frozenColumn?canvasWidthR+=columns[o].width:canvasWidthL+=columns[o].width;var t=canvasWidthL+canvasWidthR;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var o,t=canvasWidth,n=canvasWidthL,l=canvasWidthR;((o=(canvasWidth=getCanvasWidth())!==t||canvasWidthL!==n||canvasWidthR!==l)||hasFrozenColumns()||hasFrozenRows)&&($canvasTopL.width(canvasWidthL),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),hasFrozenColumns()?($canvasTopR.width(canvasWidthR),$paneHeaderL.width(canvasWidthL),$paneHeaderR.css(\"left\",canvasWidthL),$paneHeaderR.css(\"width\",viewportW-canvasWidthL),$paneTopL.width(canvasWidthL),$paneTopR.css(\"left\",canvasWidthL),$paneTopR.css(\"width\",viewportW-canvasWidthL),$headerRowScrollerL.width(canvasWidthL),$headerRowScrollerR.width(viewportW-canvasWidthL),$headerRowL.width(canvasWidthL),$headerRowR.width(canvasWidthR),options.createFooterRow&&($footerRowScrollerL.width(canvasWidthL),$footerRowScrollerR.width(viewportW-canvasWidthL),$footerRowL.width(canvasWidthL),$footerRowR.width(canvasWidthR)),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$viewportTopL.width(canvasWidthL),$viewportTopR.width(viewportW-canvasWidthL),hasFrozenRows&&($paneBottomL.width(canvasWidthL),$paneBottomR.css(\"left\",canvasWidthL),$viewportBottomL.width(canvasWidthL),$viewportBottomR.width(viewportW-canvasWidthL),$canvasBottomL.width(canvasWidthL),$canvasBottomR.width(canvasWidthR))):($paneHeaderL.width(\"100%\"),$paneTopL.width(\"100%\"),$headerRowScrollerL.width(\"100%\"),$headerRowL.width(canvasWidth),options.createFooterRow&&($footerRowScrollerL.width(\"100%\"),$footerRowL.width(canvasWidth)),options.createPreHeaderPanel&&($preHeaderPanel.width(\"100%\"),$preHeaderPanel.width(canvasWidth)),$viewportTopL.width(\"100%\"),hasFrozenRows&&($viewportBottomL.width(\"100%\"),$canvasBottomL.width(canvasWidthL))),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width),$headerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$headerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),options.createFooterRow&&($footerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$footerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0))),(o||e)&&applyColumnWidths()}function disableSelection(e){e&&e.jquery&&e.attr(\"unselectable\",\"on\").css(\"MozUserSelect\",\"none\").on(\"selectstart.ui\",(function(){return!1}))}function getMaxSupportedCssHeight(){for(var e=1e6,o=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,t=$(\"<div style='display:none' />\").appendTo(document.body);;){var n=2*e;if(t.css(\"height\",n),n>o||t.height()!==n)break;e=n}return t.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=hasFrozenRows&&!options.frozenBottom?$canvasBottomL[0]:$canvasTopL[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewportTopL[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var o=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(o):o,o.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,o,t){if(initialized){var n=getColumnIndex(e);if(null!=n){var l=columns[n],r=$headers.children().eq(n);r&&(void 0!==o&&(columns[n].name=o),void 0!==t&&(columns[n].toolTip=t),trigger(self.onBeforeHeaderCellDestroy,{node:r[0],column:l,grid:self}),r.attr(\"title\",t||\"\").children().eq(0).html(o),trigger(self.onHeaderCellRendered,{node:r[0],column:l,grid:self}))}}}function getHeader(e){if(!e)return hasFrozenColumns()?$headers:$headerL;var o=getColumnIndex(e.id);return hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL}function getHeaderColumn(e){var o=\"number\"==typeof e?e:getColumnIndex(e),t=hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL,n=hasFrozenColumns()?o<=options.frozenColumn?o:o-options.frozenColumn-1:o,l=t.children().eq(n);return l&&l[0]}function getHeaderRow(){return hasFrozenColumns()?$headerRow:$headerRow[0]}function getFooterRow(){return hasFrozenColumns()?$footerRow:$footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getPreHeaderPanelRight(){return $preHeaderPanelR[0]}function getHeaderRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$headerRowL:(o=$headerRowR,t-=options.frozenColumn+1):o=$headerRowL;var n=o.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$footerRowL:(o=$footerRowR,t-=options.frozenColumn+1):o=$footerRowL;var n=o&&o.children().eq(t);return n&&n[0]}function createColumnFooter(){if(options.createFooterRow){$footerRow.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),$footerRowR.empty();for(var e=0;e<columns.length;e++){var o=columns[e],t=$(\"<div class='ui-state-default slick-footerrow-column l\"+e+\" r\"+e+\"'></div>\").data(\"column\",o).addClass(hasFrozenColumns()&&e<=options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e>options.frozenColumn?$footerRowR:$footerRowL);trigger(self.onFooterRowCellRendered,{node:t[0],column:o,grid:self})}}}function createColumnGroupHeaders(){var e=0,o=!1;if(treeColumns.hasDepth()){for(var t=0;t<$groupHeadersL.length;t++){$groupHeadersL[t].empty(),$groupHeadersR[t].empty();var n=treeColumns.getColumnsInDepth(t);for(var l in n){var r=n[l];e+=r.extractColumns().length,hasFrozenColumns()&&0===t&&e-1===options.frozenColumn&&(o=!0),$(\"<div class='ui-state-default slick-group-header-column' />\").html(\"<span class='slick-column-name'>\"+r.name+\"</span>\").attr(\"id\",\"\"+uid+r.id).attr(\"title\",r.toolTip||\"\").data(\"column\",r).addClass(r.headerCssClass||\"\").addClass(hasFrozenColumns()&&e-1>options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e-1>options.frozenColumn?$groupHeadersR[t]:$groupHeadersL[t])}if(hasFrozenColumns()&&0===t&&!o){$groupHeadersL[t].empty(),$groupHeadersR[t].empty(),alert(\"All columns of group should to be grouped!\");break}}applyColumnGroupHeaderWidths()}}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function o(){$(this).removeClass(\"ui-state-hover\")}$headers.find(\".slick-header-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderCellDestroy,{node:this,column:e,grid:self})})),$headerL.empty(),$headerR.empty(),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),$headerRow.find(\".slick-headerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})})),$headerRowL.empty(),$headerRowR.empty(),options.createFooterRow&&($footerRowL.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),hasFrozenColumns()&&($footerRowR.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowR.empty()));for(var t=0;t<columns.length;t++){var n=columns[t],l=hasFrozenColumns()?t<=options.frozenColumn?$headerL:$headerR:$headerL,r=hasFrozenColumns()?t<=options.frozenColumn?$headerRowL:$headerRowR:$headerRowL,i=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+n.name+\"</span>\").width(n.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+n.id).attr(\"title\",n.toolTip||\"\").data(\"column\",n).addClass(n.headerCssClass||\"\").addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(l);if((options.enableColumnReorder||n.sortable)&&i.on(\"mouseenter\",e).on(\"mouseleave\",o),n.hasOwnProperty(\"headerCellAttrs\")&&n.headerCellAttrs instanceof Object)for(var a in n.headerCellAttrs)n.headerCellAttrs.hasOwnProperty(a)&&i.attr(a,n.headerCellAttrs[a]);if(n.sortable&&(i.addClass(\"slick-header-sortable\"),i.append(\"<span class='slick-sort-indicator\"+(options.numberedMultiColumnSort&&!options.sortColNumberInSeparateSpan?\" slick-sort-indicator-numbered\":\"\")+\"' />\"),options.numberedMultiColumnSort&&options.sortColNumberInSeparateSpan&&i.append(\"<span class='slick-sort-indicator-numbered' />\")),trigger(self.onHeaderCellRendered,{node:i[0],column:n,grid:self}),options.showHeaderRow){var s=$(\"<div class='ui-state-default slick-headerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(r);trigger(self.onHeaderRowCellRendered,{node:s[0],column:n,grid:self})}if(options.createFooterRow&&options.showFooterRow){var d=$(\"<div class='ui-state-default slick-footerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:d[0],column:n,grid:self})}}setSortColumns(sortColumns),setupColumnResize(),options.enableColumnReorder&&(\"function\"==typeof options.enableColumnReorder?options.enableColumnReorder(self,$headers,headerColumnWidthDiff,setColumns,setupColumnResize,columns,getColumnIndex,uid,trigger):setupColumnReorder())}function setupColumnSort(){$headers.click((function(e){if(!columnResizeDragging&&(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\"))){var o=$(e.target).closest(\".slick-header-column\");if(o.length){var t=o.data(\"column\");if(t.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var n=null,l=0;l<sortColumns.length;l++)if(sortColumns[l].columnId==t.id){(n=sortColumns[l]).sortAsc=!n.sortAsc;break}var r=!!n;options.tristateMultiColumnSort?(n||(n={columnId:t.id,sortAsc:t.defaultSortAsc}),r&&n.sortAsc&&(sortColumns.splice(l,1),n=null),options.multiColumnSort||(sortColumns=[]),!n||r&&options.multiColumnSort||sortColumns.push(n)):e.metaKey&&options.multiColumnSort?n&&sortColumns.splice(l,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),n?0===sortColumns.length&&sortColumns.push(n):(n={columnId:t.id,sortAsc:t.defaultSortAsc},sortColumns.push(n))),setSortColumns(sortColumns),options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,(function(e){return{columnId:columns[getColumnIndex(e.columnId)].id,sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}))},e):trigger(self.onSort,{multiColumnSort:!1,columnId:sortColumns.length>0?t.id:null,sortCol:sortColumns.length>0?t:null,sortAsc:!(sortColumns.length>0)||sortColumns[0].sortAsc},e)}}}}))}function currentPositionInHeader(e){var o=0;return $headers.find(\".slick-header-column\").each((function(t){if(this.id==e)return o=t,!1})),o}function limitPositionInGroup(e){var o,t=0,n=0;return treeColumns.getColumnsInDepth($groupHeadersL.length-1).some((function(l){return t=n,n+=l.columns.length,l.columns.some((function(t){return t.id===e&&(o=l),o})),o})),n--,{start:t,end:n,group:o}}function remove(e,o){var t=e.lastIndexOf(o);t>-1&&(e.splice(t,1),remove(e,o))}function columnPositionValidInGroup(e){var o=currentPositionInHeader(e[0].id),t=limitPositionInGroup(e.data(\"column\").id),n=t.start<=o&&o<=t.end;return{limit:t,valid:n,message:n?\"\":'Column \"'.concat(e.text(),'\" can be reordered only within the \"',t.group.name,'\" group!')}}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\");var e,o=null;function t(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft+10}function n(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft-10}$headers.sortable({containment:\"parent\",distance:3,axis:\"x\",cursor:\"default\",tolerance:\"intersection\",helper:\"clone\",placeholder:\"slick-sortable-placeholder ui-state-default slick-header-column\",start:function(o,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),e=!hasFrozenColumns()||t.placeholder.offset().left+t.placeholder.width()>$viewportScrollContainerX.offset().left,$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,o){$(o.helper).removeClass(\"slick-header-column-active\")},sort:function(l,r){e&&l.originalEvent.pageX>$container[0].clientWidth?o||(o=setInterval(t,100)):e&&l.originalEvent.pageX<$viewportScrollContainerX.offset().left?o||(o=setInterval(n,100)):(clearInterval(o),o=null)},stop:function(e,t){var n=!1;clearInterval(o),o=null;var l=null;if(treeColumns.hasDepth()){var r=columnPositionValidInGroup(t.item);l=r.limit,(n=!r.valid)&&alert(r.message)}if(!n&&getEditorLock().commitCurrentEdit()){var i=$headerL.sortable(\"toArray\");i=i.concat($headerR.sortable(\"toArray\"));for(var a=[],s=0;s<i.length;s++)a.push(columns[getColumnIndex(i[s].replace(uid,\"\"))]);setColumns(a),trigger(self.onColumnsReordered,{impactedColumns:getImpactedColumns(l)}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function getImpactedColumns(e){var o=[];if(e)for(var t=e.start;t<=e.end;t++)o.push(columns[t]);else o=columns;return o}function setupColumnResize(){var e,o,t,n,l,r,i,a,s;(l=$headers.children()).find(\".slick-resizable-handle\").remove(),l.each((function(e,o){e>=columns.length||columns[e].resizable&&(void 0===a&&(a=e),s=e)})),void 0!==a&&l.each((function(d,c){d>=columns.length||d<a||options.forceFitColumns&&d>=s||($(c),$(\"<div class='slick-resizable-handle' />\").appendTo(c).on(\"dragstart\",(function(o,a){if(!getEditorLock().commitCurrentEdit())return!1;n=o.pageX,$(this).parent().addClass(\"slick-header-column-active\");var s=null,c=null;if(l.each((function(e,o){e>=columns.length||(columns[e].previousWidth=$(o).outerWidth())})),options.forceFitColumns)for(s=0,c=0,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(null!==c&&(t.maxWidth?c+=t.maxWidth-t.previousWidth:c=null),s+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));var u=0,h=0;for(e=0;e<=d;e++)(t=columns[e]).resizable&&(null!==h&&(t.maxWidth?h+=t.maxWidth-t.previousWidth:h=null),u+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));null===s&&(s=1e5),null===u&&(u=1e5),null===c&&(c=1e5),null===h&&(h=1e5),i=n+Math.min(s,h),r=n-Math.min(u,c)})).on(\"drag\",(function(l,a){columnResizeDragging=!0;var s,c,u=Math.min(i,Math.max(r,l.pageX))-n,h=0;if(u<0){for(c=u,e=d;e>=0;e--)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0))}else{for(c=u,h=0,0,e=d;e>=0;e--)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width}hasFrozenColumns()&&h!=canvasWidthL&&($headerL.width(h+1e3),$paneHeaderR.css(\"left\",h)),applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths(),trigger(self.onColumnsDrag,{triggeredByColumn:$(this).parent().attr(\"id\").replace(uid,\"\"),resizeHandle:$(this)})})).on(\"dragend\",(function(o,n){$(this).parent().removeClass(\"slick-header-column-active\");var r,i=$(this).parent().attr(\"id\").replace(uid,\"\");for(!0===trigger(self.onBeforeColumnsResize,{triggeredByColumn:i})&&(applyColumnHeaderWidths(),applyColumnGroupHeaderWidths()),e=0;e<columns.length;e++)t=columns[e],r=$(l[e]).outerWidth(),t.previousWidth!==r&&t.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{triggeredByColumn:i}),setTimeout((function(){columnResizeDragging=!1}),300)})))}))}function getVBoxDelta(e){var o=0;return e&&\"function\"==typeof e.css&&$.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],(function(t,n){o+=parseFloat(e.css(n))||0})),o}function setFrozenOptions(){if(options.frozenColumn=options.frozenColumn>=0&&options.frozenColumn<columns.length?parseInt(options.frozenColumn):-1,options.frozenRow>-1){hasFrozenRows=!0,frozenRowsHeight=options.frozenRow*options.rowHeight;var e=getDataLength();actualFrozenRow=options.frozenBottom?e-options.frozenRow:options.frozenRow}else hasFrozenRows=!1}function setPaneVisibility(){hasFrozenColumns()?($paneHeaderR.show(),$paneTopR.show(),hasFrozenRows?($paneBottomL.show(),$paneBottomR.show()):($paneBottomR.hide(),$paneBottomL.hide())):($paneHeaderR.hide(),$paneTopR.hide(),$paneBottomR.hide(),hasFrozenRows?$paneBottomL.show():($paneBottomR.hide(),$paneBottomL.hide()))}function setOverflow(){$viewportTopL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportTopR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),hasFrozenRows?\"scroll\":\"auto\")}),$viewportBottomL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportBottomR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),\"auto\")}),options.viewportClass&&($viewportTopL.toggleClass(options.viewportClass,!0),$viewportTopR.toggleClass(options.viewportClass,!0),$viewportBottomL.toggleClass(options.viewportClass,!0),$viewportBottomR.toggleClass(options.viewportClass,!0))}function setScroller(){hasFrozenColumns()?($headerScrollContainer=$headerScrollerR,$headerRowScrollContainer=$headerRowScrollerR,$footerRowScrollContainer=$footerRowScrollerR,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomR,$viewportScrollContainerY=$viewportTopR):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomR:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopR):($headerScrollContainer=$headerScrollerL,$headerRowScrollContainer=$headerRowScrollerL,$footerRowScrollContainer=$footerRowScrollerL,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomL,$viewportScrollContainerY=$viewportTopL):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomL:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopL)}function measureCellPaddingAndBorder(){var e,o=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],n=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==n[0]&&n[1]>=8||n[0]>=2,e=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){headerColumnWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){headerColumnHeightDiff+=parseFloat(e.css(t))||0}))),e.remove();var l=$(\"<div class='slick-row' />\").appendTo($canvas);e=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(l),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){cellWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){cellHeightDiff+=parseFloat(e.css(t))||0}))),l.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,o=[\".\"+uid+\" .slick-group-header-column { left: 1000px; }\",\".\"+uid+\" .slick-header-column { left: 1000px; }\",\".\"+uid+\" .slick-top-panel { height:\"+options.topPanelHeight+\"px; }\",\".\"+uid+\" .slick-preheader-panel { height:\"+options.preHeaderPanelHeight+\"px; }\",\".\"+uid+\" .slick-headerrow-columns { height:\"+options.headerRowHeight+\"px; }\",\".\"+uid+\" .slick-footerrow-columns { height:\"+options.footerRowHeight+\"px; }\",\".\"+uid+\" .slick-cell { height:\"+e+\"px; }\",\".\"+uid+\" .slick-row { height:\"+options.rowHeight+\"px; }\"],t=0;t<columns.length;t++)o.push(\".\"+uid+\" .l\"+t+\" { }\"),o.push(\".\"+uid+\" .r\"+t+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=o.join(\" \"):$style[0].appendChild(document.createTextNode(o.join(\" \")))}function getColumnCssRules(e){var o;if(!stylesheet){var t=document.styleSheets;for(o=0;o<t.length;o++)if((t[o].ownerNode||t[o].owningElement)==$style[0]){stylesheet=t[o];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var n,l,r=stylesheet.cssRules||stylesheet.rules;for(o=0;o<r.length;o++){var i=r[o].selectorText;(n=/\\.l\\d+/.exec(i))?(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesL[l]=r[o]):(n=/\\.r\\d+/.exec(i))&&(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesR[l]=r[o])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{});for(var e=plugins.length;e--;)unregisterPlugin(plugins[e]);options.enableColumnReorder&&$headers.filter(\":ui-sortable\").sortable(\"destroy\"),unbindAncestorScrollEvents(),$container.off(\".slickgrid\"),removeCssRules(),$canvas.off(\"draginit dragstart dragend drag\"),$container.empty().removeClass(uid)}var canvas=null,canvas_context=null;function autosizeColumn(e,o){var t=e;if(\"number\"==typeof e)t=columns[e];else if(\"string\"==typeof e)for(var n=0;n<columns.length;n++)columns[n].Id===e&&(t=columns[n]);getColAutosizeWidth(t,$(getCanvasNode(0,0)),o)}function autosizeColumns(e,o){if((e=e||options.autosizeColsMode)!==Slick.GridAutosizeColsMode.LegacyForceFit&&e!==Slick.GridAutosizeColsMode.LegacyOff){if(e!==Slick.GridAutosizeColsMode.None){(canvas=document.createElement(\"canvas\"))&&canvas.getContext&&(canvas_context=canvas.getContext(\"2d\"));var t,n,l,r,i=$(getCanvasNode(0,0)),a=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,s=0,d=0,c=0,u=0,h=0;for(t=0;t<columns.length;t++)getColAutosizeWidth(n=columns[t],i,o),h+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:0,u+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:n.minWidth,s+=n.autoSize.widthPx,d+=n.autoSize.sizeToRemaining?0:n.autoSize.widthPx,c+=n.autoSize.sizeToRemaining&&n.minWidth||0;var p=s-d;if(e===Slick.GridAutosizeColsMode.FitViewportToCols){var m=s+scrollbarDimensions.width;e=Slick.GridAutosizeColsMode.IgnoreViewport,options.viewportMaxWidthPx&&m>options.viewportMaxWidthPx?(m=options.viewportMaxWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport):options.viewportMinWidthPx&&m<options.viewportMinWidthPx&&(m=options.viewportMinWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport),$container.width(m)}if(e===Slick.GridAutosizeColsMode.FitColsToViewport)if(p>0&&d<a-c)for(t=0;t<columns.length;t++){var w=a-d;l=(n=columns[t]).autoSize.sizeToRemaining?w*n.autoSize.widthPx/p:n.autoSize.widthPx,n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}else if(options.viewportSwitchToScrollModeWidthPercent&&d+c>a*options.viewportSwitchToScrollModeWidthPercent/100||u>a)e=Slick.GridAutosizeColsMode.IgnoreViewport;else{var v=d-h,f=a-h-c;for(t=0;t<columns.length;t++)l=(n=columns[t]).width,n.autoSize.autosizeMode!==Slick.ColAutosizeMode.Locked&&(n.autoSize.sizeToRemaining?l=n.minWidth:((l=f/v*n.autoSize.widthPx)<n.minWidth&&(l=n.minWidth),v-=n.autoSize.widthPx,f-=l)),n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}if(e===Slick.GridAutosizeColsMode.IgnoreViewport)for(t=0;t<columns.length;t++)l=columns[t].autoSize.widthPx,columns[t].rerenderOnResize&&columns[t].width!=l&&(r=!0),columns[t].width=l;reRenderColumns(r)}}else legacyAutosizeColumns()}function LogColWidths(){for(var e=\"Col Widths:\",o=0;o<columns.length;o++)e+=\" \"+columns[o].width;console.log(e)}function getColAutosizeWidth(e,o,t){var n=e.autoSize;if(n.widthPx=e.width,n.autosizeMode!==Slick.ColAutosizeMode.Locked&&n.autosizeMode!==Slick.ColAutosizeMode.Guide){var l=getDataLength();if(n.autosizeMode===Slick.ColAutosizeMode.ContentIntelligent){var r,i=n.colDataTypeOf;if(l>0){var a=getDataItem(0);a&&\"object\"===(i=typeof(r=a[e.field]))&&(r instanceof Date&&(i=\"date\"),\"undefined\"!=typeof moment&&r instanceof moment&&(i=\"moment\"))}\"boolean\"===i&&(n.colValueArray=[!0,!1]),\"number\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetGreatestAndSub,n.rowSelectionMode=Slick.RowSelectionMode.AllRows),\"string\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetLongestText,n.rowSelectionMode=Slick.RowSelectionMode.AllRows,n.allowAddlPercent=5),\"date\"===i&&(n.colValueArray=[new Date(2009,8,30,12,20,20)]),\"moment\"===i&&\"undefined\"!=typeof moment&&(n.colValueArray=[moment([2009,8,30,12,20,20])])}var s=getColContentSize(e,o,t);s=s*(n.allowAddlPercent?1+n.allowAddlPercent/100:1)+options.autosizeColPaddingPx,e.minWidth&&s<e.minWidth&&(s=e.minWidth),e.maxWidth&&s>e.maxWidth&&(s=e.maxWidth),n.widthPx=s}}function getColContentSize(e,o,t){var n,l=e.autoSize,r=1,i=0,a=0;if(l.ignoreHeaderText||(a=getColHeaderWidth(e)),l.colValueArray)return i=getColWidth(e,o,l.colValueArray),Math.max(a,i);var s=getData();s.getItems&&(s=s.getItems());var d=(t?l.rowSelectionModeOnInit:void 0)||l.rowSelectionMode;if(d===Slick.RowSelectionMode.FirstRow&&(s=s.slice(0,1)),d===Slick.RowSelectionMode.LastRow&&(s=s.slice(s.length-1,s.length)),d===Slick.RowSelectionMode.FirstNRows&&(s=s.slice(0,l.rowSelectionCount)),l.valueFilterMode===Slick.ValueFilterMode.DeDuplicate){var c={};for(u=0,n=s.length;u<n;u++)c[s[u][e.field]]=!0;if(Object.keys)s=Object.keys(c);else for(var u in s=[],c)s.push(u)}if(l.valueFilterMode===Slick.ValueFilterMode.GetGreatestAndSub){var h,p=0;for(u=0,n=s.length;u<n;u++)w=s[u][e.field],Math.abs(w)>p&&(h=w,p=Math.abs(w));h=\"\"+h,s=[h=+(h=Array(h.length+1).join(\"9\"))]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestTextAndSub){var m=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length);w=Array(m+1).join(\"m\"),r=options.autosizeTextAvgToMWidthRatio,s=[w]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestText){m=0;var w,v=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length,v=u);s=[w=s[v][e.field]]}return i=getColWidth(e,o,s)*r,Math.max(a,i)}function getColWidth(e,o,t){var n=getColumnIndex(e.id),l=$('<div class=\"slick-row ui-widget-content\"></div>'),r=$('<div class=\"slick-cell\"></div>');r.css({position:\"absolute\",visibility:\"hidden\",\"text-overflow\":\"initial\",\"white-space\":\"nowrap\"}),l.append(r),o.append(l);var i,a,s,d,c=0;return canvas_context&&e.autoSize.widthEvalMode===Slick.WidthEvalMode.CanvasTextSize?(canvas_context.font=r.css(\"font-size\")+\" \"+r.css(\"font-family\"),$(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,(i=(a=\"\"+d)?canvas_context.measureText(a).width:0)>c&&(c=i,s=a)})),r.html(s),i=r.outerWidth(),l.remove(),i):($(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,applyFormatResultToCellNode(e.formatterOverride?e.formatterOverride(o,n,d,e,t):e.formatter?e.formatter(o,n,d,e,t):\"\"+d,r[0]),(i=r.outerWidth())>c&&(c=i)})),l.remove(),c)}function getColHeaderWidth(e){var o=0,t=getUID()+e.id,n=document.getElementById(t),l=t+\"_\";if(n){var r=n.cloneNode(!0);r.id=l,r.style.cssText=\"position: absolute; visibility: hidden;right: auto;text-overflow: initial;white-space: nowrap;\",n.parentNode.insertBefore(r,n),o=r.offsetWidth,r.parentNode.removeChild(r)}else{var i=getHeader(e);o=(n=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+e.name+\"</span>\").attr(\"id\",l).css({position:\"absolute\",visibility:\"hidden\",right:\"auto\",\"text-overflow:\":\"initial\",\"white-space\":\"nowrap\"}).addClass(e.headerCssClass||\"\").appendTo(i))[0].offsetWidth,i[0].removeChild(n[0])}return o}function legacyAutosizeColumns(){var e,o,t,n=[],l=0,r=0,i=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)o=columns[e],n.push(o.width),r+=o.width,o.resizable&&(l+=o.width-Math.max(o.minWidth,absoluteColumnMinWidth));for(t=r;r>i&&l;){var a=(r-i)/l;for(e=0;e<columns.length&&r>i;e++){o=columns[e];var s=n[e];if(!(!o.resizable||s<=o.minWidth||s<=absoluteColumnMinWidth)){var d=Math.max(o.minWidth,absoluteColumnMinWidth),c=Math.floor(a*(s-d))||1;r-=c=Math.min(c,s-d),l-=c,n[e]-=c}}if(t<=r)break;t=r}for(t=r;r<i;){var u=i/r;for(e=0;e<columns.length&&r<i;e++){o=columns[e];var h,p=n[e];r+=h=!o.resizable||o.maxWidth<=p?0:Math.min(Math.floor(u*p)-p,o.maxWidth-p||1e6)||1,n[e]+=r<=i?h:0}if(t>=r)break;t=r}var m=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=n[e]&&(m=!0),columns[e].width=n[e];reRenderColumns(m)}function reRenderColumns(e){applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),updateCanvasWidth(!0),trigger(self.onAutosizeColumns,{columns}),e&&(invalidateAllRows(),render())}function trigger(e,o,t){return t=t||new Slick.EventData,(o=o||{}).grid=self,e.notify(o,t,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function applyColumnGroupHeaderWidths(){if(treeColumns.hasDepth())for(var e=$groupHeadersL.length-1;e>=0;e--){treeColumns.getColumnsInDepth(e);$().add($groupHeadersL[e]).add($groupHeadersR[e]).each((function(e){var o=$(this),t=0;o.width(0===e?getHeadersWidthL():getHeadersWidthR()),o.children().each((function(){var e=$(this),n=$(this).data(\"column\");n.width=0,n.columns.forEach((function(){var e=o.next().children(\":eq(\"+t+++\")\");n.width+=e.outerWidth()})),e.width(n.width-headerColumnWidthDiff)}))}))}}function applyColumnHeaderWidths(){if(initialized){for(var e,o=0,t=$headers.children(),n=columns.length;o<n;o++)e=$(t[o]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[o].width&&e.outerWidth(columns[o].width):e.width()!==columns[o].width-headerColumnWidthDiff&&e.width(columns[o].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,o,t=0,n=0;n<columns.length;n++)e=columns[n].width,(o=getColumnCssRules(n)).left.style.left=t+\"px\",o.right.style.right=(-1!=options.frozenColumn&&n>options.frozenColumn?canvasWidthR:canvasWidthL)-t-e+\"px\",options.frozenColumn==n?t=0:t+=columns[n].width}function setSortColumn(e,o){setSortColumns([{columnId:e,sortAsc:o}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&sortColumns.length>1,t=$headers.children();t.removeClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\"),t.find(\".slick-sort-indicator-numbered\").text(\"\"),$.each(sortColumns,(function(e,n){null==n.sortAsc&&(n.sortAsc=!0);var l=getColumnIndex(n.columnId);null!=l&&(t.eq(l).addClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").addClass(n.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&t.eq(l).find(\".slick-sort-indicator-numbered\").text(e+1))}))}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,o){var t=selectedRows.slice(0);selectedRows=[];for(var n={},l=0;l<o.length;l++)for(var r=o[l].fromRow;r<=o[l].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=o[l].fromCell;i<=o[l].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),simpleArrayEquals(t,selectedRows)&&trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),previousSelectedRows:t},e)}function simpleArrayEquals(e,o){return Array.isArray(e)&&Array.isArray(o)&&o.sort().toString()!==e.sort().toString()}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,o=0,t=columns.length;o<t;o++)columnPosLeft[o]=e,columnPosRight[o]=e+columns[o].width,options.frozenColumn==o?e=0:e+=columns[o].width}function updateColumnProps(){columnsById={};for(var e=0;e<columns.length;e++){columns[e].width&&(columns[e].widthRequest=columns[e].width);var o=columns[e]=$.extend({},columnDefaults,columns[e]);o.autoSize=$.extend({},columnAutosizeDefaults,o.autoSize),columnsById[o.id]=e,o.minWidth&&o.width<o.minWidth&&(o.width=o.minWidth),o.maxWidth&&o.width>o.maxWidth&&(o.width=o.maxWidth),o.resizable}}function setColumns(e){var o=new Slick.TreeColumns(e);columns=o.hasDepth()?(treeColumns=o).extractColumns():e,updateColumnProps(),updateColumnCaches(),initialized&&(setPaneVisibility(),setOverflow(),invalidateAllRows(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),removeCssRules(),createCssRules(),resizeCanvas(),updateCanvasWidth(),applyColumnHeaderWidths(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,o){if(getEditorLock().commitCurrentEdit()){makeActiveCellNormal(),void 0!==e.showColumnHeader&&setColumnHeaderVisibility(e.showColumnHeader),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength());var t=$.extend(!0,{},options);options=$.extend(options,e),trigger(self.onSetOptions,{optionsBefore:t,optionsAfter:options}),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),o||render(),setFrozenOptions(),setScroller(),zombieRowNodeFromLastMouseWheelEvent=null,setColumns(treeColumns.extractColumns())}}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1),options.forceFitColumns&&(options.autosizeColsMode=Slick.GridAutosizeColsMode.LegacyForceFit,console.log(\"forceFitColumns option is deprecated - use autosizeColsMode\"))}function setData(e,o){data=e,invalidateAllRows(),updateRowCount(),o&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data&&data.length||0}function getDataLengthIncludingAddNew(){return getDataLength()+(options.enableAddRow&&(!pagingActive||pagingIsLastPage)?1:0)}function getDataItem(e){return data.getItem?data.getItem(e):data[e]}function getTopPanel(){return $topPanel[0]}function setTopPanelVisibility(e,o){var t=!1!==o;options.showTopPanel!=e&&(options.showTopPanel=e,e?t?$topPanelScroller.slideDown(\"fast\",resizeCanvas):($topPanelScroller.show(),resizeCanvas()):t?$topPanelScroller.slideUp(\"fast\",resizeCanvas):($topPanelScroller.hide(),resizeCanvas()))}function setHeaderRowVisibility(e,o){var t=!1!==o;options.showHeaderRow!=e&&(options.showHeaderRow=e,e?t?$headerRowScroller.slideDown(\"fast\",resizeCanvas):($headerRowScroller.show(),resizeCanvas()):t?$headerRowScroller.slideUp(\"fast\",resizeCanvas):($headerRowScroller.hide(),resizeCanvas()))}function setColumnHeaderVisibility(e,o){options.showColumnHeader!=e&&(options.showColumnHeader=e,e?o?$headerScroller.slideDown(\"fast\",resizeCanvas):($headerScroller.show(),resizeCanvas()):o?$headerScroller.slideUp(\"fast\",resizeCanvas):($headerScroller.hide(),resizeCanvas()))}function setFooterRowVisibility(e,o){var t=!1!==o;options.showFooterRow!=e&&(options.showFooterRow=e,e?t?$footerRowScroller.slideDown(\"fast\",resizeCanvas):($footerRowScroller.show(),resizeCanvas()):t?$footerRowScroller.slideUp(\"fast\",resizeCanvas):($footerRowScroller.hide(),resizeCanvas()))}function setPreHeaderPanelVisibility(e,o){var t=!1!==o;options.showPreHeaderPanel!=e&&(options.showPreHeaderPanel=e,e?t?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):($preHeaderPanelScroller.show(),resizeCanvas()):t?$preHeaderPanelScroller.slideUp(\"fast\",resizeCanvas):($preHeaderPanelScroller.hide(),resizeCanvas()))}function getContainerNode(){return $container.get(0)}function getRowTop(e){return options.rowHeight*e-offset}function getRowFromPosition(e){return Math.floor((e+offset)/options.rowHeight)}function scrollTo(e){e=Math.max(e,0),e=Math.min(e,th-$viewportScrollContainerY.height()+(viewportHasHScroll||hasFrozenColumns()?scrollbarDimensions.height:0));var o=offset;page=Math.min(n-1,Math.floor(e/ph));var t=e-(offset=Math.round(page*cj));offset!=o&&(cleanupRows(getVisibleRange(t)),updateRowPositions());prevScrollTop!=t&&(vScrollDir=prevScrollTop+o<t+offset?1:-1,lastRenderedScrollTop=scrollTop=prevScrollTop=t,hasFrozenColumns()&&($viewportTopL[0].scrollTop=t),hasFrozenRows&&($viewportBottomL[0].scrollTop=$viewportBottomR[0].scrollTop=t),$viewportScrollContainerY[0].scrollTop=t,trigger(self.onViewportChanged,{}))}function defaultFormatter(e,o,t,n,l,r){return null==t?\"\":(t+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function getFormatter(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e),n=t&&t.columns&&(t.columns[o.id]||t.columns[getColumnIndex(o.id)]);return n&&n.formatter||t&&t.formatter||o.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(o)||options.defaultFormatter}function callFormatter(e,o,t,n,l,r){var i,a=data.getItemMetadata&&data.getItemMetadata(e);if(a=a&&a.columns){var s=a[n.id]||a[o];i=getFormatter(e,n)(e,o,t,n,l,s)}else i=getFormatter(e,n)(e,o,t,n,l);return i}function getEditor(e,o){var t=columns[o],n=data.getItemMetadata&&data.getItemMetadata(e),l=n&&n.columns;return l&&l[t.id]&&void 0!==l[t.id].editor?l[t.id].editor:l&&l[o]&&void 0!==l[o].editor?l[o].editor:t.editor||options.editorFactory&&options.editorFactory.getEditor(t)}function getDataItemValueForColumn(e,o){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,o):e[o.field]}function appendRowHtml(e,o,t,n,l){var r=getDataItem(t),i=t<l&&!r,a=\"slick-row\"+(hasFrozenRows&&t<=options.frozenRow?\" frozen\":\"\")+(i?\" loading\":\"\")+(t===activeRow&&options.showCellSelection?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(a+=\" \"+options.addNewRowCssClass);var s=data.getItemMetadata&&data.getItemMetadata(t);s&&s.cssClasses&&(a+=\" \"+s.cssClasses);var d,c,u=getFrozenRowOffset(t),h=\"<div class='ui-widget-content \"+a+\"' style='top:\"+(getRowTop(t)-u)+\"px'>\";e.push(h),hasFrozenColumns()&&o.push(h);for(var p=0,m=columns.length;p<m;p++){if(c=columns[p],d=1,s&&s.columns){var w=s.columns[c.id]||s.columns[p];\"*\"===(d=w&&w.colspan||1)&&(d=m-p)}if(columnPosRight[Math.min(m-1,p+d-1)]>n.leftPx){if(!c.alwaysRenderColumn&&columnPosLeft[p]>n.rightPx)break;hasFrozenColumns()&&p>options.frozenColumn?appendCellHtml(o,t,p,d,r):appendCellHtml(e,t,p,d,r)}else(c.alwaysRenderColumn||hasFrozenColumns()&&p<=options.frozenColumn)&&appendCellHtml(e,t,p,d,r);d>1&&(p+=d-1)}e.push(\"</div>\"),hasFrozenColumns()&&o.push(\"</div>\")}function appendCellHtml(e,o,t,n,l){var r=columns[t],i=\"slick-cell l\"+t+\" r\"+Math.min(columns.length-1,t+n-1)+(r.cssClass?\" \"+r.cssClass:\"\");for(var a in hasFrozenColumns()&&t<=options.frozenColumn&&(i+=\" frozen\"),o===activeRow&&t===activeCell&&options.showCellSelection&&(i+=\" active\"),cellCssClasses)cellCssClasses[a][o]&&cellCssClasses[a][o][r.id]&&(i+=\" \"+cellCssClasses[a][o][r.id]);var s=null,d=\"\";l&&(s=getDataItemValueForColumn(l,r),null==(d=getFormatter(o,r)(o,t,s,r,l,self))&&(d=\"\"));var c=trigger(self.onBeforeAppendCell,{row:o,cell:t,value:s,dataContext:l})||\"\";c+=d&&d.addClasses?(c?\" \":\"\")+d.addClasses:\"\";var u=d&&d.toolTip?\"title='\"+d.toolTip+\"'\":\"\",h=\"\";if(r.hasOwnProperty(\"cellAttrs\")&&r.cellAttrs instanceof Object)for(var a in r.cellAttrs)r.cellAttrs.hasOwnProperty(a)&&(h+=\" \"+a+'=\"'+r.cellAttrs[a]+'\" ');e.push(\"<div class='\"+i+(c?\" \"+c:\"\")+\"' \"+u+h+\">\"),l&&e.push(\"[object Object]\"!==Object.prototype.toString.call(d)?d:d.text),e.push(\"</div>\"),rowsCache[o].cellRenderQueue.push(t),rowsCache[o].cellColSpans[t]=n}function cleanupRows(e){for(var o in rowsCache){var t=!0;hasFrozenRows&&(options.frozenBottom&&o>=actualFrozenRow||!options.frozenBottom&&o<=actualFrozenRow)&&(t=!1),(o=parseInt(o,10))!==activeRow&&(o<e.top||o>e.bottom)&&t&&removeRowFromCache(o)}options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function invalidate(){updateRowCount(),invalidateAllRows(),render()}function invalidateAllRows(){for(var e in currentEditor&&makeActiveCellNormal(),rowsCache)removeRowFromCache(e);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function queuePostProcessedRowForCleanup(e,o,t){for(var n in postProcessgroupId++,o)o.hasOwnProperty(n)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|n],columnIdx:0|n,rowIdx:t});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,o,t){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:o,rowIdx:t}),$(e).detach()}function removeRowFromCache(e){var o=rowsCache[e];o&&(rowNodeFromLastMouseWheelEvent==o.rowNode[0]||hasFrozenColumns()&&rowNodeFromLastMouseWheelEvent==o.rowNode[1]?(o.rowNode.hide(),zombieRowNodeFromLastMouseWheelEvent=o.rowNode):o.rowNode.each((function(){this.parentElement.removeChild(this)})),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var o,t;if(e&&e.length){for(vScrollDir=0,t=e.length,o=0;o<t;o++)currentEditor&&activeRow===e[o]&&makeActiveCellNormal(),rowsCache[e[o]]&&removeRowFromCache(e[o]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){(e||0===e)&&invalidateRows([e])}function applyFormatResultToCellNode(e,o,t){null==e&&(e=\"\"),\"[object Object]\"===Object.prototype.toString.call(e)?(o.innerHTML=e.text,e.removeClasses&&!t&&$(o).removeClass(e.removeClasses),e.addClasses&&$(o).addClass(e.addClasses),e.toolTip&&$(o).attr(\"title\",e.toolTip)):o.innerHTML=e}function updateCell(e,o){var t=getCellNode(e,o);if(t){var n=columns[o],l=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===o)currentEditor.loadValue(l);else applyFormatResultToCellNode(l?getFormatter(e,n)(e,o,getDataItemValueForColumn(l,n),n,l,self):\"\",t),invalidatePostProcessingResults(e)}}function updateRow(e){var o=rowsCache[e];if(o){ensureCellNodesInRowsCache(e);var t=getDataItem(e);for(var n in o.cellNodesByColumnIdx)if(o.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=o.cellNodesByColumnIdx[n][0];e===activeRow&&n===activeCell&&currentEditor?currentEditor.loadValue(t):t?applyFormatResultToCellNode(getFormatter(e,l)(e,n,getDataItemValueForColumn(t,l),l,t,self),r):r.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){if(options.autoHeight&&-1==options.frozenColumn||(topPanelH=options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0,headerRowH=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,footerRowH=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0),options.autoHeight){var e=$paneHeaderL.outerHeight();e+=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,e+=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0,e+=getCanvasWidth()>viewportW?scrollbarDimensions.height:0,viewportH=options.rowHeight*getDataLengthIncludingAddNew()+(-1==options.frozenColumn?e:0)}else{var o=options.showColumnHeader?parseFloat($.css($headerScroller[0],\"height\"))+getVBoxDelta($headerScroller):0,t=options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0;viewportH=parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-o-topPanelH-headerRowH-footerRowH-t}return numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportH}function getViewportWidth(){viewportW=parseFloat($container.width())}function resizeCanvas(){if(initialized){paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,getViewportWidth(),getViewportHeight(),hasFrozenRows?options.frozenBottom?(paneTopH=viewportH-frozenRowsHeight-scrollbarDimensions.height,paneBottomH=frozenRowsHeight+scrollbarDimensions.height):(paneTopH=frozenRowsHeight,paneBottomH=viewportH-frozenRowsHeight):paneTopH=viewportH,paneTopH+=topPanelH+headerRowH+footerRowH,hasFrozenColumns()&&options.autoHeight&&(paneTopH+=scrollbarDimensions.height),viewportTopH=paneTopH-topPanelH-headerRowH-footerRowH,options.autoHeight&&(hasFrozenColumns()&&$container.height(paneTopH+parseFloat($.css($headerScrollerL[0],\"height\"))),$paneTopL.css(\"position\",\"relative\")),$paneTopL.css({top:$paneHeaderL.height(),height:paneTopH});var e=$paneTopL.position().top+paneTopH;options.autoHeight||$viewportTopL.height(viewportTopH),hasFrozenColumns()?($paneTopR.css({top:$paneHeaderL.height(),height:paneTopH}),$viewportTopR.height(viewportTopH),hasFrozenRows&&($paneBottomL.css({top:e,height:paneBottomH}),$paneBottomR.css({top:e,height:paneBottomH}),$viewportBottomR.height(paneBottomH))):hasFrozenRows&&($paneBottomL.css({width:\"100%\",height:paneBottomH}),$paneBottomL.css(\"top\",e)),hasFrozenRows?($viewportBottomL.height(paneBottomH),options.frozenBottom?($canvasBottomL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasBottomR.height(frozenRowsHeight)):($canvasTopL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasTopR.height(frozenRowsHeight))):$viewportTopR.height(viewportTopH),scrollbarDimensions&&scrollbarDimensions.width||(scrollbarDimensions=measureScrollbar()),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&autosizeColumns(),updateRowCount(),handleScroll(),lastRenderedScrollLeft=-1,render()}}function updatePagingStatusFromView(e){pagingActive=0!==e.pageSize,pagingIsLastPage=e.pageNum==e.totalPages-1}function updateRowCount(){if(initialized){var e=getDataLength(),o=getDataLengthIncludingAddNew(),t=0,l=hasFrozenRows&&!options.frozenBottom?$canvasBottomL.height():$canvasTopL.height();if(hasFrozenRows)t=getDataLength()-options.frozenRow;else t=o+(options.leaveSpaceForNewRows?numVisibleRows-1:0);var r=$viewportScrollContainerY.height(),i=viewportHasVScroll;viewportHasVScroll=options.alwaysShowVerticalScroll||!options.autoHeight&&t*options.rowHeight>r,makeActiveCellNormal();var a=e-1;for(var s in rowsCache)s>a&&removeRowFromCache(s);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&activeRow>a&&resetActiveCell();l=h;options.autoHeight?h=options.rowHeight*t:(th=Math.max(options.rowHeight*t,r-scrollbarDimensions.height))<maxSupportedCssHeight?(h=ph=th,n=1,cj=0):(ph=(h=maxSupportedCssHeight)/100,n=Math.floor(th/ph),cj=(th-h)/(n-1)),h!==l&&(hasFrozenRows&&!options.frozenBottom?($canvasBottomL.css(\"height\",h),hasFrozenColumns()&&$canvasBottomR.css(\"height\",h)):($canvasTopL.css(\"height\",h),$canvasTopR.css(\"height\",h)),scrollTop=$viewportScrollContainerY[0].scrollTop);var d=scrollTop+offset<=th-r;0==th||0==scrollTop?page=offset=0:scrollTo(d?scrollTop+offset:th-r),h!=l&&options.autoHeight&&resizeCanvas(),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&i!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,o){return null==e&&(e=scrollTop),null==o&&(o=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:o,rightPx:o+viewportW}}function getRenderedRange(e,o){var t=getVisibleRange(e,o),n=Math.round(viewportH/options.rowHeight),l=options.minRowBuffer;return-1==vScrollDir?(t.top-=n,t.bottom+=l):1==vScrollDir?(t.top-=l,t.bottom+=n):(t.top-=l,t.bottom+=l),t.top=Math.max(0,t.top),t.bottom=Math.min(getDataLengthIncludingAddNew()-1,t.bottom),t.leftPx-=viewportW,t.rightPx+=viewportW,t.leftPx=Math.max(0,t.leftPx),t.rightPx=Math.min(canvasWidth,t.rightPx),t}function ensureCellNodesInRowsCache(e){var o=rowsCache[e];if(o&&o.cellRenderQueue.length)for(var t=o.rowNode.children().last();o.cellRenderQueue.length;){var n=o.cellRenderQueue.pop();o.cellNodesByColumnIdx[n]=t,0===(t=t.prev()).length&&(t=$(o.rowNode[0]).children().last())}}function cleanUpCells(e,o){if(!hasFrozenRows||!(options.frozenBottom&&o>actualFrozenRow||o<=actualFrozenRow)){var t,n=rowsCache[o],l=[];for(var r in n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(r)&&!((r|=0)<=options.frozenColumn||Array.isArray(columns)&&columns[r]&&columns[r].alwaysRenderColumn)){var i=n.cellColSpans[r];(columnPosLeft[r]>e.rightPx||columnPosRight[Math.min(columns.length-1,r+i-1)]<e.leftPx)&&(o==activeRow&&r==activeCell||l.push(r))}for(;null!=(t=l.pop());)n.cellNodesByColumnIdx[t][0].parentElement.removeChild(n.cellNodesByColumnIdx[t][0]),delete n.cellColSpans[t],delete n.cellNodesByColumnIdx[t],postProcessedRows[o]&&delete postProcessedRows[o][t]}}function cleanUpAndRenderCells(e){for(var o,t,n,l=[],r=[],i=e.top,a=e.bottom;i<=a;i++)if(o=rowsCache[i]){ensureCellNodesInRowsCache(i),cleanUpCells(e,i),t=0;var s=data.getItemMetadata&&data.getItemMetadata(i);s=s&&s.columns;for(var d=getDataItem(i),c=0,u=columns.length;c<u&&!(columnPosLeft[c]>e.rightPx);c++)if(null==(n=o.cellColSpans[c])){if(n=1,s){var h=s[columns[c].id]||s[c];\"*\"===(n=h&&h.colspan||1)&&(n=u-c)}columnPosRight[Math.min(u-1,c+n-1)]>e.leftPx&&(appendCellHtml(l,i,c,n,d),t++),c+=n>1?n-1:0}else c+=n>1?n-1:0;t&&(t,r.push(i))}if(l.length){var p,m,w=document.createElement(\"div\");for(w.innerHTML=l.join(\"\");null!=(p=r.pop());){var v;for(o=rowsCache[p];null!=(v=o.cellRenderQueue.pop());)m=w.lastChild,hasFrozenColumns()&&v>options.frozenColumn?o.rowNode[1].appendChild(m):o.rowNode[0].appendChild(m),o.cellNodesByColumnIdx[v]=$(m)}}}function renderRows(e){for(var o=[],t=[],n=[],l=!1,r=getDataLength(),i=e.top,a=e.bottom;i<=a;i++)rowsCache[i]||hasFrozenRows&&options.frozenBottom&&i==getDataLength()||(renderedRows++,n.push(i),rowsCache[i]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(o,t,i,e,r),activeCellNode&&activeRow===i&&(l=!0),counter_rows_rendered++);if(n.length){var s=document.createElement(\"div\"),d=document.createElement(\"div\");s.innerHTML=o.join(\"\"),d.innerHTML=t.join(\"\");for(i=0,a=n.length;i<a;i++)hasFrozenRows&&n[i]>=actualFrozenRow?hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)).add($(d.firstChild).appendTo($canvasBottomR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)):hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL)).add($(d.firstChild).appendTo($canvasTopR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL));l&&(activeCellNode=getCellNode(activeRow,activeCell))}}function startPostProcessing(){options.enableAsyncPostRender&&(clearTimeout(h_postrender),h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}function startPostProcessingCleanup(){options.enableAsyncPostRenderCleanup&&(clearTimeout(h_postrenderCleanup),h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay))}function invalidatePostProcessingResults(e){for(var o in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(o)&&(postProcessedRows[e][o]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache){var o=e?parseInt(e):0;rowsCache[o].rowNode[0].style.top=getRowTop(o)+\"px\"}}function render(){if(initialized){scrollThrottle.dequeue();var e=getVisibleRange(),o=getRenderedRange();if(cleanupRows(o),lastRenderedScrollLeft!=scrollLeft){if(hasFrozenRows){var t=$.extend(!0,{},o);options.frozenBottom?(t.top=actualFrozenRow,t.bottom=getDataLength()):(t.top=0,t.bottom=options.frozenRow),cleanUpAndRenderCells(t)}cleanUpAndRenderCells(o)}renderRows(o),hasFrozenRows&&(options.frozenBottom?renderRows({top:actualFrozenRow,bottom:getDataLength()-1,leftPx:o.leftPx,rightPx:o.rightPx}):renderRows({top:0,bottom:options.frozenRow-1,leftPx:o.leftPx,rightPx:o.rightPx})),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null,trigger(self.onRendered,{startRow:e.top,endRow:e.bottom,grid:self})}}function handleHeaderScroll(){handleElementScroll($headerScrollContainer[0])}function handleHeaderRowScroll(){var e=$headerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){handleElementScroll($preHeaderPanelScroller[0])}function handleElementScroll(e){var o=e.scrollLeft;o!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=o)}function handleScroll(){return scrollTop=$viewportScrollContainerY[0].scrollTop,scrollLeft=$viewportScrollContainerX[0].scrollLeft,_handleScroll(!1)}function _handleScroll(e){var o=$viewportScrollContainerY[0].scrollHeight-$viewportScrollContainerY[0].clientHeight,t=$viewportScrollContainerY[0].scrollWidth-$viewportScrollContainerY[0].clientWidth;o=Math.max(0,o),t=Math.max(0,t),scrollTop>o&&(scrollTop=o),scrollLeft>t&&(scrollLeft=t);var l=Math.abs(scrollTop-prevScrollTop),r=Math.abs(scrollLeft-prevScrollLeft);if(r&&(prevScrollLeft=scrollLeft,$viewportScrollContainerX[0].scrollLeft=scrollLeft,$headerScrollContainer[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScrollContainer[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScrollContainer[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&(hasFrozenColumns()?$preHeaderPanelScrollerR[0].scrollLeft=scrollLeft:$preHeaderPanelScroller[0].scrollLeft=scrollLeft),hasFrozenColumns()?hasFrozenRows&&($viewportTopR[0].scrollLeft=scrollLeft):hasFrozenRows&&($viewportTopL[0].scrollLeft=scrollLeft)),l)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e&&($viewportScrollContainerY[0].scrollTop=scrollTop),hasFrozenColumns()&&(hasFrozenRows&&!options.frozenBottom?$viewportBottomL[0].scrollTop=scrollTop:$viewportTopL[0].scrollTop=scrollTop),l<viewportH)scrollTo(scrollTop+offset);else{var i=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),i!=(offset=Math.round(page*cj))&&invalidateAllRows()}if(r||l){var a=Math.abs(lastRenderedScrollLeft-scrollLeft),s=Math.abs(lastRenderedScrollTop-scrollTop);(a>20||s>20)&&(options.forceSyncScrolling||s<viewportH&&a<viewportW?render():scrollThrottle.enqueue(),trigger(self.onViewportChanged,{}))}return trigger(self.onScroll,{scrollLeft,scrollTop}),!(!r&&!l)}function ActionThrottle(e,o){var t=!1,n=!1;function l(){n=!1}function r(){t=!0,setTimeout(i,o),e()}function i(){n?(l(),r()):t=!1}return{enqueue:function(){t?n=!0:r()},dequeue:l}}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var o=vScrollDir>=0?postProcessFromRow++:postProcessToRow--,t=rowsCache[o];if(t&&!(o>=e)){for(var n in postProcessedRows[o]||(postProcessedRows[o]={}),ensureCellNodesInRowsCache(o),t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=postProcessedRows[o][n];if(l.asyncPostRender&&\"R\"!==r){var i=t.cellNodesByColumnIdx[n];i&&l.asyncPostRender(i,o,getDataItem(o),l,\"C\"===r),postProcessedRows[o][n]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(postProcessedCleanupQueue.length>0){for(var e=postProcessedCleanupQueue[0].groupId;postProcessedCleanupQueue.length>0&&postProcessedCleanupQueue[0].groupId==e;){var o=postProcessedCleanupQueue.shift();if(\"R\"==o.actionType&&$(o.node).remove(),\"C\"==o.actionType){var t=columns[o.columnIdx];t.asyncPostRenderCleanup&&o.node&&t.asyncPostRenderCleanup(o.node,o.rowIdx,t)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,o){var t,n,l,r;for(var i in rowsCache){if(r=o&&o[i],l=e&&e[i],r)for(n in r)l&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).removeClass(r[n]);if(l)for(n in l)r&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).addClass(l[n])}}function addCellCssStyles(e,o){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,null),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function removeCellCssStyles(e){cellCssClasses[e]&&(updateCellCssStylesOnRenderedRows(null,cellCssClasses[e]),delete cellCssClasses[e],trigger(self.onCellCssStylesChanged,{key:e,hash:null,grid:self}))}function setCellCssStyles(e,o){var t=cellCssClasses[e];cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,t),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,o,t){(t=t||100,rowsCache[e])&&function e(o,n){n&&setTimeout((function(){o.queue((function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),e(o,n-1)}))}),t)}($(getCellNode(e,o)),4)}function handleMouseWheel(e,o,t,n){var l=$(e.target).closest(\".slick-row\"),r=l[0];if(r!=rowNodeFromLastMouseWheelEvent){var i=l.parents(\".grid-canvas\").hasClass(\"grid-canvas-left\");if(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent[i?0:1]!=r){var a=zombieRowNodeFromLastMouseWheelEvent[i||1==zombieRowNodeFromLastMouseWheelEvent.length?0:1];a.parentElement.removeChild(a),zombieRowNodeFromLastMouseWheelEvent=null}rowNodeFromLastMouseWheelEvent=r}scrollTop=Math.max(0,$viewportScrollContainerY[0].scrollTop-n*options.rowHeight),scrollLeft=$viewportScrollContainerX[0].scrollLeft+10*t,_handleScroll(!0)&&e.preventDefault()}function handleDragInit(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragInit,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDragStart(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragStart,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDrag(e,o){return trigger(self.onDrag,o,e)}function handleDragEnd(e,o){trigger(self.onDragEnd,o,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell},e);var o=e.isImmediatePropagationStopped(),t=Slick.keyCode;if(!o&&!e.shiftKey&&!e.altKey){if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&currentEditor.keyCaptureList.indexOf(e.which)>-1)return;e.which==t.HOME?o=e.ctrlKey?navigateTop():navigateRowStart():e.which==t.END&&(o=e.ctrlKey?navigateBottom():navigateRowEnd())}if(!o)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=t.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(o=navigatePrev());else{if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&currentEditor.keyCaptureList.indexOf(e.which)>-1)return;if(e.which==t.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==t.PAGE_DOWN?(navigatePageDown(),o=!0):e.which==t.PAGE_UP?(navigatePageUp(),o=!0):e.which==t.LEFT?o=navigateLeft():e.which==t.RIGHT?o=navigateRight():e.which==t.UP?o=navigateUp():e.which==t.DOWN?o=navigateDown():e.which==t.TAB?o=navigateNext():e.which==t.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable(void 0,void 0,e)),o=!0)}if(o){e.stopPropagation(),e.preventDefault();try{e.originalEvent.keyCode=0}catch(e){}}}function handleClick(e){currentEditor||(e.target!=document.activeElement||$(e.target).hasClass(\"slick-cell\"))&&setFocus();var o=getCellFromEvent(e);if(o&&(null===currentEditor||activeRow!=o.row||activeCell!=o.cell)&&(trigger(self.onClick,{row:o.row,cell:o.cell},e),!e.isImmediatePropagationStopped()&&canCellBeActive(o.row,o.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(o.row,!1);var t=e.target&&e.target.className===Slick.preClickClassName,n=columns[o.cell],l=!!(options.editable&&n&&n.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(getCellNode(o.row,o.cell),null,t,l,e)}}function handleContextMenu(e){var o=$(e.target).closest(\".slick-cell\",$canvas);0!==o.length&&(activeCellNode===o[0]&&null!==currentEditor||trigger(self.onContextMenu,{},e))}function handleDblClick(e){var o=getCellFromEvent(e);!o||null!==currentEditor&&activeRow==o.row&&activeCell==o.cell||(trigger(self.onDblClick,{row:o.row,cell:o.cell},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(o.row,o.cell,!0,e))}function handleHeaderMouseEnter(e){trigger(self.onHeaderMouseEnter,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderMouseLeave(e){trigger(self.onHeaderMouseLeave,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderContextMenu(e){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");trigger(self.onHeaderContextMenu,{column:t},e)}function handleHeaderClick(e){if(!columnResizeDragging){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");t&&trigger(self.onHeaderClick,{column:t},e)}}function handleFooterContextMenu(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterContextMenu,{column:t},e)}function handleFooterClick(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterClick,{column:t},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{},e)}function cellExists(e,o){return!(e<0||e>=getDataLength()||o<0||o>=columns.length)}function getCellFromPoint(e,o){for(var t=getRowFromPosition(o),n=0,l=0,r=0;r<columns.length&&l<e;r++)l+=columns[r].width,n++;return n<0&&(n=0),{row:t,cell:n-1}}function getCellFromNode(e){var o=/l\\d+/.exec(e.className);if(!o)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(o[0].substr(1,o[0].length-1),10)}function getRowFromNode(e){for(var o in rowsCache)for(var t in rowsCache[o].rowNode)if(rowsCache[o].rowNode[t]===e)return o?parseInt(o):0;return null}function getFrozenRowOffset(e){return hasFrozenRows?options.frozenBottom?e>=actualFrozenRow?h<viewportTopH?actualFrozenRow*options.rowHeight:h:0:e>=actualFrozenRow?frozenRowsHeight:0:0}function getCellFromEvent(e){var o,t,n=$(e.target).closest(\".slick-cell\",$canvas);if(!n.length)return null;if(o=getRowFromNode(n[0].parentNode),hasFrozenRows){var l=n.parents(\".grid-canvas\").offset(),r=0;n.parents(\".grid-canvas-bottom\").length&&(r=options.frozenBottom?$canvasTopL.height():frozenRowsHeight),o=getCellFromPoint(e.clientX-l.left,e.clientY-l.top+r+$(document).scrollTop()).row}return t=getCellFromNode(n[0]),null==o||null==t?null:{row:o,cell:t}}function getCellNodeBox(e,o){if(!cellExists(e,o))return null;for(var t=getFrozenRowOffset(e),n=getRowTop(e)-t,l=n+options.rowHeight-1,r=0,i=0;i<o;i++)r+=columns[i].width,options.frozenColumn==i&&(r=0);return{top:n,left:r,bottom:l,right:r+columns[o].width}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,o,t){if(scrollRowIntoView(e,t),!(o<=options.frozenColumn)){var n=getColspan(e,o);internalScrollColumnIntoView(columnPosLeft[o],columnPosRight[o+(n>1?n-1:0)])}}function internalScrollColumnIntoView(e,o){var t=scrollLeft+$viewportScrollContainerX.width();e<scrollLeft?($viewportScrollContainerX.scrollLeft(e),handleScroll(),render()):o>t&&($viewportScrollContainerX.scrollLeft(Math.min(e,o-$viewportScrollContainerX[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,o,t,n,l){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));if(null!=(activeCellNode=e)){var r=$(activeCellNode),i=r.offset(),a=Math.floor(r.parents(\".grid-canvas\").offset().top),s=r.parents(\".grid-canvas-bottom\").length;hasFrozenRows&&s&&(a-=options.frozenBottom?$canvasTopL.height():frozenRowsHeight);var d=getCellFromPoint(i.left,Math.ceil(i.top)-a);activeRow=d.row,activeCell=activePosX=activeCell=activePosX=getCellFromNode(activeCellNode),null==o&&(o=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&(r.addClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&o&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout((function(){makeActiveCellEditable(void 0,t,l)}),options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,t,l))}else activeRow=activeCell=null;n||trigger(self.onActiveCellChanged,getActiveCell())}function clearTextSelection(){if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}else if(window.getSelection){var e=window.getSelection();e&&e.removeAllRanges&&e.removeAllRanges()}}function isCellPotentiallyEditable(e,o){var t=getDataLength();return!(e<t&&!getDataItem(e))&&(!(columns[o].cannotTriggerInsert&&e>=t)&&!!getEditor(e,o))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var o=columns[activeCell];applyFormatResultToCellNode(getFormatter(activeRow,o)(activeRow,activeCell,getDataItemValueForColumn(e,o),o,e,self),activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,o,t){if(activeCellNode){if(!options.editable)throw new Error(\"Grid : makeActiveCellEditable : should never get called when options.editable is false\");if(clearTimeout(h_editorLoader),isCellPotentiallyEditable(activeRow,activeCell)){var n=columns[activeCell],l=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:l,column:n})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\");var i=data.getItemMetadata&&data.getItemMetadata(activeRow),a=(i=i&&i.columns)&&(i[n.id]||i[activeCell]);currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,columnMetaData:a,item:l||{},event:t,commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),l&&(currentEditor.loadValue(l),o&&currentEditor.preClick&&currentEditor.preClick()),serializedEditorValue=currentEditor.serializeValue(),currentEditor.position&&handleActiveCellPositionChange()}else setFocus()}}}function commitEditAndSetFocus(){getEditorLock().commitCurrentEdit()&&(setFocus(),options.autoEdit&&navigateDown())}function cancelEditAndSetFocus(){getEditorLock().cancelCurrentEdit()&&setFocus()}function absBox(e){var o={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};o.bottom=o.top+o.height,o.right=o.left+o.width;for(var t=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)o.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(o.visible=o.bottom>e.scrollTop&&o.top<e.scrollTop+e.clientHeight),o.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(o.visible=o.right>e.scrollLeft&&o.left<e.scrollLeft+e.clientWidth),o.left-=e.scrollLeft,o.top-=e.scrollTop,e===t&&(o.left+=e.offsetLeft,o.top+=e.offsetTop,t=e.offsetParent),o.bottom=o.top+o.height,o.right=o.left+o.width;return o}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&&currentEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&&currentEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,o){if(!hasFrozenRows||!options.frozenBottom&&e>actualFrozenRow-1||options.frozenBottom&&e<actualFrozenRow-1){var t=$viewportScrollContainerY.height(),n=hasFrozenRows&&!options.frozenBottom?e-options.frozenRow:e,l=n*options.rowHeight,r=(n+1)*options.rowHeight-t+(viewportHasHScroll?scrollbarDimensions.height:0);(n+1)*options.rowHeight>scrollTop+t+offset?(scrollTo(o?l:r),render()):n*options.rowHeight<scrollTop+offset&&(scrollTo(o?r:l),render())}}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var o=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop+options.rowHeight-1)+o)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var t=activeRow+o,n=getDataLengthIncludingAddNew();t>=n&&(t=n-1),t<0&&(t=0);for(var l=0,r=null,i=activePosX;l<=activePosX;)canCellBeActive(t,l)&&(r=l),l+=getColspan(t,l);null!==r?(setActiveCellInternal(getCellNode(t,r)),activePosX=i):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function navigateTop(){navigateToRow(0)}function navigateBottom(){navigateToRow(getDataLength()-1)}function navigateToRow(e){var o=getDataLength();if(!o)return!0;if(e<0?e=0:e>=o&&(e=o-1),scrollCellIntoView(e,0,!0),options.enableCellNavigation&&null!=activeRow){for(var t=0,n=null,l=activePosX;t<=activePosX;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);null!==n?(setActiveCellInternal(getCellNode(e,n)),activePosX=l):resetActiveCell()}return!0}function getColspan(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e);if(!t||!t.columns)return 1;var n=t.columns[columns[o].id]||t.columns[o],l=n&&n.colspan;return l=\"*\"===l?columns.length-o:l||1}function findFirstFocusableCell(e){for(var o=0;o<columns.length;){if(canCellBeActive(e,o))return o;o+=getColspan(e,o)}return null}function findLastFocusableCell(e){for(var o=0,t=null;o<columns.length;)canCellBeActive(e,o)&&(t=o),o+=getColspan(e,o);return t}function gotoRight(e,o,t){if(o>=columns.length)return null;do{o+=getColspan(e,o)}while(o<columns.length&&!canCellBeActive(e,o));return o<columns.length?{row:e,cell:o,posX:o}:null}function gotoLeft(e,o,t){if(o<=0)return null;var n=findFirstFocusableCell(e);if(null===n||n>=o)return null;for(var l,r={row:e,cell:n,posX:n};;){if(!(l=gotoRight(r.row,r.cell,r.posX)))return null;if(l.cell>=o)return r;r=l}}function gotoDown(e,o,t){for(var n,l=getDataLengthIncludingAddNew();;){if(++e>=l)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoUp(e,o,t){for(var n;;){if(--e<0)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoNext(e,o,t){if(null==e&&null==o&&canCellBeActive(e=o=t=0,o))return{row:e,cell:o,posX:o};var n=gotoRight(e,o,t);if(n)return n;var l=null,r=getDataLengthIncludingAddNew();for(e===r-1&&e--;++e<r;)if(null!==(l=findFirstFocusableCell(e)))return{row:e,cell:l,posX:l};return null}function gotoPrev(e,o,t){if(null==e&&null==o&&canCellBeActive(e=getDataLengthIncludingAddNew()-1,o=t=columns.length-1))return{row:e,cell:o,posX:o};for(var n,l;!n&&!(n=gotoLeft(e,o,t));){if(--e<0)return null;o=0,null!==(l=findLastFocusableCell(e))&&(n={row:e,cell:l,posX:l})}return n}function gotoRowStart(e,o,t){var n=findFirstFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function gotoRowEnd(e,o,t){var n=findLastFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function navigateRight(){return navigate(\"right\")}function navigateLeft(){return navigate(\"left\")}function navigateDown(){return navigate(\"down\")}function navigateUp(){return navigate(\"up\")}function navigateNext(){return navigate(\"next\")}function navigatePrev(){return navigate(\"prev\")}function navigateRowStart(){return navigate(\"home\")}function navigateRowEnd(){return navigate(\"end\")}function navigate(e){if(!options.enableCellNavigation)return!1;if(!activeCellNode&&\"prev\"!=e&&\"next\"!=e)return!1;if(!getEditorLock().commitCurrentEdit())return!0;setFocus();tabbingDirection={up:-1,down:1,left:-1,right:1,prev:-1,next:1,home:-1,end:1}[e];var o=(0,{up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext,home:gotoRowStart,end:gotoRowEnd}[e])(activeRow,activeCell,activePosX);if(o){if(hasFrozenRows&&options.frozenBottom&o.row==getDataLength())return;var t=o.row==getDataLength();return(!options.frozenBottom&&o.row>=actualFrozenRow||options.frozenBottom&&o.row<actualFrozenRow)&&scrollCellIntoView(o.row,o.cell,!t&&options.emulatePagingWhenScrolling),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,o){if(rowsCache[e]){ensureCellNodesInRowsCache(e);try{return rowsCache[e].cellNodesByColumnIdx.length>o?rowsCache[e].cellNodesByColumnIdx[o][0]:null}catch(t){return rowsCache[e].cellNodesByColumnIdx[o]}}return null}function setActiveCell(e,o,t,n,l){initialized&&(e>getDataLength()||e<0||o>=columns.length||o<0||options.enableCellNavigation&&(scrollCellIntoView(e,o,!1),setActiveCellInternal(getCellNode(e,o),t,n,l)))}function canCellBeActive(e,o){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.focusable)return!!t.focusable;var n=t&&t.columns;return n&&n[columns[o].id]&&void 0!==n[columns[o].id].focusable?!!n[columns[o].id].focusable:n&&n[o]&&void 0!==n[o].focusable?!!n[o].focusable:!!columns[o].focusable}function canCellBeSelected(e,o){if(e>=getDataLength()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.selectable)return!!t.selectable;var n=t&&t.columns&&(t.columns[columns[o].id]||t.columns[o]);return n&&void 0!==n.selectable?!!n.selectable:!!columns[o].selectable}function gotoCell(e,o,t,n){if(initialized&&canCellBeActive(e,o)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,o,!1);var l=getCellNode(e,o),r=columns[o],i=!!(options.editable&&r&&r.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(l,t||e===getDataLength()||options.autoEdit,null,i,n),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),o=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var t=currentEditor.validate();if(t.valid){if(activeRow<getDataLength()){var n={row:activeRow,cell:activeCell,editor:currentEditor,serializedValue:currentEditor.serializeValue(),prevSerializedValue:serializedEditorValue,execute:function(){this.editor.applyValue(e,this.serializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,o,n)):(n.execute(),makeActiveCellNormal())}else{var l={};currentEditor.applyValue(l,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:l,column:o})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:t,row:activeRow,cell:activeCell,column:o}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var o=[],t=columns.length-1,n=0;n<e.length;n++)o.push(new Slick.Range(e[n],0,e[n],t));return o}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows.slice(0)}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");self&&self.getEditorLock&&!self.getEditorLock().isActive()&&selectionModel.setSelectedRanges(rowsToRanges(e))}this.debug=function(){var e=\"\";e+=\"\\ncounter_rows_rendered:  \"+counter_rows_rendered,e+=\"\\ncounter_rows_removed:  \"+counter_rows_removed,e+=\"\\nrenderedRows:  \"+renderedRows,e+=\"\\nnumVisibleRows:  \"+numVisibleRows,e+=\"\\nmaxSupportedCssHeight:  \"+maxSupportedCssHeight,e+=\"\\nn(umber of pages):  \"+n,e+=\"\\n(current) page:  \"+page,e+=\"\\npage height (ph):  \"+ph,e+=\"\\nvScrollDir:  \"+vScrollDir,alert(e)},this.eval=function(expr){return eval(expr)},$.extend(this,{slickGridVersion:\"2.4.27\",onScroll:new Slick.Event,onSort:new Slick.Event,onHeaderMouseEnter:new Slick.Event,onHeaderMouseLeave:new Slick.Event,onHeaderContextMenu:new Slick.Event,onHeaderClick:new Slick.Event,onHeaderCellRendered:new Slick.Event,onBeforeHeaderCellDestroy:new Slick.Event,onHeaderRowCellRendered:new Slick.Event,onFooterRowCellRendered:new Slick.Event,onFooterContextMenu:new Slick.Event,onFooterClick:new Slick.Event,onBeforeHeaderRowCellDestroy:new Slick.Event,onBeforeFooterRowCellDestroy:new Slick.Event,onMouseEnter:new Slick.Event,onMouseLeave:new Slick.Event,onClick:new Slick.Event,onDblClick:new Slick.Event,onContextMenu:new Slick.Event,onKeyDown:new Slick.Event,onAddNewRow:new Slick.Event,onBeforeAppendCell:new Slick.Event,onValidationError:new Slick.Event,onViewportChanged:new Slick.Event,onColumnsReordered:new Slick.Event,onColumnsDrag:new Slick.Event,onColumnsResized:new Slick.Event,onBeforeColumnsResize:new Slick.Event,onCellChange:new Slick.Event,onBeforeEditCell:new Slick.Event,onBeforeCellEditorDestroy:new Slick.Event,onBeforeDestroy:new Slick.Event,onActiveCellChanged:new Slick.Event,onActiveCellPositionChanged:new Slick.Event,onDragInit:new Slick.Event,onDragStart:new Slick.Event,onDrag:new Slick.Event,onDragEnd:new Slick.Event,onSelectedRowsChanged:new Slick.Event,onCellCssStylesChanged:new Slick.Event,onAutosizeColumns:new Slick.Event,onRendered:new Slick.Event,onSetOptions:new Slick.Event,registerPlugin,unregisterPlugin,getPluginByName,getColumns,setColumns,getColumnIndex,updateColumnHeader,setSortColumn,setSortColumns,getSortColumns,autosizeColumns,autosizeColumn,getOptions,setOptions,getData,getDataLength,getDataItem,setData,getSelectionModel,setSelectionModel,getSelectedRows,setSelectedRows,getContainerNode,updatePagingStatusFromView,applyFormatResultToCellNode,render,invalidate,invalidateRow,invalidateRows,invalidateAllRows,updateCell,updateRow,getViewport:getVisibleRange,getRenderedRange,resizeCanvas,updateRowCount,scrollRowIntoView,scrollRowToTop,scrollCellIntoView,scrollColumnIntoView,getCanvasNode,getUID,getHeaderColumnWidthDiff,getScrollbarDimensions,getHeadersWidth,getCanvasWidth,getCanvases,getActiveCanvasNode,setActiveCanvasNode,getViewportNode,getActiveViewportNode,setActiveViewportNode,focus:setFocus,scrollTo,getCellFromPoint,getCellFromEvent,getActiveCell,setActiveCell,getActiveCellNode,getActiveCellPosition,resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor,getCellNode,getCellNodeBox,canCellBeSelected,canCellBeActive,navigatePrev,navigateNext,navigateUp,navigateDown,navigateLeft,navigateRight,navigatePageUp,navigatePageDown,navigateTop,navigateBottom,navigateRowStart,navigateRowEnd,gotoCell,getTopPanel,setTopPanelVisibility,getPreHeaderPanel,getPreHeaderPanelLeft:getPreHeaderPanel,getPreHeaderPanelRight,setPreHeaderPanelVisibility,getHeader,getHeaderColumn,setHeaderRowVisibility,getHeaderRow,getHeaderRowColumn,setFooterRowVisibility,getFooterRow,getFooterRowColumn,getGridPosition,flashCell,addCellCssStyles,setCellCssStyles,removeCellCssStyles,getCellCssStyles,getFrozenRowOffset,setColumnHeaderVisibility,init:finishInitialization,destroy,getEditorLock,getEditController}),init()}module.exports={Grid:SlickGrid}},\n",
       "      465: function _(t,e,a){\n",
       "      /*!\n",
       "           * jquery.event.drag - v 2.3.0\n",
       "           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n",
       "           * Open Source MIT License - http://threedubmedia.com/code/license\n",
       "           */\n",
       "      var n=t(458);n.fn.drag=function(t,e,a){var r=\"string\"==typeof t?t:\"\",o=n.isFunction(t)?t:n.isFunction(e)?e:null;return 0!==r.indexOf(\"drag\")&&(r=\"drag\"+r),a=(t==o?e:a)||{},o?this.on(r,a,o):this.trigger(r)};var r=n.event,o=r.special,i=o.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(t){var e=n.data(this,i.datakey),a=t.data||{};e.related+=1,n.each(i.defaults,(function(t,n){void 0!==a[t]&&(e[t]=a[t])}))},remove:function(){n.data(this,i.datakey).related-=1},setup:function(){if(!n.data(this,i.datakey)){var t=n.extend({related:0},i.defaults);n.data(this,i.datakey,t),r.add(this,\"touchstart mousedown\",i.init,t),this.attachEvent&&this.attachEvent(\"ondragstart\",i.dontstart)}},teardown:function(){(n.data(this,i.datakey)||{}).related||(n.removeData(this,i.datakey),r.remove(this,\"touchstart mousedown\",i.init),i.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",i.dontstart))},init:function(t){if(!i.touched){var e,a=t.data;if(!(0!=t.which&&a.which>0&&t.which!=a.which)){var d=n(t.target).attr(\"class\")||\"\";if(!n(t.target).is(a.not)&&d&&-1!==d.toString().indexOf(\"slick\")&&(!a.handle||n(t.target).closest(a.handle,t.currentTarget).length)&&(i.touched=\"touchstart\"==t.type?this:null,a.propagates=1,a.mousedown=this,a.interactions=[i.interaction(this,a)],a.target=t.target,a.pageX=t.pageX,a.pageY=t.pageY,a.dragging=null,e=i.hijack(t,\"draginit\",a),a.propagates))return(e=i.flatten(e))&&e.length&&(a.interactions=[],n.each(e,(function(){a.interactions.push(i.interaction(this,a))}))),a.propagates=a.interactions.length,!1!==a.drop&&o.drop&&o.drop.handler(t,a),i.textselect(!1),i.touched?r.add(i.touched,\"touchmove touchend\",i.handler,a):r.add(document,\"mousemove mouseup\",i.handler,a),!(!i.touched||a.live)&&void 0}}},interaction:function(t,e){var a=t&&t.ownerDocument&&n(t)[e.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:t,callback:new i.callback,droppable:[],offset:a}},handler:function(t){var e=t.data;switch(t.type){case!e.dragging&&\"touchmove\":t.preventDefault();case!e.dragging&&\"mousemove\":if(Math.pow(t.pageX-e.pageX,2)+Math.pow(t.pageY-e.pageY,2)<Math.pow(e.distance,2))break;t.target=e.target,i.hijack(t,\"dragstart\",e),e.propagates&&(e.dragging=!0);case\"touchmove\":t.preventDefault();case\"mousemove\":if(e.dragging){if(i.hijack(t,\"drag\",e),e.propagates){!1!==e.drop&&o.drop&&o.drop.handler(t,e);break}t.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:i.touched?r.remove(i.touched,\"touchmove touchend\",i.handler):r.remove(document,\"mousemove mouseup\",i.handler),e.dragging&&(!1!==e.drop&&o.drop&&o.drop.handler(t,e),i.hijack(t,\"dragend\",e)),i.textselect(!0),!1===e.click&&e.dragging&&n.data(e.mousedown,\"suppress.click\",(new Date).getTime()+5),e.dragging=i.touched=!1}},hijack:function(t,e,a,o,d){if(a){var s,c,l,p={event:t.originalEvent,type:t.type},u=e.indexOf(\"drop\")?\"drag\":\"drop\",g=o||0,h=isNaN(o)?a.interactions.length:o;t.type=e;var f=function(){};t.originalEvent=new n.Event(p.event,{preventDefault:f,stopPropagation:f,stopImmediatePropagation:f}),a.results=[];do{if(c=a.interactions[g]){if(\"dragend\"!==e&&c.cancelled)continue;l=i.properties(t,a,c),c.results=[],n(d||c[u]||a.droppable).each((function(o,d){if(l.target=d,t.isPropagationStopped=function(){return!1},!1===(s=d?r.dispatch.call(d,t,l):null)?(\"drag\"==u&&(c.cancelled=!0,a.propagates-=1),\"drop\"==e&&(c[u][o]=null)):\"dropinit\"==e&&c.droppable.push(i.element(s)||d),\"dragstart\"==e&&(c.proxy=n(i.element(s)||c.drag)[0]),c.results.push(s),delete t.result,\"dropinit\"!==e)return s})),a.results[g]=i.flatten(c.results),\"dropinit\"==e&&(c.droppable=i.flatten(c.droppable)),\"dragstart\"!=e||c.cancelled||l.update()}}while(++g<h);return t.type=p.type,t.originalEvent=p.event,i.flatten(a.results)}},properties:function(t,e,a){var n=a.callback;return n.drag=a.drag,n.proxy=a.proxy||a.drag,n.startX=e.pageX,n.startY=e.pageY,n.deltaX=t.pageX-e.pageX,n.deltaY=t.pageY-e.pageY,n.originalX=a.offset.left,n.originalY=a.offset.top,n.offsetX=n.originalX+n.deltaX,n.offsetY=n.originalY+n.deltaY,n.drop=i.flatten((a.drop||[]).slice()),n.available=i.flatten((a.droppable||[]).slice()),n},element:function(t){if(t&&(t.jquery||1==t.nodeType))return t},flatten:function(t){return n.map(t,(function(t){return t&&t.jquery?n.makeArray(t):t&&t.length?i.flatten(t):t}))},textselect:function(t){n(document)[t?\"off\":\"on\"](\"selectstart\",i.dontstart).css(\"MozUserSelect\",t?\"\":\"none\"),document.unselectable=t?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};i.callback.prototype={update:function(){o.drop&&this.available.length&&n.each(this.available,(function(t){o.drop.locate(this,t)}))}};var d=r.dispatch;r.dispatch=function(t){if(!(n.data(this,\"suppress.\"+t.type)-(new Date).getTime()>0))return d.apply(this,arguments);n.removeData(this,\"suppress.\"+t.type)},o.draginit=o.dragstart=o.dragend=i},\n",
       "      466: function _(t,e,a){\n",
       "      /*!\n",
       "           * jquery.event.drop - v 2.3.0\n",
       "           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n",
       "           * Open Source MIT License - http://threedubmedia.com/code/license\n",
       "           */\n",
       "      var n=t(458);n.fn.drop=function(t,e,a){var i=\"string\"==typeof t?t:\"\",o=n.isFunction(t)?t:n.isFunction(e)?e:null;return 0!==i.indexOf(\"drop\")&&(i=\"drop\"+i),a=(t==o?e:a)||{},o?this.on(i,a,o):this.trigger(i)},n.drop=function(t){t=t||{},o.multi=!0===t.multi?1/0:!1===t.multi?1:isNaN(t.multi)?o.multi:t.multi,o.delay=t.delay||o.delay,o.tolerance=n.isFunction(t.tolerance)?t.tolerance:null===t.tolerance?null:o.tolerance,o.mode=t.mode||o.mode||\"intersect\"};var i=n.event.special,o=n.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(t){n.data(this,o.datakey).related+=1},remove:function(){n.data(this,o.datakey).related-=1},setup:function(){if(!n.data(this,o.datakey)){n.data(this,o.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),o.targets.push(this)}},teardown:function(){if(!(n.data(this,o.datakey)||{}).related){n.removeData(this,o.datakey);var t=this;o.targets=n.grep(o.targets,(function(e){return e!==t}))}},handler:function(t,e){var a;if(e)switch(t.type){case\"mousedown\":case\"touchstart\":a=n(o.targets),\"string\"==typeof e.drop&&(a=a.filter(e.drop)),a.each((function(){var t=n.data(this,o.datakey);t.active=[],t.anyactive=0,t.winner=0})),e.droppable=a,i.drag.hijack(t,\"dropinit\",e);break;case\"mousemove\":case\"touchmove\":o.event=t,o.timer||o.tolerate(e);break;case\"mouseup\":case\"touchend\":o.timer=clearTimeout(o.timer),e.propagates&&(i.drag.hijack(t,\"drop\",e),i.drag.hijack(t,\"dropend\",e))}},locate:function(t,e){var a=n.data(t,o.datakey),i=n(t),r=i.length&&!i.is(document)?i.offset():{},d=i.outerHeight(),l=i.outerWidth(),c={elem:t,width:l,height:d,top:r.top,left:r.left,right:r.left+l,bottom:r.top+d};return a&&(a.location=c,a.index=e,a.elem=t),c},contains:function(t,e){return(e[0]||e.left)>=t.left&&(e[0]||e.right)<=t.right&&(e[1]||e.top)>=t.top&&(e[1]||e.bottom)<=t.bottom},modes:{intersect:function(t,e,a){return this.contains(a,[t.pageX,t.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(t,e,a){return Math.max(0,Math.min(a.bottom,e.bottom)-Math.max(a.top,e.top))*Math.max(0,Math.min(a.right,e.right)-Math.max(a.left,e.left))},fit:function(t,e,a){return this.contains(a,e)?1:0},middle:function(t,e,a){return this.contains(a,[e.left+.5*e.width,e.top+.5*e.height])?1:0}},sort:function(t,e){return e.winner-t.winner||t.index-e.index},tolerate:function(t){var e,a,r,d,l,c,s,u,p=0,h=t.interactions.length,m=[o.event.pageX,o.event.pageY],f=o.tolerance||o.modes[o.mode];do{if(u=t.interactions[p]){if(!u)return;u.drop=[],l=[],c=u.droppable.length,f&&(r=o.locate(u.proxy)),e=0;do{if(s=u.droppable[e]){if(!(a=(d=n.data(s,o.datakey)).location))continue;d.winner=f?f.call(o,o.event,r,a):o.contains(a,m)?1:0,l.push(d)}}while(++e<c);l.sort(o.sort),e=0;do{(d=l[e])&&(d.winner&&u.drop.length<o.multi?(d.active[p]||d.anyactive||(!1!==i.drag.hijack(o.event,\"dropstart\",t,p,d.elem)[0]?(d.active[p]=1,d.anyactive+=1):d.winner=0),d.winner&&u.drop.push(d.elem)):d.active[p]&&1==d.anyactive&&(i.drag.hijack(o.event,\"dropend\",t,p,d.elem),d.active[p]=0,d.anyactive-=1))}while(++e<c)}}while(++p<h);o.last&&m[0]==o.last.pageX&&m[1]==o.last.pageY?delete o.timer:o.timer=setTimeout((function(){o.tolerate(t)}),o.delay),o.last=o.event}};i.dropinit=i.dropstart=i.dropend=o},\n",
       "      467: function _(e,t,n){var r=e(458),o=e(460);var i={Avg:function(e){this.field_=e,this.init=function(){this.count_=0,this.nonNullCount_=0,this.sum_=0},this.accumulate=function(e){var t=e[this.field_];this.count_++,null==t||\"\"===t||isNaN(t)||(this.nonNullCount_++,this.sum_+=parseFloat(t))},this.storeResult=function(e){e.avg||(e.avg={}),0!==this.nonNullCount_&&(e.avg[this.field_]=this.sum_/this.nonNullCount_)}},Min:function(e){this.field_=e,this.init=function(){this.min_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.min_||t<this.min_)&&(this.min_=t)},this.storeResult=function(e){e.min||(e.min={}),e.min[this.field_]=this.min_}},Max:function(e){this.field_=e,this.init=function(){this.max_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.max_||t>this.max_)&&(this.max_=t)},this.storeResult=function(e){e.max||(e.max={}),e.max[this.field_]=this.max_}},Sum:function(e){this.field_=e,this.init=function(){this.sum_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(this.sum_+=parseFloat(t))},this.storeResult=function(e){e.sum||(e.sum={}),e.sum[this.field_]=this.sum_}},Count:function(e){this.field_=e,this.init=function(){},this.storeResult=function(e){e.count||(e.count={}),e.count[this.field_]=e.group.rows.length}}};t.exports={DataView:function(e){var t,n,i,l,a,u=this,s=\"id\",g=[],c=[],f={},p=null,h=null,d=null,m=!1,v=!0,_={},w={},y=[],$=[],C={getter:null,formatter:null,comparer:function(e,t){return e.value===t.value?0:e.value>t.value?1:-1},predefinedValues:[],aggregators:[],aggregateEmpty:!1,aggregateCollapsed:!1,aggregateChildGroups:!1,collapsed:!1,displayTotalsRow:!0,lazyTotalsCalculation:!1},I=[],R=[],x=[],E=0,M=0,F=0,S=new o.Event,b=new o.Event,A=new o.Event,N=new o.Event,G=new o.Event,T=new o.Event,O=new o.Event,P=new o.Event;function D(e){for(var t,n=e=e||0,r=g.length;n<r;n++){if(void 0===(t=g[n][s]))throw new Error(\"Each data element must implement a unique 'id' property\");f[t]=n}}function K(){var e=E?Math.max(1,Math.ceil(F/E)):1;return{pageSize:E,pageNum:M,totalRows:F,totalPages:e,dataView:u}}function j(e,r){v=r,n=e,t=null,!1===r&&g.reverse(),g.sort(e),!1===r&&g.reverse(),f={},D(),le()}function B(e,r){v=r,t=e,n=null;var o=Object.prototype.toString;Object.prototype.toString=\"function\"==typeof e?e:function(){return this[e]},!1===r&&g.reverse(),g.sort(),Object.prototype.toString=o,!1===r&&g.reverse(),f={},D(),le()}function z(t){e.groupItemMetadataProvider||(e.groupItemMetadataProvider=new o.Data.GroupItemMetadataProvider),R=[],x=[],I=(t=t||[])instanceof Array?t:[t];for(var n=0;n<I.length;n++){var i=I[n]=r.extend(!0,{},C,I[n]);i.getterIsAFn=\"function\"==typeof i.getter,i.compiledAccumulators=[];for(var l=i.aggregators.length;l--;)i.compiledAccumulators[l]=ee(i.aggregators[l]);x[n]={}}le()}function V(){if(!p){p={};for(var e=0,t=c.length;e<t;e++)p[c[e][s]]=e}}function q(e){return g[f[e]]}function U(e,t){if(void 0===f[e])throw new Error(\"Invalid id\");if(e!==t[s]){var n=t[s];if(null==n)throw new Error(\"Cannot update item to associate with a null id\");if(void 0!==f[n])throw new Error(\"Cannot update item to associate with a non-unique id\");f[n]=f[e],delete f[e],d&&d[e]&&delete d[e],e=n}g[f[e]]=t,d||(d={}),d[e]=!0,le()}function L(e,t){g.splice(e,0,t),D(e),le()}function k(e){var t=f[e];if(void 0===t)throw new Error(\"Invalid id\");delete f[e],g.splice(t,1),D(t),le()}function H(e){if(!n)throw new Error(\"sortedAddItem() requires a sort comparer, use sort()\");L(function(e){var t=0,r=g.length;for(;t<r;){var o=t+r>>>1;-1===n(g[o],e)?t=o+1:r=o}return t}(e),e)}function W(e,t){if(null==e)for(var n=0;n<I.length;n++)x[n]={},I[n].collapsed=t,!0===t?P.notify({level:n,groupingKey:null}):O.notify({level:n,groupingKey:null});else x[e]={},I[e].collapsed=t,!0===t?P.notify({level:e,groupingKey:null}):O.notify({level:e,groupingKey:null});le()}function J(e,t,n){x[e][t]=I[e].collapsed^n,le()}function Q(e,t){for(var n,r,i,l=[],a={},u=t?t.level+1:0,s=I[u],g=0,c=s.predefinedValues.length;g<c;g++)(n=a[r=s.predefinedValues[g]])||((n=new o.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+\":|:\":\"\")+r,l[l.length]=n,a[r]=n);for(g=0,c=e.length;g<c;g++)i=e[g],(n=a[r=s.getterIsAFn?s.getter(i):i[s.getter]])||((n=new o.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+\":|:\":\"\")+r,l[l.length]=n,a[r]=n),n.rows[n.count++]=i;if(u<I.length-1)for(g=0;g<l.length;g++)(n=l[g]).groups=Q(n.rows,n);return l.length&&function e(t,n){var r,o=I[n=n||0],i=o.collapsed,l=x[n],a=t.length;for(;a--;)(r=t[a]).collapsed&&!o.aggregateCollapsed||(r.groups&&e(r.groups,n+1),o.aggregators.length&&(o.aggregateEmpty||r.rows.length||r.groups&&r.groups.length)&&Y(r),r.collapsed=i^l[r.groupingKey],r.title=o.formatter?o.formatter(r):r.value)}(l,u),l.sort(I[u].comparer),l}function X(e){var t,n=e.group,r=I[n.level],o=n.level==I.length,i=r.aggregators.length;if(!o&&r.aggregateChildGroups)for(var l=n.groups.length;l--;)n.groups[l].totals.initialized||X(n.groups[l].totals);for(;i--;)(t=r.aggregators[i]).init(),!o&&r.aggregateChildGroups?r.compiledAccumulators[i].call(t,n.groups):r.compiledAccumulators[i].call(t,n.rows),t.storeResult(e);e.initialized=!0}function Y(e){var t=I[e.level],n=new o.GroupTotals;n.group=e,e.totals=n,t.lazyTotalsCalculation||X(n)}function Z(e){var t=e.toString().indexOf(\"function\")>=0?/^function[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/:/^[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/,n=e.toString().match(t);return{params:n[1].split(\",\"),body:n[2]}}function ee(e){if(e.accumulate){var t=Z(e.accumulate),n=new Function(\"_items\",\"for (var \"+t.params[0]+\", _i=0, _il=_items.length; _i<_il; _i++) {\"+t.params[0]+\" = _items[_i]; \"+t.body+\"}\"),r=\"compiledAccumulatorLoop\";return n.displayName=r,n.name=te(n,r),n}return function(){}}function te(e,t){try{Object.defineProperty(e,\"name\",{writable:!0,value:t})}catch(n){e.name=t}}function ne(e,t){for(var n=[],r=0,o=0,i=e.length;o<i;o++)h(e[o],t)&&(n[r++]=e[o]);return n}function re(e,t,n){for(var r,o=[],i=0,l=0,a=e.length;l<a;l++)r=e[l],n[l]?o[i++]=r:h(r,t)&&(o[i++]=r,n[l]=!0);return o}function oe(t){if(h){var n=e.inlineFilters?l:ne,r=e.inlineFilters?a:re;_.isFilterNarrowing?y=n(y,i):_.isFilterExpanding?y=r(t,i,$):_.isFilterUnchanged||(y=n(t,i))}else y=E?t:t.concat();var o;return E?(y.length<=M*E&&(M=0===y.length?0:Math.floor((y.length-1)/E)),o=y.slice(E*M,E*M+E)):o=y,{totalRows:y.length,rows:o}}function ie(e){p=null,_.isFilterNarrowing==w.isFilterNarrowing&&_.isFilterExpanding==w.isFilterExpanding||($=[]);var t=oe(e);F=t.totalRows;var n=t.rows;R=[],I.length&&(R=Q(n)).length&&(n=function e(t,n){for(var r,o,i=I[n=n||0],l=[],a=0,u=0,s=t.length;u<s;u++){if(o=t[u],l[a++]=o,!o.collapsed)for(var g=0,c=(r=o.groups?e(o.groups,n+1):o.rows).length;g<c;g++)l[a++]=r[g];o.totals&&i.displayTotalsRow&&(!o.collapsed||i.aggregateCollapsed)&&(l[a++]=o.totals)}return l}(R));var r=function(e,t){var n,r,o,i=[],l=0,a=Math.max(t.length,e.length);_&&_.ignoreDiffsBefore&&(l=Math.max(0,Math.min(t.length,_.ignoreDiffsBefore))),_&&_.ignoreDiffsAfter&&(a=Math.min(t.length,Math.max(0,_.ignoreDiffsAfter)));for(var u=l,g=e.length;u<a;u++)u>=g?i[i.length]=u:(n=t[u],r=e[u],(!n||I.length&&(o=n.__nonDataRow||r.__nonDataRow)&&n.__group!==r.__group||n.__group&&!n.equals(r)||o&&(n.__groupTotals||r.__groupTotals)||n[s]!=r[s]||d&&d[n[s]])&&(i[i.length]=u));return i}(c,n);return c=n,r}function le(){if(!m){var e=r.extend(!0,{},K()),t=c.length,n=F,o=ie(g);E&&F<M*E&&(M=Math.max(0,Math.ceil(F/E)-1),o=ie(g)),d=null,w=_,_={},n!==F&&(G.notify(e,null,u),T.notify(K(),null,u)),t!==c.length&&b.notify({previous:t,current:c.length,dataView:u,callingOnRowsChanged:o.length>0},null,u),o.length>0&&A.notify({rows:o,dataView:u,calledOnRowCountChanged:t!==c.length},null,u),(t!==c.length||o.length>0)&&N.notify({rowsDiff:o,previousRowCount:t,currentRowCount:c.length,rowCountChanged:t!==c.length,rowsChanged:o.length>0,dataView:u},null,u)}}e=r.extend(!0,{},{groupItemMetadataProvider:null,inlineFilters:!1},e),r.extend(this,{beginUpdate:function(){m=!0},endUpdate:function(){m=!1,le()},setPagingOptions:function(e){G.notify(K(),null,u),null!=e.pageSize&&(E=e.pageSize,M=E?Math.min(M,Math.max(0,Math.ceil(F/E)-1)):0),null!=e.pageNum&&(M=Math.min(e.pageNum,Math.max(0,Math.ceil(F/E)-1))),T.notify(K(),null,u),le()},getPagingInfo:K,getIdPropertyName:function(){return s},getItems:function(){return g},setItems:function(e,t){void 0!==t&&(s=t),g=y=e,f={},D(),function(){for(var e,t=0,n=g.length;t<n;t++)if(void 0===(e=g[t][s])||f[e]!==t)throw new Error(\"Each data element must implement a unique 'id' property\")}(),le(),S.notify({idProperty:t},null,u)},setFilter:function(t){h=t,e.inlineFilters&&(l=function(){var e=Z(h),t=\"{ _retval[_idx++] = $item$; continue _coreloop; }$1\",n=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return!1([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return true\\s*([;}]|\\}|$)/gi,t).replace(/return!0([;}]|\\}|$)/gi,t).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ($1) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),r=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");r=(r=(r=r.replace(/\\$filter\\$/gi,n)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var o=new Function(\"_items,_args\",r);return o.displayName=\"compiledFilter\",o.name=te(o,\"compiledFilter\"),o}(),a=function(){var e=Z(h),t=\"{ _cache[_i] = true;_retval[_idx++] = $item$; continue _coreloop; }$1\",n=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return!1([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return true\\s*([;}]|\\}|$)/gi,t).replace(/return!0([;}]|\\}|$)/gi,t).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ((_cache[_i] = $1)) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),r=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"if (_cache[_i]) { \",\"_retval[_idx++] = $item$; \",\"continue _coreloop; \",\"} \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");r=(r=(r=r.replace(/\\$filter\\$/gi,n)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var o=new Function(\"_items,_args,_cache\",r),i=\"compiledFilterWithCaching\";return o.displayName=i,o.name=te(o,i),o}()),le()},getFilter:function(){return h},getFilteredItems:function(){return y},sort:j,fastSort:B,reSort:function(){n?j(n,v):t&&B(t,v)},setGrouping:z,getGrouping:function(){return I},groupBy:function(e,t,n){z(null!=e?{getter:e,formatter:t,comparer:n}:[])},setAggregators:function(e,t){if(!I.length)throw new Error(\"At least one grouping must be specified before calling setAggregators().\");I[0].aggregators=e,I[0].aggregateCollapsed=t,z(I)},collapseAllGroups:function(e){W(e,!0)},expandAllGroups:function(e){W(e,!1)},collapseGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(\":|:\")?(t=o,n=o.split(\":|:\").length-1):(t=r.join(\":|:\"),n=r.length-1),J(n,t,!0),P.notify({level:n,groupingKey:t})},expandGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(\":|:\")?(n=o.split(\":|:\").length-1,t=o):(n=r.length-1,t=r.join(\":|:\")),J(n,t,!1),O.notify({level:n,groupingKey:t})},getGroups:function(){return R},getIdxById:function(e){return f[e]},getRowByItem:function(e){return V(),p[e[s]]},getRowById:function(e){return V(),p[e]},getItemById:q,getItemByIdx:function(e){return g[e]},mapItemsToRows:function(e){var t=[];V();for(var n=0,r=e.length;n<r;n++){var o=p[e[n][s]];null!=o&&(t[t.length]=o)}return t},mapRowsToIds:function(e){for(var t=[],n=0,r=e.length;n<r;n++)e[n]<c.length&&(t[t.length]=c[e[n]][s]);return t},mapIdsToRows:function(e){var t=[];V();for(var n=0,r=e.length;n<r;n++){var o=p[e[n]];null!=o&&(t[t.length]=o)}return t},setRefreshHints:function(e){_=e},setFilterArgs:function(e){i=e},refresh:le,updateItem:U,insertItem:L,addItem:function(e){g.push(e),D(g.length-1),le()},deleteItem:k,sortedAddItem:H,sortedUpdateItem:function(e,t){if(void 0===f[e]||e!==t[s])throw new Error(\"Invalid or non-matching id \"+f[e]);if(!n)throw new Error(\"sortedUpdateItem() requires a sort comparer, use sort()\");var r=q(e);0!==n(r,t)?(k(e),H(t)):U(e,t)},syncGridSelection:function(e,t,n){var i,l=this,a=l.mapRowsToIds(e.getSelectedRows()),u=new o.Event;function s(t){a.join(\",\")!=t.join(\",\")&&(a=t,u.notify({grid:e,ids:a,dataView:l},new o.EventData,l))}return e.onSelectedRowsChanged.subscribe((function(t,o){if(!i){var u=l.mapRowsToIds(e.getSelectedRows());if(n&&e.getOptions().multiSelect)s(r.grep(a,(function(e){return void 0===l.getRowById(e)})).concat(u));else s(u)}})),this.onRowsOrCountChanged.subscribe((function(){if(a.length>0){i=!0;var n=l.mapIdsToRows(a);t||s(l.mapRowsToIds(n)),e.setSelectedRows(n),i=!1}})),u},syncGridCellCssStyles:function(e,t){var n,r;function o(e){for(var t in n={},e){var r=c[t][s];n[r]=e[t]}}function i(){if(n){r=!0,V();var o={};for(var i in n){var l=p[i];null!=l&&(o[l]=n[i])}e.setCellCssStyles(t,o),r=!1}}o(e.getCellCssStyles(t)),e.onCellCssStylesChanged.subscribe((function(n,l){r||t==l.key&&(l.hash?o(l.hash):(e.onCellCssStylesChanged.unsubscribe(),u.onRowsOrCountChanged.unsubscribe(i)))})),this.onRowsOrCountChanged.subscribe(i)},getLength:function(){return c.length},getItem:function(e){var t=c[e];if(t&&t.__group&&t.totals&&!t.totals.initialized){var n=I[t.level];n.displayTotalsRow||(X(t.totals),t.title=n.formatter?n.formatter(t):t.value)}else t&&t.__groupTotals&&!t.initialized&&X(t);return t},getItemMetadata:function(t){var n=c[t];return void 0===n?null:n.__group?e.groupItemMetadataProvider.getGroupRowMetadata(n):n.__groupTotals?e.groupItemMetadataProvider.getTotalsRowMetadata(n):null},onSetItemsCalled:S,onRowCountChanged:b,onRowsChanged:A,onRowsOrCountChanged:N,onBeforePagingInfoChanged:G,onPagingInfoChanged:T,onGroupExpanded:O,onGroupCollapsed:P})},Aggregators:i,Data:{Aggregators:i}}},\n",
       "      468: function _(e,t,i){var n=e(458),o=e(460);function l(e){var t,i;function o(){var t=e.column.editorFixedDecimalPlaces;return void 0===t&&(t=l.DefaultDecimalPlaces),t||0===t?t:null}this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=n(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?a:s).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field];var l=o();null!==l&&(i||0===i)&&i.toFixed&&(i=i.toFixed(l)),t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){var e=parseFloat(t.val());l.AllowEmptyValue?e||0===e||(e=\"\"):e=e||0;var i=o();return null!==i&&(e||0===e)&&e.toFixed&&(e=parseFloat(e.toFixed(i))),e},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid number\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}function a(e){var t=this.selectionStart,i=this.value.length;(e.keyCode===o.keyCode.LEFT&&t>0||e.keyCode===o.keyCode.RIGHT&&t<i-1)&&e.stopImmediatePropagation()}function s(e){e.keyCode!==o.keyCode.LEFT&&e.keyCode!==o.keyCode.RIGHT||e.stopImmediatePropagation()}l.DefaultDecimalPlaces=null,l.AllowEmptyValue=!1,t.exports={Editors:{Text:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=n(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?a:s).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.getValue=function(){return t.val()},this.setValue=function(e){t.val(e)},this.loadValue=function(n){i=n[e.column.field]||\"\",t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Integer:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=n(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?a:s).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid integer\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Float:l,Date:function(e){var t,i,o=!1;this.init=function(){(t=n(\"<INPUT type=text class='editor-text' />\")).appendTo(e.container),t.focus().select(),t.datepicker({showOn:\"button\",buttonImageOnly:!0,beforeShow:function(){o=!0},onClose:function(){o=!1}}),t.width(t.width()-18)},this.destroy=function(){n.datepicker.dpDiv.stop(!0,!0),t.datepicker(\"hide\"),t.datepicker(\"destroy\"),t.remove()},this.show=function(){o&&n.datepicker.dpDiv.stop(!0,!0).show()},this.hide=function(){o&&n.datepicker.dpDiv.stop(!0,!0).hide()},this.position=function(e){o&&n.datepicker.dpDiv.css(\"top\",e.top+30).css(\"left\",e.left)},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},YesNoSelect:function(e){var t,i;this.init=function(){(t=n(\"<SELECT tabIndex='0' class='editor-yesno'><OPTION value='yes'>Yes</OPTION><OPTION value='no'>No</OPTION></SELECT>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){t.val((i=n[e.column.field])?\"yes\":\"no\"),t.select()},this.serializeValue=function(){return\"yes\"==t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return t.val()!=i},this.validate=function(){return{valid:!0,msg:null}},this.init()},Checkbox:function(e){var t,i;this.init=function(){(t=n(\"<INPUT type=checkbox value='true' class='editor-checkbox' hideFocus>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){(i=!!n[e.column.field])?t.prop(\"checked\",!0):t.prop(\"checked\",!1)},this.preClick=function(){t.prop(\"checked\",!t.prop(\"checked\"))},this.serializeValue=function(){return t.prop(\"checked\")},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return this.serializeValue()!==i},this.validate=function(){return{valid:!0,msg:null}},this.init()},PercentComplete:function(e){var t,i,o;this.init=function(){(t=n(\"<INPUT type=text class='editor-percentcomplete' />\")).width(n(e.container).innerWidth()-25),t.appendTo(e.container),(i=n(\"<div class='editor-percentcomplete-picker' />\").appendTo(e.container)).append(\"<div class='editor-percentcomplete-helper'><div class='editor-percentcomplete-wrapper'><div class='editor-percentcomplete-slider' /><div class='editor-percentcomplete-buttons' /></div></div>\"),i.find(\".editor-percentcomplete-buttons\").append(\"<button val=0>Not started</button><br/><button val=50>In Progress</button><br/><button val=100>Complete</button>\"),t.focus().select(),i.find(\".editor-percentcomplete-slider\").slider({orientation:\"vertical\",range:\"min\",value:o,slide:function(e,i){t.val(i.value)}}),i.find(\".editor-percentcomplete-buttons button\").on(\"click\",(function(e){t.val(n(this).attr(\"val\")),i.find(\".editor-percentcomplete-slider\").slider(\"value\",n(this).attr(\"val\"))}))},this.destroy=function(){t.remove(),i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(o=i[e.column.field]),t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==o)&&(parseInt(t.val(),10)||0)!=o},this.validate=function(){return isNaN(parseInt(t.val(),10))?{valid:!1,msg:\"Please enter a valid positive number\"}:{valid:!0,msg:null}},this.init()},LongText:function(e){var t,i,l,a=this;this.init=function(){var o=n(\"body\");e.grid.getOptions().editorCellNavOnLRKeys;i=n(\"<DIV style='z-index:10000;position:absolute;background:white;padding:5px;border:3px solid gray; -moz-border-radius:10px; border-radius:10px;'/>\").appendTo(o),t=n(\"<TEXTAREA hidefocus rows=5 style='background:white;width:250px;height:80px;border:0;outline:0'>\").appendTo(i),n(\"<DIV style='text-align:right'><BUTTON>Save</BUTTON><BUTTON>Cancel</BUTTON></DIV>\").appendTo(i),i.find(\"button:first\").on(\"click\",this.save),i.find(\"button:last\").on(\"click\",this.cancel),t.on(\"keydown\",this.handleKeyDown),a.position(e.position),t.focus().select()},this.handleKeyDown=function(t){if(t.which==o.keyCode.ENTER&&t.ctrlKey)a.save();else if(t.which==o.keyCode.ESCAPE)t.preventDefault(),a.cancel();else if(t.which==o.keyCode.TAB&&t.shiftKey)t.preventDefault(),e.grid.navigatePrev();else if(t.which==o.keyCode.TAB)t.preventDefault(),e.grid.navigateNext();else if((t.which==o.keyCode.LEFT||t.which==o.keyCode.RIGHT)&&e.grid.getOptions().editorCellNavOnLRKeys){var i=this.selectionStart,n=this.value.length;t.keyCode===o.keyCode.LEFT&&0===i&&e.grid.navigatePrev(),t.keyCode===o.keyCode.RIGHT&&i>=n-1&&e.grid.navigateNext()}},this.save=function(){e.commitChanges()},this.cancel=function(){t.val(l),e.cancelChanges()},this.hide=function(){i.hide()},this.show=function(){i.show()},this.position=function(e){i.css(\"top\",e.top-5).css(\"left\",e.left-5)},this.destroy=function(){i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(l=i[e.column.field]),t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==l)&&t.val()!=l},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}}}},\n",
       "      469: function _(e,n,r){e(460);n.exports={Formatters:{PercentComplete:function(e,n,r,t,c){return null==r||\"\"===r?\"-\":r<50?\"<span style='color:red;font-weight:bold;'>\"+r+\"%</span>\":\"<span style='color:green'>\"+r+\"%</span>\"},PercentCompleteBar:function(e,n,r,t,c){return null==r||\"\"===r?\"\":\"<span class='percent-complete-bar' style='background:\"+(r<30?\"red\":r<70?\"silver\":\"green\")+\";width:\"+r+\"%'></span>\"},YesNo:function(e,n,r,t,c){return r?\"Yes\":\"No\"},Checkmark:function(e,n,r,t,c){return r?\"<img src='../images/tick.png'>\":\"\"},Checkbox:function(e,n,r,t,c){return'<img class=\"slick-edit-preclick\" src=\"../images/'+(r?\"CheckboxY\":\"CheckboxN\")+'.png\">'}}}},\n",
       "      470: function _(t,o,r){var e=t(458),n=t(460);o.exports={RemoteModel:function(){var t={length:0},o=\"\",r=null,a=1,l=null,i=null,s=new n.Event,u=new n.Event;function f(){for(var o in t)delete t[o];t.length=0}function c(n,f){if(i){i.abort();for(var c=i.fromPage;c<=i.toPage;c++)t[50*c]=void 0}n<0&&(n=0),t.length>0&&(f=Math.min(f,t.length-1));for(var d=Math.floor(n/50),v=Math.floor(f/50);void 0!==t[50*d]&&d<v;)d++;for(;void 0!==t[50*v]&&d<v;)v--;if(d>v||d==v&&void 0!==t[50*d])u.notify({from:n,to:f});else{var m=\"http://octopart.com/api/v3/parts/search?apikey=68b25f31&include[]=short_description&show[]=uid&show[]=manufacturer&show[]=mpn&show[]=brand&show[]=octopart_url&show[]=short_description&q=\"+o+\"&start=\"+50*d+\"&limit=\"+(50*(v-d)+50);null!=r&&(m+=\"&sortby=\"+r+(a>0?\"+asc\":\"+desc\")),null!=l&&clearTimeout(l),l=setTimeout((function(){for(var o=d;o<=v;o++)t[50*o]=null;s.notify({from:n,to:f}),(i=e.jsonp({url:m,callbackParameter:\"callback\",cache:!0,success:h,error:function(){!function(t,o){alert(\"error loading pages \"+t+\" to \"+o)}(d,v)}})).fromPage=d,i.toPage=v}),50)}}function h(o){var r=o.request.start,e=r+o.results.length;t.length=Math.min(parseInt(o.hits),1e3);for(var n=0;n<o.results.length;n++){var a=o.results[n].item;t[r+n]=a,t[r+n].index=r+n}i=null,u.notify({from:r,to:e})}return{data:t,clear:f,isDataLoaded:function(o,r){for(var e=o;e<=r;e++)if(null==t[e]||null==t[e])return!1;return!0},ensureData:c,reloadData:function(o,r){for(var e=o;e<=r;e++)delete t[e];c(o,r)},setSort:function(t,o){r=t,a=o,f()},setSearch:function(t){o=t,f()},onDataLoading:s,onDataLoaded:u}}}},\n",
       "      471: function _(e,s,t){var o=e(458),l=e(460);s.exports={GroupItemMetadataProvider:function(e){var s,t={checkboxSelect:!1,checkboxSelectCssClass:\"slick-group-select-checkbox\",checkboxSelectPlugin:null,groupCssClass:\"slick-group\",groupTitleCssClass:\"slick-group-title\",totalsCssClass:\"slick-group-totals\",groupFocusable:!0,totalsFocusable:!1,toggleCssClass:\"slick-group-toggle\",toggleExpandedCssClass:\"expanded\",toggleCollapsedCssClass:\"collapsed\",enableExpandCollapse:!0,groupFormatter:function(e,s,t,o,l,r){if(!a.enableExpandCollapse)return l.title;var c=15*l.level+\"px\";return(a.checkboxSelect?'<span class=\"'+a.checkboxSelectCssClass+\" \"+(l.selectChecked?\"checked\":\"unchecked\")+'\"></span>':\"\")+\"<span class='\"+a.toggleCssClass+\" \"+(l.collapsed?a.toggleCollapsedCssClass:a.toggleExpandedCssClass)+\"' style='margin-left:\"+c+\"'></span><span class='\"+a.groupTitleCssClass+\"' level='\"+l.level+\"'>\"+l.title+\"</span>\"},totalsFormatter:function(e,s,t,o,l,a){return o.groupTotalsFormatter&&o.groupTotalsFormatter(l,o,a)||\"\"},includeHeaderTotals:!1},a=o.extend(!0,{},t,e);function r(e,t){var r=o(e.target),c=this.getDataItem(t.row);if(c&&c instanceof l.Group&&r.hasClass(a.toggleCssClass)){var n=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:n.top,ignoreDiffsAfter:n.bottom+1}),c.collapsed?this.getData().expandGroup(c.groupingKey):this.getData().collapseGroup(c.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}if(c&&c instanceof l.Group&&r.hasClass(a.checkboxSelectCssClass)){c.selectChecked=!c.selectChecked,r.removeClass(c.selectChecked?\"unchecked\":\"checked\"),r.addClass(c.selectChecked?\"checked\":\"unchecked\");var i=s.getData().mapItemsToRows(c.rows);(c.selectChecked?a.checkboxSelectPlugin.selectRows:a.checkboxSelectPlugin.deSelectRows)(i)}}function c(e,t){if(a.enableExpandCollapse&&e.which==l.keyCode.SPACE){var o=this.getActiveCell();if(o){var r=this.getDataItem(o.row);if(r&&r instanceof l.Group){var c=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:c.top,ignoreDiffsAfter:c.bottom+1}),r.collapsed?this.getData().expandGroup(r.groupingKey):this.getData().collapseGroup(r.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}}}}return{init:function(e){(s=e).onClick.subscribe(r),s.onKeyDown.subscribe(c)},destroy:function(){s&&(s.onClick.unsubscribe(r),s.onKeyDown.unsubscribe(c))},getGroupRowMetadata:function(e){var s=e&&e.level;return{selectable:!1,focusable:a.groupFocusable,cssClasses:a.groupCssClass+\" slick-group-level-\"+s,formatter:a.includeHeaderTotals&&a.totalsFormatter,columns:{0:{colspan:a.includeHeaderTotals?\"1\":\"*\",formatter:a.groupFormatter,editor:null}}}},getTotalsRowMetadata:function(e){var s=e&&e.group&&e.group.level;return{selectable:!1,focusable:a.totalsFocusable,cssClasses:a.totalsCssClass+\" slick-group-level-\"+s,formatter:a.totalsFormatter,editor:null}},getOptions:function(){return a},setOptions:function(e){o.extend(!0,a,e)}}}}},\n",
       "      472: function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=i(1),n=i(276),r=o.__importStar(i(18));class _ extends n.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}t.WidgetView=_,_.__name__=\"WidgetView\";class s extends n.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define({orientation:[r.Orientation,\"horizontal\"],default_size:[r.Number,300]}),this.override({margin:[5,5,5,5]})}}t.Widget=s,s.__name__=\"Widget\",s.init_Widget()},\n",
       "      473: function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),n=e(472),c=e(114),a=s.__importStar(e(18));class o extends n.Widget{constructor(e){super(e)}static init_TableWidget(){this.define({source:[a.Instance],view:[a.Instance,()=>new c.CDSView]})}initialize(){super.initialize(),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())}}t.TableWidget=o,o.__name__=\"TableWidget\",o.init_TableWidget()},\n",
       "      474: function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=t(1),o=t(475),n=t(455),l=r.__importStar(t(18)),a=t(29),d=t(81);class s extends d.Model{constructor(t){super(t)}static init_TableColumn(){this.define({field:[l.String],title:[l.String],width:[l.Number,300],formatter:[l.Instance,()=>new o.StringFormatter],editor:[l.Instance,()=>new n.StringEditor],sortable:[l.Boolean,!0],default_sort:[l.Sort,\"ascending\"]})}toColumn(){var t;return{id:a.uniqueId(),field:this.field,name:null!==(t=this.title)&&void 0!==t?t:this.field,width:this.width,formatter:null!=this.formatter?this.formatter.doFormat.bind(this.formatter):void 0,model:this.editor,editor:this.editor.default_view,sortable:this.sortable,defaultSortAsc:\"ascending\"==this.default_sort}}}i.TableColumn=s,s.__name__=\"TableColumn\",s.init_TableColumn()},\n",
       "      475: function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),i=n.__importDefault(t(186)),a=n.__importStar(t(188)),o=t(476),s=n.__importStar(t(18)),l=t(72),c=t(8),m=t(81);class _ extends m.Model{constructor(t){super(t)}doFormat(t,e,r,n,i){return null==r?\"\":(r+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}}r.CellFormatter=_,_.__name__=\"CellFormatter\";class u extends _{constructor(t){super(t)}static init_StringFormatter(){this.define({font_style:[s.FontStyle,\"normal\"],text_align:[s.TextAlign,\"left\"],text_color:[s.Color]})}doFormat(t,e,r,n,i){const{font_style:a,text_align:o,text_color:s}=this,c=l.div({},null==r?\"\":\"\"+r);switch(a){case\"bold\":c.style.fontWeight=\"bold\";break;case\"italic\":c.style.fontStyle=\"italic\"}return null!=o&&(c.style.textAlign=o),null!=s&&(c.style.color=s),c.outerHTML}}r.StringFormatter=u,u.__name__=\"StringFormatter\",u.init_StringFormatter();class F extends u{constructor(t){super(t)}static init_ScientificFormatter(){this.define({nan_format:[s.String],precision:[s.Number,10],power_limit_high:[s.Number,5],power_limit_low:[s.Number,-3]})}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}doFormat(t,e,r,n,i){const a=r<=this.scientific_limit_low||r>=this.scientific_limit_high;let o=this.precision;return o<1&&(o=1),r=null!=r&&!isNaN(r)||null==this.nan_format?a?r.toExponential(o):r.toFixed(o).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"):this.nan_format,super.doFormat(t,e,r,n,i)}}r.ScientificFormatter=F,F.__name__=\"ScientificFormatter\",F.init_ScientificFormatter();class d extends u{constructor(t){super(t)}static init_NumberFormatter(){this.define({format:[s.String,\"0,0\"],language:[s.String,\"en\"],rounding:[s.RoundingFunction,\"round\"],nan_format:[s.String]})}doFormat(t,e,r,n,i){const{format:o,language:s,nan_format:l}=this,c=(()=>{switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}})();return r=null!=r&&!isNaN(r)||null==l?a.format(r,o,s,c):l,super.doFormat(t,e,r,n,i)}}r.NumberFormatter=d,d.__name__=\"NumberFormatter\",d.init_NumberFormatter();class f extends _{constructor(t){super(t)}static init_BooleanFormatter(){this.define({icon:[s.String,\"check\"]})}doFormat(t,e,r,n,i){return r?l.i({class:this.icon}).outerHTML:\"\"}}r.BooleanFormatter=f,f.__name__=\"BooleanFormatter\",f.init_BooleanFormatter();class g extends u{constructor(t){super(t)}static init_DateFormatter(){this.define({format:[s.String,\"ISO-8601\"],nan_format:[s.String]})}getFormat(){switch(this.format){case\"ATOM\":case\"W3C\":case\"RFC-3339\":case\"ISO-8601\":return\"%Y-%m-%d\";case\"COOKIE\":return\"%a, %d %b %Y\";case\"RFC-850\":return\"%A, %d-%b-%y\";case\"RFC-1123\":case\"RFC-2822\":return\"%a, %e %b %Y\";case\"RSS\":case\"RFC-822\":case\"RFC-1036\":return\"%a, %e %b %y\";case\"TIMESTAMP\":return;default:return this.format}}doFormat(t,e,r,n,a){const{nan_format:o}=this;let s;return s=null!=(r=c.isString(r)?parseInt(r,10):r)&&!isNaN(r)&&-9223372036854776!==r||null==o?null==r?\"\":i.default(r,this.getFormat()):o,super.doFormat(t,e,s,n,a)}}r.DateFormatter=g,g.__name__=\"DateFormatter\",g.init_DateFormatter();class h extends _{constructor(t){super(t)}static init_HTMLTemplateFormatter(){this.define({template:[s.String,\"<%= value %>\"]})}doFormat(t,e,r,n,i){const{template:a}=this;if(null==r)return\"\";return o._.template(a)(Object.assign(Object.assign({},i),{value:r}))}}r.HTMLTemplateFormatter=h,h.__name__=\"HTMLTemplateFormatter\",h.init_HTMLTemplateFormatter()},\n",
       "      476: function _(e,n,t){var f=e(477),i=f.template;function o(e,n,t){return i(e,n,t)}o._=f,n.exports=o,\"function\"==typeof define&&define.amd?define((function(){return o})):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=o)},\n",
       "      477: function _(r,e,n){\n",
       "      //     (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n",
       "      //     Underscore may be freely distributed under the MIT license.\n",
       "      var t={},a=Array.prototype,u=Object.prototype,c=a.slice,o=u.toString,l=u.hasOwnProperty,i=a.forEach,f=Object.keys,s=Array.isArray,p=function(){},_=p.each=p.forEach=function(r,e,n){if(null!=r)if(i&&r.forEach===i)r.forEach(e,n);else if(r.length===+r.length){for(var a=0,u=r.length;a<u;a++)if(e.call(n,r[a],a,r)===t)return}else{var c=p.keys(r);for(a=0,u=c.length;a<u;a++)if(e.call(n,r[c[a]],c[a],r)===t)return}};p.keys=f||function(r){if(r!==Object(r))throw new TypeError(\"Invalid object\");var e=[];for(var n in r)p.has(r,n)&&e.push(n);return e},p.defaults=function(r){return _(c.call(arguments,1),(function(e){if(e)for(var n in e)void 0===r[n]&&(r[n]=e[n])})),r},p.isArray=s||function(r){return\"[object Array]\"===o.call(r)},p.has=function(r,e){if(!p.isArray(e))return null!=r&&l.call(r,e);for(var n=e.length,t=0;t<n;t++){var a=e[t];if(null==r||!l.call(r,a))return!1;r=r[a]}return!!n};var h={escape:{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\"}},v={escape:new RegExp(\"[\"+p.keys(h.escape).join(\"\")+\"]\",\"g\")};p.each([\"escape\"],(function(r){p[r]=function(e){return null==e?\"\":(\"\"+e).replace(v[r],(function(e){return h[r][e]}))}})),p.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var g=/(.)^/,y={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},j=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;p.template=function(r,e,n){var t;n=p.defaults({},n,p.templateSettings);var a=new RegExp([(n.escape||g).source,(n.interpolate||g).source,(n.evaluate||g).source].join(\"|\")+\"|$\",\"g\"),u=0,c=\"__p+='\";r.replace(a,(function(e,n,t,a,o){return c+=r.slice(u,o).replace(j,(function(r){return\"\\\\\"+y[r]})),n&&(c+=\"'+\\n((__t=(\"+n+\"))==null?'':_.escape(__t))+\\n'\"),t&&(c+=\"'+\\n((__t=(\"+t+\"))==null?'':__t)+\\n'\"),a&&(c+=\"';\\n\"+a+\"\\n__p+='\"),u=o+e.length,e})),c+=\"';\\n\",n.variable||(c=\"with(obj||{}){\\n\"+c+\"}\\n\"),c=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+c+\"return __p;\\n\";try{t=new Function(n.variable||\"obj\",\"_\",c)}catch(r){throw r.source=c,r}if(e)return t(e,p);var o=function(r){return t.call(this,r,p)};return o.source=\"function(\"+(n.variable||\"obj\")+\"){\\n\"+c+\"}\",o},e.exports=p},\n",
       "      478: function _(e,l,b){Object.defineProperty(b,\"__esModule\",{value:!0}),b.bk_data_table=\"bk-data-table\",b.bk_cell_index=\"bk-cell-index\",b.bk_header_index=\"bk-header-index\",b.bk_cell_editor=\"bk-cell-editor\",b.bk_cell_select=\"bk-cell-select\"},\n",
       "      479: function _(A,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});o.default='\\n.bk-root {\\n  /*\\nIMPORTANT:\\nIn order to preserve the uniform grid appearance, all cell styles need to have padding, margin and border sizes.\\nNo built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS\\nclasses should alter those!\\n*/\\n  /*\\nIMPORTANT:\\nIn order to preserve the uniform grid appearance, all cell styles need to have padding, margin and border sizes.\\nNo built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS\\nclasses should alter those!\\n*/\\n  /* Menu button */\\n  /* Menu */\\n  /* Menu items */\\n  /* Disabled */\\n  /* Divider */\\n  /* Excluded item from Column Picker will be hidden */\\n}\\n.bk-root .slick-header.ui-state-default,\\n.bk-root .slick-headerrow.ui-state-default,\\n.bk-root .slick-footerrow.ui-state-default,\\n.bk-root .slick-top-panel-scroller.ui-state-default,\\n.bk-root .slick-group-header.ui-state-default {\\n  width: 100%;\\n  overflow: auto;\\n  position: relative;\\n  border-left: 0px !important;\\n}\\n.bk-root .slick-header.ui-state-default {\\n  overflow: inherit;\\n}\\n.bk-root .slick-header::-webkit-scrollbar,\\n.bk-root .slick-headerrow::-webkit-scrollbar,\\n.bk-root .slick-footerrow::-webkit-scrollbar {\\n  display: none;\\n}\\n.bk-root .slick-header-columns,\\n.bk-root .slick-headerrow-columns,\\n.bk-root .slick-footerrow-columns,\\n.bk-root .slick-group-header-columns {\\n  position: relative;\\n  white-space: nowrap;\\n  cursor: default;\\n  overflow: hidden;\\n}\\n.bk-root .slick-header-column.ui-state-default,\\n.bk-root .slick-group-header-column.ui-state-default {\\n  position: relative;\\n  display: inline-block;\\n  box-sizing: content-box !important;\\n  /* this here only for Firefox! */\\n  overflow: hidden;\\n  -o-text-overflow: ellipsis;\\n  text-overflow: ellipsis;\\n  height: 16px;\\n  line-height: 16px;\\n  margin: 0;\\n  padding: 4px;\\n  border-right: 1px solid silver;\\n  border-left: 0px !important;\\n  border-top: 0px !important;\\n  border-bottom: 0px !important;\\n  float: left;\\n}\\n.bk-root .slick-footerrow-column.ui-state-default {\\n  -o-text-overflow: ellipsis;\\n  text-overflow: ellipsis;\\n  margin: 0;\\n  padding: 4px;\\n  border-right: 1px solid silver;\\n  border-left: 0px;\\n  border-top: 0px;\\n  border-bottom: 0px;\\n  float: left;\\n  line-height: 20px;\\n  vertical-align: middle;\\n}\\n.bk-root .slick-headerrow-column.ui-state-default,\\n.bk-root .slick-footerrow-column.ui-state-default {\\n  padding: 4px;\\n}\\n.bk-root .slick-header-column-sorted {\\n  font-style: italic;\\n}\\n.bk-root .slick-sort-indicator {\\n  display: inline-block;\\n  width: 8px;\\n  height: 5px;\\n  margin-left: 4px;\\n  margin-top: 6px;\\n  float: left;\\n}\\n.bk-root .slick-sort-indicator-numbered {\\n  display: inline-block;\\n  width: 8px;\\n  height: 5px;\\n  margin-left: 4px;\\n  margin-top: 0;\\n  line-height: 20px;\\n  float: left;\\n  font-family: Arial;\\n  font-style: normal;\\n  font-weight: bold;\\n  color: #6190CD;\\n}\\n.bk-root .slick-sort-indicator-desc {\\n  background: url(images/sort-desc.gif);\\n}\\n.bk-root .slick-sort-indicator-asc {\\n  background: url(images/sort-asc.gif);\\n}\\n.bk-root .slick-resizable-handle {\\n  position: absolute;\\n  font-size: 0.1px;\\n  display: block;\\n  cursor: col-resize;\\n  width: 9px;\\n  right: -5px;\\n  top: 0;\\n  height: 100%;\\n  z-index: 1;\\n}\\n.bk-root .slick-sortable-placeholder {\\n  background: silver;\\n}\\n.bk-root .grid-canvas {\\n  position: relative;\\n  outline: 0;\\n}\\n.bk-root .slick-row.ui-widget-content,\\n.bk-root .slick-row.ui-state-active {\\n  position: absolute;\\n  border: 0px;\\n  width: 100%;\\n}\\n.bk-root .slick-cell,\\n.bk-root .slick-headerrow-column,\\n.bk-root .slick-footerrow-column {\\n  position: absolute;\\n  border: 1px solid transparent;\\n  border-right: 1px dotted silver;\\n  border-bottom-color: silver;\\n  overflow: hidden;\\n  -o-text-overflow: ellipsis;\\n  text-overflow: ellipsis;\\n  vertical-align: middle;\\n  z-index: 1;\\n  padding: 1px 2px 2px 1px;\\n  margin: 0;\\n  white-space: nowrap;\\n  cursor: default;\\n}\\n.bk-root .slick-cell,\\n.bk-root .slick-headerrow-column {\\n  border-bottom-color: silver;\\n}\\n.bk-root .slick-footerrow-column {\\n  border-top-color: silver;\\n}\\n.bk-root .slick-group-toggle {\\n  display: inline-block;\\n}\\n.bk-root .slick-cell.highlighted {\\n  background: lightskyblue;\\n  background: rgba(0, 0, 255, 0.2);\\n  -webkit-transition: all 0.5s;\\n  -moz-transition: all 0.5s;\\n  -o-transition: all 0.5s;\\n  transition: all 0.5s;\\n}\\n.bk-root .slick-cell.flashing {\\n  border: 1px solid red !important;\\n}\\n.bk-root .slick-cell.editable {\\n  z-index: 11;\\n  overflow: visible;\\n  background: white;\\n  border-color: black;\\n  border-style: solid;\\n}\\n.bk-root .slick-cell:focus {\\n  outline: none;\\n}\\n.bk-root .slick-reorder-proxy {\\n  display: inline-block;\\n  background: blue;\\n  opacity: 0.15;\\n  cursor: move;\\n}\\n.bk-root .slick-reorder-guide {\\n  display: inline-block;\\n  height: 2px;\\n  background: blue;\\n  opacity: 0.7;\\n}\\n.bk-root .slick-selection {\\n  z-index: 10;\\n  position: absolute;\\n  border: 2px dashed black;\\n}\\n.bk-root .slick-pane {\\n  position: absolute;\\n  outline: 0;\\n  overflow: hidden;\\n  width: 100%;\\n}\\n.bk-root .slick-pane-header {\\n  display: block;\\n}\\n.bk-root .slick-header {\\n  overflow: hidden;\\n  position: relative;\\n}\\n.bk-root .slick-headerrow {\\n  overflow: hidden;\\n  position: relative;\\n}\\n.bk-root .slick-top-panel-scroller {\\n  overflow: hidden;\\n  position: relative;\\n}\\n.bk-root .slick-top-panel {\\n  width: 10000px;\\n}\\n.bk-root .slick-viewport {\\n  position: relative;\\n  outline: 0;\\n  width: 100%;\\n}\\n.bk-root .slick-header-columns {\\n  background: url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;\\n  border-bottom: 1px solid silver;\\n}\\n.bk-root .slick-header-column {\\n  background: url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;\\n  border-right: 1px solid silver;\\n}\\n.bk-root .slick-header-column:hover,\\n.bk-root .slick-header-column-active {\\n  background: white url(\\'images/header-columns-over-bg.gif\\') repeat-x center bottom;\\n}\\n.bk-root .slick-headerrow {\\n  background: #fafafa;\\n}\\n.bk-root .slick-headerrow-column {\\n  background: #fafafa;\\n  border-bottom: 0;\\n  height: 100%;\\n}\\n.bk-root .slick-row.ui-state-active {\\n  background: #F5F7D7;\\n}\\n.bk-root .slick-row {\\n  position: absolute;\\n  background: white;\\n  border: 0px;\\n  line-height: 20px;\\n}\\n.bk-root .slick-row.selected {\\n  z-index: 10;\\n  background: #DFE8F6;\\n}\\n.bk-root .slick-cell {\\n  padding-left: 4px;\\n  padding-right: 4px;\\n}\\n.bk-root .slick-group {\\n  border-bottom: 2px solid silver;\\n}\\n.bk-root .slick-group-toggle {\\n  width: 9px;\\n  height: 9px;\\n  margin-right: 5px;\\n}\\n.bk-root .slick-group-toggle.expanded {\\n  background: url(images/collapse.gif) no-repeat center center;\\n}\\n.bk-root .slick-group-toggle.collapsed {\\n  background: url(images/expand.gif) no-repeat center center;\\n}\\n.bk-root .slick-group-totals {\\n  color: gray;\\n  background: white;\\n}\\n.bk-root .slick-group-select-checkbox {\\n  width: 13px;\\n  height: 13px;\\n  margin: 3px 10px 0 0;\\n  display: inline-block;\\n}\\n.bk-root .slick-group-select-checkbox.checked {\\n  background: url(images/GrpCheckboxY.png) no-repeat center center;\\n}\\n.bk-root .slick-group-select-checkbox.unchecked {\\n  background: url(images/GrpCheckboxN.png) no-repeat center center;\\n}\\n.bk-root .slick-cell.selected {\\n  background-color: beige;\\n}\\n.bk-root .slick-cell.active {\\n  border-color: gray;\\n  border-style: solid;\\n}\\n.bk-root .slick-sortable-placeholder {\\n  background: silver !important;\\n}\\n.bk-root .slick-row.odd {\\n  background: #fafafa;\\n}\\n.bk-root .slick-row.ui-state-active {\\n  background: #F5F7D7;\\n}\\n.bk-root .slick-row.loading {\\n  opacity: 0.5;\\n}\\n.bk-root .slick-cell.invalid {\\n  border-color: red;\\n  -moz-animation-duration: 0.2s;\\n  -webkit-animation-duration: 0.2s;\\n  -moz-animation-name: slickgrid-invalid-hilite;\\n  -webkit-animation-name: slickgrid-invalid-hilite;\\n}\\n@-moz-keyframes slickgrid-invalid-hilite {\\n  from {\\n    box-shadow: 0 0 6px red;\\n  }\\n  to {\\n    box-shadow: none;\\n  }\\n}\\n@-webkit-keyframes slickgrid-invalid-hilite {\\n  from {\\n    box-shadow: 0 0 6px red;\\n  }\\n  to {\\n    box-shadow: none;\\n  }\\n}\\n.bk-root .slick-column-name,\\n.bk-root .slick-sort-indicator {\\n  /**\\n   * This makes all \"float:right\" elements after it that spill over to the next line\\n   * display way below the lower boundary of the column thus hiding them.\\n   */\\n  display: inline-block;\\n  float: left;\\n  margin-bottom: 100px;\\n}\\n.bk-root .slick-header-button {\\n  display: inline-block;\\n  float: right;\\n  vertical-align: top;\\n  margin: 1px;\\n  /**\\n  * This makes all \"float:right\" elements after it that spill over to the next line\\n  * display way below the lower boundary of the column thus hiding them.\\n  */\\n  margin-bottom: 100px;\\n  height: 15px;\\n  width: 15px;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n  cursor: pointer;\\n}\\n.bk-root .slick-header-button-hidden {\\n  width: 0;\\n  -webkit-transition: 0.2s width;\\n  -ms-transition: 0.2s width;\\n  transition: 0.2s width;\\n}\\n.bk-root .slick-header-column:hover > .slick-header-button {\\n  width: 15px;\\n}\\n.bk-root .slick-header-menubutton {\\n  position: absolute;\\n  right: 0;\\n  top: 0;\\n  bottom: 0;\\n  width: 14px;\\n  background-repeat: no-repeat;\\n  background-position: left center;\\n  background-image: url(../images/down.gif);\\n  cursor: pointer;\\n  display: none;\\n  border-left: thin ridge silver;\\n}\\n.bk-root .slick-header-column:hover > .slick-header-menubutton,\\n.bk-root .slick-header-column-active .slick-header-menubutton {\\n  display: inline-block;\\n}\\n.bk-root .slick-header-menu {\\n  position: absolute;\\n  display: inline-block;\\n  margin: 0;\\n  padding: 2px;\\n  cursor: default;\\n}\\n.bk-root .slick-header-menuitem {\\n  list-style: none;\\n  margin: 0;\\n  padding: 0;\\n  cursor: pointer;\\n}\\n.bk-root .slick-header-menuicon {\\n  display: inline-block;\\n  width: 16px;\\n  height: 16px;\\n  vertical-align: middle;\\n  margin-right: 4px;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n}\\n.bk-root .slick-header-menucontent {\\n  display: inline-block;\\n  vertical-align: middle;\\n}\\n.bk-root .slick-header-menuitem-disabled {\\n  color: silver;\\n}\\n.bk-root .slick-header-menuitem.slick-header-menuitem-divider {\\n  cursor: default;\\n  border: none;\\n  overflow: hidden;\\n  padding: 0;\\n  height: 1px;\\n  margin: 8px 2px;\\n  background-color: #cecece;\\n}\\n.bk-root .slick-header-menuitem-divider.slick-header-menuitem:hover {\\n  background-color: #cecece;\\n}\\n.bk-root .slick-columnpicker {\\n  border: 1px solid #718BB7;\\n  background: #f0f0f0;\\n  padding: 6px;\\n  -moz-box-shadow: 2px 2px 2px silver;\\n  -webkit-box-shadow: 2px 2px 2px silver;\\n  box-shadow: 2px 2px 2px silver;\\n  min-width: 150px;\\n  cursor: default;\\n  position: absolute;\\n  z-index: 20;\\n  overflow: auto;\\n  resize: both;\\n}\\n.bk-root .slick-columnpicker > .close {\\n  float: right;\\n}\\n.bk-root .slick-columnpicker .title {\\n  font-size: 16px;\\n  width: 60%;\\n  border-bottom: solid 1px #d6d6d6;\\n  margin-bottom: 10px;\\n}\\n.bk-root .slick-columnpicker li {\\n  list-style: none;\\n  margin: 0;\\n  padding: 0;\\n  background: none;\\n}\\n.bk-root .slick-columnpicker input {\\n  margin: 4px;\\n}\\n.bk-root .slick-columnpicker li a {\\n  display: block;\\n  padding: 4px;\\n  font-weight: bold;\\n}\\n.bk-root .slick-columnpicker li a:hover {\\n  background: white;\\n}\\n.bk-root .slick-columnpicker-list li.hidden {\\n  display: none;\\n}\\n.bk-root .slick-pager {\\n  width: 100%;\\n  height: 26px;\\n  border: 1px solid gray;\\n  border-top: 0;\\n  background: url(\\'../images/header-columns-bg.gif\\') repeat-x center bottom;\\n  vertical-align: middle;\\n}\\n.bk-root .slick-pager .slick-pager-status {\\n  display: inline-block;\\n  padding: 6px;\\n}\\n.bk-root .slick-pager .ui-icon-container {\\n  display: inline-block;\\n  margin: 2px;\\n  border-color: gray;\\n}\\n.bk-root .slick-pager .slick-pager-nav {\\n  display: inline-block;\\n  float: left;\\n  padding: 2px;\\n}\\n.bk-root .slick-pager .slick-pager-settings {\\n  display: block;\\n  float: right;\\n  padding: 2px;\\n}\\n.bk-root .slick-pager .slick-pager-settings * {\\n  vertical-align: middle;\\n}\\n.bk-root .slick-pager .slick-pager-settings a {\\n  padding: 2px;\\n  text-decoration: underline;\\n  cursor: pointer;\\n}\\n.bk-root .slick-header-columns {\\n  border-bottom: 1px solid silver;\\n  background-image: none;\\n}\\n.bk-root .slick-header-column {\\n  border-right: 1px solid transparent;\\n  background-image: none;\\n}\\n.bk-root .slick-header-column:last-of-type {\\n  border-right-color: transparent;\\n}\\n.bk-root .slick-header-column:hover,\\n.bk-root .slick-header-column-active {\\n  background-color: #F0F8FF;\\n  background-image: none;\\n}\\n.bk-root .slick-group-toggle.expanded {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIMwADCBxIUIDBgwIEChgwwECBAgQUFjBAkaJCABgxGlB4AGHCAAIQiBypEEECkScJqgwQEAA7\");\\n}\\n.bk-root .slick-group-toggle.collapsed {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIOAADCBxIUIDBgwIEChgwAECBAgQUFjAAQIABAwoBaNSIMYCAAwIqGlSIAEHFkiQTIBCgkqDLAAEBADs=\");\\n}\\n.bk-root .slick-group-select-checkbox.checked {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAAEcSURBVChTjdI9S8NQFAbg/raQXVwCRRFE7GK7OXTwD+ikk066VF3a0ja0hQTyQdJrwNq0zrYSQRLEXMSWSlCIb8glqRcFD+9yz3nugXwU4n9XQqMoGjj36uBJsTwuaNo3EwBG4Yy7pe7Gv8YcvhJCGFVsjxsjxujj6OTSGlHv+U2WZUZbPWKOv1ZjT5a7pbIoiptbO5b73mwrjHa1B27l8VlTEIS1damlTnEE+EEN9/P8WrfH81qdAIGeXvTTmzltdCy46sEhxpKUINReZR9NnqZbr9puugxV3NjWh/k74WmmEdWhmUNy2jNmWRc6fZTVADCqao52u+DGWTACYNT3fRxwtatPufTNR4yCIGAUn5hS+vJHhWGY/ANx/A3tvdv+1tZmuwAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .slick-group-select-checkbox.unchecked {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACXSURBVChT1dIxC4MwEAXg/v8/VOhQVDBNakV0KA6pxS4JhWRSIYPEJxwdDi1de7wleR+3JIf486w0hKCKRpSvvOhZcCmvNQBRuKqdah03U7UjNNH81rOaBYDo8SQaPX8JANFEaLaGBeAPaaY61rGksiN6TmR5H1j9CSoAosYYHLA7vTxYMvVEZa0liif23r93xjm3/oEYF8PiDn/I2FHCAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .slick-sort-indicator-desc {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgeAAUAGEgQgIAACBEKLHgwYcKFBh1KFNhQosOKEgMCADs=\");\\n}\\n.bk-root .slick-sort-indicator-asc {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgbAAMIDABgoEGDABIeRJhQ4cKGEA8KmEiRosGAADs=\");\\n}\\n.bk-root .slick-header-menubutton {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhDgAOAIABADtKYwAAACH5BAEAAAEALAAAAAAOAA4AAAISjI+py+0PHZgUsGobhTn6DxoFADs=\");\\n}\\n.bk-root .slick-pager {\\n  background-image: none;\\n}\\n'},\n",
       "      480: function _(n,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default='\\n.bk-root .bk-data-table {\\n  box-sizing: content-box;\\n  font-size: 11px;\\n}\\n.bk-root .bk-data-table input[type=\"checkbox\"] {\\n  margin-left: 4px;\\n  margin-right: 4px;\\n}\\n.bk-root .bk-cell-special-defaults {\\n  border-right-color: silver;\\n  border-right-style: solid;\\n  background: #f5f5f5;\\n}\\n.bk-root .bk-cell-select {\\n  border-right-color: silver;\\n  border-right-style: solid;\\n  background: #f5f5f5;\\n}\\n.bk-root .slick-cell.bk-cell-index {\\n  border-right-color: silver;\\n  border-right-style: solid;\\n  background: #f5f5f5;\\n  text-align: right;\\n  background: #f0f0f0;\\n  color: #909090;\\n}\\n.bk-root .bk-header-index .slick-column-name {\\n  float: right;\\n}\\n.bk-root .slick-row.selected .bk-cell-index {\\n  background-color: transparent;\\n}\\n.bk-root .slick-row.odd {\\n  background: #f0f0f0;\\n}\\n.bk-root .slick-cell {\\n  padding-left: 4px;\\n  padding-right: 4px;\\n  border-right-color: transparent;\\n  border: 0.25px solid transparent;\\n}\\n.bk-root .slick-cell .bk {\\n  line-height: inherit;\\n}\\n.bk-root .slick-cell.active {\\n  border-style: dashed;\\n}\\n.bk-root .slick-cell.selected {\\n  background-color: #F0F8FF;\\n}\\n.bk-root .slick-cell.editable {\\n  padding-left: 0;\\n  padding-right: 0;\\n}\\n.bk-root .bk-cell-editor {\\n  display: contents;\\n}\\n.bk-root .bk-cell-editor input,\\n.bk-root .bk-cell-editor select {\\n  width: 100%;\\n  height: 100%;\\n  border: 0;\\n  margin: 0;\\n  padding: 0;\\n  outline: 0;\\n  background: transparent;\\n  vertical-align: baseline;\\n}\\n.bk-root .bk-cell-editor input {\\n  padding-left: 4px;\\n  padding-right: 4px;\\n}\\n.bk-root .bk-cell-editor-completion {\\n  font-size: 11px;\\n}\\n'},\n",
       "      481: function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=t(1),a=t(463),{Avg:i,Min:o,Max:g,Sum:n}=a.Data.Aggregators,u=r.__importStar(t(18)),c=t(81);class _ extends c.Model{constructor(t){super(t)}static init_RowAggregator(){this.define({field_:[u.String,\"\"]})}}s.RowAggregator=_,_.__name__=\"RowAggregator\",_.init_RowAggregator();const l=new i;class m extends _{constructor(){super(...arguments),this.key=\"avg\",this.init=l.init,this.accumulate=l.accumulate,this.storeResult=l.storeResult}}s.AvgAggregator=m,m.__name__=\"AvgAggregator\";const h=new o;class A extends _{constructor(){super(...arguments),this.key=\"min\",this.init=h.init,this.accumulate=h.accumulate,this.storeResult=h.storeResult}}s.MinAggregator=A,A.__name__=\"MinAggregator\";const R=new g;class d extends _{constructor(){super(...arguments),this.key=\"max\",this.init=R.init,this.accumulate=R.accumulate,this.storeResult=R.storeResult}}s.MaxAggregator=d,d.__name__=\"MaxAggregator\";const x=new n;class w extends _{constructor(){super(...arguments),this.key=\"sum\",this.init=x.init,this.accumulate=x.accumulate,this.storeResult=x.storeResult}}s.SumAggregator=w,w.__name__=\"SumAggregator\"},\n",
       "      482: function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=t(1).__importStar(t(18)),r=t(72),i=t(463),a=t(456),n=t(81);function l(t,e,s,o,i){const{collapsed:a,level:n,title:l}=i,u=r.span({class:\"slick-group-toggle \"+(a?\"collapsed\":\"expanded\"),style:{\"margin-left\":15*n+\"px\"}}),g=r.span({class:\"slick-group-title\",level:n},l);return`${u.outerHTML}${g.outerHTML}`}function u(t,e){const s=this.getDataItem(e.row);s instanceof i.Group&&t.target.classList.contains(\"slick-group-toggle\")&&(s.collapsed?this.getData().expandGroup(s.groupingKey):this.getData().collapseGroup(s.groupingKey),t.stopImmediatePropagation(),t.preventDefault(),this.invalidate(),this.render())}class g extends n.Model{constructor(t){super(t)}static init_GroupingInfo(){this.define({getter:[o.String,\"\"],aggregators:[o.Array,[]],collapsed:[o.Boolean,!1]})}get comparer(){return(t,e)=>t.value===e.value?0:t.value>e.value?1:-1}}s.GroupingInfo=g,g.__name__=\"GroupingInfo\",g.init_GroupingInfo();class c extends a.TableDataProvider{constructor(t,e,s,o){super(t,e),this.columns=s,this.groupingInfos=[],this.groupingDelimiter=\":|:\",this.target=o}setGrouping(t){this.groupingInfos=t,this.toggledGroupsByLevel=t.map(()=>({})),this.refresh()}extractGroups(t,e){const s=[],o=new Map,r=e?e.level+1:0,{comparer:a,getter:n}=this.groupingInfos[r];return t.forEach(t=>{const a=this.source.data[n][t];let l=o.get(a);if(!l){const t=e?`${e.groupingKey}${this.groupingDelimiter}${a}`:\"\"+a;l=Object.assign(new i.Group,{value:a,level:r,groupingKey:t}),s.push(l),o.set(a,l)}l.rows.push(t)}),r<this.groupingInfos.length-1&&s.forEach(t=>{t.groups=this.extractGroups(t.rows,t)}),s.sort(a),s}calculateTotals(t,e){const s={avg:{},max:{},min:{},sum:{}},{source:{data:o}}=this,r=Object.keys(o),i=t.rows.map(t=>r.reduce((e,s)=>Object.assign(Object.assign({},e),{[s]:o[s][t]}),{}));return e.forEach(t=>{t.init(),i.forEach(e=>t.accumulate(e)),t.storeResult(s)}),s}addTotals(t,e=0){const{aggregators:s,collapsed:o}=this.groupingInfos[e],r=this.toggledGroupsByLevel[e];t.forEach(t=>{t.groups&&this.addTotals(t.groups,e+1),s.length&&t.rows.length&&(t.totals=this.calculateTotals(t,s)),t.collapsed=o!==r[t.groupingKey],t.title=t.value?\"\"+t.value:\"\"})}flattenedGroupedRows(t,e=0){const s=[];return t.forEach(t=>{if(s.push(t),!t.collapsed){const o=t.groups?this.flattenedGroupedRows(t.groups,e+1):t.rows;s.push(...o)}}),s}refresh(){const t=this.extractGroups([...this.view.indices]),e=this.source.data[this.columns[0].field];t.length&&(this.addTotals(t),this.rows=this.flattenedGroupedRows(t),this.target.data={row_indices:this.rows.map(t=>t instanceof i.Group?t.rows:t),labels:this.rows.map(t=>t instanceof i.Group?t.title:e[t])})}getLength(){return this.rows.length}getItem(t){const e=this.rows[t],{source:{data:s}}=this;return e instanceof i.Group?e:Object.keys(s).reduce((t,o)=>Object.assign(Object.assign({},t),{[o]:s[o][e]}),{[a.DTINDEX_NAME]:e})}getItemMetadata(t){const e=this.rows[t],s=this.columns.slice(1),o=e instanceof i.Group?this.groupingInfos[e.level].aggregators:[];return e instanceof i.Group?{selectable:!1,focusable:!1,cssClasses:\"slick-group\",columns:[{formatter:l},...s.map((function(t){const{field:e,formatter:s}=t,r=o.find(({field_:t})=>t===e);if(r){const{key:t}=r;return{formatter:(o,r,i,a,n)=>s?s(o,r,n.totals[t][e],a,n):\"\"}}return{}}))]}:{}}collapseGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=!this.groupingInfos[e].collapsed,this.refresh()}expandGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=this.groupingInfos[e].collapsed,this.refresh()}}s.DataCubeProvider=c,c.__name__=\"DataCubeProvider\";class p extends a.DataTableView{render(){const t={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:!1,autosizeColsMode:this.autosize,multiColumnSort:!1,editable:this.model.editable,autoEdit:this.model.auto_edit,rowHeight:this.model.row_height},e=this.model.columns.map(t=>t.toColumn());var s,o;e[0].formatter=(s=e[0].formatter,o=this.model.grouping.length,(t,e,i,a,n)=>{const l=r.span({class:\"slick-group-toggle\",style:{\"margin-left\":15*(o||0)+\"px\"}}),u=s?s(t,e,i,a,n):\"\"+i;return`${l.outerHTML}${u&&u.replace(/^<div/,\"<span\").replace(/div>$/,\"span>\")}`}),delete e[0].editor,this.data=new c(this.model.source,this.model.view,e,this.model.target),this.data.setGrouping(this.model.grouping),this.el.style.width=this.model.width+\"px\",this.grid=new i.Grid(this.el,this.data,e,t),this.grid.onClick.subscribe(u)}}s.DataCubeView=p,p.__name__=\"DataCubeView\";class h extends a.DataTable{constructor(t){super(t)}static init_DataCube(){this.prototype.default_view=p,this.define({grouping:[o.Array,[]],target:[o.Instance]})}}s.DataCube=h,h.__name__=\"DataCube\",h.init_DataCube()},\n",
       "      }, 453, {\"models/widgets/tables/main\":453,\"models/widgets/tables/index\":454,\"models/widgets/tables/cell_editors\":455,\"models/widgets/tables/data_table\":456,\"models/widgets/widget\":472,\"models/widgets/tables/table_widget\":473,\"models/widgets/tables/table_column\":474,\"models/widgets/tables/cell_formatters\":475,\"styles/widgets/tables\":478,\"styles/widgets/slickgrid.css\":479,\"styles/widgets/tables.css\":480,\"models/widgets/tables/row_aggregators\":481,\"models/widgets/tables/data_cube\":482}, {});\n",
       "      })\n",
       "\n",
       "\n",
       "      /* END bokeh-tables.min.js */\n",
       "    },\n",
       "    \n",
       "    function(Bokeh) {\n",
       "      Bokeh.set_log_level(\"info\");\n",
       "    },\n",
       "    \n",
       "    function(Bokeh) {\n",
       "      /* BEGIN panel.min.js */\n",
       "      /*!\n",
       "       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n",
       "       * All rights reserved.\n",
       "       * \n",
       "       * Redistribution and use in source and binary forms, with or without modification,\n",
       "       * are permitted provided that the following conditions are met:\n",
       "       * \n",
       "       * Redistributions of source code must retain the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer.\n",
       "       * \n",
       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
       "       * this list of conditions and the following disclaimer in the documentation\n",
       "       * and/or other materials provided with the distribution.\n",
       "       * \n",
       "       * Neither the name of Anaconda nor the names of any contributors\n",
       "       * may be used to endorse or promote products derived from this software\n",
       "       * without specific prior written permission.\n",
       "       * \n",
       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
       "      */\n",
       "      (function(root, factory) {\n",
       "        factory(root[\"Bokeh\"], undefined);\n",
       "      })(this, function(Bokeh, version) {\n",
       "        var define;\n",
       "        return (function(modules, entry, aliases, externals) {\n",
       "          const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n",
       "          if (bokeh != null) {\n",
       "            return bokeh.register_plugin(modules, entry, aliases);\n",
       "          } else {\n",
       "            throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n",
       "          }\n",
       "        })\n",
       "      ({\n",
       "      \"4e90918c0a\": function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"22ae8fda70\"));o.Panel=s,e(\"@bokehjs/base\").register_models(s)},\n",
       "      \"22ae8fda70\": function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=a(\"tslib\");var t=a(\"3343056bd8\");r.AcePlot=t.AcePlot;var c=a(\"66d52165db\");r.Audio=c.Audio;var l=a(\"71a9759436\");r.CommManager=l.CommManager;var d=a(\"d0d2aafca0\");r.DeckGLPlot=d.DeckGLPlot;var v=a(\"ed08037ce5\");r.HTML=v.HTML;var b=a(\"284504a0cf\");r.JSON=b.JSON;var P=a(\"61c9ac7aac\");r.FileDownload=P.FileDownload;var f=a(\"7b859fb3cf\");r.KaTeX=f.KaTeX;var i=a(\"0c21036737\");r.MathJax=i.MathJax;var n=a(\"79c41bbf71\");r.Player=n.Player;var s=a(\"56da045fbd\");r.PlotlyPlot=s.PlotlyPlot;var M=a(\"76307e5afa\");r.Progress=M.Progress;var S=a(\"38b2bc9574\");r.State=S.State;var g=a(\"294adeb985\");r.VegaPlot=g.VegaPlot;var m=a(\"b0c3e9e9c2\");r.Video=m.Video;var V=a(\"3c7145a2fa\");r.VideoStream=V.VideoStream,o.__exportStar(a(\"ecfbb965eb\"),r)},\n",
       "      \"3343056bd8\": function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),n=e(\"@bokehjs/core/dom\"),a=e(\"7116a7a602\");class d extends a.PanelHTMLBoxView{initialize(){super.initialize(),this._ace=window.ace,this._container=n.div({id:\"_\"+Math.random().toString(36).substr(2,9),style:{width:\"100%\",height:\"100%\"}})}connect_signals(){super.connect_signals(),this.connect(this.model.properties.code.change,()=>this._update_code_from_model()),this.connect(this.model.properties.theme.change,()=>this._update_theme()),this.connect(this.model.properties.language.change,()=>this._update_language()),this.connect(this.model.properties.annotations.change,()=>this._add_annotations()),this.connect(this.model.properties.readonly.change,()=>{this._editor.setReadOnly(this.model.readonly)})}render(){super.render(),this._container!==this.el.childNodes[0]&&this.el.appendChild(this._container),this._container.textContent=this.model.code,this._editor=this._ace.edit(this._container.id),this._editor.setTheme(\"ace/theme/\"+this.model.theme),this._editor.session.setMode(\"ace/mode/\"+this.model.language),this._editor.setReadOnly(this.model.readonly),this._langTools=this._ace.require(\"ace/ext/language_tools\"),this._editor.setOptions({enableBasicAutocompletion:!0,enableSnippets:!0,fontFamily:\"monospace\"}),this._editor.on(\"change\",()=>this._update_code_from_editor())}_update_code_from_model(){this._editor&&this._editor.getValue()!=this.model.code&&this._editor.setValue(this.model.code)}_update_code_from_editor(){this._editor.getValue()!=this.model.code&&(this.model.code=this._editor.getValue())}_update_theme(){this._editor.setTheme(\"ace/theme/\"+this.model.theme)}_update_language(){this._editor.session.setMode(\"ace/mode/\"+this.model.language)}_add_annotations(){this._editor.session.setAnnotations(this.model.annotations)}after_layout(){super.after_layout(),this._editor.resize()}}o.AcePlotView=d,d.__name__=\"AcePlotView\";class h extends s.HTMLBox{constructor(e){super(e)}static init_AcePlot(){this.prototype.default_view=d,this.define({code:[i.String],language:[i.String,\"python\"],theme:[i.String,\"chrome\"],annotations:[i.Array,[]],readonly:[i.Boolean,!1]}),this.override({height:300,width:300})}}o.AcePlot=h,h.__name__=\"AcePlot\",h.__module__=\"panel.models.ace\",h.init_AcePlot()},\n",
       "      \"7116a7a602\": function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(\"@bokehjs/core/layout/html\"),h=e(\"@bokehjs/core/layout/types\"),o=e(\"@bokehjs/core/dom\"),n=e(\"@bokehjs/models/widgets/markup\"),_=e(\"@bokehjs/models/layouts/html_box\");function a(e,i){let t=null!=i.width?\"fixed\":\"fit\",s=null!=i.height?\"fixed\":\"fit\";const{sizing_mode:h}=i;if(null!=h)if(\"fixed\"==h)t=s=\"fixed\";else if(\"stretch_both\"==h)t=s=\"max\";else if(\"stretch_width\"==h)t=\"max\";else if(\"stretch_height\"==h)s=\"max\";else switch(h){case\"scale_width\":t=\"max\",s=\"min\";break;case\"scale_height\":t=\"min\",s=\"max\";break;case\"scale_both\":t=\"max\",s=\"max\";break;default:throw new Error(\"unreachable\")}\"fixed\"==t&&i.width?e.style.width=i.width+\"px\":\"max\"==t&&(e.style.width=\"100%\"),\"fixed\"==s&&i.height?e.style.height=i.height+\"px\":\"max\"==s&&(e.style.height=\"100%\")}t.set_size=a;class d extends s.VariadicBox{constructor(e,i,t){super(e),this.el=e,this.sizing_mode=i,this.changed=t,this._cache=new Map,this._cache_count=new Map}_measure(e){const i=[e.width,e.height,this.sizing_mode].toString(),t=this.changed&&\"fixed\"!=this.sizing_mode&&null!=this.sizing_mode?1:0,s=this._cache.get(i),n=this._cache_count.get(i);if(null!=s&&null!=n&&n>=t)return this._cache_count.set(i,n+1),s;const _=new h.Sizeable(e).bounded_to(this.sizing.size),a=o.sized(this.el,_,()=>{const e=new h.Sizeable(o.content_size(this.el)),{border:i,padding:t}=o.extents(this.el);return e.grow_by(i).grow_by(t).map(Math.ceil)});return this._cache.set(i,a),this._cache_count.set(i,0),a}invalidate_cache(){}}t.CachedVariadicBox=d,d.__name__=\"CachedVariadicBox\";class l extends n.MarkupView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new d(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),a(this.markup_el,this.model)}}t.PanelMarkupView=l,l.__name__=\"PanelMarkupView\";class c extends _.HTMLBoxView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new d(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),a(this.el,this.model)}}t.PanelHTMLBoxView=c,c.__name__=\"PanelHTMLBoxView\"},\n",
       "      \"66d52165db\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"7116a7a602\");class d extends l.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,()=>this.set_loop()),this.connect(this.model.properties.paused.change,()=>this.set_paused()),this.connect(this.model.properties.time.change,()=>this.set_time()),this.connect(this.model.properties.value.change,()=>this.set_value()),this.connect(this.model.properties.volume.change,()=>this.set_volume())}render(){super.render(),this.audioEl=document.createElement(\"audio\"),this.audioEl.controls=!0,this.audioEl.src=this.model.value,this.audioEl.currentTime=this.model.time,this.audioEl.loop=this.model.loop,null!=this.model.volume?this.audioEl.volume=this.model.volume/100:this.model.volume=100*this.audioEl.volume,this.audioEl.onpause=()=>this.model.paused=!0,this.audioEl.onplay=()=>this.model.paused=!1,this.audioEl.ontimeupdate=()=>this.update_time(this),this.audioEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.audioEl),this.model.paused||this.audioEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.audioEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.audioEl.volume)}set_loop(){this.audioEl.loop=this.model.loop}set_paused(){!this.audioEl.paused&&this.model.paused&&this.audioEl.pause(),this.audioEl.paused&&!this.model.paused&&this.audioEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.audioEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.audioEl.currentTime=this.model.time)}set_value(){this.audioEl.src=this.model.value}}i.AudioView=d,d.__name__=\"AudioView\";class u extends s.HTMLBox{constructor(e){super(e)}static init_Audio(){this.prototype.default_view=d,this.define({loop:[o.Boolean,!1],paused:[o.Boolean,!0],time:[o.Number,0],throttle:[o.Number,250],value:[o.Any,\"\"],volume:[o.Number,null]})}}i.Audio=u,u.__name__=\"Audio\",u.__module__=\"panel.models.widgets\",u.init_Audio()},\n",
       "      \"71a9759436\": function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),i=e(\"@bokehjs/document\"),s=e(\"@bokehjs/core/view\"),c=e(\"@bokehjs/model\"),_=e(\"@bokehjs/protocol/message\"),l=e(\"@bokehjs/protocol/receiver\");class r extends s.View{renderTo(){}}n.CommManagerView=r,r.__name__=\"CommManagerView\";class a extends c.Model{constructor(e){super(e),this._document_listener=e=>this._document_changed(e),this._receiver=new l.Receiver,this._event_buffer=[],this._blocked=!1,this._timeout=Date.now(),null!=window.PyViz&&window.PyViz.comm_manager?(this.ns=window.PyViz,this.ns.comm_manager.register_target(this.plot_id,this.comm_id,e=>this.msg_handler(e)),this._client_comm=this.ns.comm_manager.get_client_comm(this.plot_id,this.client_comm_id,e=>this.on_ack(e))):console.log(\"Could not find comm manager on window.PyViz, ensure the extension is loaded.\")}_doc_attached(){super._doc_attached(),null!=this.document&&this.document.on_change(this._document_listener)}_document_changed(e){e.setter_id!==this.id&&(e instanceof i.ModelChangedEvent&&!(e.attr in e.model.serializable_attributes())||(this._event_buffer.unshift(e),(!this._blocked||Date.now()>this._timeout)&&(setTimeout(()=>this.process_events(),this.debounce),this._blocked=!0,this._timeout=Date.now()+this.timeout)))}process_events(){if(null==this.document||null==this._client_comm)return;const e=_.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch(this._event_buffer));this._client_comm.send(e),this._event_buffer=[]}on_ack(e){const t=e.metadata;this._event_buffer.length?(this.process_events(),this._blocked=!0,this._timeout=Date.now()+this.timeout):this._blocked=!1,this._event_buffer=[],\"Ready\"==t.msg_type&&t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback)}msg_handler(e){const t=e.metadata,n=e.buffers,o=e.content.data,i=this.plot_id;if(\"Ready\"==t.msg_type)t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback);else if(null!=i){let e=null;if(i in this.ns.plot_index&&null!=this.ns.plot_index[i]?e=this.ns.plot_index[i]:void 0!==window.Bokeh&&i in window.Bokeh.index&&(e=window.Bokeh.index[i]),null==e)return;null!=n&&n.length>0?this._receiver.consume(n[0].buffer):this._receiver.consume(o);const t=this._receiver.message;null!=t&&Object.keys(t.content).length>0&&null!=this.document&&this.document.apply_json_patch(t.content,t.buffers,this.id)}}static init_CommManager(){this.prototype.default_view=r,this.define({plot_id:[o.String,null],comm_id:[o.String,null],client_comm_id:[o.String,null],timeout:[o.Number,5e3],debounce:[o.Number,50]})}}n.CommManager=a,a.__name__=\"CommManager\",a.__module__=\"panel.models.comm_manager\",a.init_CommManager()},\n",
       "      \"d0d2aafca0\": function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=e(\"tslib\"),n=e(\"@bokehjs/core/dom\"),a=i.__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),c=e(\"7116a7a602\"),r=e(\"064eac2866\"),d=i.__importDefault(e(\"093eb75864\"));function l(){const e={},t=window.deck,o=Object.keys(t).filter(e=>e.charAt(0)===e.charAt(0).toUpperCase());for(const i of o)e[i]=t[i];return e}class _ extends c.PanelHTMLBoxView{connect_signals(){super.connect_signals();const{data:e,mapbox_api_key:t,tooltip:o,layers:i,initialViewState:n,data_sources:a}=this.model.properties;this.on_change([t,o],()=>this.render()),this.on_change([e,n],()=>this.updateDeck()),this.on_change([i],()=>this._update_layers()),this.on_change([a],()=>this._connect_sources(!0)),this._layer_map={},this._connected=[],this._connect_sources()}_update_layers(){this._layer_map={},this._update_data(!0)}_connect_sources(e=!1){for(const e of this.model.data_sources)this._connected.indexOf(e)<0&&(this.connect(e.properties.data.change,()=>this._update_data(!0)),this._connected.push(e));this._update_data(e)}initialize(){if(super.initialize(),window.deck.JSONConverter){const{CSVLoader:e,Tile3DLoader:t}=window.loaders;window.loaders.registerLoaders([t,e]);const o={classes:l(),enumerations:{COORDINATE_SYSTEM:window.deck.COORDINATE_SYSTEM,GL:d.default},constants:{Tile3DLoader:t}};this.jsonConverter=new window.deck.JSONConverter({configuration:o})}}_update_data(e=!0){let t=0;for(const e of this.model.layers){let o;if(t+=1,t-1 in this._layer_map)o=this.model.data_sources[this._layer_map[t-1]];else{if(\"number\"!=typeof e.data)continue;this._layer_map[t-1]=e.data,o=this.model.data_sources[e.data]}const i=[],n=o.columns();for(let e=0;e<o.get_length();e++){const t={};for(const i of n){let n=o.get_array(i);const a=null==n[0].shape?null:n[0].shape;null!=a&&a.length>1&&\"number\"==typeof a[0]?t[i]=n.slice(e*a[1],e*a[1]+a[1]):t[i]=n[e]}i.push(t)}e.data=i}e&&this.updateDeck()}_on_click_event(e){const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.clickState=t}_on_hover_event(e){const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.hoverState=t}_on_viewState_event(e){this.model.viewState=e.viewState}getData(){return Object.assign(Object.assign({},this.model.data),{layers:this.model.layers,initialViewState:this.model.initialViewState,onViewStateChange:e=>this._on_viewState_event(e),onClick:e=>this._on_click_event(e),onHover:e=>this._on_hover_event(e)})}updateDeck(){if(!this.deckGL)return void this.render();const e=this.getData();if(window.deck.updateDeck)window.deck.updateDeck(e,this.deckGL);else{const t=this.jsonConverter.convert(e);this.deckGL.setProps(t)}}createDeck({mapboxApiKey:e,container:t,jsonInput:o,tooltip:i}){let n;try{const a=this.jsonConverter.convert(o),s=r.makeTooltip(i);n=new window.deck.DeckGL(Object.assign(Object.assign({},a),{map:window.mapboxgl,mapboxApiAccessToken:e,container:t,getTooltip:s}))}catch(e){console.error(e)}return n}render(){super.render();const e=n.div({class:\"deckgl\"});c.set_size(e,this.model);const t=this.model.mapbox_api_key,o=this.model.tooltip,i=this.getData();window.deck.createDeck?this.deckGL=window.deck.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}):this.deckGL=this.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}),this.el.appendChild(e)}}o.DeckGLPlotView=_,_.__name__=\"DeckGLPlotView\";class h extends s.HTMLBox{constructor(e){super(e)}static init_DeckGLPlot(){this.prototype.default_view=_,this.define({data:[a.Any],data_sources:[a.Array,[]],clickState:[a.Any],hoverState:[a.Any],initialViewState:[a.Any],layers:[a.Array,[]],mapbox_api_key:[a.String],tooltip:[a.Any],viewState:[a.Any]}),this.override({height:400,width:600})}}o.DeckGLPlot=h,h.__name__=\"DeckGLPlot\",h.__module__=\"panel.models.deckgl\",h.init_DeckGLPlot()},\n",
       "      \"064eac2866\": function _(e,t,n){\n",
       "      /*\n",
       "          This file was adapted from https://github.com/uber/deck.gl/ the LICENSE\n",
       "          below is preserved to comply with the original license.\n",
       "          \n",
       "          Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n",
       "          \n",
       "          Permission is hereby granted, free of charge, to any person obtaining a copy\n",
       "          of this software and associated documentation files (the \"Software\"), to deal\n",
       "          in the Software without restriction, including without limitation the rights\n",
       "          to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n",
       "          copies of the Software, and to permit persons to whom the Software is\n",
       "          furnished to do so, subject to the following conditions:\n",
       "          \n",
       "          The above copyright notice and this permission notice shall be included in\n",
       "          all copies or substantial portions of the Software.\n",
       "          \n",
       "          THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n",
       "          IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n",
       "          FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n",
       "          AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n",
       "          LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n",
       "          OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n",
       "          THE SOFTWARE.\n",
       "          */\n",
       "      let i,l;Object.defineProperty(n,\"__esModule\",{value:!0});const o={fontFamily:'\"Helvetica Neue\", Helvetica, Arial, sans-serif',display:\"flex\",flex:\"wrap\",maxWidth:\"500px\",flexDirection:\"column\",zIndex:2};function r(){return document.createElement(\"div\")}function s(e){if(!e.picked)return null;if(e.object===i)return l;const t={html:a(e.object),style:o};return l=t,i=e.object,t}n.getTooltipDefault=s;const c=new Set([\"position\",\"index\"]);function a(e){const t=r();for(const n in e){if(c.has(n))continue;const i=r();i.className=\"header\",i.textContent=n;const l=r();l.className=\"value\",l.textContent=u(e[n]);const o=r();f(o,i,l),o.appendChild(i),o.appendChild(l),t.appendChild(o)}return t.innerHTML}function f(e,t,n){Object.assign(t.style,{fontWeight:700,marginRight:\"10px\",flex:\"1 1 0%\"}),Object.assign(n.style,{flex:\"none\",maxWidth:\"250px\",overflow:\"hidden\",whiteSpace:\"nowrap\",textOverflow:\"ellipsis\"}),Object.assign(e.style,{display:\"flex\",flexDirection:\"row\",justifyContent:\"space-between\",alignItems:\"stretch\"})}function u(e){let t;if(Array.isArray(e)&&e.length>4)t=`Array<${e.length}>`;else if(\"string\"==typeof e)t=e;else if(\"number\"==typeof e)t=String(e);else try{t=JSON.stringify(e)}catch(e){t=\"<Non-Serializable Object>\"}return t.length>50&&(t=t.slice(0,50)),t}function p(e,t){let n=e;for(const e in t)n=n.replace(`{${e}}`,t[e]);return n}n.tabularize=a,n.toText=u,n.substituteIn=p,n.makeTooltip=function(e){return e?e.html||e.text?t=>{if(!t.picked)return null;const n={style:e.style||o};return e.html?n.html=p(e.html,t.object):n.text=p(e.text,t.object),n}:s:null}},\n",
       "      \"093eb75864\": function _(E,_,R){_.exports={DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,FUNC_ADD:32774,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,BLEND_COLOR:32773,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,VENDOR:7936,RENDERER:7937,VERSION:7938,IMPLEMENTATION_COLOR_READ_TYPE:35738,IMPLEMENTATION_COLOR_READ_FORMAT:35739,BROWSER_DEFAULT_WEBGL:37444,STATIC_DRAW:35044,STREAM_DRAW:35040,DYNAMIC_DRAW:35048,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,CULL_FACE:2884,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,BLEND:3042,DEPTH_TEST:2929,DITHER:3024,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,SCISSOR_TEST:3089,STENCIL_TEST:2960,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CONTEXT_LOST_WEBGL:37442,CW:2304,CCW:2305,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DOUBLE:5130,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,COMPILE_STATUS:35713,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_ATTRIBUTES:35721,ACTIVE_UNIFORMS:35718,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,ALWAYS:519,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,GEQUAL:518,NOTEQUAL:517,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,TEXTURE_WIDTH:4096,TEXTURE_HEIGHT:4097,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,READ_FRAMEBUFFER:36008,DRAW_FRAMEBUFFER:36009,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,READ_BUFFER:3074,UNPACK_ROW_LENGTH:3314,UNPACK_SKIP_ROWS:3315,UNPACK_SKIP_PIXELS:3316,PACK_ROW_LENGTH:3330,PACK_SKIP_ROWS:3331,PACK_SKIP_PIXELS:3332,TEXTURE_BINDING_3D:32874,UNPACK_SKIP_IMAGES:32877,UNPACK_IMAGE_HEIGHT:32878,MAX_3D_TEXTURE_SIZE:32883,MAX_ELEMENTS_VERTICES:33e3,MAX_ELEMENTS_INDICES:33001,MAX_TEXTURE_LOD_BIAS:34045,MAX_FRAGMENT_UNIFORM_COMPONENTS:35657,MAX_VERTEX_UNIFORM_COMPONENTS:35658,MAX_ARRAY_TEXTURE_LAYERS:35071,MIN_PROGRAM_TEXEL_OFFSET:35076,MAX_PROGRAM_TEXEL_OFFSET:35077,MAX_VARYING_COMPONENTS:35659,FRAGMENT_SHADER_DERIVATIVE_HINT:35723,RASTERIZER_DISCARD:35977,VERTEX_ARRAY_BINDING:34229,MAX_VERTEX_OUTPUT_COMPONENTS:37154,MAX_FRAGMENT_INPUT_COMPONENTS:37157,MAX_SERVER_WAIT_TIMEOUT:37137,MAX_ELEMENT_INDEX:36203,RED:6403,RGB8:32849,RGBA8:32856,RGB10_A2:32857,TEXTURE_3D:32879,TEXTURE_WRAP_R:32882,TEXTURE_MIN_LOD:33082,TEXTURE_MAX_LOD:33083,TEXTURE_BASE_LEVEL:33084,TEXTURE_MAX_LEVEL:33085,TEXTURE_COMPARE_MODE:34892,TEXTURE_COMPARE_FUNC:34893,SRGB:35904,SRGB8:35905,SRGB8_ALPHA8:35907,COMPARE_REF_TO_TEXTURE:34894,RGBA32F:34836,RGB32F:34837,RGBA16F:34842,RGB16F:34843,TEXTURE_2D_ARRAY:35866,TEXTURE_BINDING_2D_ARRAY:35869,R11F_G11F_B10F:35898,RGB9_E5:35901,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,RED_INTEGER:36244,RGB_INTEGER:36248,RGBA_INTEGER:36249,R8:33321,RG8:33323,R16F:33325,R32F:33326,RG16F:33327,RG32F:33328,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2UI:36975,TEXTURE_IMMUTABLE_FORMAT:37167,TEXTURE_IMMUTABLE_LEVELS:33503,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269,UNSIGNED_INT_24_8:34042,HALF_FLOAT:5131,RG:33319,RG_INTEGER:33320,INT_2_10_10_10_REV:36255,CURRENT_QUERY:34917,QUERY_RESULT:34918,QUERY_RESULT_AVAILABLE:34919,ANY_SAMPLES_PASSED:35887,ANY_SAMPLES_PASSED_CONSERVATIVE:36202,MAX_DRAW_BUFFERS:34852,DRAW_BUFFER0:34853,DRAW_BUFFER1:34854,DRAW_BUFFER2:34855,DRAW_BUFFER3:34856,DRAW_BUFFER4:34857,DRAW_BUFFER5:34858,DRAW_BUFFER6:34859,DRAW_BUFFER7:34860,DRAW_BUFFER8:34861,DRAW_BUFFER9:34862,DRAW_BUFFER10:34863,DRAW_BUFFER11:34864,DRAW_BUFFER12:34865,DRAW_BUFFER13:34866,DRAW_BUFFER14:34867,DRAW_BUFFER15:34868,MAX_COLOR_ATTACHMENTS:36063,COLOR_ATTACHMENT1:36065,COLOR_ATTACHMENT2:36066,COLOR_ATTACHMENT3:36067,COLOR_ATTACHMENT4:36068,COLOR_ATTACHMENT5:36069,COLOR_ATTACHMENT6:36070,COLOR_ATTACHMENT7:36071,COLOR_ATTACHMENT8:36072,COLOR_ATTACHMENT9:36073,COLOR_ATTACHMENT10:36074,COLOR_ATTACHMENT11:36075,COLOR_ATTACHMENT12:36076,COLOR_ATTACHMENT13:36077,COLOR_ATTACHMENT14:36078,COLOR_ATTACHMENT15:36079,SAMPLER_3D:35679,SAMPLER_2D_SHADOW:35682,SAMPLER_2D_ARRAY:36289,SAMPLER_2D_ARRAY_SHADOW:36292,SAMPLER_CUBE_SHADOW:36293,INT_SAMPLER_2D:36298,INT_SAMPLER_3D:36299,INT_SAMPLER_CUBE:36300,INT_SAMPLER_2D_ARRAY:36303,UNSIGNED_INT_SAMPLER_2D:36306,UNSIGNED_INT_SAMPLER_3D:36307,UNSIGNED_INT_SAMPLER_CUBE:36308,UNSIGNED_INT_SAMPLER_2D_ARRAY:36311,MAX_SAMPLES:36183,SAMPLER_BINDING:35097,PIXEL_PACK_BUFFER:35051,PIXEL_UNPACK_BUFFER:35052,PIXEL_PACK_BUFFER_BINDING:35053,PIXEL_UNPACK_BUFFER_BINDING:35055,COPY_READ_BUFFER:36662,COPY_WRITE_BUFFER:36663,COPY_READ_BUFFER_BINDING:36662,COPY_WRITE_BUFFER_BINDING:36663,FLOAT_MAT2x3:35685,FLOAT_MAT2x4:35686,FLOAT_MAT3x2:35687,FLOAT_MAT3x4:35688,FLOAT_MAT4x2:35689,FLOAT_MAT4x3:35690,UNSIGNED_INT_VEC2:36294,UNSIGNED_INT_VEC3:36295,UNSIGNED_INT_VEC4:36296,UNSIGNED_NORMALIZED:35863,SIGNED_NORMALIZED:36764,VERTEX_ATTRIB_ARRAY_INTEGER:35069,VERTEX_ATTRIB_ARRAY_DIVISOR:35070,TRANSFORM_FEEDBACK_BUFFER_MODE:35967,MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS:35968,TRANSFORM_FEEDBACK_VARYINGS:35971,TRANSFORM_FEEDBACK_BUFFER_START:35972,TRANSFORM_FEEDBACK_BUFFER_SIZE:35973,TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:35976,MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS:35978,MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS:35979,INTERLEAVED_ATTRIBS:35980,SEPARATE_ATTRIBS:35981,TRANSFORM_FEEDBACK_BUFFER:35982,TRANSFORM_FEEDBACK_BUFFER_BINDING:35983,TRANSFORM_FEEDBACK:36386,TRANSFORM_FEEDBACK_PAUSED:36387,TRANSFORM_FEEDBACK_ACTIVE:36388,TRANSFORM_FEEDBACK_BINDING:36389,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING:33296,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE:33297,FRAMEBUFFER_ATTACHMENT_RED_SIZE:33298,FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:33299,FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:33300,FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:33301,FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:33302,FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:33303,FRAMEBUFFER_DEFAULT:33304,DEPTH24_STENCIL8:35056,DRAW_FRAMEBUFFER_BINDING:36006,READ_FRAMEBUFFER_BINDING:36010,RENDERBUFFER_SAMPLES:36011,FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER:36052,FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:36182,UNIFORM_BUFFER:35345,UNIFORM_BUFFER_BINDING:35368,UNIFORM_BUFFER_START:35369,UNIFORM_BUFFER_SIZE:35370,MAX_VERTEX_UNIFORM_BLOCKS:35371,MAX_FRAGMENT_UNIFORM_BLOCKS:35373,MAX_COMBINED_UNIFORM_BLOCKS:35374,MAX_UNIFORM_BUFFER_BINDINGS:35375,MAX_UNIFORM_BLOCK_SIZE:35376,MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS:35377,MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS:35379,UNIFORM_BUFFER_OFFSET_ALIGNMENT:35380,ACTIVE_UNIFORM_BLOCKS:35382,UNIFORM_TYPE:35383,UNIFORM_SIZE:35384,UNIFORM_BLOCK_INDEX:35386,UNIFORM_OFFSET:35387,UNIFORM_ARRAY_STRIDE:35388,UNIFORM_MATRIX_STRIDE:35389,UNIFORM_IS_ROW_MAJOR:35390,UNIFORM_BLOCK_BINDING:35391,UNIFORM_BLOCK_DATA_SIZE:35392,UNIFORM_BLOCK_ACTIVE_UNIFORMS:35394,UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES:35395,UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER:35396,UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER:35398,OBJECT_TYPE:37138,SYNC_CONDITION:37139,SYNC_STATUS:37140,SYNC_FLAGS:37141,SYNC_FENCE:37142,SYNC_GPU_COMMANDS_COMPLETE:37143,UNSIGNALED:37144,SIGNALED:37145,ALREADY_SIGNALED:37146,TIMEOUT_EXPIRED:37147,CONDITION_SATISFIED:37148,WAIT_FAILED:37149,SYNC_FLUSH_COMMANDS_BIT:1,COLOR:6144,DEPTH:6145,STENCIL:6146,MIN:32775,MAX:32776,DEPTH_COMPONENT24:33190,STREAM_READ:35041,STREAM_COPY:35042,STATIC_READ:35045,STATIC_COPY:35046,DYNAMIC_READ:35049,DYNAMIC_COPY:35050,DEPTH_COMPONENT32F:36012,DEPTH32F_STENCIL8:36013,INVALID_INDEX:4294967295,TIMEOUT_IGNORED:-1,MAX_CLIENT_WAIT_TIMEOUT_WEBGL:37447,VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE:35070,UNMASKED_VENDOR_WEBGL:37445,UNMASKED_RENDERER_WEBGL:37446,MAX_TEXTURE_MAX_ANISOTROPY_EXT:34047,TEXTURE_MAX_ANISOTROPY_EXT:34046,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35986,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,UNSIGNED_INT_24_8_WEBGL:34042,HALF_FLOAT_OES:36193,RGBA32F_EXT:34836,RGB32F_EXT:34837,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863,MIN_EXT:32775,MAX_EXT:32776,SRGB_EXT:35904,SRGB_ALPHA_EXT:35906,SRGB8_ALPHA8_EXT:35907,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT:33296,FRAGMENT_SHADER_DERIVATIVE_HINT_OES:35723,COLOR_ATTACHMENT0_WEBGL:36064,COLOR_ATTACHMENT1_WEBGL:36065,COLOR_ATTACHMENT2_WEBGL:36066,COLOR_ATTACHMENT3_WEBGL:36067,COLOR_ATTACHMENT4_WEBGL:36068,COLOR_ATTACHMENT5_WEBGL:36069,COLOR_ATTACHMENT6_WEBGL:36070,COLOR_ATTACHMENT7_WEBGL:36071,COLOR_ATTACHMENT8_WEBGL:36072,COLOR_ATTACHMENT9_WEBGL:36073,COLOR_ATTACHMENT10_WEBGL:36074,COLOR_ATTACHMENT11_WEBGL:36075,COLOR_ATTACHMENT12_WEBGL:36076,COLOR_ATTACHMENT13_WEBGL:36077,COLOR_ATTACHMENT14_WEBGL:36078,COLOR_ATTACHMENT15_WEBGL:36079,DRAW_BUFFER0_WEBGL:34853,DRAW_BUFFER1_WEBGL:34854,DRAW_BUFFER2_WEBGL:34855,DRAW_BUFFER3_WEBGL:34856,DRAW_BUFFER4_WEBGL:34857,DRAW_BUFFER5_WEBGL:34858,DRAW_BUFFER6_WEBGL:34859,DRAW_BUFFER7_WEBGL:34860,DRAW_BUFFER8_WEBGL:34861,DRAW_BUFFER9_WEBGL:34862,DRAW_BUFFER10_WEBGL:34863,DRAW_BUFFER11_WEBGL:34864,DRAW_BUFFER12_WEBGL:34865,DRAW_BUFFER13_WEBGL:34866,DRAW_BUFFER14_WEBGL:34867,DRAW_BUFFER15_WEBGL:34868,MAX_COLOR_ATTACHMENTS_WEBGL:36063,MAX_DRAW_BUFFERS_WEBGL:34852,VERTEX_ARRAY_BINDING_OES:34229,QUERY_COUNTER_BITS_EXT:34916,CURRENT_QUERY_EXT:34917,QUERY_RESULT_EXT:34918,QUERY_RESULT_AVAILABLE_EXT:34919,TIME_ELAPSED_EXT:35007,TIMESTAMP_EXT:36392,GPU_DISJOINT_EXT:36795}},\n",
       "      \"ed08037ce5\": function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=e(\"@bokehjs/models/widgets/markup\"),a=e(\"7116a7a602\");function o(e){return(new DOMParser).parseFromString(e,\"text/html\").documentElement.textContent}r.htmlDecode=o;class s extends a.PanelMarkupView{render(){super.render();const e=o(this.model.text)||this.model.text;e?(this.markup_el.innerHTML=e,Array.from(this.markup_el.querySelectorAll(\"script\")).forEach(e=>{const t=document.createElement(\"script\");Array.from(e.attributes).forEach(e=>t.setAttribute(e.name,e.value)),t.appendChild(document.createTextNode(e.innerHTML)),e.parentNode&&e.parentNode.replaceChild(t,e)})):this.markup_el.innerHTML=\"\"}}r.HTMLView=s,s.__name__=\"HTMLView\";class i extends n.Markup{constructor(e){super(e)}static init_HTML(){this.prototype.default_view=s}}r.HTML=i,i.__name__=\"HTML\",i.__module__=\"panel.models.markup\",i.init_HTML()},\n",
       "      \"284504a0cf\": function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=e(\"tslib\"),n=s.__importStar(e(\"@bokehjs/core/properties\")),i=e(\"@bokehjs/models/widgets/markup\"),o=s.__importDefault(e(\"18bba7b7e1\")),d=e(\"7116a7a602\");class a extends d.PanelMarkupView{connect_signals(){super.connect_signals();const{depth:e,hover_preview:t,theme:r}=this.model.properties;this.on_change([e,t,r],()=>this.render())}render(){super.render();const e=this.model.text.replace(/(\\r\\n|\\n|\\r)/gm,\"\").replace(\"'\",'\"');let t;try{t=window.JSON.parse(e)}catch(e){return void(this.markup_el.innerHTML=\"<b>Invalid JSON:</b> \"+e.toString())}const r={hoverPreviewEnabled:this.model.hover_preview,theme:this.model.theme},s=null==this.model.depth?1/0:this.model.depth,n=new o.default(t,s,r).render();let i=\"border-radius: 5px; padding: 10px;\";\"dark\"==this.model.theme?n.style.cssText=\"background-color: rgb(30, 30, 30);\"+i:n.style.cssText=i,this.markup_el.append(n)}}r.JSONView=a,a.__name__=\"JSONView\";const l=[\"dark\",\"light\"];class p extends i.Markup{constructor(e){super(e)}static init_JSON(){this.prototype.default_view=a,this.define({depth:[n.Number,1],hover_preview:[n.Boolean,!1],theme:[n.Enum(l),\"dark\"]})}}r.JSON=p,p.__name__=\"JSON\",p.__module__=\"panel.models.markup\",p.init_JSON()},\n",
       "      \"18bba7b7e1\": function _(t,e,r){function n(t){return null===t?\"null\":typeof t}function o(t){return!!t&&\"object\"==typeof t}function i(t){if(void 0===t)return\"\";if(null===t)return\"Object\";if(\"object\"==typeof t&&!t.constructor)return\"Object\";var e=/function ([^(]*)/.exec(t.constructor.toString());return e&&e.length>1?e[1]:\"\"}function s(t,e,r){return\"null\"===t||\"undefined\"===t?t:(\"string\"!==t&&\"stringifiable\"!==t||(r='\"'+r.replace(/\"/g,'\\\\\"')+'\"'),\"function\"===t?e.toString().replace(/[\\r\\n]/g,\"\").replace(/\\{.*\\}/,\"\")+\"{…}\":r)}function a(t){var e=\"\";return o(t)?(e=i(t),Array.isArray(t)&&(e+=\"[\"+t.length+\"]\")):e=s(n(t),t,t),e}function f(t){return\"json-formatter-\"+t}function m(t,e,r){var n=document.createElement(t);return e&&n.classList.add(f(e)),void 0!==r&&(r instanceof Node?n.appendChild(r):n.appendChild(document.createTextNode(String(r)))),n}Object.defineProperty(r,\"__esModule\",{value:!0}),function(t){if(\"undefined\"!=typeof window){var e=document.createElement(\"style\");e.setAttribute(\"media\",\"screen\"),e.innerHTML=t,document.head.appendChild(e)}}('.json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n  color: black;\\n  text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \"No properties\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \"[]\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n  color: green;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n  color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n  color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n  color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n  color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n  background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: blue;\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n  color: #00008B;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \"►\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n  color: white;\\n  text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \"No properties\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \"[]\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n  color: #31F031;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n  color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n  color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n  color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n  color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n  color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n  background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: #027BFF;\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n  color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n  color: #23A0DB;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \"►\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n');var l=/(^\\d{1,4}[\\.|\\\\/|-]\\d{1,2}[\\.|\\\\/|-]\\d{1,4})(\\s*(?:0?[1-9]:[0-5]|1(?=[012])\\d:[0-5])\\d\\s*[ap]m)?$/,d=/\\d{2}:\\d{2}:\\d{2} GMT-\\d{4}/,c=/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/,p=window.requestAnimationFrame||function(t){return t(),0},j={hoverPreviewEnabled:!1,hoverPreviewArrayCount:100,hoverPreviewFieldCount:5,animateOpen:!0,animateClose:!0,theme:null,useToJSON:!0,sortPropertiesBy:null},h=function(){function t(t,e,r,n){void 0===e&&(e=1),void 0===r&&(r=j),this.json=t,this.open=e,this.config=r,this.key=n,this._isOpen=null,void 0===this.config.hoverPreviewEnabled&&(this.config.hoverPreviewEnabled=j.hoverPreviewEnabled),void 0===this.config.hoverPreviewArrayCount&&(this.config.hoverPreviewArrayCount=j.hoverPreviewArrayCount),void 0===this.config.hoverPreviewFieldCount&&(this.config.hoverPreviewFieldCount=j.hoverPreviewFieldCount),void 0===this.config.useToJSON&&(this.config.useToJSON=j.useToJSON),\"\"===this.key&&(this.key='\"\"')}return Object.defineProperty(t.prototype,\"isOpen\",{get:function(){return null!==this._isOpen?this._isOpen:this.open>0},set:function(t){this._isOpen=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isDate\",{get:function(){return this.json instanceof Date||\"string\"===this.type&&(l.test(this.json)||c.test(this.json)||d.test(this.json))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isUrl\",{get:function(){return\"string\"===this.type&&0===this.json.indexOf(\"http\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isArray\",{get:function(){return Array.isArray(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isObject\",{get:function(){return o(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmptyObject\",{get:function(){return!this.keys.length&&!this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmpty\",{get:function(){return this.isEmptyObject||this.keys&&!this.keys.length&&this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"useToJSON\",{get:function(){return this.config.useToJSON&&\"stringifiable\"===this.type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"hasKey\",{get:function(){return void 0!==this.key},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constructorName\",{get:function(){return i(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"type\",{get:function(){return this.config.useToJSON&&this.json&&this.json.toJSON?\"stringifiable\":n(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"keys\",{get:function(){if(this.isObject){var t=Object.keys(this.json);return!this.isArray&&this.config.sortPropertiesBy?t.sort(this.config.sortPropertiesBy):t}return[]},enumerable:!0,configurable:!0}),t.prototype.toggleOpen=function(){this.isOpen=!this.isOpen,this.element&&(this.isOpen?this.appendChildren(this.config.animateOpen):this.removeChildren(this.config.animateClose),this.element.classList.toggle(f(\"open\")))},t.prototype.openAtDepth=function(t){void 0===t&&(t=1),t<0||(this.open=t,this.isOpen=0!==t,this.element&&(this.removeChildren(!1),0===t?this.element.classList.remove(f(\"open\")):(this.appendChildren(this.config.animateOpen),this.element.classList.add(f(\"open\")))))},t.prototype.getInlinepreview=function(){var t=this;if(this.isArray)return this.json.length>this.config.hoverPreviewArrayCount?\"Array[\"+this.json.length+\"]\":\"[\"+this.json.map(a).join(\", \")+\"]\";var e=this.keys,r=e.slice(0,this.config.hoverPreviewFieldCount).map((function(e){return e+\":\"+a(t.json[e])})),n=e.length>=this.config.hoverPreviewFieldCount?\"…\":\"\";return\"{\"+r.join(\", \")+n+\"}\"},t.prototype.render=function(){this.element=m(\"div\",\"row\");var t=this.isObject?m(\"a\",\"toggler-link\"):m(\"span\");if(this.isObject&&!this.useToJSON&&t.appendChild(m(\"span\",\"toggler\")),this.hasKey&&t.appendChild(m(\"span\",\"key\",this.key+\":\")),this.isObject&&!this.useToJSON){var e=m(\"span\",\"value\"),r=m(\"span\"),n=m(\"span\",\"constructor-name\",this.constructorName);if(r.appendChild(n),this.isArray){var o=m(\"span\");o.appendChild(m(\"span\",\"bracket\",\"[\")),o.appendChild(m(\"span\",\"number\",this.json.length)),o.appendChild(m(\"span\",\"bracket\",\"]\")),r.appendChild(o)}e.appendChild(r),t.appendChild(e)}else{(e=this.isUrl?m(\"a\"):m(\"span\")).classList.add(f(this.type)),this.isDate&&e.classList.add(f(\"date\")),this.isUrl&&(e.classList.add(f(\"url\")),e.setAttribute(\"href\",this.json));var i=s(this.type,this.json,this.useToJSON?this.json.toJSON():this.json);e.appendChild(document.createTextNode(i)),t.appendChild(e)}if(this.isObject&&this.config.hoverPreviewEnabled){var a=m(\"span\",\"preview-text\");a.appendChild(document.createTextNode(this.getInlinepreview())),t.appendChild(a)}var l=m(\"div\",\"children\");return this.isObject&&l.classList.add(f(\"object\")),this.isArray&&l.classList.add(f(\"array\")),this.isEmpty&&l.classList.add(f(\"empty\")),this.config&&this.config.theme&&this.element.classList.add(f(this.config.theme)),this.isOpen&&this.element.classList.add(f(\"open\")),this.element.appendChild(t),this.element.appendChild(l),this.isObject&&this.isOpen&&this.appendChildren(),this.isObject&&!this.useToJSON&&t.addEventListener(\"click\",this.toggleOpen.bind(this)),this.element},t.prototype.appendChildren=function(e){var r=this;void 0===e&&(e=!1);var n=this.element.querySelector(\"div.\"+f(\"children\"));if(n&&!this.isEmpty)if(e){var o=0,i=function(){var e=r.keys[o],s=new t(r.json[e],r.open-1,r.config,e);n.appendChild(s.render()),(o+=1)<r.keys.length&&(o>10?i():p(i))};p(i)}else this.keys.forEach((function(e){var o=new t(r.json[e],r.open-1,r.config,e);n.appendChild(o.render())}))},t.prototype.removeChildren=function(t){void 0===t&&(t=!1);var e=this.element.querySelector(\"div.\"+f(\"children\"));if(t){var r=0,n=function(){e&&e.children.length&&(e.removeChild(e.children[0]),(r+=1)>10?n():p(n))};p(n)}else e&&(e.innerHTML=\"\")},t}();r.default=h},\n",
       "      \"61c9ac7aac\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=e(\"tslib\"),s=e(\"@bokehjs/models/widgets/input_widget\"),o=e(\"@bokehjs/styles/buttons\"),n=l.__importStar(e(\"@bokehjs/core/properties\"));class a extends s.InputWidgetView{constructor(){super(...arguments),this._downloadable=!1,this._embed=!1,this._prev_href=\"\",this._prev_download=\"\"}initialize(){super.initialize(),this.model.data&&this.model.filename&&(this._embed=!0)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.button_type.change,()=>this._update_button_style()),this.connect(this.model.properties.filename.change,()=>this._update_download()),this.connect(this.model.properties._transfers.change,()=>this._handle_click()),this.connect(this.model.properties.label.change,()=>this._update_label())}render(){super.render(),this.group_el.style.display=\"flex\",this.group_el.style.alignItems=\"stretch\",this.anchor_el=document.createElement(\"a\"),this._update_button_style(),this._update_label(),this.model.disabled?(this.anchor_el.setAttribute(\"disabled\",\"\"),this._downloadable=!1):(this.anchor_el.removeAttribute(\"disabled\"),this._prev_download&&(this.anchor_el.download=this._prev_download),this._prev_href&&(this.anchor_el.href=this._prev_href),this.anchor_el.download&&this.anchor_el.download&&(this._downloadable=!0)),this._embed?this._make_link_downloadable():(this._click_listener=this._increment_clicks.bind(this),this.anchor_el.addEventListener(\"click\",this._click_listener)),this.group_el.appendChild(this.anchor_el)}_increment_clicks(){this.model.clicks=this.model.clicks+1}_handle_click(){!this.model.auto&&this._downloadable||(this._make_link_downloadable(),!this._embed&&this.model.auto&&(this.anchor_el.removeEventListener(\"click\",this._click_listener),this.anchor_el.click(),this.anchor_el.removeAttribute(\"href\"),this.anchor_el.removeAttribute(\"download\"),this.anchor_el.addEventListener(\"click\",this._click_listener)),this._prev_href=this.anchor_el.getAttribute(\"href\"),this._prev_download=this.anchor_el.getAttribute(\"download\"))}_make_link_downloadable(){this._update_href(),this._update_download(),this.anchor_el.download&&this.anchor_el.href&&(this._downloadable=!0)}_update_href(){if(this.model.data){const e=function(e){const t=atob(e.split(\",\")[1]),i=e.split(\",\")[0].split(\":\")[1].split(\";\")[0],l=new ArrayBuffer(t.length),s=new Uint8Array(l);for(let e=0;e<t.length;e++)s[e]=t.charCodeAt(e);return new Blob([l],{type:i})}(this.model.data);this.anchor_el.href=URL.createObjectURL(e)}}_update_download(){this.model.filename&&(this.anchor_el.download=this.model.filename)}_update_label(){this.anchor_el.textContent=this.model.label}_update_button_style(){if(this.anchor_el.hasAttribute(\"class\")){const e=this.anchor_el.classList.item(1);e&&this.anchor_el.classList.replace(e,o.bk_btn_type(this.model.button_type))}else this.anchor_el.classList.add(o.bk_btn),this.anchor_el.classList.add(o.bk_btn_type(this.model.button_type))}}i.FileDownloadView=a,a.__name__=\"FileDownloadView\";class h extends s.InputWidget{constructor(e){super(e)}static init_FileDownload(){this.prototype.default_view=a,this.define({auto:[n.Boolean,!1],clicks:[n.Number,0],data:[n.String,null],label:[n.String,\"Download\"],filename:[n.String,null],button_type:[n.ButtonType,\"default\"],_transfers:[n.Number,0]}),this.override({title:\"\"})}}i.FileDownload=h,h.__name__=\"FileDownload\",h.__module__=\"panel.models.widgets\",h.init_FileDownload()},\n",
       "      \"7b859fb3cf\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=e(\"@bokehjs/models/widgets/markup\"),n=e(\"7116a7a602\");class r extends n.PanelMarkupView{render(){super.render(),this.markup_el.innerHTML=this.model.text,window.renderMathInElement&&window.renderMathInElement(this.el,{delimiters:[{left:\"$$\",right:\"$$\",display:!0},{left:\"\\\\[\",right:\"\\\\]\",display:!0},{left:\"$\",right:\"$\",display:!1},{left:\"\\\\(\",right:\"\\\\)\",display:!1}]})}}i.KaTeXView=r,r.__name__=\"KaTeXView\";class s extends a.Markup{constructor(e){super(e)}static init_KaTeX(){this.prototype.default_view=r}}i.KaTeX=s,s.__name__=\"KaTeX\",s.__module__=\"panel.models.katex\",s.init_KaTeX()},\n",
       "      \"0c21036737\": function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(\"@bokehjs/models/widgets/markup\"),s=e(\"7116a7a602\");class _ extends s.PanelMarkupView{initialize(){super.initialize(),this._hub=window.MathJax.Hub,this._hub.Config({tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}})}render(){super.render(),this._hub&&(this.markup_el.innerHTML=this.model.text,this._hub.Queue([\"Typeset\",this._hub,this.markup_el]))}}a.MathJaxView=_,_.__name__=\"MathJaxView\";class h extends i.Markup{constructor(e){super(e)}static init_MathJax(){this.prototype.default_view=_}}a.MathJax=h,h.__name__=\"MathJax\",h.__module__=\"panel.models.mathjax\",h.init_MathJax()},\n",
       "      \"79c41bbf71\": function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/core/dom\"),l=e(\"@bokehjs/models/widgets/widget\");function n(e){e.forEach(e=>e.style.borderStyle=\"inset\")}function a(e){e.forEach(e=>e.style.borderStyle=\"outset\")}class r extends l.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render()),this.connect(this.model.properties.value.change,()=>this.render()),this.connect(this.model.properties.loop_policy.change,()=>this.set_loop_state(this.model.loop_policy)),this.connect(this.model.properties.show_loop_controls.change,()=>{this.model.show_loop_controls&&this.loop_state.parentNode!=this.groupEl?this.groupEl.appendChild(this.loop_state):this.model.show_loop_controls||this.loop_state.parentNode!=this.groupEl||this.el.removeChild(this.loop_state)})}get_height(){return 250}render(){if(null!=this.sliderEl)return this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),void(this.sliderEl.value=String(this.model.value));super.render(),this.groupEl=o.div(),this.groupEl.style.display=\"flex\",this.groupEl.style.flexDirection=\"column\",this.groupEl.style.alignItems=\"center\",this.sliderEl=document.createElement(\"input\"),this.sliderEl.style.width=\"100%\",this.sliderEl.setAttribute(\"type\",\"range\"),this.sliderEl.value=String(this.model.value),this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),this.sliderEl.onchange=e=>this.set_frame(parseInt(e.target.value));const e=o.div();e.style.cssText=\"margin: 0 auto; display: flex; padding: 5px; align-items: stretch; width: 100%;\";const t=\"text-align: center; min-width: 20px; flex-grow: 1; margin: 2px\",s=\"text-align: center; min-width: 40px; flex-grow: 2; margin: 2px\",i=document.createElement(\"button\");i.style.cssText=t,i.appendChild(document.createTextNode(\"–\")),i.onclick=()=>this.slower(),e.appendChild(i);const l=document.createElement(\"button\");l.style.cssText=s,l.appendChild(document.createTextNode(\"❚◀◀\")),l.onclick=()=>this.first_frame(),e.appendChild(l);const r=document.createElement(\"button\");r.style.cssText=s,r.appendChild(document.createTextNode(\"❚◀\")),r.onclick=()=>this.previous_frame(),e.appendChild(r);const d=document.createElement(\"button\");d.style.cssText=s,d.appendChild(document.createTextNode(\"◀\")),d.onclick=()=>this.reverse_animation(),e.appendChild(d);const h=document.createElement(\"button\");h.style.cssText=s,h.appendChild(document.createTextNode(\"❚❚\")),h.onclick=()=>this.pause_animation(),e.appendChild(h);const p=document.createElement(\"button\");p.style.cssText=s,p.appendChild(document.createTextNode(\"▶\")),p.onclick=()=>this.play_animation(),e.appendChild(p);const c=document.createElement(\"button\");c.style.cssText=s,c.appendChild(document.createTextNode(\"▶❚\")),c.onclick=()=>this.next_frame(),e.appendChild(c);const m=document.createElement(\"button\");m.style.cssText=s,m.appendChild(document.createTextNode(\"▶▶❚\")),m.onclick=()=>this.last_frame(),e.appendChild(m);const _=document.createElement(\"button\");_.style.cssText=t,_.appendChild(document.createTextNode(\"+\")),_.onclick=()=>this.faster(),e.appendChild(_),this._toggle_reverse=()=>{a([h,p]),n([d])},this._toogle_pause=()=>{a([d,p]),n([h])},this._toggle_play=()=>{a([d,h]),n([p])},this.loop_state=document.createElement(\"form\"),this.loop_state.style.cssText=\"margin: 0 auto; display: table\";const u=document.createElement(\"input\");u.type=\"radio\",u.value=\"once\",u.name=\"state\";const g=document.createElement(\"label\");g.innerHTML=\"Once\",g.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const f=document.createElement(\"input\");f.setAttribute(\"type\",\"radio\"),f.setAttribute(\"value\",\"loop\"),f.setAttribute(\"name\",\"state\");const v=document.createElement(\"label\");v.innerHTML=\"Loop\",v.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const y=document.createElement(\"input\");y.setAttribute(\"type\",\"radio\"),y.setAttribute(\"value\",\"reflect\"),y.setAttribute(\"name\",\"state\");const x=document.createElement(\"label\");x.innerHTML=\"Reflect\",x.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\",\"once\"==this.model.loop_policy?u.checked=!0:\"loop\"==this.model.loop_policy?f.checked=!0:y.checked=!0,this.loop_state.appendChild(u),this.loop_state.appendChild(g),this.loop_state.appendChild(f),this.loop_state.appendChild(v),this.loop_state.appendChild(y),this.loop_state.appendChild(x),this.groupEl.appendChild(this.sliderEl),this.groupEl.appendChild(e),this.model.show_loop_controls&&this.groupEl.appendChild(this.loop_state),this.el.appendChild(this.groupEl)}set_frame(e){this.model.value!=e&&(this.model.value=e),this.sliderEl.value!=String(e)&&(this.sliderEl.value=String(e))}get_loop_state(){for(var e=this.loop_state.state,t=0;t<e.length;t++){var s=e[t];if(s.checked)return s.value}return\"once\"}set_loop_state(e){for(var t=this.loop_state.state,s=0;s<t.length;s++){var i=t[s];i.value==e&&(i.checked=!0)}}next_frame(){this.set_frame(Math.min(this.model.end,this.model.value+this.model.step))}previous_frame(){this.set_frame(Math.max(this.model.start,this.model.value-this.model.step))}first_frame(){this.set_frame(this.model.start)}last_frame(){this.set_frame(this.model.end)}slower(){this.model.interval=Math.round(this.model.interval/.7),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}faster(){this.model.interval=Math.round(.7*this.model.interval),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}anim_step_forward(){if(this.model.value<this.model.end)this.next_frame();else{var e=this.get_loop_state();\"loop\"==e?this.first_frame():\"reflect\"==e?(this.last_frame(),this.reverse_animation()):(this.pause_animation(),this.last_frame())}}anim_step_reverse(){if(this.model.value>this.model.start)this.previous_frame();else{var e=this.get_loop_state();\"loop\"==e?this.last_frame():\"reflect\"==e?(this.first_frame(),this.play_animation()):(this.pause_animation(),this.first_frame())}}pause_animation(){this._toogle_pause(),this.model.direction=0,this.timer&&(clearInterval(this.timer),this.timer=null)}play_animation(){this.pause_animation(),this._toggle_play(),this.model.direction=1,this.timer||(this.timer=setInterval(()=>this.anim_step_forward(),this.model.interval))}reverse_animation(){this.pause_animation(),this._toggle_reverse(),this.model.direction=-1,this.timer||(this.timer=setInterval(()=>this.anim_step_reverse(),this.model.interval))}}s.PlayerView=r,r.__name__=\"PlayerView\";class d extends l.Widget{constructor(e){super(e)}static init_Player(){this.prototype.default_view=r,this.define({direction:[i.Number,0],interval:[i.Number,500],start:[i.Number],end:[i.Number],step:[i.Number,1],loop_policy:[i.Any,\"once\"],value:[i.Any,0],show_loop_controls:[i.Boolean,!0]}),this.override({width:400})}}s.Player=d,d.__name__=\"Player\",d.__module__=\"panel.models.widgets\",d.init_Player()},\n",
       "      \"56da045fbd\": function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),l=t(\"@bokehjs/core/util/object\"),r=t(\"@bokehjs/core/util/eq\"),s=t(\"@bokehjs/models/layouts/html_box\"),n=t(\"99a25e6992\"),a=t(\"990b5dd5c7\"),p=t(\"7116a7a602\"),h=(t,e,o)=>{let i=Array.isArray(e)?[]:{};if(\"click\"===o||\"hover\"===o||\"selected\"===o){const o=[];if(null==e)return null;const l=t.data;for(let t=0;t<e.points.length;t++){const i=e.points[t];let r={};for(let t in i){const e=i[t];!i.hasOwnProperty(t)||Array.isArray(e)||a.isPlainObject(e)||(r[t]=e)}null!=i&&(i.hasOwnProperty(\"curveNumber\")&&i.hasOwnProperty(\"pointNumber\")&&l[i.curveNumber].hasOwnProperty(\"customdata\")&&(r.customdata=l[i.curveNumber].customdata[i.pointNumber]),i.hasOwnProperty(\"pointNumbers\")&&(r.pointNumbers=i.pointNumbers)),o[t]=r}i.points=o}else if(\"relayout\"===o||\"restyle\"===o)for(let t in e)e.hasOwnProperty(t)&&(i[t]=e[t]);return e.hasOwnProperty(\"range\")&&(i.range=e.range),e.hasOwnProperty(\"lassoPoints\")&&(i.lassoPoints=e.lassoPoints),i};class _ extends p.PanelHTMLBoxView{constructor(){super(...arguments),this._settingViewport=!1,this._plotInitialized=!1,this._reacting=!1,this._relayouting=!1,this._end_relayouting=n.debounce(()=>{this._relayouting=!1},2e3,!1)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.viewport_update_policy.change,this._updateSetViewportFunction),this.connect(this.model.properties.viewport_update_throttle.change,this._updateSetViewportFunction),this.connect(this.model.properties._render_count.change,this.plot),this.connect(this.model.properties.viewport.change,this._updateViewportFromProperty)}render(){super.render(),window.Plotly&&this.plot()}plot(){if(!window.Plotly)return;const t=[];for(let e=0;e<this.model.data.length;e++)t.push(this._get_trace(e,!1));let e=a.deepCopy(this.model.layout);if(this._relayouting){const t=this.el.layout;Object.keys(t).reduce((t,o)=>{\"axis\"===o.slice(1,5)&&\"range\"in t&&(e[o].range=t.range)},{})}this._reacting=!0,window.Plotly.react(this.el,t,e,this.model.config).then(()=>{this._updateSetViewportFunction(),this._updateViewportProperty(),this._plotInitialized||(this.el.on(\"plotly_relayout\",t=>{!0!==t._update_from_property&&(this.model.relayout_data=h(this.el,t,\"relayout\"),this._updateViewportProperty(),this._end_relayouting())}),this.el.on(\"plotly_relayouting\",()=>{\"mouseup\"!==this.model.viewport_update_policy&&(this._relayouting=!0,this._updateViewportProperty())}),this.el.on(\"plotly_restyle\",t=>{this.model.restyle_data=h(this.el,t,\"restyle\"),this._updateViewportProperty()}),this.el.on(\"plotly_click\",t=>{this.model.click_data=h(this.el,t,\"click\")}),this.el.on(\"plotly_hover\",t=>{this.model.hover_data=h(this.el,t,\"hover\")}),this.el.on(\"plotly_selected\",t=>{this.model.selected_data=h(this.el,t,\"selected\")}),this.el.on(\"plotly_clickannotation\",t=>{delete t.event,delete t.fullAnnotation,this.model.clickannotation_data=t}),this.el.on(\"plotly_deselect\",()=>{this.model.selected_data=null}),this.el.on(\"plotly_unhover\",()=>{this.model.hover_data=null})),this._plotInitialized=!0,this._reacting=!1})}_get_trace(t,e){const o=l.clone(this.model.data[t]),i=this.model.data_sources[t];for(const t of i.columns()){let l=i.get_array(t)[0];if(null!=l.shape&&l.shape.length>1){const t=[],e=l.shape;for(let o=0;o<e[0];o++)t.push(l.slice(o*e[1],(o+1)*e[1]));l=t}let r=t.split(\".\"),s=r[r.length-1],n=o;for(let t of r.slice(0,-1))n=n[t];e&&1==r.length?n[s]=[l]:n[s]=l}return o}_updateViewportFromProperty(){if(!window.Plotly||this._settingViewport||this._reacting||!this.model.viewport)return;const t=this.el._fullLayout;Object.keys(this.model.viewport).reduce((e,o)=>{if(r.isEqual(a.get(t,o),e))return!0;{let t=a.deepCopy(this.model.viewport);return t._update_from_property=!0,window.Plotly.relayout(this.el,t),!1}},{})}_updateViewportProperty(){const t=this.el._fullLayout;let e={};for(let o in t){if(!t.hasOwnProperty(o))continue;let i=o.slice(0,5);\"xaxis\"!==i&&\"yaxis\"!==i||(e[o+\".range\"]=a.deepCopy(t[o].range))}r.isEqual(e,this.model.viewport)||this._setViewport(e)}_updateSetViewportFunction(){\"continuous\"===this.model.viewport_update_policy||\"mouseup\"===this.model.viewport_update_policy?this._setViewport=t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)}:this._setViewport=a.throttle(t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)},this.model.viewport_update_throttle)}}o.PlotlyPlotView=_,_.__name__=\"PlotlyPlotView\";class d extends s.HTMLBox{constructor(t){super(t)}static init_PlotlyPlot(){this.prototype.default_view=_,this.define({data:[i.Array,[]],layout:[i.Any,{}],config:[i.Any,{}],data_sources:[i.Array,[]],relayout_data:[i.Any,{}],restyle_data:[i.Array,[]],click_data:[i.Any,{}],hover_data:[i.Any,{}],clickannotation_data:[i.Any,{}],selected_data:[i.Any,{}],viewport:[i.Any,{}],viewport_update_policy:[i.String,\"mouseup\"],viewport_update_throttle:[i.Number,200],_render_count:[i.Number,0]})}}o.PlotlyPlot=d,d.__name__=\"PlotlyPlot\",d.__module__=\"panel.models.plotly\",d.init_PlotlyPlot()},\n",
       "      \"99a25e6992\": function _(n,l,u){function t(n,l,u){var t,e,o,a,r;function i(){var c=Date.now()-a;c<l&&c>=0?t=setTimeout(i,l-c):(t=null,u||(r=n.apply(o,e),o=e=null))}null==l&&(l=100);var c=function(){o=this,e=arguments,a=Date.now();var c=u&&!t;return t||(t=setTimeout(i,l)),c&&(r=n.apply(o,e),o=e=null),r};return c.clear=function(){t&&(clearTimeout(t),t=null)},c.flush=function(){t&&(r=n.apply(o,e),o=e=null,clearTimeout(t),t=null)},c}t.debounce=t,l.exports=t},\n",
       "      \"990b5dd5c7\": function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.get=(t,e,n)=>{const r=n=>String.prototype.split.call(e,n).filter(Boolean).reduce((t,e)=>null!=t?t[e]:t,t),o=r(/[,[\\]]+?/)||r(/[,[\\].]+?/);return void 0===o||o===t?n:o},n.throttle=function(t,e){var n=0;return function(){var r=Number(new Date);r-n>=e&&(t(),n=r)}},n.deepCopy=function t(e){var n;if(null==e||\"object\"!=typeof e)return e;if(e instanceof Array){n=[];for(var r=0,o=e.length;r<o;r++)n[r]=t(e[r]);return n}if(e instanceof Object){const n={};for(const r in e){const o=r;e.hasOwnProperty(o)&&(n[o]=t(e[o]))}return n}throw new Error(\"Unable to copy obj! Its type isn't supported.\")},n.isPlainObject=function(t){return\"[object Object]\"===Object.prototype.toString.call(t)}},\n",
       "      \"76307e5afa\": function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/models/layouts/html_box\"),r=e(\"7116a7a602\");class l extends o.HTMLBoxView{connect_signals(){super.connect_signals();const e=()=>{this.render(),this.root.compute_layout()};this.connect(this.model.properties.height.change,e),this.connect(this.model.properties.width.change,e),this.connect(this.model.properties.height_policy.change,e),this.connect(this.model.properties.width_policy.change,e),this.connect(this.model.properties.sizing_mode.change,e),this.connect(this.model.properties.active.change,()=>this.setCSS()),this.connect(this.model.properties.bar_color.change,()=>this.setCSS()),this.connect(this.model.properties.css_classes.change,()=>this.setCSS()),this.connect(this.model.properties.value.change,()=>this.setValue()),this.connect(this.model.properties.max.change,()=>this.setMax())}render(){super.render();const e=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.progressEl=document.createElement(\"progress\"),this.setValue(),this.setMax(),r.set_size(this.progressEl,this.model),this.setCSS();for(const s in e)this.progressEl.style.setProperty(s,e[s]);this.el.appendChild(this.progressEl)}setCSS(){let e=this.model.css_classes.join(\" \")+\" \"+this.model.bar_color;this.model.active&&(e+=\" active\"),this.progressEl.className=e}setValue(){null!=this.model.value&&(this.progressEl.value=this.model.value)}setMax(){null!=this.model.max&&(this.progressEl.max=this.model.max)}_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new r.CachedVariadicBox(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}}t.ProgressView=l,l.__name__=\"ProgressView\";class h extends o.HTMLBox{constructor(e){super(e)}static init_Progress(){this.prototype.default_view=l,this.define({active:[i.Boolean,!0],bar_color:[i.String,\"primary\"],style:[i.Any,{}],max:[i.Number,100],value:[i.Number,null]})}}t.Progress=h,h.__name__=\"Progress\",h.__module__=\"panel.models.widgets\",h.init_Progress()},\n",
       "      \"38b2bc9574\": function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),a=e(\"@bokehjs/core/view\"),o=e(\"@bokehjs/core/util/array\"),c=e(\"@bokehjs/model\"),n=e(\"@bokehjs/protocol/receiver\");class r extends a.View{renderTo(){}}s.StateView=r,r.__name__=\"StateView\";class _ extends c.Model{constructor(e){super(e),this._receiver=new n.Receiver,this._cache={}}apply_state(e){this._receiver.consume(e.header),this._receiver.consume(e.metadata),this._receiver.consume(e.content),this._receiver.message&&this.document&&this.document.apply_json_patch(this._receiver.message.content)}_receive_json(e,t){const s=JSON.parse(e);this._cache[t]=s;let i=this.state;for(const e of this.values)i=i[e];i===t?this.apply_state(s):this._cache[i]&&this.apply_state(this._cache[i])}set_state(e,t){let s=o.copy(this.values);s[this.widgets[e.id]]=t;let i=this.state;for(const e of s)i=i[e];var a,c,n;this.values=s,this.json?this._cache[i]?this.apply_state(this._cache[i]):(a=i,c=e=>this._receive_json(e,i),(n=new XMLHttpRequest).overrideMimeType(\"application/json\"),n.open(\"GET\",a,!0),n.onreadystatechange=function(){4==n.readyState&&200==n.status&&c(n.responseText)},n.send(null)):this.apply_state(i)}static init_State(){this.prototype.default_view=r,this.define({json:[i.Boolean,!1],state:[i.Any,{}],widgets:[i.Any,{}],values:[i.Any,[]]})}}s.State=_,_.__name__=\"State\",_.__module__=\"panel.models.state\",_.init_State()},\n",
       "      \"294adeb985\": function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),a=t(\"@bokehjs/core/util/types\"),n=t(\"@bokehjs/models/layouts/html_box\");class c extends n.HTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,this._plot),this.connect(this.model.properties.data_sources.change,()=>this._connect_sources()),this._connected=[],this._connect_sources()}_connect_sources(){for(const t in this.model.data_sources){const e=this.model.data_sources[t];this._connected.indexOf(t)<0&&(this.connect(e.properties.data.change,this._plot),this._connected.push(t))}}_fetch_datasets(){const t={};for(const e in this.model.data_sources){const s=this.model.data_sources[e],o=[],a=s.columns();for(let t=0;t<s.get_length();t++){const e={};for(const o of a)e[o]=s.data[o][t];o.push(e)}t[e]=o}return t}render(){super.render(),this._plot()}_plot(){const t=this.model.data;if(null!=t&&window.vegaEmbed){if(this.model.data_sources&&Object.keys(this.model.data_sources).length>0){const e=this._fetch_datasets();if(\"data\"in e&&(t.data.values=e.data,delete e.data),null!=t.data){const s=a.isArray(t.data)?t.data:[t.data];for(const t of s)t.name in e&&(t.values=e[t.name],delete e[t.name])}this.model.data.datasets=e}window.vegaEmbed(this.el,this.model.data,{actions:!1})}}}s.VegaPlotView=c,c.__name__=\"VegaPlotView\";class i extends n.HTMLBox{constructor(t){super(t)}static init_VegaPlot(){this.prototype.default_view=c,this.define({data:[o.Any],data_sources:[o.Any]})}}s.VegaPlot=i,i.__name__=\"VegaPlot\",i.__module__=\"panel.models.vega\",i.init_VegaPlot()},\n",
       "      \"b0c3e9e9c2\": function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"7116a7a602\");class d extends l.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,()=>this.set_loop()),this.connect(this.model.properties.paused.change,()=>this.set_paused()),this.connect(this.model.properties.time.change,()=>this.set_time()),this.connect(this.model.properties.value.change,()=>this.set_value()),this.connect(this.model.properties.volume.change,()=>this.set_volume())}render(){super.render(),this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.videoEl.controls=!0,this.videoEl.src=this.model.value,this.videoEl.currentTime=this.model.time,this.videoEl.loop=this.model.loop,null!=this.model.volume?this.videoEl.volume=this.model.volume/100:this.model.volume=100*this.videoEl.volume,this.videoEl.onpause=()=>this.model.paused=!0,this.videoEl.onplay=()=>this.model.paused=!1,this.videoEl.ontimeupdate=()=>this.update_time(this),this.videoEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.videoEl),this.model.paused||this.videoEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.videoEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.videoEl.volume)}set_loop(){this.videoEl.loop=this.model.loop}set_paused(){!this.videoEl.paused&&this.model.paused&&this.videoEl.pause(),this.videoEl.paused&&!this.model.paused&&this.videoEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.videoEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.videoEl.currentTime=this.model.time)}set_value(){this.videoEl.src=this.model.value}}t.VideoView=d,d.__name__=\"VideoView\";class h extends s.HTMLBox{constructor(e){super(e)}static init_Video(){this.prototype.default_view=d,this.define({loop:[o.Boolean,!1],paused:[o.Boolean,!0],time:[o.Number,0],throttle:[o.Number,250],value:[o.Any,\"\"],volume:[o.Number,null]})}}t.Video=h,h.__name__=\"Video\",h.__module__=\"panel.models.widgets\",h.init_Video()},\n",
       "      \"3c7145a2fa\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/models/layouts/html_box\"),h=e(\"7116a7a602\");class a extends h.PanelHTMLBoxView{constructor(){super(...arguments),this.constraints={audio:!1,video:!0}}initialize(){super.initialize(),null!==this.model.timeout&&this.set_timeout()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.timeout.change,()=>this.set_timeout()),this.connect(this.model.properties.snapshot.change,()=>this.snapshot()),this.connect(this.model.properties.paused.change,()=>this.pause())}pause(){this.model.paused&&(null!=this.timer&&(clearInterval(this.timer),this.timer=null),this.videoEl.pause()),this.set_timeout()}set_timeout(){this.timer&&(clearInterval(this.timer),this.timer=null),this.model.timeout>0&&(this.timer=setInterval(()=>this.snapshot(),this.model.timeout))}snapshot(){this.canvasEl.width=this.videoEl.videoWidth,this.canvasEl.height=this.videoEl.videoHeight;const e=this.canvasEl.getContext(\"2d\");e&&e.drawImage(this.videoEl,0,0,this.canvasEl.width,this.canvasEl.height),this.model.value=this.canvasEl.toDataURL(\"image/\"+this.model.format,.95)}remove(){super.remove(),this.timer&&(clearInterval(this.timer),this.timer=null)}render(){super.render(),this.videoEl||(this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.canvasEl=document.createElement(\"canvas\"),this.el.appendChild(this.videoEl),navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia(this.constraints).then(e=>{this.videoEl.srcObject=e,this.model.paused||this.videoEl.play()}).catch(console.error))}}i.VideoStreamView=a,a.__name__=\"VideoStreamView\";class l extends o.HTMLBox{constructor(e){super(e)}static init_VideoStream(){this.prototype.default_view=a,this.define({format:[s.String,\"png\"],paused:[s.Boolean,!1],snapshot:[s.Boolean,!1],timeout:[s.Number,0],value:[s.Any]}),this.override({height:240,width:320})}}i.VideoStream=l,l.__name__=\"VideoStream\",l.__module__=\"panel.models.widgets\",l.init_VideoStream()},\n",
       "      \"ecfbb965eb\": function _(e,o,l){Object.defineProperty(l,\"__esModule\",{value:!0});var V=e(\"5b5e56e89a\");l.VTKPlot=V.VTKPlot;var t=e(\"729dd26c71\");l.VTKVolumePlot=t.VTKVolumePlot;var K=e(\"e23461e5d7\");l.VTKAxes=K.VTKAxes},\n",
       "      \"5b5e56e89a\": function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),i=e(\"@bokehjs/core/dom\"),a=e(\"c704c63c0a\"),o=e(\"aaf560d219\");class r extends a.AbstractVTKView{constructor(){super(...arguments),this._axes_initialized=!1}connect_signals(){super.connect_signals(),this.connect(this.model.properties.axes.change,()=>{this._delete_axes(),this.model.axes&&this._set_axes(),this._vtk_renwin.getRenderWindow().render()}),this.el.addEventListener(\"mouseenter\",()=>{const e=this._vtk_renwin.getInteractor();this.model.enable_keybindings&&(document.querySelector(\"body\").addEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").addEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").addEventListener(\"keyup\",e.handleKeyUp))}),this.el.addEventListener(\"mouseleave\",()=>{const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)})}render(){super.render(),this._axes=null,this._axes_initialized=!1,this._plot()}after_layout(){this._axes_initialized||(this._render_axes_canvas(),this._axes_initialized=!0)}_render_axes_canvas(){const e=this._vtk_container.getElementsByTagName(\"canvas\");if(1!=e.length)throw Error(\"Error at initialization of the 3D scene, container should have one and only one canvas\");e[0].classList.add(\"scene3d-canvas\");const t=i.canvas({style:{position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"}});t.classList.add(\"axes-canvas\"),this._vtk_container.appendChild(t),this._vtk_renwin.setResizeCallback(()=>{const e=this._vtk_container.getBoundingClientRect(),n=Math.floor(e.width*window.devicePixelRatio),s=Math.floor(e.height*window.devicePixelRatio);t.setAttribute(\"width\",n.toFixed()),t.setAttribute(\"height\",s.toFixed())})}_delete_axes(){if(null==this._axes)return;Object.keys(this._axes).forEach(e=>this._vtk_renwin.getRenderer().removeActor(this._axes[e]));const e=this._vtk_renwin.getContainer().getElementsByClassName(\"axes-canvas\")[0],t=e.getContext(\"2d\");t&&t.clearRect(0,0,e.clientWidth*window.devicePixelRatio,e.clientHeight*window.devicePixelRatio),this._axes=null}_set_axes(){if(this.model.axes){const e=this._vtk_renwin.getContainer().getElementsByClassName(\"axes-canvas\")[0],{psActor:t,axesActor:n,gridActor:s}=this.model.axes.create_axes(e);this._axes={psActor:t,axesActor:n,gridActor:s},this._vtk_renwin.getRenderer().addActor(t),this._vtk_renwin.getRenderer().addActor(n),this._vtk_renwin.getRenderer().addActor(s)}}_plot(){if(!this.model.data)return void this._vtk_renwin.getRenderWindow().render();const e=o.vtkns.DataAccessHelper.get(\"zip\",{zipContent:atob(this.model.data),callback:t=>{const n=o.vtkns.HttpSceneLoader.newInstance({renderer:this._vtk_renwin.getRenderer(),dataAccessHelper:e}),s=o.vtk.macro.debounce(()=>{null==this._axes&&this.model.axes&&this._set_axes(),this.model.properties.camera.change.emit()},100);n.setUrl(\"index.json\"),n.onReady(s)}})}}n.VTKPlotView=r,r.__name__=\"VTKPlotView\";class d extends a.AbstractVTKPlot{constructor(e){super(e),this.outline=o.vtkns.OutlineFilter.newInstance();const t=o.vtkns.Mapper.newInstance();t.setInputConnection(this.outline.getOutputPort()),this.outline_actor=o.vtkns.Actor.newInstance(),this.outline_actor.setMapper(t)}static init_VTKPlot(){this.prototype.default_view=r,this.define({data:[s.String],axes:[s.Instance],enable_keybindings:[s.Boolean,!1]})}}n.VTKPlot=d,d.__name__=\"VTKPlot\",d.init_VTKPlot()},\n",
       "      \"c704c63c0a\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),r=e(\"@bokehjs/core/dom\"),s=e(\"@bokehjs/core/util/object\"),a=e(\"@bokehjs/models/layouts/html_box\"),o=e(\"7116a7a602\"),_=e(\"aaf560d219\");class d extends o.PanelHTMLBoxView{constructor(){super(...arguments),this._setting_camera=!1}connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,()=>{this.invalidate_render()}),this.connect(this.model.properties.orientation_widget.change,()=>{this._orientation_widget_visibility(this.model.orientation_widget)}),this.connect(this.model.properties.camera.change,()=>this._set_camera_state())}_orientation_widget_visibility(e){this._orientationWidget.setEnabled(e),e?this._widgetManager.enablePicking():this._widgetManager.disablePicking(),this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderWindow().render()}_create_orientation_widget(){const e=_.vtkns.AxesActor.newInstance(),t=_.vtkns.OrientationMarkerWidget.newInstance({actor:e,interactor:this._vtk_renwin.getInteractor()});t.setEnabled(!0),t.setViewportCorner(_.vtkns.OrientationMarkerWidget.Corners.BOTTOM_RIGHT),t.setViewportSize(.15),t.setMinPixelSize(100),t.setMaxPixelSize(300),this._orientationWidget=t;const i=_.vtkns.WidgetManager.newInstance();i.setRenderer(t.getRenderer());const n=_.vtkns.InteractiveOrientationWidget.newInstance();n.placeWidget(e.getBounds()),n.setBounds(e.getBounds()),n.setPlaceFactor(1);const r=i.addWidget(n);this._widgetManager=i,r.onOrientationChange(({direction:e})=>{const t=this._vtk_renwin.getRenderer().getActiveCamera(),i=t.getFocalPoint(),n=t.getPosition(),r=t.getViewUp(),s=Math.sqrt(Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2)+Math.pow(n[2]-i[2],2));t.setPosition(i[0]+e[0]*s,i[1]+e[1]*s,i[2]+e[2]*s),e[0]&&t.setViewUp(_.majorAxis(r,1,2)),e[1]&&t.setViewUp(_.majorAxis(r,0,2)),e[2]&&t.setViewUp(_.majorAxis(r,0,1)),this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_renwin.getRenderWindow().render()}),this._orientation_widget_visibility(this.model.orientation_widget)}_get_camera_state(){if(!this._setting_camera){this._setting_camera=!0;const e=s.clone(this._vtk_renwin.getRenderer().getActiveCamera().get());delete e.classHierarchy,delete e.vtkObject,delete e.vtkCamera,delete e.viewPlaneNormal,this.model.camera=e,this._setting_camera=!1}}_set_camera_state(){if(!this._setting_camera){this._setting_camera=!0;try{this.model.camera&&this._vtk_renwin.getRenderer().getActiveCamera().set(this.model.camera)}finally{this._setting_camera=!1}this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_renwin.getRenderWindow().render()}}render(){super.render(),this._orientationWidget=null,this._vtk_container=r.div(),o.set_size(this._vtk_container,this.model),this.el.appendChild(this._vtk_container),this._vtk_renwin=_.vtkns.FullScreenRenderWindow.newInstance({rootContainer:this.el,container:this._vtk_container}),this._remove_default_key_binding(),this._create_orientation_widget(),this._vtk_renwin.getRenderer().getActiveCamera().onModified(()=>this._get_camera_state()),this._set_camera_state(),this.model.renderer_el=this._vtk_renwin}after_layout(){super.after_layout(),this._vtk_renwin.resize()}_remove_default_key_binding(){const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)}}i.AbstractVTKView=d,d.__name__=\"AbstractVTKView\";class c extends a.HTMLBox{constructor(e){super(e)}getActors(){return this.renderer_el.getRenderer().getActors()}static init_AbstractVTKPlot(){this.define({orientation_widget:[n.Boolean,!1],camera:[n.Instance]}),this.override({height:300,width:300})}}i.AbstractVTKPlot=c,c.__name__=\"AbstractVTKPlot\",c.__module__=\"panel.models.vtk\",c.init_AbstractVTKPlot()},\n",
       "      \"aaf560d219\": function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"@bokehjs/core/util/array\");function a(t){const e=Math.min(Math.max(Math.round(t),0),255).toString(16);return 2==e.length?e:\"0\"+e}function o(t,e,n){return\"#\"+a(t)+a(e)+a(n)}function i(t){for(var e=new ArrayBuffer(t.length),n=new Uint8Array(e),r=0,a=t.length;r<a;r++)n[r]=t.charCodeAt(r);return e}n.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},n.vtk=window.vtk,n.vtkns={},n.vtk&&(n.vtkns.DataArray=n.vtk.Common.Core.vtkDataArray,n.vtkns.ImageData=n.vtk.Common.DataModel.vtkImageData,n.vtkns.OutlineFilter=n.vtk.Filters.General.vtkOutlineFilter,n.vtkns.CubeSource=n.vtk.Filters.Sources.vtkCubeSource,n.vtkns.LineSource=n.vtk.Filters.Sources.vtkLineSource,n.vtkns.PlaneSource=n.vtk.Filters.Sources.vtkPlaneSource,n.vtkns.PointSource=n.vtk.Filters.Sources.vtkPointSource,n.vtkns.OrientationMarkerWidget=n.vtk.Interaction.Widgets.vtkOrientationMarkerWidget,n.vtkns.DataAccessHelper=n.vtk.IO.Core.DataAccessHelper,n.vtkns.HttpSceneLoader=n.vtk.IO.Core.vtkHttpSceneLoader,n.vtkns.ImageSlice=n.vtk.Rendering.Core.vtkImageSlice,n.vtkns.Actor=n.vtk.Rendering.Core.vtkActor,n.vtkns.AxesActor=n.vtk.Rendering.Core.vtkAxesActor,n.vtkns.Mapper=n.vtk.Rendering.Core.vtkMapper,n.vtkns.ImageMapper=n.vtk.Rendering.Core.vtkImageMapper,n.vtkns.SphereMapper=n.vtk.Rendering.Core.vtkSphereMapper,n.vtkns.WidgetManager=n.vtk.Widgets.Core.vtkWidgetManager,n.vtkns.InteractiveOrientationWidget=n.vtk.Widgets.Widgets3D.vtkInteractiveOrientationWidget,n.vtkns.PixelSpaceCallbackMapper=n.vtk.Rendering.Core.vtkPixelSpaceCallbackMapper,n.vtkns.FullScreenRenderWindow=n.vtk.Rendering.Misc.vtkFullScreenRenderWindow,n.vtkns.VolumeController=n.vtk.Interaction.UI.vtkVolumeController,n.vtkns.Volume=n.vtk.Rendering.Core.vtkVolume,n.vtkns.VolumeMapper=n.vtk.Rendering.Core.vtkVolumeMapper,n.vtkns.ColorTransferFunction=n.vtk.Rendering.Core.vtkColorTransferFunction,n.vtkns.PiecewiseFunction=n.vtk.Common.DataModel.vtkPiecewiseFunction,n.vtkns.BoundingBox=n.vtk.Common.DataModel.vtkBoundingBox),n.hexToRGB=function(t){return[parseInt(t.slice(1,3),16)/255,parseInt(t.slice(3,5),16)/255,parseInt(t.slice(5,7),16)/255]},n.rgbToHex=o,n.vtkLutToMapper=function(t){const{scale:e,nodes:a}=t.get(\"scale\",\"nodes\");if(e!==n.vtkns.ColorTransferFunction.Scale.LINEAR)throw\"Error transfer function scale not handle\";const i=a.map(t=>t.x),s=Math.min(...i),k=Math.max(...i),v=r.linspace(s,k,255),c=[0,0,0];return{low:s,high:k,palette:v.map(e=>(t.getColor(e,c),o(255*c[0],255*c[1],255*c[2])))}},n.data2VTKImageData=function(t){const e=n.vtkns.ImageData.newInstance({spacing:t.spacing});e.setDimensions(t.dims),e.setOrigin(null!=t.origin?t.origin:t.dims.map(t=>t/2));const r=n.vtkns.DataArray.newInstance({name:\"scalars\",numberOfComponents:1,values:new n.ARRAY_TYPES[t.dtype](i(atob(t.buffer)))});return e.getPointData().setScalars(r),e},n.majorAxis=function(t,e,n){const r=[0,0,0],a=Math.abs(t[e])>Math.abs(t[n])?e:n,o=t[a]>0?1:-1;return r[a]=o,r},n.cartesian_product=function(...t){return t.reduce((t,e)=>t.flatMap(t=>e.map(e=>[].concat(t,e))))}},\n",
       "      \"729dd26c71\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),r=e(\"c704c63c0a\"),n=e(\"aaf560d219\");class o extends r.AbstractVTKView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.colormap.change,()=>{this.colormap_slector.value=this.model.colormap;const e=new Event(\"change\");this.colormap_slector.dispatchEvent(e)}),this.connect(this.model.properties.shadow.change,()=>{this.shadow_selector.value=this.model.shadow?\"1\":\"0\";const e=new Event(\"change\");this.shadow_selector.dispatchEvent(e)}),this.connect(this.model.properties.sampling.change,()=>{this.sampling_slider.value=this.model.sampling.toFixed(2);const e=new Event(\"input\");this.sampling_slider.dispatchEvent(e)}),this.connect(this.model.properties.edge_gradient.change,()=>{this.edge_gradient_slider.value=this.model.edge_gradient.toFixed(2);const e=new Event(\"input\");this.edge_gradient_slider.dispatchEvent(e)}),this.connect(this.model.properties.rescale.change,()=>{this._controllerWidget.setRescaleColorMap(this.model.rescale),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.ambient.change,()=>{this.volume.getProperty().setAmbient(this.model.ambient),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.diffuse.change,()=>{this.volume.getProperty().setDiffuse(this.model.diffuse),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.specular.change,()=>{this.volume.getProperty().setSpecular(this.model.specular),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.specular_power.change,()=>{this.volume.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.display_volume.change,()=>{this._set_volume_visibility(this.model.display_volume),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.display_slices.change,()=>{this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.slice_i.change,()=>{this.image_actor_i.getMapper().setISlice(this.model.slice_i),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.slice_j.change,()=>{this.image_actor_j.getMapper().setJSlice(this.model.slice_j),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.slice_k.change,()=>{this.image_actor_k.getMapper().setKSlice(this.model.slice_k),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.render_background.change,()=>{this._vtk_renwin.getRenderer().setBackground(...n.hexToRGB(this.model.render_background)),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.interpolation.change,()=>{this._set_interpolation(this.model.interpolation),this._vtk_renwin.getRenderWindow().render()})}get volume(){return this._controllerWidget.getActor()}get image_actor_i(){return this._vtk_renwin.getRenderer().getActors()[0]}get image_actor_j(){return this._vtk_renwin.getRenderer().getActors()[1]}get image_actor_k(){return this._vtk_renwin.getRenderer().getActors()[2]}get shadow_selector(){return this.el.querySelector(\".js-shadow\")}get edge_gradient_slider(){return this.el.querySelector(\".js-edge\")}get sampling_slider(){return this.el.querySelector(\".js-spacing\")}get colormap_slector(){return this.el.querySelector(\".js-color-preset\")}_set_interpolation(e){\"fast_linear\"==e?(this.volume.getProperty().setInterpolationTypeToFastLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):\"linear\"==e?(this.volume.getProperty().setInterpolationTypeToLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):(this.volume.getProperty().setInterpolationTypeToNearest(),this.image_actor_i.getProperty().setInterpolationTypeToNearest())}render(){super.render(),this._controllerWidget=n.vtkns.VolumeController.newInstance({size:[400,150],rescaleColorMap:this.model.rescale}),this._vtk_image_data=n.data2VTKImageData(this.model.data),this._controllerWidget.setContainer(this.el),this._vtk_renwin.getRenderWindow().getInteractor(),this._vtk_renwin.getRenderWindow().getInteractor().setDesiredUpdateRate(45),this._plot_volume(),this._connect_controls(),this._plot_slices(),this._set_volume_visibility(this.model.display_volume),this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderer().setBackground(...n.hexToRGB(this.model.render_background)),this._set_interpolation(this.model.interpolation),this._vtk_renwin.getRenderer().resetCamera()}_connect_controls(){this.colormap_slector.addEventListener(\"change\",()=>{this.model.colormap=this.colormap_slector.value}),this.model.colormap?this.model.properties.colormap.change.emit():this.model.colormap=this.colormap_slector.value,this.shadow_selector.addEventListener(\"change\",()=>{this.model.shadow=!!Number(this.shadow_selector.value)}),(this.model.shadow=!!Number(this.shadow_selector.value))&&this.model.properties.shadow.change.emit(),this.sampling_slider.addEventListener(\"input\",()=>{const e=Number(this.sampling_slider.value);Math.abs(this.model.sampling-e)>=.005&&(this.model.sampling=e)}),Math.abs(this.model.sampling-Number(this.shadow_selector.value))>=.005&&this.model.properties.sampling.change.emit(),this.edge_gradient_slider.addEventListener(\"input\",()=>{const e=Number(this.edge_gradient_slider.value);Math.abs(this.model.edge_gradient-e)>=.005&&(this.model.edge_gradient=e)}),Math.abs(this.model.edge_gradient-Number(this.edge_gradient_slider.value))>=.005&&this.model.properties.edge_gradient.change.emit()}_plot_volume(){const e=this._vtk_image_data,t=n.vtkns.Volume.newInstance(),i=n.vtkns.VolumeMapper.newInstance();t.setMapper(i),i.setInputData(e);const s=(e.getPointData().getScalars()||e.getPointData().getArrays()[0]).getRange(),r=n.vtkns.ColorTransferFunction.newInstance();r.onModified(()=>this.model.mapper=n.vtkLutToMapper(r));const o=n.vtkns.PiecewiseFunction.newInstance(),a=.7*Math.sqrt(e.getSpacing().map(e=>e*e).reduce((e,t)=>e+t,0));i.setSampleDistance(a),t.getProperty().setRGBTransferFunction(0,r),t.getProperty().setScalarOpacity(0,o),t.getProperty().setInterpolationTypeToFastLinear(),t.getProperty().setScalarOpacityUnitDistance(0,n.vtkns.BoundingBox.getDiagonalLength(e.getBounds())/Math.max(...e.getDimensions())),t.getProperty().setGradientOpacityMinimumValue(0,0),t.getProperty().setGradientOpacityMaximumValue(0,.05*(s[1]-s[0])),t.getProperty().setShade(this.model.shadow),t.getProperty().setUseGradientOpacity(0,!0),t.getProperty().setGradientOpacityMinimumOpacity(0,0),t.getProperty().setGradientOpacityMaximumOpacity(0,1),t.getProperty().setAmbient(this.model.ambient),t.getProperty().setDiffuse(this.model.diffuse),t.getProperty().setSpecular(this.model.specular),t.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderer().addVolume(t),this._controllerWidget.setupContent(this._vtk_renwin.getRenderWindow(),t,!0)}_plot_slices(){const e=this._vtk_image_data,t=n.vtkns.ImageSlice.newInstance(),i=n.vtkns.ImageSlice.newInstance(),s=n.vtkns.ImageSlice.newInstance(),r=n.vtkns.ImageMapper.newInstance(),o=n.vtkns.ImageMapper.newInstance(),a=n.vtkns.ImageMapper.newInstance();r.setInputData(e),r.setISlice(this.model.slice_i),t.setMapper(r),o.setInputData(e),o.setJSlice(this.model.slice_j),i.setMapper(o),a.setInputData(e),a.setKSlice(this.model.slice_k),s.setMapper(a);const l=n.vtkns.PiecewiseFunction.newInstance();l.removeAllPoints(),l.addPoint(0,1);const c=this.volume.getProperty().getRGBTransferFunction(0),d=t.getProperty();i.setProperty(d),s.setProperty(d),d.setRGBTransferFunction(c),d.setScalarOpacity(l);const h=this._vtk_renwin.getRenderer();h.addActor(t),h.addActor(i),h.addActor(s)}_set_volume_visibility(e){this.volume.setVisibility(e)}_set_slices_visibility(e){this._vtk_renwin.getRenderer().getActors().map(t=>t.setVisibility(e))}}i.VTKVolumePlotView=o,o.__name__=\"VTKVolumePlotView\";class a extends r.AbstractVTKPlot{constructor(e){super(e)}static init_VTKVolumePlot(){this.prototype.default_view=o,this.define({data:[s.Instance],shadow:[s.Boolean,!0],sampling:[s.Number,.4],edge_gradient:[s.Number,.2],colormap:[s.String],rescale:[s.Boolean,!1],ambient:[s.Number,.2],diffuse:[s.Number,.7],specular:[s.Number,.3],specular_power:[s.Number,8],slice_i:[s.Int,0],slice_j:[s.Int,0],slice_k:[s.Int,0],display_volume:[s.Boolean,!0],display_slices:[s.Boolean,!1],render_background:[s.String,\"#52576e\"],interpolation:[s.Any,\"fast_linear\"],mapper:[s.Instance]})}}i.VTKVolumePlot=a,a.__name__=\"VTKVolumePlot\",a.init_VTKVolumePlot()},\n",
       "      \"e23461e5d7\": function _(t,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(\"tslib\"),n=t(\"2f3fd5db07\"),a=t(\"@bokehjs/model\"),c=e.__importStar(t(\"@bokehjs/core/properties\")),r=t(\"aaf560d219\");class h extends a.Model{constructor(t){super(t)}static init_VTKAxes(){this.define({origin:[c.Array],xticker:[c.Instance],yticker:[c.Instance],zticker:[c.Instance],digits:[c.Number,1],show_grid:[c.Boolean,!0],grid_opacity:[c.Number,.1],axes_opacity:[c.Number,1],fontsize:[c.Number,12]})}get xticks(){return this.xticker.ticks}get yticks(){return this.yticker.ticks}get zticks(){return this.zticker.ticks}get xlabels(){return this.xticker.labels?this.xticker.labels:this.xticks.map(t=>t.toFixed(this.digits))}get ylabels(){return this.yticker.labels?this.yticker.labels:this.yticks.map(t=>t.toFixed(this.digits))}get zlabels(){return this.zticker.labels?this.zticker.labels:this.zticks.map(t=>t.toFixed(this.digits))}_make_grid_lines(t,s,i){const e=[];for(let n=0;n<t-1;n++)for(let t=0;t<s-1;t++){const a=n*s+t+i,c=[5,a,n*s+t+1+i,(n+1)*s+t+1+i,(n+1)*s+t+i,a];e.push(c)}return e}_create_grid_axes(){const t=[];t.push(r.cartesian_product(this.xticks,this.yticks,[this.origin[2]])),t.push(r.cartesian_product([this.origin[0]],this.yticks,this.zticks)),t.push(r.cartesian_product(this.xticks,[this.origin[1]],this.zticks));const s=[];let i=0;s.push(this._make_grid_lines(this.xticks.length,this.yticks.length,i)),i+=this.xticks.length*this.yticks.length,s.push(this._make_grid_lines(this.yticks.length,this.zticks.length,i)),i+=this.yticks.length*this.zticks.length,s.push(this._make_grid_lines(this.xticks.length,this.zticks.length,i));const e=r.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:t.flat(2)},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:s.flat(2)}}),n=r.vtkns.Mapper.newInstance(),a=r.vtkns.Actor.newInstance();return n.setInputData(e),a.setMapper(n),a.getProperty().setOpacity(this.grid_opacity),a.setVisibility(this.show_grid),a}create_axes(t){const s=[this.xticks,this.yticks,this.zticks].map((t,s)=>{let i=null;switch(s){case 0:i=r.cartesian_product(t,[this.origin[1]],[this.origin[2]]);break;case 1:i=r.cartesian_product([this.origin[0]],t,[this.origin[2]]);break;case 2:i=r.cartesian_product([this.origin[0]],[this.origin[1]],t)}return i}).flat(2),i=r.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:s},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:[2,0,this.xticks.length-1,2,this.xticks.length,this.xticks.length+this.yticks.length-1,2,this.xticks.length+this.yticks.length,this.xticks.length+this.yticks.length+this.zticks.length-1]}}),e=r.vtkns.PixelSpaceCallbackMapper.newInstance();e.setInputData(i),e.setUseZValues(!0),e.setCallback((s,i,a)=>{const c=t.getContext(\"2d\");if(c){const r={height:t.clientHeight*window.devicePixelRatio,width:t.clientWidth*window.devicePixelRatio},h=e.getInputData().getPoints(),l=i.getViewMatrix();n.mat4.transpose(l,l);const o=i.getProjectionMatrix(a,-1,1);n.mat4.transpose(o,o),c.clearRect(0,0,r.width,r.height),s.forEach((t,s)=>{const i=h.getPoint(s),e=n.vec3.fromValues(i[0],i[1],i[2]);if(n.vec3.transformMat4(e,e,l),e[2]+=.05,n.vec3.transformMat4(e,e,o),e[2]-.001<t[3]){let i;c.font=\"30px serif\",c.textAlign=\"center\",c.textBaseline=\"alphabetic\",c.fillText(\".\",t[0],r.height-t[1]+2),c.font=this.fontsize*window.devicePixelRatio+\"px serif\",c.textAlign=\"right\",c.textBaseline=\"top\",i=s<this.xticks.length?this.xlabels[s]:s>=this.xticks.length&&s<this.xticks.length+this.yticks.length?this.ylabels[s-this.xticks.length]:this.zlabels[s-(this.xticks.length+this.yticks.length)],c.fillText(\"\"+i,t[0],r.height-t[1])}})}});const a=r.vtkns.Actor.newInstance();a.setMapper(e);const c=r.vtkns.Mapper.newInstance();c.setInputData(i);const h=r.vtkns.Actor.newInstance();return h.setMapper(c),h.getProperty().setOpacity(this.axes_opacity),{psActor:a,axesActor:h,gridActor:this._create_grid_axes()}}}i.VTKAxes=h,h.__name__=\"VTKAxes\",h.__module__=\"panel.models.vtk\",h.init_VTKAxes()},\n",
       "      \"2f3fd5db07\": function _(t,c,a){Object.defineProperty(a,\"__esModule\",{value:!0});const o=t(\"tslib\"),r=o.__importStar(t(\"68ca94c15c\"));a.glMatrix=r;const _=o.__importStar(t(\"7c0b8e6048\"));a.mat2=_;const e=o.__importStar(t(\"dc03f0a621\"));a.mat2d=e;const i=o.__importStar(t(\"0285c50a7e\"));a.mat3=i;const m=o.__importStar(t(\"a427635f32\"));a.mat4=m;const n=o.__importStar(t(\"eb06fc032a\"));a.quat=n;const s=o.__importStar(t(\"277615c682\"));a.quat2=s;const p=o.__importStar(t(\"c56d9ff837\"));a.vec2=p;const S=o.__importStar(t(\"2c5eb22089\"));a.vec3=S;const f=o.__importStar(t(\"c1aa33d719\"));a.vec4=f},\n",
       "      \"68ca94c15c\": function _(t,a,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.EPSILON=1e-6,r.ARRAY_TYPE=\"undefined\"!=typeof Float32Array?Float32Array:Array,r.RANDOM=Math.random,r.setMatrixArrayType=function(t){r.ARRAY_TYPE=t};var n=Math.PI/180;r.toRadian=function(t){return t*n},r.equals=function(t,a){return Math.abs(t-a)<=r.EPSILON*Math.max(1,Math.abs(t),Math.abs(a))},Math.hypot||(Math.hypot=function(){for(var t=0,a=arguments.length;a--;)t+=arguments[a]*arguments[a];return Math.sqrt(t)})},\n",
       "      \"7c0b8e6048\": function _(t,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1],f=r[2],s=r[3];return t[0]=a*c+e*i,t[1]=u*c+o*i,t[2]=a*f+e*s,t[3]=u*f+o*s,t}function e(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}r.create=function(){var t=new a.ARRAY_TYPE(4);return a.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},r.clone=function(t){var n=new a.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},r.fromValues=function(t,n,r,u){var e=new a.ARRAY_TYPE(4);return e[0]=t,e[1]=n,e[2]=r,e[3]=u,e},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.transpose=function(t,n){if(t===n){var r=n[1];t[1]=n[2],t[2]=r}else t[0]=n[0],t[1]=n[2],t[2]=n[1],t[3]=n[3];return t},r.invert=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*e-u*a;return o?(o=1/o,t[0]=e*o,t[1]=-a*o,t[2]=-u*o,t[3]=r*o,t):null},r.adjoint=function(t,n){var r=n[0];return t[0]=n[3],t[1]=-n[1],t[2]=-n[2],t[3]=r,t},r.determinant=function(t){return t[0]*t[3]-t[2]*t[1]},r.multiply=u,r.rotate=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=Math.sin(r),i=Math.cos(r);return t[0]=a*i+e*c,t[1]=u*i+o*c,t[2]=a*-c+e*i,t[3]=u*-c+o*i,t},r.scale=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1];return t[0]=a*c,t[1]=u*c,t[2]=e*i,t[3]=o*i,t},r.fromRotation=function(t,n){var r=Math.sin(n),a=Math.cos(n);return t[0]=a,t[1]=r,t[2]=-r,t[3]=a,t},r.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t},r.str=function(t){return\"mat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3])},r.LDU=function(t,n,r,a){return t[2]=a[2]/a[0],r[0]=a[0],r[1]=a[1],r[3]=a[3]-t[2]*r[1],[t,n,r]},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=e,r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],u=t[1],e=t[2],o=t[3],c=n[0],i=n[1],f=n[2],s=n[3];return Math.abs(r-c)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(u-i)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(i))&&Math.abs(e-f)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(f))&&Math.abs(o-s)<=a.EPSILON*Math.max(1,Math.abs(o),Math.abs(s))},r.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.multiplyScalarAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.mul=u,r.sub=e},\n",
       "      \"dc03f0a621\": function _(t,n,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=a[0],f=a[1],h=a[2],M=a[3],b=a[4],l=a[5];return t[0]=r*s+e*f,t[1]=u*s+o*f,t[2]=r*h+e*M,t[3]=u*h+o*M,t[4]=r*b+e*l+c,t[5]=u*b+o*l+i,t}function e(t,n,a){return t[0]=n[0]-a[0],t[1]=n[1]-a[1],t[2]=n[2]-a[2],t[3]=n[3]-a[3],t[4]=n[4]-a[4],t[5]=n[5]-a[5],t}a.create=function(){var t=new r.ARRAY_TYPE(6);return r.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[4]=0,t[5]=0),t[0]=1,t[3]=1,t},a.clone=function(t){var n=new r.ARRAY_TYPE(6);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n},a.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t},a.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},a.fromValues=function(t,n,a,u,e,o){var c=new r.ARRAY_TYPE(6);return c[0]=t,c[1]=n,c[2]=a,c[3]=u,c[4]=e,c[5]=o,c},a.set=function(t,n,a,r,u,e,o){return t[0]=n,t[1]=a,t[2]=r,t[3]=u,t[4]=e,t[5]=o,t},a.invert=function(t,n){var a=n[0],r=n[1],u=n[2],e=n[3],o=n[4],c=n[5],i=a*e-r*u;return i?(i=1/i,t[0]=e*i,t[1]=-r*i,t[2]=-u*i,t[3]=a*i,t[4]=(u*c-e*o)*i,t[5]=(r*o-a*c)*i,t):null},a.determinant=function(t){return t[0]*t[3]-t[1]*t[2]},a.multiply=u,a.rotate=function(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=Math.sin(a),f=Math.cos(a);return t[0]=r*f+e*s,t[1]=u*f+o*s,t[2]=r*-s+e*f,t[3]=u*-s+o*f,t[4]=c,t[5]=i,t},a.scale=function(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=a[0],f=a[1];return t[0]=r*s,t[1]=u*s,t[2]=e*f,t[3]=o*f,t[4]=c,t[5]=i,t},a.translate=function(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=a[0],f=a[1];return t[0]=r,t[1]=u,t[2]=e,t[3]=o,t[4]=r*s+e*f+c,t[5]=u*s+o*f+i,t},a.fromRotation=function(t,n){var a=Math.sin(n),r=Math.cos(n);return t[0]=r,t[1]=a,t[2]=-a,t[3]=r,t[4]=0,t[5]=0,t},a.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t[4]=0,t[5]=0,t},a.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=n[0],t[5]=n[1],t},a.str=function(t){return\"mat2d(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\")\"},a.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],1)},a.add=function(t,n,a){return t[0]=n[0]+a[0],t[1]=n[1]+a[1],t[2]=n[2]+a[2],t[3]=n[3]+a[3],t[4]=n[4]+a[4],t[5]=n[5]+a[5],t},a.subtract=e,a.multiplyScalar=function(t,n,a){return t[0]=n[0]*a,t[1]=n[1]*a,t[2]=n[2]*a,t[3]=n[3]*a,t[4]=n[4]*a,t[5]=n[5]*a,t},a.multiplyScalarAndAdd=function(t,n,a,r){return t[0]=n[0]+a[0]*r,t[1]=n[1]+a[1]*r,t[2]=n[2]+a[2]*r,t[3]=n[3]+a[3]*r,t[4]=n[4]+a[4]*r,t[5]=n[5]+a[5]*r,t},a.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]},a.equals=function(t,n){var a=t[0],u=t[1],e=t[2],o=t[3],c=t[4],i=t[5],s=n[0],f=n[1],h=n[2],M=n[3],b=n[4],l=n[5];return Math.abs(a-s)<=r.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(u-f)<=r.EPSILON*Math.max(1,Math.abs(u),Math.abs(f))&&Math.abs(e-h)<=r.EPSILON*Math.max(1,Math.abs(e),Math.abs(h))&&Math.abs(o-M)<=r.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))&&Math.abs(c-b)<=r.EPSILON*Math.max(1,Math.abs(c),Math.abs(b))&&Math.abs(i-l)<=r.EPSILON*Math.max(1,Math.abs(i),Math.abs(l))},a.mul=u,a.sub=e},\n",
       "      \"0285c50a7e\": function _(t,a,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1],l=n[2],m=n[3],v=n[4],E=n[5],P=n[6],S=n[7],d=n[8];return t[0]=f*r+b*e+l*s,t[1]=f*u+b*i+l*M,t[2]=f*o+b*c+l*h,t[3]=m*r+v*e+E*s,t[4]=m*u+v*i+E*M,t[5]=m*o+v*c+E*h,t[6]=P*r+S*e+d*s,t[7]=P*u+S*i+d*M,t[8]=P*o+S*c+d*h,t}function o(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t}n.create=function(){var t=new r.ARRAY_TYPE(9);return r.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},n.fromMat4=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[4],t[4]=a[5],t[5]=a[6],t[6]=a[8],t[7]=a[9],t[8]=a[10],t},n.clone=function(t){var a=new r.ARRAY_TYPE(9);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromValues=function(t,a,n,u,o,e,i,c,s){var M=new r.ARRAY_TYPE(9);return M[0]=t,M[1]=a,M[2]=n,M[3]=u,M[4]=o,M[5]=e,M[6]=i,M[7]=c,M[8]=s,M},n.set=function(t,a,n,r,u,o,e,i,c,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=u,t[4]=o,t[5]=e,t[6]=i,t[7]=c,t[8]=s,t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],u=a[5];t[1]=a[3],t[2]=a[6],t[3]=n,t[5]=a[7],t[6]=r,t[7]=u}else t[0]=a[0],t[1]=a[3],t[2]=a[6],t[3]=a[1],t[4]=a[4],t[5]=a[7],t[6]=a[2],t[7]=a[5],t[8]=a[8];return t},n.invert=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=M*e-i*s,f=-M*o+i*c,b=s*o-e*c,l=n*h+r*f+u*b;return l?(l=1/l,t[0]=h*l,t[1]=(-M*r+u*s)*l,t[2]=(i*r-u*e)*l,t[3]=f*l,t[4]=(M*n-u*c)*l,t[5]=(-i*n+u*o)*l,t[6]=b*l,t[7]=(-s*n+r*c)*l,t[8]=(e*n-r*o)*l,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8];return t[0]=e*M-i*s,t[1]=u*s-r*M,t[2]=r*i-u*e,t[3]=i*c-o*M,t[4]=n*M-u*c,t[5]=u*o-n*i,t[6]=o*s-e*c,t[7]=r*c-n*s,t[8]=n*e-r*o,t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],u=t[3],o=t[4],e=t[5],i=t[6],c=t[7],s=t[8];return a*(s*o-e*c)+n*(-s*u+e*i)+r*(c*u-o*i)},n.multiply=u,n.translate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1];return t[0]=r,t[1]=u,t[2]=o,t[3]=e,t[4]=i,t[5]=c,t[6]=f*r+b*e+s,t[7]=f*u+b*i+M,t[8]=f*o+b*c+h,t},n.rotate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=Math.sin(n),b=Math.cos(n);return t[0]=b*r+f*e,t[1]=b*u+f*i,t[2]=b*o+f*c,t[3]=b*e-f*r,t[4]=b*i-f*u,t[5]=b*c-f*o,t[6]=s,t[7]=M,t[8]=h,t},n.scale=function(t,a,n){var r=n[0],u=n[1];return t[0]=r*a[0],t[1]=r*a[1],t[2]=r*a[2],t[3]=u*a[3],t[4]=u*a[4],t[5]=u*a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=a[0],t[7]=a[1],t[8]=1,t},n.fromRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=-n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=a[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromMat2d=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=0,t[3]=a[2],t[4]=a[3],t[5]=0,t[6]=a[4],t[7]=a[5],t[8]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=n+n,i=r+r,c=u+u,s=n*e,M=r*e,h=r*i,f=u*e,b=u*i,l=u*c,m=o*e,v=o*i,E=o*c;return t[0]=1-h-l,t[3]=M-E,t[6]=f+v,t[1]=M+E,t[4]=1-s-l,t[7]=b-m,t[2]=f-v,t[5]=b+m,t[8]=1-s-h,t},n.normalFromMat4=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],E=a[15],P=n*i-r*e,S=n*c-u*e,d=n*s-o*e,A=r*c-u*i,x=r*s-o*i,O=u*s-o*c,p=M*m-h*l,I=M*v-f*l,L=M*E-b*l,N=h*v-f*m,R=h*E-b*m,_=f*E-b*v,y=P*_-S*R+d*N+A*L-x*I+O*p;return y?(y=1/y,t[0]=(i*_-c*R+s*N)*y,t[1]=(c*L-e*_-s*I)*y,t[2]=(e*R-i*L+s*p)*y,t[3]=(u*R-r*_-o*N)*y,t[4]=(n*_-u*L+o*I)*y,t[5]=(r*L-n*R-o*p)*y,t[6]=(m*O-v*x+E*A)*y,t[7]=(v*d-l*O-E*S)*y,t[8]=(l*x-m*d+E*P)*y,t):null},n.projection=function(t,a,n){return t[0]=2/a,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/n,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t},n.str=function(t){return\"mat3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t},n.subtract=o,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]},n.equals=function(t,a){var n=t[0],u=t[1],o=t[2],e=t[3],i=t[4],c=t[5],s=t[6],M=t[7],h=t[8],f=a[0],b=a[1],l=a[2],m=a[3],v=a[4],E=a[5],P=a[6],S=a[7],d=a[8];return Math.abs(n-f)<=r.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(u-b)<=r.EPSILON*Math.max(1,Math.abs(u),Math.abs(b))&&Math.abs(o-l)<=r.EPSILON*Math.max(1,Math.abs(o),Math.abs(l))&&Math.abs(e-m)<=r.EPSILON*Math.max(1,Math.abs(e),Math.abs(m))&&Math.abs(i-v)<=r.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(c-E)<=r.EPSILON*Math.max(1,Math.abs(c),Math.abs(E))&&Math.abs(s-P)<=r.EPSILON*Math.max(1,Math.abs(s),Math.abs(P))&&Math.abs(M-S)<=r.EPSILON*Math.max(1,Math.abs(M),Math.abs(S))&&Math.abs(h-d)<=r.EPSILON*Math.max(1,Math.abs(h),Math.abs(d))},n.mul=u,n.sub=o},\n",
       "      \"a427635f32\": function _(t,a,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function h(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function o(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],e=a[5],s=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],v=a[12],m=a[13],P=a[14],E=a[15],S=n[0],I=n[1],O=n[2],p=n[3];return t[0]=S*r+I*M+O*c+p*v,t[1]=S*h+I*e+O*f+p*m,t[2]=S*o+I*s+O*b+p*P,t[3]=S*u+I*i+O*l+p*E,S=n[4],I=n[5],O=n[6],p=n[7],t[4]=S*r+I*M+O*c+p*v,t[5]=S*h+I*e+O*f+p*m,t[6]=S*o+I*s+O*b+p*P,t[7]=S*u+I*i+O*l+p*E,S=n[8],I=n[9],O=n[10],p=n[11],t[8]=S*r+I*M+O*c+p*v,t[9]=S*h+I*e+O*f+p*m,t[10]=S*o+I*s+O*b+p*P,t[11]=S*u+I*i+O*l+p*E,S=n[12],I=n[13],O=n[14],p=n[15],t[12]=S*r+I*M+O*c+p*v,t[13]=S*h+I*e+O*f+p*m,t[14]=S*o+I*s+O*b+p*P,t[15]=S*u+I*i+O*l+p*E,t}function u(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=r+r,e=h+h,s=o+o,i=r*M,c=r*e,f=r*s,b=h*e,l=h*s,v=o*s,m=u*M,P=u*e,E=u*s;return t[0]=1-(b+v),t[1]=c+E,t[2]=f-P,t[3]=0,t[4]=c-E,t[5]=1-(i+v),t[6]=l+m,t[7]=0,t[8]=f+P,t[9]=l-m,t[10]=1-(i+b),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function M(t,a){var n=a[0],r=a[1],h=a[2],o=a[4],u=a[5],M=a[6],e=a[8],s=a[9],i=a[10];return t[0]=Math.hypot(n,r,h),t[1]=Math.hypot(o,u,M),t[2]=Math.hypot(e,s,i),t}function e(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t[9]=a[9]-n[9],t[10]=a[10]-n[10],t[11]=a[11]-n[11],t[12]=a[12]-n[12],t[13]=a[13]-n[13],t[14]=a[14]-n[14],t[15]=a[15]-n[15],t}n.create=function(){var t=new r.ARRAY_TYPE(16);return r.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},n.clone=function(t){var a=new r.ARRAY_TYPE(16);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a[9]=t[9],a[10]=t[10],a[11]=t[11],a[12]=t[12],a[13]=t[13],a[14]=t[14],a[15]=t[15],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.fromValues=function(t,a,n,h,o,u,M,e,s,i,c,f,b,l,v,m){var P=new r.ARRAY_TYPE(16);return P[0]=t,P[1]=a,P[2]=n,P[3]=h,P[4]=o,P[5]=u,P[6]=M,P[7]=e,P[8]=s,P[9]=i,P[10]=c,P[11]=f,P[12]=b,P[13]=l,P[14]=v,P[15]=m,P},n.set=function(t,a,n,r,h,o,u,M,e,s,i,c,f,b,l,v,m){return t[0]=a,t[1]=n,t[2]=r,t[3]=h,t[4]=o,t[5]=u,t[6]=M,t[7]=e,t[8]=s,t[9]=i,t[10]=c,t[11]=f,t[12]=b,t[13]=l,t[14]=v,t[15]=m,t},n.identity=h,n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],h=a[3],o=a[6],u=a[7],M=a[11];t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=n,t[6]=a[9],t[7]=a[13],t[8]=r,t[9]=o,t[11]=a[14],t[12]=h,t[13]=u,t[14]=M}else t[0]=a[0],t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=a[1],t[5]=a[5],t[6]=a[9],t[7]=a[13],t[8]=a[2],t[9]=a[6],t[10]=a[10],t[11]=a[14],t[12]=a[3],t[13]=a[7],t[14]=a[11],t[15]=a[15];return t},n.invert=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],e=a[6],s=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],v=a[13],m=a[14],P=a[15],E=n*M-r*u,S=n*e-h*u,I=n*s-o*u,O=r*e-h*M,p=r*s-o*M,L=h*s-o*e,N=i*v-c*l,R=i*m-f*l,x=i*P-b*l,y=c*m-f*v,A=c*P-b*v,Y=f*P-b*m,d=E*Y-S*A+I*y+O*x-p*R+L*N;return d?(d=1/d,t[0]=(M*Y-e*A+s*y)*d,t[1]=(h*A-r*Y-o*y)*d,t[2]=(v*L-m*p+P*O)*d,t[3]=(f*p-c*L-b*O)*d,t[4]=(e*x-u*Y-s*R)*d,t[5]=(n*Y-h*x+o*R)*d,t[6]=(m*I-l*L-P*S)*d,t[7]=(i*L-f*I+b*S)*d,t[8]=(u*A-M*x+s*N)*d,t[9]=(r*x-n*A-o*N)*d,t[10]=(l*p-v*I+P*E)*d,t[11]=(c*I-i*p-b*E)*d,t[12]=(M*R-u*y-e*N)*d,t[13]=(n*y-r*R+h*N)*d,t[14]=(v*S-l*O-m*E)*d,t[15]=(i*O-c*S+f*E)*d,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],e=a[6],s=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],v=a[13],m=a[14],P=a[15];return t[0]=M*(f*P-b*m)-c*(e*P-s*m)+v*(e*b-s*f),t[1]=-(r*(f*P-b*m)-c*(h*P-o*m)+v*(h*b-o*f)),t[2]=r*(e*P-s*m)-M*(h*P-o*m)+v*(h*s-o*e),t[3]=-(r*(e*b-s*f)-M*(h*b-o*f)+c*(h*s-o*e)),t[4]=-(u*(f*P-b*m)-i*(e*P-s*m)+l*(e*b-s*f)),t[5]=n*(f*P-b*m)-i*(h*P-o*m)+l*(h*b-o*f),t[6]=-(n*(e*P-s*m)-u*(h*P-o*m)+l*(h*s-o*e)),t[7]=n*(e*b-s*f)-u*(h*b-o*f)+i*(h*s-o*e),t[8]=u*(c*P-b*v)-i*(M*P-s*v)+l*(M*b-s*c),t[9]=-(n*(c*P-b*v)-i*(r*P-o*v)+l*(r*b-o*c)),t[10]=n*(M*P-s*v)-u*(r*P-o*v)+l*(r*s-o*M),t[11]=-(n*(M*b-s*c)-u*(r*b-o*c)+i*(r*s-o*M)),t[12]=-(u*(c*m-f*v)-i*(M*m-e*v)+l*(M*f-e*c)),t[13]=n*(c*m-f*v)-i*(r*m-h*v)+l*(r*f-h*c),t[14]=-(n*(M*m-e*v)-u*(r*m-h*v)+l*(r*e-h*M)),t[15]=n*(M*f-e*c)-u*(r*f-h*c)+i*(r*e-h*M),t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],h=t[3],o=t[4],u=t[5],M=t[6],e=t[7],s=t[8],i=t[9],c=t[10],f=t[11],b=t[12],l=t[13],v=t[14],m=t[15];return(a*u-n*o)*(c*m-f*v)-(a*M-r*o)*(i*m-f*l)+(a*e-h*o)*(i*v-c*l)+(n*M-r*u)*(s*m-f*b)-(n*e-h*u)*(s*v-c*b)+(r*e-h*M)*(s*l-i*b)},n.multiply=o,n.translate=function(t,a,n){var r,h,o,u,M,e,s,i,c,f,b,l,v=n[0],m=n[1],P=n[2];return a===t?(t[12]=a[0]*v+a[4]*m+a[8]*P+a[12],t[13]=a[1]*v+a[5]*m+a[9]*P+a[13],t[14]=a[2]*v+a[6]*m+a[10]*P+a[14],t[15]=a[3]*v+a[7]*m+a[11]*P+a[15]):(r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],e=a[5],s=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],t[0]=r,t[1]=h,t[2]=o,t[3]=u,t[4]=M,t[5]=e,t[6]=s,t[7]=i,t[8]=c,t[9]=f,t[10]=b,t[11]=l,t[12]=r*v+M*m+c*P+a[12],t[13]=h*v+e*m+f*P+a[13],t[14]=o*v+s*m+b*P+a[14],t[15]=u*v+i*m+l*P+a[15]),t},n.scale=function(t,a,n){var r=n[0],h=n[1],o=n[2];return t[0]=a[0]*r,t[1]=a[1]*r,t[2]=a[2]*r,t[3]=a[3]*r,t[4]=a[4]*h,t[5]=a[5]*h,t[6]=a[6]*h,t[7]=a[7]*h,t[8]=a[8]*o,t[9]=a[9]*o,t[10]=a[10]*o,t[11]=a[11]*o,t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.rotate=function(t,a,n,h){var o,u,M,e,s,i,c,f,b,l,v,m,P,E,S,I,O,p,L,N,R,x,y,A,Y=h[0],d=h[1],g=h[2],T=Math.hypot(Y,d,g);return T<r.EPSILON?null:(Y*=T=1/T,d*=T,g*=T,o=Math.sin(n),M=1-(u=Math.cos(n)),e=a[0],s=a[1],i=a[2],c=a[3],f=a[4],b=a[5],l=a[6],v=a[7],m=a[8],P=a[9],E=a[10],S=a[11],I=Y*Y*M+u,O=d*Y*M+g*o,p=g*Y*M-d*o,L=Y*d*M-g*o,N=d*d*M+u,R=g*d*M+Y*o,x=Y*g*M+d*o,y=d*g*M-Y*o,A=g*g*M+u,t[0]=e*I+f*O+m*p,t[1]=s*I+b*O+P*p,t[2]=i*I+l*O+E*p,t[3]=c*I+v*O+S*p,t[4]=e*L+f*N+m*R,t[5]=s*L+b*N+P*R,t[6]=i*L+l*N+E*R,t[7]=c*L+v*N+S*R,t[8]=e*x+f*y+m*A,t[9]=s*x+b*y+P*A,t[10]=i*x+l*y+E*A,t[11]=c*x+v*y+S*A,a!==t&&(t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t)},n.rotateX=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[4],u=a[5],M=a[6],e=a[7],s=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[4]=o*h+s*r,t[5]=u*h+i*r,t[6]=M*h+c*r,t[7]=e*h+f*r,t[8]=s*h-o*r,t[9]=i*h-u*r,t[10]=c*h-M*r,t[11]=f*h-e*r,t},n.rotateY=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],e=a[3],s=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h-s*r,t[1]=u*h-i*r,t[2]=M*h-c*r,t[3]=e*h-f*r,t[8]=o*r+s*h,t[9]=u*r+i*h,t[10]=M*r+c*h,t[11]=e*r+f*h,t},n.rotateZ=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],e=a[3],s=a[4],i=a[5],c=a[6],f=a[7];return a!==t&&(t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h+s*r,t[1]=u*h+i*r,t[2]=M*h+c*r,t[3]=e*h+f*r,t[4]=s*h-o*r,t[5]=i*h-u*r,t[6]=c*h-M*r,t[7]=f*h-e*r,t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=a[0],t[13]=a[1],t[14]=a[2],t[15]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=a[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotation=function(t,a,n){var h,o,u,M=n[0],e=n[1],s=n[2],i=Math.hypot(M,e,s);return i<r.EPSILON?null:(M*=i=1/i,e*=i,s*=i,h=Math.sin(a),u=1-(o=Math.cos(a)),t[0]=M*M*u+o,t[1]=e*M*u+s*h,t[2]=s*M*u-e*h,t[3]=0,t[4]=M*e*u-s*h,t[5]=e*e*u+o,t[6]=s*e*u+M*h,t[7]=0,t[8]=M*s*u+e*h,t[9]=e*s*u-M*h,t[10]=s*s*u+o,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)},n.fromXRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromYRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromZRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotationTranslation=u,n.fromQuat2=function(t,a){var n=new r.ARRAY_TYPE(3),h=-a[0],o=-a[1],M=-a[2],e=a[3],s=a[4],i=a[5],c=a[6],f=a[7],b=h*h+o*o+M*M+e*e;return b>0?(n[0]=2*(s*e+f*h+i*M-c*o)/b,n[1]=2*(i*e+f*o+c*h-s*M)/b,n[2]=2*(c*e+f*M+s*o-i*h)/b):(n[0]=2*(s*e+f*h+i*M-c*o),n[1]=2*(i*e+f*o+c*h-s*M),n[2]=2*(c*e+f*M+s*o-i*h)),u(t,a,n),t},n.getTranslation=function(t,a){return t[0]=a[12],t[1]=a[13],t[2]=a[14],t},n.getScaling=M,n.getRotation=function(t,a){var n=new r.ARRAY_TYPE(3);M(n,a);var h=1/n[0],o=1/n[1],u=1/n[2],e=a[0]*h,s=a[1]*o,i=a[2]*u,c=a[4]*h,f=a[5]*o,b=a[6]*u,l=a[8]*h,v=a[9]*o,m=a[10]*u,P=e+f+m,E=0;return P>0?(E=2*Math.sqrt(P+1),t[3]=.25*E,t[0]=(b-v)/E,t[1]=(l-i)/E,t[2]=(s-c)/E):e>f&&e>m?(E=2*Math.sqrt(1+e-f-m),t[3]=(b-v)/E,t[0]=.25*E,t[1]=(s+c)/E,t[2]=(l+i)/E):f>m?(E=2*Math.sqrt(1+f-e-m),t[3]=(l-i)/E,t[0]=(s+c)/E,t[1]=.25*E,t[2]=(b+v)/E):(E=2*Math.sqrt(1+m-e-f),t[3]=(s-c)/E,t[0]=(l+i)/E,t[1]=(b+v)/E,t[2]=.25*E),t},n.fromRotationTranslationScale=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=a[3],e=h+h,s=o+o,i=u+u,c=h*e,f=h*s,b=h*i,l=o*s,v=o*i,m=u*i,P=M*e,E=M*s,S=M*i,I=r[0],O=r[1],p=r[2];return t[0]=(1-(l+m))*I,t[1]=(f+S)*I,t[2]=(b-E)*I,t[3]=0,t[4]=(f-S)*O,t[5]=(1-(c+m))*O,t[6]=(v+P)*O,t[7]=0,t[8]=(b+E)*p,t[9]=(v-P)*p,t[10]=(1-(c+l))*p,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t},n.fromRotationTranslationScaleOrigin=function(t,a,n,r,h){var o=a[0],u=a[1],M=a[2],e=a[3],s=o+o,i=u+u,c=M+M,f=o*s,b=o*i,l=o*c,v=u*i,m=u*c,P=M*c,E=e*s,S=e*i,I=e*c,O=r[0],p=r[1],L=r[2],N=h[0],R=h[1],x=h[2],y=(1-(v+P))*O,A=(b+I)*O,Y=(l-S)*O,d=(b-I)*p,g=(1-(f+P))*p,T=(m+E)*p,_=(l+S)*L,q=(m-E)*L,w=(1-(f+v))*L;return t[0]=y,t[1]=A,t[2]=Y,t[3]=0,t[4]=d,t[5]=g,t[6]=T,t[7]=0,t[8]=_,t[9]=q,t[10]=w,t[11]=0,t[12]=n[0]+N-(y*N+d*R+_*x),t[13]=n[1]+R-(A*N+g*R+q*x),t[14]=n[2]+x-(Y*N+T*R+w*x),t[15]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=n+n,M=r+r,e=h+h,s=n*u,i=r*u,c=r*M,f=h*u,b=h*M,l=h*e,v=o*u,m=o*M,P=o*e;return t[0]=1-c-l,t[1]=i+P,t[2]=f-m,t[3]=0,t[4]=i-P,t[5]=1-s-l,t[6]=b+v,t[7]=0,t[8]=f+m,t[9]=b-v,t[10]=1-s-c,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.frustum=function(t,a,n,r,h,o,u){var M=1/(n-a),e=1/(h-r),s=1/(o-u);return t[0]=2*o*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*o*e,t[6]=0,t[7]=0,t[8]=(n+a)*M,t[9]=(h+r)*e,t[10]=(u+o)*s,t[11]=-1,t[12]=0,t[13]=0,t[14]=u*o*2*s,t[15]=0,t},n.perspective=function(t,a,n,r,h){var o,u=1/Math.tan(a/2);return t[0]=u/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=u,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=h&&h!==1/0?(o=1/(r-h),t[10]=(h+r)*o,t[14]=2*h*r*o):(t[10]=-1,t[14]=-2*r),t},n.perspectiveFromFieldOfView=function(t,a,n,r){var h=Math.tan(a.upDegrees*Math.PI/180),o=Math.tan(a.downDegrees*Math.PI/180),u=Math.tan(a.leftDegrees*Math.PI/180),M=Math.tan(a.rightDegrees*Math.PI/180),e=2/(u+M),s=2/(h+o);return t[0]=e,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=s,t[6]=0,t[7]=0,t[8]=-(u-M)*e*.5,t[9]=(h-o)*s*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t},n.ortho=function(t,a,n,r,h,o,u){var M=1/(a-n),e=1/(r-h),s=1/(o-u);return t[0]=-2*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*e,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*s,t[11]=0,t[12]=(a+n)*M,t[13]=(h+r)*e,t[14]=(u+o)*s,t[15]=1,t},n.lookAt=function(t,a,n,o){var u,M,e,s,i,c,f,b,l,v,m=a[0],P=a[1],E=a[2],S=o[0],I=o[1],O=o[2],p=n[0],L=n[1],N=n[2];return Math.abs(m-p)<r.EPSILON&&Math.abs(P-L)<r.EPSILON&&Math.abs(E-N)<r.EPSILON?h(t):(f=m-p,b=P-L,l=E-N,u=I*(l*=v=1/Math.hypot(f,b,l))-O*(b*=v),M=O*(f*=v)-S*l,e=S*b-I*f,(v=Math.hypot(u,M,e))?(u*=v=1/v,M*=v,e*=v):(u=0,M=0,e=0),s=b*e-l*M,i=l*u-f*e,c=f*M-b*u,(v=Math.hypot(s,i,c))?(s*=v=1/v,i*=v,c*=v):(s=0,i=0,c=0),t[0]=u,t[1]=s,t[2]=f,t[3]=0,t[4]=M,t[5]=i,t[6]=b,t[7]=0,t[8]=e,t[9]=c,t[10]=l,t[11]=0,t[12]=-(u*m+M*P+e*E),t[13]=-(s*m+i*P+c*E),t[14]=-(f*m+b*P+l*E),t[15]=1,t)},n.targetTo=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=r[0],e=r[1],s=r[2],i=h-n[0],c=o-n[1],f=u-n[2],b=i*i+c*c+f*f;b>0&&(i*=b=1/Math.sqrt(b),c*=b,f*=b);var l=e*f-s*c,v=s*i-M*f,m=M*c-e*i;return(b=l*l+v*v+m*m)>0&&(l*=b=1/Math.sqrt(b),v*=b,m*=b),t[0]=l,t[1]=v,t[2]=m,t[3]=0,t[4]=c*m-f*v,t[5]=f*l-i*m,t[6]=i*v-c*l,t[7]=0,t[8]=i,t[9]=c,t[10]=f,t[11]=0,t[12]=h,t[13]=o,t[14]=u,t[15]=1,t},n.str=function(t){return\"mat4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\", \"+t[9]+\", \"+t[10]+\", \"+t[11]+\", \"+t[12]+\", \"+t[13]+\", \"+t[14]+\", \"+t[15]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t[9]=a[9]+n[9],t[10]=a[10]+n[10],t[11]=a[11]+n[11],t[12]=a[12]+n[12],t[13]=a[13]+n[13],t[14]=a[14]+n[14],t[15]=a[15]+n[15],t},n.subtract=e,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t[9]=a[9]*n,t[10]=a[10]*n,t[11]=a[11]*n,t[12]=a[12]*n,t[13]=a[13]*n,t[14]=a[14]*n,t[15]=a[15]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t[9]=a[9]+n[9]*r,t[10]=a[10]+n[10]*r,t[11]=a[11]+n[11]*r,t[12]=a[12]+n[12]*r,t[13]=a[13]+n[13]*r,t[14]=a[14]+n[14]*r,t[15]=a[15]+n[15]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]&&t[9]===a[9]&&t[10]===a[10]&&t[11]===a[11]&&t[12]===a[12]&&t[13]===a[13]&&t[14]===a[14]&&t[15]===a[15]},n.equals=function(t,a){var n=t[0],h=t[1],o=t[2],u=t[3],M=t[4],e=t[5],s=t[6],i=t[7],c=t[8],f=t[9],b=t[10],l=t[11],v=t[12],m=t[13],P=t[14],E=t[15],S=a[0],I=a[1],O=a[2],p=a[3],L=a[4],N=a[5],R=a[6],x=a[7],y=a[8],A=a[9],Y=a[10],d=a[11],g=a[12],T=a[13],_=a[14],q=a[15];return Math.abs(n-S)<=r.EPSILON*Math.max(1,Math.abs(n),Math.abs(S))&&Math.abs(h-I)<=r.EPSILON*Math.max(1,Math.abs(h),Math.abs(I))&&Math.abs(o-O)<=r.EPSILON*Math.max(1,Math.abs(o),Math.abs(O))&&Math.abs(u-p)<=r.EPSILON*Math.max(1,Math.abs(u),Math.abs(p))&&Math.abs(M-L)<=r.EPSILON*Math.max(1,Math.abs(M),Math.abs(L))&&Math.abs(e-N)<=r.EPSILON*Math.max(1,Math.abs(e),Math.abs(N))&&Math.abs(s-R)<=r.EPSILON*Math.max(1,Math.abs(s),Math.abs(R))&&Math.abs(i-x)<=r.EPSILON*Math.max(1,Math.abs(i),Math.abs(x))&&Math.abs(c-y)<=r.EPSILON*Math.max(1,Math.abs(c),Math.abs(y))&&Math.abs(f-A)<=r.EPSILON*Math.max(1,Math.abs(f),Math.abs(A))&&Math.abs(b-Y)<=r.EPSILON*Math.max(1,Math.abs(b),Math.abs(Y))&&Math.abs(l-d)<=r.EPSILON*Math.max(1,Math.abs(l),Math.abs(d))&&Math.abs(v-g)<=r.EPSILON*Math.max(1,Math.abs(v),Math.abs(g))&&Math.abs(m-T)<=r.EPSILON*Math.max(1,Math.abs(m),Math.abs(T))&&Math.abs(P-_)<=r.EPSILON*Math.max(1,Math.abs(P),Math.abs(_))&&Math.abs(E-q)<=r.EPSILON*Math.max(1,Math.abs(E),Math.abs(q))},n.mul=o,n.sub=e},\n",
       "      \"eb06fc032a\": function _(t,r,a){Object.defineProperty(a,\"__esModule\",{value:!0});const n=t(\"tslib\"),e=n.__importStar(t(\"68ca94c15c\")),o=n.__importStar(t(\"0285c50a7e\")),s=n.__importStar(t(\"2c5eb22089\")),u=n.__importStar(t(\"c1aa33d719\"));function c(){var t=new e.ARRAY_TYPE(4);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function i(t,r,a){a*=.5;var n=Math.sin(a);return t[0]=n*r[0],t[1]=n*r[1],t[2]=n*r[2],t[3]=Math.cos(a),t}function h(t,r,a){var n=r[0],e=r[1],o=r[2],s=r[3],u=a[0],c=a[1],i=a[2],h=a[3];return t[0]=n*h+s*u+e*i-o*c,t[1]=e*h+s*c+o*u-n*i,t[2]=o*h+s*i+n*c-e*u,t[3]=s*h-n*u-e*c-o*i,t}function M(t,r){var a=r[0],n=r[1],e=r[2],o=r[3],s=Math.sqrt(a*a+n*n+e*e),u=Math.exp(o),c=s>0?u*Math.sin(s)/s:0;return t[0]=a*c,t[1]=n*c,t[2]=e*c,t[3]=u*Math.cos(s),t}function l(t,r){var a=r[0],n=r[1],e=r[2],o=r[3],s=Math.sqrt(a*a+n*n+e*e),u=s>0?Math.atan2(s,o)/s:0;return t[0]=a*u,t[1]=n*u,t[2]=e*u,t[3]=.5*Math.log(a*a+n*n+e*e+o*o),t}function f(t,r,a,n){var o,s,u,c,i,h=r[0],M=r[1],l=r[2],f=r[3],v=a[0],m=a[1],q=a[2],d=a[3];return(s=h*v+M*m+l*q+f*d)<0&&(s=-s,v=-v,m=-m,q=-q,d=-d),1-s>e.EPSILON?(o=Math.acos(s),u=Math.sin(o),c=Math.sin((1-n)*o)/u,i=Math.sin(n*o)/u):(c=1-n,i=n),t[0]=c*h+i*v,t[1]=c*M+i*m,t[2]=c*l+i*q,t[3]=c*f+i*d,t}function v(t,r){var a,n=r[0]+r[4]+r[8];if(n>0)a=Math.sqrt(n+1),t[3]=.5*a,a=.5/a,t[0]=(r[5]-r[7])*a,t[1]=(r[6]-r[2])*a,t[2]=(r[1]-r[3])*a;else{var e=0;r[4]>r[0]&&(e=1),r[8]>r[3*e+e]&&(e=2);var o=(e+1)%3,s=(e+2)%3;a=Math.sqrt(r[3*e+e]-r[3*o+o]-r[3*s+s]+1),t[e]=.5*a,a=.5/a,t[3]=(r[3*o+s]-r[3*s+o])*a,t[o]=(r[3*o+e]+r[3*e+o])*a,t[s]=(r[3*s+e]+r[3*e+s])*a}return t}var m,q,d,p,A,g;a.create=c,a.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},a.setAxisAngle=i,a.getAxisAngle=function(t,r){var a=2*Math.acos(r[3]),n=Math.sin(a/2);return n>e.EPSILON?(t[0]=r[0]/n,t[1]=r[1]/n,t[2]=r[2]/n):(t[0]=1,t[1]=0,t[2]=0),a},a.getAngle=function(t,r){var n=a.dot(t,r);return Math.acos(2*n*n-1)},a.multiply=h,a.rotateX=function(t,r,a){a*=.5;var n=r[0],e=r[1],o=r[2],s=r[3],u=Math.sin(a),c=Math.cos(a);return t[0]=n*c+s*u,t[1]=e*c+o*u,t[2]=o*c-e*u,t[3]=s*c-n*u,t},a.rotateY=function(t,r,a){a*=.5;var n=r[0],e=r[1],o=r[2],s=r[3],u=Math.sin(a),c=Math.cos(a);return t[0]=n*c-o*u,t[1]=e*c+s*u,t[2]=o*c+n*u,t[3]=s*c-e*u,t},a.rotateZ=function(t,r,a){a*=.5;var n=r[0],e=r[1],o=r[2],s=r[3],u=Math.sin(a),c=Math.cos(a);return t[0]=n*c+e*u,t[1]=e*c-n*u,t[2]=o*c+s*u,t[3]=s*c-o*u,t},a.calculateW=function(t,r){var a=r[0],n=r[1],e=r[2];return t[0]=a,t[1]=n,t[2]=e,t[3]=Math.sqrt(Math.abs(1-a*a-n*n-e*e)),t},a.exp=M,a.ln=l,a.pow=function(t,r,n){return l(t,r),a.scale(t,t,n),M(t,t),t},a.slerp=f,a.random=function(t){var r=e.RANDOM(),a=e.RANDOM(),n=e.RANDOM(),o=Math.sqrt(1-r),s=Math.sqrt(r);return t[0]=o*Math.sin(2*Math.PI*a),t[1]=o*Math.cos(2*Math.PI*a),t[2]=s*Math.sin(2*Math.PI*n),t[3]=s*Math.cos(2*Math.PI*n),t},a.invert=function(t,r){var a=r[0],n=r[1],e=r[2],o=r[3],s=a*a+n*n+e*e+o*o,u=s?1/s:0;return t[0]=-a*u,t[1]=-n*u,t[2]=-e*u,t[3]=o*u,t},a.conjugate=function(t,r){return t[0]=-r[0],t[1]=-r[1],t[2]=-r[2],t[3]=r[3],t},a.fromMat3=v,a.fromEuler=function(t,r,a,n){var e=.5*Math.PI/180;r*=e,a*=e,n*=e;var o=Math.sin(r),s=Math.cos(r),u=Math.sin(a),c=Math.cos(a),i=Math.sin(n),h=Math.cos(n);return t[0]=o*c*h-s*u*i,t[1]=s*u*h+o*c*i,t[2]=s*c*i-o*u*h,t[3]=s*c*h+o*u*i,t},a.str=function(t){return\"quat(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},a.clone=u.clone,a.fromValues=u.fromValues,a.copy=u.copy,a.set=u.set,a.add=u.add,a.mul=h,a.scale=u.scale,a.dot=u.dot,a.lerp=u.lerp,a.length=u.length,a.len=a.length,a.squaredLength=u.squaredLength,a.sqrLen=a.squaredLength,a.normalize=u.normalize,a.exactEquals=u.exactEquals,a.equals=u.equals,a.rotationTo=(m=s.create(),q=s.fromValues(1,0,0),d=s.fromValues(0,1,0),function(t,r,n){var e=s.dot(r,n);return e<-.999999?(s.cross(m,q,r),s.len(m)<1e-6&&s.cross(m,d,r),s.normalize(m,m),i(t,m,Math.PI),t):e>.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(s.cross(m,r,n),t[0]=m[0],t[1]=m[1],t[2]=m[2],t[3]=1+e,a.normalize(t,t))}),a.sqlerp=(p=c(),A=c(),function(t,r,a,n,e,o){return f(p,r,e,o),f(A,a,n,o),f(t,p,A,2*o*(1-o)),t}),a.setAxes=(g=o.create(),function(t,r,n,e){return g[0]=n[0],g[3]=n[1],g[6]=n[2],g[1]=e[0],g[4]=e[1],g[7]=e[2],g[2]=-r[0],g[5]=-r[1],g[8]=-r[2],a.normalize(t,v(t,g))})},\n",
       "      \"2c5eb22089\": function _(t,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(){var t=new a.ARRAY_TYPE(3);return a.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function e(t){var n=t[0],r=t[1],a=t[2];return Math.hypot(n,r,a)}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t}function i(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t}function c(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t}function h(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return Math.hypot(r,a,u)}function M(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return r*r+a*a+u*u}function s(t){var n=t[0],r=t[1],a=t[2];return n*n+r*r+a*a}function f(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}var l;r.create=u,r.clone=function(t){var n=new a.ARRAY_TYPE(3);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n},r.length=e,r.fromValues=function(t,n,r){var u=new a.ARRAY_TYPE(3);return u[0]=t,u[1]=n,u[2]=r,u},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t},r.set=function(t,n,r,a){return t[0]=n,t[1]=r,t[2]=a,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t},r.subtract=o,r.multiply=i,r.divide=c,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t},r.distance=h,r.squaredDistance=M,r.squaredLength=s,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=r*r+a*a+u*u;return e>0&&(e=1/Math.sqrt(e)),t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t},r.dot=f,r.cross=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2];return t[0]=u*c-e*i,t[1]=e*o-a*c,t[2]=a*i-u*o,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t},r.hermite=function(t,n,r,a,u,e){var o=e*e,i=o*(2*e-3)+1,c=o*(e-2)+e,h=o*(e-1),M=o*(3-2*e);return t[0]=n[0]*i+r[0]*c+a[0]*h+u[0]*M,t[1]=n[1]*i+r[1]*c+a[1]*h+u[1]*M,t[2]=n[2]*i+r[2]*c+a[2]*h+u[2]*M,t},r.bezier=function(t,n,r,a,u,e){var o=1-e,i=o*o,c=e*e,h=i*o,M=3*e*i,s=3*c*o,f=c*e;return t[0]=n[0]*h+r[0]*M+a[0]*s+u[0]*f,t[1]=n[1]*h+r[1]*M+a[1]*s+u[1]*f,t[2]=n[2]*h+r[2]*M+a[2]*s+u[2]*f,t},r.random=function(t,n){n=n||1;var r=2*a.RANDOM()*Math.PI,u=2*a.RANDOM()-1,e=Math.sqrt(1-u*u)*n;return t[0]=Math.cos(r)*e,t[1]=Math.sin(r)*e,t[2]=u*n,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[3]*a+r[7]*u+r[11]*e+r[15];return o=o||1,t[0]=(r[0]*a+r[4]*u+r[8]*e+r[12])/o,t[1]=(r[1]*a+r[5]*u+r[9]*e+r[13])/o,t[2]=(r[2]*a+r[6]*u+r[10]*e+r[14])/o,t},r.transformMat3=function(t,n,r){var a=n[0],u=n[1],e=n[2];return t[0]=a*r[0]+u*r[3]+e*r[6],t[1]=a*r[1]+u*r[4]+e*r[7],t[2]=a*r[2]+u*r[5]+e*r[8],t},r.transformQuat=function(t,n,r){var a=r[0],u=r[1],e=r[2],o=r[3],i=n[0],c=n[1],h=n[2],M=u*h-e*c,s=e*i-a*h,f=a*c-u*i,l=u*f-e*s,v=e*M-a*f,m=a*s-u*M,d=2*o;return M*=d,s*=d,f*=d,l*=2,v*=2,m*=2,t[0]=i+M+l,t[1]=c+s+v,t[2]=h+f+m,t},r.rotateX=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0],e[1]=u[1]*Math.cos(a)-u[2]*Math.sin(a),e[2]=u[1]*Math.sin(a)+u[2]*Math.cos(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateY=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[2]*Math.sin(a)+u[0]*Math.cos(a),e[1]=u[1],e[2]=u[2]*Math.cos(a)-u[0]*Math.sin(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateZ=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0]*Math.cos(a)-u[1]*Math.sin(a),e[1]=u[0]*Math.sin(a)+u[1]*Math.cos(a),e[2]=u[2],t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.angle=function(t,n){var r=t[0],a=t[1],u=t[2],e=n[0],o=n[1],i=n[2],c=Math.sqrt(r*r+a*a+u*u)*Math.sqrt(e*e+o*o+i*i),h=c&&f(t,n)/c;return Math.acos(Math.min(Math.max(h,-1),1))},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t},r.str=function(t){return\"vec3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]},r.equals=function(t,n){var r=t[0],u=t[1],e=t[2],o=n[0],i=n[1],c=n[2];return Math.abs(r-o)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(u-i)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(i))&&Math.abs(e-c)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(c))},r.sub=o,r.mul=i,r.div=c,r.dist=h,r.sqrDist=M,r.len=e,r.sqrLen=s,r.forEach=(l=u(),function(t,n,r,a,u,e){var o,i;for(n||(n=3),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)l[0]=t[o],l[1]=t[o+1],l[2]=t[o+2],u(l,l,e),t[o]=l[0],t[o+1]=l[1],t[o+2]=l[2];return t})},\n",
       "      \"c1aa33d719\": function _(t,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(){var t=new a.ARRAY_TYPE(4);return a.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function e(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}function o(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t[3]=n[3]*r[3],t}function i(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t[3]=n[3]/r[3],t}function c(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return Math.hypot(r,a,u,e)}function h(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return r*r+a*a+u*u+e*e}function M(t){var n=t[0],r=t[1],a=t[2],u=t[3];return Math.hypot(n,r,a,u)}function f(t){var n=t[0],r=t[1],a=t[2],u=t[3];return n*n+r*r+a*a+u*u}var s;r.create=u,r.clone=function(t){var n=new a.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.fromValues=function(t,n,r,u){var e=new a.ARRAY_TYPE(4);return e[0]=t,e[1]=n,e[2]=r,e[3]=u,e},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=e,r.multiply=o,r.divide=i,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t[3]=Math.ceil(n[3]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t[3]=Math.floor(n[3]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t[3]=Math.min(n[3],r[3]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t[3]=Math.max(n[3],r[3]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t[3]=Math.round(n[3]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.distance=c,r.squaredDistance=h,r.length=M,r.squaredLength=f,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=-n[3],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t[3]=1/n[3],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*r+a*a+u*u+e*e;return o>0&&(o=1/Math.sqrt(o)),t[0]=r*o,t[1]=a*o,t[2]=u*o,t[3]=e*o,t},r.dot=function(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]+t[3]*n[3]},r.cross=function(t,n,r,a){var u=r[0]*a[1]-r[1]*a[0],e=r[0]*a[2]-r[2]*a[0],o=r[0]*a[3]-r[3]*a[0],i=r[1]*a[2]-r[2]*a[1],c=r[1]*a[3]-r[3]*a[1],h=r[2]*a[3]-r[3]*a[2],M=n[0],f=n[1],s=n[2],l=n[3];return t[0]=f*h-s*c+l*i,t[1]=-M*h+s*o-l*e,t[2]=M*c-f*o+l*u,t[3]=-M*i+f*e-s*u,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2],i=n[3];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t[3]=i+a*(r[3]-i),t},r.random=function(t,n){var r,u,e,o,i,c;n=n||1;do{i=(r=2*a.RANDOM()-1)*r+(u=2*a.RANDOM()-1)*u}while(i>=1);do{c=(e=2*a.RANDOM()-1)*e+(o=2*a.RANDOM()-1)*o}while(c>=1);var h=Math.sqrt((1-i)/c);return t[0]=n*r,t[1]=n*u,t[2]=n*e*h,t[3]=n*o*h,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3];return t[0]=r[0]*a+r[4]*u+r[8]*e+r[12]*o,t[1]=r[1]*a+r[5]*u+r[9]*e+r[13]*o,t[2]=r[2]*a+r[6]*u+r[10]*e+r[14]*o,t[3]=r[3]*a+r[7]*u+r[11]*e+r[15]*o,t},r.transformQuat=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2],h=r[3],M=h*a+i*e-c*u,f=h*u+c*a-o*e,s=h*e+o*u-i*a,l=-o*a-i*u-c*e;return t[0]=M*h+l*-o+f*-c-s*-i,t[1]=f*h+l*-i+s*-o-M*-c,t[2]=s*h+l*-c+M*-i-f*-o,t[3]=n[3],t},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t},r.str=function(t){return\"vec4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],u=t[1],e=t[2],o=t[3],i=n[0],c=n[1],h=n[2],M=n[3];return Math.abs(r-i)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(u-c)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(c))&&Math.abs(e-h)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(h))&&Math.abs(o-M)<=a.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))},r.sub=e,r.mul=o,r.div=i,r.dist=c,r.sqrDist=h,r.len=M,r.sqrLen=f,r.forEach=(s=u(),function(t,n,r,a,u,e){var o,i;for(n||(n=4),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)s[0]=t[o],s[1]=t[o+1],s[2]=t[o+2],s[3]=t[o+3],u(s,s,e),t[o]=s[0],t[o+1]=s[1],t[o+2]=s[2],t[o+3]=s[3];return t})},\n",
       "      \"277615c682\": function _(t,a,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"tslib\"),e=r.__importStar(t(\"68ca94c15c\")),u=r.__importStar(t(\"eb06fc032a\")),o=r.__importStar(t(\"a427635f32\"));function i(t,a,n){var r=.5*n[0],e=.5*n[1],u=.5*n[2],o=a[0],i=a[1],s=a[2],c=a[3];return t[0]=o,t[1]=i,t[2]=s,t[3]=c,t[4]=r*c+e*s-u*i,t[5]=e*c+u*o-r*s,t[6]=u*c+r*i-e*o,t[7]=-r*o-e*i-u*s,t}function s(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t}function c(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[4],s=n[5],c=n[6],h=n[7],f=a[4],M=a[5],l=a[6],b=a[7],v=n[0],m=n[1],R=n[2],P=n[3];return t[0]=r*P+o*v+e*R-u*m,t[1]=e*P+o*m+u*v-r*R,t[2]=u*P+o*R+r*m-e*v,t[3]=o*P-r*v-e*m-u*R,t[4]=r*h+o*i+e*c-u*s+f*P+b*v+M*R-l*m,t[5]=e*h+o*s+u*i-r*c+M*P+b*m+l*v-f*R,t[6]=u*h+o*c+r*s-e*i+l*P+b*R+f*m-M*v,t[7]=o*h-r*i-e*s-u*c+b*P-f*v-M*m-l*R,t}n.create=function(){var t=new e.ARRAY_TYPE(8);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0),t[3]=1,t},n.clone=function(t){var a=new e.ARRAY_TYPE(8);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a},n.fromValues=function(t,a,n,r,u,o,i,s){var c=new e.ARRAY_TYPE(8);return c[0]=t,c[1]=a,c[2]=n,c[3]=r,c[4]=u,c[5]=o,c[6]=i,c[7]=s,c},n.fromRotationTranslationValues=function(t,a,n,r,u,o,i){var s=new e.ARRAY_TYPE(8);s[0]=t,s[1]=a,s[2]=n,s[3]=r;var c=.5*u,h=.5*o,f=.5*i;return s[4]=c*r+h*n-f*a,s[5]=h*r+f*t-c*n,s[6]=f*r+c*a-h*t,s[7]=-c*t-h*a-f*n,s},n.fromRotationTranslation=i,n.fromTranslation=function(t,a){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=.5*a[0],t[5]=.5*a[1],t[6]=.5*a[2],t[7]=0,t},n.fromRotation=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.fromMat4=function(t,a){var n=u.create();o.getRotation(n,a);var r=new e.ARRAY_TYPE(3);return o.getTranslation(r,a),i(t,n,r),t},n.copy=s,n.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.set=function(t,a,n,r,e,u,o,i,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=e,t[4]=u,t[5]=o,t[6]=i,t[7]=s,t},n.getReal=u.copy,n.getDual=function(t,a){return t[0]=a[4],t[1]=a[5],t[2]=a[6],t[3]=a[7],t},n.setReal=u.copy,n.setDual=function(t,a){return t[4]=a[0],t[5]=a[1],t[6]=a[2],t[7]=a[3],t},n.getTranslation=function(t,a){var n=a[4],r=a[5],e=a[6],u=a[7],o=-a[0],i=-a[1],s=-a[2],c=a[3];return t[0]=2*(n*c+u*o+r*s-e*i),t[1]=2*(r*c+u*i+e*o-n*s),t[2]=2*(e*c+u*s+n*i-r*o),t},n.translate=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=.5*n[0],s=.5*n[1],c=.5*n[2],h=a[4],f=a[5],M=a[6],l=a[7];return t[0]=r,t[1]=e,t[2]=u,t[3]=o,t[4]=o*i+e*c-u*s+h,t[5]=o*s+u*i-r*c+f,t[6]=o*c+r*s-e*i+M,t[7]=-r*i-e*s-u*c+l,t},n.rotateX=function(t,a,n){var r=-a[0],e=-a[1],o=-a[2],i=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*i+f*r+c*o-h*e,l=c*i+f*e+h*r-s*o,b=h*i+f*o+s*e-c*r,v=f*i-s*r-c*e-h*o;return u.rotateX(t,a,n),r=t[0],e=t[1],o=t[2],i=t[3],t[4]=M*i+v*r+l*o-b*e,t[5]=l*i+v*e+b*r-M*o,t[6]=b*i+v*o+M*e-l*r,t[7]=v*i-M*r-l*e-b*o,t},n.rotateY=function(t,a,n){var r=-a[0],e=-a[1],o=-a[2],i=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*i+f*r+c*o-h*e,l=c*i+f*e+h*r-s*o,b=h*i+f*o+s*e-c*r,v=f*i-s*r-c*e-h*o;return u.rotateY(t,a,n),r=t[0],e=t[1],o=t[2],i=t[3],t[4]=M*i+v*r+l*o-b*e,t[5]=l*i+v*e+b*r-M*o,t[6]=b*i+v*o+M*e-l*r,t[7]=v*i-M*r-l*e-b*o,t},n.rotateZ=function(t,a,n){var r=-a[0],e=-a[1],o=-a[2],i=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*i+f*r+c*o-h*e,l=c*i+f*e+h*r-s*o,b=h*i+f*o+s*e-c*r,v=f*i-s*r-c*e-h*o;return u.rotateZ(t,a,n),r=t[0],e=t[1],o=t[2],i=t[3],t[4]=M*i+v*r+l*o-b*e,t[5]=l*i+v*e+b*r-M*o,t[6]=b*i+v*o+M*e-l*r,t[7]=v*i-M*r-l*e-b*o,t},n.rotateByQuatAppend=function(t,a,n){var r=n[0],e=n[1],u=n[2],o=n[3],i=a[0],s=a[1],c=a[2],h=a[3];return t[0]=i*o+h*r+s*u-c*e,t[1]=s*o+h*e+c*r-i*u,t[2]=c*o+h*u+i*e-s*r,t[3]=h*o-i*r-s*e-c*u,i=a[4],s=a[5],c=a[6],h=a[7],t[4]=i*o+h*r+s*u-c*e,t[5]=s*o+h*e+c*r-i*u,t[6]=c*o+h*u+i*e-s*r,t[7]=h*o-i*r-s*e-c*u,t},n.rotateByQuatPrepend=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[0],s=n[1],c=n[2],h=n[3];return t[0]=r*h+o*i+e*c-u*s,t[1]=e*h+o*s+u*i-r*c,t[2]=u*h+o*c+r*s-e*i,t[3]=o*h-r*i-e*s-u*c,i=n[4],s=n[5],c=n[6],h=n[7],t[4]=r*h+o*i+e*c-u*s,t[5]=e*h+o*s+u*i-r*c,t[6]=u*h+o*c+r*s-e*i,t[7]=o*h-r*i-e*s-u*c,t},n.rotateAroundAxis=function(t,a,n,r){if(Math.abs(r)<e.EPSILON)return s(t,a);var u=Math.hypot(n[0],n[1],n[2]);r*=.5;var o=Math.sin(r),i=o*n[0]/u,c=o*n[1]/u,h=o*n[2]/u,f=Math.cos(r),M=a[0],l=a[1],b=a[2],v=a[3];t[0]=M*f+v*i+l*h-b*c,t[1]=l*f+v*c+b*i-M*h,t[2]=b*f+v*h+M*c-l*i,t[3]=v*f-M*i-l*c-b*h;var m=a[4],R=a[5],P=a[6],d=a[7];return t[4]=m*f+d*i+R*h-P*c,t[5]=R*f+d*c+P*i-m*h,t[6]=P*f+d*h+m*c-R*i,t[7]=d*f-m*i-R*c-P*h,t},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t},n.multiply=c,n.mul=c,n.scale=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t},n.dot=u.dot,n.lerp=function(t,a,r,e){var u=1-e;return n.dot(a,r)<0&&(e=-e),t[0]=a[0]*u+r[0]*e,t[1]=a[1]*u+r[1]*e,t[2]=a[2]*u+r[2]*e,t[3]=a[3]*u+r[3]*e,t[4]=a[4]*u+r[4]*e,t[5]=a[5]*u+r[5]*e,t[6]=a[6]*u+r[6]*e,t[7]=a[7]*u+r[7]*e,t},n.invert=function(t,a){var r=n.squaredLength(a);return t[0]=-a[0]/r,t[1]=-a[1]/r,t[2]=-a[2]/r,t[3]=a[3]/r,t[4]=-a[4]/r,t[5]=-a[5]/r,t[6]=-a[6]/r,t[7]=a[7]/r,t},n.conjugate=function(t,a){return t[0]=-a[0],t[1]=-a[1],t[2]=-a[2],t[3]=a[3],t[4]=-a[4],t[5]=-a[5],t[6]=-a[6],t[7]=a[7],t},n.length=u.length,n.len=n.length,n.squaredLength=u.squaredLength,n.sqrLen=n.squaredLength,n.normalize=function(t,a){var r=n.squaredLength(a);if(r>0){r=Math.sqrt(r);var e=a[0]/r,u=a[1]/r,o=a[2]/r,i=a[3]/r,s=a[4],c=a[5],h=a[6],f=a[7],M=e*s+u*c+o*h+i*f;t[0]=e,t[1]=u,t[2]=o,t[3]=i,t[4]=(s-e*M)/r,t[5]=(c-u*M)/r,t[6]=(h-o*M)/r,t[7]=(f-i*M)/r}return t},n.str=function(t){return\"quat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\")\"},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]},n.equals=function(t,a){var n=t[0],r=t[1],u=t[2],o=t[3],i=t[4],s=t[5],c=t[6],h=t[7],f=a[0],M=a[1],l=a[2],b=a[3],v=a[4],m=a[5],R=a[6],P=a[7];return Math.abs(n-f)<=e.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(r-M)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(M))&&Math.abs(u-l)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(l))&&Math.abs(o-b)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(b))&&Math.abs(i-v)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(s-m)<=e.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(c-R)<=e.EPSILON*Math.max(1,Math.abs(c),Math.abs(R))&&Math.abs(h-P)<=e.EPSILON*Math.max(1,Math.abs(h),Math.abs(P))}},\n",
       "      \"c56d9ff837\": function _(n,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=n(\"tslib\").__importStar(n(\"68ca94c15c\"));function u(){var n=new a.ARRAY_TYPE(2);return a.ARRAY_TYPE!=Float32Array&&(n[0]=0,n[1]=0),n}function e(n,t,r){return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n}function o(n,t,r){return n[0]=t[0]*r[0],n[1]=t[1]*r[1],n}function c(n,t,r){return n[0]=t[0]/r[0],n[1]=t[1]/r[1],n}function i(n,t){var r=t[0]-n[0],a=t[1]-n[1];return Math.hypot(r,a)}function f(n,t){var r=t[0]-n[0],a=t[1]-n[1];return r*r+a*a}function s(n){var t=n[0],r=n[1];return Math.hypot(t,r)}function h(n){var t=n[0],r=n[1];return t*t+r*r}var M;r.create=u,r.clone=function(n){var t=new a.ARRAY_TYPE(2);return t[0]=n[0],t[1]=n[1],t},r.fromValues=function(n,t){var r=new a.ARRAY_TYPE(2);return r[0]=n,r[1]=t,r},r.copy=function(n,t){return n[0]=t[0],n[1]=t[1],n},r.set=function(n,t,r){return n[0]=t,n[1]=r,n},r.add=function(n,t,r){return n[0]=t[0]+r[0],n[1]=t[1]+r[1],n},r.subtract=e,r.multiply=o,r.divide=c,r.ceil=function(n,t){return n[0]=Math.ceil(t[0]),n[1]=Math.ceil(t[1]),n},r.floor=function(n,t){return n[0]=Math.floor(t[0]),n[1]=Math.floor(t[1]),n},r.min=function(n,t,r){return n[0]=Math.min(t[0],r[0]),n[1]=Math.min(t[1],r[1]),n},r.max=function(n,t,r){return n[0]=Math.max(t[0],r[0]),n[1]=Math.max(t[1],r[1]),n},r.round=function(n,t){return n[0]=Math.round(t[0]),n[1]=Math.round(t[1]),n},r.scale=function(n,t,r){return n[0]=t[0]*r,n[1]=t[1]*r,n},r.scaleAndAdd=function(n,t,r,a){return n[0]=t[0]+r[0]*a,n[1]=t[1]+r[1]*a,n},r.distance=i,r.squaredDistance=f,r.length=s,r.squaredLength=h,r.negate=function(n,t){return n[0]=-t[0],n[1]=-t[1],n},r.inverse=function(n,t){return n[0]=1/t[0],n[1]=1/t[1],n},r.normalize=function(n,t){var r=t[0],a=t[1],u=r*r+a*a;return u>0&&(u=1/Math.sqrt(u)),n[0]=t[0]*u,n[1]=t[1]*u,n},r.dot=function(n,t){return n[0]*t[0]+n[1]*t[1]},r.cross=function(n,t,r){var a=t[0]*r[1]-t[1]*r[0];return n[0]=n[1]=0,n[2]=a,n},r.lerp=function(n,t,r,a){var u=t[0],e=t[1];return n[0]=u+a*(r[0]-u),n[1]=e+a*(r[1]-e),n},r.random=function(n,t){t=t||1;var r=2*a.RANDOM()*Math.PI;return n[0]=Math.cos(r)*t,n[1]=Math.sin(r)*t,n},r.transformMat2=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u,n[1]=r[1]*a+r[3]*u,n},r.transformMat2d=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u+r[4],n[1]=r[1]*a+r[3]*u+r[5],n},r.transformMat3=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[3]*u+r[6],n[1]=r[1]*a+r[4]*u+r[7],n},r.transformMat4=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[4]*u+r[12],n[1]=r[1]*a+r[5]*u+r[13],n},r.rotate=function(n,t,r,a){var u=t[0]-r[0],e=t[1]-r[1],o=Math.sin(a),c=Math.cos(a);return n[0]=u*c-e*o+r[0],n[1]=u*o+e*c+r[1],n},r.angle=function(n,t){var r=n[0],a=n[1],u=t[0],e=t[1],o=Math.sqrt(r*r+a*a)*Math.sqrt(u*u+e*e),c=o&&(r*u+a*e)/o;return Math.acos(Math.min(Math.max(c,-1),1))},r.zero=function(n){return n[0]=0,n[1]=0,n},r.str=function(n){return\"vec2(\"+n[0]+\", \"+n[1]+\")\"},r.exactEquals=function(n,t){return n[0]===t[0]&&n[1]===t[1]},r.equals=function(n,t){var r=n[0],u=n[1],e=t[0],o=t[1];return Math.abs(r-e)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(e))&&Math.abs(u-o)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(o))},r.len=s,r.sub=e,r.mul=o,r.div=c,r.dist=i,r.sqrDist=f,r.sqrLen=h,r.forEach=(M=u(),function(n,t,r,a,u,e){var o,c;for(t||(t=2),r||(r=0),c=a?Math.min(a*t+r,n.length):n.length,o=r;o<c;o+=t)M[0]=n[o],M[1]=n[o+1],u(M,M,e),n[o]=M[0],n[o+1]=M[1];return n})},\n",
       "      }, \"4e90918c0a\", {\"index\":\"4e90918c0a\",\"models/index\":\"22ae8fda70\",\"models/ace\":\"3343056bd8\",\"models/layout\":\"7116a7a602\",\"models/audio\":\"66d52165db\",\"models/comm_manager\":\"71a9759436\",\"models/deckgl\":\"d0d2aafca0\",\"models/tooltips\":\"064eac2866\",\"models/html\":\"ed08037ce5\",\"models/json\":\"284504a0cf\",\"models/file_download\":\"61c9ac7aac\",\"models/katex\":\"7b859fb3cf\",\"models/mathjax\":\"0c21036737\",\"models/player\":\"79c41bbf71\",\"models/plotly\":\"56da045fbd\",\"models/util\":\"990b5dd5c7\",\"models/progress\":\"76307e5afa\",\"models/state\":\"38b2bc9574\",\"models/vega\":\"294adeb985\",\"models/video\":\"b0c3e9e9c2\",\"models/videostream\":\"3c7145a2fa\",\"models/vtk/index\":\"ecfbb965eb\",\"models/vtk/vtk\":\"5b5e56e89a\",\"models/vtk/vtk_layout\":\"c704c63c0a\",\"models/vtk/vtk_utils\":\"aaf560d219\",\"models/vtk/vtkvolume\":\"729dd26c71\",\"models/vtk/vtkaxes\":\"e23461e5d7\"}, {});\n",
       "      })\n",
       "\n",
       "\n",
       "      /* END panel.min.js */\n",
       "    },\n",
       "    function(Bokeh) {} // ensure no trailing comma for IE\n",
       "  ];\n",
       "\n",
       "  function run_inline_js() {\n",
       "    if ((root.Bokeh !== undefined) || (force === true)) {\n",
       "      for (var i = 0; i < inline_js.length; i++) {\n",
       "        inline_js[i].call(root, root.Bokeh);\n",
       "      }} else if (Date.now() < root._bokeh_timeout) {\n",
       "      setTimeout(run_inline_js, 100);\n",
       "    } else if (!root._bokeh_failed_load) {\n",
       "      console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
       "      root._bokeh_failed_load = true;\n",
       "    }\n",
       "  }\n",
       "\n",
       "  if (root._bokeh_is_loading === 0) {\n",
       "    console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
       "    run_inline_js();\n",
       "  } else {\n",
       "    load_libs(css_urls, js_urls, function() {\n",
       "      console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
       "      run_inline_js();\n",
       "    });\n",
       "  }\n",
       "}(window));"
      ],
      "application/vnd.holoviews_load.v0+json": "\n(function(root) {\n  function now() {\n    return new Date();\n  }\n\n  var force = true;\n\n  if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n    root._bokeh_onload_callbacks = [];\n    root._bokeh_is_loading = undefined;\n  }\n\n  if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n    root._bokeh_timeout = Date.now() + 5000;\n    root._bokeh_failed_load = false;\n  }\n\n  function run_callbacks() {\n    try {\n      root._bokeh_onload_callbacks.forEach(function(callback) {\n        if (callback != null)\n          callback();\n      });\n    } finally {\n      delete root._bokeh_onload_callbacks\n    }\n    console.debug(\"Bokeh: all callbacks have finished\");\n  }\n\n  function load_libs(css_urls, js_urls, callback) {\n    if (css_urls == null) css_urls = [];\n    if (js_urls == null) js_urls = [];\n\n    root._bokeh_onload_callbacks.push(callback);\n    if (root._bokeh_is_loading > 0) {\n      console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n      return null;\n    }\n    if (js_urls == null || js_urls.length === 0) {\n      run_callbacks();\n      return null;\n    }\n    console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n    root._bokeh_is_loading = css_urls.length + js_urls.length;\n\n    function on_load() {\n      root._bokeh_is_loading--;\n      if (root._bokeh_is_loading === 0) {\n        console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n        run_callbacks()\n      }\n    }\n\n    function on_error() {\n      console.error(\"failed to load \" + url);\n    }\n\n    for (var i = 0; i < css_urls.length; i++) {\n      var url = css_urls[i];\n      const element = document.createElement(\"link\");\n      element.onload = on_load;\n      element.onerror = on_error;\n      element.rel = \"stylesheet\";\n      element.type = \"text/css\";\n      element.href = url;\n      console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n      document.body.appendChild(element);\n    }\n\n    if (window.requirejs) {\n      require([], function() {\n        run_callbacks();\n      })\n    } else {\n      var skip = [];\n      for (var i = 0; i < js_urls.length; i++) {\n        var url = js_urls[i];\n        if (skip.indexOf(url) >= 0) { on_load(); continue; }\n        var element = document.createElement('script');\n        element.onload = on_load;\n        element.onerror = on_error;\n        element.async = false;\n        element.src = url;\n        console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n        document.head.appendChild(element);\n      }\n    }\n  };\n\n  function inject_raw_css(css) {\n    const element = document.createElement(\"style\");\n    element.appendChild(document.createTextNode(css));\n    document.body.appendChild(element);\n  }\n\n  var js_urls = [];\n  var css_urls = [];\n\n  var inline_js = [\n    function(Bokeh) {\n      inject_raw_css(\".panel-widget-box {\\n\\tmin-height: 20px;\\n\\tbackground-color: #f5f5f5;\\n\\tborder: 1px solid #e3e3e3 !important;\\n\\tborder-radius: 4px;\\n\\t-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\tbox-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\toverflow-x: hidden;\\n\\toverflow-y: hidden;\\n}\\n\\n.scrollable {\\n  overflow: scroll;\\n}\\n\\nprogress {\\n\\tappearance: none;\\n\\t-moz-appearance: none;\\n\\t-webkit-appearance: none;\\n\\n\\tborder: none;\\n\\theight: 20px;\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n\\tcolor: royalblue;\\n\\tposition: relative;\\n\\tmargin: 0 0 1.5em;\\n}\\n\\nprogress[value]::-webkit-progress-bar {\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n}\\n\\nprogress[value]::-webkit-progress-value {\\n\\tposition: relative;\\n\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress.active:not([value])::before {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress[value]::-moz-progress-bar {\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress:not([value])::-moz-progress-bar {\\n\\tborder-radius:3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n\\n}\\n\\nprogress.active:not([value])::-moz-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.active:not([value])::-webkit-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.primary[value]::-webkit-progress-value { background-color: #007bff; }\\nprogress.primary:not([value])::before { background-color: #007bff; }\\nprogress.primary:not([value])::-webkit-progress-bar { background-color: #007bff; }\\nprogress.primary::-moz-progress-bar { background-color: #007bff; }\\n\\nprogress.secondary[value]::-webkit-progress-value { background-color: #6c757d; }\\nprogress.secondary:not([value])::before { background-color: #6c757d; }\\nprogress.secondary:not([value])::-webkit-progress-bar { background-color: #6c757d; }\\nprogress.secondary::-moz-progress-bar { background-color: #6c757d; }\\n\\nprogress.success[value]::-webkit-progress-value { background-color: #28a745; }\\nprogress.success:not([value])::before { background-color: #28a745; }\\nprogress.success:not([value])::-webkit-progress-bar { background-color: #28a745; }\\nprogress.success::-moz-progress-bar { background-color: #28a745; }\\n\\nprogress.danger[value]::-webkit-progress-value { background-color: #dc3545; }\\nprogress.danger:not([value])::before { background-color: #dc3545; }\\nprogress.danger:not([value])::-webkit-progress-bar { background-color: #dc3545; }\\nprogress.danger::-moz-progress-bar { background-color: #dc3545; }\\n\\nprogress.warning[value]::-webkit-progress-value { background-color: #ffc107; }\\nprogress.warning:not([value])::before { background-color: #ffc107; }\\nprogress.warning:not([value])::-webkit-progress-bar { background-color: #ffc107; }\\nprogress.warning::-moz-progress-bar { background-color: #ffc107; }\\n\\nprogress.info[value]::-webkit-progress-value { background-color: #17a2b8; }\\nprogress.info:not([value])::before { background-color: #17a2b8; }\\nprogress.info:not([value])::-webkit-progress-bar { background-color: #17a2b8; }\\nprogress.info::-moz-progress-bar { background-color: #17a2b8; }\\n\\nprogress.light[value]::-webkit-progress-value { background-color: #f8f9fa; }\\nprogress.light:not([value])::before { background-color: #f8f9fa; }\\nprogress.light:not([value])::-webkit-progress-bar { background-color: #f8f9fa; }\\nprogress.light::-moz-progress-bar { background-color: #f8f9fa; }\\n\\nprogress.dark[value]::-webkit-progress-value { background-color: #343a40; }\\nprogress.dark:not([value])::-webkit-progress-bar { background-color: #343a40; }\\nprogress.dark:not([value])::before { background-color: #343a40; }\\nprogress.dark::-moz-progress-bar { background-color: #343a40; }\\n\\nprogress:not([value])::-webkit-progress-bar {\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\nprogress:not([value])::before {\\n\\tcontent:\\\" \\\";\\n\\tposition:absolute;\\n\\theight: 20px;\\n\\ttop:0;\\n\\tleft:0;\\n\\tright:0;\\n\\tbottom:0;\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\n@keyframes stripes {\\n  from {background-position: 0%}\\n  to {background-position: 100%}\\n}\\n\");\n    },\n    function(Bokeh) {\n      inject_raw_css(\".codehilite .hll { background-color: #ffffcc }\\n.codehilite  { background: #f8f8f8; }\\n.codehilite .c { color: #408080; font-style: italic } /* Comment */\\n.codehilite .err { border: 1px solid #FF0000 } /* Error */\\n.codehilite .k { color: #008000; font-weight: bold } /* Keyword */\\n.codehilite .o { color: #666666 } /* Operator */\\n.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\\n.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */\\n.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */\\n.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\\n.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */\\n.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */\\n.codehilite .gd { color: #A00000 } /* Generic.Deleted */\\n.codehilite .ge { font-style: italic } /* Generic.Emph */\\n.codehilite .gr { color: #FF0000 } /* Generic.Error */\\n.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */\\n.codehilite .gi { color: #00A000 } /* Generic.Inserted */\\n.codehilite .go { color: #888888 } /* Generic.Output */\\n.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\\n.codehilite .gs { font-weight: bold } /* Generic.Strong */\\n.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\\n.codehilite .gt { color: #0044DD } /* Generic.Traceback */\\n.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\\n.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\\n.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\\n.codehilite .kp { color: #008000 } /* Keyword.Pseudo */\\n.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\\n.codehilite .kt { color: #B00040 } /* Keyword.Type */\\n.codehilite .m { color: #666666 } /* Literal.Number */\\n.codehilite .s { color: #BA2121 } /* Literal.String */\\n.codehilite .na { color: #7D9029 } /* Name.Attribute */\\n.codehilite .nb { color: #008000 } /* Name.Builtin */\\n.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */\\n.codehilite .no { color: #880000 } /* Name.Constant */\\n.codehilite .nd { color: #AA22FF } /* Name.Decorator */\\n.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */\\n.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\\n.codehilite .nf { color: #0000FF } /* Name.Function */\\n.codehilite .nl { color: #A0A000 } /* Name.Label */\\n.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\\n.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */\\n.codehilite .nv { color: #19177C } /* Name.Variable */\\n.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\\n.codehilite .w { color: #bbbbbb } /* Text.Whitespace */\\n.codehilite .mb { color: #666666 } /* Literal.Number.Bin */\\n.codehilite .mf { color: #666666 } /* Literal.Number.Float */\\n.codehilite .mh { color: #666666 } /* Literal.Number.Hex */\\n.codehilite .mi { color: #666666 } /* Literal.Number.Integer */\\n.codehilite .mo { color: #666666 } /* Literal.Number.Oct */\\n.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */\\n.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */\\n.codehilite .sc { color: #BA2121 } /* Literal.String.Char */\\n.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */\\n.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\\n.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */\\n.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\\n.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */\\n.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\\n.codehilite .sx { color: #008000 } /* Literal.String.Other */\\n.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */\\n.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */\\n.codehilite .ss { color: #19177C } /* Literal.String.Symbol */\\n.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */\\n.codehilite .fm { color: #0000FF } /* Name.Function.Magic */\\n.codehilite .vc { color: #19177C } /* Name.Variable.Class */\\n.codehilite .vg { color: #19177C } /* Name.Variable.Global */\\n.codehilite .vi { color: #19177C } /* Name.Variable.Instance */\\n.codehilite .vm { color: #19177C } /* Name.Variable.Magic */\\n.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */\\n\\n.markdown h1 { margin-block-start: 0.34em }\\n.markdown h2 { margin-block-start: 0.42em }\\n.markdown h3 { margin-block-start: 0.5em }\\n.markdown h4 { margin-block-start: 0.67em }\\n.markdown h5 { margin-block-start: 0.84em }\\n.markdown h6 { margin-block-start: 1.17em }\\n.markdown ul { padding-inline-start: 2em }\\n.markdown ol { padding-inline-start: 2em }\\n.markdown strong { font-weight: 600 }\\n.markdown a { color: -webkit-link }\\n.markdown a { color: -moz-hyperlinkText }\\n\");\n    },\n    function(Bokeh) {\n      inject_raw_css(\".json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n  color: black;\\n  text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \\\"No properties\\\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \\\"[]\\\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n  color: green;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n  color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n  color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n  color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n  color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n  background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: blue;\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n  color: #00008B;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n  color: white;\\n  text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \\\"No properties\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \\\"[]\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n  color: #31F031;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n  color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n  color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n  color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n  color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n  color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n  background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: #027BFF;\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n  color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n  color: #23A0DB;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n\");\n    },\n    function(Bokeh) {\n      inject_raw_css(\"table.panel-df {\\n    margin-left: auto;\\n    margin-right: auto;\\n    border: none;\\n    border-collapse: collapse;\\n    border-spacing: 0;\\n    color: black;\\n    font-size: 12px;\\n    table-layout: fixed;\\n    width: 100%;\\n}\\n\\n.panel-df tr, .panel-df th, .panel-df td {\\n    text-align: right;\\n    vertical-align: middle;\\n    padding: 0.5em 0.5em !important;\\n    line-height: normal;\\n    white-space: normal;\\n    max-width: none;\\n    border: none;\\n}\\n\\n.panel-df tbody {\\n    display: table-row-group;\\n    vertical-align: middle;\\n    border-color: inherit;\\n}\\n\\n.panel-df tbody tr:nth-child(odd) {\\n    background: #f5f5f5;\\n}\\n\\n.panel-df thead {\\n    border-bottom: 1px solid black;\\n    vertical-align: bottom;\\n}\\n\\n.panel-df tr:hover {\\n    background: lightblue !important;\\n    cursor: pointer;\\n}\\n\");\n    },\n    function(Bokeh) {\n      /* BEGIN bokeh.min.js */\n      /*!\n       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n       * All rights reserved.\n       * \n       * Redistribution and use in source and binary forms, with or without modification,\n       * are permitted provided that the following conditions are met:\n       * \n       * Redistributions of source code must retain the above copyright notice,\n       * this list of conditions and the following disclaimer.\n       * \n       * Redistributions in binary form must reproduce the above copyright notice,\n       * this list of conditions and the following disclaimer in the documentation\n       * and/or other materials provided with the distribution.\n       * \n       * Neither the name of Anaconda nor the names of any contributors\n       * may be used to endorse or promote products derived from this software\n       * without specific prior written permission.\n       * \n       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n       * THE POSSIBILITY OF SUCH DAMAGE.\n      */\n      (function(root, factory) {\n        const bokeh = factory();\n        bokeh.__bokeh__ = true;\n        if (typeof root.Bokeh === \"undefined\" || typeof root.Bokeh.__bokeh__ === \"undefined\") {\n          root.Bokeh = bokeh;\n        }\n        const Bokeh = root.Bokeh;\n        Bokeh[bokeh.version] = bokeh;\n      })(this, function() {\n        var define;\n        var parent_require = typeof require === \"function\" && require\n        return (function(modules, entry, aliases, externals) {\n          if (aliases === undefined) aliases = {};\n          if (externals === undefined) externals = {};\n\n          var cache = {};\n\n          var normalize = function(name) {\n            if (typeof name === \"number\")\n              return name;\n\n            if (name === \"bokehjs\")\n              return entry;\n\n            var prefix = \"@bokehjs/\"\n            if (name.slice(0, prefix.length) === prefix)\n              name = name.slice(prefix.length)\n\n            var alias = aliases[name]\n            if (alias != null)\n              return alias;\n\n            var trailing = name.length > 0 && name[name.lenght-1] === \"/\";\n            var index = aliases[name + (trailing ? \"\" : \"/\") + \"index\"];\n            if (index != null)\n              return index;\n\n            return name;\n          }\n\n          var require = function(name) {\n            var mod = cache[name];\n            if (!mod) {\n              var id = normalize(name);\n\n              mod = cache[id];\n              if (!mod) {\n                if (!modules[id]) {\n                  if (externals[id] === false || (externals[id] == true && parent_require)) {\n                    try {\n                      mod = {exports: externals[id] ? parent_require(id) : {}};\n                      cache[id] = cache[name] = mod;\n                      return mod.exports;\n                    } catch (e) {}\n                  }\n\n                  var err = new Error(\"Cannot find module '\" + name + \"'\");\n                  err.code = 'MODULE_NOT_FOUND';\n                  throw err;\n                }\n\n                mod = {exports: {}};\n                cache[id] = cache[name] = mod;\n                modules[id].call(mod.exports, require, mod, mod.exports);\n              } else\n                cache[name] = mod;\n            }\n\n            return mod.exports;\n          }\n          require.resolve = function(name) {\n            return \"\"\n          }\n\n          var main = require(entry);\n          main.require = require;\n\n          if (typeof Proxy !== \"undefined\") {\n            // allow Bokeh.loader[\"@bokehjs/module/name\"] syntax\n            main.loader = new Proxy({}, {\n              get: function(_obj, module) {\n                return require(module);\n              }\n            });\n          }\n\n          main.register_plugin = function(plugin_modules, plugin_entry, plugin_aliases, plugin_externals) {\n            if (plugin_aliases === undefined) plugin_aliases = {};\n            if (plugin_externals === undefined) plugin_externals = {};\n\n            for (var name in plugin_modules) {\n              modules[name] = plugin_modules[name];\n            }\n\n            for (var name in plugin_aliases) {\n              aliases[name] = plugin_aliases[name];\n            }\n\n            for (var name in plugin_externals) {\n              externals[name] = plugin_externals[name];\n            }\n\n            var plugin = require(plugin_entry);\n\n            for (var name in plugin) {\n              main[name] = plugin[name];\n            }\n\n            return plugin;\n          }\n\n          return main;\n        })\n      ([\n      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});e(1).__exportStar(e(2),_)},\n      function _(t,e,n){\n      /*! *****************************************************************************\n          Copyright (c) Microsoft Corporation.\n          \n          Permission to use, copy, modify, and/or distribute this software for any\n          purpose with or without fee is hereby granted.\n          \n          THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n          REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n          AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n          INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n          LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n          OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n          PERFORMANCE OF THIS SOFTWARE.\n          ***************************************************************************** */\n      Object.defineProperty(n,\"__esModule\",{value:!0});var r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function o(t){var e=\"function\"==typeof Symbol&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&\"number\"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}function a(t,e){var n=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,a=n.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(t){o={error:t}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}function i(t){return this instanceof i?(this.v=t,this):new i(t)}n.__extends=function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},n.__assign=function(){return n.__assign=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.__assign.apply(this,arguments)},n.__rest=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(t);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(t,r[o])&&(n[r[o]]=t[r[o]])}return n},n.__decorate=function(t,e,n,r){var o,a=arguments.length,i=a<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,n):r;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)i=Reflect.decorate(t,e,n,r);else for(var u=t.length-1;u>=0;u--)(o=t[u])&&(i=(a<3?o(i):a>3?o(e,n,i):o(e,n))||i);return a>3&&i&&Object.defineProperty(e,n,i),i},n.__param=function(t,e){return function(n,r){e(n,r,t)}},n.__metadata=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},n.__awaiter=function(t,e,n,r){return new(n||(n=Promise))((function(o,a){function i(t){try{c(r.next(t))}catch(t){a(t)}}function u(t){try{c(r.throw(t))}catch(t){a(t)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(i,u)}c((r=r.apply(t,e||[])).next())}))},n.__generator=function(t,e){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(a){return function(u){return function(a){if(n)throw new TypeError(\"Generator is already executing.\");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=e.call(t,i)}catch(t){a=[6,t],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}},n.__createBinding=function(t,e,n,r){void 0===r&&(r=n),t[r]=e[n]},n.__exportStar=function(t,e){for(var n in t)\"default\"===n||e.hasOwnProperty(n)||(e[n]=t[n])},n.__values=o,n.__read=a,n.__spread=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(a(arguments[e]));return t},n.__spreadArrays=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),o=0;for(e=0;e<n;e++)for(var a=arguments[e],i=0,u=a.length;i<u;i++,o++)r[o]=a[i];return r},n.__await=i,n.__asyncGenerator=function(t,e,n){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=n.apply(t,e||[]),a=[];return r={},u(\"next\"),u(\"throw\"),u(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function u(t){o[t]&&(r[t]=function(e){return new Promise((function(n,r){a.push([t,e,n,r])>1||c(t,e)}))})}function c(t,e){try{(n=o[t](e)).value instanceof i?Promise.resolve(n.value.v).then(f,l):s(a[0][2],n)}catch(t){s(a[0][3],t)}var n}function f(t){c(\"next\",t)}function l(t){c(\"throw\",t)}function s(t,e){t(e),a.shift(),a.length&&c(a[0][0],a[0][1])}},n.__asyncDelegator=function(t){var e,n;return e={},r(\"next\"),r(\"throw\",(function(t){throw t})),r(\"return\"),e[Symbol.iterator]=function(){return this},e;function r(r,o){e[r]=t[r]?function(e){return(n=!n)?{value:i(t[r](e)),done:\"return\"===r}:o?o(e):e}:o}},n.__asyncValues=function(t){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=o(t),e={},r(\"next\"),r(\"throw\"),r(\"return\"),e[Symbol.asyncIterator]=function(){return this},e);function r(n){e[n]=t[n]&&function(e){return new Promise((function(r,o){(function(t,e,n,r){Promise.resolve(r).then((function(e){t({value:e,done:n})}),e)})(r,o,(e=t[n](e)).done,e.value)}))}}},n.__makeTemplateObject=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},n.__importStar=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e},n.__importDefault=function(t){return t&&t.__esModule?t:{default:t}},n.__classPrivateFieldGet=function(t,e){if(!e.has(t))throw new TypeError(\"attempted to get private field on non-instance\");return e.get(t)},n.__classPrivateFieldSet=function(t,e,n){if(!e.has(t))throw new TypeError(\"attempted to set private field on non-instance\");return e.set(t,n),n}},\n      function _(e,r,t){var l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r};Object.defineProperty(t,\"__esModule\",{value:!0});var o=e(3);t.version=o.version;var s=e(4);t.index=s.index,t.embed=l(e(4)),t.protocol=l(e(390)),t._testing=l(e(391));var n=e(19);t.logger=n.logger,t.set_log_level=n.set_log_level;var a=e(27);t.settings=a.settings;var i=e(7);t.Models=i.Models;var v=e(5);t.documents=v.documents;var _=e(392);t.safely=_.safely},\n      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0}),o.version=\"2.2.1\"},\n      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(5),s=e(19),r=e(29),d=e(13),_=e(8),c=e(16),i=e(381),a=e(383),u=e(382);var l=e(381);t.add_document_standalone=l.add_document_standalone,t.index=l.index;var m=e(383);t.add_document_from_session=m.add_document_from_session;var f=e(388);t.embed_items_notebook=f.embed_items_notebook,t.kernels=f.kernels;var g=e(382);async function O(e,o,t,c){_.isString(e)&&(e=JSON.parse(r.unescape(e)));const l={};for(const[o,t]of d.entries(e))l[o]=n.Document.from_json(t);const m=[];for(const e of o){const o=u._resolve_element(e),n=u._resolve_root_elements(e);if(null!=e.docid)m.push(await i.add_document_standalone(l[e.docid],o,n,e.use_for_title));else{if(null==e.token)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'token' was expected.\");{const r=a._get_ws_url(t,c);s.logger.debug(\"embed: computed ws url: \"+r);try{m.push(await a.add_document_from_session(r,e.token,o,n,e.use_for_title)),console.log(\"Bokeh items were rendered successfully\")}catch(e){console.log(\"Error rendering Bokeh items:\",e)}}}}return m}t.BOKEH_ROOT=g.BOKEH_ROOT,t.embed_item=async function(e,o){const t={},n=r.uuid4();t[n]=e.doc,null==o&&(o=e.target_id);const s=document.getElementById(o);null!=s&&s.classList.add(u.BOKEH_ROOT);const d={roots:{[e.root_id]:o},root_ids:[e.root_id],docid:n},[_]=await c.defer(()=>O(t,[d]));return _},t.embed_items=async function(e,o,t,n){return await c.defer(()=>O(e,o,t,n))}},\n      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});const o=e(1);o.__exportStar(e(6),_),o.__exportStar(e(121),_)},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),n=e(7),r=e(3),i=e(19),_=e(313),a=e(14),l=e(15),c=e(17),h=e(31),d=e(9),f=e(13),u=o.__importStar(e(120)),m=e(25),g=e(8),p=e(272),w=e(85),v=e(81),b=e(121);class y{constructor(e){this.document=e,this.session=null,this.subscribed_models=new Set}send_event(e){const t=new b.MessageSentEvent(this.document,\"bokeh_event\",e.to_json());this.document._trigger_on_change(t)}trigger(e){for(const t of this.subscribed_models)null!=e.origin&&e.origin!=t||t._process_event(e)}}s.EventManager=y,y.__name__=\"EventManager\",s.documents=[],s.DEFAULT_TITLE=\"Bokeh Application\";class j{constructor(){s.documents.push(this),this._init_timestamp=Date.now(),this._title=s.DEFAULT_TITLE,this._roots=[],this._all_models=new Map,this._all_models_freeze_count=0,this._callbacks=new Map,this._message_callbacks=new Map,this.event_manager=new y(this),this.idle=new l.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}get layoutables(){return this._roots.filter(e=>e instanceof p.LayoutDOM)}get is_idle(){for(const e of this.layoutables)if(!this._idle_roots.has(e))return!1;return!0}notify_idle(e){this._idle_roots.set(e,!0),this.is_idle&&(i.logger.info(`document idle at ${Date.now()-this._init_timestamp} ms`),this.event_manager.send_event(new _.DocumentReady),this.idle.emit())}clear(){this._push_all_models_freeze();try{for(;this._roots.length>0;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}}interactive_start(e){null==this._interactive_plot&&(this._interactive_plot=e,this._interactive_plot.trigger_event(new _.LODStart)),this._interactive_timestamp=Date.now()}interactive_stop(){null!=this._interactive_plot&&this._interactive_plot.trigger_event(new _.LODEnd),this._interactive_plot=null,this._interactive_timestamp=null}interactive_duration(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp}destructively_move(e){if(e===this)throw new Error(\"Attempted to overwrite a document with itself\");e.clear();const t=d.copy(this._roots);this.clear();for(const e of t)if(null!=e.document)throw new Error(\"Somehow we didn't detach \"+e);if(0!=this._all_models.size)throw new Error(\"this._all_models still had stuff in it: \"+this._all_models);for(const s of t)e.add_root(s);e.set_title(this._title)}_push_all_models_freeze(){this._all_models_freeze_count+=1}_pop_all_models_freeze(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()}_invalidate_all_models(){i.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()}_recompute_all_models(){let e=new Set;for(const t of this._roots)e=u.union(e,t.references());const t=new Set(this._all_models.values()),s=u.difference(t,e),o=u.difference(e,t),n=new Map;for(const t of e)n.set(t.id,t);for(const e of s)e.detach_document();for(const e of o)e.attach_document(this);this._all_models=n}roots(){return this._roots}add_root(e,t){if(i.logger.debug(\"Adding root: \"+e),!d.includes(this._roots,e)){this._push_all_models_freeze();try{this._roots.push(e)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new b.RootAddedEvent(this,e,t))}}remove_root(e,t){const s=this._roots.indexOf(e);if(!(s<0)){this._push_all_models_freeze();try{this._roots.splice(s,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new b.RootRemovedEvent(this,e,t))}}title(){return this._title}set_title(e,t){e!==this._title&&(this._title=e,this._trigger_on_change(new b.TitleChangedEvent(this,e,t)))}get_model_by_id(e){var t;return null!==(t=this._all_models.get(e))&&void 0!==t?t:null}get_model_by_name(e){const t=[];for(const s of this._all_models.values())s instanceof v.Model&&s.name==e&&t.push(s);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(`Multiple models are named '${e}'`)}}on_message(e,t){const s=this._message_callbacks.get(e);null==s?this._message_callbacks.set(e,new Set([t])):s.add(t)}remove_on_message(e,t){var s;null===(s=this._message_callbacks.get(e))||void 0===s||s.delete(t)}_trigger_on_message(e,t){const s=this._message_callbacks.get(e);if(null!=s)for(const e of s)e(t)}on_change(e,t=!1){this._callbacks.has(e)||this._callbacks.set(e,t)}remove_on_change(e){this._callbacks.delete(e)}_trigger_on_change(e){for(const[t,s]of this._callbacks)if(!s&&e instanceof b.DocumentEventBatch)for(const s of e.events)t(s);else t(e)}_notify_change(e,t,s,o,n){this._trigger_on_change(new b.ModelChangedEvent(this,e,t,s,o,null==n?void 0:n.setter_id,null==n?void 0:n.hint))}static _references_json(e,t=!0){const s=[];for(const o of e){const e=o.struct();e.attributes=o.attributes_as_json(t),delete e.attributes.id,s.push(e)}return s}static _instantiate_object(e,t,s){const o=Object.assign(Object.assign({},s),{id:e,__deferred__:!0});return new(n.Models(t))(o)}static _instantiate_references_json(e,t){const s=new Map;for(const o of e){const e=o.id,n=o.type,r=o.attributes||{};let i=t.get(e);null==i&&(i=j._instantiate_object(e,n,r),null!=o.subtype&&i.set_subtype(o.subtype)),s.set(i.id,i)}return s}static _resolve_refs(e,t,s,o){function n(e){if(c.is_ref(e)){if(t.has(e.id))return t.get(e.id);if(s.has(e.id))return s.get(e.id);throw new Error(`reference ${JSON.stringify(e)} isn't known (not in Document?)`)}return h.is_NDArray_ref(e)?h.decode_NDArray(e,o):g.isArray(e)?function(e){const t=[];for(const s of e)t.push(n(s));return t}(e):g.isPlainObject(e)?function(e){const t={};for(const[s,o]of f.entries(e))t[s]=n(o);return t}(e):e}return n(e)}static _initialize_references_json(e,t,s,o){const n=new Map;for(const{id:r,attributes:i}of e){const e=!t.has(r),_=e?s.get(r):t.get(r),a=j._resolve_refs(i,t,s,o);_.setv(a,{silent:!0}),n.set(r,{instance:_,is_new:e})}const r=[],i=new Set;function _(e){if(e instanceof a.HasProps){if(n.has(e.id)&&!i.has(e.id)){i.add(e.id);const{instance:t,is_new:s}=n.get(e.id),{attributes:o}=t;for(const e of f.values(o))_(e);s&&(t.finalize(),r.push(t))}}else if(g.isArray(e))for(const t of e)_(t);else if(g.isPlainObject(e))for(const t of f.values(e))_(t)}for(const e of n.values())_(e.instance);for(const e of r)e.connect_signals()}static _event_for_attribute_change(e,t,s,o,n){if(o.get_model_by_id(e.id).property(t).syncable){const r={kind:\"ModelChanged\",model:{id:e.id},attr:t,new:s};return a.HasProps._json_record_references(o,s,n,{recursive:!0}),r}return null}static _events_to_sync_objects(e,t,s,o){const n=Object.keys(e.attributes),r=Object.keys(t.attributes),_=d.difference(n,r),a=d.difference(r,n),l=d.intersection(n,r),c=[];for(const e of _)i.logger.warn(`Server sent key ${e} but we don't seem to have it in our JSON`);for(const n of a){const r=t.attributes[n];c.push(j._event_for_attribute_change(e,n,r,s,o))}for(const n of l){const r=e.attributes[n],i=t.attributes[n];null==r&&null==i||(null==r||null==i?c.push(j._event_for_attribute_change(e,n,i,s,o)):m.isEqual(r,i)||c.push(j._event_for_attribute_change(e,n,i,s,o)))}return c.filter(e=>null!=e)}static _compute_patch_since_json(e,t){const s=t.to_json(!1);function o(e){const t=new Map;for(const s of e.roots.references)t.set(s.id,s);return t}const n=o(e),r=new Map,i=[];for(const t of e.roots.root_ids)r.set(t,n.get(t)),i.push(t);const _=o(s),a=new Map,l=[];for(const e of s.roots.root_ids)a.set(e,_.get(e)),l.push(e);if(i.sort(),l.sort(),d.difference(i,l).length>0||d.difference(l,i).length>0)throw new Error(\"Not implemented: computing add/remove of document roots\");const c=new Set;let h=[];for(const e of t._all_models.keys())if(n.has(e)){const s=j._events_to_sync_objects(n.get(e),_.get(e),t,c);h=h.concat(s)}return{references:j._references_json(c,!1),events:h}}to_json_string(e=!0){return JSON.stringify(this.to_json(e))}to_json(e=!0){const t=this._roots.map(e=>e.id),s=this._all_models.values();return{version:r.version,title:this._title,roots:{root_ids:t,references:j._references_json(s,e)}}}static from_json_string(e){const t=JSON.parse(e);return j.from_json(t)}static from_json(e){i.logger.debug(\"Creating Document from JSON\");const t=e.version,s=-1!==t.indexOf(\"+\")||-1!==t.indexOf(\"-\"),o=`Library versions: JS (${r.version}) / Python (${t})`;s||r.version.replace(/-(dev|rc)\\./,\"$1\")==t?i.logger.debug(o):(i.logger.warn(\"JS/Python version mismatch\"),i.logger.warn(o));const n=e.roots,_=n.root_ids,a=n.references,l=j._instantiate_references_json(a,new Map);j._initialize_references_json(a,new Map,l,new Map);const c=new j;for(const e of _){const t=l.get(e);null!=t&&c.add_root(t)}return c.set_title(e.title),c}replace_with_json(e){j.from_json(e).destructively_move(this)}create_json_patch_string(e){return JSON.stringify(this.create_json_patch(e))}create_json_patch(e){const t=new Set,s=[];for(const o of e){if(o.document!==this)throw i.logger.warn(\"Cannot create a patch using events from a different document, event had \",o.document,\" we are \",this),new Error(\"Cannot create a patch using events from a different document\");s.push(o.json(t))}return{events:s,references:j._references_json(t)}}apply_json_patch(e,t=new Map,s){const o=e.references,n=e.events,r=j._instantiate_references_json(o,this._all_models);t instanceof Map||(t=new Map(t));for(const e of n)switch(e.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":{const t=e.model.id,s=this._all_models.get(t);if(null!=s)r.set(t,s);else if(!r.has(t))throw i.logger.warn(`Got an event for unknown model ${e.model}\"`),new Error(\"event model wasn't known\");break}}const _=new Map,a=new Map;for(const[e,t]of r)this._all_models.has(e)?_.set(e,t):a.set(e,t);j._initialize_references_json(o,_,a,t);for(const e of n)switch(e.kind){case\"MessageSent\":{const{msg_type:s,msg_data:o}=e;let n;if(void 0===o){if(1!=t.size)throw new Error(\"expected exactly one buffer\");{const[[,e]]=t;n=e}}else n=j._resolve_refs(o,_,a,t);this._trigger_on_message(s,n);break}case\"ModelChanged\":{const o=e.model.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot apply patch to ${o} which is not in the document`);const r=e.attr,i=j._resolve_refs(e.new,_,a,t);n.setv({[r]:i},{setter_id:s});break}case\"ColumnDataChanged\":{const o=e.column_source.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot stream to ${o} which is not in the document`);const r=j._resolve_refs(e.new,new Map,new Map,t);if(null!=e.cols)for(const e in n.data)e in r||(r[e]=n.data[e]);n.setv({data:r},{setter_id:s,check_eq:!1});break}case\"ColumnsStreamed\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot stream to ${t} which is not in the document`);if(!(o instanceof w.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");const n=e.data,r=e.rollover;o.stream(n,r,s);break}case\"ColumnsPatched\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot patch ${t} which is not in the document`);if(!(o instanceof w.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");const n=e.patches;o.patch(n,s);break}case\"RootAdded\":{const t=e.model.id,o=r.get(t);this.add_root(o,s);break}case\"RootRemoved\":{const t=e.model.id,o=r.get(t);this.remove_root(o,s);break}case\"TitleChanged\":this.set_title(e.title,s);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(e))}}}s.Document=j,j.__name__=\"Document\"},\n      function _(e,r,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),t=e(8),d=e(13),i=e(14);s.overrides={};const l=new Map;s.Models=e=>{const r=s.overrides[e]||l.get(e);if(null==r)throw new Error(`Model '${e}' does not exist. This could be due to a widget or a custom model not being registered before first usage.`);return r},s.Models.register=(e,r)=>{s.overrides[e]=r},s.Models.unregister=e=>{delete s.overrides[e]},s.Models.register_models=(e,r=!1,s)=>{var o;if(null!=e)for(const n of d.values(e))if(o=n,t.isObject(o)&&o.prototype instanceof i.HasProps){const e=n.__qualified__;r||!l.has(e)?l.set(e,n):null!=s?s(e):console.warn(`Model '${e}' was already registered`)}},s.register_models=s.Models.register_models,s.Models.registered_names=()=>Array.from(l.keys());const n=o.__importStar(e(34));s.register_models(n)},\n      function _(n,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});\n      //     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n      //     Underscore may be freely distributed under the MIT license.\n      const e=n(9),i=Object.prototype.toString;function o(n){return\"[object Number]\"===i.call(n)}function c(n){const t=typeof n;return\"function\"===t||\"object\"===t&&!!n}r.isBoolean=function(n){return!0===n||!1===n||\"[object Boolean]\"===i.call(n)},r.isNumber=o,r.isInteger=function(n){return o(n)&&Number.isInteger(n)},r.isString=function(n){return\"[object String]\"===i.call(n)},r.isFunction=function(n){return\"[object Function]\"===i.call(n)},r.isArray=function(n){return Array.isArray(n)},r.isArrayOf=function(n,t){return e.every(n,t)},r.isArrayableOf=function(n,t){for(let r=0,e=n.length;r<e;r++)if(!t(n[r]))return!1;return!0},r.isTypedArray=function(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)},r.isObject=c,r.isPlainObject=function(n){return c(n)&&(null==n.constructor||n.constructor===Object)},r.isIterable=function(n){return Symbol.iterator in Object(n)}},\n      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});\n      //     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n      //     Underscore may be freely distributed under the MIT license.\n      const r=n(10),o=n(11),i=n(12);e.map=i.map,e.reduce=i.reduce,e.min=i.min,e.min_by=i.min_by,e.max=i.max,e.max_by=i.max_by,e.sum=i.sum,e.cumsum=i.cumsum,e.every=i.every,e.some=i.some,e.find=i.find,e.find_last=i.find_last,e.find_index=i.find_index,e.find_last_index=i.find_last_index,e.sorted_index=i.sorted_index,e.is_empty=i.is_empty;const u=Array.prototype.slice;function c(n){return u.call(n)}function f(n){return[].concat(...n)}function s(n,t){return-1!==n.indexOf(t)}function a(n,t,e=1){o.assert(e>0,\"'step' must be a positive number\"),null==t&&(t=n,n=0);const{max:r,ceil:i,abs:u}=Math,c=n<=t?e:-e,f=r(i(u(t-n)/e),0),s=new Array(f);for(let t=0;t<f;t++,n+=c)s[t]=n;return s}e.head=function(n){return n[0]},e.tail=function(n){return n[n.length-1]},e.last=function(n){return n[n.length-1]},e.copy=c,e.concat=f,e.includes=s,e.contains=s,e.nth=function(n,t){return n[t>=0?t:n.length+t]},e.zip=function(...n){if(0==n.length)return[];const t=i.min(n.map(n=>n.length)),e=n.length,r=new Array(t);for(let o=0;o<t;o++){r[o]=new Array(e);for(let t=0;t<e;t++)r[o][t]=n[t][o]}return r},e.unzip=function(n){const t=n.length,e=i.min(n.map(n=>n.length)),r=Array(e);for(let n=0;n<e;n++)r[n]=new Array(t);for(let o=0;o<t;o++)for(let t=0;t<e;t++)r[t][o]=n[o][t];return r},e.range=a,e.linspace=function(n,t,e=100){const r=(t-n)/(e-1),o=new Array(e);for(let t=0;t<e;t++)o[t]=n+r*t;return o},e.transpose=function(n){const t=n.length,e=n[0].length,r=[];for(let o=0;o<e;o++){r[o]=[];for(let e=0;e<t;e++)r[o][e]=n[e][o]}return r},e.argmin=function(n){return i.min_by(a(n.length),t=>n[t])},e.argmax=function(n){return i.max_by(a(n.length),t=>n[t])},e.sort_by=function(n,t){const e=n.map((n,e)=>({value:n,index:e,key:t(n)}));return e.sort((n,t)=>{const e=n.key,r=t.key;if(e!==r){if(e>r||void 0===e)return 1;if(e<r||void 0===r)return-1}return n.index-t.index}),e.map(n=>n.value)},e.uniq=function(n){const t=new Set;for(const e of n)t.add(e);return[...t]},e.uniq_by=function(n,t){const e=[],r=[];for(const o of n){const n=t(o);s(r,n)||(r.push(n),e.push(o))}return e},e.union=function(...n){const t=new Set;for(const e of n)for(const n of e)t.add(n);return[...t]},e.intersection=function(n,...t){const e=[];n:for(const r of n)if(!s(e,r)){for(const n of t)if(!s(n,r))continue n;e.push(r)}return e},e.difference=function(n,...t){const e=f(t);return n.filter(n=>!s(e,n))},e.remove_at=function(n,t){const e=c(n);return e.splice(t,1),e},e.remove_by=function(n,t){for(let e=0;e<n.length;)t(n[e])?n.splice(e,1):e++},e.shuffle=function(n){const t=n.length,e=new Array(t);for(let o=0;o<t;o++){const t=r.randomIn(0,o);t!==o&&(e[o]=e[t]),e[t]=n[o]}return e},e.pairwise=function(n,t){const e=n.length,r=new Array(e-1);for(let o=0;o<e-1;o++)r[o]=t(n[o],n[o+1]);return r},e.reversed=function(n){const t=n.length,e=new Array(t);for(let r=0;r<t;r++)e[t-r-1]=n[r];return e},e.repeat=function(n,t){const e=new Array(t);for(let r=0;r<t;r++)e[r]=n;return e}},\n      function _(n,t,r){function e(n){if(0==n)return 0;for(;n<=0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;return n}function a(n,t){return e(n-t)}function o(){return Math.random()}Object.defineProperty(r,\"__esModule\",{value:!0}),r.angle_norm=e,r.angle_dist=a,r.angle_between=function(n,t,r,o){const u=a(t,r);if(0==u)return!1;if(u==2*Math.PI)return!0;const f=e(n),i=a(t,f)<=u&&a(f,r)<=u;return 0==o?i:!i},r.random=o,r.randomIn=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},r.atan2=function(n,t){return Math.atan2(t[1]-n[1],t[0]-n[0])},r.radians=function(n){return n*(Math.PI/180)},r.degrees=function(n){return n/(Math.PI/180)},r.rnorm=function(n,t){let r,e;for(;r=o(),e=o(),e=(2*e-1)*Math.sqrt(1/Math.E*2),!(-4*r*r*Math.log(r)>=e*e););let a=e/r;return a=n+t*a,a},r.clamp=function(n,t,r){return n<t?t:n>r?r:n}},\n      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});class o extends Error{}n.AssertionError=o,o.__name__=\"AssertionError\",n.assert=function(e,r){if(!(!0===e||!1!==e&&e()))throw new o(null!=r?r:\"Assertion failed\")},n.unreachable=function(){throw new Error(\"unreachable code\")}},\n      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=n(8),o=n(10);function i(n,t,e,...r){const o=n.length;t<0&&(t+=o),t<0?t=0:t>o&&(t=o),null==e||e>o-t?e=o-t:e<0&&(e=0);const i=o-e+r.length,u=new n.constructor(i);let l=0;for(;l<t;l++)u[l]=n[l];for(const n of r)u[l++]=n;for(let r=t+e;r<o;r++)u[l++]=n[r];return u}function u(n,t){return i(n,t,n.length-t)}function l(n,t){const e=n.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=t(n[o],o,n);return r}function c(n,t,e){const r=n.length;if(void 0===e&&0==r)throw new Error(\"can't reduce an empty array without an initial value\");let o,i;for(void 0===e?(o=n[0],i=1):(o=e,i=0);i<r;i++)o=t(o,n[i],i,n);return o}function f(n){return function(t,e){const r=t.length;let o=n>0?0:r-1;for(;o>=0&&o<r;o+=n)if(e(t[o]))return o;return-1}}function s(n,t){let e=0,r=n.length;for(;e<r;){const o=Math.floor((e+r)/2);n[o]<t?e=o+1:r=o}return e}function h(n,t,e,r,o){const i=(o-e)/(r-t);let u=i*(n-t)+e;return isFinite(u)||(u=i*(n-r)+o,isFinite(u)||e!=o||(u=e)),u}function a(n,t){if(n<t[0])return-1;if(n>t[t.length-1])return t.length;let e=0,r=t.length-1;for(;r-e!=1;){const o=e+Math.floor((r-e)/2);n>=t[o]?e=o:r=o}return e}e.is_empty=function(n){return 0==n.length},e.copy=function(n){return r.isArray(n)?n.slice():new n.constructor(n)},e.splice=i,e.head=u,e.insert=function(n,t,e){return i(n,e,0,t)},e.append=function(n,t){return i(n,n.length,0,t)},e.prepend=function(n,t){return i(n,0,0,t)},e.indexOf=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.subselect=function(n,t){const e=t.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=n[t[o]];return r},e.map=l,e.filter=function(n,t){const e=n.length,r=new n.constructor(e);let o=0;for(let i=0;i<e;i++){const e=n[i];t(e,i,n)&&(r[o++]=e)}return u(r,o)},e.reduce=c,e.min=function(n){let t,e=1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t<e&&(e=t);return e},e.max=function(n){let t,e=-1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t>e&&(e=t);return e},e.minmax=function(n){let t,e=1/0,r=-1/0;for(let o=0,i=n.length;o<i;o++)t=n[o],isNaN(t)||(t<e&&(e=t),t>r&&(r=t));return[e,r]},e.min_by=function(n,t){if(0==n.length)throw new Error(\"min_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],u=t(i);u<r&&(e=i,r=u)}return e},e.max_by=function(n,t){if(0==n.length)throw new Error(\"max_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],u=t(i);u>r&&(e=i,r=u)}return e},e.sum=function(n){let t=0;for(let e=0,r=n.length;e<r;e++)t+=n[e];return t},e.cumsum=function(n){const t=new n.constructor(n.length);return c(n,(n,e,r)=>t[r]=n+e,0),t},e.every=function(n,t){for(let e=0,r=n.length;e<r;e++)if(!t(n[e]))return!1;return!0},e.some=function(n,t){for(let e=0,r=n.length;e<r;e++)if(t(n[e]))return!0;return!1},e.index_of=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.find_index=f(1),e.find_last_index=f(-1),e.find=function(n,t){const r=e.find_index(n,t);return-1==r?void 0:n[r]},e.find_last=function(n,t){const r=e.find_last_index(n,t);return-1==r?void 0:n[r]},e.sorted_index=s,e.bin_counts=function(n,t){const e=t.length-1,r=Array(e).fill(0);for(let i=0;i<n.length;i++){const u=s(t,n[i]);r[o.clamp(u-1,0,e-1)]+=1}return r},e.interpolate=function(n,t,e){const r=n.length,o=new Array(r);for(let i=0;i<r;i++){const r=n[i];if(isNaN(r)){o[i]=r;continue}const u=a(r,t);if(-1==u)o[i]=e[0];else if(u==t.length)o[i]=e[e.length-1];else if(u==t.length-1||t[u]==r)o[i]=e[u];else{const n=t[u],l=e[u],c=t[u+1],f=e[u+1];o[i]=h(r,n,l,c,f)}}return o},e.left_edge_index=a,e.norm=function(n,t,e){const r=e-t;return l(n,n=>(n-t)/r)}},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const c=e(9);function o(e){return Object.keys(e).length}n.keys=Object.keys,n.values=Object.values,n.entries=Object.entries,n.extend=Object.assign,n.clone=function(e){return Object.assign({},e)},n.merge=function(e,t){const n=Object.create(Object.prototype),o=c.concat([Object.keys(e),Object.keys(t)]);for(const s of o){const o=e.hasOwnProperty(s)?e[s]:[],r=t.hasOwnProperty(s)?t[s]:[];n[s]=c.union(o,r)}return n},n.size=o,n.isEmpty=function(e){return 0==o(e)},n.to_object=function(e){const t={};for(const[n,c]of e)t[n]=c;return t}},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=t(1),n=t(15),i=t(17),o=s.__importStar(t(18)),c=s.__importStar(t(21)),a=s.__importStar(t(28)),_=t(29),u=t(9),f=t(13),l=t(8),h=t(25),p=t(5),d=t(30),y=t(31),g=t(25),v=t(33),m=s.__importStar(t(21));class b extends(n.Signalable()){constructor(t={}){var e;super(),this._subtype=void 0,this.document=null,this.destroyed=new n.Signal0(this,\"destroyed\"),this.change=new n.Signal0(this,\"change\"),this.transformchange=new n.Signal0(this,\"transformchange\"),this.properties={},this._pending=!1,this._changing=!1;const r=t instanceof Map?t.get:e=>t[e];for(const[t,{type:e,default_value:s,options:n}]of f.entries(this._props)){let i;i=e instanceof c.Kind?new o.PrimitiveProperty(this,t,e,s,r(t),n):new e(this,t,c.Any,s,r(t),n),this.properties[t]=i}null!==(e=r(\"__deferred__\"))&&void 0!==e&&e||(this.finalize(),this.connect_signals())}set type(t){console.warn(\"prototype.type = 'ModelName' is deprecated, use static __name__ instead\"),this.constructor.__name__=t}get type(){return this.constructor.__qualified__}static get __qualified__(){const{__module__:t,__name__:e}=this;return null!=t?`${t}.${e}`:e}static get[Symbol.toStringTag](){return this.__name__}static init_HasProps(){this.prototype._props={},this.prototype._mixins=[],this.define({id:[o.String,()=>_.uniqueId()]})}static _fix_default(t,e){if(void 0!==t){if(l.isFunction(t))return t;if(l.isArray(t))return()=>u.copy(t);if(l.isPlainObject(t))return()=>f.clone(t);if(l.isObject(t))throw new Error(t+\" must be explicitly wrapped in a function\");return()=>t}}static define(t){for(const[e,r]of f.entries(l.isFunction(t)?t(m):t)){if(null!=this.prototype._props[e])throw new Error(`attempted to redefine property '${this.prototype.type}.${e}'`);if(null!=this.prototype[e])throw new Error(`attempted to redefine attribute '${this.prototype.type}.${e}'`);Object.defineProperty(this.prototype,e,{get(){return this.properties[e].get_value()},set(t){return this.setv({[e]:t}),this},configurable:!1,enumerable:!0});const[t,s,n]=r,i={type:t,default_value:this._fix_default(s,e),options:n},o=f.clone(this.prototype._props);o[e]=i,this.prototype._props=o}}static internal(t){const e={};for(const[r,s]of f.entries(t)){const[t,n,i={}]=s;e[r]=[t,n,Object.assign(Object.assign({},i),{internal:!0})]}this.define(e)}static mixins(t){function e(t){switch(t){case\"line\":return a.LineVector;case\"fill\":return a.FillVector;case\"hatch\":return a.HatchVector;case\"text\":return a.TextVector;default:throw new Error(`Unknown property mixin kind '${t}'`)}}function r(t,e){const r={};for(const[s,n]of f.entries(e))r[t+s]=n;return r}function s(t){const[e]=Object.keys(t),[r]=e.split(\"_\",1);return r}l.isArray(t)||(t=[t]);const n={},i=[];for(const o of t)if(l.isString(o)){const[t,s=\"\"]=o.split(\":\"),c=e(t);i.push(o),f.extend(n,r(s,c))}else if(l.isArray(o)){const[t,e]=o;i.push(`${s(e)}:${t}`),f.extend(n,r(t,e))}else{const t=o;i.push(s(t)),f.extend(n,t)}this.define(n),this.prototype._mixins=[...this.prototype._mixins,...i]}static override(t){for(const[e,r]of f.entries(t)){const t=this._fix_default(r,e),s=this.prototype._props[e];if(null==s)throw new Error(`attempted to override nonexistent '${this.prototype.type}.${e}'`);const n=f.clone(this.prototype._props);n[e]=Object.assign(Object.assign({},s),{default_value:t}),this.prototype._props=n}}toString(){return`${this.type}(${this.id})`}property(t){const e=this.properties[t];if(null!=e)return e;throw new Error(`unknown property ${this.type}.${t}`)}get attributes(){const t={};for(const e of this)t[e.attr]=e.get_value();return t}[g.equals](t,e){for(const r of this){const s=t.property(r.attr);if(e.eq(r.get_value(),s.get_value()))return!1}return!0}[v.pretty](t){const e=t.token,r=[];for(const s of this)if(s.dirty){const n=s.get_value();r.push(`${s.attr}${e(\":\")} ${t.to_string(n)}`)}return`${this.constructor.__qualified__}${e(\"(\")}${e(\"{\")}${r.join(e(\",\")+\" \")}${e(\"}\")}${e(\")\")}`}finalize(){for(const t of this)null!=t.spec.transform&&this.connect(t.spec.transform.change,()=>this.transformchange.emit());this.initialize()}initialize(){}connect_signals(){}disconnect_signals(){n.Signal.disconnectReceiver(this)}destroy(){this.disconnect_signals(),this.destroyed.emit()}clone(){return new this.constructor(this.attributes)}_setv(t,e){const r=e.check_eq,s=[],n=this._changing;this._changing=!0;for(const[e,n]of t)!1!==r&&h.isEqual(e.get_value(),n)||(e.set_value(n),s.push(e));s.length>0&&(this._pending=!0);for(const t of s)t.change.emit();if(!n){if(!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}}setv(t,e={}){const r=f.entries(t);if(0==r.length)return;if(!0===e.silent){for(const[t,e]of r)this.properties[t].set_value(e);return}const s=new Map,n=new Map;for(const[t,e]of r){const r=this.properties[t];s.set(r,e),n.set(r,r.get_value())}this._setv(s,e);const{document:i}=this;if(null!=i){const t=[];for(const[e,r]of n)t.push([e,r,e.get_value()]);for(const[,e,r]of t)if(this._needs_invalidate(e,r)){i._invalidate_all_models();break}this._push_changes(t,e)}}getv(t){return this.property(t).get_value()}ref(){return{id:this.id}}struct(){const t={type:this.type,id:this.id,attributes:{}};return null!=this._subtype&&(t.subtype=this._subtype),t}set_subtype(t){this._subtype=t}*[Symbol.iterator](){yield*f.values(this.properties)}*syncable_properties(){for(const t of this)t.syncable&&(yield t)}serializable_attributes(){const t={};for(const e of this.syncable_properties())t[e.attr]=e.get_value();return t}static _value_to_json(t){if(t instanceof b)return t.ref();if(d.is_NDArray(t))return y.encode_NDArray(t);if(l.isArray(t)||l.isTypedArray(t)){const e=t.length,r=new Array(e);for(let s=0;s<e;s++){const e=t[s];r[s]=b._value_to_json(e)}return r}if(l.isPlainObject(t)){const e={};for(const[r,s]of f.entries(t))e[r]=b._value_to_json(s);return e}return t}attributes_as_json(t=!0,e=b._value_to_json){const r={};for(const s of this)s.syncable&&(t||s.dirty)&&(r[s.attr]=e(s.get_value()));return r}static _json_record_references(t,e,r,s){const{recursive:n}=s;if(i.is_ref(e)){const s=t.get_model_by_id(e.id);null==s||r.has(s)||b._value_record_references(s,r,{recursive:n})}else if(l.isArray(e))for(const s of e)b._json_record_references(t,s,r,{recursive:n});else if(l.isPlainObject(e))for(const s of f.values(e))b._json_record_references(t,s,r,{recursive:n})}static _value_record_references(t,e,r){const{recursive:s}=r;if(t instanceof b){if(!e.has(t)&&(e.add(t),s)){const r=t._immediate_references();for(const t of r)b._value_record_references(t,e,{recursive:!0})}}else if(l.isArray(t))for(const r of t)b._value_record_references(r,e,{recursive:s});else if(l.isPlainObject(t))for(const r of f.values(t))b._value_record_references(r,e,{recursive:s})}_immediate_references(){const t=new Set;for(const e of this.syncable_properties()){const r=e.get_value();b._value_record_references(r,t,{recursive:!1})}return t}references(){const t=new Set;return b._value_record_references(this,t,{recursive:!0}),t}_doc_attached(){}_doc_detached(){}attach_document(t){if(null!=this.document&&this.document!=t)throw new Error(\"models must be owned by only a single document\");this.document=t,this._doc_attached()}detach_document(){this._doc_detached(),this.document=null}_needs_invalidate(t,e){const r=new Set;b._value_record_references(e,r,{recursive:!1});const s=new Set;b._value_record_references(t,s,{recursive:!1});for(const t of r)if(!s.has(t))return!0;for(const t of s)if(!r.has(t))return!0;return!1}_push_changes(t,e={}){const{document:r}=this;if(null==r)return;const{setter_id:s}=e,n=[];for(const[e,i,o]of t)e.syncable&&n.push(new p.ModelChangedEvent(r,this,e.attr,i,o,s));if(0!=n.length){let t;1==n.length?[t]=n:t=new p.DocumentEventBatch(r,n,s),r._trigger_on_change(t)}}materialize_dataspecs(t){const e={};for(const r of this){if(!(r instanceof o.VectorSpec))continue;if(r.optional&&null==r.spec.value&&!r.dirty)continue;const s=r.attr,n=r.array(t);e[\"_\"+s]=n,r instanceof o.DistanceSpec&&(e[\"max_\"+s]=u.max(n))}return e}on_change(t,e){for(const r of l.isArray(t)?t:[t])this.connect(r.change,e)}}r.HasProps=b,b.init_HasProps()},\n      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const l=n(16),s=n(9);class o{constructor(n,t){this.sender=n,this.name=t}connect(n,t=null){c.has(this.sender)||c.set(this.sender,[]);const e=c.get(this.sender);if(null!=u(e,this,n,t))return!1;const l=null!=t?t:n;r.has(l)||r.set(l,[]);const s=r.get(l),o={signal:this,slot:n,context:t};return e.push(o),s.push(o),!0}disconnect(n,t=null){const e=c.get(this.sender);if(null==e||0===e.length)return!1;const l=u(e,this,n,t);if(null==l)return!1;const s=null!=t?t:n,o=r.get(s);return l.signal=null,a(e),a(o),!0}emit(n){var t;const e=null!==(t=c.get(this.sender))&&void 0!==t?t:[];for(const{signal:t,slot:l,context:s}of e)t===this&&l.call(s,n,this.sender)}}e.Signal=o,o.__name__=\"Signal\";class i extends o{emit(){super.emit(void 0)}}e.Signal0=i,i.__name__=\"Signal0\",function(n){n.disconnectBetween=function(n,t){const e=c.get(n);if(null==e||0===e.length)return;const l=r.get(t);if(null!=l&&0!==l.length){for(const t of l){if(null==t.signal)return;t.signal.sender===n&&(t.signal=null)}a(e),a(l)}},n.disconnectSender=function(n){var t;const e=c.get(n);if(null!=e&&0!==e.length){for(const n of e){if(null==n.signal)return;const e=null!==(t=n.context)&&void 0!==t?t:n.slot;n.signal=null,a(r.get(e))}a(e)}},n.disconnectReceiver=function(n){const t=r.get(n);if(null!=t&&0!==t.length){for(const n of t){if(null==n.signal)return;const t=n.signal.sender;n.signal=null,a(c.get(t))}a(t)}},n.disconnectAll=function(n){const t=c.get(n);if(null!=t&&0!==t.length){for(const n of t)n.signal=null;a(t)}const e=r.get(n);if(null!=e&&0!==e.length){for(const n of e)n.signal=null;a(e)}}}(o||(e.Signal=o={})),e.Signalable=function(){return class{connect(n,t){return n.connect(t,this)}disconnect(n,t){return n.disconnect(t,this)}}};const c=new WeakMap,r=new WeakMap;function u(n,t,e,l){return s.find(n,n=>n.signal===t&&n.slot===e&&n.context===l)}const g=new Set;function a(n){0===g.size&&l.defer(f),g.add(n)}function f(){for(const n of g)s.remove_by(n,n=>null==n.signal);g.clear()}},\n      function _(n,e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.delay=\n      //     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n      //     Underscore may be freely distributed under the MIT license.\n      function(n,e){return setTimeout(n,e)};const u=\"function\"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;t.defer=function(n){return new Promise(e=>{u(()=>e(n()))})},t.throttle=function(n,e,t={}){let u,o,i,r=null,l=0;const c=function(){l=!1===t.leading?0:Date.now(),r=null,i=n.apply(u,o),r||(u=o=null)};return function(){const a=Date.now();l||!1!==t.leading||(l=a);const f=e-(a-l);return u=this,o=arguments,f<=0||f>e?(r&&(clearTimeout(r),r=null),l=a,i=n.apply(u,o),r||(u=o=null)):r||!1===t.trailing||(r=setTimeout(c,f)),i}},t.once=function(n){let e,t=!1;return function(){return t||(t=!0,e=n()),e}}},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(8),r=e(13);t.is_ref=function(e){if(i.isPlainObject(e)){const n=r.keys(e);return 1==n.length&&\"id\"==n[0]}return!1}},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=e(1),s=e(15),i=e(19),r=a.__importStar(e(20)),l=e(24),o=e(9),c=e(12),_=e(22),u=e(8),d=e(27);function p(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function S(e){return u.isPlainObject(e)&&(void 0===e.value?0:1)+(void 0===e.field?0:1)+(void 0===e.expr?0:1)==1}n.isSpec=S;class m{constructor(e,t,n,a,i,r={}){var l,o;let c;if(this.obj=e,this.attr=t,this.kind=n,this.default_value=a,this._dirty=!1,this.change=new s.Signal0(this.obj,\"change\"),this.internal=null!==(l=r.internal)&&void 0!==l&&l,this.optional=null!==(o=r.optional)&&void 0!==o&&o,void 0!==i)c=i,this._dirty=!0;else{const t=this._default_override();c=void 0!==t?t:void 0!==a?a(e):null}this._update(c)}get is_value(){return void 0!==this.spec.value}get syncable(){return!this.internal}get_value(){return this.spec.value}set_value(e){this._update(e),this._dirty=!0}_default_override(){}get dirty(){return this._dirty}_update(e){null!=e&&this.validate(e),this.spec={value:e}}toString(){return`Prop(${this.obj}.${this.attr}, spec: ${p(this.spec)})`}normalize(e){return e}validate(e){if(!this.valid(e))throw new Error(`${this.obj.type}.${this.attr} given invalid value: ${p(e)}`)}valid(e){return this.kind.valid(e)}value(e=!0){if(!this.is_value)throw new Error(\"attempted to retrieve property value for property without value specification\");let t=this.normalize([this.spec.value])[0];return null!=this.spec.transform&&e&&(t=this.spec.transform.compute(t)),t}}n.Property=m,m.__name__=\"Property\";class h extends m{}n.PrimitiveProperty=h,h.__name__=\"PrimitiveProperty\";class v extends m{}n.Any=v,v.__name__=\"Any\";class g extends m{valid(e){return u.isArray(e)||e instanceof Float32Array||e instanceof Float64Array}}n.Array=g,g.__name__=\"Array\";class x extends m{valid(e){return u.isBoolean(e)}}n.Boolean=x,x.__name__=\"Boolean\";class y extends m{valid(e){return u.isString(e)&&_.is_color(e)}}n.Color=y,y.__name__=\"Color\";class f extends m{}n.Instance=f,f.__name__=\"Instance\";class A extends m{valid(e){return u.isNumber(e)}}n.Number=A,A.__name__=\"Number\";class P extends A{valid(e){return u.isNumber(e)&&(0|e)==e}}n.Int=P,P.__name__=\"Int\";class C extends A{}n.Angle=C,C.__name__=\"Angle\";class b extends A{valid(e){return u.isNumber(e)&&0<=e&&e<=1}}n.Percent=b,b.__name__=\"Percent\";class L extends m{valid(e){return u.isString(e)}}n.String=L,L.__name__=\"String\";class N extends m{valid(e){return null===e||u.isString(e)}}n.NullString=N,N.__name__=\"NullString\";class T extends L{}n.FontSize=T,T.__name__=\"FontSize\";class q extends L{_default_override(){return d.settings.dev?\"Bokeh\":void 0}}n.Font=q,q.__name__=\"Font\";class B extends m{valid(e){return u.isString(e)&&o.includes(this.enum_values,e)}}function M(e){return class extends B{get enum_values(){return[...e]}}}n.EnumProperty=B,B.__name__=\"EnumProperty\",n.Enum=M;class w extends B{get enum_values(){return[...r.Direction]}normalize(e){const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)switch(e[n]){case\"clock\":t[n]=0;break;case\"anticlock\":t[n]=1}return t}}n.Direction=w,w.__name__=\"Direction\",n.Anchor=M(r.Anchor),n.AngleUnits=M(r.AngleUnits),n.BoxOrigin=M(r.BoxOrigin),n.ButtonType=M(r.ButtonType),n.CalendarPosition=M(r.CalendarPosition),n.Dimension=M(r.Dimension),n.Dimensions=M(r.Dimensions),n.Distribution=M(r.Distribution),n.FontStyle=M(r.FontStyle),n.HatchPatternType=M(r.HatchPatternType),n.HTTPMethod=M(r.HTTPMethod),n.HexTileOrientation=M(r.HexTileOrientation),n.HoverMode=M(r.HoverMode),n.LatLon=M(r.LatLon),n.LegendClickPolicy=M(r.LegendClickPolicy),n.LegendLocation=M(r.LegendLocation),n.LineCap=M(r.LineCap),n.LineJoin=M(r.LineJoin),n.LinePolicy=M(r.LinePolicy),n.Location=M(r.Location),n.Logo=M(r.Logo),n.MarkerType=M(r.MarkerType),n.MutedPolicy=M(r.MutedPolicy),n.Orientation=M(r.Orientation),n.OutputBackend=M(r.OutputBackend),n.PaddingUnits=M(r.PaddingUnits),n.Place=M(r.Place),n.PointPolicy=M(r.PointPolicy),n.RadiusDimension=M(r.RadiusDimension),n.RenderLevel=M(r.RenderLevel),n.RenderMode=M(r.RenderMode),n.ResetPolicy=M(r.ResetPolicy),n.RoundingFunction=M(r.RoundingFunction),n.Side=M(r.Side),n.SizingMode=M(r.SizingMode),n.Sort=M(r.Sort),n.SpatialUnits=M(r.SpatialUnits),n.StartEnd=M(r.StartEnd),n.StepMode=M(r.StepMode),n.TapBehavior=M(r.TapBehavior),n.TextAlign=M(r.TextAlign),n.TextBaseline=M(r.TextBaseline),n.TextureRepetition=M(r.TextureRepetition),n.TickLabelOrientation=M(r.TickLabelOrientation),n.TooltipAttachment=M(r.TooltipAttachment),n.UpdateMode=M(r.UpdateMode),n.VerticalAlign=M(r.VerticalAlign);class D extends m{get_value(){return null===this.spec.value?null:this.spec}_update(e){S(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}}n.ScalarSpec=D,D.__name__=\"ScalarSpec\";class k extends D{}n.AnyScalar=k,k.__name__=\"AnyScalar\";class F extends D{}n.ColorScalar=F,F.__name__=\"ColorScalar\";class U extends D{}n.NumberScalar=U,U.__name__=\"NumberScalar\";class z extends D{}n.StringScalar=z,z.__name__=\"StringScalar\";class O extends D{}n.NullStringScalar=O,O.__name__=\"NullStringScalar\";class R extends D{}n.ArrayScalar=R,R.__name__=\"ArrayScalar\";class $ extends D{}n.LineJoinScalar=$,$.__name__=\"LineJoinScalar\";class E extends D{}n.LineCapScalar=E,E.__name__=\"LineCapScalar\";class H extends D{}n.FontSizeScalar=H,H.__name__=\"FontSizeScalar\";class j extends D{}n.FontStyleScalar=j,j.__name__=\"FontStyleScalar\";class X extends D{}n.TextAlignScalar=X,X.__name__=\"TextAlignScalar\";class Y extends D{}n.TextBaselineScalar=Y,Y.__name__=\"TextBaselineScalar\";class I extends m{get_value(){return null===this.spec.value?null:this.spec}_update(e){S(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}array(e){var t;let n;const a=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=this.spec.field){const t=e.get_column(this.spec.field);if(null!=t)n=this.normalize(t);else{i.logger.warn(`attempted to retrieve property array for nonexistent field '${this.spec.field}'`);const e=new l.NumberArray(a);e.fill(NaN),n=e}}else if(null!=this.spec.expr)n=this.normalize(this.spec.expr.v_compute(e));else{const e=this.value(!1);if(u.isNumber(e)){const t=new l.NumberArray(a);t.fill(e),n=t}else n=o.repeat(e,a)}return null!=this.spec.transform&&(n=this.spec.transform.v_compute(n)),n}}n.VectorSpec=I,I.__name__=\"VectorSpec\";class J extends I{}n.DataSpec=J,J.__name__=\"DataSpec\";class V extends I{_update(e){super._update(e),null==this.spec.units&&(this.spec.units=this.default_units);const t=this.spec.units;if(!o.includes(this.valid_units,t))throw new Error(`units must be one of ${this.valid_units.join(\", \")}; got: ${t}`)}get units(){return this.spec.units}set units(e){this.spec.units=e}}n.UnitsSpec=V,V.__name__=\"UnitsSpec\";class G extends V{array(e){return new l.NumberArray(super.array(e))}}n.NumberUnitsSpec=G,G.__name__=\"NumberUnitsSpec\";class K extends J{}n.BaseCoordinateSpec=K,K.__name__=\"BaseCoordinateSpec\";class Q extends K{}n.CoordinateSpec=Q,Q.__name__=\"CoordinateSpec\";class W extends K{}n.CoordinateSeqSpec=W,W.__name__=\"CoordinateSeqSpec\";class Z extends K{}n.CoordinateSeqSeqSeqSpec=Z,Z.__name__=\"CoordinateSeqSeqSeqSpec\";class ee extends Q{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSpec=ee,ee.__name__=\"XCoordinateSpec\";class te extends Q{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSpec=te,te.__name__=\"YCoordinateSpec\";class ne extends W{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSpec=ne,ne.__name__=\"XCoordinateSeqSpec\";class ae extends W{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSpec=ae,ae.__name__=\"YCoordinateSeqSpec\";class se extends Z{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSeqSeqSpec=se,se.__name__=\"XCoordinateSeqSeqSeqSpec\";class ie extends Z{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSeqSeqSpec=ie,ie.__name__=\"YCoordinateSeqSeqSeqSpec\";class re extends G{get default_units(){return\"rad\"}get valid_units(){return[...r.AngleUnits]}normalize(e){return\"deg\"==this.spec.units&&(e=c.map(e,e=>e*Math.PI/180)),e=c.map(e,e=>-e),super.normalize(e)}}n.AngleSpec=re,re.__name__=\"AngleSpec\";class le extends G{get default_units(){return\"data\"}get valid_units(){return[...r.SpatialUnits]}}n.DistanceSpec=le,le.__name__=\"DistanceSpec\";class oe extends J{array(e){return new Uint8Array(super.array(e))}}n.BooleanSpec=oe,oe.__name__=\"BooleanSpec\";class ce extends J{array(e){return new l.NumberArray(super.array(e))}}n.NumberSpec=ce,ce.__name__=\"NumberSpec\";class _e extends J{array(e){const t=super.array(e),n=t.length,a=new l.ColorArray(n);for(let e=0;e<n;e++){const n=t[e];if(u.isNumber(n))a[e]=n;else{const t=_.color2rgba(n);a[e]=_.encode_rgba(t)}}return a}}n.ColorSpec=_e,_e.__name__=\"ColorSpec\";class ue extends J{}n.FontSizeSpec=ue,ue.__name__=\"FontSizeSpec\";class de extends J{}n.MarkerSpec=de,de.__name__=\"MarkerSpec\";class pe extends J{}n.StringSpec=pe,pe.__name__=\"StringSpec\";class Se extends J{}n.NullStringSpec=Se,Se.__name__=\"NullStringSpec\";class me extends J{}n.NDArraySpec=me,me.__name__=\"NDArraySpec\"},\n      function _(e,l,o){Object.defineProperty(o,\"__esModule\",{value:!0});const n=e(8),t=e(13),s={};class g{constructor(e,l){this.name=e,this.level=l}}o.LogLevel=g,g.__name__=\"LogLevel\";class r{constructor(e,l=r.INFO){this._name=e,this.set_level(l)}static get levels(){return Object.keys(r.log_levels)}static get(e,l=r.INFO){if(e.length>0){let o=s[e];return null==o&&(s[e]=o=new r(e,l)),o}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")}get level(){return this.get_level()}get_level(){return this._log_level}set_level(e){if(e instanceof g)this._log_level=e;else{if(!n.isString(e)||null==r.log_levels[e])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=r.log_levels[e]}const l=`[${this._name}]`;for(const[e,o]of t.entries(r.log_levels))o.level<this._log_level.level||this._log_level.level===r.OFF.level?this[e]=function(){}:this[e]=i(e,l)}trace(...e){}debug(...e){}info(...e){}warn(...e){}error(...e){}}function i(e,l){return null!=console[e]?console[e].bind(console,l):null!=console.log?console.log.bind(console,l):function(){}}function _(e){const l=o.logger.level;return n.isString(e)&&null==r.log_levels[e]?(console.log(`[bokeh] unrecognized logging level '${e}' passed to Bokeh.set_log_level(), ignoring`),console.log(\"[bokeh] valid log levels are: \"+r.levels.join(\", \"))):(console.log(`[bokeh] setting log level to: '${n.isString(e)?e:e.level}'`),o.logger.set_level(e)),l}o.Logger=r,r.__name__=\"Logger\",r.TRACE=new g(\"trace\",0),r.DEBUG=new g(\"debug\",1),r.INFO=new g(\"info\",2),r.WARN=new g(\"warn\",6),r.ERROR=new g(\"error\",7),r.FATAL=new g(\"fatal\",8),r.OFF=new g(\"off\",9),r.log_levels={trace:r.TRACE,debug:r.DEBUG,info:r.INFO,warn:r.WARN,error:r.ERROR,fatal:r.FATAL,off:r.OFF},o.logger=r.get(\"bokeh\"),o.set_log_level=_,o.with_log_level=function(e,l){const o=_(e);try{l()}finally{_(o)}}},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(21);t.Align=o.Enum(\"start\",\"center\",\"end\"),t.Anchor=o.Enum(\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\"),t.AngleUnits=o.Enum(\"deg\",\"rad\"),t.BoxOrigin=o.Enum(\"corner\",\"center\"),t.ButtonType=o.Enum(\"default\",\"primary\",\"success\",\"warning\",\"danger\"),t.CalendarPosition=o.Enum(\"auto\",\"above\",\"below\"),t.Dimension=o.Enum(\"width\",\"height\"),t.Dimensions=o.Enum(\"width\",\"height\",\"both\"),t.Direction=o.Enum(\"clock\",\"anticlock\"),t.Distribution=o.Enum(\"uniform\",\"normal\"),t.FontStyle=o.Enum(\"normal\",\"italic\",\"bold\",\"bold italic\"),t.HatchPatternType=o.Enum(\"blank\",\"dot\",\"ring\",\"horizontal_line\",\"vertical_line\",\"cross\",\"horizontal_dash\",\"vertical_dash\",\"spiral\",\"right_diagonal_line\",\"left_diagonal_line\",\"diagonal_cross\",\"right_diagonal_dash\",\"left_diagonal_dash\",\"horizontal_wave\",\"vertical_wave\",\"criss_cross\",\" \",\".\",\"o\",\"-\",\"|\",\"+\",'\"',\":\",\"@\",\"/\",\"\\\\\",\"x\",\",\",\"`\",\"v\",\">\",\"*\"),t.HTTPMethod=o.Enum(\"POST\",\"GET\"),t.HexTileOrientation=o.Enum(\"pointytop\",\"flattop\"),t.HoverMode=o.Enum(\"mouse\",\"hline\",\"vline\"),t.LatLon=o.Enum(\"lat\",\"lon\"),t.LegendClickPolicy=o.Enum(\"none\",\"hide\",\"mute\"),t.LegendLocation=t.Anchor,t.LineCap=o.Enum(\"butt\",\"round\",\"square\"),t.LineJoin=o.Enum(\"miter\",\"round\",\"bevel\"),t.LinePolicy=o.Enum(\"prev\",\"next\",\"nearest\",\"interp\",\"none\"),t.Location=o.Enum(\"above\",\"below\",\"left\",\"right\"),t.Logo=o.Enum(\"normal\",\"grey\"),t.MarkerType=o.Enum(\"asterisk\",\"circle\",\"circle_cross\",\"circle_dot\",\"circle_x\",\"circle_y\",\"cross\",\"dash\",\"diamond\",\"diamond_cross\",\"diamond_dot\",\"dot\",\"hex\",\"hex_dot\",\"inverted_triangle\",\"plus\",\"square\",\"square_cross\",\"square_dot\",\"square_pin\",\"square_x\",\"triangle\",\"triangle_dot\",\"triangle_pin\",\"x\",\"y\"),t.MutedPolicy=o.Enum(\"show\",\"ignore\"),t.Orientation=o.Enum(\"vertical\",\"horizontal\"),t.OutputBackend=o.Enum(\"canvas\",\"svg\",\"webgl\"),t.PaddingUnits=o.Enum(\"percent\",\"absolute\"),t.Place=o.Enum(\"above\",\"below\",\"left\",\"right\",\"center\"),t.PointPolicy=o.Enum(\"snap_to_data\",\"follow_mouse\",\"none\"),t.RadiusDimension=o.Enum(\"x\",\"y\",\"max\",\"min\"),t.RenderLevel=o.Enum(\"image\",\"underlay\",\"glyph\",\"guide\",\"annotation\",\"overlay\"),t.RenderMode=o.Enum(\"canvas\",\"css\"),t.ResetPolicy=o.Enum(\"standard\",\"event_only\"),t.RoundingFunction=o.Enum(\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"),t.SelectionMode=o.Enum(\"replace\",\"append\",\"intersect\",\"subtract\"),t.Side=o.Enum(\"above\",\"below\",\"left\",\"right\"),t.SizingMode=o.Enum(\"stretch_width\",\"stretch_height\",\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"),t.Sort=o.Enum(\"ascending\",\"descending\"),t.SpatialUnits=o.Enum(\"screen\",\"data\"),t.StartEnd=o.Enum(\"start\",\"end\"),t.StepMode=o.Enum(\"after\",\"before\",\"center\"),t.TapBehavior=o.Enum(\"select\",\"inspect\"),t.TextAlign=o.Enum(\"left\",\"right\",\"center\"),t.TextBaseline=o.Enum(\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"),t.TextureRepetition=o.Enum(\"repeat\",\"repeat_x\",\"repeat_y\",\"no_repeat\"),t.TickLabelOrientation=o.Enum(\"vertical\",\"horizontal\",\"parallel\",\"normal\"),t.TooltipAttachment=o.Enum(\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"),t.UpdateMode=o.Enum(\"replace\",\"append\"),t.VerticalAlign=o.Enum(\"top\",\"middle\",\"bottom\")},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1).__importStar(e(8)),r=e(22);class i{}t.Kind=i,i.__name__=\"Kind\",function(e){class n extends i{valid(e){return!0}}n.__name__=\"Any\",e.Any=n;class t extends i{valid(e){return!0}}t.__name__=\"Unknown\",e.Unknown=t;class l extends i{valid(e){return s.isBoolean(e)}}l.__name__=\"Boolean\",e.Boolean=l;class a extends i{constructor(e){super(),this.obj_type=e}valid(e){return!0}}a.__name__=\"Ref\",e.Ref=a;class _ extends i{valid(e){return s.isNumber(e)}}_.__name__=\"Number\",e.Number=_;class u extends _{valid(e){return super.valid(e)&&s.isInteger(e)}}u.__name__=\"Int\",e.Int=u;class d extends i{constructor(e){super(),this.types=e,this.types=e}valid(e){return this.types.some(n=>n.valid(e))}}d.__name__=\"Or\",e.Or=d;class o extends i{constructor(e){super(),this.types=e,this.types=e}valid(e){if(!s.isArray(e))return!1;for(let n=0;n<this.types.length;n++){const t=this.types[n],s=e[n];if(!t.valid(s))return!1}return!0}}o.__name__=\"Tuple\",e.Tuple=o;class c extends i{constructor(e){super(),this.item_type=e}valid(e){return s.isArray(e)&&e.every(e=>this.item_type.valid(e))}}c.__name__=\"Array\",e.Array=c;class m extends i{valid(e){return null===e}}m.__name__=\"Null\",e.Null=m;class p extends i{constructor(e){super(),this.base_type=e}valid(e){return null===e||this.base_type.valid(e)}}p.__name__=\"Nullable\",e.Nullable=p;class y extends i{valid(e){return s.isString(e)}}y.__name__=\"String\",e.String=y;class v extends i{constructor(e){super(),this.values=new Set(e)}valid(e){return this.values.has(e)}*[Symbol.iterator](){yield*this.values}}v.__name__=\"Enum\",e.Enum=v;class h extends i{constructor(e){super(),this.item_type=e}valid(e){if(!s.isPlainObject(e))return!1;for(const n in e)if(e.hasOwnProperty(n)){const t=e[n];if(!this.item_type.valid(t))return!1}return!0}}h.__name__=\"Struct\",e.Struct=h;class w extends i{constructor(e,n){super(),this.key_type=e,this.item_type=n}valid(e){if(!(e instanceof Map))return!1;for(const[n,t]of e.entries())if(!this.key_type.valid(n)||!this.item_type.valid(t))return!1;return!0}}w.__name__=\"Dict\",e.Dict=w;class K extends i{valid(e){return s.isString(e)&&r.is_color(e)}}K.__name__=\"Color\",e.Color=K;class f extends _{valid(e){return super.valid(e)&&0<=e&&e<=1}}f.__name__=\"Percent\",e.Percent=f}(t.Kinds||(t.Kinds={})),t.Any=new t.Kinds.Any,t.Unknown=new t.Kinds.Unknown,t.Boolean=new t.Kinds.Boolean,t.Number=new t.Kinds.Number,t.Int=new t.Kinds.Int,t.String=new t.Kinds.String,t.Null=new t.Kinds.Null,t.Nullable=e=>new t.Kinds.Nullable(e),t.Or=(...e)=>new t.Kinds.Or(e),t.Tuple=(...e)=>new t.Kinds.Tuple(e),t.Array=e=>new t.Kinds.Array(e),t.Struct=e=>new t.Kinds.Struct(e),t.Dict=(e,n)=>new t.Kinds.Dict(e,n),t.Enum=(...e)=>new t.Kinds.Enum(e),t.Ref=e=>new t.Kinds.Ref(e),t.Percent=new t.Kinds.Percent,t.Color=new t.Kinds.Color,t.Auto=t.Enum(\"auto\"),t.FontSize=t.String,t.Font=t.String,t.Angle=t.Number},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(23),l=e(9);function a(e){const r=Number(e).toString(16);return 1==r.length?\"0\"+r:r}function o(e){if(0==(e+=\"\").indexOf(\"#\"))return e;if(n.is_svg_color(e))return n.svg_colors[e];if(0==e.indexOf(\"rgb\")){const r=e.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\");let t=r.slice(0,3).map(a).join(\"\");return 4==r.length&&(t+=a(Math.floor(255*parseFloat(r[3])))),\"#\"+t.slice(0,8)}return e}function s(e){let r;switch(e.substring(0,4)){case\"rgba\":r={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":r={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(e))return!1;const t=e.replace(r.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);return t.length==r.len&&((!r.alpha||0<=t[3]&&t[3]<=1)&&!l.includes(t.slice(0,3).map(e=>0<=e&&e<=255),!1))}t.is_color=function(e){return n.is_svg_color(e.toLowerCase())||\"#\"==e.substring(0,1)||s(e)},t.rgb2hex=function(e,r,t){return`#${a(255&e)}${a(255&r)}${a(255&t)}`},t.color2hex=o,t.encode_rgba=function([e,r,t,n]){return(255*e|0)<<24|(255*r|0)<<16|(255*t|0)<<8|255*n|0},t.decode_rgba=function(e){return[(e>>24&255)/255,(e>>16&255)/255,(e>>8&255)/255,(e>>0&255)/255]},t.color2rgba=function(e,r=1){if(!e)return[0,0,0,0];let t=o(e);t=t.replace(/ |#/g,\"\"),t.length<=4&&(t=t.replace(/(.)/g,\"$1$1\"));const n=t.match(/../g).map(e=>parseInt(e,16)/255);for(;n.length<3;)n.push(0);return n.length<4&&n.push(r),n.slice(0,4)},t.valid_rgb=s},\n      function _(e,F,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},r.is_svg_color=function(e){return e in r.svg_colors}},\n      function _(r,t,e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.NumberArray=Float32Array,e.ColorArray=Uint32Array;const s=r(25);class a{constructor(r,t){this.offsets=r,this.array=t}[s.equals](r,t){return t.arrays(this.offsets,r.offsets)&&t.arrays(this.array,r.array)}get length(){return this.offsets.length}clone(){return new a(new Uint32Array(this.offsets),new e.NumberArray(this.array))}static from(r){const t=r.length,s=new Uint32Array(t);let n=0;for(let e=0;e<t;e++){const t=r[e].length;s[e]=n,n+=t}const o=new e.NumberArray(n);for(let e=0;e<t;e++)o.set(r[e],s[e]);return new a(s,o)}*[Symbol.iterator](){const{offsets:r,length:t}=this;for(let e=0;e<t;e++)yield this.array.subarray(r[e],r[e+1])}get(r){const{offsets:t}=this;return this.array.subarray(t[r],t[r+1])}set(r,t){this.array.set(t,this.offsets[r])}}e.RaggedArray=a,a.__name__=\"RaggedArray\",a[Symbol.toStringTag]=\"RaggedArray\";var n=r(26);e.Indices=n.BitSet},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.equals=Symbol(\"equals\"),r.wildcard=Symbol(\"wildcard\");const n=Object.prototype.toString;class s{constructor(){this.a_stack=[],this.b_stack=[]}eq(t,e){if(Object.is(t,e))return!0;if(t===r.wildcard||e===r.wildcard)return!0;if(null==t||null==e)return t===e;const s=n.call(t);if(s!=n.call(e))return!1;switch(s){case\"[object Number]\":return this.numbers(t,e);case\"[object RegExp]\":case\"[object String]\":return\"\"+t==\"\"+e;case\"[object Date]\":case\"[object Boolean]\":return+t==+e}const{a_stack:o,b_stack:c}=this;let a=o.length;for(;a--;)if(o[a]===t)return c[a]===e;o.push(t),c.push(e);const i=(()=>{if(null!=t[r.equals]&&null!=e[r.equals])return t[r.equals](e,this);switch(s){case\"[object Array]\":case\"[object Uint8Array]\":case\"[object Int8Array]\":case\"[object Uint16Array]\":case\"[object Int16Array]\":case\"[object Uint32Array]\":case\"[object Int32Array]\":case\"[object Float32Array]\":case\"[object Float64Array]\":return this.arrays(t,e);case\"[object Map]\":return this.maps(t,e);case\"[object Set]\":return this.sets(t,e);case\"[object Object]\":if(t.constructor==e.constructor&&(null==t.constructor||t.constructor===Object))return this.objects(t,e);case\"[object Function]\":if(t.constructor==e.constructor&&t.constructor===Function)return this.eq(\"\"+t,\"\"+e)}if(t instanceof Node)return this.nodes(t,e);throw Error(\"can't compare objects of type \"+s)})();return o.pop(),c.pop(),i}numbers(t,e){return Object.is(t,e)}arrays(t,e){const{length:r}=t;if(r!=e.length)return!1;for(let n=0;n<r;n++)if(!this.eq(t[n],e[n]))return!1;return!0}iterables(t,e){const r=t[Symbol.iterator](),n=e[Symbol.iterator]();for(;;){const t=r.next(),e=n.next();if(t.done&&e.done)return!0;if(t.done||e.done)return!1;if(!this.eq(t.value,e.value))return!1}}maps(t,e){if(t.size!=e.size)return!1;for(const[r,n]of t)if(!e.has(r)||!this.eq(n,e.get(r)))return!1;return!0}sets(t,e){if(t.size!=e.size)return!1;for(const r of t)if(!e.has(r))return!1;return!0}objects(t,e){const r=Object.keys(t);if(r.length!=Object.keys(e).length)return!1;for(const n of r)if(!e.hasOwnProperty(n)||!this.eq(t[n],e[n]))return!1;return!0}nodes(t,e){return t.nodeType==e.nodeType&&(t.textContent==e.textContent&&!!this.iterables(t.childNodes,e.childNodes))}}r.Comparator=s,s.__name__=\"Comparator\";const{abs:o}=Math;class c extends s{constructor(t=1e-4){super(),this.tolerance=t}numbers(t,e){return super.numbers(t,e)||o(t-e)<this.tolerance}}function a(t,e){return(new s).eq(t,e)}r.SimilarComparator=c,c.__name__=\"SimilarComparator\",r.is_equal=a,r.is_similar=function(t,e,r){return new c(r).eq(t,e)},r.isEqual=a},\n      function _(t,s,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=t(11),i=t(9),n=t(25);class o{constructor(t,s=0){this.size=t,this[Symbol.toStringTag]=\"BitSet\",this._count=null,this._nwords=Math.ceil(t/32),0==s||1==s?(this._array=new Uint32Array(this._nwords),1==s&&this._array.fill(4294967295)):(e.assert(s.length==this._nwords,\"Initializer size mismatch\"),this._array=s)}clone(){return new o(this.size,new Uint32Array(this._array))}[n.equals](t,s){if(!s.eq(this.size,t.size))return!1;const{_nwords:r}=this,e=this.size%r,i=0==e?r:r-1;for(let s=0;s<i;s++)if(this._array[s]!=t._array[s])return!1;if(0==e)return!0;{const s=1<<e-1,r=s-1^s;return(this._array[i]&r)==(t._array[i]&r)}}static all_set(t){return new o(t,1)}static all_unset(t){return new o(t,0)}static from_indices(t,s){const r=new o(t);for(const t of s)r.set(t);return r}static from_booleans(t,s){const r=new o(t),e=Math.min(t,s.length);for(let t=0;t<e;t++)s[t]&&r.set(t);return r}_check_bounds(t){e.assert(0<=t&&t<this.size,\"Out of bounds\")}get(t){this._check_bounds(t);const s=t>>>5,r=31&t;return!!(this._array[s]>>r&1)}set(t,s=!0){this._check_bounds(t),this._count=null;const r=t>>>5,e=31&t;s?this._array[r]|=1<<e:this._array[r]&=~(1<<e)}unset(t){this.set(t,!1)}*[Symbol.iterator](){yield*this.ones()}get count(){let t=this._count;return null==t&&(this._count=t=this._get_count()),t}_get_count(){const{_array:t,_nwords:s,size:r}=this;let e=0;for(let i=0,n=0;n<s;n++){const s=t[n];if(0==s)i+=32;else for(let t=0;t<32&&i<r;t++,i++)s>>>t&1&&(e+=1)}return e}*ones(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(0!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1&&(yield e);else e+=32}}*zeros(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(4294967295!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1||(yield e);else e+=32}}_check_size(t){e.assert(this.size==t.size,\"Size mismatch\")}add(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]|=t._array[s]}intersect(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]&=t._array[s]}subtract(t){this._check_size(t);for(let s=0;s<this._nwords;s++){const r=this._array[s],e=t._array[s];this._array[s]=(r^e)&r}}union(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]|=t._array[r];return s}intersection(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]&=t._array[r];return s}difference(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++){const e=this._array[r],i=t._array[r];s._array[r]=(e^i)&e}return s}select(t){const s=this.count,r=new t.constructor(s);let e=0;for(const s of this)r[e++]=t[s];return r}}r.BitSet=o,o.__name__=\"BitSet\";class a{constructor(t,s,r){this.nrows=t,this.ncols=s,this._matrix=new Array(t);for(let e=0;e<t;e++){this._matrix[e]=new Array(s);for(let t=0;t<s;t++)this._matrix[e][t]=r(e,t)}}at(t,s){return this._matrix[t][s]}*[Symbol.iterator](){for(let t=0;t<this.nrows;t++)for(let s=0;s<this.ncols;s++){const r=this._matrix[t][s];yield[r,t,s]}}*values(){for(const[t]of this)yield t}map(t){return new a(this.nrows,this.ncols,(s,r)=>t(this.at(s,r),s,r))}apply(t){const s=a.from(t),{nrows:r,ncols:e}=this;if(r==s.nrows&&e==s.ncols)return new a(r,e,(t,r)=>s.at(t,r)(this.at(t,r),t,r));throw new Error(\"dimensions don't match\")}to_sparse(){return[...this]}static from(t,s){if(t instanceof a)return t;if(null!=s){const r=t,e=Math.floor(r.length/s);return new a(e,s,(t,e)=>r[t*s+e])}{const s=t,r=t.length,e=i.min(s.map(t=>t.length));return new a(r,e,(t,r)=>s[t][r])}}}r.Matrix=a,a.__name__=\"Matrix\"},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});class n{constructor(){this._dev=!1}set dev(e){this._dev=e}get dev(){return this._dev}}s.Settings=n,n.__name__=\"Settings\",s.settings=new n},\n      function _(e,l,t){Object.defineProperty(t,\"__esModule\",{value:!0});const a=e(1).__importStar(e(18));t.Line={line_color:[a.Color,\"black\"],line_alpha:[a.Number,1],line_width:[a.Number,1],line_join:[a.LineJoin,\"bevel\"],line_cap:[a.LineCap,\"butt\"],line_dash:[a.Array,[]],line_dash_offset:[a.Number,0]},t.Fill={fill_color:[a.Color,\"gray\"],fill_alpha:[a.Number,1]},t.Hatch={hatch_color:[a.Color,\"black\"],hatch_alpha:[a.Number,1],hatch_scale:[a.Number,12],hatch_pattern:[a.NullString,null],hatch_weight:[a.Number,1],hatch_extra:[a.Any,{}]},t.Text={text_color:[a.Color,\"#444444\"],text_alpha:[a.Number,1],text_font:[a.Font,\"helvetica\"],text_font_size:[a.FontSize,\"16px\"],text_font_style:[a.FontStyle,\"normal\"],text_align:[a.TextAlign,\"left\"],text_baseline:[a.TextBaseline,\"bottom\"],text_line_height:[a.Number,1.2]},t.LineScalar={line_color:[a.ColorScalar,\"black\"],line_alpha:[a.NumberScalar,1],line_width:[a.NumberScalar,1],line_join:[a.LineJoinScalar,\"bevel\"],line_cap:[a.LineCapScalar,\"butt\"],line_dash:[a.ArrayScalar,[]],line_dash_offset:[a.NumberScalar,0]},t.FillScalar={fill_color:[a.ColorScalar,\"gray\"],fill_alpha:[a.NumberScalar,1]},t.HatchScalar={hatch_color:[a.ColorScalar,\"black\"],hatch_alpha:[a.NumberScalar,1],hatch_scale:[a.NumberScalar,12],hatch_pattern:[a.NullStringScalar,null],hatch_weight:[a.NumberScalar,1],hatch_extra:[a.AnyScalar,{}]},t.TextScalar={text_color:[a.ColorScalar,\"#444444\"],text_alpha:[a.NumberScalar,1],text_font:[a.Font,\"helvetica\"],text_font_size:[a.FontSizeScalar,\"16px\"],text_font_style:[a.FontStyleScalar,\"normal\"],text_align:[a.TextAlignScalar,\"left\"],text_baseline:[a.TextBaselineScalar,\"bottom\"],text_line_height:[a.NumberScalar,1.2]},t.LineVector={line_color:[a.ColorSpec,\"black\"],line_alpha:[a.NumberSpec,1],line_width:[a.NumberSpec,1],line_join:[a.LineJoin,\"bevel\"],line_cap:[a.LineCap,\"butt\"],line_dash:[a.Array,[]],line_dash_offset:[a.Number,0]},t.FillVector={fill_color:[a.ColorSpec,\"gray\"],fill_alpha:[a.NumberSpec,1]},t.HatchVector={hatch_color:[a.ColorSpec,\"black\"],hatch_alpha:[a.NumberSpec,1],hatch_scale:[a.NumberSpec,12],hatch_pattern:[a.NullStringSpec,null],hatch_weight:[a.NumberSpec,1],hatch_extra:[a.Any,{}]},t.TextVector={text_color:[a.ColorSpec,\"#444444\"],text_alpha:[a.NumberSpec,1],text_font:[a.Font,\"helvetica\"],text_font_size:[a.FontSizeSpec,\"16px\"],text_font_style:[a.FontStyle,\"normal\"],text_align:[a.TextAlign,\"left\"],text_baseline:[a.TextBaseline,\"bottom\"],text_line_height:[a.Number,1.2]}},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(27);function u(){const t=new Array(32);for(let e=0;e<32;e++)t[e]=\"0123456789ABCDEF\".substr(Math.floor(16*Math.random()),1);return t[12]=\"4\",t[16]=\"0123456789ABCDEF\".substr(3&t[16].charCodeAt(0)|8,1),t.join(\"\")}r.startsWith=function(t,e,r=0){return t.substr(r,e.length)==e},r.uuid4=u;let s=1e3;r.uniqueId=function(t){const e=n.settings.dev?\"j\"+s++:u();return null!=t?`${t}-${e}`:e},r.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,t=>{switch(t){case\"&\":return\"&amp;\";case\"<\":return\"&lt;\";case\">\":return\"&gt;\";case'\"':return\"&quot;\";case\"'\":return\"&#x27;\";case\"`\":return\"&#x60;\";default:return t}})},r.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,(t,e)=>{switch(e){case\"amp\":return\"&\";case\"lt\":return\"<\";case\"gt\":return\">\";case\"quot\":return'\"';case\"#x27\":return\"'\";case\"#x60\":return\"`\";default:return e}})},r.use_strict=function(t){return\"'use strict';\\n\"+t}},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(8),a=t(11),n=t(25),i=Symbol(\"__ndarray__\");class h extends Uint8Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"uint8\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Uint8NDArray=h,h.__name__=\"Uint8NDArray\";class _ extends Int8Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"int8\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Int8NDArray=_,_.__name__=\"Int8NDArray\";class u extends Uint16Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"uint16\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Uint16NDArray=u,u.__name__=\"Uint16NDArray\";class l extends Int16Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"int16\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Int16NDArray=l,l.__name__=\"Int16NDArray\";class y extends Uint32Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"uint32\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Uint32NDArray=y,y.__name__=\"Uint32NDArray\";class c extends Int32Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"int32\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Int32NDArray=c,c.__name__=\"Int32NDArray\";class p extends Float32Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"float32\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}e.Float32NDArray=p,p.__name__=\"Float32NDArray\";class o extends Float64Array{constructor(t,s){super(t),this.__ndarray__=i,this.dtype=\"float64\",this.shape=null!=s?s:d(t)?t.shape:[this.length],this.dimension=this.shape.length}[n.equals](t,s){return s.eq(this.shape,t.shape)&&s.arrays(this,t)}}function d(t){return r.isObject(t)&&t.__ndarray__==i}e.Float64NDArray=o,o.__name__=\"Float64NDArray\",e.is_NDArray=d,e.ndarray=function(t,s={}){let{dtype:e}=s;null==e&&(e=t instanceof ArrayBuffer||r.isArray(t)?\"float32\":(()=>{switch(!0){case t instanceof Uint8Array:return\"uint8\";case t instanceof Int8Array:return\"int8\";case t instanceof Uint16Array:return\"uint16\";case t instanceof Int16Array:return\"int16\";case t instanceof Uint32Array:return\"uint32\";case t instanceof Int32Array:return\"int32\";case t instanceof Float32Array:return\"float32\";case t instanceof Float64Array:return\"float64\";default:a.unreachable()}})());const{shape:n}=s;switch(e){case\"uint8\":return new h(t,n);case\"int8\":return new _(t,n);case\"uint16\":return new u(t,n);case\"int16\":return new l(t,n);case\"uint32\":return new y(t,n);case\"int32\":return new c(t,n);case\"float32\":return new p(t,n);case\"float64\":return new o(t,n)}}},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),a=e(8),f=e(32),_=n.__importStar(e(30));function o(e){const r=new Uint8Array(e),t=Array.from(r).map(e=>String.fromCharCode(e));return btoa(t.join(\"\"))}function s(e){const r=atob(e),t=r.length,n=new Uint8Array(t);for(let e=0,a=t;e<a;e++)n[e]=r.charCodeAt(e);return n.buffer}function i(e){const r=new Uint8Array(e.buffer,e.byteOffset,2*e.length);for(let e=0,t=r.length;e<t;e+=2){const t=r[e];r[e]=r[e+1],r[e+1]=t}}function u(e){const r=new Uint8Array(e.buffer,e.byteOffset,4*e.length);for(let e=0,t=r.length;e<t;e+=4){let t=r[e];r[e]=r[e+3],r[e+3]=t,t=r[e+1],r[e+1]=r[e+2],r[e+2]=t}}function c(e){const r=new Uint8Array(e.buffer,e.byteOffset,8*e.length);for(let e=0,t=r.length;e<t;e+=8){let t=r[e];r[e]=r[e+7],r[e+7]=t,t=r[e+1],r[e+1]=r[e+6],r[e+6]=t,t=r[e+2],r[e+2]=r[e+5],r[e+5]=t,t=r[e+3],r[e+3]=r[e+4],r[e+4]=t}}t.buffer_to_base64=o,t.base64_to_buffer=s,t.BYTE_ORDER=f.is_little_endian?\"little\":\"big\",t.swap16=i,t.swap32=u,t.swap64=c,t.is_NDArray_ref=function(e){return a.isPlainObject(e)&&(\"__buffer__\"in e||\"__ndarray__\"in e)},t.decode_NDArray=function(e,r){const{shape:n,dtype:a,order:f}=e;let o;if(\"__buffer__\"in e){const t=r.get(e.__buffer__);if(null==t)throw new Error(`buffer for ${e.__buffer__} not found`);o=t}else o=s(e.__ndarray__);const l=(()=>{switch(a){case\"uint8\":return new _.Uint8NDArray(o,n);case\"int8\":return new _.Int8NDArray(o,n);case\"uint16\":return new _.Uint16NDArray(o,n);case\"int16\":return new _.Int16NDArray(o,n);case\"uint32\":return new _.Uint32NDArray(o,n);case\"int32\":return new _.Int32NDArray(o,n);case\"float32\":return new _.Float32NDArray(o,n);case\"float64\":return new _.Float64NDArray(o,n)}})();if(f!==t.BYTE_ORDER)switch(l.BYTES_PER_ELEMENT){case 2:i(l);break;case 4:u(l);break;case 8:c(l)}return l},t.encode_NDArray=function(e,r){const n={order:t.BYTE_ORDER,dtype:e.dtype,shape:e.shape};if(null!=r){const t=\"\"+r.size;return r.set(t,e.buffer),Object.assign({__buffer__:t},n)}{const r=o(e.buffer);return Object.assign({__ndarray__:r},n)}}},\n      function _(e,n,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.is_ie=(()=>{const e=\"undefined\"!=typeof navigator?navigator.userAgent:\"\";return e.indexOf(\"MSIE\")>=0||e.indexOf(\"Trident\")>0||e.indexOf(\"Edge\")>0})(),i.is_mobile=\"undefined\"!=typeof window&&(\"ontouchstart\"in window||navigator.maxTouchPoints>0),i.is_little_endian=(()=>{const e=new ArrayBuffer(4),n=new Uint8Array(e);new Uint32Array(e)[1]=168496141;let i=!0;return 10==n[4]&&11==n[5]&&12==n[6]&&13==n[7]&&(i=!1),i})()},\n      function _(t,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=t(8),i=t(13);n.pretty=Symbol(\"pretty\");class o{constructor(t){this.precision=null==t?void 0:t.precision}to_string(t){return function(t){return n.pretty in Object(t)}(t)?t[n.pretty](this):e.isBoolean(t)?this.boolean(t):e.isNumber(t)?this.number(t):e.isString(t)?this.string(t):e.isArray(t)?this.array(t):e.isIterable(t)?this.iterable(t):e.isPlainObject(t)?this.object(t):\"\"+t}token(t){return t}boolean(t){return\"\"+t}number(t){return null!=this.precision?t.toFixed(this.precision):\"\"+t}string(t){return`\"${t.replace(/'/g,\"\\\\'\")}\"`}array(t){const r=this.token,n=[];for(const r of t)n.push(this.to_string(r));return`${r(\"[\")}${n.join(r(\",\")+\" \")}${r(\"]\")}`}iterable(t){var r;const n=this.token,e=null!==(r=Object(t)[Symbol.toStringTag])&&void 0!==r?r:\"Object\",i=this.array(t);return`${e}${n(\"(\")}${i}${n(\")\")}`}object(t){const r=this.token,n=[];for(const[e,o]of i.entries(t))n.push(`${e}${r(\":\")} ${this.to_string(o)}`);return`${r(\"{\")}${n.join(r(\",\")+\" \")}${r(\"}\")}`}}n.Printer=o,o.__name__=\"Printer\",n.to_string=function(t,r){return new o(r).to_string(t)}},\n      function _(t,_,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=t(1);e.__exportStar(t(35),r),e.__exportStar(t(176),r),e.__exportStar(t(203),r),e.__exportStar(t(207),r),e.__exportStar(t(218),r),e.__exportStar(t(222),r),e.__exportStar(t(228),r),e.__exportStar(t(232),r),e.__exportStar(t(265),r),e.__exportStar(t(268),r),e.__exportStar(t(270),r),e.__exportStar(t(132),r),e.__exportStar(t(148),r),e.__exportStar(t(287),r),e.__exportStar(t(291),r),e.__exportStar(t(320),r),e.__exportStar(t(321),r),e.__exportStar(t(322),r),e.__exportStar(t(323),r),e.__exportStar(t(324),r),e.__exportStar(t(329),r),e.__exportStar(t(331),r),e.__exportStar(t(342),r),e.__exportStar(t(346),r)},\n      function _(a,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});var r=a(36);o.Annotation=r.Annotation;var n=a(83);o.Arrow=n.Arrow;var t=a(84);o.ArrowHead=t.ArrowHead;var v=a(84);o.OpenHead=v.OpenHead;var l=a(84);o.NormalHead=l.NormalHead;var d=a(84);o.TeeHead=d.TeeHead;var i=a(84);o.VeeHead=i.VeeHead;var A=a(122);o.Band=A.Band;var H=a(124);o.BoxAnnotation=H.BoxAnnotation;var T=a(125);o.ColorBar=T.ColorBar;var p=a(160);o.Label=p.Label;var L=a(162);o.LabelSet=L.LabelSet;var b=a(163);o.Legend=b.Legend;var B=a(164);o.LegendItem=B.LegendItem;var S=a(166);o.PolyAnnotation=S.PolyAnnotation;var P=a(167);o.Slope=P.Slope;var g=a(168);o.Span=g.Span;var m=a(161);o.TextAnnotation=m.TextAnnotation;var w=a(169);o.Title=w.Title;var x=a(170);o.ToolbarPanel=x.ToolbarPanel;var s=a(171);o.Tooltip=s.Tooltip;var u=a(175);o.Whisker=u.Whisker},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=t(1).__importStar(t(37)),i=t(13),o=t(70);class _ extends o.RendererView{get panel(){return this.layout}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.visible,()=>this.plot_view.request_layout())}get_size(){if(this.model.visible){const{width:t,height:e}=this._get_size();return{width:Math.round(t),height:Math.round(e)}}return{width:0,height:0}}_get_size(){throw new Error(\"not implemented\")}set_data(t){const e=this.model.materialize_dataspecs(t);if(i.extend(this,e),this.plot_model.use_map){const t=this;null!=t._x&&([t._x,t._y]=s.project_xy(t._x,t._y)),null!=t._xs&&([t._xs,t._ys]=s.project_xsys(t._xs,t._ys))}}get needs_clip(){return null==this.layout}serializable_state(){const t=super.serializable_state();return null==this.layout?t:Object.assign(Object.assign({},t),{bbox:this.layout.bbox.box})}}n.AnnotationView=_,_.__name__=\"AnnotationView\";class a extends o.Renderer{constructor(t){super(t)}static init_Annotation(){this.override({level:\"annotation\"})}}n.Annotation=a,a.__name__=\"Annotation\",a.init_Annotation()},\n      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=n(1),o=r.__importDefault(n(38)),l=r.__importDefault(n(39)),c=n(24),i=new l.default(\"GOOGLE\"),u=new l.default(\"WGS84\"),a=o.default(u,i);e.wgs84_mercator={compute:(n,t)=>isFinite(n)&&isFinite(t)?a.forward([n,t]):[NaN,NaN],invert:(n,t)=>isFinite(n)&&isFinite(t)?a.inverse([n,t]):[NaN,NaN]};const s={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},f={lon:[-180,180],lat:[-85.06,85.06]},{min:_,max:p}=Math;function m(n,t){const r=_(n.length,t.length),o=new c.NumberArray(r),l=new c.NumberArray(r);return e.inplace.project_xy(n,t,o,l),[o,l]}e.clip_mercator=function(n,t,e){const[r,o]=s[e];return[p(n,r),_(t,o)]},e.in_bounds=function(n,t){const[e,r]=f[t];return e<n&&n<r},function(n){function t(n,t,r,o){const l=_(n.length,t.length);r=null!=r?r:n,o=null!=o?o:t;for(let c=0;c<l;c++){const l=n[c],i=t[c],[u,a]=e.wgs84_mercator.compute(l,i);r[c]=u,o[c]=a}}n.project_xy=t,n.project_xsys=function(n,e,r,o){const l=_(n.length,e.length);r=null!=r?r:n,o=null!=o?o:e;for(let c=0;c<l;c++)t(n[c],e[c],r[c],o[c])}}(e.inplace||(e.inplace={})),e.project_xy=m,e.project_xsys=function(n,t){const e=_(n.length,t.length),r=new Array(e),o=new Array(e);for(let l=0;l<e;l++){const[e,c]=m(n[l],t[l]);r[l]=e,o[l]=c}return[r,o]}},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const r=e(1),o=r.__importDefault(e(39)),a=r.__importDefault(e(64));var i=o.default(\"WGS84\");function c(e,n,t){var r,o,i;return Array.isArray(t)?(r=a.default(e,n,t)||{x:NaN,y:NaN},t.length>2?void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name?\"number\"==typeof r.z?[r.x,r.y,r.z].concat(t.splice(3)):[r.x,r.y,t[2]].concat(t.splice(3)):[r.x,r.y].concat(t.splice(2)):[r.x,r.y]):(o=a.default(e,n,t),2===(i=Object.keys(t)).length||i.forEach((function(r){if(void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name){if(\"x\"===r||\"y\"===r||\"z\"===r)return}else if(\"x\"===r||\"y\"===r)return;o[r]=t[r]})),o)}function u(e){return e instanceof o.default?e:e.oProj?e.oProj:o.default(e)}t.default=function(e,n,t){e=u(e);var r,o=!1;return void 0===n?(n=e,e=i,o=!0):(void 0!==n.x||Array.isArray(n))&&(t=n,n=e,e=i,o=!0),n=u(n),t?c(e,n,t):(r={forward:function(t){return c(e,n,t)},inverse:function(t){return c(n,e,t)}},o&&(r.oProj=n),r)}},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const s=e(1),i=s.__importDefault(e(40)),u=s.__importDefault(e(51)),l=s.__importDefault(e(52)),o=e(60),r=s.__importDefault(e(62)),f=s.__importDefault(e(63)),d=s.__importDefault(e(47));function p(e,t){if(!(this instanceof p))return new p(e);t=t||function(e){if(e)throw e};var a=i.default(e);if(\"object\"==typeof a){var s=p.projections.get(a.projName);if(s){if(a.datumCode&&\"none\"!==a.datumCode){var l=d.default(r.default,a.datumCode);l&&(a.datum_params=l.towgs84?l.towgs84.split(\",\"):null,a.ellps=l.ellipse,a.datumName=l.datumName?l.datumName:a.datumCode)}a.k0=a.k0||1,a.axis=a.axis||\"enu\",a.ellps=a.ellps||\"wgs84\";var m=o.sphere(a.a,a.b,a.rf,a.ellps,a.sphere),n=o.eccentricity(m.a,m.b,m.rf,a.R_A),h=a.datum||f.default(a.datumCode,a.datum_params,m.a,m.b,n.es,n.ep2);u.default(this,a),u.default(this,s),this.a=m.a,this.b=m.b,this.rf=m.rf,this.sphere=m.sphere,this.es=n.es,this.e=n.e,this.ep2=n.ep2,this.datum=h,this.init(),t(null,this)}else t(e)}else t(e)}p.projections=l.default,p.projections.start(),a.default=p},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const u=t(1),n=u.__importDefault(t(41)),f=u.__importDefault(t(48)),i=u.__importDefault(t(43)),a=u.__importDefault(t(47));var o=[\"PROJECTEDCRS\",\"PROJCRS\",\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\",\"GEODCRS\",\"GEODETICCRS\",\"GEODETICDATUM\",\"ENGCRS\",\"ENGINEERINGCRS\"];var l=[\"3857\",\"900913\",\"3785\",\"102113\"];r.default=function(t){if(!function(t){return\"string\"==typeof t}(t))return t;if(function(t){return t in n.default}(t))return n.default[t];if(function(t){return o.some((function(e){return t.indexOf(e)>-1}))}(t)){var e=f.default(t);if(function(t){var e=a.default(t,\"authority\");if(e){var r=a.default(e,\"epsg\");return r&&l.indexOf(r)>-1}}(e))return n.default[\"EPSG:3857\"];var r=function(t){var e=a.default(t,\"extension\");if(e)return a.default(e,\"proj4\")}(e);return r?i.default(r):e}return function(t){return\"+\"===t[0]}(t)?i.default(t):void 0}},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=t(1),n=i.__importDefault(t(42)),f=i.__importDefault(t(43)),a=i.__importDefault(t(48));function l(t){var e=this;if(2===arguments.length){var r=arguments[1];\"string\"==typeof r?\"+\"===r.charAt(0)?l[t]=f.default(arguments[1]):l[t]=a.default(arguments[1]):l[t]=r}else if(1===arguments.length){if(Array.isArray(t))return t.map((function(t){Array.isArray(t)?l.apply(e,t):l(t)}));if(\"string\"==typeof t){if(t in l)return l[t]}else\"EPSG\"in t?l[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?l[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?l[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n.default(l),r.default=l},\n      function _(e,t,l){Object.defineProperty(l,\"__esModule\",{value:!0}),l.default=function(e){e(\"EPSG:4326\",\"+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees\"),e(\"EPSG:4269\",\"+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees\"),e(\"EPSG:3857\",\"+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs\"),e.WGS84=e[\"EPSG:4326\"],e[\"EPSG:3785\"]=e[\"EPSG:3857\"],e.GOOGLE=e[\"EPSG:3857\"],e[\"EPSG:900913\"]=e[\"EPSG:3857\"],e[\"EPSG:102113\"]=e[\"EPSG:3857\"]}},\n      function _(t,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const e=t(1),a=t(44),u=e.__importDefault(t(45)),r=e.__importDefault(t(46)),i=e.__importDefault(t(47));o.default=function(t){var n,o,e,f={},l=t.split(\"+\").map((function(t){return t.trim()})).filter((function(t){return t})).reduce((function(t,n){var o=n.split(\"=\");return o.push(!0),t[o[0].toLowerCase()]=o[1],t}),{}),c={proj:\"projName\",datum:\"datumCode\",rf:function(t){f.rf=parseFloat(t)},lat_0:function(t){f.lat0=t*a.D2R},lat_1:function(t){f.lat1=t*a.D2R},lat_2:function(t){f.lat2=t*a.D2R},lat_ts:function(t){f.lat_ts=t*a.D2R},lon_0:function(t){f.long0=t*a.D2R},lon_1:function(t){f.long1=t*a.D2R},lon_2:function(t){f.long2=t*a.D2R},alpha:function(t){f.alpha=parseFloat(t)*a.D2R},lonc:function(t){f.longc=t*a.D2R},x_0:function(t){f.x0=parseFloat(t)},y_0:function(t){f.y0=parseFloat(t)},k_0:function(t){f.k0=parseFloat(t)},k:function(t){f.k0=parseFloat(t)},a:function(t){f.a=parseFloat(t)},b:function(t){f.b=parseFloat(t)},r_a:function(){f.R_A=!0},zone:function(t){f.zone=parseInt(t,10)},south:function(){f.utmSouth=!0},towgs84:function(t){f.datum_params=t.split(\",\").map((function(t){return parseFloat(t)}))},to_meter:function(t){f.to_meter=parseFloat(t)},units:function(t){f.units=t;var n=i.default(r.default,t);n&&(f.to_meter=n.to_meter)},from_greenwich:function(t){f.from_greenwich=t*a.D2R},pm:function(t){var n=i.default(u.default,t);f.from_greenwich=(n||parseFloat(t))*a.D2R},nadgrids:function(t){\"@null\"===t?f.datumCode=\"none\":f.nadgrids=t},axis:function(t){3===t.length&&-1!==\"ewnsud\".indexOf(t.substr(0,1))&&-1!==\"ewnsud\".indexOf(t.substr(1,1))&&-1!==\"ewnsud\".indexOf(t.substr(2,1))&&(f.axis=t)}};for(n in l)o=l[n],n in c?\"function\"==typeof(e=c[n])?e(o):f[e]=o:f[n]=o;return\"string\"==typeof f.datumCode&&\"WGS84\"!==f.datumCode&&(f.datumCode=f.datumCode.toLowerCase()),f}},\n      function _(P,_,e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.PJD_3PARAM=1,e.PJD_7PARAM=2,e.PJD_WGS84=4,e.PJD_NODATUM=5,e.SEC_TO_RAD=484813681109536e-20,e.HALF_PI=Math.PI/2,e.SIXTH=.16666666666666666,e.RA4=.04722222222222222,e.RA6=.022156084656084655,e.EPSLN=1e-10,e.D2R=.017453292519943295,e.R2D=57.29577951308232,e.FORTPI=Math.PI/4,e.TWO_PI=2*Math.PI,e.SPI=3.14159265359},\n      function _(e,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});var a={};r.default=a,a.greenwich=0,a.lisbon=-9.131906111111,a.paris=2.337229166667,a.bogota=-74.080916666667,a.madrid=-3.687938888889,a.rome=12.452333333333,a.bern=7.439583333333,a.jakarta=106.807719444444,a.ferro=-17.666666666667,a.brussels=4.367975,a.stockholm=18.058277777778,a.athens=23.7163375,a.oslo=10.722916666667},\n      function _(e,t,f){Object.defineProperty(f,\"__esModule\",{value:!0}),f.default={ft:{to_meter:.3048},\"us-ft\":{to_meter:1200/3937}}},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});var o=/[\\s_\\-\\/\\(\\)]/g;t.default=function(e,r){if(e[r])return e[r];for(var t,a=Object.keys(e),n=r.toLowerCase().replace(o,\"\"),f=-1;++f<a.length;)if((t=a[f]).toLowerCase().replace(o,\"\")===n)return e[t]}},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const o=e(1);const d=o.__importDefault(e(49)),r=e(50);function n(e){return.017453292519943295*e}a.default=function(e){var t=d.default(e),a=t.shift(),o=t.shift();t.unshift([\"name\",o]),t.unshift([\"type\",a]);var l={};return r.sExpr(t,l),function(e){if(\"GEOGCS\"===e.type?e.projName=\"longlat\":\"LOCAL_CS\"===e.type?(e.projName=\"identity\",e.local=!0):\"object\"==typeof e.PROJECTION?e.projName=Object.keys(e.PROJECTION)[0]:e.projName=e.PROJECTION,e.AXIS){for(var t=\"\",a=0,o=e.AXIS.length;a<o;++a){var d=e.AXIS[a][0].toLowerCase();-1!==d.indexOf(\"north\")?t+=\"n\":-1!==d.indexOf(\"south\")?t+=\"s\":-1!==d.indexOf(\"east\")?t+=\"e\":-1!==d.indexOf(\"west\")&&(t+=\"w\")}2===t.length&&(t+=\"u\"),3===t.length&&(e.axis=t)}e.UNIT&&(e.units=e.UNIT.name.toLowerCase(),\"metre\"===e.units&&(e.units=\"meter\"),e.UNIT.convert&&(\"GEOGCS\"===e.type?e.DATUM&&e.DATUM.SPHEROID&&(e.to_meter=e.UNIT.convert*e.DATUM.SPHEROID.a):e.to_meter=e.UNIT.convert));var r=e.GEOGCS;function l(t){return t*(e.to_meter||1)}\"GEOGCS\"===e.type&&(r=e),r&&(r.DATUM?e.datumCode=r.DATUM.name.toLowerCase():e.datumCode=r.name.toLowerCase(),\"d_\"===e.datumCode.slice(0,2)&&(e.datumCode=e.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==e.datumCode&&\"new_zealand_1949\"!==e.datumCode||(e.datumCode=\"nzgd49\"),\"wgs_1984\"!==e.datumCode&&\"world_geodetic_system_1984\"!==e.datumCode||(\"Mercator_Auxiliary_Sphere\"===e.PROJECTION&&(e.sphere=!0),e.datumCode=\"wgs84\"),\"_ferro\"===e.datumCode.slice(-6)&&(e.datumCode=e.datumCode.slice(0,-6)),\"_jakarta\"===e.datumCode.slice(-8)&&(e.datumCode=e.datumCode.slice(0,-8)),~e.datumCode.indexOf(\"belge\")&&(e.datumCode=\"rnb72\"),r.DATUM&&r.DATUM.SPHEROID&&(e.ellps=r.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===e.ellps.toLowerCase().slice(0,13)&&(e.ellps=\"intl\"),e.a=r.DATUM.SPHEROID.a,e.rf=parseFloat(r.DATUM.SPHEROID.rf,10)),r.DATUM&&r.DATUM.TOWGS84&&(e.datum_params=r.DATUM.TOWGS84),~e.datumCode.indexOf(\"osgb_1936\")&&(e.datumCode=\"osgb36\"),~e.datumCode.indexOf(\"osni_1952\")&&(e.datumCode=\"osni52\"),(~e.datumCode.indexOf(\"tm65\")||~e.datumCode.indexOf(\"geodetic_datum_of_1965\"))&&(e.datumCode=\"ire65\"),\"ch1903+\"===e.datumCode&&(e.datumCode=\"ch1903\"),~e.datumCode.indexOf(\"israel\")&&(e.datumCode=\"isr93\")),e.b&&!isFinite(e.b)&&(e.b=e.a),[[\"standard_parallel_1\",\"Standard_Parallel_1\"],[\"standard_parallel_2\",\"Standard_Parallel_2\"],[\"false_easting\",\"False_Easting\"],[\"false_northing\",\"False_Northing\"],[\"central_meridian\",\"Central_Meridian\"],[\"latitude_of_origin\",\"Latitude_Of_Origin\"],[\"latitude_of_origin\",\"Central_Parallel\"],[\"scale_factor\",\"Scale_Factor\"],[\"k0\",\"scale_factor\"],[\"latitude_of_center\",\"Latitude_Of_Center\"],[\"latitude_of_center\",\"Latitude_of_center\"],[\"lat0\",\"latitude_of_center\",n],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longitude_of_center\",\"Longitude_of_center\"],[\"longc\",\"longitude_of_center\",n],[\"x0\",\"false_easting\",l],[\"y0\",\"false_northing\",l],[\"long0\",\"central_meridian\",n],[\"lat0\",\"latitude_of_origin\",n],[\"lat0\",\"standard_parallel_1\",n],[\"lat1\",\"standard_parallel_1\",n],[\"lat2\",\"standard_parallel_2\",n],[\"azimuth\",\"Azimuth\"],[\"alpha\",\"azimuth\",n],[\"srsCode\",\"name\"]].forEach((function(t){return a=e,d=(o=t)[0],r=o[1],void(!(d in a)&&r in a&&(a[d]=a[r],3===o.length&&(a[d]=o[2](a[d]))));var a,o,d,r})),e.long0||!e.longc||\"Albers_Conic_Equal_Area\"!==e.projName&&\"Lambert_Azimuthal_Equal_Area\"!==e.projName||(e.long0=e.longc),e.lat_ts||!e.lat1||\"Stereographic_South_Pole\"!==e.projName&&\"Polar Stereographic (variant B)\"!==e.projName||(e.lat0=n(e.lat1>0?90:-90),e.lat_ts=e.lat1)}(l),l}},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=function(t){return new a(t).output()};var i=/\\s/,s=/[A-Za-z]/,h=/[A-Za-z84]/,o=/[,\\]]/,n=/[\\d\\.E\\-\\+]/;function a(t){if(\"string\"!=typeof t)throw new Error(\"not a string\");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=1}a.prototype.readCharicter=function(){var t=this.text[this.place++];if(4!==this.state)for(;i.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case 1:return this.neutral(t);case 2:return this.keyword(t);case 4:return this.quoted(t);case 5:return this.afterquote(t);case 3:return this.number(t);case-1:return}},a.prototype.afterquote=function(t){if('\"'===t)return this.word+='\"',void(this.state=4);if(o.test(t))return this.word=this.word.trim(),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in afterquote yet, index '+this.place)},a.prototype.afterItem=function(t){return\",\"===t?(null!==this.word&&this.currentObject.push(this.word),this.word=null,void(this.state=1)):\"]\"===t?(this.level--,null!==this.word&&(this.currentObject.push(this.word),this.word=null),this.state=1,this.currentObject=this.stack.pop(),void(this.currentObject||(this.state=-1))):void 0},a.prototype.number=function(t){if(!n.test(t)){if(o.test(t))return this.word=parseFloat(this.word),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in number yet, index '+this.place)}this.word+=t},a.prototype.quoted=function(t){'\"'!==t?this.word+=t:this.state=5},a.prototype.keyword=function(t){if(h.test(t))this.word+=t;else{if(\"[\"===t){var e=[];return e.push(this.word),this.level++,null===this.root?this.root=e:this.currentObject.push(e),this.stack.push(this.currentObject),this.currentObject=e,void(this.state=1)}if(!o.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in keyword yet, index '+this.place);this.afterItem(t)}},a.prototype.neutral=function(t){if(s.test(t))return this.word=t,void(this.state=2);if('\"'===t)return this.word=\"\",void(this.state=4);if(n.test(t))return this.word=t,void(this.state=3);if(!o.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in neutral yet, index '+this.place);this.afterItem(t)},a.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(-1===this.state)return this.root;throw new Error('unable to parse string \"'+this.text+'\". State is '+this.state)}},\n      function _(e,r,a){function s(e,r,a){Array.isArray(r)&&(a.unshift(r),r=null);var s=r?{}:e,n=a.reduce((function(e,r){return c(r,e),e}),s);r&&(e[r]=n)}function c(e,r){if(Array.isArray(e)){var a=e.shift();if(\"PARAMETER\"===a&&(a=e.shift()),1===e.length)return Array.isArray(e[0])?(r[a]={},void c(e[0],r[a])):void(r[a]=e[0]);if(e.length)if(\"TOWGS84\"!==a){if(\"AXIS\"===a)return a in r||(r[a]=[]),void r[a].push(e);var n;switch(Array.isArray(a)||(r[a]={}),a){case\"UNIT\":case\"PRIMEM\":case\"VERT_DATUM\":return r[a]={name:e[0].toLowerCase(),convert:e[1]},void(3===e.length&&c(e[2],r[a]));case\"SPHEROID\":case\"ELLIPSOID\":return r[a]={name:e[0],a:e[1],rf:e[2]},void(4===e.length&&c(e[3],r[a]));case\"PROJECTEDCRS\":case\"PROJCRS\":case\"GEOGCS\":case\"GEOCCS\":case\"PROJCS\":case\"LOCAL_CS\":case\"GEODCRS\":case\"GEODETICCRS\":case\"GEODETICDATUM\":case\"EDATUM\":case\"ENGINEERINGDATUM\":case\"VERT_CS\":case\"VERTCRS\":case\"VERTICALCRS\":case\"COMPD_CS\":case\"COMPOUNDCRS\":case\"ENGINEERINGCRS\":case\"ENGCRS\":case\"FITTED_CS\":case\"LOCAL_DATUM\":case\"DATUM\":return e[0]=[\"name\",e[0]],void s(r,a,e);default:for(n=-1;++n<e.length;)if(!Array.isArray(e[n]))return c(e,r[a]);return s(r,a,e)}}else r[a]=e;else r[a]=!0}else r[e]=!0}Object.defineProperty(a,\"__esModule\",{value:!0}),a.sExpr=c},\n      function _(e,n,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=function(e,n){var r,t;if(e=e||{},!n)return e;for(t in n)void 0!==(r=n[t])&&(e[t]=r);return e}},\n      function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const a=t(1),n=a.__importDefault(t(53)),r=a.__importDefault(t(59));var u=[n.default,r.default],f={},i=[];function d(t,e){var o=i.length;return t.names?(i[o]=t,t.names.forEach((function(t){f[t.toLowerCase()]=o})),this):(console.log(e),!0)}function c(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==f[e]&&i[f[e]]?i[f[e]]:void 0}function l(){u.forEach(d)}o.add=d,o.get=c,o.start=l,o.default={start:l,add:d,get:c}},\n      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const h=t(1),a=h.__importDefault(t(54)),e=h.__importDefault(t(55)),r=h.__importDefault(t(57)),n=h.__importDefault(t(58)),l=t(44);function u(){var t=this.b/this.a;this.es=1-t*t,\"x0\"in this||(this.x0=0),\"y0\"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=a.default(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)}function o(t){var i,s,h=t.x,a=t.y;if(a*l.R2D>90&&a*l.R2D<-90&&h*l.R2D>180&&h*l.R2D<-180)return null;if(Math.abs(Math.abs(a)-l.HALF_PI)<=l.EPSLN)return null;if(this.sphere)i=this.x0+this.a*this.k0*e.default(h-this.long0),s=this.y0+this.a*this.k0*Math.log(Math.tan(l.FORTPI+.5*a));else{var n=Math.sin(a),u=r.default(this.e,a,n);i=this.x0+this.a*this.k0*e.default(h-this.long0),s=this.y0-this.a*this.k0*Math.log(u)}return t.x=i,t.y=s,t}function f(t){var i,s,h=t.x-this.x0,a=t.y-this.y0;if(this.sphere)s=l.HALF_PI-2*Math.atan(Math.exp(-a/(this.a*this.k0)));else{var r=Math.exp(-a/(this.a*this.k0));if(-9999===(s=n.default(this.e,r)))return null}return i=e.default(this.long0+h/(this.a*this.k0)),t.x=i,t.y=s,t}s.init=u,s.forward=o,s.inverse=f,s.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"],s.default={init:u,forward:o,inverse:f,names:s.names}},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.default=function(e,t,n){var r=e*t;return n/Math.sqrt(1-r*r)}},\n      function _(e,t,u){Object.defineProperty(u,\"__esModule\",{value:!0});const n=e(1),a=e(44),f=n.__importDefault(e(56));u.default=function(e){return Math.abs(e)<=a.SPI?e:e-f.default(e)*a.TWO_PI}},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(e){return e<0?-1:1}},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=t(44);n.default=function(t,e,n){var o=t*n,u=.5*t;return o=Math.pow((1-o)/(1+o),u),Math.tan(.5*(a.HALF_PI-e))/o}},\n      function _(t,a,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(44);e.default=function(t,a){for(var e,r,o=.5*t,u=n.HALF_PI-2*Math.atan(a),f=0;f<=15;f++)if(e=t*Math.sin(u),u+=r=n.HALF_PI-2*Math.atan(a*Math.pow((1-e)/(1+e),o))-u,Math.abs(r)<=1e-10)return u;return-9999}},\n      function _(e,n,i){function t(){}function r(e){return e}Object.defineProperty(i,\"__esModule\",{value:!0}),i.init=t,i.forward=r,i.inverse=r,i.names=[\"longlat\",\"identity\"],i.default={init:t,forward:r,inverse:r,names:i.names}},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=e(1),n=e(44),f=a.__importStar(e(61)),u=a.__importDefault(e(47));r.eccentricity=function(e,t,r,a){var f=e*e,u=t*t,i=(f-u)/f,c=0;return a?(f=(e*=1-i*(n.SIXTH+i*(n.RA4+i*n.RA6)))*e,i=0):c=Math.sqrt(i),{es:i,e:c,ep2:(f-u)/u}},r.sphere=function(e,t,r,a,i){if(!e){var c=u.default(f.default,a);c||(c=f.WGS84),e=c.a,t=c.b,r=c.rf}return r&&!t&&(t=(1-1/r)*e),(0===r||Math.abs(e-t)<n.EPSLN)&&(i=!0,t=e),{a:e,b:t,rf:r,sphere:i}}},\n      function _(e,a,l){Object.defineProperty(l,\"__esModule\",{value:!0});var s={};l.default=s,s.MERIT={a:6378137,rf:298.257,ellipseName:\"MERIT 1983\"},s.SGS85={a:6378136,rf:298.257,ellipseName:\"Soviet Geodetic System 85\"},s.GRS80={a:6378137,rf:298.257222101,ellipseName:\"GRS 1980(IUGG, 1980)\"},s.IAU76={a:6378140,rf:298.257,ellipseName:\"IAU 1976\"},s.airy={a:6377563.396,b:6356256.91,ellipseName:\"Airy 1830\"},s.APL4={a:6378137,rf:298.25,ellipseName:\"Appl. Physics. 1965\"},s.NWL9D={a:6378145,rf:298.25,ellipseName:\"Naval Weapons Lab., 1965\"},s.mod_airy={a:6377340.189,b:6356034.446,ellipseName:\"Modified Airy\"},s.andrae={a:6377104.43,rf:300,ellipseName:\"Andrae 1876 (Den., Iclnd.)\"},s.aust_SA={a:6378160,rf:298.25,ellipseName:\"Australian Natl & S. Amer. 1969\"},s.GRS67={a:6378160,rf:298.247167427,ellipseName:\"GRS 67(IUGG 1967)\"},s.bessel={a:6377397.155,rf:299.1528128,ellipseName:\"Bessel 1841\"},s.bess_nam={a:6377483.865,rf:299.1528128,ellipseName:\"Bessel 1841 (Namibia)\"},s.clrk66={a:6378206.4,b:6356583.8,ellipseName:\"Clarke 1866\"},s.clrk80={a:6378249.145,rf:293.4663,ellipseName:\"Clarke 1880 mod.\"},s.clrk58={a:6378293.645208759,rf:294.2606763692654,ellipseName:\"Clarke 1858\"},s.CPM={a:6375738.7,rf:334.29,ellipseName:\"Comm. des Poids et Mesures 1799\"},s.delmbr={a:6376428,rf:311.5,ellipseName:\"Delambre 1810 (Belgium)\"},s.engelis={a:6378136.05,rf:298.2566,ellipseName:\"Engelis 1985\"},s.evrst30={a:6377276.345,rf:300.8017,ellipseName:\"Everest 1830\"},s.evrst48={a:6377304.063,rf:300.8017,ellipseName:\"Everest 1948\"},s.evrst56={a:6377301.243,rf:300.8017,ellipseName:\"Everest 1956\"},s.evrst69={a:6377295.664,rf:300.8017,ellipseName:\"Everest 1969\"},s.evrstSS={a:6377298.556,rf:300.8017,ellipseName:\"Everest (Sabah & Sarawak)\"},s.fschr60={a:6378166,rf:298.3,ellipseName:\"Fischer (Mercury Datum) 1960\"},s.fschr60m={a:6378155,rf:298.3,ellipseName:\"Fischer 1960\"},s.fschr68={a:6378150,rf:298.3,ellipseName:\"Fischer 1968\"},s.helmert={a:6378200,rf:298.3,ellipseName:\"Helmert 1906\"},s.hough={a:6378270,rf:297,ellipseName:\"Hough\"},s.intl={a:6378388,rf:297,ellipseName:\"International 1909 (Hayford)\"},s.kaula={a:6378163,rf:298.24,ellipseName:\"Kaula 1961\"},s.lerch={a:6378139,rf:298.257,ellipseName:\"Lerch 1979\"},s.mprts={a:6397300,rf:191,ellipseName:\"Maupertius 1738\"},s.new_intl={a:6378157.5,b:6356772.2,ellipseName:\"New International 1967\"},s.plessis={a:6376523,rf:6355863,ellipseName:\"Plessis 1817 (France)\"},s.krass={a:6378245,rf:298.3,ellipseName:\"Krassovsky, 1942\"},s.SEasia={a:6378155,b:6356773.3205,ellipseName:\"Southeast Asia\"},s.walbeck={a:6376896,b:6355834.8467,ellipseName:\"Walbeck\"},s.WGS60={a:6378165,rf:298.3,ellipseName:\"WGS 60\"},s.WGS66={a:6378145,rf:298.25,ellipseName:\"WGS 66\"},s.WGS7={a:6378135,rf:298.26,ellipseName:\"WGS 72\"},l.WGS84=s.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},s.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},\n      function _(e,a,s){Object.defineProperty(s,\"__esModule\",{value:!0});var t={};s.default=t,t.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},t.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},t.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},t.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},t.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},t.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},t.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},t.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},t.osni52={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"airy\",datumName:\"Irish National\"},t.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},t.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},t.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},t.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},t.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},t.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},t.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},t.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},\n      function _(a,m,_){Object.defineProperty(_,\"__esModule\",{value:!0});const t=a(44);_.default=function(a,m,_,u,d,p){var r={};return r.datum_type=void 0===a||\"none\"===a?t.PJD_NODATUM:t.PJD_WGS84,m&&(r.datum_params=m.map(parseFloat),0===r.datum_params[0]&&0===r.datum_params[1]&&0===r.datum_params[2]||(r.datum_type=t.PJD_3PARAM),r.datum_params.length>3&&(0===r.datum_params[3]&&0===r.datum_params[4]&&0===r.datum_params[5]&&0===r.datum_params[6]||(r.datum_type=t.PJD_7PARAM,r.datum_params[3]*=t.SEC_TO_RAD,r.datum_params[4]*=t.SEC_TO_RAD,r.datum_params[5]*=t.SEC_TO_RAD,r.datum_params[6]=r.datum_params[6]/1e6+1))),r.a=_,r.b=u,r.es=d,r.ep2=p,r}},\n      function _(t,e,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=t(1),u=t(44),m=r.__importDefault(t(65)),_=r.__importDefault(t(67)),o=r.__importDefault(t(39)),d=r.__importDefault(t(68)),f=r.__importDefault(t(69));a.default=function t(e,a,r){var n;if(Array.isArray(r)&&(r=d.default(r)),f.default(r),e.datum&&a.datum&&function(t,e){return(t.datum.datum_type===u.PJD_3PARAM||t.datum.datum_type===u.PJD_7PARAM)&&\"WGS84\"!==e.datumCode||(e.datum.datum_type===u.PJD_3PARAM||e.datum.datum_type===u.PJD_7PARAM)&&\"WGS84\"!==t.datumCode}(e,a)&&(r=t(e,n=new o.default(\"WGS84\"),r),e=n),\"enu\"!==e.axis&&(r=_.default(e,!1,r)),\"longlat\"===e.projName)r={x:r.x*u.D2R,y:r.y*u.D2R,z:r.z||0};else if(e.to_meter&&(r={x:r.x*e.to_meter,y:r.y*e.to_meter,z:r.z||0}),!(r=e.inverse(r)))return;return e.from_greenwich&&(r.x+=e.from_greenwich),r=m.default(e.datum,a.datum,r),a.from_greenwich&&(r={x:r.x-a.from_greenwich,y:r.y,z:r.z||0}),\"longlat\"===a.projName?r={x:r.x*u.R2D,y:r.y*u.R2D,z:r.z||0}:(r=a.forward(r),a.to_meter&&(r={x:r.x/a.to_meter,y:r.y/a.to_meter,z:r.z||0})),\"enu\"!==a.axis?_.default(a,!0,r):r}},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const u=e(44),o=e(66);function _(e){return e===u.PJD_3PARAM||e===u.PJD_7PARAM}a.default=function(e,t,a){return o.compareDatums(e,t)||e.datum_type===u.PJD_NODATUM||t.datum_type===u.PJD_NODATUM?a:e.es!==t.es||e.a!==t.a||_(e.datum_type)||_(t.datum_type)?(a=o.geodeticToGeocentric(a,e.es,e.a),_(e.datum_type)&&(a=o.geocentricToWgs84(a,e.datum_type,e.datum_params)),_(t.datum_type)&&(a=o.geocentricFromWgs84(a,t.datum_type,t.datum_params)),o.geocentricToGeodetic(a,t.es,t.a,t.b)):a}},\n      function _(a,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=a(44);r.compareDatums=function(a,t){return a.datum_type===t.datum_type&&(!(a.a!==t.a||Math.abs(a.es-t.es)>5e-11)&&(a.datum_type===e.PJD_3PARAM?a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]:a.datum_type!==e.PJD_7PARAM||a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]&&a.datum_params[3]===t.datum_params[3]&&a.datum_params[4]===t.datum_params[4]&&a.datum_params[5]===t.datum_params[5]&&a.datum_params[6]===t.datum_params[6]))},r.geodeticToGeocentric=function(a,t,r){var m,u,s,_,n=a.x,d=a.y,i=a.z?a.z:0;if(d<-e.HALF_PI&&d>-1.001*e.HALF_PI)d=-e.HALF_PI;else if(d>e.HALF_PI&&d<1.001*e.HALF_PI)d=e.HALF_PI;else{if(d<-e.HALF_PI)return{x:-1/0,y:-1/0,z:a.z};if(d>e.HALF_PI)return{x:1/0,y:1/0,z:a.z}}return n>Math.PI&&(n-=2*Math.PI),u=Math.sin(d),_=Math.cos(d),s=u*u,{x:((m=r/Math.sqrt(1-t*s))+i)*_*Math.cos(n),y:(m+i)*_*Math.sin(n),z:(m*(1-t)+i)*u}},r.geocentricToGeodetic=function(a,t,r,m){var u,s,_,n,d,i,p,P,o,y,M,z,c,A,x,f=a.x,h=a.y,I=a.z?a.z:0;if(u=Math.sqrt(f*f+h*h),s=Math.sqrt(f*f+h*h+I*I),u/r<1e-12){if(A=0,s/r<1e-12)return e.HALF_PI,x=-m,{x:a.x,y:a.y,z:a.z}}else A=Math.atan2(h,f);_=I/s,P=(n=u/s)*(1-t)*(d=1/Math.sqrt(1-t*(2-t)*n*n)),o=_*d,c=0;do{c++,i=t*(p=r/Math.sqrt(1-t*o*o))/(p+(x=u*P+I*o-p*(1-t*o*o))),z=(M=_*(d=1/Math.sqrt(1-i*(2-i)*n*n)))*P-(y=n*(1-i)*d)*o,P=y,o=M}while(z*z>1e-24&&c<30);return{x:A,y:Math.atan(M/Math.abs(y)),z:x}},r.geocentricToWgs84=function(a,t,r){if(t===e.PJD_3PARAM)return{x:a.x+r[0],y:a.y+r[1],z:a.z+r[2]};if(t===e.PJD_7PARAM){var m=r[0],u=r[1],s=r[2],_=r[3],n=r[4],d=r[5],i=r[6];return{x:i*(a.x-d*a.y+n*a.z)+m,y:i*(d*a.x+a.y-_*a.z)+u,z:i*(-n*a.x+_*a.y+a.z)+s}}},r.geocentricFromWgs84=function(a,t,r){if(t===e.PJD_3PARAM)return{x:a.x-r[0],y:a.y-r[1],z:a.z-r[2]};if(t===e.PJD_7PARAM){var m=r[0],u=r[1],s=r[2],_=r[3],n=r[4],d=r[5],i=r[6],p=(a.x-m)/i,P=(a.y-u)/i,o=(a.z-s)/i;return{x:p+d*P-n*o,y:-d*p+P+_*o,z:n*p-_*P+o}}}},\n      function _(e,a,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.default=function(e,a,i){var s,n,r,c=i.x,d=i.y,u=i.z||0,f={};for(r=0;r<3;r++)if(!a||2!==r||void 0!==i.z)switch(0===r?(s=c,n=-1!==\"ew\".indexOf(e.axis[r])?\"x\":\"y\"):1===r?(s=d,n=-1!==\"ns\".indexOf(e.axis[r])?\"y\":\"x\"):(s=u,n=\"z\"),e.axis[r]){case\"e\":case\"w\":case\"n\":case\"s\":f[n]=s;break;case\"u\":void 0!==i[n]&&(f.z=s);break;case\"d\":void 0!==i[n]&&(f.z=-s);break;default:return null}return f}},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(e){var n={x:e[0],y:e[1]};return e.length>2&&(n.z=e[2]),e.length>3&&(n.m=e[3]),n}},\n      function _(e,i,n){function t(e){if(\"function\"==typeof Number.isFinite){if(Number.isFinite(e))return;throw new TypeError(\"coordinates must be finite numbers\")}if(\"number\"!=typeof e||e!=e||!isFinite(e))throw new TypeError(\"coordinates must be finite numbers\")}Object.defineProperty(n,\"__esModule\",{value:!0}),n.default=function(e){t(e.x),t(e.y)}},\n      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),r=e(71),s=n.__importStar(e(74)),_=n.__importStar(e(18)),a=e(81),o=e(82);class l extends r.View{get coordinates(){return this._coordinates}initialize(){super.initialize(),this.visuals=new s.Visuals(this.model),this.needs_webgl_blit=!1,this._initialize_coordinates()}connect_signals(){super.connect_signals();const{x_range_name:e,y_range_name:i}=this.model.properties;this.on_change([e,i],()=>this._initialize_coordinates())}_initialize_coordinates(){const{x_range_name:e,y_range_name:i}=this.model,{frame:t}=this.plot_view,n=t.x_scales.get(e),r=t.y_scales.get(i);this._coordinates=new o.CoordinateTransform(n,r)}get plot_view(){return this.parent}get plot_model(){return this.parent.model}get layer(){const{overlays:e,primary:i}=this.plot_view.canvas_view;return\"overlay\"==this.model.level?e:i}request_render(){this.plot_view.request_render()}notify_finished(){this.plot_view.notify_finished()}get needs_clip(){return!1}get has_webgl(){return!1}render(){this.model.visible&&this._render(),this._has_finished=!0}}t.RendererView=l,l.__name__=\"RendererView\";class d extends a.Model{constructor(e){super(e)}static init_Renderer(){this.define({level:[_.RenderLevel],visible:[_.Boolean,!0],x_range_name:[_.String,\"default\"],y_range_name:[_.String,\"default\"]})}}t.Renderer=d,d.__name__=\"Renderer\",d.init_Renderer()},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),r=t(15),n=t(72),o=t(8),h=i.__importDefault(t(73));class a{constructor(t){if(this.removed=new r.Signal0(this,\"removed\"),this._ready=Promise.resolve(void 0),null==t.model)throw new Error(\"model of a view wasn't configured\");this.model=t.model,this._parent=t.parent}get ready(){return this._ready}connect(t,e){return t.connect((t,s)=>{const i=Promise.resolve(e.call(this,t,s));this._ready=this._ready.then(()=>i)},this)}disconnect(t,e){return t.disconnect(e,this)}initialize(){this._has_finished=!1,this.is_root&&(this._stylesheet=n.stylesheet);for(const t of this.styles())this.stylesheet.append(t)}async lazy_initialize(){}remove(){this._parent=void 0,this.disconnect_signals(),this.removed.emit()}toString(){return`${this.model.type}View(${this.model.id})`}serializable_state(){return{type:this.model.type}}get parent(){if(void 0!==this._parent)return this._parent;throw new Error(\"parent of a view wasn't configured\")}get is_root(){return null===this.parent}get root(){return this.is_root?this:this.parent.root}assert_root(){if(!this.is_root)throw new Error(this.toString()+\" is not a root layout\")}has_finished(){return this._has_finished}get is_idle(){return this.has_finished()}connect_signals(){}disconnect_signals(){r.Signal.disconnectReceiver(this)}on_change(t,e){for(const s of o.isArray(t)?t:[t])this.connect(s.change,e)}cursor(t,e){return null}get stylesheet(){return this.is_root?this._stylesheet:this.root.stylesheet}styles(){return[h.default]}}s.View=a,a.__name__=\"View\"},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=t(8),o=t(13),s=t=>(e={},...n)=>{const s=document.createElement(t);s.classList.add(\"bk\");for(let[t,n]of o.entries(e))if(null!=n&&(!i.isBoolean(n)||n))if(\"class\"===t&&(i.isString(n)&&(n=n.split(/\\s+/)),i.isArray(n)))for(const t of n)null!=t&&s.classList.add(t);else if(\"style\"===t&&i.isPlainObject(n))for(const[t,e]of o.entries(n))s.style[t]=e;else if(\"data\"===t&&i.isPlainObject(n))for(const[t,e]of o.entries(n))s.dataset[t]=e;else s.setAttribute(t,n);function l(t){if(i.isString(t))s.appendChild(document.createTextNode(t));else if(t instanceof Node)s.appendChild(t);else if(t instanceof NodeList||t instanceof HTMLCollection)for(const e of t)s.appendChild(e);else if(null!=t&&!1!==t)throw new Error(\"expected a DOM element, string, false or null, got \"+JSON.stringify(t))}for(const t of n)if(i.isArray(t))for(const e of t)l(e);else l(t);return s};function l(t){const e=t.parentNode;null!=e&&e.removeChild(t)}function r(t,...e){const n=t.firstChild;for(const i of e)t.insertBefore(i,n)}function a(t,e){const n=Element.prototype;return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector).call(t,e)}function c(t){return parseFloat(t)||0}function h(t){const e=getComputedStyle(t);return{border:{top:c(e.borderTopWidth),bottom:c(e.borderBottomWidth),left:c(e.borderLeftWidth),right:c(e.borderRightWidth)},margin:{top:c(e.marginTop),bottom:c(e.marginBottom),left:c(e.marginLeft),right:c(e.marginRight)},padding:{top:c(e.paddingTop),bottom:c(e.paddingBottom),left:c(e.paddingLeft),right:c(e.paddingRight)}}}function d(t){const e=t.getBoundingClientRect();return{width:Math.ceil(e.width),height:Math.ceil(e.height)}}n.createElement=function(t,e,...n){return s(t)(e,...n)},n.div=s(\"div\"),n.span=s(\"span\"),n.canvas=s(\"canvas\"),n.link=s(\"link\"),n.style=s(\"style\"),n.a=s(\"a\"),n.p=s(\"p\"),n.i=s(\"i\"),n.pre=s(\"pre\"),n.button=s(\"button\"),n.label=s(\"label\"),n.input=s(\"input\"),n.select=s(\"select\"),n.option=s(\"option\"),n.optgroup=s(\"optgroup\"),n.textarea=s(\"textarea\"),n.nbsp=function(){return document.createTextNode(\" \")},n.append=function(t,...e){for(const n of e)t.appendChild(n)},n.remove=l,n.removeElement=l,n.replaceWith=function(t,e){const n=t.parentNode;null!=n&&n.replaceChild(e,t)},n.prepend=r,n.empty=function(t,e=!1){let n;for(;n=t.firstChild;)t.removeChild(n);if(e&&t instanceof Element)for(const e of t.attributes)t.removeAttributeNode(e)},n.display=function(t){t.style.display=\"\"},n.undisplay=function(t){t.style.display=\"none\"},n.show=function(t){t.style.visibility=\"\"},n.hide=function(t){t.style.visibility=\"hidden\"},n.offset=function(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},n.matches=a,n.parent=function(t,e){let n=t;for(;n=n.parentElement;)if(a(n,e))return n;return null},n.extents=h,n.size=d,n.scroll_size=function(t){return{width:Math.ceil(t.scrollWidth),height:Math.ceil(t.scrollHeight)}},n.outer_size=function(t){const{margin:{left:e,right:n,top:i,bottom:o}}=h(t),{width:s,height:l}=d(t);return{width:Math.ceil(s+e+n),height:Math.ceil(l+i+o)}},n.content_size=function(t){const{left:e,top:n}=t.getBoundingClientRect(),{padding:i}=h(t);let o=0,s=0;for(const l of t.children){const t=l.getBoundingClientRect();o=Math.max(o,Math.ceil(t.left-e-i.left+t.width)),s=Math.max(s,Math.ceil(t.top-n-i.top+t.height))}return{width:o,height:s}},n.position=function(t,e,n){const{style:i}=t;if(i.left=e.x+\"px\",i.top=e.y+\"px\",i.width=e.width+\"px\",i.height=e.height+\"px\",null==n)i.margin=\"\";else{const{top:t,right:e,bottom:o,left:s}=n;i.margin=`${t}px ${e}px ${o}px ${s}px`}},n.children=function(t){return Array.from(t.children)};class f{constructor(t){this.el=t,this.classList=t.classList}get values(){const t=[];for(let e=0;e<this.classList.length;e++){const n=this.classList.item(e);null!=n&&t.push(n)}return t}has(t){return this.classList.contains(t)}add(...t){for(const e of t)this.classList.add(e);return this}remove(...t){for(const e of t)this.classList.remove(e);return this}clear(){for(const t of this.values)\"bk\"!=t&&this.classList.remove(t);return this}toggle(t,e){return(null!=e?e:!this.has(t))?this.add(t):this.remove(t),this}}var u;function p(t,e,n){const{width:i,height:o,position:s,display:l}=t.style;t.style.position=\"absolute\",t.style.display=\"\",t.style.width=null!=e.width&&e.width!=1/0?e.width+\"px\":\"auto\",t.style.height=null!=e.height&&e.height!=1/0?e.height+\"px\":\"auto\";try{return n()}finally{t.style.position=s,t.style.display=l,t.style.width=i,t.style.height=o}}n.ClassList=f,f.__name__=\"ClassList\",n.classes=function(t){return new f(t)},n.toggle_attribute=function(t,e,n){null==n&&(n=!t.hasAttribute(e)),n?t.setAttribute(e,\"true\"):t.removeAttribute(e)},(u=n.Keys||(n.Keys={}))[u.Backspace=8]=\"Backspace\",u[u.Tab=9]=\"Tab\",u[u.Enter=13]=\"Enter\",u[u.Esc=27]=\"Esc\",u[u.PageUp=33]=\"PageUp\",u[u.PageDown=34]=\"PageDown\",u[u.Left=37]=\"Left\",u[u.Up=38]=\"Up\",u[u.Right=39]=\"Right\",u[u.Down=40]=\"Down\",u[u.Delete=46]=\"Delete\",n.undisplayed=function(t,e){const{display:n}=t.style;t.style.display=\"none\";try{return e()}finally{t.style.display=n}},n.unsized=function(t,e){return p(t,{},e)},n.sized=p;class g{constructor(t){this.root=t,this.known=new Set,this.style=n.style({type:\"text/css\"}),r(t,this.style)}append(t){this.known.has(t)||(this.style.appendChild(document.createTextNode(t)),this.known.add(t))}}n.StyleSheet=g,g.__name__=\"StyleSheet\",n.stylesheet=new g(document.head)},\n      function _(n,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default=\"\\n.bk-root {\\n  position: relative;\\n  width: auto;\\n  height: auto;\\n  z-index: 0;\\n  box-sizing: border-box;\\n  font-family: Helvetica, Arial, sans-serif;\\n  font-size: 13px;\\n}\\n.bk-root .bk,\\n.bk-root .bk:before,\\n.bk-root .bk:after {\\n  box-sizing: inherit;\\n  margin: 0;\\n  border: 0;\\n  padding: 0;\\n  background-image: none;\\n  font-family: inherit;\\n  font-size: 100%;\\n  line-height: 1.42857143;\\n}\\n.bk-root pre.bk {\\n  font-family: Courier, monospace;\\n}\\n\"},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const s=e(1),l=s.__importStar(e(28)),c=s.__importStar(e(18)),i=e(22),o=e(8),r=e(75),h=e(77);function n(e,t){const[a,s,l,c]=o.isString(e)?i.color2rgba(e):i.decode_rgba(e);return`rgba(${255*a}, ${255*s}, ${255*l}, ${1==c?t:c})`}function _(e,t,a){e.moveTo(0,a+.5),e.lineTo(t,a+.5),e.stroke()}function u(e,t,a){e.moveTo(a+.5,0),e.lineTo(a+.5,t),e.stroke()}function v(e,t){e.moveTo(0,t),e.lineTo(t,0),e.stroke(),e.moveTo(0,0),e.lineTo(t,t),e.stroke()}a.hatch_aliases={\" \":\"blank\",\".\":\"dot\",o:\"ring\",\"-\":\"horizontal_line\",\"|\":\"vertical_line\",\"+\":\"cross\",'\"':\"horizontal_dash\",\":\":\"vertical_dash\",\"@\":\"spiral\",\"/\":\"right_diagonal_line\",\"\\\\\":\"left_diagonal_line\",x:\"diagonal_cross\",\",\":\"right_diagonal_dash\",\"`\":\"left_diagonal_dash\",v:\"horizontal_wave\",\">\":\"vertical_wave\",\"*\":\"criss_cross\"};class p{constructor(e,t=\"\"){this.obj=e,this.prefix=t,this.cache={};for(const a of this.attrs)this[a]=e.properties[t+a]}warm_cache(e,t){for(const a of this.attrs){const s=this.obj.properties[this.prefix+a];if(void 0!==s.spec.value)this.cache[a]=s.spec.value;else{if(!(null!=e&&s instanceof c.VectorSpec))throw new Error(\"source is required with a vectorized visual property\");{const l=s.array(e),c=null!=t?t.select(l):l;this.cache[a+\"_array\"]=c}}}}cache_select(e,t){const a=this.obj.properties[this.prefix+e];let s;return void 0!==a.spec.value?this.cache[e]=s=a.spec.value:this.cache[e]=s=this.cache[e+\"_array\"][t],s}get_array(e){return this.cache[e+\"_array\"]}set_vectorize(e,t){this._set_vectorize(e,t)}}a.ContextProperties=p,p.__name__=\"ContextProperties\";class f extends p{set_value(e){const t=this.line_color.value(),a=this.line_alpha.value();e.strokeStyle=n(t,a),e.lineWidth=this.line_width.value(),e.lineJoin=this.line_join.value(),e.lineCap=this.line_cap.value(),e.lineDash=this.line_dash.value(),e.lineDashOffset=this.line_dash_offset.value()}get doit(){return!(null===this.line_color.spec.value||0==this.line_alpha.spec.value||0==this.line_width.spec.value)}_set_vectorize(e,t){const a=this.cache_select(\"line_color\",t),s=this.cache_select(\"line_alpha\",t),l=this.cache_select(\"line_width\",t),c=this.cache_select(\"line_join\",t),i=this.cache_select(\"line_cap\",t),o=this.cache_select(\"line_dash\",t),r=this.cache_select(\"line_dash_offset\",t);e.strokeStyle=n(a,s),e.lineWidth=l,e.lineJoin=c,e.lineCap=i,e.lineDash=o,e.lineDashOffset=r}color_value(){return n(this.line_color.value(),this.line_alpha.value())}}a.Line=f,f.__name__=\"Line\",f.prototype.attrs=Object.keys(l.LineVector);class d extends p{set_value(e){const t=this.fill_color.value(),a=this.fill_alpha.value();e.fillStyle=n(t,a)}get doit(){return!(null===this.fill_color.spec.value||0==this.fill_alpha.spec.value)}_set_vectorize(e,t){const a=this.cache_select(\"fill_color\",t),s=this.cache_select(\"fill_alpha\",t);e.fillStyle=n(a,s)}color_value(){return n(this.fill_color.value(),this.fill_alpha.value())}}a.Fill=d,d.__name__=\"Fill\",d.prototype.attrs=Object.keys(l.FillVector);class k extends p{cache_select(e,t){let s;if(\"pattern\"==e){const e=this.cache_select(\"hatch_color\",t),s=this.cache_select(\"hatch_alpha\",t),l=this.cache_select(\"hatch_scale\",t),c=this.cache_select(\"hatch_pattern\",t),i=this.cache_select(\"hatch_weight\",t),{hatch_extra:o}=this.cache;if(null!=o&&o.hasOwnProperty(c)){const t=o[c];this.cache.pattern=t.get_pattern(e,s,l,i)}else this.cache.pattern=t=>{const o=t instanceof r.SVGRenderingContext2D?\"svg\":\"canvas\",p=new h.CanvasLayer(o,!0);return p.resize(l,l),p.prepare(),function(e,t,s,l,c,i){var o;const r=c,h=r/2,p=h/2;switch(e.strokeStyle=n(s,l),e.lineCap=\"square\",e.fillStyle=s,e.lineWidth=i,null!==(o=a.hatch_aliases[t])&&void 0!==o?o:t){case\"blank\":break;case\"dot\":e.arc(h,h,h/2,0,2*Math.PI,!0),e.fill();break;case\"ring\":e.arc(h,h,h/2,0,2*Math.PI,!0),e.stroke();break;case\"horizontal_line\":_(e,r,h);break;case\"vertical_line\":u(e,r,h);break;case\"cross\":_(e,r,h),u(e,r,h);break;case\"horizontal_dash\":_(e,h,h);break;case\"vertical_dash\":u(e,h,h);break;case\"spiral\":{const t=r/30;e.moveTo(h,h);for(let a=0;a<360;a++){const s=.1*a,l=h+t*s*Math.cos(s),c=h+t*s*Math.sin(s);e.lineTo(l,c)}e.stroke();break}case\"right_diagonal_line\":e.moveTo(.5-p,r),e.lineTo(p+.5,0),e.stroke(),e.moveTo(p+.5,r),e.lineTo(3*p+.5,0),e.stroke(),e.moveTo(3*p+.5,r),e.lineTo(5*p+.5,0),e.stroke(),e.stroke();break;case\"left_diagonal_line\":e.moveTo(p+.5,r),e.lineTo(.5-p,0),e.stroke(),e.moveTo(3*p+.5,r),e.lineTo(p+.5,0),e.stroke(),e.moveTo(5*p+.5,r),e.lineTo(3*p+.5,0),e.stroke(),e.stroke();break;case\"diagonal_cross\":v(e,r);break;case\"right_diagonal_dash\":e.moveTo(p+.5,3*p+.5),e.lineTo(3*p+.5,p+.5),e.stroke();break;case\"left_diagonal_dash\":e.moveTo(p+.5,p+.5),e.lineTo(3*p+.5,3*p+.5),e.stroke();break;case\"horizontal_wave\":e.moveTo(0,p),e.lineTo(h,3*p),e.lineTo(r,p),e.stroke();break;case\"vertical_wave\":e.moveTo(p,0),e.lineTo(3*p,h),e.lineTo(p,r),e.stroke();break;case\"criss_cross\":v(e,r),_(e,r,h),u(e,r,h)}}(p.ctx,c,e,s,l,i),t.createPattern(p.canvas,\"repeat\")}}else s=super.cache_select(e,t);return s}_try_defer(e){const{hatch_pattern:t,hatch_extra:a}=this.cache;if(null!=a&&a.hasOwnProperty(t)){a[t].onload(e)}}get doit(){return!(null===this.hatch_color.spec.value||0==this.hatch_alpha.spec.value||\" \"==this.hatch_pattern.spec.value||\"blank\"==this.hatch_pattern.spec.value||null===this.hatch_pattern.spec.value)}doit2(e,t,a,s){if(!this.doit)return;this.cache_select(\"pattern\",t);null==this.cache.pattern(e)?this._try_defer(s):(this.set_vectorize(e,t),a())}_set_vectorize(e,t){this.cache_select(\"pattern\",t),e.fillStyle=this.cache.pattern(e)}color_value(){return n(this.hatch_color.value(),this.hatch_alpha.value())}}a.Hatch=k,k.__name__=\"Hatch\",k.prototype.attrs=Object.keys(l.HatchVector);class x extends p{color_value(){return n(this.text_color.value(),this.text_alpha.value())}font_value(){const e=this.text_font.value(),t=this.text_font_size.value();return`${this.text_font_style.value()} ${t} ${e}`}v_font_value(e){super.cache_select(\"text_font_style\",e),super.cache_select(\"text_font_size\",e),super.cache_select(\"text_font\",e);const{text_font_style:t,text_font_size:a,text_font:s}=this.cache;return`${t} ${a} ${s}`}cache_select(e,t){let a;return\"font\"==e?this.cache.font=a=this.v_font_value(t):a=super.cache_select(e,t),a}set_value(e){const t=this.text_color.value(),a=this.text_alpha.value();e.fillStyle=n(t,a),e.font=this.font_value(),e.textAlign=this.text_align.value(),e.textBaseline=this.text_baseline.value()}get doit(){return!(null===this.text_color.spec.value||0==this.text_alpha.spec.value)}_set_vectorize(e,t){const a=this.cache_select(\"text_color\",t),s=this.cache_select(\"text_alpha\",t),l=this.cache_select(\"font\",t),c=this.cache_select(\"text_align\",t),i=this.cache_select(\"text_baseline\",t);e.fillStyle=n(a,s),e.font=l,e.textAlign=c,e.textBaseline=i}}a.Text=x,x.__name__=\"Text\",x.prototype.attrs=Object.keys(l.TextVector);class b{constructor(e){for(const t of e._mixins){const[a,s=\"\"]=t.split(\":\");let l;switch(a){case\"line\":l=f;break;case\"fill\":l=d;break;case\"hatch\":l=k;break;case\"text\":l=x;break;default:throw new Error(\"unknown visual: \"+a)}this[s+a]=new l(e,s)}}warm_cache(e,t){for(const a in this)if(this.hasOwnProperty(a)){const s=this[a];s instanceof p&&s.warm_cache(e,t)}}}a.Visuals=b,b.__name__=\"Visuals\"},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(76),n=t(8),r=t(72);function a(t){if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");const e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\";let i=\"\";do{i=\"\";for(let t=0;t<12;t++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}function o(t){const e={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"};return e[t]||e.start}function l(t){const e={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"};return e[t]||e.alphabetic}const h=function(t,e){const i=new Map,s=t.split(\",\");e=e||10;for(let t=0;t<s.length;t+=2){const n=\"&\"+s[t+1]+\";\",r=parseInt(s[t],e);i.set(n,\"&#\"+r+\";\")}return i.set(\"\\\\xa0\",\"&#160;\"),i}(\"50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro\",32),c={strokeStyle:{svgAttr:\"stroke\",canvas:\"#000000\",svg:\"none\",apply:\"stroke\"},fillStyle:{svgAttr:\"fill\",canvas:\"#000000\",svg:null,apply:\"fill\"},lineCap:{svgAttr:\"stroke-linecap\",canvas:\"butt\",svg:\"butt\",apply:\"stroke\"},lineJoin:{svgAttr:\"stroke-linejoin\",canvas:\"miter\",svg:\"miter\",apply:\"stroke\"},miterLimit:{svgAttr:\"stroke-miterlimit\",canvas:10,svg:4,apply:\"stroke\"},lineWidth:{svgAttr:\"stroke-width\",canvas:1,svg:1,apply:\"stroke\"},globalAlpha:{svgAttr:\"opacity\",canvas:1,svg:1,apply:\"fill stroke\"},font:{canvas:\"10px sans-serif\"},shadowColor:{canvas:\"#000000\"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:\"start\"},textBaseline:{canvas:\"alphabetic\"},lineDash:{svgAttr:\"stroke-dasharray\",canvas:[],svg:null,apply:\"stroke\"}};class _{constructor(t,e){this.__root=t,this.__ctx=e}addColorStop(t,e){const i=this.__ctx.__createElement(\"stop\");if(i.setAttribute(\"offset\",\"\"+t),-1!==e.indexOf(\"rgba\")){const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),[,s,n,r,a]=t;i.setAttribute(\"stop-color\",`rgb(${s},${n},${r})`),i.setAttribute(\"stop-opacity\",a)}else i.setAttribute(\"stop-color\",e);this.__root.appendChild(i)}}_.__name__=\"CanvasGradient\";class u{constructor(t,e){this.__root=t,this.__ctx=e}}u.__name__=\"CanvasPattern\";class p{constructor(t){var e,i,n;this.__currentPosition=null,this.__currentElementsToStyle=null,this._transform=new s.AffineTransform,this._clip_path=null,this.__document=null!==(e=null==t?void 0:t.document)&&void 0!==e?e:document,(null==t?void 0:t.ctx)?this.__ctx=t.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[],this.__root=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),this.__root.setAttribute(\"version\",\"1.1\"),this.__root.setAttribute(\"xmlns\",\"http://www.w3.org/2000/svg\"),this.__root.setAttributeNS(\"http://www.w3.org/2000/xmlns/\",\"xmlns:xlink\",\"http://www.w3.org/1999/xlink\"),this.width=null!==(i=null==t?void 0:t.width)&&void 0!==i?i:500,this.height=null!==(n=null==t?void 0:t.height)&&void 0!==n?n:500,this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs)}get canvas(){return this}get width(){return this._width}set width(t){this._width=t,this.__root.setAttribute(\"width\",\"\"+t)}get height(){return this._height}set height(t){this._height=t,this.__root.setAttribute(\"height\",\"\"+t)}__createElement(t,e={},i=!1){const s=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t);i&&(s.setAttribute(\"fill\",\"none\"),s.setAttribute(\"stroke\",\"none\"));const n=Object.keys(e);for(const t of n)s.setAttribute(t,\"\"+e[t]);return s}__setDefaultStyles(){const t=Object.keys(c),e=this;for(let i=0;i<t.length;i++){const s=t[i];e[s]=c[s].canvas}}__applyStyleState(t){const e=Object.keys(t),i=this;for(let s=0;s<e.length;s++){const n=e[s];i[n]=t[n]}}__getStyleState(){const t=Object.keys(c),e={};for(let i=0;i<t.length;i++){const s=t[i];e[s]=this[s]}return e}__applyStyleToCurrentElement(t){let e=this.__currentElement;const i=this.__currentElementsToStyle;if(null!=i){e.setAttribute(t,\"\"),e=i.element;for(const e of i.children)e.setAttribute(t,\"\")}const s=Object.keys(c);for(let i=0;i<s.length;i++){const r=c[s[i]],a=this[s[i]];if(r.apply)if(a instanceof u){for(const t of[...a.__ctx.__defs.childNodes])if(t instanceof Element){const e=t.getAttribute(\"id\");this.__ids[e]=e,this.__defs.appendChild(t)}const t=a.__root.getAttribute(\"id\");e.setAttribute(r.apply,`url(#${t})`)}else if(a instanceof _){const t=a.__root.getAttribute(\"id\");e.setAttribute(r.apply,`url(#${t})`)}else if(-1!==r.apply.indexOf(t)&&r.svg!==a)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||!n.isString(a)||-1===a.indexOf(\"rgba\")){let n=r.svgAttr;if(\"globalAlpha\"===s[i]&&(n=t+\"-\"+r.svgAttr,e.getAttribute(n)))continue;e.setAttribute(n,\"\"+a)}else{const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(a),[,i,s,n,o]=t;e.setAttribute(r.svgAttr,`rgb(${i},${s},${n})`);let l=parseFloat(o);const h=this.globalAlpha;null!=h&&(l*=h),e.setAttribute(r.svgAttr+\"-opacity\",\"\"+l)}}}get_serialized_svg(t=!1){let e=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(e)&&(e=e.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(const[t,i]of h){const s=new RegExp(t,\"gi\");s.test(e)&&(e=e.replace(s,i))}return e}get_svg(){return this.__root}save(){this.__stack.push({transform:this._transform,clip_path:this._clip_path,attributes:this.__getStyleState()}),this._transform=this._transform.clone()}restore(){if(0==this.__stack.length)return;const{transform:t,clip_path:e,attributes:i}=this.__stack.pop();this._transform=t,this._clip_path=e,this.__applyStyleState(i)}_apply_transform(t,e=this._transform){e.is_identity||t.setAttribute(\"transform\",e.toString())}scale(t,e){isFinite(t)&&(null==e||isFinite(e))&&this._transform.scale(t,null!=e?e:t)}rotate(t){isFinite(t)&&this._transform.rotate(t)}translate(t,e){isFinite(t+e)&&this._transform.translate(t,e)}transform(t,e,i,s,n,r){isFinite(t+e+i+s+n+r)&&this._transform.transform(t,e,i,s,n,r)}beginPath(){this.__currentDefaultPath=\"\",this.__currentPosition=null;const t=this.__createElement(\"path\",{},!0);this.__root.appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){const t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)}__addPathCommand(t,e,i){const s=this.__currentDefaultPath?\" \":\"\";this.__currentDefaultPath+=s+i,this.__currentPosition={x:t,y:e}}get _hasCurrentDefaultPath(){return!!this.__currentDefaultPath}moveTo(t,e){if(!isFinite(t+e))return;\"path\"!==this.__currentElement.nodeName&&this.beginPath();const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`M ${i} ${s}`)}closePath(){this._hasCurrentDefaultPath&&this.__addPathCommand(NaN,NaN,\"Z\")}lineTo(t,e){if(isFinite(t+e))if(this._hasCurrentDefaultPath){const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`L ${i} ${s}`)}else this.moveTo(t,e)}bezierCurveTo(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))return;const[a,o]=this._transform.apply(n,r),[l,h]=this._transform.apply(t,e),[c,_]=this._transform.apply(i,s);this.__addPathCommand(a,o,`C ${l} ${h} ${c} ${_} ${a} ${o}`)}quadraticCurveTo(t,e,i,s){if(!isFinite(t+e+i+s))return;const[n,r]=this._transform.apply(i,s),[a,o]=this._transform.apply(t,e);this.__addPathCommand(n,r,`Q ${a} ${o} ${n} ${r}`)}arcTo(t,e,i,s,n){if(!isFinite(t+e+i+s+n))return;if(null==this.__currentPosition)return;const r=this.__currentPosition.x,a=this.__currentPosition.y;if(n<0)throw new Error(\"IndexSizeError: The radius provided (\"+n+\") is negative.\");if(r===t&&a===e||t===i&&e===s||0===n)return void this.lineTo(t,e);function o([t,e]){const i=Math.sqrt(t**2+e**2);return[t/i,e/i]}const l=o([r-t,a-e]),h=o([i-t,s-e]);if(l[0]*h[1]==l[1]*h[0])return void this.lineTo(t,e);const c=l[0]*h[0]+l[1]*h[1],_=Math.acos(Math.abs(c)),u=o([l[0]+h[0],l[1]+h[1]]),p=n/Math.sin(_/2),d=t+p*u[0],m=e+p*u[1],f=[-l[1],l[0]],g=[h[1],-h[0]];function w(t){const e=t[0];return t[1]>=0?Math.acos(e):-Math.acos(e)}const b=w(f),v=w(g);this.lineTo(d+f[0]*n,m+f[1]*n),this.arc(d,m,n,b,v)}stroke(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\"),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}fill(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\"),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}rect(t,e,i,s){isFinite(t+e+i+s)&&(\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+s),this.lineTo(t,e+s),this.lineTo(t,e))}fillRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.fill())}strokeRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.stroke())}__clearCanvas(){r.empty(this.__defs),r.empty(this.__root),this.__root.appendChild(this.__defs),this.__currentElement=this.__root}clearRect(t,e,i,s){if(!isFinite(t+e+i+s))return;if(0===t&&0===e&&i===this.width&&s===this.height)return void this.__clearCanvas();const n=this.__createElement(\"rect\",{x:t,y:e,width:i,height:s,fill:\"#FFFFFF\"},!0);this._apply_transform(n),this.__root.appendChild(n)}createLinearGradient(t,e,i,s){if(!isFinite(t+e+i+s))throw new Error(\"The provided double value is non-finite\");const[n,r]=this._transform.apply(t,e),[o,l]=this._transform.apply(i,s),h=this.__createElement(\"linearGradient\",{id:a(this.__ids),x1:n+\"px\",x2:o+\"px\",y1:r+\"px\",y2:l+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(h),new _(h,this)}createRadialGradient(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))throw new Error(\"The provided double value is non-finite\");const[o,l]=this._transform.apply(t,e),[h,c]=this._transform.apply(s,n),u=this.__createElement(\"radialGradient\",{id:a(this.__ids),cx:h+\"px\",cy:c+\"px\",r:r+\"px\",fx:o+\"px\",fy:l+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(u),new _(u,this)}__parseFont(){const t=/^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-,\\'\\\"\\sa-z0-9]+?)\\s*$/i.exec(this.font),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\"};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),null!=this.__fontHref&&(e.href=this.__fontHref),e}__wrapTextLink(t,e){if(t.href){const i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e}__applyText(t,e,i,s){const n=this.__parseFont(),r=this.__createElement(\"text\",{\"font-family\":n.family,\"font-size\":n.size,\"font-style\":n.style,\"font-weight\":n.weight,\"text-decoration\":n.decoration,x:e,y:i,\"text-anchor\":o(this.textAlign),\"dominant-baseline\":l(this.textBaseline)},!0);r.appendChild(this.__document.createTextNode(t)),this._apply_transform(r),this.__currentElement=r,this.__applyStyleToCurrentElement(s),this.__root.appendChild(this.__wrapTextLink(n,r))}fillText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"fill\")}strokeText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"stroke\")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,e,i,s,n,r=!1){if(!isFinite(t+e+i+s+n))return;if(s===n)return;(s%=2*Math.PI)===(n%=2*Math.PI)&&(n=(n+2*Math.PI-.001*(r?-1:1))%(2*Math.PI));const a=t+i*Math.cos(n),o=e+i*Math.sin(n),l=t+i*Math.cos(s),h=e+i*Math.sin(s),c=r?0:1;let _=0,u=n-s;u<0&&(u+=2*Math.PI),_=r?u>Math.PI?0:1:u>Math.PI?1:0,this.lineTo(l,h);const p=i,d=i,[m,f]=this._transform.apply(a,o);this.__addPathCommand(m,f,`A ${p} ${d} 0 ${_} ${c} ${m} ${f}`)}clip(){const t=this.__createElement(\"clipPath\"),e=a(this.__ids);this.__applyCurrentDefaultPath(),t.setAttribute(\"id\",e),t.appendChild(this.__currentElement),this.__defs.appendChild(t),this._clip_path=`url(#${e})`}drawImage(t,...e){let i,s,n,r,a,o,l,h;if(2==e.length){if([i,s]=e,!isFinite(i+s))return;a=0,o=0,l=t.width,h=t.height,n=l,r=h}else if(4==e.length){if([i,s,n,r]=e,!isFinite(i+s+n+r))return;a=0,o=0,l=t.width,h=t.height}else{if(8!==e.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);if([a,o,l,h,i,s,n,r]=e,!isFinite(a+o+l+h+i+s+n+r))return}const c=this.__root,_=\"translate(\"+i+\", \"+s+\")\",u=this._transform.clone().translate(i,s);if(t instanceof p||t instanceof SVGSVGElement){const e=(t instanceof SVGSVGElement?t:t.get_svg()).cloneNode(!0);let i;u.is_identity?i=c:(i=this.__createElement(\"g\"),this._apply_transform(i,u),c.appendChild(i));for(const t of[...e.childNodes])if(t instanceof SVGDefsElement){for(const e of[...t.childNodes])if(e instanceof Element){const t=e.getAttribute(\"id\");this.__ids[t]=t,this.__defs.appendChild(e)}}else i.appendChild(t)}else if(t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__createElement(\"image\");if(e.setAttribute(\"width\",\"\"+n),e.setAttribute(\"height\",\"\"+r),e.setAttribute(\"preserveAspectRatio\",\"none\"),a||o||l!==t.width||h!==t.height){const e=this.__document.createElement(\"canvas\");e.width=n,e.height=r;e.getContext(\"2d\").drawImage(t,a,o,l,h,0,0,n,r),t=e}e.setAttribute(\"transform\",_);const i=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",i),c.appendChild(e)}else if(t instanceof HTMLCanvasElement){const e=this.__createElement(\"image\");e.setAttribute(\"width\",\"\"+n),e.setAttribute(\"height\",\"\"+r),e.setAttribute(\"preserveAspectRatio\",\"none\");const i=this.__document.createElement(\"canvas\");i.width=n,i.height=r;const s=i.getContext(\"2d\");s.imageSmoothingEnabled=!1,s.drawImage(t,a,o,l,h,0,0,n,r),t=i,e.setAttribute(\"transform\",_),e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.toDataURL()),c.appendChild(e)}}createPattern(t,e){const i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),s=a(this.__ids);if(i.setAttribute(\"id\",s),i.setAttribute(\"width\",\"\"+this._to_number(t.width)),i.setAttribute(\"height\",\"\"+this._to_number(t.height)),i.setAttribute(\"patternUnits\",\"userSpaceOnUse\"),t instanceof HTMLCanvasElement||t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\"),s=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",s),i.appendChild(e),this.__defs.appendChild(i)}else if(t instanceof p){for(const e of[...t.__root.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}else{if(!(t instanceof SVGSVGElement))throw new Error(\"unsupported\");for(const e of[...t.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}return new u(i,this)}setLineDash(t){t&&t.length>0?this.lineDash=t.join(\",\"):this.lineDash=null}_to_number(t){return n.isNumber(t)?t:t.baseVal.value}}i.SVGRenderingContext2D=p,p.__name__=\"SVGRenderingContext2D\"},\n      function _(t,s,r){Object.defineProperty(r,\"__esModule\",{value:!0});const{sin:e,cos:n}=Math;class i{constructor(t=1,s=0,r=0,e=1,n=0,i=0){this.a=t,this.b=s,this.c=r,this.d=e,this.e=n,this.f=i}toString(){const{a:t,b:s,c:r,d:e,e:n,f:i}=this;return`matrix(${t}, ${s}, ${r}, ${e}, ${n}, ${i})`}clone(){const{a:t,b:s,c:r,d:e,e:n,f:a}=this;return new i(t,s,r,e,n,a)}get is_identity(){const{a:t,b:s,c:r,d:e,e:n,f:i}=this;return 1==t&&0==s&&0==r&&1==e&&0==n&&0==i}apply(t,s){const{a:r,b:e,c:n,d:i,e:a,f:h}=this;return[r*t+n*s+a,e*t+i*s+h]}iv_apply(t,s){const{a:r,b:e,c:n,d:i,e:a,f:h}=this,c=t.length;for(let o=0;o<c;o++){const c=t[o],f=s[o];t[o]=r*c+n*f+a,s[o]=e*c+i*f+h}}transform(t,s,r,e,n,i){const{a,b:h,c,d:o,e:f,f:l}=this;return this.a=a*t+c*s,this.c=a*r+c*e,this.e=a*n+c*i+f,this.b=h*t+o*s,this.d=h*r+o*e,this.f=h*n+o*i+l,this}translate(t,s){return this.transform(1,0,0,1,t,s)}scale(t,s){return this.transform(t,0,0,s,0,0)}skew(t,s){return this.transform(1,s,t,1,0,0)}rotate(t){const s=e(t),r=n(t);return this.transform(r,s,-s,r,0,0)}rotate_ccw(t){return this.rotate(-t)}translate_x(t){return this.translate(t,0)}translate_y(t){return this.translate(0,t)}flip(){return this.scale(-1,-1)}flip_x(){return this.scale(1,-1)}flip_y(){return this.scale(-1,1)}}r.AffineTransform=i,i.__name__=\"AffineTransform\"},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),a=e(14),n=e(78),l=e(19),o=s.__importStar(e(18)),r=e(72),h=e(13),c=e(79),_=e(80),d=e(75),p=(()=>{const e=document.createElement(\"canvas\"),t=e.getContext(\"webgl\",{premultipliedAlpha:!0});return null!=t?{canvas:e,gl:t}:void l.logger.trace(\"WebGL is not supported\")})(),v={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"};class b{constructor(e,t){switch(this.backend=e,this.hidpi=t,this.pixel_ratio=1,this.bbox=new c.BBox,e){case\"webgl\":case\"canvas\":{this._el=this._canvas=r.canvas({style:v});const e=this.canvas.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e,t&&(this.pixel_ratio=devicePixelRatio);break}case\"svg\":{const e=new d.SVGRenderingContext2D;this._ctx=e,this._canvas=e.get_svg(),this._el=r.div({style:v},this._canvas);break}}_.fixup_ctx(this._ctx)}get canvas(){return this._canvas}get ctx(){return this._ctx}get el(){return this._el}resize(e,t){this.bbox=new c.BBox({left:0,top:0,width:e,height:t});const i=this._ctx instanceof d.SVGRenderingContext2D?this._ctx:this.canvas;i.width=e*this.pixel_ratio,i.height=t*this.pixel_ratio}prepare(){const{ctx:e,hidpi:t,pixel_ratio:i}=this;e.save(),t&&(e.scale(i,i),e.translate(.5,.5)),this.clear()}clear(){const{x:e,y:t,width:i,height:s}=this.bbox;this.ctx.clearRect(e,t,i,s)}finish(){this.ctx.restore()}to_blob(){const{_canvas:e}=this;if(e instanceof HTMLCanvasElement)return null!=e.msToBlob?Promise.resolve(e.msToBlob()):new Promise((t,i)=>{e.toBlob(e=>null!=e?t(e):i(),\"image/png\")});{const e=this._ctx.get_serialized_svg(!0),t=new Blob([e],{type:\"image/svg+xml\"});return Promise.resolve(t)}}}i.CanvasLayer=b,b.__name__=\"CanvasLayer\";class g extends n.DOMView{constructor(){super(...arguments),this.bbox=new c.BBox}initialize(){super.initialize();const{output_backend:e,hidpi:t}=this.model;\"webgl\"==e&&(this.webgl=p),this.underlays_el=r.div({style:v}),this.primary=new b(e,t),this.overlays=new b(e,t),this.overlays_el=r.div({style:v}),this.events_el=r.div({class:\"bk-canvas-events\",style:v});const i=[this.underlays_el,this.primary.el,this.overlays.el,this.overlays_el,this.events_el];h.extend(this.el.style,v),r.append(this.el,...i),l.logger.debug(\"CanvasView initialized\")}add_underlay(e){this.underlays_el.appendChild(e)}add_overlay(e){this.overlays_el.appendChild(e)}add_event(e){this.events_el.appendChild(e)}get pixel_ratio(){return this.primary.pixel_ratio}resize(e,t){this.bbox=new c.BBox({left:0,top:0,width:e,height:t}),this.primary.resize(e,t),this.overlays.resize(e,t)}prepare_webgl(e){const{webgl:t}=this;if(null!=t){const{width:i,height:s}=this.bbox;t.canvas.width=this.pixel_ratio*i,t.canvas.height=this.pixel_ratio*s;const{gl:a}=t;a.enable(a.SCISSOR_TEST);const[n,l,o,r]=e,{xview:h,yview:c}=this.bbox,_=h.compute(n),d=c.compute(l+r),p=this.pixel_ratio;a.scissor(p*_,p*d,p*o,p*r),a.enable(a.BLEND),a.blendFuncSeparate(a.SRC_ALPHA,a.ONE_MINUS_SRC_ALPHA,a.ONE_MINUS_DST_ALPHA,a.ONE)}}clear_webgl(){const{webgl:e}=this;if(null!=e){const{gl:t,canvas:i}=e;t.viewport(0,0,i.width,i.height),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT||t.DEPTH_BUFFER_BIT)}}blit_webgl(e){const{webgl:t}=this;if(null!=t&&(l.logger.debug(\"Blitting WebGL canvas\"),e.restore(),e.drawImage(t.canvas,0,0),e.save(),this.model.hidpi)){const t=this.pixel_ratio;e.scale(t,t),e.translate(.5,.5)}}compose(){const{output_backend:e,hidpi:t}=this.model,{width:i,height:s}=this.bbox,a=new b(e,t);return a.resize(i,s),a.ctx.drawImage(this.primary.canvas,0,0),a.ctx.drawImage(this.overlays.canvas,0,0),a}to_blob(){return this.compose().to_blob()}}i.CanvasView=g,g.__name__=\"CanvasView\";class x extends a.HasProps{constructor(e){super(e)}static init_Canvas(){this.prototype.default_view=g,this.internal({hidpi:[o.Boolean,!0],output_backend:[o.OutputBackend,\"canvas\"]})}}i.Canvas=x,x.__name__=\"Canvas\",x.init_Canvas()},\n      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(71),r=e(72);class n extends i.View{initialize(){super.initialize(),this.el=this._createElement()}remove(){r.remove(this.el),super.remove()}css_classes(){return[]}render(){}renderTo(e){e.appendChild(this.el),this.render()}_createElement(){return r.createElement(this.tagName,{class:this.css_classes()})}}t.DOMView=n,n.__name__=\"DOMView\",n.prototype.tagName=\"div\"},\n      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const h=t(24),{min:r,max:s}=Math;e.empty=function(){return{x0:1/0,y0:1/0,x1:-1/0,y1:-1/0}},e.positive_x=function(){return{x0:Number.MIN_VALUE,y0:-1/0,x1:1/0,y1:1/0}},e.positive_y=function(){return{x0:-1/0,y0:Number.MIN_VALUE,x1:1/0,y1:1/0}},e.union=function(t,i){return{x0:r(t.x0,i.x0),x1:s(t.x1,i.x1),y0:r(t.y0,i.y0),y1:s(t.y1,i.y1)}};class n{constructor(t){if(null==t)this.x0=0,this.y0=0,this.x1=0,this.y1=0;else if(\"x0\"in t){const{x0:i,y0:e,x1:h,y1:r}=t;if(!(i<=h&&e<=r))throw new Error(`invalid bbox {x0: ${i}, y0: ${e}, x1: ${h}, y1: ${r}}`);this.x0=i,this.y0=e,this.x1=h,this.y1=r}else if(\"x\"in t){const{x:i,y:e,width:h,height:r}=t;if(!(h>=0&&r>=0))throw new Error(`invalid bbox {x: ${i}, y: ${e}, width: ${h}, height: ${r}}`);this.x0=i,this.y0=e,this.x1=i+h,this.y1=e+r}else{let i,e,h,r;if(\"width\"in t)if(\"left\"in t)i=t.left,e=i+t.width;else if(\"right\"in t)e=t.right,i=e-t.width;else{const h=t.width/2;i=t.hcenter-h,e=t.hcenter+h}else i=t.left,e=t.right;if(\"height\"in t)if(\"top\"in t)h=t.top,r=h+t.height;else if(\"bottom\"in t)r=t.bottom,h=r-t.height;else{const i=t.height/2;h=t.vcenter-i,r=t.vcenter+i}else h=t.top,r=t.bottom;if(!(i<=e&&h<=r))throw new Error(`invalid bbox {left: ${i}, top: ${h}, right: ${e}, bottom: ${r}}`);this.x0=i,this.y0=h,this.x1=e,this.y1=r}}toString(){return`BBox({left: ${this.left}, top: ${this.top}, width: ${this.width}, height: ${this.height}})`}get left(){return this.x0}get top(){return this.y0}get right(){return this.x1}get bottom(){return this.y1}get p0(){return[this.x0,this.y0]}get p1(){return[this.x1,this.y1]}get x(){return this.x0}get y(){return this.y0}get width(){return this.x1-this.x0}get height(){return this.y1-this.y0}get rect(){return{x0:this.x0,y0:this.y0,x1:this.x1,y1:this.y1}}get box(){return{x:this.x,y:this.y,width:this.width,height:this.height}}get h_range(){return{start:this.x0,end:this.x1}}get v_range(){return{start:this.y0,end:this.y1}}get ranges(){return[this.h_range,this.v_range]}get aspect(){return this.width/this.height}get hcenter(){return(this.left+this.right)/2}get vcenter(){return(this.top+this.bottom)/2}relativize(){const{width:t,height:i}=this;return new n({x:0,y:0,width:t,height:i})}contains(t,i){return t>=this.x0&&t<=this.x1&&i>=this.y0&&i<=this.y1}clip(t,i){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),i<this.y0?i=this.y0:i>this.y1&&(i=this.y1),[t,i]}union(t){return new n({x0:r(this.x0,t.x0),y0:r(this.y0,t.y0),x1:s(this.x1,t.x1),y1:s(this.y1,t.y1)})}equals(t){return this.x0==t.x0&&this.y0==t.y0&&this.x1==t.x1&&this.y1==t.y1}get xview(){return{compute:t=>this.left+t,v_compute:t=>{const i=new h.NumberArray(t.length),e=this.left;for(let h=0;h<t.length;h++)i[h]=e+t[h];return i}}}get yview(){return{compute:t=>this.bottom-t,v_compute:t=>{const i=new h.NumberArray(t.length),e=this.bottom;for(let h=0;h<t.length;h++)i[h]=e-t[h];return i}}}}e.BBox=n,n.__name__=\"BBox\"},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.fixup_ctx=function(e){!function(e){void 0===e.lineDash&&Object.defineProperty(e,\"lineDash\",{get:()=>e.getLineDash(),set:t=>e.setLineDash(t)})}(e),function(e){e.setImageSmoothingEnabled=t=>{e.imageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.oImageSmoothingEnabled=t,e.webkitImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t},e.getImageSmoothingEnabled=()=>{const t=e.imageSmoothingEnabled;return null==t||t}}(e),function(e){e.measureText&&null==e.html5MeasureText&&(e.html5MeasureText=e.measureText,e.measureText=t=>{const n=e.html5MeasureText(t);return n.ascent=1.6*e.html5MeasureText(\"m\").width,n})}(e),function(e){e.ellipse||(e.ellipse=function(t,n,o,a,i,l,m,r=!1){const u=.551784;e.translate(t,n),e.rotate(i);let s=o,g=a;r&&(s=-o,g=-a),e.moveTo(-s,0),e.bezierCurveTo(-s,g*u,-s*u,g,0,g),e.bezierCurveTo(s*u,g,s,g*u,s,0),e.bezierCurveTo(s,-g*u,s*u,-g,0,-g),e.bezierCurveTo(-s*u,-g,-s,-g*u,-s,0),e.rotate(-i),e.translate(-t,-n)})}(e)}},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(1),c=e(14),i=n.__importStar(e(18)),a=e(8),r=e(13),o=e(19);class l extends c.HasProps{constructor(e){super(e)}static init_Model(){this.define({tags:[i.Array,[]],name:[i.String],js_property_callbacks:[i.Any,{}],js_event_callbacks:[i.Any,{}],subscribed_events:[i.Array,[]]})}initialize(){super.initialize(),this._js_callbacks=new Map}connect_signals(){super.connect_signals(),this._update_property_callbacks(),this.connect(this.properties.js_property_callbacks.change,()=>this._update_property_callbacks()),this.connect(this.properties.js_event_callbacks.change,()=>this._update_event_callbacks()),this.connect(this.properties.subscribed_events.change,()=>this._update_event_callbacks())}_process_event(e){for(const t of this.js_event_callbacks[e.event_name]||[])t.execute(e);null!=this.document&&this.subscribed_events.some(t=>t==e.event_name)&&this.document.event_manager.send_event(e)}trigger_event(e){null!=this.document&&(e.origin=this,this.document.event_manager.trigger(e))}_update_event_callbacks(){null!=this.document?this.document.event_manager.subscribed_models.add(this):o.logger.warn(\"WARNING: Document not defined for updating event callbacks\")}_update_property_callbacks(){const e=e=>{const[t,s=null]=e.split(\":\");return null!=s?this.properties[s][t]:this[t]};for(const[t,s]of this._js_callbacks){const n=e(t);for(const e of s)this.disconnect(n,e)}this._js_callbacks.clear();for(const[t,s]of r.entries(this.js_property_callbacks)){const n=s.map(e=>()=>e.execute(this));this._js_callbacks.set(t,n);const c=e(t);for(const e of n)this.connect(c,e)}}_doc_attached(){r.isEmpty(this.js_event_callbacks)&&0==this.subscribed_events.length||this._update_event_callbacks()}_doc_detached(){this.document.event_manager.subscribed_models.delete(this)}select(e){if(a.isString(e))return[...this.references()].filter(t=>t instanceof l&&t.name===e);if(e.prototype instanceof c.HasProps)return[...this.references()].filter(t=>t instanceof e);throw new Error(\"invalid selector\")}select_one(e){const t=this.select(e);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(\"found more than one object matching given selector\")}}}s.Model=l,l.__name__=\"Model\",l.init_Model()},\n      function _(e,s,_){Object.defineProperty(_,\"__esModule\",{value:!0});class t{constructor(e,s){this.x_scale=e,this.y_scale=s,this.x_range=this.x_scale.source_range,this.y_range=this.y_scale.source_range,this.ranges=[this.x_range,this.y_range],this.scales=[this.x_scale,this.y_scale]}map_to_screen(e,s){return[this.x_scale.v_compute(e),this.y_scale.v_compute(s)]}map_from_screen(e,s){return[this.x_scale.v_invert(e),this.y_scale.v_invert(s)]}}_.CoordinateTransform=t,t.__name__=\"CoordinateTransform\"},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),a=t(36),o=t(84),r=t(85),n=t(28),_=i.__importStar(t(18)),h=t(10);class c extends a.AnnotationView{initialize(){super.initialize(),null==this.model.source&&(this.model.source=new r.ColumnDataSource),this.set_data(this.model.source)}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.set_data(this.model.source)),this.connect(this.model.source.streaming,()=>this.set_data(this.model.source)),this.connect(this.model.source.patching,()=>this.set_data(this.model.source)),this.connect(this.model.source.change,()=>this.set_data(this.model.source))}set_data(t){super.set_data(t),this.visuals.warm_cache(t),this.plot_view.request_render()}_map_data(){const{frame:t}=this.plot_view;let e,s,i,a;return\"data\"==this.model.start_units?(e=this.coordinates.x_scale.v_compute(this._x_start),s=this.coordinates.y_scale.v_compute(this._y_start)):(e=t.xview.v_compute(this._x_start),s=t.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(i=this.coordinates.x_scale.v_compute(this._x_end),a=this.coordinates.y_scale.v_compute(this._y_end)):(i=t.xview.v_compute(this._x_end),a=t.yview.v_compute(this._y_end)),[[e,s],[i,a]]}_render(){const{ctx:t}=this.layer;t.save();const[e,s]=this._map_data();null!=this.model.end&&this._arrow_head(t,\"render\",this.model.end,e,s),null!=this.model.start&&this._arrow_head(t,\"render\",this.model.start,s,e),t.beginPath();const{x:i,y:a,width:o,height:r}=this.plot_view.frame.bbox;t.rect(i,a,o,r),null!=this.model.end&&this._arrow_head(t,\"clip\",this.model.end,e,s),null!=this.model.start&&this._arrow_head(t,\"clip\",this.model.start,s,e),t.closePath(),t.clip(),this._arrow_body(t,e,s),t.restore()}_arrow_head(t,e,s,i,a){for(let o=0,r=this._x_start.length;o<r;o++){const r=Math.PI/2+h.atan2([i[0][o],i[1][o]],[a[0][o],a[1][o]]);t.save(),t.translate(a[0][o],a[1][o]),t.rotate(r),\"render\"==e?s.render(t,o):\"clip\"==e&&s.clip(t,o),t.restore()}}_arrow_body(t,e,s){if(this.visuals.line.doit)for(let i=0,a=this._x_start.length;i<a;i++)this.visuals.line.set_vectorize(t,i),t.beginPath(),t.moveTo(e[0][i],e[1][i]),t.lineTo(s[0][i],s[1][i]),t.stroke()}}s.ArrowView=c,c.__name__=\"ArrowView\";class d extends a.Annotation{constructor(t){super(t)}static init_Arrow(){this.prototype.default_view=c,this.mixins(n.LineVector),this.define({x_start:[_.NumberSpec],y_start:[_.NumberSpec],start_units:[_.SpatialUnits,\"data\"],start:[_.Instance,null],x_end:[_.NumberSpec],y_end:[_.NumberSpec],end_units:[_.SpatialUnits,\"data\"],end:[_.Instance,()=>new o.OpenHead({})],source:[_.Instance]})}}s.Arrow=d,d.__name__=\"Arrow\",d.init_Arrow()},\n      function _(i,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=i(1),o=i(36),l=i(74),n=i(28),h=t.__importStar(i(18));class a extends o.Annotation{constructor(i){super(i)}static init_ArrowHead(){this.define({size:[h.Number,25]})}initialize(){super.initialize(),this.visuals=new l.Visuals(this)}}s.ArrowHead=a,a.__name__=\"ArrowHead\",a.init_ArrowHead();class r extends a{constructor(i){super(i)}static init_OpenHead(){this.mixins(n.LineVector)}clip(i,e){this.visuals.line.set_vectorize(i,e),i.moveTo(.5*this.size,this.size),i.lineTo(.5*this.size,-2),i.lineTo(-.5*this.size,-2),i.lineTo(-.5*this.size,this.size),i.lineTo(0,0),i.lineTo(.5*this.size,this.size)}render(i,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),i.beginPath(),i.moveTo(.5*this.size,this.size),i.lineTo(0,0),i.lineTo(-.5*this.size,this.size),i.stroke())}}s.OpenHead=r,r.__name__=\"OpenHead\",r.init_OpenHead();class z extends a{constructor(i){super(i)}static init_NormalHead(){this.mixins([n.LineVector,n.FillVector]),this.override({fill_color:\"black\"})}clip(i,e){this.visuals.line.set_vectorize(i,e),i.moveTo(.5*this.size,this.size),i.lineTo(.5*this.size,-2),i.lineTo(-.5*this.size,-2),i.lineTo(-.5*this.size,this.size),i.lineTo(.5*this.size,this.size)}render(i,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(i,e),this._normal(i,e),i.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),this._normal(i,e),i.stroke())}_normal(i,e){i.beginPath(),i.moveTo(.5*this.size,this.size),i.lineTo(0,0),i.lineTo(-.5*this.size,this.size),i.closePath()}}s.NormalHead=z,z.__name__=\"NormalHead\",z.init_NormalHead();class _ extends a{constructor(i){super(i)}static init_VeeHead(){this.mixins([n.LineVector,n.FillVector]),this.override({fill_color:\"black\"})}clip(i,e){this.visuals.line.set_vectorize(i,e),i.moveTo(.5*this.size,this.size),i.lineTo(.5*this.size,-2),i.lineTo(-.5*this.size,-2),i.lineTo(-.5*this.size,this.size),i.lineTo(0,.5*this.size),i.lineTo(.5*this.size,this.size)}render(i,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(i,e),this._vee(i,e),i.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),this._vee(i,e),i.stroke())}_vee(i,e){i.beginPath(),i.moveTo(.5*this.size,this.size),i.lineTo(0,0),i.lineTo(-.5*this.size,this.size),i.lineTo(0,.5*this.size),i.closePath()}}s.VeeHead=_,_.__name__=\"VeeHead\",_.init_VeeHead();class c extends a{constructor(i){super(i)}static init_TeeHead(){this.mixins(n.LineVector)}render(i,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(i,e),i.beginPath(),i.moveTo(.5*this.size,0),i.lineTo(-.5*this.size,0),i.stroke())}clip(i,e){}}s.TeeHead=c,c.__name__=\"TeeHead\",c.init_TeeHead()},\n      function _(t,n,e){Object.defineProperty(e,\"__esModule\",{value:!0});const s=t(1),o=t(86),r=s.__importStar(t(18)),i=t(8),l=t(13),a=s.__importStar(t(119)),c=t(120),u=t(121);function h(t,n,e){if(i.isArray(t)){const s=t.concat(n);return null!=e&&s.length>e?s.slice(-e):s}if(i.isTypedArray(t)){const s=t.length+n.length;if(null!=e&&s>e){const o=s-e,r=t.length;let i;t.length<e?(i=new t.constructor(e),i.set(t,0)):i=t;for(let t=o,n=r;t<n;t++)i[t-o]=i[t];for(let t=0,e=n.length;t<e;t++)i[t+(r-o)]=n[t];return i}{const e=new t.constructor(n);return a.concat(t,e)}}throw new Error(\"unsupported array types\")}function d(t,n){let e,s,o;return i.isNumber(t)?(e=t,o=t+1,s=1):(e=null!=t.start?t.start:0,o=null!=t.stop?t.stop:n,s=null!=t.step?t.step:1),[e,o,s]}function f(t,n){const e=new Set;let s=!1;for(const[o,r]of n){let n,l,a,c;if(i.isArray(o)){const[s]=o;e.add(s),n=t[s].shape,l=t[s],c=r,2===o.length?(n=[1,n[0]],a=[o[0],0,o[1]]):a=o}else i.isNumber(o)?(c=[r],e.add(o)):(c=r,s=!0),a=[0,0,o],n=[1,t.length],l=t;let u=0;const[h,f,m]=d(a[1],n[0]),[_,p,g]=d(a[2],n[1]);for(let t=h;t<f;t+=m)for(let o=_;o<p;o+=g)s&&e.add(o),l[t*n[1]+o]=c[u],u++}return e}e.stream_to_column=h,e.slice=d,e.patch_to_column=f;class m extends o.ColumnarDataSource{constructor(t){super(t)}static init_ColumnDataSource(){this.define({data:[r.Any,{}]})}stream(t,n,e){const{data:s}=this;for(const[e,o]of l.entries(t))s[e]=h(s[e],o,n);if(this.setv({data:s},{silent:!0}),this.streaming.emit(),null!=this.document){const s=new u.ColumnsStreamedEvent(this.document,this.ref(),t,n);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}}patch(t,n){const{data:e}=this;let s=new Set;for(const[n,o]of l.entries(t))s=c.union(s,f(e[n],o));if(this.setv({data:e},{silent:!0}),this.patching.emit([...s]),null!=this.document){const e=new u.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:n,hint:e})}}}e.ColumnDataSource=m,m.__name__=\"ColumnDataSource\",m.init_ColumnDataSource()},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=t(1),s=t(87),i=t(15),r=t(19),l=t(89),c=a.__importStar(t(18)),o=t(8),u=t(9),h=t(13),g=t(88),_=t(118);class d extends s.DataSource{constructor(t){super(t)}get_array(t){let e=this.data[t];return null==e?this.data[t]=e=[]:o.isArray(e)||(this.data[t]=e=Array.from(e)),e}static init_ColumnarDataSource(){this.define({selection_policy:[c.Instance,()=>new _.UnionRenderers]}),this.internal({selection_manager:[c.Instance,t=>new l.SelectionManager({source:t})],inspected:[c.Instance,()=>new g.Selection]})}initialize(){super.initialize(),this._select=new i.Signal0(this,\"select\"),this.inspect=new i.Signal(this,\"inspect\"),this.streaming=new i.Signal0(this,\"streaming\"),this.patching=new i.Signal(this,\"patching\")}get_column(t){const e=this.data[t];return null!=e?e:null}columns(){return h.keys(this.data)}get_length(t=!0){const e=u.uniq(h.values(this.data).map(t=>t.length));switch(e.length){case 0:return null;case 1:return e[0];default:{const n=\"data source has columns of inconsistent lengths\";if(t)return r.logger.warn(n),e.sort()[0];throw new Error(n)}}}get length(){var t;return null!==(t=this.get_length())&&void 0!==t?t:0}clear(){const t={};for(const e of this.columns())t[e]=new this.data[e].constructor(0);this.data=t}}n.ColumnarDataSource=d,d.__name__=\"ColumnarDataSource\",d.init_ColumnarDataSource()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const c=e(1),n=e(81),o=e(88),i=c.__importStar(e(18));class r extends n.Model{constructor(e){super(e)}static init_DataSource(){this.define({selected:[i.Instance,()=>new o.Selection]})}}a.DataSource=r,r.__name__=\"DataSource\",r.init_DataSource()},\n      function _(i,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=i(1),n=i(81),l=t.__importStar(i(18)),c=i(9),h=i(13);class d extends n.Model{constructor(i){super(i)}get_view(){return this.view}static init_Selection(){this.define({indices:[l.Array,[]],line_indices:[l.Array,[]],multiline_indices:[l.Any,{}]}),this.internal({selected_glyphs:[l.Array,[]],view:[l.Any],image_indices:[l.Array,[]]})}initialize(){super.initialize()}get selected_glyph(){return this.selected_glyphs.length>0?this.selected_glyphs[0]:null}add_to_selected_glyphs(i){this.selected_glyphs.push(i)}update(i,e=!0,s=\"replace\"){switch(s){case\"replace\":this.indices=i.indices,this.line_indices=i.line_indices,this.selected_glyphs=i.selected_glyphs,this.view=i.view,this.multiline_indices=i.multiline_indices,this.image_indices=i.image_indices;break;case\"append\":this.update_through_union(i);break;case\"intersect\":this.update_through_intersection(i);break;case\"subtract\":this.update_through_subtraction(i)}}clear(){this.indices=[],this.line_indices=[],this.multiline_indices={},this.view=null,this.selected_glyphs=[]}is_empty(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length}update_through_union(i){this.indices=c.union(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_intersection(i){this.indices=c.intersection(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_subtraction(i){this.indices=c.difference(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}}s.Selection=d,d.__name__=\"Selection\",d.init_Selection()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(14),o=e(88),c=e(90),r=e(116),l=i.__importStar(e(18));class p extends n.HasProps{constructor(e){super(e),this.inspectors=new Map}static init_SelectionManager(){this.internal({source:[l.Any]})}select(e,t,s,i=\"replace\"){const n=[],o=[];for(const t of e)t instanceof c.GlyphRendererView?n.push(t):t instanceof r.GraphRendererView&&o.push(t);let l=!1;for(const e of o){const n=e.model.selection_policy.hit_test(t,e);l=l||e.model.selection_policy.do_selection(n,e.model,s,i)}if(n.length>0){const e=this.source.selection_policy.hit_test(t,n);l=l||this.source.selection_policy.do_selection(e,this.source,s,i)}return l}inspect(e,t){let s=!1;if(e instanceof c.GlyphRendererView){const i=e.hit_test(t);if(null!=i){s=!i.is_empty();const n=this.get_or_create_inspector(e.model);n.update(i,!0,\"replace\"),this.source.setv({inspected:n},{silent:!0}),this.source.inspect.emit([e,{geometry:t}])}}else if(e instanceof r.GraphRendererView){const i=e.model.inspection_policy.hit_test(t,e);s=s||e.model.inspection_policy.do_inspection(i,t,e,!1,\"replace\")}return s}clear(e){this.source.selected.clear(),null!=e&&this.get_or_create_inspector(e.model).clear()}get_or_create_inspector(e){let t=this.inspectors.get(e);return null==t&&(t=new o.Selection,this.inspectors.set(e,t)),t}}s.SelectionManager=p,p.__name__=\"SelectionManager\",p.init_SelectionManager()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),l=e(91),n=e(92),h=e(110),o=e(111),a=e(113),c=e(114),_=e(24),d=s.__importStar(e(18)),r=e(12),p=e(9),g=e(13),u=e(115),y=e(98),m={fill:{},line:{}},v={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}};class w extends l.DataRendererView{async lazy_initialize(){await super.lazy_initialize();const e=this.model.glyph,t=p.includes(e._mixins,\"fill\"),i=p.includes(e._mixins,\"line\"),s=g.clone(e.attributes);function l(l){const n=g.clone(s);return t&&g.extend(n,l.fill),i&&g.extend(n,l.line),new e.constructor(n)}delete s.id,this.glyph=await this.build_glyph_view(e);let{selection_glyph:n}=this.model;null==n?n=l({fill:{},line:{}}):\"auto\"===n&&(n=l(m)),this.selection_glyph=await this.build_glyph_view(n);let{nonselection_glyph:h}=this.model;null==h?h=l({fill:{},line:{}}):\"auto\"===h&&(h=l(f)),this.nonselection_glyph=await this.build_glyph_view(h);const{hover_glyph:o}=this.model;null!=o&&(this.hover_glyph=await this.build_glyph_view(o));const{muted_glyph:a}=this.model;null!=a&&(this.muted_glyph=await this.build_glyph_view(a));const c=l(v);this.decimated_glyph=await this.build_glyph_view(c),this.set_data(!1)}async build_glyph_view(e){return u.build_view(e,{parent:this})}remove(){var e,t;this.glyph.remove(),this.selection_glyph.remove(),this.nonselection_glyph.remove(),null===(e=this.hover_glyph)||void 0===e||e.remove(),null===(t=this.muted_glyph)||void 0===t||t.remove(),this.decimated_glyph.remove(),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.request_render()),this.connect(this.model.glyph.change,()=>this.set_data()),this.connect(this.model.data_source.change,()=>this.set_data()),this.connect(this.model.data_source.streaming,()=>this.set_data()),this.connect(this.model.data_source.patching,e=>this.set_data(!0,e)),this.connect(this.model.data_source.selected.change,()=>this.request_render()),this.connect(this.model.data_source._select,()=>this.request_render()),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,()=>this.request_render()),this.connect(this.model.properties.view.change,()=>this.set_data()),this.connect(this.model.view.change,()=>this.set_data()),this.connect(this.model.properties.visible.change,()=>this.plot_view.update_dataranges());const{x_ranges:e,y_ranges:t}=this.plot_view.frame;for(const[,t]of e)t instanceof y.FactorRange&&this.connect(t.change,()=>this.set_data());for(const[,e]of t)e instanceof y.FactorRange&&this.connect(e.change,()=>this.set_data());this.connect(this.model.glyph.transformchange,()=>this.set_data())}_update_masked_indices(){const e=this.glyph.mask_data();return this.model.view.masked=e,e}set_data(e=!0,t=null){var i,s,l,n;const h=this.model.data_source;this.all_indices=this.model.view.indices;const{all_indices:o}=this;this.glyph.set_data(h,o,t),this.glyph.set_visuals(h,o),this.decimated_glyph.set_visuals(h,o),null===(i=this.selection_glyph)||void 0===i||i.set_visuals(h,o),null===(s=this.nonselection_glyph)||void 0===s||s.set_visuals(h,o),null===(l=this.hover_glyph)||void 0===l||l.set_visuals(h,o),null===(n=this.muted_glyph)||void 0===n||n.set_visuals(h,o),this._update_masked_indices();const{lod_factor:a}=this.plot_model,c=this.all_indices.count;this.decimated=new _.Indices(c);for(let e=0;e<c;e+=a)this.decimated.set(e);this.set_data_timestamp=Date.now(),e&&this.request_render()}get has_webgl(){return this.glyph.has_webgl}_render(){const e=this.has_webgl;this.glyph.map_data();const t=[...this.all_indices];let i=[...this._update_masked_indices()];const{ctx:s}=this.layer;s.save();const{selected:l}=this.model.data_source;let c;c=!l||l.is_empty()?[]:this.glyph instanceof n.LineView&&l.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(i):l.indices;const{inspected:_}=this.model.data_source,d=new Set((()=>!_||_.is_empty()?[]:_.selected_glyph?this.model.view.convert_indices_from_subset(i):_.indices.length>0?_.indices:Object.keys(_.multiline_indices).map(e=>parseInt(e)))()),g=r.filter(i,e=>d.has(t[e])),{lod_threshold:u}=this.plot_model;let y,m,v;if(null!=this.model.document&&this.model.document.interactive_duration()>0&&!e&&null!=u&&t.length>u?(i=[...this.decimated],y=this.decimated_glyph,m=this.decimated_glyph,v=this.selection_glyph):(y=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,m=this.nonselection_glyph,v=this.selection_glyph),null!=this.hover_glyph&&g.length&&(i=p.difference(i,g)),c.length){const e={};for(const t of c)e[t]=!0;const l=new Array,h=new Array;if(this.glyph instanceof n.LineView)for(const i of t)null!=e[i]?l.push(i):h.push(i);else for(const s of i)null!=e[t[s]]?l.push(s):h.push(s);m.render(s,h,this.glyph),v.render(s,l,this.glyph),null!=this.hover_glyph&&(this.glyph instanceof n.LineView?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(g),this.glyph):this.hover_glyph.render(s,g,this.glyph))}else if(this.glyph instanceof n.LineView)this.hover_glyph&&g.length?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(g),this.glyph):y.render(s,t,this.glyph);else if(this.glyph instanceof h.PatchView||this.glyph instanceof o.HAreaView||this.glyph instanceof a.VAreaView)if(0==_.selected_glyphs.length||null==this.hover_glyph)y.render(s,t,this.glyph);else for(const e of _.selected_glyphs)e==this.glyph.model&&this.hover_glyph.render(s,t,this.glyph);else y.render(s,i,this.glyph),this.hover_glyph&&g.length&&this.hover_glyph.render(s,g,this.glyph);s.restore()}draw_legend(e,t,i,s,l,n,h,o){null==o&&(o=this.model.get_reference_point(n,h)),this.glyph.draw_legend_for_index(e,{x0:t,x1:i,y0:s,y1:l},o)}hit_test(e){if(!this.model.visible)return null;const t=this.glyph.hit_test(e);return null==t?null:this.model.view.convert_selection_from_subset(t)}}i.GlyphRendererView=w,w.__name__=\"GlyphRendererView\";class b extends l.DataRenderer{constructor(e){super(e)}static init_GlyphRenderer(){this.prototype.default_view=w,this.define({data_source:[d.Instance],view:[d.Instance,()=>new c.CDSView],glyph:[d.Instance],hover_glyph:[d.Instance],nonselection_glyph:[d.Any,\"auto\"],selection_glyph:[d.Any,\"auto\"],muted_glyph:[d.Instance],muted:[d.Boolean,!1]})}initialize(){super.initialize(),null==this.view.source&&(this.view.source=this.data_source,this.view.compute_indices())}get_reference_point(e,t){let i=0;if(null!=e){const s=this.data_source.get_column(e);if(null!=s){const e=r.indexOf(s,t);-1!=e&&(i=e)}}return i}get_selection_manager(){return this.data_source.selection_manager}}i.GlyphRenderer=b,b.__name__=\"GlyphRenderer\",b.init_GlyphRenderer()},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const a=e(70);class n extends a.RendererView{get xscale(){return this.coordinates.x_scale}get yscale(){return this.coordinates.y_scale}}t.DataRendererView=n,n.__name__=\"DataRendererView\";class s extends a.Renderer{constructor(e){super(e)}static init_DataRenderer(){this.override({level:\"glyph\"})}}t.DataRenderer=s,s.__name__=\"DataRenderer\",s.init_DataRenderer()},\n      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),n=e(93),l=e(100),_=e(102),r=s.__importStar(e(28)),o=s.__importStar(e(101)),h=e(88);class a extends n.XYGlyphView{initialize(){super.initialize();const{webgl:e}=this.renderer.plot_view.canvas_view;null!=e&&(this.glglyph=new _.LineGL(e.gl,this))}_render(e,i,{sx:t,sy:s}){let n=!1,l=null;this.visuals.line.set_value(e);for(const _ of i){if(n){if(!isFinite(t[_]+s[_])){e.stroke(),e.beginPath(),n=!1,l=_;continue}null!=l&&_-l>1&&(e.stroke(),n=!1)}n?e.lineTo(t[_],s[_]):(e.beginPath(),e.moveTo(t[_],s[_]),n=!0),l=_}n&&e.stroke()}_hit_point(e){const i=new h.Selection,t={x:e.sx,y:e.sy};let s=9999;const n=Math.max(2,this.visuals.line.line_width.value()/2);for(let e=0,l=this.sx.length-1;e<l;e++){const l={x:this.sx[e],y:this.sy[e]},_={x:this.sx[e+1],y:this.sy[e+1]},r=o.dist_to_segment(t,l,_);r<n&&r<s&&(s=r,i.add_to_selected_glyphs(this.model),i.view=this,i.line_indices=[e])}return i}_hit_span(e){const{sx:i,sy:t}=e,s=new h.Selection;let n,l;\"v\"==e.direction?(n=this.renderer.yscale.invert(t),l=this._y):(n=this.renderer.xscale.invert(i),l=this._x);for(let e=0,i=l.length-1;e<i;e++)(l[e]<=n&&n<=l[e+1]||l[e+1]<=n&&n<=l[e])&&(s.add_to_selected_glyphs(this.model),s.view=this,s.line_indices.push(e));return s}get_interpolation_hit(e,i){const[t,s,n,_]=[this._x[e],this._y[e],this._x[e+1],this._y[e+1]];return l.line_interpolation(this.renderer,i,t,s,n,_)}draw_legend_for_index(e,i,t){l.generic_line_legend(this.visuals,e,i,t)}}t.LineView=a,a.__name__=\"LineView\";class c extends n.XYGlyph{constructor(e){super(e)}static init_Line(){this.prototype.default_view=a,this.mixins(r.Line)}}t.Line=c,c.__name__=\"Line\",c.init_Line()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),_=e(37),n=s.__importStar(e(18)),a=e(94);class d extends a.GlyphView{_project_data(){_.inplace.project_xy(this._x,this._y)}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++){const t=this._x[i],s=this._y[i];isNaN(t+s)||!isFinite(t+s)?e.add_empty():e.add(t,s,t,s)}}scenterxy(e){return[this.sx[e],this.sy[e]]}}i.XYGlyphView=d,d.__name__=\"XYGlyphView\";class p extends a.Glyph{constructor(e){super(e)}static init_XYGlyph(){this.define({x:[n.XCoordinateSpec,{field:\"x\"}],y:[n.YCoordinateSpec,{field:\"y\"}]})}}i.XYGlyph=p,p.__name__=\"XYGlyph\",p.init_XYGlyph()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=s.__importStar(e(18)),r=s.__importStar(e(79)),a=s.__importStar(e(74)),_=e(71),l=e(81),o=e(19),h=e(24),d=e(12),c=e(95),u=e(98),p=e(88);class y extends _.View{constructor(){super(...arguments),this._index=null,this._data_size=null,this._nohit_warned=new Set}get renderer(){return this.parent}get has_webgl(){return null!=this.glglyph}get index(){const{_index:e}=this;if(null!=e)return e;throw new Error(this+\".index_data() wasn't called\")}get data_size(){const{_data_size:e}=this;if(null!=e)return e;throw new Error(this+\".set_data() wasn't called\")}initialize(){super.initialize(),this.visuals=new a.Visuals(this.model)}set_visuals(e,t){this.visuals.warm_cache(e,t),null!=this.glglyph&&this.glglyph.set_visuals_changed()}render(e,t,i){e.beginPath(),null!=this.glglyph&&(this.renderer.needs_webgl_blit=this.glglyph.render(e,t,i),this.renderer.needs_webgl_blit)||this._render(e,t,i)}has_finished(){return!0}notify_finished(){this.renderer.notify_finished()}_bounds(e){return e}bounds(){return this._bounds(this.index.bbox)}log_bounds(){const{x0:e,x1:t}=this.index.bounds(r.positive_x()),{y0:i,y1:s}=this.index.bounds(r.positive_y());return this._bounds({x0:e,y0:i,x1:t,y1:s})}get_anchor_point(e,t,[i,s]){switch(e){case\"center\":{const[e,n]=this.scenterxy(t,i,s);return{x:e,y:n}}default:return null}}scenterx(e,t,i){return this.scenterxy(e,t,i)[0]}scentery(e,t,i){return this.scenterxy(e,t,i)[1]}sdist(e,t,i,s=\"edge\",n=!1){let r,a;const _=t.length;if(\"center\"==s){const e=d.map(i,e=>e/2);r=new h.NumberArray(_);for(let i=0;i<_;i++)r[i]=t[i]-e[i];a=new h.NumberArray(_);for(let i=0;i<_;i++)a[i]=t[i]+e[i]}else{r=t,a=new h.NumberArray(_);for(let e=0;e<_;e++)a[e]=r[e]+i[e]}const l=e.v_compute(r),o=e.v_compute(a);return n?d.map(l,(e,t)=>Math.ceil(Math.abs(o[t]-l[t]))):d.map(l,(e,t)=>Math.abs(o[t]-l[t]))}draw_legend_for_index(e,t,i){}hit_test(e){switch(e.type){case\"point\":if(null!=this._hit_point)return this._hit_point(e);break;case\"span\":if(null!=this._hit_span)return this._hit_span(e);break;case\"rect\":if(null!=this._hit_rect)return this._hit_rect(e);break;case\"poly\":if(null!=this._hit_poly)return this._hit_poly(e)}return this._nohit_warned.has(e.type)||(o.logger.debug(`'${e.type}' selection not available for ${this.model.type}`),this._nohit_warned.add(e.type)),null}_hit_rect_against_index(e){const{sx0:t,sx1:i,sy0:s,sy1:n}=e,[r,a]=this.renderer.coordinates.x_scale.r_invert(t,i),[_,l]=this.renderer.coordinates.y_scale.r_invert(s,n),o=[...this.index.indices({x0:r,x1:a,y0:_,y1:l})];return new p.Selection({indices:o})}_project_data(){}set_data(e,t,i){var s,r;const{x_range:a,y_range:_}=this.renderer.coordinates;this._data_size=null!==(s=e.get_length())&&void 0!==s?s:1;for(const i of this.model){if(!(i instanceof n.VectorSpec))continue;if(i.optional&&null==i.spec.value&&!i.dirty)continue;const s=i.attr,r=i.array(e);let l=t.select(r);if(i instanceof n.BaseCoordinateSpec){const e=\"x\"==i.dimension?a:_;if(e instanceof u.FactorRange)if(i instanceof n.CoordinateSpec)l=e.v_synthetic(l);else if(i instanceof n.CoordinateSeqSpec)for(let t=0;t<l.length;t++)l[t]=e.v_synthetic(l[t]);i instanceof n.CoordinateSeqSpec&&(l=h.RaggedArray.from(l))}else i instanceof n.DistanceSpec&&(this[\"max_\"+s]=d.max(l));this[\"_\"+s]=l}this.renderer.plot_view.model.use_map&&this._project_data(),this._set_data(i),null===(r=this.glglyph)||void 0===r||r.set_data_changed(),this.index_data()}_set_data(e){}get _index_size(){return this.data_size}index_data(){const e=new c.SpatialIndex(this._index_size);this._index_data(e),e.finish(),this._index=e}mask_data(){return null!=this.glglyph||null==this._mask_data?h.Indices.all_set(this.data_size):this._mask_data()}map_data(){var e;const t=this,{x_scale:i,y_scale:s}=this.renderer.coordinates;for(const e of this.model)if(e instanceof n.BaseCoordinateSpec){const n=\"x\"==e.dimension?i:s;let r=t[\"_\"+e.attr];if(r instanceof h.RaggedArray){const e=n.v_compute(r.array);r=new h.RaggedArray(r.offsets,e)}else r=n.v_compute(r);this[\"s\"+e.attr]=r}this._map_data(),null===(e=this.glglyph)||void 0===e||e.set_data_changed()}_map_data(){}}i.GlyphView=y,y.__name__=\"GlyphView\";class g extends l.Model{constructor(e){super(e)}static init_Glyph(){}}i.Glyph=g,g.__name__=\"Glyph\",g.init_Glyph()},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1).__importDefault(e(96)),s=e(24),o=e(79);function d(e,n){let t=0,i=n.length-1;for(;t<i;){const s=t+i>>1;n[s]>e?i=s:t=s+1}return n[t]}class x extends i.default{search_indices(e,n,t,i){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let o=this._boxes.length-4;const x=[],h=new s.Indices(this.numItems);for(;void 0!==o;){const s=Math.min(o+4*this.nodeSize,d(o,this._levelBounds));for(let d=o;d<s;d+=4){const s=0|this._indices[d>>2];t<this._boxes[d+0]||(i<this._boxes[d+1]||e>this._boxes[d+2]||n>this._boxes[d+3]||(o<4*this.numItems?h.set(s):x.push(s)))}o=x.pop()}return h}}x.__name__=\"_FlatBush\";class h{constructor(e){this.index=null,e>0&&(this.index=new x(e))}add(e,n,t,i){var s;null===(s=this.index)||void 0===s||s.add(e,n,t,i)}add_empty(){var e;null===(e=this.index)||void 0===e||e.add(1/0,1/0,-1/0,-1/0)}finish(){var e;null===(e=this.index)||void 0===e||e.finish()}_normalize(e){let{x0:n,y0:t,x1:i,y1:s}=e;return n>i&&([n,i]=[i,n]),t>s&&([t,s]=[s,t]),{x0:n,y0:t,x1:i,y1:s}}get bbox(){if(null==this.index)return o.empty();{const{minX:e,minY:n,maxX:t,maxY:i}=this.index;return{x0:e,y0:n,x1:t,y1:i}}}indices(e){if(null==this.index)return new s.Indices(0);{const{x0:n,y0:t,x1:i,y1:s}=this._normalize(e);return this.index.search_indices(n,t,i,s)}}bounds(e){const n=o.empty();for(const t of this.indices(e)){const e=this.index._boxes,i=e[4*t+0],s=e[4*t+1],o=e[4*t+2],d=e[4*t+3];o<n.x0&&(n.x0=o),i>n.x1&&(n.x1=i),d<n.y0&&(n.y0=d),s>n.y1&&(n.y1=s)}return n}}t.SpatialIndex=h,h.__name__=\"SpatialIndex\"},\n      function _(t,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(1).__importDefault(t(97)),h=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class n{static from(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[s,i]=new Uint8Array(t,0,2);if(251!==s)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(i>>4!=3)throw new Error(`Got v${i>>4} data when expected v3.`);const[e]=new Uint16Array(t,2,1),[o]=new Uint32Array(t,4,1);return new n(o,e,h[15&i],t)}constructor(t,s=16,i=Float64Array,n){if(void 0===t)throw new Error(\"Missing required argument: numItems.\");if(isNaN(t)||t<=0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+s,2),65535);let o=t,r=o;this._levelBounds=[4*o];do{o=Math.ceil(o/this.nodeSize),r+=o,this._levelBounds.push(4*r)}while(1!==o);this.ArrayType=i||Float64Array,this.IndexArrayType=r<16384?Uint16Array:Uint32Array;const a=h.indexOf(this.ArrayType),_=4*r*this.ArrayType.BYTES_PER_ELEMENT;if(a<0)throw new Error(`Unexpected typed array class: ${i}.`);n&&n instanceof ArrayBuffer?(this.data=n,this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=4*r,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1]):(this.data=new ArrayBuffer(8+_+r*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(this.data,0,2).set([251,48+a]),new Uint16Array(this.data,2,1)[0]=s,new Uint32Array(this.data,4,1)[0]=t),this._queue=new e.default}add(t,s,i,e){const h=this._pos>>2;return this._indices[h]=h,this._boxes[this._pos++]=t,this._boxes[this._pos++]=s,this._boxes[this._pos++]=i,this._boxes[this._pos++]=e,t<this.minX&&(this.minX=t),s<this.minY&&(this.minY=s),i>this.maxX&&(this.maxX=i),e>this.maxY&&(this.maxY=e),h}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);if(this.numItems<=this.nodeSize)return this._boxes[this._pos++]=this.minX,this._boxes[this._pos++]=this.minY,this._boxes[this._pos++]=this.maxX,void(this._boxes[this._pos++]=this.maxY);const t=this.maxX-this.minX,s=this.maxY-this.minY,i=new Uint32Array(this.numItems);for(let e=0;e<this.numItems;e++){let h=4*e;const n=this._boxes[h++],o=this._boxes[h++],r=this._boxes[h++],a=this._boxes[h++],d=Math.floor(65535*((n+r)/2-this.minX)/t),x=Math.floor(65535*((o+a)/2-this.minY)/s);i[e]=_(d,x)}!function t(s,i,e,h,n,o){if(Math.floor(h/o)>=Math.floor(n/o))return;const r=s[h+n>>1];let _=h-1,d=n+1;for(;;){do{_++}while(s[_]<r);do{d--}while(s[d]>r);if(_>=d)break;a(s,i,e,_,d)}t(s,i,e,h,d,o),t(s,i,e,d+1,n,o)}(i,this._boxes,this._indices,0,this.numItems-1,this.nodeSize);for(let t=0,s=0;t<this._levelBounds.length-1;t++){const i=this._levelBounds[t];for(;s<i;){const t=s;let e=1/0,h=1/0,n=-1/0,o=-1/0;for(let t=0;t<this.nodeSize&&s<i;t++)e=Math.min(e,this._boxes[s++]),h=Math.min(h,this._boxes[s++]),n=Math.max(n,this._boxes[s++]),o=Math.max(o,this._boxes[s++]);this._indices[this._pos>>2]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=h,this._boxes[this._pos++]=n,this._boxes[this._pos++]=o}}}search(t,s,i,e,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const o=[],a=[];for(;void 0!==n;){const _=Math.min(n+4*this.nodeSize,r(n,this._levelBounds));for(let r=n;r<_;r+=4){const _=0|this._indices[r>>2];i<this._boxes[r]||(e<this._boxes[r+1]||t>this._boxes[r+2]||s>this._boxes[r+3]||(n<4*this.numItems?(void 0===h||h(_))&&a.push(_):o.push(_)))}n=o.pop()}return a}neighbors(t,s,i=1/0,e=1/0,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const a=this._queue,_=[],d=e*e;for(;void 0!==n;){const e=Math.min(n+4*this.nodeSize,r(n,this._levelBounds));for(let i=n;i<e;i+=4){const e=0|this._indices[i>>2],r=o(t,this._boxes[i],this._boxes[i+2]),_=o(s,this._boxes[i+1],this._boxes[i+3]),d=r*r+_*_;n<4*this.numItems?(void 0===h||h(e))&&a.push(-e-1,d):a.push(e,d)}for(;a.length&&a.peek()<0;){if(a.peekValue()>d)return a.clear(),_;if(_.push(-a.pop()-1),_.length===i)return a.clear(),_}n=a.pop()}return a.clear(),_}}function o(t,s,i){return t<s?s-t:t<=i?0:t-i}function r(t,s){let i=0,e=s.length-1;for(;i<e;){const h=i+e>>1;s[h]>t?e=h:i=h+1}return s[i]}function a(t,s,i,e,h){const n=t[e];t[e]=t[h],t[h]=n;const o=4*e,r=4*h,a=s[o],_=s[o+1],d=s[o+2],x=s[o+3];s[o]=s[r],s[o+1]=s[r+1],s[o+2]=s[r+2],s[o+3]=s[r+3],s[r]=a,s[r+1]=_,s[r+2]=d,s[r+3]=x;const l=i[e];i[e]=i[h],i[h]=l}function _(t,s){let i=t^s,e=65535^i,h=65535^(t|s),n=t&(65535^s),o=i|e>>1,r=i>>1^i,a=h>>1^e&n>>1^h,_=i&h>>1^n>>1^n;i=o,e=r,h=a,n=_,o=i&i>>2^e&e>>2,r=i&e>>2^e&(i^e)>>2,a^=i&h>>2^e&n>>2,_^=e&h>>2^(i^e)&n>>2,i=o,e=r,h=a,n=_,o=i&i>>4^e&e>>4,r=i&e>>4^e&(i^e)>>4,a^=i&h>>4^e&n>>4,_^=e&h>>4^(i^e)&n>>4,i=o,e=r,h=a,n=_,a^=i&h>>8^e&n>>8,_^=e&h>>8^(i^e)&n>>8,i=a^a>>1,e=_^_>>1;let d=t^s,x=e|65535^(d|i);return d=16711935&(d|d<<8),d=252645135&(d|d<<4),d=858993459&(d|d<<2),d=1431655765&(d|d<<1),x=16711935&(x|x<<8),x=252645135&(x|x<<4),x=858993459&(x|x<<2),x=1431655765&(x|x<<1),(x<<1|d)>>>0}i.default=n},\n      function _(s,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});i.default=class{constructor(){this.ids=[],this.values=[],this.length=0}clear(){this.length=0}push(s,t){let i=this.length++;for(this.ids[i]=s,this.values[i]=t;i>0;){const s=i-1>>1,h=this.values[s];if(t>=h)break;this.ids[i]=this.ids[s],this.values[i]=h,i=s}this.ids[i]=s,this.values[i]=t}pop(){if(0===this.length)return;const s=this.ids[0];if(this.length--,this.length>0){const s=this.ids[0]=this.ids[this.length],t=this.values[0]=this.values[this.length],i=this.length>>1;let h=0;for(;h<i;){let s=1+(h<<1);const i=s+1;let e=this.ids[s],l=this.values[s];const n=this.values[i];if(i<this.length&&n<l&&(s=i,e=this.ids[i],l=n),l>=t)break;this.ids[h]=e,this.values[h]=l,h=s}this.ids[h]=s,this.values[h]=t}return s}peek(){if(0!==this.length)return this.ids[0]}peekValue(){if(0!==this.length)return this.values[0]}}},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=t(1),i=t(99),r=s.__importStar(t(18)),a=t(24),o=t(9),p=t(8),g=t(11);function c(t,e,n=0){const s=new Map;for(let i=0;i<t.length;i++){const r=t[i];if(s.has(r))throw new Error(\"duplicate factor or subfactor: \"+r);s.set(r,{value:.5+i*(1+e)+n})}return[s,(t.length-1)*e]}function l(t,e,n,s=0){var i;const r=new Map,a=new Map;for(const[e,n]of t){const t=null!==(i=a.get(e))&&void 0!==i?i:[];a.set(e,[...t,n])}let p=s,g=0;for(const[t,s]of a){const i=s.length,[a,l]=c(s,n,p);g+=l;const u=o.sum(s.map(t=>a.get(t).value));r.set(t,{value:u/i,mapping:a}),p+=i+e+l}return[r,(a.size-1)*e+g]}function u(t,e,n,s,i=0){var r;const a=new Map,p=new Map;for(const[e,n,s]of t){const t=null!==(r=p.get(e))&&void 0!==r?r:[];p.set(e,[...t,[n,s]])}let g=i,c=0;for(const[t,i]of p){const r=i.length,[p,u]=l(i,n,s,g);c+=u;const h=o.sum(i.map(([t])=>p.get(t).value));a.set(t,{value:h/r,mapping:p}),g+=r+e+u}return[a,(p.size-1)*e+c]}n.map_one_level=c,n.map_two_levels=l,n.map_three_levels=u;class h extends i.Range{constructor(t){super(t)}static init_FactorRange(){this.define({factors:[r.Array,[]],factor_padding:[r.Number,0],subgroup_padding:[r.Number,.8],group_padding:[r.Number,1.4],range_padding:[r.Number,0],range_padding_units:[r.PaddingUnits,\"percent\"],start:[r.Number],end:[r.Number]}),this.internal({levels:[r.Number],mids:[r.Array,null],tops:[r.Array,null]})}get min(){return this.start}get max(){return this.end}initialize(){super.initialize(),this._init(!0)}connect_signals(){super.connect_signals(),this.connect(this.properties.factors.change,()=>this.reset()),this.connect(this.properties.factor_padding.change,()=>this.reset()),this.connect(this.properties.group_padding.change,()=>this.reset()),this.connect(this.properties.subgroup_padding.change,()=>this.reset()),this.connect(this.properties.range_padding.change,()=>this.reset()),this.connect(this.properties.range_padding_units.change,()=>this.reset())}reset(){this._init(!1),this.change.emit()}_lookup(t){switch(t.length){case 1:{const[e]=t,n=this._mapping.get(e);return null!=n?n.value:NaN}case 2:{const[e,n]=t,s=this._mapping.get(e);if(null!=s){const t=s.mapping.get(n);if(null!=t)return t.value}return NaN}case 3:{const[e,n,s]=t,i=this._mapping.get(e);if(null!=i){const t=i.mapping.get(n);if(null!=t){const e=t.mapping.get(s);if(null!=e)return e.value}}return NaN}default:g.unreachable()}}synthetic(t){if(p.isNumber(t))return t;if(p.isString(t))return this._lookup([t]);let e=0;const n=t[t.length-1];return p.isNumber(n)&&(e=n,t=t.slice(0,-1)),this._lookup(t)+e}v_synthetic(t){const e=t.length,n=new a.NumberArray(e);for(let s=0;s<e;s++)n[s]=this.synthetic(t[s]);return n}_init(t){const{levels:e,mapping:n,tops:s,mids:i,inside_padding:r}=(()=>{if(o.every(this.factors,p.isString)){const t=this.factors,[e,n]=c(t,this.factor_padding);return{levels:1,mapping:e,tops:null,mids:null,inside_padding:n}}if(o.every(this.factors,t=>p.isArray(t)&&2==t.length&&p.isString(t[0])&&p.isString(t[1]))){const t=this.factors,[e,n]=l(t,this.group_padding,this.factor_padding),s=[...e.keys()];return{levels:2,mapping:e,tops:s,mids:null,inside_padding:n}}if(o.every(this.factors,t=>p.isArray(t)&&3==t.length&&p.isString(t[0])&&p.isString(t[1])&&p.isString(t[2]))){const t=this.factors,[e,n]=u(t,this.group_padding,this.subgroup_padding,this.factor_padding),s=[...e.keys()],i=[];for(const[t,n]of e)for(const e of n.mapping.keys())i.push([t,e]);return{levels:3,mapping:e,tops:s,mids:i,inside_padding:n}}g.unreachable()})();this._mapping=n,this.tops=s,this.mids=i;let a=0,h=this.factors.length+r;if(\"percent\"==this.range_padding_units){const t=(h-a)*this.range_padding/2;a-=t,h+=t}else a-=this.range_padding,h+=this.range_padding;this.setv({start:a,end:h,levels:e},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[a,h]},{silent:!0})}}n.FactorRange=h,h.__name__=\"FactorRange\",h.init_FactorRange()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(81),a=n.__importStar(e(18));class r extends s.Model{constructor(e){super(e),this.have_updated_interactively=!1}static init_Range(){this.define({bounds:[a.Any],min_interval:[a.Any],max_interval:[a.Any]}),this.internal({plots:[a.Array,[]]})}get is_reversed(){return this.start>this.end}get is_valid(){return!isNaN(this.min)&&!isNaN(this.max)}}i.Range=r,r.__name__=\"Range\",r.init_Range()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1).__importStar(e(101));i.generic_line_legend=function(e,t,{x0:i,x1:n,y0:c,y1:o},r){t.save(),t.beginPath(),t.moveTo(i,(c+o)/2),t.lineTo(n,(c+o)/2),e.line.doit&&(e.line.set_vectorize(t,r),t.stroke()),t.restore()},i.generic_area_legend=function(e,t,{x0:i,x1:n,y0:c,y1:o},r){const l=.1*Math.abs(n-i),a=.1*Math.abs(o-c),s=i+l,_=n-l,h=c+a,v=o-a;e.fill.doit&&(e.fill.set_vectorize(t,r),t.fillRect(s,h,_-s,v-h)),null!=e.hatch&&e.hatch.doit&&(e.hatch.set_vectorize(t,r),t.fillRect(s,h,_-s,v-h)),e.line&&e.line.doit&&(t.beginPath(),t.rect(s,h,_-s,v-h),e.line.set_vectorize(t,r),t.stroke())},i.line_interpolation=function(e,t,i,c,o,r){const{sx:l,sy:a}=t;let s,_,h,v;\"point\"==t.type?([h,v]=e.yscale.r_invert(a-1,a+1),[s,_]=e.xscale.r_invert(l-1,l+1)):\"v\"==t.direction?([h,v]=e.yscale.r_invert(a,a),[s,_]=[Math.min(i-1,o-1),Math.max(i+1,o+1)]):([s,_]=e.xscale.r_invert(l,l),[h,v]=[Math.min(c-1,r-1),Math.max(c+1,r+1)]);const{x,y}=n.check_2_segments_intersect(s,h,_,v,i,c,o,r);return[x,y]}},\n      function _(t,n,e){function i(t,n){return(t.x-n.x)**2+(t.y-n.y)**2}function r(t,n,e){const r=i(n,e);if(0==r)return i(t,n);const s=((t.x-n.x)*(e.x-n.x)+(t.y-n.y)*(e.y-n.y))/r;if(s<0)return i(t,n);if(s>1)return i(t,e);return i(t,{x:n.x+s*(e.x-n.x),y:n.y+s*(e.y-n.y)})}Object.defineProperty(e,\"__esModule\",{value:!0}),e.point_in_poly=function(t,n,e,i){let r=!1,s=e[e.length-1],o=i[i.length-1];for(let u=0;u<e.length;u++){const c=e[u],_=i[u];o<n!=_<n&&s+(n-o)/(_-o)*(c-s)<t&&(r=!r),s=c,o=_}return r},e.point_in_ellipse=function(t,n,e,i,r,s,o){return((Math.cos(e)/r)**2+(Math.sin(e)/i)**2)*(t-s)**2+2*Math.cos(e)*Math.sin(e)*((1/r)**2-(1/i)**2)*(t-s)*(n-o)+((Math.cos(e)/i)**2+(Math.sin(e)/r)**2)*(n-o)**2<=1},e.dist_2_pts=i,e.dist_to_segment_squared=r,e.dist_to_segment=function(t,n,e){return Math.sqrt(r(t,n,e))},e.check_2_segments_intersect=function(t,n,e,i,r,s,o,u){const c=(u-s)*(e-t)-(o-r)*(i-n);if(0==c)return{hit:!1,x:null,y:null};{let _=n-s,l=t-r;const y=(e-t)*_-(i-n)*l;_=((o-r)*_-(u-s)*l)/c,l=y/c;return{hit:_>0&&_<1&&l>0&&l<1,x:t+_*(e-t),y:n+_*(i-n)}}}},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(103),a=t(107),n=t(108),o=t(109),_=t(22);class h{constructor(t){this._atlas=new Map,this._width=256,this._height=256,this.tex=new i.Texture2d(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._width,this._height],t.RGBA),this.tex.set_data([0,0],[this._width,this._height],new Uint8Array(4*this._width*this._height)),this.get_atlas_data([1])}get_atlas_data(t){const e=t.join(\"-\");let s=this._atlas.get(e);if(null==s){const[i,a]=this.make_pattern(t),n=this._atlas.size;this.tex.set_data([0,n],[this._width,1],new Uint8Array(i.map(t=>t+10))),s=[n/this._height,a],this._atlas.set(e,s)}return s}make_pattern(t){t.length>1&&t.length%2&&(t=t.concat(t));let e=0;for(const s of t)e+=s;const s=[];let i=0;for(let e=0,a=t.length+2;e<a;e+=2){const a=Math.max(1e-4,t[e%t.length]),n=Math.max(1e-4,t[(e+1)%t.length]);s.push(i,i+a),i+=a+n}const a=this._width,n=new Float32Array(4*a);for(let t=0,i=a;t<i;t++){let i,o,_;const h=e*t/(a-1);let r=0,l=1e16;for(let t=0,e=s.length;t<e;t++){const e=Math.abs(s[t]-h);e<l&&(r=t,l=e)}r%2==0?(_=h<=s[r]?1:0,o=s[r],i=s[r+1]):(_=h>s[r]?-1:0,o=s[r-1],i=s[r]),n[4*t+0]=s[r],n[4*t+1]=_,n[4*t+2]=o,n[4*t+3]=i}return[n,e]}}h.__name__=\"DashAtlas\";const r={miter:0,round:1,bevel:2},l={\"\":0,none:0,\".\":0,round:1,\")\":1,\"(\":1,o:1,\"triangle in\":2,\"<\":2,\"triangle out\":3,\">\":3,square:4,\"[\":4,\"]\":4,\"=\":4,butt:5,\"|\":5};class g extends a.BaseGLGlyph{init(){const{gl:t}=this;this._scale_aspect=0;const e=n.vertex_shader,s=o.fragment_shader;this.prog=new i.Program(t),this.prog.set_shaders(e,s),this.index_buffer=new i.IndexBuffer(t),this.vbo_position=new i.VertexBuffer(t),this.vbo_tangents=new i.VertexBuffer(t),this.vbo_segment=new i.VertexBuffer(t),this.vbo_angles=new i.VertexBuffer(t),this.vbo_texcoord=new i.VertexBuffer(t),this.dash_atlas=new h(t)}draw(t,e,s){const i=e.glglyph;if(i.data_changed&&(i._set_data(),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1),i._update_scale(1,1),this._scale_aspect=1,this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[i.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[1,1]),this.prog.set_uniform(\"u_scale_length\",\"float\",[Math.sqrt(2)]),this.I_triangles=i.I_triangles,this.I_triangles.length<65535)this.index_buffer.set_size(2*this.I_triangles.length),this.index_buffer.set_data(0,new Uint16Array(this.I_triangles)),this.prog.draw(this.gl.TRIANGLES,this.index_buffer);else{t=Array.from(this.I_triangles);const e=this.I_triangles.length,s=64008,a=[];for(let t=0,i=Math.ceil(e/s);t<i;t++)a.push([]);for(let e=0,i=t.length;e<i;e++){const i=t[e]%s;a[Math.floor(t[e]/s)].push(i)}for(let t=0,e=a.length;t<e;t++){const e=new Uint16Array(a[t]),n=t*s*4;0!==e.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position,0,2*n),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents,0,4*n),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment,0,2*n),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles,0,2*n),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord,0,2*n),this.index_buffer.set_size(2*e.length),this.index_buffer.set_data(0,e),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}}_set_data(){this._bake(),this.vbo_position.set_size(4*this.V_position.length),this.vbo_position.set_data(0,this.V_position),this.vbo_tangents.set_size(4*this.V_tangents.length),this.vbo_tangents.set_data(0,this.V_tangents),this.vbo_angles.set_size(4*this.V_angles.length),this.vbo_angles.set_data(0,this.V_angles),this.vbo_texcoord.set_size(4*this.V_texcoord.length),this.vbo_texcoord.set_data(0,this.V_texcoord)}_set_visuals(){const t=_.color2rgba(this.glyph.visuals.line.line_color.value(),this.glyph.visuals.line.line_alpha.value()),e=l[this.glyph.visuals.line.line_cap.value()],s=r[this.glyph.visuals.line.line_join.value()];this.prog.set_uniform(\"u_color\",\"vec4\",t),this.prog.set_uniform(\"u_linewidth\",\"float\",[this.glyph.visuals.line.line_width.value()]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[e,e]),this.prog.set_uniform(\"u_linejoin\",\"float\",[s]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);const i=this.glyph.visuals.line.line_dash.value();let a=0,n=1;i.length&&([a,n]=this.dash_atlas.get_atlas_data(i)),this.prog.set_uniform(\"u_dash_index\",\"float\",[a]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[this.glyph.visuals.line.line_dash_offset.value()]),this.prog.set_uniform(\"u_dash_period\",\"float\",[n]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[e,e]),this.prog.set_uniform(\"u_closed\",\"float\",[0])}_bake(){let t,e,s,i,a,n,o,_;const h=this.nvertices,r=this.glyph.sx,l=this.glyph.sy,g=o=new Float32Array(2*h),u=new Float32Array(2*h),f=_=new Float32Array(4*h);for(let t=0,e=h;t<e;t++)g[2*t+0]=r[t],g[2*t+1]=l[t];this.tangents=e=new Float32Array(2*h-2);for(let t=0,s=h-1;t<s;t++)e[2*t+0]=o[2*(t+1)+0]-o[2*t+0],e[2*t+1]=o[2*(t+1)+1]-o[2*t+1];for(let t=0,s=h-1;t<s;t++)f[4*(t+1)+0]=e[2*t+0],f[4*(t+1)+1]=e[2*t+1],f[4*t+2]=e[2*t+0],f[4*t+3]=e[2*t+1];f[0]=e[0],f[1]=e[1],f[4*(h-1)+2]=e[2*(h-2)+0],f[4*(h-1)+3]=e[2*(h-2)+1];const c=new Float32Array(h);for(let t=0,e=h;t<e;t++)c[t]=Math.atan2(_[4*t+0]*_[4*t+3]-_[4*t+1]*_[4*t+2],_[4*t+0]*_[4*t+2]+_[4*t+1]*_[4*t+3]);for(let t=0,e=h-1;t<e;t++)u[2*t+0]=c[t],u[2*t+1]=c[t+1];const p=4*h-4;this.V_position=i=new Float32Array(2*p),this.V_angles=s=new Float32Array(2*p),this.V_tangents=a=new Float32Array(4*p),this.V_texcoord=n=new Float32Array(2*p);for(let t=0,e=h;t<e;t++)for(let e=0;e<4;e++){for(let a=0;a<2;a++)i[2*(4*t+e-2)+a]=g[2*t+a],s[2*(4*t+e)+a]=u[2*t+a];for(let s=0;s<4;s++)a[4*(4*t+e-2)+s]=f[4*t+s]}for(let t=0,e=h;t<e;t++)n[2*(4*t+0)+0]=-1,n[2*(4*t+1)+0]=-1,n[2*(4*t+2)+0]=1,n[2*(4*t+3)+0]=1,n[2*(4*t+0)+1]=-1,n[2*(4*t+1)+1]=1,n[2*(4*t+2)+1]=-1,n[2*(4*t+3)+1]=1;const d=6*(h-1);this.I_triangles=t=new Uint32Array(d);for(let e=0,s=h;e<s;e++)t[6*e+0]=0+4*e,t[6*e+1]=1+4*e,t[6*e+2]=3+4*e,t[6*e+3]=2+4*e,t[6*e+4]=0+4*e,t[6*e+5]=3+4*e}_update_scale(t,e){let s;const i=this.nvertices,a=4*i-4,n=this.tangents,o=new Float32Array(i-1),_=new Float32Array(2*i);this.V_segment=s=new Float32Array(2*a);for(let s=0,a=i-1;s<a;s++)o[s]=Math.sqrt((n[2*s+0]*t)**2+(n[2*s+1]*e)**2);let h=0;for(let t=0,e=i-1;t<e;t++)h+=o[t],_[2*(t+1)+0]=h,_[2*t+1]=h;for(let t=0,e=i;t<e;t++)for(let e=0;e<4;e++)for(let i=0;i<2;i++)s[2*(4*t+e)+i]=_[2*t+i];this.cumsum=h,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)}}s.LineGL=g,g.__name__=\"LineGL\"},\n      function _(e,r,f){Object.defineProperty(f,\"__esModule\",{value:!0});var u=e(104);f.Program=u.Program;var t=e(106);f.Texture2d=t.Texture2d;var a=e(105);f.IndexBuffer=a.IndexBuffer,f.VertexBuffer=a.VertexBuffer},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(105);class a{constructor(t){this.gl=t,this.UTYPEMAP={float:\"uniform1fv\",vec2:\"uniform2fv\",vec3:\"uniform3fv\",vec4:\"uniform4fv\",int:\"uniform1iv\",ivec2:\"uniform2iv\",ivec3:\"uniform3iv\",ivec4:\"uniform4iv\",bool:\"uniform1iv\",bvec2:\"uniform2iv\",bvec3:\"uniform3iv\",bvec4:\"uniform4iv\",mat2:\"uniformMatrix2fv\",mat3:\"uniformMatrix3fv\",mat4:\"uniformMatrix4fv\",sampler1D:\"uniform1i\",sampler2D:\"uniform1i\",sampler3D:\"uniform1i\"},this.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},this.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126]},this._linked=!1,this._validated=!1,this._unset_variables=new Set,this._known_invalid=new Set,this._locations=new Map,this._samplers=new Map,this._attributes=new Map,this.handle=this.gl.createProgram()}delete(){this.gl.deleteProgram(this.handle)}activate(){this.gl.useProgram(this.handle)}deactivate(){this.gl.useProgram(0)}set_shaders(t,e){const i=this.gl;this._linked=!1;const s=i.createShader(i.VERTEX_SHADER),a=i.createShader(i.FRAGMENT_SHADER),r=[[t,s,\"vertex\"],[e,a,\"fragment\"]];for(const[t,e,s]of r){i.shaderSource(e,t),i.compileShader(e);if(!i.getShaderParameter(e,i.COMPILE_STATUS)){const t=i.getShaderInfoLog(e);throw new Error(`errors in ${s} shader:\\n${t}`)}}if(i.attachShader(this.handle,s),i.attachShader(this.handle,a),i.linkProgram(this.handle),!i.getProgramParameter(this.handle,i.LINK_STATUS)){const t=i.getProgramInfoLog(this.handle);throw new Error(\"Program link error:\\n\"+t)}this._unset_variables=this._get_active_attributes_and_uniforms(),i.detachShader(this.handle,s),i.detachShader(this.handle,a),i.deleteShader(s),i.deleteShader(a),this._known_invalid.clear(),this._linked=!0}_get_active_attributes_and_uniforms(){const t=this.gl;this._locations.clear();const e=new RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),i=t.getProgramParameter(this.handle,t.ACTIVE_UNIFORMS),s=[],a=[],r=[[s,t.getProgramParameter(this.handle,t.ACTIVE_ATTRIBUTES),t.getActiveAttrib,t.getAttribLocation],[a,i,t.getActiveUniform,t.getUniformLocation]];for(const[i,s,a,n]of r)for(let r=0;r<s;r+=1){const s=a.call(t,this.handle,r),o=s.name,h=o.match(e);if(null!=h){const t=h[1];for(let e=0;e<s.size;e+=1)i.push([`${t}[${e}]`,s.type])}else i.push([o,s.type]);this._locations.set(o,n.call(t,this.handle,o))}const n=new Set;for(const[t]of s)n.add(t);for(const[t]of a)n.add(t);return n}set_texture(t,e){var i;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const s=null!==(i=this._locations.get(t))&&void 0!==i?i:-1;if(s<0)this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`\"Variable ${t} is not an active texture`));else{this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate();{let i=this._samplers.size;this._samplers.has(t)&&(i=this._samplers.get(t)[2]),this._samplers.set(t,[e._target,e.handle,i]),this.gl.uniform1i(s,i)}}}set_uniform(t,e,i){var s;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const a=null!==(s=this._locations.get(t))&&void 0!==s?s:-1;if(a<0)return void(this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`Variable ${t} is not an active uniform`)));this._unset_variables.has(t)&&this._unset_variables.delete(t);let r=1;if(!e.startsWith(\"mat\")){const t=\"int\"==e||\"bool\"==e?\"float\":e.replace(/^ib/,\"\");r=Math.floor(i.length/this.ATYPEINFO[t][0])}if(r>1)for(let e=0;e<r;e+=1)if(this._unset_variables.has(`${t}[${e}]`)){const i=`${t}[${e}]`;this._unset_variables.has(i)&&this._unset_variables.delete(i)}const n=this.UTYPEMAP[e];this.activate(),e.startsWith(\"mat\")?this.gl[n](a,!1,i):this.gl[n](a,i)}set_attribute(t,e,i,a=0,r=0){var n;if(!this._linked)throw new Error(\"Cannot set attribute when program has no code\");const o=null!==(n=this._locations.get(t))&&void 0!==n?n:-1;if(o<0)this._known_invalid.has(t)||(this._known_invalid.add(t),i instanceof s.VertexBuffer&&r>0||console.log(`Variable ${t} is not an active attribute`));else if(this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate(),i instanceof s.VertexBuffer){const[s,n]=this.ATYPEINFO[e],h=\"vertexAttribPointer\",l=[s,n,!1,a,r];this._attributes.set(t,[i.handle,o,h,l])}else{const s=this.ATYPEMAP[e];this._attributes.set(t,[null,o,s,i])}}_pre_draw(){this.activate();for(const[t,e,i]of this._samplers.values())this.gl.activeTexture(this.gl.TEXTURE0+i),this.gl.bindTexture(t,e);for(const[t,e,i,s]of this._attributes.values())null!=t?(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,t),this.gl.enableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s])):(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.gl.disableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s]));this._validated||(this._validated=!0,this._validate())}_validate(){if(this._unset_variables.size&&console.log(\"Program has unset variables: \"+this._unset_variables),this.gl.validateProgram(this.handle),!this.gl.getProgramParameter(this.handle,this.gl.VALIDATE_STATUS))throw console.log(this.gl.getProgramInfoLog(this.handle)),new Error(\"Program validation error\")}draw(t,e){if(!this._linked)throw new Error(\"Cannot draw program if code has not been set\");if(e instanceof s.IndexBuffer){this._pre_draw(),e.activate();const i=e.buffer_size/2,s=this.gl.UNSIGNED_SHORT;this.gl.drawElements(t,i,s,0),e.deactivate()}else{const[i,s]=e;0!=s&&(this._pre_draw(),this.gl.drawArrays(t,i,s))}}}i.Program=a,a.__name__=\"Program\"},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});class i{constructor(e){this.gl=e,this._usage=35048,this.buffer_size=0,this.handle=this.gl.createBuffer()}delete(){this.gl.deleteBuffer(this.handle)}activate(){this.gl.bindBuffer(this._target,this.handle)}deactivate(){this.gl.bindBuffer(this._target,null)}set_size(e){e!=this.buffer_size&&(this.activate(),this.gl.bufferData(this._target,e,this._usage),this.buffer_size=e)}set_data(e,t){this.activate(),this.gl.bufferSubData(this._target,e,t)}}s.Buffer=i,i.__name__=\"Buffer\";class r extends i{constructor(){super(...arguments),this._target=34962}}s.VertexBuffer=r,r.__name__=\"VertexBuffer\";class a extends i{constructor(){super(...arguments),this._target=34963}}s.IndexBuffer=a,a.__name__=\"IndexBuffer\"},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=t(11);class r{constructor(t){this.gl=t,this._target=3553,this._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},this.handle=this.gl.createTexture()}delete(){this.gl.deleteTexture(this.handle)}activate(){this.gl.bindTexture(this._target,this.handle)}deactivate(){this.gl.bindTexture(this._target,0)}_get_alignment(t){const e=[4,8,2,1];for(const i of e)if(t%i==0)return i;a.unreachable()}set_wrapping(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_S,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_T,e)}set_interpolation(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_MIN_FILTER,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_MAG_FILTER,e)}set_size([t,e],i){var a,r,s;t==(null===(a=this._shape_format)||void 0===a?void 0:a.width)&&e==(null===(r=this._shape_format)||void 0===r?void 0:r.height)&&i==(null===(s=this._shape_format)||void 0===s?void 0:s.format)||(this._shape_format={width:t,height:e,format:i},this.activate(),this.gl.texImage2D(this._target,0,i,t,e,0,i,this.gl.UNSIGNED_BYTE,null))}set_data(t,[e,i],a){this.activate();const{format:r}=this._shape_format,[s,h]=t,l=this._types[a.constructor.name];if(null==l)throw new Error(`Type ${a.constructor.name} not allowed for texture`);const _=this._get_alignment(e);4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,_),this.gl.texSubImage2D(this._target,0,s,h,e,i,r,l,a),4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,4)}}i.Texture2d=r,r.__name__=\"Texture2d\"},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});class s{constructor(e,t){this.gl=e,this.glyph=t,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1,this.init()}set_data_changed(){const{data_size:e}=this.glyph;e!=this.nvertices&&(this.nvertices=e,this.size_changed=!0),this.data_changed=!0}set_visuals_changed(){this.visuals_changed=!0}render(e,t,i){if(0==t.length)return!0;const{width:s,height:h}=this.glyph.renderer.plot_view.canvas_view.webgl.canvas,a={pixel_ratio:this.glyph.renderer.plot_view.canvas_view.pixel_ratio,width:s,height:h};return this.draw(t,i,a),!0}}i.BaseGLGlyph=s,s.__name__=\"BaseGLGlyph\"},\n      function _(n,e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.vertex_shader=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size, u_offset;\\nuniform vec2 u_scale_aspect;\\nuniform float u_scale_length;\\n\\nuniform vec4 u_color;\\nuniform float u_antialias;\\nuniform float u_length;\\nuniform float u_linewidth;\\nuniform float u_dash_index;\\nuniform float u_closed;\\n\\nattribute vec2 a_position;\\nattribute vec4 a_tangents;\\nattribute vec2 a_segment;\\nattribute vec2 a_angles;\\nattribute vec2 a_texcoord;\\n\\nvarying vec4  v_color;\\nvarying vec2  v_segment;\\nvarying vec2  v_angles;\\nvarying vec2  v_texcoord;\\nvarying vec2  v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\nfloat cross(in vec2 v1, in vec2 v2)\\n{\\n    return v1.x*v2.y - v1.y*v2.x;\\n}\\n\\nfloat signed_distance(in vec2 v1, in vec2 v2, in vec2 v3)\\n{\\n    return cross(v2-v1,v1-v3) / length(v2-v1);\\n}\\n\\nvoid rotate( in vec2 v, in float alpha, out vec2 result )\\n{\\n    float c = cos(alpha);\\n    float s = sin(alpha);\\n    result = vec2( c*v.x - s*v.y,\\n                   s*v.x + c*v.y );\\n}\\n\\nvoid main()\\n{\\n    bool closed = (u_closed > 0.0);\\n\\n    // Attributes and uniforms to varyings\\n    v_color = u_color;\\n    v_linewidth = u_linewidth;\\n    v_segment = a_segment * u_scale_length;\\n    v_length = u_length * u_scale_length;\\n\\n    // Scale to map to pixel coordinates. The original algorithm from the paper\\n    // assumed isotropic scale. We obviously do not have this.\\n    vec2 abs_scale_aspect = abs(u_scale_aspect);\\n    vec2 abs_scale = u_scale_length * abs_scale_aspect;\\n\\n    // Correct angles for aspect ratio\\n    vec2 av;\\n    av = vec2(1.0, tan(a_angles.x)) / abs_scale_aspect;\\n    v_angles.x = atan(av.y, av.x);\\n    av = vec2(1.0, tan(a_angles.y)) / abs_scale_aspect;\\n    v_angles.y = atan(av.y, av.x);\\n\\n    // Thickness below 1 pixel are represented using a 1 pixel thickness\\n    // and a modified alpha\\n    v_color.a = min(v_linewidth, v_color.a);\\n    v_linewidth = max(v_linewidth, 1.0);\\n\\n    // If color is fully transparent we just will discard the fragment anyway\\n    if( v_color.a <= 0.0 ) {\\n        gl_Position = vec4(0.0,0.0,0.0,1.0);\\n        return;\\n    }\\n\\n    // This is the actual half width of the line\\n    float w = ceil(u_antialias+v_linewidth)/2.0;\\n\\n    vec2 position = a_position;\\n\\n    vec2 t1 = normalize(a_tangents.xy * abs_scale_aspect);  // note the scaling for aspect ratio here\\n    vec2 t2 = normalize(a_tangents.zw * abs_scale_aspect);\\n    float u = a_texcoord.x;\\n    float v = a_texcoord.y;\\n    vec2 o1 = vec2( +t1.y, -t1.x);\\n    vec2 o2 = vec2( +t2.y, -t2.x);\\n\\n    // This is a join\\n    // ----------------------------------------------------------------\\n    if( t1 != t2 ) {\\n        float angle = atan (t1.x*t2.y-t1.y*t2.x, t1.x*t2.x+t1.y*t2.y);  // Angle needs recalculation for some reason\\n        vec2 t  = normalize(t1+t2);\\n        vec2 o  = vec2( + t.y, - t.x);\\n\\n        if ( u_dash_index > 0.0 )\\n        {\\n            // Broken angle\\n            // ----------------------------------------------------------------\\n            if( (abs(angle) > THETA) ) {\\n                position += v * w * o / cos(angle/2.0);\\n                float s = sign(angle);\\n                if( angle < 0.0 ) {\\n                    if( u == +1.0 ) {\\n                        u = v_segment.y + v * w * tan(angle/2.0);\\n                        if( v == 1.0 ) {\\n                            position -= 2.0 * w * t1 / sin(angle);\\n                            u -= 2.0 * w / sin(angle);\\n                        }\\n                    } else {\\n                        u = v_segment.x - v * w * tan(angle/2.0);\\n                        if( v == 1.0 ) {\\n                            position += 2.0 * w * t2 / sin(angle);\\n                            u += 2.0*w / sin(angle);\\n                        }\\n                    }\\n                } else {\\n                    if( u == +1.0 ) {\\n                        u = v_segment.y + v * w * tan(angle/2.0);\\n                        if( v == -1.0 ) {\\n                            position += 2.0 * w * t1 / sin(angle);\\n                            u += 2.0 * w / sin(angle);\\n                        }\\n                    } else {\\n                        u = v_segment.x - v * w * tan(angle/2.0);\\n                        if( v == -1.0 ) {\\n                            position -= 2.0 * w * t2 / sin(angle);\\n                            u -= 2.0*w / sin(angle);\\n                        }\\n                    }\\n                }\\n                // Continuous angle\\n                // ------------------------------------------------------------\\n            } else {\\n                position += v * w * o / cos(angle/2.0);\\n                if( u == +1.0 ) u = v_segment.y;\\n                else            u = v_segment.x;\\n            }\\n        }\\n\\n        // Solid line\\n        // --------------------------------------------------------------------\\n        else\\n        {\\n            position.xy += v * w * o / cos(angle/2.0);\\n            if( angle < 0.0 ) {\\n                if( u == +1.0 ) {\\n                    u = v_segment.y + v * w * tan(angle/2.0);\\n                } else {\\n                    u = v_segment.x - v * w * tan(angle/2.0);\\n                }\\n            } else {\\n                if( u == +1.0 ) {\\n                    u = v_segment.y + v * w * tan(angle/2.0);\\n                } else {\\n                    u = v_segment.x - v * w * tan(angle/2.0);\\n                }\\n            }\\n        }\\n\\n    // This is a line start or end (t1 == t2)\\n    // ------------------------------------------------------------------------\\n    } else {\\n        position += v * w * o1;\\n        if( u == -1.0 ) {\\n            u = v_segment.x - w;\\n            position -= w * t1;\\n        } else {\\n            u = v_segment.y + w;\\n            position += w * t2;\\n        }\\n    }\\n\\n    // Miter distance\\n    // ------------------------------------------------------------------------\\n    vec2 t;\\n    vec2 curr = a_position * abs_scale;\\n    if( a_texcoord.x < 0.0 ) {\\n        vec2 next = curr + t2*(v_segment.y-v_segment.x);\\n\\n        rotate( t1, +v_angles.x/2.0, t);\\n        v_miter.x = signed_distance(curr, curr+t, position);\\n\\n        rotate( t2, +v_angles.y/2.0, t);\\n        v_miter.y = signed_distance(next, next+t, position);\\n    } else {\\n        vec2 prev = curr - t1*(v_segment.y-v_segment.x);\\n\\n        rotate( t1, -v_angles.x/2.0,t);\\n        v_miter.x = signed_distance(prev, prev+t, position);\\n\\n        rotate( t2, -v_angles.y/2.0,t);\\n        v_miter.y = signed_distance(curr, curr+t, position);\\n    }\\n\\n    if (!closed && v_segment.x <= 0.0) {\\n        v_miter.x = 1e10;\\n    }\\n    if (!closed && v_segment.y >= v_length)\\n    {\\n        v_miter.y = 1e10;\\n    }\\n\\n    v_texcoord = vec2( u, v*w );\\n\\n    // Calculate position in device coordinates. Note that we\\n    // already scaled with abs scale above.\\n    vec2 normpos = position * sign(u_scale_aspect);\\n    normpos += 0.5;  // make up for Bokeh's offset\\n    normpos /= u_canvas_size / u_pixel_ratio;  // in 0..1\\n    gl_Position = vec4(normpos*2.0-1.0, 0.0, 1.0);\\n    gl_Position.y *= -1.0;\\n}\\n\"},\n      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0}),e.fragment_shader=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform sampler2D u_dash_atlas;\\n\\nuniform vec2 u_linecaps;\\nuniform float u_miter_limit;\\nuniform float u_linejoin;\\nuniform float u_antialias;\\nuniform float u_dash_phase;\\nuniform float u_dash_period;\\nuniform float u_dash_index;\\nuniform vec2 u_dash_caps;\\nuniform float u_closed;\\n\\nvarying vec4  v_color;\\nvarying vec2  v_segment;\\nvarying vec2  v_angles;\\nvarying vec2  v_texcoord;\\nvarying vec2  v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\n// Compute distance to cap ----------------------------------------------------\\nfloat cap( int type, float dx, float dy, float t, float linewidth )\\n{\\n    float d = 0.0;\\n    dx = abs(dx);\\n    dy = abs(dy);\\n    if      (type == 0)  discard;  // None\\n    else if (type == 1)  d = sqrt(dx*dx+dy*dy);  // Round\\n    else if (type == 3)  d = (dx+abs(dy));  // Triangle in\\n    else if (type == 2)  d = max(abs(dy),(t+dx-abs(dy)));  // Triangle out\\n    else if (type == 4)  d = max(dx,dy);  // Square\\n    else if (type == 5)  d = max(dx+t,dy);  // Butt\\n    return d;\\n}\\n\\n// Compute distance to join -------------------------------------------------\\nfloat join( in int type, in float d, in vec2 segment, in vec2 texcoord, in vec2 miter,\\n           in float linewidth )\\n{\\n    // texcoord.x is distance from start\\n    // texcoord.y is distance from centerline\\n    // segment.x and y indicate the limits (as for texcoord.x) for this segment\\n\\n    float dx = texcoord.x;\\n\\n    // Round join\\n    if( type == 1 ) {\\n        if (dx < segment.x) {\\n            d = max(d,length( texcoord - vec2(segment.x,0.0)));\\n            //d = length( texcoord - vec2(segment.x,0.0));\\n        } else if (dx > segment.y) {\\n            d = max(d,length( texcoord - vec2(segment.y,0.0)));\\n            //d = length( texcoord - vec2(segment.y,0.0));\\n        }\\n    }\\n    // Bevel join\\n    else if ( type == 2 ) {\\n        if (dx < segment.x) {\\n            vec2 x = texcoord - vec2(segment.x,0.0);\\n            d = max(d, max(abs(x.x), abs(x.y)));\\n\\n        } else if (dx > segment.y) {\\n            vec2 x = texcoord - vec2(segment.y,0.0);\\n            d = max(d, max(abs(x.x), abs(x.y)));\\n        }\\n        /*  Original code for bevel which does not work for us\\n        if( (dx < segment.x) ||  (dx > segment.y) )\\n            d = max(d, min(abs(x.x),abs(x.y)));\\n        */\\n    }\\n\\n    return d;\\n}\\n\\nvoid main()\\n{\\n    // If color is fully transparent we just discard the fragment\\n    if( v_color.a <= 0.0 ) {\\n        discard;\\n    }\\n\\n    // Test if dash pattern is the solid one (0)\\n    bool solid =  (u_dash_index == 0.0);\\n\\n    // Test if path is closed\\n    bool closed = (u_closed > 0.0);\\n\\n    vec4 color = v_color;\\n    float dx = v_texcoord.x;\\n    float dy = v_texcoord.y;\\n    float t = v_linewidth/2.0-u_antialias;\\n    float width = 1.0;  //v_linewidth; original code had dashes scale with line width, we do not\\n    float d = 0.0;\\n\\n    vec2 linecaps = u_linecaps;\\n    vec2 dash_caps = u_dash_caps;\\n    float line_start = 0.0;\\n    float line_stop = v_length;\\n\\n    // Apply miter limit; fragments too far into the miter are simply discarded\\n    if( (dx < v_segment.x) || (dx > v_segment.y) ) {\\n        float into_miter = max(v_segment.x - dx, dx - v_segment.y);\\n        if (into_miter > u_miter_limit*v_linewidth/2.0)\\n          discard;\\n    }\\n\\n    // Solid line --------------------------------------------------------------\\n    if( solid ) {\\n        d = abs(dy);\\n        if( (!closed) && (dx < line_start) ) {\\n            d = cap( int(u_linecaps.x), abs(dx), abs(dy), t, v_linewidth );\\n        }\\n        else if( (!closed) &&  (dx > line_stop) ) {\\n            d = cap( int(u_linecaps.y), abs(dx)-line_stop, abs(dy), t, v_linewidth );\\n        }\\n        else {\\n            d = join( int(u_linejoin), abs(dy), v_segment, v_texcoord, v_miter, v_linewidth );\\n        }\\n\\n    // Dash line --------------------------------------------------------------\\n    } else {\\n        float segment_start = v_segment.x;\\n        float segment_stop  = v_segment.y;\\n        float segment_center= (segment_start+segment_stop)/2.0;\\n        float freq          = u_dash_period*width;\\n        float u = mod( dx + u_dash_phase*width, freq);\\n        vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0;  // conversion to int-like\\n        float dash_center= tex.x * width;\\n        float dash_type  = tex.y;\\n        float _start = tex.z * width;\\n        float _stop  = tex.a * width;\\n        float dash_start = dx - u + _start;\\n        float dash_stop  = dx - u + _stop;\\n\\n        // Compute extents of the first dash (the one relative to v_segment.x)\\n        // Note: this could be computed in the vertex shader\\n        if( (dash_stop < segment_start) && (dash_caps.x != 5.0) ) {\\n            float u = mod(segment_start + u_dash_phase*width, freq);\\n            vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0;  // conversion to int-like\\n            dash_center= tex.x * width;\\n            //dash_type  = tex.y;\\n            float _start = tex.z * width;\\n            float _stop  = tex.a * width;\\n            dash_start = segment_start - u + _start;\\n            dash_stop = segment_start - u + _stop;\\n        }\\n\\n        // Compute extents of the last dash (the one relatives to v_segment.y)\\n        // Note: This could be computed in the vertex shader\\n        else if( (dash_start > segment_stop)  && (dash_caps.y != 5.0) ) {\\n            float u = mod(segment_stop + u_dash_phase*width, freq);\\n            vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0;  // conversion to int-like\\n            dash_center= tex.x * width;\\n            //dash_type  = tex.y;\\n            float _start = tex.z * width;\\n            float _stop  = tex.a * width;\\n            dash_start = segment_stop - u + _start;\\n            dash_stop  = segment_stop - u + _stop;\\n        }\\n\\n        // This test if the we are dealing with a discontinuous angle\\n        bool discontinuous = ((dx <  segment_center) && abs(v_angles.x) > THETA) ||\\n                             ((dx >= segment_center) && abs(v_angles.y) > THETA);\\n        //if( dx < line_start) discontinuous = false;\\n        //if( dx > line_stop)  discontinuous = false;\\n\\n        float d_join = join( int(u_linejoin), abs(dy),\\n                            v_segment, v_texcoord, v_miter, v_linewidth );\\n\\n        // When path is closed, we do not have room for linecaps, so we make room\\n        // by shortening the total length\\n        if (closed) {\\n             line_start += v_linewidth/2.0;\\n             line_stop  -= v_linewidth/2.0;\\n        }\\n\\n        // We also need to take antialias area into account\\n        //line_start += u_antialias;\\n        //line_stop  -= u_antialias;\\n\\n        // Check is dash stop is before line start\\n        if( dash_stop <= line_start ) {\\n            discard;\\n        }\\n        // Check is dash start is beyond line stop\\n        if( dash_start >= line_stop ) {\\n            discard;\\n        }\\n\\n        // Check if current dash start is beyond segment stop\\n        if( discontinuous ) {\\n            // Dash start is beyond segment, we discard\\n            if( (dash_start > segment_stop) ) {\\n                discard;\\n                //gl_FragColor = vec4(1.0,0.0,0.0,.25); return;\\n            }\\n\\n            // Dash stop is before segment, we discard\\n            if( (dash_stop < segment_start) ) {\\n                discard;  //gl_FragColor = vec4(0.0,1.0,0.0,.25); return;\\n            }\\n\\n            // Special case for round caps (nicer with this)\\n            if( dash_caps.x == 1.0 ) {\\n                if( (u > _stop) && (dash_stop > segment_stop )  && (abs(v_angles.y) < PI/2.0)) {\\n                    discard;\\n                }\\n            }\\n\\n            // Special case for round caps  (nicer with this)\\n            if( dash_caps.y == 1.0 ) {\\n                if( (u < _start) && (dash_start < segment_start )  && (abs(v_angles.x) < PI/2.0)) {\\n                    discard;\\n                }\\n            }\\n\\n            // Special case for triangle caps (in & out) and square\\n            // We make sure the cap stop at crossing frontier\\n            if( (dash_caps.x != 1.0) && (dash_caps.x != 5.0) ) {\\n                if( (dash_start < segment_start )  && (abs(v_angles.x) < PI/2.0) ) {\\n                    float a = v_angles.x/2.0;\\n                    float x = (segment_start-dx)*cos(a) - dy*sin(a);\\n                    float y = (segment_start-dx)*sin(a) + dy*cos(a);\\n                    if( x > 0.0 ) discard;\\n                    // We transform the cap into square to avoid holes\\n                    dash_caps.x = 4.0;\\n                }\\n            }\\n\\n            // Special case for triangle caps (in & out) and square\\n            // We make sure the cap stop at crossing frontier\\n            if( (dash_caps.y != 1.0) && (dash_caps.y != 5.0) ) {\\n                if( (dash_stop > segment_stop )  && (abs(v_angles.y) < PI/2.0) ) {\\n                    float a = v_angles.y/2.0;\\n                    float x = (dx-segment_stop)*cos(a) - dy*sin(a);\\n                    float y = (dx-segment_stop)*sin(a) + dy*cos(a);\\n                    if( x > 0.0 ) discard;\\n                    // We transform the caps into square to avoid holes\\n                    dash_caps.y = 4.0;\\n                }\\n            }\\n        }\\n\\n        // Line cap at start\\n        if( (dx < line_start) && (dash_start < line_start) && (dash_stop > line_start) ) {\\n            d = cap( int(linecaps.x), dx-line_start, dy, t, v_linewidth);\\n        }\\n        // Line cap at stop\\n        else if( (dx > line_stop) && (dash_stop > line_stop) && (dash_start < line_stop) ) {\\n            d = cap( int(linecaps.y), dx-line_stop, dy, t, v_linewidth);\\n        }\\n        // Dash cap left - dash_type = -1, 0 or 1, but there may be roundoff errors\\n        else if( dash_type < -0.5 ) {\\n            d = cap( int(dash_caps.y), abs(u-dash_center), dy, t, v_linewidth);\\n            if( (dx > line_start) && (dx < line_stop) )\\n                d = max(d,d_join);\\n        }\\n        // Dash cap right\\n        else if( dash_type > 0.5 ) {\\n            d = cap( int(dash_caps.x), abs(dash_center-u), dy, t, v_linewidth);\\n            if( (dx > line_start) && (dx < line_stop) )\\n                d = max(d,d_join);\\n        }\\n        // Dash body (plain)\\n        else {// if( dash_type > -0.5 &&  dash_type < 0.5) {\\n            d = abs(dy);\\n        }\\n\\n        // Line join\\n        if( (dx > line_start) && (dx < line_stop)) {\\n            if( (dx <= segment_start) && (dash_start <= segment_start)\\n                && (dash_stop >= segment_start) ) {\\n                d = d_join;\\n                // Antialias at outer border\\n                float angle = PI/2.+v_angles.x;\\n                float f = abs( (segment_start - dx)*cos(angle) - dy*sin(angle));\\n                d = max(f,d);\\n            }\\n            else if( (dx > segment_stop) && (dash_start <= segment_stop)\\n                     && (dash_stop >= segment_stop) ) {\\n                d = d_join;\\n                // Antialias at outer border\\n                float angle = PI/2.+v_angles.y;\\n                float f = abs((dx - segment_stop)*cos(angle) - dy*sin(angle));\\n                d = max(f,d);\\n            }\\n            else if( dx < (segment_start - v_linewidth/2.)) {\\n                discard;\\n            }\\n            else if( dx > (segment_stop + v_linewidth/2.)) {\\n                discard;\\n            }\\n        }\\n        else if( dx < (segment_start - v_linewidth/2.)) {\\n            discard;\\n        }\\n        else if( dx > (segment_stop + v_linewidth/2.)) {\\n            discard;\\n        }\\n    }\\n\\n    // Distance to border ------------------------------------------------------\\n    d = d - t;\\n    if( d < 0.0 ) {\\n        gl_FragColor = color;\\n    } else {\\n        d /= u_antialias;\\n        gl_FragColor = vec4(color.rgb, exp(-d*d)*color.a);\\n    }\\n}\\n\"},\n      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),l=e(93),_=e(100),n=s.__importStar(e(101)),o=s.__importStar(e(28)),a=e(88);class h extends l.XYGlyphView{_inner_loop(e,i,t,s,l){for(const _ of i)0!=_?isNaN(t[_]+s[_])?(e.closePath(),l.apply(e),e.beginPath()):e.lineTo(t[_],s[_]):(e.beginPath(),e.moveTo(t[_],s[_]));e.closePath(),l.call(e)}_render(e,i,{sx:t,sy:s}){this.visuals.fill.doit&&(this.visuals.fill.set_value(e),this._inner_loop(e,i,t,s,e.fill)),this.visuals.hatch.doit2(e,0,()=>this._inner_loop(e,i,t,s,e.fill),()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_value(e),this._inner_loop(e,i,t,s,e.stroke))}draw_legend_for_index(e,i,t){_.generic_area_legend(this.visuals,e,i,t)}_hit_point(e){const i=new a.Selection;return n.point_in_poly(e.sx,e.sy,this.sx,this.sy)&&(i.add_to_selected_glyphs(this.model),i.view=this),i}}t.PatchView=h,h.__name__=\"PatchView\";class r extends l.XYGlyph{constructor(e){super(e)}static init_Patch(){this.prototype.default_view=h,this.mixins([o.Line,o.Fill,o.Hatch])}}t.Patch=r,r.__name__=\"Patch\",r.init_Patch()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(24),n=e(112),a=i.__importStar(e(101)),_=i.__importStar(e(18)),h=e(88);class l extends n.AreaView{_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x1[r],n=this._x2[r],a=this._y[r];isNaN(i+n+a)||!isFinite(i+n+a)?e.add_empty():e.add(t(i,n),a,s(i,n),a)}}_inner(e,t,s,i,r){e.beginPath();for(let s=0,r=t.length;s<r;s++)e.lineTo(t[s],i[s]);for(let t=s.length-1;t>=0;t--)e.lineTo(s[t],i[t]);e.closePath(),r.call(e)}_render(e,t,{sx1:s,sx2:i,sy:r}){this.visuals.fill.doit&&(this.visuals.fill.set_value(e),this._inner(e,s,i,r,e.fill)),this.visuals.hatch.doit2(e,0,()=>this._inner(e,s,i,r,e.fill),()=>this.renderer.request_render())}_hit_point(e){const t=this.sy.length,s=new r.NumberArray(2*t),i=new r.NumberArray(2*t);for(let e=0,r=t;e<r;e++)s[e]=this.sx1[e],i[e]=this.sy[e],s[t+e]=this.sx2[t-e-1],i[t+e]=this.sy[t-e-1];const n=new h.Selection;return a.point_in_poly(e.sx,e.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}scenterxy(e){return[(this.sx1[e]+this.sx2[e])/2,this.sy[e]]}_map_data(){this.sx1=this.renderer.xscale.v_compute(this._x1),this.sx2=this.renderer.xscale.v_compute(this._x2),this.sy=this.renderer.yscale.v_compute(this._y)}}s.HAreaView=l,l.__name__=\"HAreaView\";class o extends n.Area{constructor(e){super(e)}static init_HArea(){this.prototype.default_view=l,this.define({x1:[_.XCoordinateSpec,{field:\"x1\"}],x2:[_.XCoordinateSpec,{field:\"x2\"}],y:[_.YCoordinateSpec,{field:\"y\"}]})}}s.HArea=o,o.__name__=\"HArea\",o.init_HArea()},\n      function _(e,_,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=e(1),r=e(94),t=e(100),n=a.__importStar(e(28));class s extends r.GlyphView{draw_legend_for_index(e,_,i){t.generic_area_legend(this.visuals,e,_,i)}}i.AreaView=s,s.__name__=\"AreaView\";class c extends r.Glyph{constructor(e){super(e)}static init_Area(){this.mixins([n.Fill,n.HatchVector])}}i.Area=c,c.__name__=\"Area\",c.init_Area()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(24),n=e(112),a=i.__importStar(e(101)),_=i.__importStar(e(18)),h=e(88);class l extends n.AreaView{_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x[r],n=this._y1[r],a=this._y2[r];isNaN(i+n+a)||!isFinite(i+n+a)?e.add_empty():e.add(i,t(n,a),i,s(n,a))}}_inner(e,t,s,i,r){e.beginPath();for(let i=0,r=s.length;i<r;i++)e.lineTo(t[i],s[i]);for(let s=i.length-1;s>=0;s--)e.lineTo(t[s],i[s]);e.closePath(),r.call(e)}_render(e,t,{sx:s,sy1:i,sy2:r}){this.visuals.fill.doit&&(this.visuals.fill.set_value(e),this._inner(e,s,i,r,e.fill)),this.visuals.hatch.doit2(e,0,()=>this._inner(e,s,i,r,e.fill),()=>this.renderer.request_render())}scenterxy(e){return[this.sx[e],(this.sy1[e]+this.sy2[e])/2]}_hit_point(e){const t=this.sx.length,s=new r.NumberArray(2*t),i=new r.NumberArray(2*t);for(let e=0,r=t;e<r;e++)s[e]=this.sx[e],i[e]=this.sy1[e],s[t+e]=this.sx[t-e-1],i[t+e]=this.sy2[t-e-1];const n=new h.Selection;return a.point_in_poly(e.sx,e.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sy1=this.renderer.yscale.v_compute(this._y1),this.sy2=this.renderer.yscale.v_compute(this._y2)}}s.VAreaView=l,l.__name__=\"VAreaView\";class o extends n.Area{constructor(e){super(e)}static init_VArea(){this.prototype.default_view=l,this.define({x:[_.XCoordinateSpec,{field:\"x\"}],y1:[_.YCoordinateSpec,{field:\"y1\"}],y2:[_.YCoordinateSpec,{field:\"y2\"}]})}}s.VArea=o,o.__name__=\"VArea\",o.init_VArea()},\n      function _(i,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=i(1),n=i(81),c=t.__importStar(i(18)),o=i(88),r=i(24),_=i(86);class a extends n.Model{constructor(i){super(i)}static init_CDSView(){this.define({filters:[c.Array,[]],source:[c.Instance]}),this.internal({indices:[c.Any],indices_map:[c.Any,{}],masked:[c.Any,null]})}initialize(){super.initialize(),this.compute_indices()}connect_signals(){super.connect_signals(),this.connect(this.properties.filters.change,()=>{this.compute_indices(),this.change.emit()});const i=()=>{const i=()=>this.compute_indices();null!=this.source&&(this.connect(this.source.change,i),this.source instanceof _.ColumnarDataSource&&(this.connect(this.source.streaming,i),this.connect(this.source.patching,i)))};let e=null!=this.source;e?i():this.connect(this.properties.source.change,()=>{e||(i(),e=!0)})}compute_indices(){var i;const{source:e}=this;if(null==e)return;const s=null!==(i=e.get_length())&&void 0!==i?i:1,t=r.Indices.all_set(s);for(const i of this.filters)t.intersect(i.compute_indices(e));this.indices=t,this._indices=[...t],this.indices_map_to_subset()}indices_map_to_subset(){this.indices_map={};for(let i=0;i<this._indices.length;i++)this.indices_map[this._indices[i]]=i}convert_selection_from_subset(i){const e=i.indices.map(i=>this._indices[i]);return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_selection_to_subset(i){const e=i.indices.map(i=>this.indices_map[i]);return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_indices_from_subset(i){return i.map(i=>this._indices[i])}}s.CDSView=a,a.__name__=\"CDSView\",a.init_CDSView()},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(9);async function i(e,n,t){const o=new e(Object.assign(Object.assign({},t),{model:n}));return o.initialize(),await o.lazy_initialize(),o}t.build_view=async function(e,n={parent:null},t=(e=>e.default_view)){const o=await i(t(e),e,n);return o.connect_signals(),o},t.build_views=async function(e,n,t={parent:null},s=(e=>e.default_view)){const c=o.difference([...e.keys()],n);for(const n of c)e.get(n).remove(),e.delete(n);const a=[],f=n.filter(n=>!e.has(n));for(const n of f){const o=await i(s(n),n,t);e.set(n,o),a.push(o)}for(const e of a)e.connect_signals();return a},t.remove_views=function(e){for(const[n,t]of e)t.remove(),e.delete(n)}},\n      function _(e,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const t=e(1),s=e(91),i=e(117),a=t.__importStar(e(18)),o=e(115),_=e(11);class d extends s.DataRendererView{async lazy_initialize(){await super.lazy_initialize();const e=this.model;let n=null,r=null;const t={v_compute(r){_.assert(null==n);const[t]=n=e.layout_provider.get_edge_coordinates(r);return t}},s={v_compute(e){_.assert(null!=n);const[,r]=n;return n=null,r}},i={v_compute(n){_.assert(null==r);const[t]=r=e.layout_provider.get_node_coordinates(n);return t}},a={v_compute(e){_.assert(null!=r);const[,n]=r;return r=null,n}},{edge_renderer:d,node_renderer:l}=this.model;d.glyph.xs={expr:t},d.glyph.ys={expr:s},l.glyph.x={expr:i},l.glyph.y={expr:a};const{parent:c}=this;this.edge_view=await o.build_view(d,{parent:c}),this.node_view=await o.build_view(l,{parent:c})}connect_signals(){super.connect_signals(),this.connect(this.model.layout_provider.change,()=>{this.edge_view.set_data(!1),this.node_view.set_data(!1),this.request_render()})}remove(){this.edge_view.remove(),this.node_view.remove(),super.remove()}_render(){this.edge_view.render(),this.node_view.render()}}r.GraphRendererView=d,d.__name__=\"GraphRendererView\";class l extends s.DataRenderer{constructor(e){super(e)}static init_GraphRenderer(){this.prototype.default_view=d,this.define({layout_provider:[a.Instance],node_renderer:[a.Instance],edge_renderer:[a.Instance],selection_policy:[a.Instance,()=>new i.NodesOnly],inspection_policy:[a.Instance,()=>new i.NodesOnly]})}get_selection_manager(){return this.node_renderer.data_source.selection_manager}}r.GraphRenderer=l,l.__name__=\"GraphRenderer\",l.init_GraphRenderer()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const d=e(81),s=e(12),o=e(9),_=e(88);class i extends d.Model{constructor(e){super(e)}_hit_test_nodes(e,t){if(!t.model.visible)return null;const n=t.node_view.glyph.hit_test(e);return null==n?null:t.node_view.model.view.convert_selection_from_subset(n)}_hit_test_edges(e,t){if(!t.model.visible)return null;const n=t.edge_view.glyph.hit_test(e);return null==n?null:t.edge_view.model.view.convert_selection_from_subset(n)}}n.GraphHitTestPolicy=i,i.__name__=\"GraphHitTestPolicy\";class r extends i{constructor(e){super(e)}hit_test(e,t){return this._hit_test_nodes(e,t)}do_selection(e,t,n,d){if(null==e)return!1;const s=t.node_renderer.data_source.selected;return s.update(e,n,d),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,n,d,s){if(null==e)return!1;const o=n.model.get_selection_manager().get_or_create_inspector(n.node_view.model);return o.update(e,d,s),n.node_view.model.data_source.setv({inspected:o},{silent:!0}),n.node_view.model.data_source.inspect.emit([n.node_view,{geometry:t}]),!o.is_empty()}}n.NodesOnly=r,r.__name__=\"NodesOnly\";class c extends i{constructor(e){super(e)}hit_test(e,t){return this._hit_test_nodes(e,t)}get_linked_edges(e,t,n){let d=[];\"selection\"==n?d=e.selected.indices.map(t=>e.data.index[t]):\"inspection\"==n&&(d=e.inspected.indices.map(t=>e.data.index[t]));const s=[];for(let e=0;e<t.data.start.length;e++)(o.contains(d,t.data.start[e])||o.contains(d,t.data.end[e]))&&s.push(e);const i=new _.Selection;for(const e of s)i.multiline_indices[e]=[0];return i.indices=s,i}do_selection(e,t,n,d){if(null==e)return!1;const s=t.node_renderer.data_source.selected;s.update(e,n,d);const o=t.edge_renderer.data_source.selected,_=this.get_linked_edges(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(_,n,d),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,n,d,s){if(null==e)return!1;const o=n.node_view.model.data_source.selection_manager.get_or_create_inspector(n.node_view.model);o.update(e,d,s),n.node_view.model.data_source.setv({inspected:o},{silent:!0});const _=n.edge_view.model.data_source.selection_manager.get_or_create_inspector(n.edge_view.model),i=this.get_linked_edges(n.node_view.model.data_source,n.edge_view.model.data_source,\"inspection\");return _.update(i,d,s),n.edge_view.model.data_source.setv({inspected:_},{silent:!0}),n.node_view.model.data_source.inspect.emit([n.node_view,{geometry:t}]),!o.is_empty()}}n.NodesAndLinkedEdges=c,c.__name__=\"NodesAndLinkedEdges\";class a extends i{constructor(e){super(e)}hit_test(e,t){return this._hit_test_edges(e,t)}get_linked_nodes(e,t,n){let d=[];\"selection\"==n?d=t.selected.indices:\"inspection\"==n&&(d=t.inspected.indices);const i=[];for(const e of d)i.push(t.data.start[e]),i.push(t.data.end[e]);const r=o.uniq(i).map(t=>s.indexOf(e.data.index,t));return new _.Selection({indices:r})}do_selection(e,t,n,d){if(null==e)return!1;const s=t.edge_renderer.data_source.selected;s.update(e,n,d);const o=t.node_renderer.data_source.selected,_=this.get_linked_nodes(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(_,n,d),t.edge_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,n,d,s){if(null==e)return!1;const o=n.edge_view.model.data_source.selection_manager.get_or_create_inspector(n.edge_view.model);o.update(e,d,s),n.edge_view.model.data_source.setv({inspected:o},{silent:!0});const _=n.node_view.model.data_source.selection_manager.get_or_create_inspector(n.node_view.model),i=this.get_linked_nodes(n.node_view.model.data_source,n.edge_view.model.data_source,\"inspection\");return _.update(i,d,s),n.node_view.model.data_source.setv({inspected:_},{silent:!0}),n.edge_view.model.data_source.inspect.emit([n.edge_view,{geometry:t}]),!o.is_empty()}}n.EdgesAndLinkedNodes=a,a.__name__=\"EdgesAndLinkedNodes\"},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=e(81);class o extends s.Model{do_selection(e,t,n,s){return null!==e&&(t.selected.update(e,n,s),t._select.emit(),!t.selected.is_empty())}}n.SelectionPolicy=o,o.__name__=\"SelectionPolicy\";class r extends o{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!==t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_intersection(t);return e}return null}}n.IntersectRenderers=r,r.__name__=\"IntersectRenderers\";class c extends o{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!==t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_union(t);return e}return null}}n.UnionRenderers=c,c.__name__=\"UnionRenderers\"},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.concat=function(t,...e){let n=t.length;for(const t of e)n+=t.length;const o=new t.constructor(n);o.set(t,0);let c=t.length;for(const t of e)o.set(t,c),c+=t.length;return o}},\n      function _(n,o,e){function t(...n){const o=new Set;for(const e of n)for(const n of e)o.add(n);return o}Object.defineProperty(e,\"__esModule\",{value:!0}),e.union=t,e.intersection=function(n,...o){const e=new Set;n:for(const t of n){for(const n of o)if(!n.has(t))continue n;e.add(t)}return e},e.difference=function(n,...o){const e=new Set(n);for(const n of t(...o))e.delete(n);return e}},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(14);class o{constructor(e){this.document=e}}s.DocumentEvent=o,o.__name__=\"DocumentEvent\";class r extends o{constructor(e,t,s){super(e),this.events=t,this.setter_id=s}}s.DocumentEventBatch=r,r.__name__=\"DocumentEventBatch\";class d extends o{}s.DocumentChangedEvent=d,d.__name__=\"DocumentChangedEvent\";class _ extends d{constructor(e,t,s){super(e),this.msg_type=t,this.msg_data=s}json(e){const t=this.msg_data,s=n.HasProps._value_to_json(t),o=new Set;return n.HasProps._value_record_references(t,o,{recursive:!0}),{kind:\"MessageSent\",msg_type:this.msg_type,msg_data:s}}}s.MessageSentEvent=_,_.__name__=\"MessageSentEvent\";class i extends d{constructor(e,t,s,n,o,r,d){super(e),this.model=t,this.attr=s,this.old=n,this.new_=o,this.setter_id=r,this.hint=d}json(e){if(\"id\"===this.attr)throw new Error(\"'id' field should never change, whatever code just set it is wrong\");if(null!=this.hint)return this.hint.json(e);const t=this.new_,s=n.HasProps._value_to_json(t),o=new Set;n.HasProps._value_record_references(t,o,{recursive:!0}),o.has(this.model)&&this.model!==t&&o.delete(this.model);for(const t of o)e.add(t);return{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:s}}}s.ModelChangedEvent=i,i.__name__=\"ModelChangedEvent\";class a extends d{constructor(e,t,s){super(e),this.column_source=t,this.patches=s}json(e){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}}}s.ColumnsPatchedEvent=a,a.__name__=\"ColumnsPatchedEvent\";class c extends d{constructor(e,t,s,n){super(e),this.column_source=t,this.data=s,this.rollover=n}json(e){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}}}s.ColumnsStreamedEvent=c,c.__name__=\"ColumnsStreamedEvent\";class h extends d{constructor(e,t,s){super(e),this.title=t,this.setter_id=s}json(e){return{kind:\"TitleChanged\",title:this.title}}}s.TitleChangedEvent=h,h.__name__=\"TitleChangedEvent\";class u extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}json(e){return n.HasProps._value_record_references(this.model,e,{recursive:!0}),{kind:\"RootAdded\",model:this.model.ref()}}}s.RootAddedEvent=u,u.__name__=\"RootAddedEvent\";class l extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}json(e){return{kind:\"RootRemoved\",model:this.model.ref()}}}s.RootRemovedEvent=l,l.__name__=\"RootRemovedEvent\"},\n      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1),l=e(123),_=i.__importStar(e(28));class o extends l.UpperLowerView{connect_signals(){super.connect_signals();const e=()=>this.set_data(this.model.source);this.connect(this.model.change,e),this.connect(this.model.source.streaming,e),this.connect(this.model.source.patching,e),this.connect(this.model.source.change,e)}_render(){this._map_data();const{ctx:e}=this.layer;e.beginPath(),e.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let s=0,t=this._lower_sx.length;s<t;s++)e.lineTo(this._lower_sx[s],this._lower_sy[s]);for(let s=this._upper_sx.length-1;s>=0;s--)e.lineTo(this._upper_sx[s],this._upper_sy[s]);e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(e),e.fill()),e.beginPath(),e.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let s=0,t=this._lower_sx.length;s<t;s++)e.lineTo(this._lower_sx[s],this._lower_sy[s]);this.visuals.line.doit&&(this.visuals.line.set_value(e),e.stroke()),e.beginPath(),e.moveTo(this._upper_sx[0],this._upper_sy[0]);for(let s=0,t=this._upper_sx.length;s<t;s++)e.lineTo(this._upper_sx[s],this._upper_sy[s]);this.visuals.line.doit&&(this.visuals.line.set_value(e),e.stroke())}}t.BandView=o,o.__name__=\"BandView\";class n extends l.UpperLower{constructor(e){super(e)}static init_Band(){this.prototype.default_view=o,this.mixins([_.Line,_.Fill]),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}}t.Band=n,n.__name__=\"Band\",n.init_Band()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),o=e(36),r=e(85),p=s.__importStar(e(18));class _ extends o.AnnotationView{initialize(){super.initialize(),this.set_data(this.model.source)}set_data(e){super.set_data(e),this.visuals.warm_cache(e),this.plot_view.request_render()}_map_data(){const{frame:e}=this.plot_view,t=this.model.dimension,i=this.coordinates.x_scale,s=this.coordinates.y_scale,o=\"height\"==t?s:i,r=\"height\"==t?i:s,p=\"height\"==t?e.yview:e.xview,_=\"height\"==t?e.xview:e.yview;let a,n,h;a=\"data\"==this.model.properties.lower.units?o.v_compute(this._lower):p.v_compute(this._lower),n=\"data\"==this.model.properties.upper.units?o.v_compute(this._upper):p.v_compute(this._upper),h=\"data\"==this.model.properties.base.units?r.v_compute(this._base):_.v_compute(this._base);const[c,u]=\"height\"==t?[1,0]:[0,1],l=[a,h],w=[n,h];this._lower_sx=l[c],this._lower_sy=l[u],this._upper_sx=w[c],this._upper_sy=w[u]}}i.UpperLowerView=_,_.__name__=\"UpperLowerView\";class a extends o.Annotation{constructor(e){super(e)}static init_UpperLower(){this.define({lower:[p.DistanceSpec],upper:[p.DistanceSpec],base:[p.DistanceSpec],dimension:[p.Dimension,\"height\"],source:[p.Instance,()=>new r.ColumnDataSource]})}}i.UpperLower=a,a.__name__=\"UpperLower\",a.init_UpperLower()},\n      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const e=t(1),o=t(36),n=t(15),l=e.__importStar(t(28)),a=e.__importStar(t(18)),h=t(79);s.EDGE_TOLERANCE=2.5;class r extends o.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_paint(this)),this.connect(this.model.data_update,()=>this.plot_view.request_paint(this))}_render(){if(null==this.model.left&&null==this.model.right&&null==this.model.top&&null==this.model.bottom)return;const{frame:t}=this.plot_view,i=this.coordinates.x_scale,s=this.coordinates.y_scale,e=(t,i,s,e,o)=>{let n;return n=null!=t?this.model.screen?t:\"data\"==i?s.compute(t):e.compute(t):o,n};this.sleft=e(this.model.left,this.model.left_units,i,t.xview,t.bbox.left),this.sright=e(this.model.right,this.model.right_units,i,t.xview,t.bbox.right),this.stop=e(this.model.top,this.model.top_units,s,t.yview,t.bbox.top),this.sbottom=e(this.model.bottom,this.model.bottom_units,s,t.yview,t.bbox.bottom),this._paint_box(this.sleft,this.sright,this.sbottom,this.stop)}_paint_box(t,i,s,e){const{ctx:o}=this.layer;o.save(),o.beginPath(),o.rect(t,e,i-t,s-e),this.visuals.fill.doit&&(this.visuals.fill.set_value(o),o.fill()),this.visuals.line.doit&&(this.visuals.line.set_value(o),o.stroke()),o.restore()}interactive_bbox(){const t=this.model.properties.line_width.value()+s.EDGE_TOLERANCE;return new h.BBox({x0:this.sleft-t,y0:this.stop-t,x1:this.sright+t,y1:this.sbottom+t})}interactive_hit(t,i){if(null==this.model.in_cursor)return!1;return this.interactive_bbox().contains(t,i)}cursor(t,i){return Math.abs(t-this.sleft)<3||Math.abs(t-this.sright)<3?this.model.ew_cursor:Math.abs(i-this.sbottom)<3||Math.abs(i-this.stop)<3?this.model.ns_cursor:t>this.sleft&&t<this.sright&&i>this.stop&&i<this.sbottom?this.model.in_cursor:null}}s.BoxAnnotationView=r,r.__name__=\"BoxAnnotationView\";class u extends o.Annotation{constructor(t){super(t)}static init_BoxAnnotation(){this.prototype.default_view=r,this.mixins([l.Line,l.Fill]),this.define({render_mode:[a.RenderMode,\"canvas\"],top:[a.Number,null],top_units:[a.SpatialUnits,\"data\"],bottom:[a.Number,null],bottom_units:[a.SpatialUnits,\"data\"],left:[a.Number,null],left_units:[a.SpatialUnits,\"data\"],right:[a.Number,null],right_units:[a.SpatialUnits,\"data\"]}),this.internal({screen:[a.Boolean,!1],ew_cursor:[a.String,null],ns_cursor:[a.String,null],in_cursor:[a.String,null]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}initialize(){super.initialize(),this.data_update=new n.Signal0(this,\"data_update\")}update({left:t,right:i,top:s,bottom:e}){this.setv({left:t,right:i,top:s,bottom:e,screen:!0},{silent:!0}),this.data_update.emit()}}s.BoxAnnotation=u,u.__name__=\"BoxAnnotation\",u.init_BoxAnnotation()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=t(1),a=t(36),s=t(126),r=t(130),n=t(132),l=t(145),_=t(156),h=t(157),m=t(158),d=o.__importStar(t(28)),c=o.__importStar(t(18)),u=o.__importStar(t(159)),g=t(9),p=t(12),f=t(8),b=t(11);class v extends a.AnnotationView{initialize(){super.initialize(),this._set_canvas_image()}connect_signals(){super.connect_signals(),this.connect(this.model.ticker.change,()=>this.plot_view.request_render()),this.connect(this.model.formatter.change,()=>this.plot_view.request_render()),null!=this.model.color_mapper&&this.connect(this.model.color_mapper.change,()=>{this._set_canvas_image(),this.plot_view.request_render()})}_get_size(){if(null==this.model.color_mapper)return{width:0,height:0};{const{width:t,height:e}=this.compute_legend_dimensions();return{width:t,height:e}}}_set_canvas_image(){if(null==this.model.color_mapper)return;let t,e,{palette:i}=this.model.color_mapper;switch(\"vertical\"==this.model.orientation&&(i=g.reversed(i)),this.model.orientation){case\"vertical\":[t,e]=[1,i.length];break;case\"horizontal\":[t,e]=[i.length,1]}const o=document.createElement(\"canvas\");o.width=t,o.height=e;const a=o.getContext(\"2d\"),s=a.getImageData(0,0,t,e),r=new n.LinearColorMapper({palette:i}).rgba_mapper.v_compute(g.range(0,i.length));s.data.set(r),a.putImageData(s,0,0),this.image=o}compute_legend_dimensions(){const t=this._computed_image_dimensions(),[e,i]=[t.height,t.width],o=this._get_label_extent(),a=this._title_extent(),s=this._tick_extent(),{padding:r}=this.model;let n,l;switch(this.model.orientation){case\"vertical\":n=e+a+2*r,l=i+s+o+2*r;break;case\"horizontal\":n=e+a+s+o+2*r,l=i+2*r}return{width:l,height:n}}compute_legend_location(){const t=this.compute_legend_dimensions(),[e,i]=[t.height,t.width],o=this.model.margin,a=null!=this.panel?this.panel:this.plot_view.frame,[s,r]=a.bbox.ranges,{location:n}=this.model;let l,_;if(f.isString(n))switch(n){case\"top_left\":l=s.start+o,_=r.start+o;break;case\"top_center\":l=(s.end+s.start)/2-i/2,_=r.start+o;break;case\"top_right\":l=s.end-o-i,_=r.start+o;break;case\"bottom_right\":l=s.end-o-i,_=r.end-o-e;break;case\"bottom_center\":l=(s.end+s.start)/2-i/2,_=r.end-o-e;break;case\"bottom_left\":l=s.start+o,_=r.end-o-e;break;case\"center_left\":l=s.start+o,_=(r.end+r.start)/2-e/2;break;case\"center\":l=(s.end+s.start)/2-i/2,_=(r.end+r.start)/2-e/2;break;case\"center_right\":l=s.end-o-i,_=(r.end+r.start)/2-e/2}else if(f.isArray(n)&&2==n.length){const[t,i]=n;l=a.xview.compute(t),_=a.yview.compute(i)-e}else b.unreachable();return{sx:l,sy:_}}_render(){if(null==this.model.color_mapper)return;const{ctx:t}=this.layer;t.save();const{sx:e,sy:i}=this.compute_legend_location();t.translate(e,i),this._draw_bbox(t);const o=this._get_image_offset();t.translate(o.x,o.y),this._draw_image(t);const a=this.tick_info();this._draw_major_ticks(t,a),this._draw_minor_ticks(t,a),this._draw_major_labels(t,a),this.model.title&&this._draw_title(t),t.restore()}_draw_bbox(t){const e=this.compute_legend_dimensions();t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(0,0,e.width,e.height)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()}_draw_image(t){const e=this._computed_image_dimensions();t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this.image,0,0,e.width,e.height),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()}_draw_major_ticks(t,e){if(!this.visuals.major_tick_line.doit)return;const[i,o]=this._normals(),a=this._computed_image_dimensions(),[s,r]=[a.width*i,a.height*o],[n,l]=e.coords.major,_=this.model.major_tick_in,h=this.model.major_tick_out;t.save(),t.translate(s,r),this.visuals.major_tick_line.set_value(t);for(let e=0,a=n.length;e<a;e++)t.beginPath(),t.moveTo(Math.round(n[e]+i*h),Math.round(l[e]+o*h)),t.lineTo(Math.round(n[e]-i*_),Math.round(l[e]-o*_)),t.stroke();t.restore()}_draw_minor_ticks(t,e){if(!this.visuals.minor_tick_line.doit)return;const[i,o]=this._normals(),a=this._computed_image_dimensions(),[s,r]=[a.width*i,a.height*o],[n,l]=e.coords.minor,_=this.model.minor_tick_in,h=this.model.minor_tick_out;t.save(),t.translate(s,r),this.visuals.minor_tick_line.set_value(t);for(let e=0,a=n.length;e<a;e++)t.beginPath(),t.moveTo(Math.round(n[e]+i*h),Math.round(l[e]+o*h)),t.lineTo(Math.round(n[e]-i*_),Math.round(l[e]-o*_)),t.stroke();t.restore()}_draw_major_labels(t,e){if(!this.visuals.major_label_text.doit)return;const[i,o]=this._normals(),a=this._computed_image_dimensions(),[s,r]=[a.width*i,a.height*o],n=this.model.label_standoff+this._tick_extent(),[l,_]=[n*i,n*o],[h,m]=e.coords.major,d=e.labels.major;this.visuals.major_label_text.set_value(t),t.save(),t.translate(s+l,r+_);for(let e=0,a=h.length;e<a;e++)t.fillText(d[e],Math.round(h[e]+i*this.model.label_standoff),Math.round(m[e]+o*this.model.label_standoff));t.restore()}_draw_title(t){this.visuals.title_text.doit&&(t.save(),this.visuals.title_text.set_value(t),t.fillText(this.model.title,0,-this.model.title_standoff),t.restore())}_get_label_extent(){const t=this.tick_info().labels.major;let e;if(g.is_empty(t))e=0;else{const{ctx:i}=this.layer;switch(i.save(),this.visuals.major_label_text.set_value(i),this.model.orientation){case\"vertical\":e=g.max(t.map(t=>i.measureText(t.toString()).width));break;case\"horizontal\":e=u.measure_font(this.visuals.major_label_text.font_value()).height}e+=this.model.label_standoff,i.restore()}return e}_get_image_offset(){return{x:this.model.padding,y:this.model.padding+this._title_extent()}}_normals(){return\"vertical\"==this.model.orientation?[1,0]:[0,1]}_title_extent(){const t=this.model.title_text_font+\" \"+this.model.title_text_font_size+\" \"+this.model.title_text_font_style;return this.model.title?u.measure_font(t).height+this.model.title_standoff:0}_tick_extent(){return g.max([this.model.major_tick_out,this.model.minor_tick_out])}_computed_image_dimensions(){const t=this.plot_view.frame.bbox.height,e=this.plot_view.frame.bbox.width,i=this._title_extent();let o,a;switch(this.model.orientation){case\"vertical\":\"auto\"==this.model.height?null!=this.panel?o=t-2*this.model.padding-i:(o=g.max([25*this.model.color_mapper.palette.length,.3*t]),o=g.min([o,.8*t-2*this.model.padding-i])):o=this.model.height,a=\"auto\"==this.model.width?25:this.model.width;break;case\"horizontal\":o=\"auto\"==this.model.height?25:this.model.height,\"auto\"==this.model.width?null!=this.panel?a=e-2*this.model.padding:(a=g.max([25*this.model.color_mapper.palette.length,.3*e]),a=g.min([a,.8*e-2*this.model.padding])):a=this.model.width}return{width:a,height:o}}_tick_coordinate_scale(t){const e={source_range:new m.Range1d({start:this.model.color_mapper.metrics.min,end:this.model.color_mapper.metrics.max}),target_range:new m.Range1d({start:0,end:t})},{color_mapper:i}=this.model;if(i instanceof n.LinearColorMapper)return new l.LinearScale(e);if(i instanceof n.LogColorMapper)return new h.LogScale(e);if(i instanceof n.ScanningColorMapper){const{binning:t}=i.metrics;return new _.LinearInterpolationScale(Object.assign(Object.assign({},e),{binning:t}))}b.unreachable()}_format_major_labels(t,e){const i=this.model.formatter.doFormat(t,null);for(let t=0,o=e.length;t<o;t++)e[t]in this.model.major_label_overrides&&(i[t]=this.model.major_label_overrides[e[t]]);return i}tick_info(){const t=this._computed_image_dimensions();let e;switch(this.model.orientation){case\"vertical\":e=t.height;break;case\"horizontal\":e=t.width}const i=this._tick_coordinate_scale(e),[o,a]=this._normals(),[s,r]=[this.model.color_mapper.metrics.min,this.model.color_mapper.metrics.max],n=this.model.ticker.get_ticks(s,r,null,null,this.model.ticker.desired_num_ticks),l=n.major,_=n.minor,h=[[],[]],m=[[],[]];for(let t=0,e=l.length;t<e;t++)l[t]<s||l[t]>r||(h[o].push(l[t]),h[a].push(0));for(let t=0,e=_.length;t<e;t++)_[t]<s||_[t]>r||(m[o].push(_[t]),m[a].push(0));const d={major:this._format_major_labels(h[o],l)},c={major:[[],[]],minor:[[],[]]};return c.major[o]=i.v_compute(h[o]),c.minor[o]=i.v_compute(m[o]),c.major[a]=h[a],c.minor[a]=m[a],\"vertical\"==this.model.orientation&&(c.major[o]=p.map(c.major[o],t=>e-t),c.minor[o]=p.map(c.minor[o],t=>e-t)),{coords:c,labels:d}}}i.ColorBarView=v,v.__name__=\"ColorBarView\";class w extends a.Annotation{constructor(t){super(t)}static init_ColorBar(){this.prototype.default_view=v,this.mixins([[\"major_label_\",d.Text],[\"title_\",d.Text],[\"major_tick_\",d.Line],[\"minor_tick_\",d.Line],[\"border_\",d.Line],[\"bar_\",d.Line],[\"background_\",d.Fill]]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,()=>new s.BasicTicker],formatter:[c.Instance,()=>new r.BasicTickFormatter],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"11px\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}}i.ColorBar=w,w.__name__=\"ColorBar\",w.init_ColorBar()},\n      function _(e,c,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(127);class r extends i.AdaptiveTicker{constructor(e){super(e)}}s.BasicTicker=r,r.__name__=\"BasicTicker\"},\n      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const a=t(1),s=t(128),n=t(9),r=a.__importStar(t(18));class _ extends s.ContinuousTicker{constructor(t){super(t)}static init_AdaptiveTicker(){this.define({base:[r.Number,10],mantissas:[r.Array,[1,2,5]],min_interval:[r.Number,0],max_interval:[r.Number]})}initialize(){super.initialize();const t=n.nth(this.mantissas,-1)/this.base,i=n.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t,...this.mantissas,i],this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()}get_interval(t,i,e){const a=i-t,s=this.get_ideal_interval(t,i,e),r=Math.floor(function(t,i=Math.E){return Math.log(t)/Math.log(i)}(s/this.base_factor,this.base)),_=this.base**r*this.base_factor,h=this.extended_mantissas,m=h.map(t=>Math.abs(e-a/(t*_))),o=h[n.argmin(m)];return c=o*_,l=this.get_min_interval(),u=this.get_max_interval(),Math.max(l,Math.min(u,c));var c,l,u}}e.AdaptiveTicker=_,_.__name__=\"AdaptiveTicker\",_.init_AdaptiveTicker()},\n      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(1),r=t(129),s=n.__importStar(t(18)),o=t(9);class _ extends r.Ticker{constructor(t){super(t)}static init_ContinuousTicker(){this.define({num_minor_ticks:[s.Number,5],desired_num_ticks:[s.Number,6]})}get_ticks(t,i,e,n,r){return this.get_ticks_no_defaults(t,i,n,this.desired_num_ticks)}get_ticks_no_defaults(t,i,e,n){const r=this.get_interval(t,i,n),s=Math.floor(t/r),_=Math.ceil(i/r);let c;c=isFinite(s)&&isFinite(_)?o.range(s,_+1):[];const u=c.map(t=>t*r).filter(e=>t<=e&&e<=i),a=this.num_minor_ticks,l=[];if(a>0&&u.length>0){const e=r/a,n=o.range(0,a).map(t=>t*e);for(const e of n.slice(1)){const n=u[0]-e;t<=n&&n<=i&&l.push(n)}for(const e of u)for(const r of n){const n=e+r;t<=n&&n<=i&&l.push(n)}}return{major:u,minor:l}}get_min_interval(){return this.min_interval}get_max_interval(){return null!=this.max_interval?this.max_interval:1/0}get_ideal_interval(t,i,e){return(i-t)/e}}e.ContinuousTicker=_,_.__name__=\"ContinuousTicker\",_.init_ContinuousTicker()},\n      function _(e,c,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(81);class r extends o.Model{constructor(e){super(e)}}n.Ticker=r,r.__name__=\"Ticker\"},\n      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=i(1),s=i(131),n=r.__importStar(i(18));class o extends s.TickFormatter{constructor(i){super(i),this.last_precision=3}static init_BasicTickFormatter(){this.define({precision:[n.Any,\"auto\"],use_scientific:[n.Boolean,!0],power_limit_high:[n.Number,5],power_limit_low:[n.Number,-3]})}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}_need_sci(i){if(!this.use_scientific)return!1;const{scientific_limit_high:t}=this,{scientific_limit_low:e}=this,r=i.length<2?0:Math.abs(i[1]-i[0])/1e4;for(const s of i){const i=Math.abs(s);if(!(i<=r)&&(i>=t||i<=e))return!0}return!1}_format_with_precision(i,t,e){const r=new Array(i.length);if(t)for(let t=0,s=i.length;t<s;t++)r[t]=i[t].toExponential(e);else for(let t=0,s=i.length;t<s;t++)r[t]=i[t].toFixed(e).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");return r}_auto_precision(i,t){const e=new Array(i.length),r=this.last_precision<=15;i:for(let s=this.last_precision;r?s<=15:s>=1;r?s++:s--){if(t){e[0]=i[0].toExponential(s);for(let t=1;t<i.length;t++)if(e[t]==e[t-1])continue i;this.last_precision=s;break}e[0]=i[0].toFixed(s).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");for(let t=1;t<i.length;t++)if(e[t]=i[t].toFixed(s).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),e[t]==e[t-1])continue i;this.last_precision=s;break}return this.last_precision}doFormat(i,t){if(0==i.length)return[];const e=this._need_sci(i),r=\"auto\"==this.precision?this._auto_precision(i,e):this.precision;return this._format_with_precision(i,e,r)}}e.BasicTickFormatter=o,o.__name__=\"BasicTickFormatter\",o.init_BasicTickFormatter()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(81);class c extends r.Model{constructor(e){super(e)}}o.TickFormatter=c,c.__name__=\"TickFormatter\"},\n      function _(r,a,o){Object.defineProperty(o,\"__esModule\",{value:!0});var e=r(133);o.CategoricalColorMapper=e.CategoricalColorMapper;var p=r(138);o.CategoricalMarkerMapper=p.CategoricalMarkerMapper;var l=r(139);o.CategoricalPatternMapper=l.CategoricalPatternMapper;var C=r(140);o.ContinuousColorMapper=C.ContinuousColorMapper;var M=r(135);o.ColorMapper=M.ColorMapper;var n=r(141);o.LinearColorMapper=n.LinearColorMapper;var t=r(142);o.LogColorMapper=t.LogColorMapper;var i=r(143);o.ScanningColorMapper=i.ScanningColorMapper;var c=r(144);o.EqHistColorMapper=c.EqHistColorMapper},\n      function _(r,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const o=r(1),a=r(134),c=r(135),i=o.__importStar(r(18));class s extends c.ColorMapper{constructor(r){super(r)}static init_CategoricalColorMapper(){this.define({factors:[i.Array],start:[i.Number,0],end:[i.Number]})}_v_compute(r,t,e,{nan_color:o}){a.cat_v_compute(r,this.factors,e,t,this.start,this.end,o)}}e.CategoricalColorMapper=s,s.__name__=\"CategoricalColorMapper\",s.init_CategoricalColorMapper()},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const l=e(12),i=e(8);function u(e,n){if(e.length!=n.length)return!1;for(let t=0,l=e.length;t<l;t++)if(e[t]!==n[t])return!1;return!0}t._cat_equals=u,t.cat_v_compute=function(e,n,t,c,f,o,r){for(let _=0,g=e.length;_<g;_++){let g,s,d=e[_];i.isString(d)?g=l.index_of(n,d):(null!=f?d=null!=o?d.slice(f,o):d.slice(f):null!=o&&(d=d.slice(0,o)),g=1==d.length?l.index_of(n,d[0]):l.find_index(n,e=>u(e,d))),s=g<0||g>=t.length?r:t[g],c[_]=s}}},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),o=t(136),_=n.__importStar(t(18)),i=t(8),l=t(22),c=t(32);function a(t){return i.isNumber(t)?t:(\"#\"!=t[0]&&(t=l.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16))}function s(t){const e=new Uint32Array(t.length);for(let r=0,n=t.length;r<n;r++)e[r]=a(t[r]);return e}function p(t){if(c.is_little_endian){const e=new DataView(t.buffer);for(let r=0,n=t.length;r<n;r++)e.setUint32(4*r,t[r])}return new Uint8Array(t.buffer)}r._convert_color=a,r._convert_palette=s,r._uint32_to_rgba=p;class u extends o.Mapper{constructor(t){super(t)}static init_ColorMapper(){this.define({palette:[_.Any],nan_color:[_.Color,\"gray\"]})}v_compute(t){const e=new Array(t.length);return this._v_compute(t,e,this.palette,this._colors(t=>t)),e}get rgba_mapper(){const t=this,e=s(this.palette),r=this._colors(a);return{v_compute(n){const o=new Uint32Array(n.length);return t._v_compute(n,o,e,r),p(o)}}}_colors(t){return{nan_color:t(this.nan_color)}}}r.ColorMapper=u,u.__name__=\"ColorMapper\",u.init_ColorMapper()},\n      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(137);class s extends o.Transform{constructor(e){super(e)}compute(e){throw new Error(\"mapping single values is not supported\")}}n.Mapper=s,s.__name__=\"Mapper\"},\n      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(81);class s extends r.Model{constructor(e){super(e)}}o.Transform=s,s.__name__=\"Transform\"},\n      function _(r,e,a){Object.defineProperty(a,\"__esModule\",{value:!0});const t=r(1),s=r(134),i=r(136),c=t.__importStar(r(18));class n extends i.Mapper{constructor(r){super(r)}static init_CategoricalMarkerMapper(){this.define({factors:[c.Array],markers:[c.Array],start:[c.Number,0],end:[c.Number],default_value:[c.MarkerType,\"circle\"]})}v_compute(r){const e=new Array(r.length);return s.cat_v_compute(r,this.factors,this.markers,e,this.start,this.end,this.default_value),e}}a.CategoricalMarkerMapper=n,n.__name__=\"CategoricalMarkerMapper\",n.init_CategoricalMarkerMapper()},\n      function _(t,e,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=t(1),n=t(134),s=t(136),i=r.__importStar(t(18));class c extends s.Mapper{constructor(t){super(t)}static init_CategoricalPatternMapper(){this.define({factors:[i.Array],patterns:[i.Array],start:[i.Number,0],end:[i.Number],default_value:[i.HatchPatternType,\" \"]})}v_compute(t){const e=new Array(t.length);return n.cat_v_compute(t,this.factors,this.patterns,e,this.start,this.end,this.default_value),e}}a.CategoricalPatternMapper=c,c.__name__=\"CategoricalPatternMapper\",c.init_CategoricalPatternMapper()},\n      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(135),s=t(90),l=t(9),i=t(8);class c extends n.ColorMapper{constructor(t){super(t),this._scan_data=null}static init_ContinuousColorMapper(){this.define(({Number:t,String:o,Null:e,Ref:n,Color:l,Or:i,Tuple:c,Array:a})=>({high:[i(t,e),null],low:[i(t,e),null],high_color:[i(l,e),null],low_color:[i(l,e),null],domain:[a(c(n(s.GlyphRenderer),i(o,a(o)))),[]]}))}connect_signals(){super.connect_signals();const t=()=>{for(const[t]of this.domain)this.connect(t.view.change,()=>this.update_data()),this.connect(t.data_source.selected.change,()=>this.update_data())};this.connect(this.properties.domain.change,()=>t()),t()}update_data(){const{domain:t,palette:o}=this,e=[...this._collect(t)];this._scan_data=this.scan(e,o.length),this.change.emit()}get metrics(){return null==this._scan_data&&this.update_data(),this._scan_data}*_collect(t){for(const[o,e]of t)for(const t of i.isArray(e)?e:[e]){let e=o.data_source.get_column(t);e=o.view.indices.select(e);const n=o.view.masked,s=o.data_source.selected.indices;let c;if(null!=n&&s.length>0?c=l.intersection([...n],s):null!=n?c=[...n]:s.length>0&&(c=s),null!=c&&(e=l.map(c,t=>e[t])),e.length>0&&!i.isNumber(e[0]))for(const t of e)yield*t;else yield*e}}_v_compute(t,o,e,n){const{nan_color:s}=n;let{low_color:i,high_color:c}=n;null==i&&(i=e[0]),null==c&&(c=e[e.length-1]);const{domain:a}=this,r=l.is_empty(a)?t:[...this._collect(a)];this._scan_data=this.scan(r,e.length);for(let n=0,l=t.length;n<l;n++){const l=t[n];isNaN(l)?o[n]=s:o[n]=this.cmap(l,e,i,c,this._scan_data)}}_colors(t){return Object.assign(Object.assign({},super._colors(t)),{low_color:null!=this.low_color?t(this.low_color):void 0,high_color:null!=this.high_color?t(this.high_color):void 0})}}e.ContinuousColorMapper=c,c.__name__=\"ContinuousColorMapper\",c.init_ContinuousColorMapper()},\n      function _(n,r,o){Object.defineProperty(o,\"__esModule\",{value:!0});const e=n(140),t=n(12);class a extends e.ContinuousColorMapper{constructor(n){super(n)}scan(n,r){const o=null!=this.low?this.low:t.min(n),e=null!=this.high?this.high:t.max(n);return{max:e,min:o,norm_factor:1/(e-o),normed_interval:1/r}}cmap(n,r,o,e,t){const a=r.length-1;if(n==t.max)return r[a];const i=(n-t.min)*t.norm_factor,l=Math.floor(i/t.normed_interval);return l<0?o:l>a?e:r[l]}}o.LinearColorMapper=a,a.__name__=\"LinearColorMapper\"},\n      function _(o,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=o(140),r=o(12);class l extends e.ContinuousColorMapper{constructor(o){super(o)}scan(o,t){const n=null!=this.low?this.low:r.min(o),e=null!=this.high?this.high:r.max(o);return{max:e,min:n,scale:t/(Math.log(e)-Math.log(n))}}cmap(o,t,n,e,r){const l=t.length-1;if(o>r.max)return e;if(o==r.max)return t[l];if(o<r.min)return n;const a=Math.log(o)-Math.log(r.min);let s=Math.floor(a*r.scale);return s>l&&(s=l),t[s]}}n.LogColorMapper=l,l.__name__=\"LogColorMapper\"},\n      function _(n,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=n(140),o=n(12);class t extends i.ContinuousColorMapper{constructor(n){super(n)}cmap(n,e,r,i,t){if(n<t.binning[0])return r;if(n>t.binning[t.binning.length-1])return i;return e[o.left_edge_index(n,t.binning)]}}r.ScanningColorMapper=t,t.__name__=\"ScanningColorMapper\"},\n      function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=n(1),o=n(143),r=n(12),s=n(9),a=i.__importStar(n(18)),l=n(19);class p extends o.ScanningColorMapper{constructor(n){super(n)}static init_EqHistColorMapper(){this.define({bins:[a.Int,65536]})}scan(n,t){const e=null!=this.low?this.low:r.min(n),i=null!=this.high?this.high:r.max(n),o=this.bins,a=s.linspace(e,i,o+1),p=r.bin_counts(n,a),c=new Array(o);for(let n=0,t=a.length;n<t-1;n++){const t=a[n],e=a[n+1];c[n]=(t+e)/2}const h=s.cumsum(p),u=h[h.length-1],g=r.map(h,n=>n/u);let m=t-1,_=[],M=0,f=2*t;for(;m!=t&&M<4&&0!=m;){const n=f/m;if(n>1e3)break;f=Math.round(Math.max(t*n,t));const e=s.range(0,f),i=r.map(g,n=>n*(f-1));_=r.interpolate(e,i,c);m=s.uniq(_).length-1,M++}if(0==m){_=[e,i];for(let n=0;n<t-1;n++)_.push(i)}else _=_.slice(_.length-t-1),m!=t&&l.logger.warn(\"EqHistColorMapper warning: Histogram equalization did not converge.\");return{min:e,max:i,binning:_}}}e.EqHistColorMapper=p,p.__name__=\"EqHistColorMapper\",p.init_EqHistColorMapper()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),i=e(146),_=r.__importStar(e(18));class a extends i.ContinuousScale{constructor(e){super(e)}static init_LinearScale(){this.internal({scan_result:[_.Any]})}compute(e){return this._linear_compute(e)}v_compute(e){return this._linear_v_compute(e)}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}n.LinearScale=a,a.__name__=\"LinearScale\",a.init_LinearScale()},\n      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const c=e(147);class s extends c.Scale{constructor(e){super(e)}}o.ContinuousScale=s,s.__name__=\"ContinuousScale\"},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),_=t(148),s=t(24),i=n.__importStar(t(18));class a extends _.Transform{constructor(t){super(t)}static init_Scale(){this.internal({source_range:[i.Any],target_range:[i.Any]})}r_compute(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]}r_invert(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]}_linear_compute(t){const[e,r]=this._linear_compute_state();return e*t+r}_linear_v_compute(t){const[e,r]=this._linear_compute_state(),n=new s.NumberArray(t.length);for(let _=0;_<t.length;_++)n[_]=e*t[_]+r;return n}_linear_invert(t){const[e,r]=this._linear_compute_state();return(t-r)/e}_linear_v_invert(t){const[e,r]=this._linear_compute_state(),n=new s.NumberArray(t.length);for(let _=0;_<t.length;_++)n[_]=(t[_]-r)/e;return n}_linear_compute_state(){const t=this.source_range.start,e=this.source_range.end,r=this.target_range.start,n=(this.target_range.end-r)/(e-t);return[n,-n*t+r]}}r.Scale=a,a.__name__=\"Scale\",a.init_Scale()},\n      function _(r,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});var e=r(149);t.CustomJSTransform=e.CustomJSTransform;var a=r(150);t.Dodge=a.Dodge;var n=r(152);t.Interpolator=n.Interpolator;var p=r(153);t.Jitter=p.Jitter;var l=r(154);t.LinearInterpolator=l.LinearInterpolator;var v=r(155);t.StepInterpolator=v.StepInterpolator;var s=r(137);t.Transform=s.Transform},\n      function _(t,r,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),e=t(137),a=n.__importStar(t(18)),o=t(13),u=t(29);class i extends e.Transform{constructor(t){super(t)}static init_CustomJSTransform(){this.define({args:[a.Any,{}],func:[a.String,\"\"],v_func:[a.String,\"\"]})}get names(){return o.keys(this.args)}get values(){return o.values(this.args)}_make_transform(t,r){return new Function(...this.names,t,u.use_strict(r))}get scalar_transform(){return this._make_transform(\"x\",this.func)}get vector_transform(){return this._make_transform(\"xs\",this.v_func)}compute(t){return this.scalar_transform(...this.values,t)}v_compute(t){return this.vector_transform(...this.values,t)}}s.CustomJSTransform=i,i.__name__=\"CustomJSTransform\",i.init_CustomJSTransform()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(1),r=e(151),_=o.__importStar(e(18));class i extends r.RangeTransform{constructor(e){super(e)}static init_Dodge(){this.define({value:[_.Number,0]})}_compute(e){return e+this.value}}n.Dodge=i,i.__name__=\"Dodge\",i.init_Dodge()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),s=e(137),a=e(98),i=r.__importStar(e(18)),o=e(24),c=e(8);class u extends s.Transform{constructor(e){super(e)}static init_RangeTransform(){this.define({range:[i.Instance]})}v_compute(e){let t;if(this.range instanceof a.FactorRange)t=this.range.v_synthetic(e);else{if(!c.isArrayableOf(e,c.isNumber))throw new Error(\"unexpected\");t=e}const n=new o.NumberArray(t.length);for(let e=0;e<t.length;e++){const r=t[e];n[e]=this._compute(r)}return n}compute(e){if(this.range instanceof a.FactorRange)return this._compute(this.range.synthetic(e));if(c.isNumber(e))return this._compute(e);throw new Error(\"unexpected\")}}n.RangeTransform=u,u.__name__=\"RangeTransform\",u.init_RangeTransform()},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),o=t(137),s=n.__importStar(t(18)),i=t(24),a=t(9),h=t(8);class d extends o.Transform{constructor(t){super(t),this._sorted_dirty=!0}static init_Interpolator(){this.define({x:[s.Any],y:[s.Any],data:[s.Any],clip:[s.Boolean,!0]})}connect_signals(){super.connect_signals(),this.connect(this.change,()=>this._sorted_dirty=!0)}v_compute(t){const e=new i.NumberArray(t.length);for(let r=0;r<t.length;r++){const n=t[r];e[r]=this.compute(n)}return e}sort(t=!1){if(!this._sorted_dirty)return;let e,r;if(h.isString(this.x)&&h.isString(this.y)&&null!=this.data){const t=this.data.columns();if(!a.includes(t,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!a.includes(t,this.y))throw new Error(\"The y parameter does not correspond to a valid column name defined in the data parameter\");e=this.data.get_column(this.x),r=this.data.get_column(this.y)}else{if(!h.isArray(this.x)||!h.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,r=this.y}if(e.length!==r.length)throw new Error(\"The length for x and y do not match\");if(e.length<2)throw new Error(\"x and y must have at least two elements to support interpolation\");const n=e.length,o=new Uint32Array(n);for(let t=0;t<n;t++)o[t]=t;const s=t?-1:1;o.sort((t,r)=>s*(e[t]-e[r])),this._x_sorted=new i.NumberArray(n),this._y_sorted=new i.NumberArray(n);for(let t=0;t<n;t++)this._x_sorted[t]=e[o[t]],this._y_sorted[t]=r[o[t]];this._sorted_dirty=!1}}r.Interpolator=d,d.__name__=\"Interpolator\",d.init_Interpolator()},\n      function _(t,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(1),s=t(151),n=r.__importStar(t(18)),u=r.__importStar(t(10));class o extends s.RangeTransform{constructor(t){super(t)}static init_Jitter(){this.define({mean:[n.Number,0],width:[n.Number,1],distribution:[n.Distribution,\"uniform\"]})}v_compute(t){return null!=this.previous_values&&this.previous_values.length==t.length||(this.previous_values=super.v_compute(t)),this.previous_values}_compute(t){switch(this.distribution){case\"uniform\":return t+this.mean+(u.random()-.5)*this.width;case\"normal\":return t+u.rnorm(this.mean,this.width)}}}e.Jitter=o,o.__name__=\"Jitter\",o.init_Jitter()},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const _=t(9),r=t(152);class o extends r.Interpolator{constructor(t){super(t)}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(t==this._x_sorted[0])return this._y_sorted[0];const s=_.find_last_index(this._x_sorted,s=>s<t),e=this._x_sorted[s],r=this._x_sorted[s+1],o=this._y_sorted[s],i=this._y_sorted[s+1];return o+(t-e)/(r-e)*(i-o)}}e.LinearInterpolator=o,o.__name__=\"LinearInterpolator\"},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=t(1),o=t(152),_=s.__importStar(t(18)),i=t(9);class n extends o.Interpolator{constructor(t){super(t)}static init_StepInterpolator(){this.define({mode:[_.StepMode,\"after\"]})}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}let e;switch(this.mode){case\"after\":e=i.find_last_index(this._x_sorted,e=>t>=e);break;case\"before\":e=i.find_index(this._x_sorted,e=>t<=e);break;case\"center\":{const r=this._x_sorted.map(e=>Math.abs(e-t)),s=i.min(r);e=i.find_index(r,t=>s===t);break}default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=e?this._y_sorted[e]:NaN}}r.StepInterpolator=n,n.__name__=\"StepInterpolator\",n.init_StepInterpolator()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),a=e(147),i=e(24),s=e(9),o=e(12),c=r.__importStar(e(18));class _ extends a.Scale{constructor(e){super(e)}static init_LinearInterpolationScale(){this.internal({binning:[c.Array]})}compute(e){return e}v_compute(e){const t=o.norm(e,this.source_range.start,this.source_range.end),n=s.linspace(0,1,this.binning.length),r=o.interpolate(t,n,this.binning),a=o.norm(r,this.source_range.start,this.source_range.end),c=this.target_range.end-this.target_range.start,_=o.map(a,e=>this.target_range.start+e*c);return new i.NumberArray(_)}invert(e){return e}v_invert(e){return new i.NumberArray(e)}}n.LinearInterpolationScale=_,_.__name__=\"LinearInterpolationScale\",_.init_LinearInterpolationScale()},\n      function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const a=t(146),r=t(24);class s extends a.ContinuousScale{constructor(t){super(t)}compute(t){const[e,o,a,r]=this._compute_state();let s;if(0==a)s=0;else{const n=(Math.log(t)-r)/a;s=isFinite(n)?n*e+o:NaN}return s}v_compute(t){const[e,o,a,s]=this._compute_state(),n=new r.NumberArray(t.length);if(0==a)for(let e=0;e<t.length;e++)n[e]=0;else for(let r=0;r<t.length;r++){const l=(Math.log(t[r])-s)/a;let c;c=isFinite(l)?l*e+o:NaN,n[r]=c}return n}invert(t){const[e,o,a,r]=this._compute_state(),s=(t-o)/e;return Math.exp(a*s+r)}v_invert(t){const[e,o,a,s]=this._compute_state(),n=new r.NumberArray(t.length);for(let r=0;r<t.length;r++){const l=(t[r]-o)/e;n[r]=Math.exp(a*l+s)}return n}_get_safe_factor(t,e){let o=t<0?0:t,a=e<0?0:e;if(o==a)if(0==o)[o,a]=[1,10];else{const t=Math.log(o)/Math.log(10);o=10**Math.floor(t),a=Math.ceil(t)!=Math.floor(t)?10**Math.ceil(t):10**(Math.ceil(t)+1)}return[o,a]}_compute_state(){const t=this.source_range.start,e=this.source_range.end,o=this.target_range.start,a=this.target_range.end-o,[r,s]=this._get_safe_factor(t,e);let n,l;0==r?(n=Math.log(s),l=0):(n=Math.log(s)-Math.log(r),l=Math.log(r));return[a,o,n,l]}}o.LogScale=s,s.__name__=\"LogScale\"},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),n=t(99),r=i.__importStar(t(18));class a extends n.Range{constructor(t){super(t)}static init_Range1d(){this.define({start:[r.Number,0],end:[r.Number,1],reset_start:[r.Number],reset_end:[r.Number]})}_set_auto_bounds(){if(\"auto\"==this.bounds){const t=Math.min(this.reset_start,this.reset_end),e=Math.max(this.reset_start,this.reset_end);this.setv({bounds:[t,e]},{silent:!0})}}initialize(){super.initialize(),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}reset(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()}}s.Range1d=a,a.__name__=\"Range1d\",a.init_Range1d()},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=t(72),i=new Map;n.measure_font=function(t){const e=i.get(t);if(null!=e)return e;const n=o.span({style:{font:t}},\"Hg\"),l=o.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),s=o.div({},n,l);document.body.appendChild(s);try{l.style.verticalAlign=\"baseline\";const e=o.offset(l).top-o.offset(n).top;l.style.verticalAlign=\"bottom\";const d=o.offset(l).top-o.offset(n).top,c={height:d,ascent:e,descent:d-e};return i.set(t,c),c}finally{document.body.removeChild(s)}};const l=new Map;n.measure_text=function(t,e){let n=l.get(e);if(null!=n){const e=n.get(t);if(null!=e)return e}else n=new Map,l.set(e,n);const i=o.div({style:{display:\"inline-block\",\"white-space\":\"nowrap\",font:e}},t);document.body.appendChild(i);try{const{width:e,height:o}=i.getBoundingClientRect();return n.set(t,{width:e,height:o}),{width:e,height:o}}finally{document.body.removeChild(i)}}},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),a=t(161),l=s.__importStar(t(28)),n=s.__importStar(t(18));class o extends a.TextAnnotationView{initialize(){super.initialize(),this.visuals.warm_cache()}_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_value(t);const{width:e,ascent:i}=t.measureText(this.model.text);return{width:e,height:i}}_render(){let t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180}const e=null!=this.panel?this.panel:this.plot_view.frame,i=this.coordinates.x_scale,s=this.coordinates.y_scale;let a=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),l=\"data\"==this.model.y_units?s.compute(this.model.y):e.yview.compute(this.model.y);a+=this.model.x_offset,l-=this.model.y_offset;(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,this.model.text,a,l,t)}}i.LabelView=o,o.__name__=\"LabelView\";class _ extends a.TextAnnotation{constructor(t){super(t)}static init_Label(){this.prototype.default_view=o,this.mixins([l.Text,[\"border_\",l.Line],[\"background_\",l.Fill]]),this.define({x:[n.Number],x_units:[n.SpatialUnits,\"data\"],y:[n.Number],y_units:[n.SpatialUnits,\"data\"],text:[n.String],angle:[n.Angle,0],angle_units:[n.AngleUnits,\"rad\"],x_offset:[n.Number,0],y_offset:[n.Number,0]}),this.override({background_fill_color:null,border_line_color:null})}}i.Label=_,_.__name__=\"Label\",_.init_Label()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),l=e(36),a=e(72),n=i.__importStar(e(18)),o=e(159),r=e(11);class _ extends l.AnnotationView{constructor(){super(...arguments),this.rotate=!0}initialize(){super.initialize(),\"css\"==this.model.render_mode&&(this.el=a.div(),this.plot_view.canvas_view.add_overlay(this.el))}remove(){null!=this.el&&a.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),\"css\"==this.model.render_mode?this.connect(this.model.change,()=>this.render()):this.connect(this.model.change,()=>this.plot_view.request_render())}render(){this.model.visible||\"css\"!=this.model.render_mode||a.undisplay(this.el),super.render()}_calculate_text_dimensions(e,t){const{width:s}=e.measureText(t),{height:i}=o.measure_font(this.visuals.text.font_value());return[s,i]}_calculate_bounding_box_dimensions(e,t){const[s,i]=this._calculate_text_dimensions(e,t);let l,a;switch(e.textAlign){case\"left\":l=0;break;case\"center\":l=-s/2;break;case\"right\":l=-s;break;default:r.unreachable()}switch(e.textBaseline){case\"top\":a=0;break;case\"middle\":a=-.5*i;break;case\"bottom\":a=-1*i;break;case\"alphabetic\":a=-.8*i;break;case\"hanging\":a=-.17*i;break;case\"ideographic\":a=-.83*i;break;default:r.unreachable()}return[l,a,s,i]}_canvas_text(e,t,s,i,l){this.visuals.text.set_value(e);const a=this._calculate_bounding_box_dimensions(e,t);e.save(),e.beginPath(),e.translate(s,i),l&&e.rotate(l),e.rect(a[0],a[1],a[2],a[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),e.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(e),e.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(e),e.fillText(t,0,0)),e.restore()}_css_text(e,t,s,i,l){const{el:n}=this;r.assert(null!=n),a.undisplay(n),this.visuals.text.set_value(e);const o=this._calculate_bounding_box_dimensions(e,t),_=this.visuals.border_line.line_dash.value().length<2?\"solid\":\"dashed\";this.visuals.border_line.set_value(e),this.visuals.background_fill.set_value(e),n.style.position=\"absolute\",n.style.left=s+o[0]+\"px\",n.style.top=i+o[1]+\"px\",n.style.color=\"\"+this.visuals.text.text_color.value(),n.style.opacity=\"\"+this.visuals.text.text_alpha.value(),n.style.font=\"\"+this.visuals.text.font_value(),n.style.lineHeight=\"normal\",l&&(n.style.transform=`rotate(${l}rad)`),this.visuals.background_fill.doit&&(n.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(n.style.borderStyle=\"\"+_,n.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",n.style.borderColor=\"\"+this.visuals.border_line.color_value()),n.textContent=t,a.display(n)}}s.TextAnnotationView=_,_.__name__=\"TextAnnotationView\";class u extends l.Annotation{constructor(e){super(e)}static init_TextAnnotation(){this.define({render_mode:[n.RenderMode,\"canvas\"]})}}s.TextAnnotation=u,u.__name__=\"TextAnnotation\",u.init_TextAnnotation()},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),o=t(161),l=t(85),a=i.__importStar(t(28)),n=t(72),r=i.__importStar(t(18));class _ extends o.TextAnnotationView{initialize(){if(super.initialize(),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(let t=0,e=this._text.length;t<e;t++){const t=n.div({style:{display:\"none\"}});this.el.appendChild(t)}}connect_signals(){super.connect_signals(),\"css\"==this.model.render_mode?(this.connect(this.model.change,()=>{this.set_data(this.model.source),this.render()}),this.connect(this.model.source.streaming,()=>{this.set_data(this.model.source),this.render()}),this.connect(this.model.source.patching,()=>{this.set_data(this.model.source),this.render()}),this.connect(this.model.source.change,()=>{this.set_data(this.model.source),this.render()})):(this.connect(this.model.change,()=>{this.set_data(this.model.source),this.plot_view.request_render()}),this.connect(this.model.source.streaming,()=>{this.set_data(this.model.source),this.plot_view.request_render()}),this.connect(this.model.source.patching,()=>{this.set_data(this.model.source),this.plot_view.request_render()}),this.connect(this.model.source.change,()=>{this.set_data(this.model.source),this.plot_view.request_render()}))}set_data(t){super.set_data(t),this.visuals.warm_cache(t)}_map_data(){const t=this.coordinates.x_scale,e=this.coordinates.y_scale,s=null!=this.panel?this.panel:this.plot_view.frame;return[\"data\"==this.model.x_units?t.v_compute(this._x):s.xview.v_compute(this._x),\"data\"==this.model.y_units?e.v_compute(this._y):s.yview.v_compute(this._y)]}_render(){const t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),{ctx:e}=this.layer,[s,i]=this._map_data();for(let o=0,l=this._text.length;o<l;o++)t(e,o,this._text[o],s[o]+this._x_offset[o],i[o]-this._y_offset[o],this._angle[o])}_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_value(t);const{width:e,ascent:s}=t.measureText(this._text[0]);return{width:e,height:s}}_v_canvas_text(t,e,s,i,o,l){this.visuals.text.set_vectorize(t,e);const a=this._calculate_bounding_box_dimensions(t,s);t.save(),t.beginPath(),t.translate(i,o),t.rotate(l),t.rect(a[0],a[1],a[2],a[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_vectorize(t,e),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_vectorize(t,e),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_vectorize(t,e),t.fillText(s,0,0)),t.restore()}_v_css_text(t,e,s,i,o,l){const a=this.el.children[e];a.textContent=s,this.visuals.text.set_vectorize(t,e);const r=this._calculate_bounding_box_dimensions(t,s),_=this.visuals.border_line.line_dash.value().length<2?\"solid\":\"dashed\";this.visuals.border_line.set_vectorize(t,e),this.visuals.background_fill.set_vectorize(t,e),a.style.position=\"absolute\",a.style.left=i+r[0]+\"px\",a.style.top=o+r[1]+\"px\",a.style.color=\"\"+this.visuals.text.text_color.value(),a.style.opacity=\"\"+this.visuals.text.text_alpha.value(),a.style.font=\"\"+this.visuals.text.font_value(),a.style.lineHeight=\"normal\",l&&(a.style.transform=`rotate(${l}rad)`),this.visuals.background_fill.doit&&(a.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(a.style.borderStyle=\"\"+_,a.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",a.style.borderColor=\"\"+this.visuals.border_line.color_value()),n.display(a)}}s.LabelSetView=_,_.__name__=\"LabelSetView\";class h extends o.TextAnnotation{constructor(t){super(t)}static init_LabelSet(){this.prototype.default_view=_,this.mixins([a.TextVector,[\"border_\",a.LineVector],[\"background_\",a.FillVector]]),this.define({x:[r.NumberSpec],y:[r.NumberSpec],x_units:[r.SpatialUnits,\"data\"],y_units:[r.SpatialUnits,\"data\"],text:[r.StringSpec,{field:\"text\"}],angle:[r.AngleSpec,0],x_offset:[r.NumberSpec,{value:0}],y_offset:[r.NumberSpec,{value:0}],source:[r.Instance,()=>new l.ColumnDataSource]}),this.override({background_fill_color:null,border_line_color:null})}}s.LabelSet=h,h.__name__=\"LabelSet\",h.init_LabelSet()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),l=t(36),n=s.__importStar(t(28)),h=s.__importStar(t(18)),a=t(15),_=t(159),o=t(79),r=t(9),d=t(8),c=t(11);class g extends l.AnnotationView{cursor(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"}get legend_padding(){return null!=this.visuals.border_line.line_color.value()?this.model.padding:0}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_render()),this.connect(this.model.item_change,()=>this.plot_view.request_render())}compute_legend_bbox(){const t=this.model.get_legend_names(),{glyph_height:e,glyph_width:i}=this.model,{label_height:s,label_width:l}=this.model;this.max_label_height=r.max([_.measure_font(this.visuals.label_text.font_value()).height,s,e]);const{ctx:n}=this.layer;n.save(),this.visuals.label_text.set_value(n),this.text_widths=new Map;for(const e of t)this.text_widths.set(e,r.max([n.measureText(e).width,l]));this.visuals.title_text.set_value(n),this.title_height=this.model.title?_.measure_font(this.visuals.title_text.font_value()).height+this.model.title_standoff:0,this.title_width=this.model.title?n.measureText(this.model.title).width:0,n.restore();const h=Math.max(r.max([...this.text_widths.values()]),0),a=this.model.margin,{legend_padding:g}=this,m=this.model.spacing,{label_standoff:b}=this.model;let u,f;if(\"vertical\"==this.model.orientation)u=t.length*this.max_label_height+Math.max(t.length-1,0)*m+2*g+this.title_height,f=r.max([h+i+b+2*g,this.title_width+2*g]);else{let e=2*g+Math.max(t.length-1,0)*m;for(const[,t]of this.text_widths)e+=r.max([t,l])+i+b;f=r.max([this.title_width+2*g,e]),u=this.max_label_height+this.title_height+2*g}const x=null!=this.panel?this.panel:this.plot_view.frame,[p,w]=x.bbox.ranges,{location:v}=this.model;let y,k;if(d.isString(v))switch(v){case\"top_left\":y=p.start+a,k=w.start+a;break;case\"top_center\":y=(p.end+p.start)/2-f/2,k=w.start+a;break;case\"top_right\":y=p.end-a-f,k=w.start+a;break;case\"bottom_right\":y=p.end-a-f,k=w.end-a-u;break;case\"bottom_center\":y=(p.end+p.start)/2-f/2,k=w.end-a-u;break;case\"bottom_left\":y=p.start+a,k=w.end-a-u;break;case\"center_left\":y=p.start+a,k=(w.end+w.start)/2-u/2;break;case\"center\":y=(p.end+p.start)/2-f/2,k=(w.end+w.start)/2-u/2;break;case\"center_right\":y=p.end-a-f,k=(w.end+w.start)/2-u/2}else if(d.isArray(v)&&2==v.length){const[t,e]=v;y=x.xview.compute(t),k=x.yview.compute(e)-u}else c.unreachable();return new o.BBox({left:y,top:k,width:f,height:u})}interactive_bbox(){return this.compute_legend_bbox()}interactive_hit(t,e){return this.interactive_bbox().contains(t,e)}on_hit(t,e){let i;const{glyph_width:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let a=i=l;const _=this.compute_legend_bbox(),r=\"vertical\"==this.model.orientation;for(const d of this.model.items){const c=d.get_labels_list_from_label_prop();for(const g of c){const c=_.x+a,m=_.y+i+this.title_height;let b,u;[b,u]=r?[_.width-2*l,this.max_label_height]:[this.text_widths.get(g)+s+h,this.max_label_height];if(new o.BBox({left:c,top:m,width:b,height:u}).contains(t,e)){switch(this.model.click_policy){case\"hide\":for(const t of d.renderers)t.visible=!t.visible;break;case\"mute\":for(const t of d.renderers)t.muted=!t.muted}return!0}r?i+=this.max_label_height+n:a+=this.text_widths.get(g)+s+h+n}}return!1}_render(){if(0==this.model.items.length)return;for(const t of this.model.items)t.legend=this.model;const{ctx:t}=this.layer,e=this.compute_legend_bbox();t.save(),this._draw_legend_box(t,e),this._draw_legend_items(t,e),this.model.title&&this._draw_title(t,e),t.restore()}_draw_legend_box(t,e){t.beginPath(),t.rect(e.x,e.y,e.width,e.height),this.visuals.background_fill.set_value(t),t.fill(),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke())}_draw_legend_items(t,e){const{glyph_width:i,glyph_height:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let a=l,_=l;const o=\"vertical\"==this.model.orientation;for(const d of this.model.items){const c=d.get_labels_list_from_label_prop(),g=d.get_field_from_label_prop();if(0==c.length)continue;const m=(()=>{switch(this.model.click_policy){case\"none\":return!0;case\"hide\":return r.every(d.renderers,t=>t.visible);case\"mute\":return r.every(d.renderers,t=>!t.muted)}})();for(const r of c){const c=e.x+a,b=e.y+_+this.title_height,u=c+i,f=b+s;o?_+=this.max_label_height+n:a+=this.text_widths.get(r)+i+h+n,this.visuals.label_text.set_value(t),t.fillText(r,u+h,b+this.max_label_height/2);for(const e of d.renderers){this.plot_view.renderer_views.get(e).draw_legend(t,c,u,b,f,g,r,d.index)}if(!m){let s,n;[s,n]=o?[e.width-2*l,this.max_label_height]:[this.text_widths.get(r)+i+h,this.max_label_height],t.beginPath(),t.rect(c,b,s,n),this.visuals.inactive_fill.set_value(t),t.fill()}}}}_draw_title(t,e){this.visuals.title_text.doit&&(t.save(),t.translate(e.x0,e.y0+this.title_height),this.visuals.title_text.set_value(t),t.fillText(this.model.title,this.legend_padding,this.legend_padding-this.model.title_standoff),t.restore())}_get_size(){const{width:t,height:e}=this.compute_legend_bbox();return{width:t+2*this.model.margin,height:e+2*this.model.margin}}}i.LegendView=g,g.__name__=\"LegendView\";class m extends l.Annotation{constructor(t){super(t)}initialize(){super.initialize(),this.item_change=new a.Signal0(this,\"item_change\")}static init_Legend(){this.prototype.default_view=g,this.mixins([[\"label_\",n.Text],[\"title_\",n.Text],[\"inactive_\",n.Fill],[\"border_\",n.Line],[\"background_\",n.Fill]]),this.define({orientation:[h.Orientation,\"vertical\"],location:[h.Any,\"top_right\"],title:[h.String],title_standoff:[h.Number,5],label_standoff:[h.Number,5],glyph_height:[h.Number,20],glyph_width:[h.Number,20],label_height:[h.Number,20],label_width:[h.Number,20],margin:[h.Number,10],padding:[h.Number,10],spacing:[h.Number,3],items:[h.Array,[]],click_policy:[h.Any,\"none\"]}),this.override({border_line_color:\"#e5e5e5\",border_line_alpha:.5,border_line_width:1,background_fill_color:\"#ffffff\",background_fill_alpha:.95,inactive_fill_color:\"white\",inactive_fill_alpha:.7,label_text_font_size:\"13px\",label_text_baseline:\"middle\",title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}get_legend_names(){const t=[];for(const e of this.items){const i=e.get_labels_list_from_label_prop();t.push(...i)}return t}}i.Legend=m,m.__name__=\"Legend\",m.init_Legend()},\n      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(1),l=e(81),i=e(86),s=e(165),o=t.__importStar(e(18)),_=e(19),a=e(9);class u extends l.Model{constructor(e){super(e)}static init_LegendItem(){this.define({label:[o.StringSpec,null],renderers:[o.Array,[]],index:[o.Number,null]})}_check_data_sources_on_renderers(){if(null!=this.get_field_from_label_prop()){if(this.renderers.length<1)return!1;const e=this.renderers[0].data_source;if(null!=e)for(const r of this.renderers)if(r.data_source!=e)return!1}return!0}_check_field_label_on_data_source(){const e=this.get_field_from_label_prop();if(null!=e){if(this.renderers.length<1)return!1;const r=this.renderers[0].data_source;if(null!=r&&!a.includes(r.columns(),e))return!1}return!0}initialize(){super.initialize(),this.legend=null,this.connect(this.change,()=>{var e;return null===(e=this.legend)||void 0===e?void 0:e.item_change.emit()});this._check_data_sources_on_renderers()||_.logger.error(\"Non matching data sources on legend item renderers\");this._check_field_label_on_data_source()||_.logger.error(\"Bad column name on label: \"+this.label)}get_field_from_label_prop(){const{label:e}=this;return s.isField(e)?e.field:null}get_labels_list_from_label_prop(){if(s.isValue(this.label)){const{value:e}=this.label;return null!=e?[e]:[]}const e=this.get_field_from_label_prop();if(null!=e){let r;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if(r=this.renderers[0].data_source,r instanceof i.ColumnarDataSource){const n=r.get_column(e);return null!=n?a.uniq(Array.from(n)):[\"Invalid field\"]}}return[]}}n.LegendItem=u,u.__name__=\"LegendItem\",u.init_LegendItem()},\n      function _(e,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(8);n.isValue=function(e){return t.isPlainObject(e)&&\"value\"in e},n.isField=function(e){return t.isPlainObject(e)&&\"field\"in e}},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),s=t(36),o=n.__importStar(t(28)),l=t(15),a=n.__importStar(t(18));class r extends s.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_render()),this.connect(this.model.data_update,()=>this.plot_view.request_render())}_render(){const{xs:t,ys:e}=this.model;if(t.length!=e.length)return;if(t.length<3||e.length<3)return;const{frame:i}=this.plot_view,{ctx:n}=this.layer;for(let s=0,o=t.length;s<o;s++){let o,l;if(\"screen\"!=this.model.xs_units)throw new Error(\"not implemented\");if(o=this.model.screen?t[s]:i.xview.compute(t[s]),\"screen\"!=this.model.ys_units)throw new Error(\"not implemented\");l=this.model.screen?e[s]:i.yview.compute(e[s]),0==s?(n.beginPath(),n.moveTo(o,l)):n.lineTo(o,l)}n.closePath(),this.visuals.line.doit&&(this.visuals.line.set_value(n),n.stroke()),this.visuals.fill.doit&&(this.visuals.fill.set_value(n),n.fill())}}i.PolyAnnotationView=r,r.__name__=\"PolyAnnotationView\";class _ extends s.Annotation{constructor(t){super(t)}static init_PolyAnnotation(){this.prototype.default_view=r,this.mixins([o.Line,o.Fill]),this.define({xs:[a.Array,[]],xs_units:[a.SpatialUnits,\"data\"],ys:[a.Array,[]],ys_units:[a.SpatialUnits,\"data\"]}),this.internal({screen:[a.Boolean,!1]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}initialize(){super.initialize(),this.data_update=new l.Signal0(this,\"data_update\")}update({xs:t,ys:e}){this.setv({xs:t,ys:e,screen:!0},{silent:!0}),this.data_update.emit()}}i.PolyAnnotation=_,_.__name__=\"PolyAnnotation\",_.init_PolyAnnotation()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),o=e(36),s=n.__importStar(e(28)),l=n.__importStar(e(18));class r extends o.AnnotationView{initialize(){super.initialize()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_render())}_render(){const e=this.model.gradient,t=this.model.y_intercept;if(null==e||null==t)return;const{frame:i}=this.plot_view,n=this.coordinates.x_scale,o=this.coordinates.y_scale,s=i.bbox.top,l=s+i.bbox.height,r=(o.invert(s)-t)/e,_=(o.invert(l)-t)/e,a=n.compute(r),c=n.compute(_),{ctx:p}=this.layer;p.save(),p.beginPath(),this.visuals.line.set_value(p),p.moveTo(a,s),p.lineTo(c,l),p.stroke(),p.restore()}}i.SlopeView=r,r.__name__=\"SlopeView\";class _ extends o.Annotation{constructor(e){super(e)}static init_Slope(){this.prototype.default_view=r,this.mixins(s.Line),this.define({gradient:[l.Number,null],y_intercept:[l.Number,null]}),this.override({line_color:\"black\"})}}i.Slope=_,_.__name__=\"Slope\",_.init_Slope()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),o=e(36),s=n.__importStar(e(28)),a=n.__importStar(e(18));class l extends o.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_paint(this))}_render(){const{location:e}=this.model;if(null==e)return;const{frame:t}=this.plot_view,i=this.coordinates.x_scale,n=this.coordinates.y_scale,o=(t,i)=>\"data\"==this.model.location_units?t.compute(e):this.model.for_hover?e:i.compute(e);let s,a,l,r;\"width\"==this.model.dimension?(l=o(n,t.yview),a=t.bbox.left,r=t.bbox.width,s=this.model.properties.line_width.value()):(l=t.bbox.top,a=o(i,t.xview),r=this.model.properties.line_width.value(),s=t.bbox.height);const{ctx:_}=this.layer;_.save(),_.beginPath(),this.visuals.line.set_value(_),_.moveTo(a,l),\"width\"==this.model.dimension?_.lineTo(a+r,l):_.lineTo(a,l+s),_.stroke(),_.restore()}}i.SpanView=l,l.__name__=\"SpanView\";class r extends o.Annotation{constructor(e){super(e)}static init_Span(){this.prototype.default_view=l,this.mixins(s.Line),this.define({render_mode:[a.RenderMode,\"canvas\"],location:[a.Number,null],location_units:[a.SpatialUnits,\"data\"],dimension:[a.Dimension,\"width\"]}),this.override({line_color:\"black\"}),this.internal({for_hover:[a.Boolean,!1]})}}i.Span=r,r.__name__=\"Span\",r.init_Span()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=t(1),s=t(161),a=t(74),n=l.__importStar(t(28)),o=l.__importStar(t(18));class r extends s.TextAnnotationView{initialize(){super.initialize(),this.visuals.text=new a.Text(this.model)}_get_location(){const t=this.panel,e=this.model.offset;let i,l;const{bbox:s}=t;switch(t.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":l=s.top+5;break;case\"middle\":l=s.vcenter;break;case\"bottom\":l=s.bottom-5}switch(this.model.align){case\"left\":i=s.left+e;break;case\"center\":i=s.hcenter;break;case\"right\":i=s.right-e}break;case\"left\":switch(this.model.vertical_align){case\"top\":i=s.left-5;break;case\"middle\":i=s.hcenter;break;case\"bottom\":i=s.right+5}switch(this.model.align){case\"left\":l=s.bottom-e;break;case\"center\":l=s.vcenter;break;case\"right\":l=s.top+e}break;case\"right\":switch(this.model.vertical_align){case\"top\":i=s.right-5;break;case\"middle\":i=s.hcenter;break;case\"bottom\":i=s.left+5}switch(this.model.align){case\"left\":l=s.top+e;break;case\"center\":l=s.vcenter;break;case\"right\":l=s.bottom-e}}return[i,l]}_render(){const{text:t}=this.model;if(null==t||0==t.length)return;this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;const[e,i]=this._get_location(),l=this.panel.get_label_angle_heuristic(\"parallel\");(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,t,e,i,l)}_get_size(){const{text:t}=this.model;if(null==t||0==t.length)return{width:0,height:0};{this.visuals.text.set_value(this.layer.ctx);const{width:e,ascent:i}=this.layer.ctx.measureText(t);return{width:e,height:i*this.visuals.text.text_line_height.value()+10}}}}i.TitleView=r,r.__name__=\"TitleView\";class c extends s.TextAnnotation{constructor(t){super(t)}static init_Title(){this.prototype.default_view=r,this.mixins([[\"border_\",n.Line],[\"background_\",n.Fill]]),this.define({text:[o.String],text_font:[o.Font,\"helvetica\"],text_font_size:[o.StringSpec,\"13px\"],text_font_style:[o.FontStyle,\"bold\"],text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],text_line_height:[o.Number,1],vertical_align:[o.VerticalAlign,\"bottom\"],align:[o.TextAlign,\"left\"],offset:[o.Number,0]}),this.override({background_fill_color:null,border_line_color:null}),this.internal({text_align:[o.TextAlign,\"left\"],text_baseline:[o.TextBaseline,\"bottom\"]})}}i.Title=c,c.__name__=\"Title\",c.init_Title()},\n      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(1),l=e(36),s=e(115),a=e(72),n=e(79),r=o.__importStar(e(18));class _ extends l.AnnotationView{constructor(){super(...arguments),this.rotate=!0,this._invalidate_toolbar=!0,this._previous_bbox=new n.BBox}initialize(){super.initialize(),this.el=a.div(),this.plot_view.canvas_view.add_event(this.el)}async lazy_initialize(){this._toolbar_view=await s.build_view(this.model.toolbar,{parent:this}),this.plot_view.visibility_callbacks.push(e=>this._toolbar_view.set_visibility(e))}remove(){this._toolbar_view.remove(),a.remove(this.el),super.remove()}render(){this.model.visible||a.undisplay(this.el),super.render()}_render(){const{bbox:e}=this.panel;this._previous_bbox.equals(e)||(a.position(this.el,e),this._previous_bbox=e),this._invalidate_toolbar&&(this.el.style.position=\"absolute\",this.el.style.overflow=\"hidden\",this._toolbar_view.render(),a.empty(this.el),this.el.appendChild(this._toolbar_view.el),this._invalidate_toolbar=!1),a.display(this.el)}_get_size(){const{tools:e,logo:i}=this.model.toolbar;return{width:30*e.length+(null!=i?25:0),height:30}}}t.ToolbarPanelView=_,_.__name__=\"ToolbarPanelView\";class h extends l.Annotation{constructor(e){super(e)}static init_ToolbarPanel(){this.prototype.default_view=_,this.define({toolbar:[r.Instance]})}}t.ToolbarPanel=h,h.__name__=\"ToolbarPanel\",h.init_ToolbarPanel()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),l=t(36),o=t(72),n=s.__importStar(t(18)),a=t(172),h=t(173),r=s.__importDefault(t(174));class c extends l.AnnotationView{initialize(){super.initialize(),this.el=o.div({class:a.bk_tooltip}),o.undisplay(this.el),this.plot_view.canvas_view.add_overlay(this.el)}remove(){o.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.content.change,()=>this.render()),this.connect(this.model.properties.position.change,()=>this._reposition())}styles(){return[...super.styles(),r.default]}render(){this.model.visible||o.undisplay(this.el),super.render()}_render(){const{content:t}=this.model;null!=t?(o.empty(this.el),o.classes(this.el).toggle(a.bk_tooltip_custom,this.model.custom),this.el.appendChild(t),this.model.show_arrow&&this.el.classList.add(a.bk_tooltip_arrow)):o.undisplay(this.el)}_reposition(){const{position:t}=this.model;if(null==t)return void o.undisplay(this.el);const[e,i]=t,s=(()=>{const t=this.parent.layout.bbox.relativize(),{attachment:s}=this.model;switch(s){case\"horizontal\":return e<t.hcenter?\"right\":\"left\";case\"vertical\":return i<t.vcenter?\"below\":\"above\";default:return s}})();let l;this.el.classList.remove(h.bk_right),this.el.classList.remove(h.bk_left),this.el.classList.remove(h.bk_above),this.el.classList.remove(h.bk_below),o.display(this.el);let n=null,a=null;switch(s){case\"right\":this.el.classList.add(h.bk_left),n=e+(this.el.offsetWidth-this.el.clientWidth)+10,l=i-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(h.bk_right),a=this.plot_view.layout.bbox.width-e+10,l=i-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(h.bk_above),l=i+(this.el.offsetHeight-this.el.clientHeight)+10,n=Math.round(e-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(h.bk_below),l=i-this.el.offsetHeight-10,n=Math.round(e-this.el.offsetWidth/2)}this.el.style.top=l+\"px\",this.el.style.left=null!=n?n+\"px\":\"auto\",this.el.style.right=null!=a?a+\"px\":\"auto\"}}i.TooltipView=c,c.__name__=\"TooltipView\";class d extends l.Annotation{constructor(t){super(t)}static init_Tooltip(){this.prototype.default_view=c,this.define({attachment:[n.TooltipAttachment,\"horizontal\"],inner_only:[n.Boolean,!0],show_arrow:[n.Boolean,!0]}),this.override({level:\"overlay\"}),this.internal({position:[n.Any,null],content:[n.Any,()=>o.div()],custom:[n.Any]})}clear(){this.position=null}}i.Tooltip=d,d.__name__=\"Tooltip\",d.init_Tooltip()},\n      function _(o,t,l){Object.defineProperty(l,\"__esModule\",{value:!0}),l.bk_tooltip=\"bk-tooltip\",l.bk_tooltip_arrow=\"bk-tooltip-arrow\",l.bk_tooltip_custom=\"bk-tooltip-custom\",l.bk_tooltip_row_label=\"bk-tooltip-row-label\",l.bk_tooltip_row_value=\"bk-tooltip-row-value\",l.bk_tooltip_color_block=\"bk-tooltip-color-block\"},\n      function _(e,b,k){Object.defineProperty(k,\"__esModule\",{value:!0}),k.bk_active=\"bk-active\",k.bk_inline=\"bk-inline\",k.bk_left=\"bk-left\",k.bk_right=\"bk-right\",k.bk_above=\"bk-above\",k.bk_below=\"bk-below\",k.bk_up=\"bk-up\",k.bk_down=\"bk-down\",k.bk_side=function(e){switch(e){case\"above\":return k.bk_above;case\"below\":return k.bk_below;case\"left\":return k.bk_left;case\"right\":return k.bk_right}}},\n      function _(o,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root {\\n  /* Same border color used everywhere */\\n  /* Gray of icons */\\n}\\n.bk-root .bk-tooltip {\\n  font-weight: 300;\\n  font-size: 12px;\\n  position: absolute;\\n  padding: 5px;\\n  border: 1px solid #e5e5e5;\\n  color: #2f2f2f;\\n  background-color: white;\\n  pointer-events: none;\\n  opacity: 0.95;\\n  z-index: 100;\\n}\\n.bk-root .bk-tooltip > div:not(:first-child) {\\n  /* gives space when multiple elements are being hovered over */\\n  margin-top: 5px;\\n  border-top: #e5e5e5 1px dashed;\\n}\\n.bk-root .bk-tooltip.bk-left.bk-tooltip-arrow::before {\\n  position: absolute;\\n  margin: -7px 0 0 0;\\n  top: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 7px 0 7px 0;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  left: -10px;\\n  border-right-width: 10px;\\n  border-right-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-left::before {\\n  left: -10px;\\n  border-right-width: 10px;\\n  border-right-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-right.bk-tooltip-arrow::after {\\n  position: absolute;\\n  margin: -7px 0 0 0;\\n  top: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 7px 0 7px 0;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  right: -10px;\\n  border-left-width: 10px;\\n  border-left-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-right::after {\\n  right: -10px;\\n  border-left-width: 10px;\\n  border-left-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-above::before {\\n  position: absolute;\\n  margin: 0 0 0 -7px;\\n  left: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 0 7px 0 7px;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  top: -10px;\\n  border-bottom-width: 10px;\\n  border-bottom-color: #909599;\\n}\\n.bk-root .bk-tooltip.bk-below::after {\\n  position: absolute;\\n  margin: 0 0 0 -7px;\\n  left: 50%;\\n  width: 0;\\n  height: 0;\\n  border-style: solid;\\n  border-width: 0 7px 0 7px;\\n  border-color: transparent;\\n  content: \" \";\\n  display: block;\\n  bottom: -10px;\\n  border-top-width: 10px;\\n  border-top-color: #909599;\\n}\\n.bk-root .bk-tooltip-row-label {\\n  text-align: right;\\n  color: #26aae1;\\n  /* blue from toolbar highlighting */\\n}\\n.bk-root .bk-tooltip-row-value {\\n  color: default;\\n  /* seems to be necessary for notebook */\\n}\\n.bk-root .bk-tooltip-color-block {\\n  width: 12px;\\n  height: 12px;\\n  margin-left: 5px;\\n  margin-right: 5px;\\n  outline: #dddddd solid 1px;\\n  display: inline-block;\\n}\\n'},\n      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1),r=e(123),o=e(84),h=e(28),n=i.__importStar(e(18));class l extends r.UpperLowerView{connect_signals(){super.connect_signals(),this.connect(this.model.source.streaming,()=>this.set_data(this.model.source)),this.connect(this.model.source.patching,()=>this.set_data(this.model.source)),this.connect(this.model.source.change,()=>this.set_data(this.model.source))}_render(){this._map_data();const{ctx:e}=this.layer;if(this.visuals.line.doit)for(let s=0,t=this._lower_sx.length;s<t;s++)this.visuals.line.set_vectorize(e,s),e.beginPath(),e.moveTo(this._lower_sx[s],this._lower_sy[s]),e.lineTo(this._upper_sx[s],this._upper_sy[s]),e.stroke();const s=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.model.lower_head)for(let t=0,i=this._lower_sx.length;t<i;t++)e.save(),e.translate(this._lower_sx[t],this._lower_sy[t]),e.rotate(s+Math.PI),this.model.lower_head.render(e,t),e.restore();if(null!=this.model.upper_head)for(let t=0,i=this._upper_sx.length;t<i;t++)e.save(),e.translate(this._upper_sx[t],this._upper_sy[t]),e.rotate(s),this.model.upper_head.render(e,t),e.restore()}}t.WhiskerView=l,l.__name__=\"WhiskerView\";class _ extends r.UpperLower{constructor(e){super(e)}static init_Whisker(){this.prototype.default_view=l,this.mixins(h.LineVector),this.define({lower_head:[n.Instance,()=>new o.TeeHead({level:\"underlay\",size:10})],upper_head:[n.Instance,()=>new o.TeeHead({level:\"underlay\",size:10})]}),this.override({level:\"underlay\"})}}t.Whisker=_,_.__name__=\"Whisker\",_.init_Whisker()},\n      function _(i,a,e){Object.defineProperty(e,\"__esModule\",{value:!0});var r=i(177);e.Axis=r.Axis;var s=i(179);e.CategoricalAxis=s.CategoricalAxis;var x=i(182);e.ContinuousAxis=x.ContinuousAxis;var A=i(183);e.DatetimeAxis=A.DatetimeAxis;var o=i(184);e.LinearAxis=o.LinearAxis;var t=i(197);e.LogAxis=t.LogAxis;var n=i(200);e.MercatorAxis=n.MercatorAxis},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),a=t(178),l=s.__importStar(t(28)),n=s.__importStar(t(18)),o=t(9),r=t(8),_=t(98),{abs:h,min:c,max:d}=Math;class m extends a.GuideRendererView{constructor(){super(...arguments),this.rotate=!0}get panel(){return this.layout}get is_renderable(){const[t,e]=this.ranges;return t.is_valid&&e.is_valid}_render(){var t;if(!this.is_renderable)return;const e={tick:this._tick_extent(),tick_label:this._tick_label_extents(),axis_label:this._axis_label_extent()},{tick_coords:i}=this,s=this.layer.ctx;s.save(),this._draw_rule(s,e),this._draw_major_ticks(s,e,i),this._draw_minor_ticks(s,e,i),this._draw_major_labels(s,e,i),this._draw_axis_label(s,e,i),null===(t=this._paint)||void 0===t||t.call(this,s,e,i),s.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.plot_view.request_layout())}get_size(){if(this.model.visible&&null==this.model.fixed_location&&this.is_renderable){const t=this._get_size();return{width:0,height:Math.round(t)}}return{width:0,height:0}}_get_size(){return this._tick_extent()+this._tick_label_extent()+this._axis_label_extent()}get needs_clip(){return null!=this.model.fixed_location}_draw_rule(t,e){if(!this.visuals.axis_line.doit)return;const[i,s]=this.rule_coords,[a,l]=this.coordinates.map_to_screen(i,s),[n,o]=this.normals,[r,_]=this.offsets;this.visuals.axis_line.set_value(t),t.beginPath(),t.moveTo(Math.round(a[0]+n*r),Math.round(l[0]+o*_));for(let e=1;e<a.length;e++){const i=Math.round(a[e]+n*r),s=Math.round(l[e]+o*_);t.lineTo(i,s)}t.stroke()}_draw_major_ticks(t,e,i){const s=this.model.major_tick_in,a=this.model.major_tick_out,l=this.visuals.major_tick_line;this._draw_ticks(t,i.major,s,a,l)}_draw_minor_ticks(t,e,i){const s=this.model.minor_tick_in,a=this.model.minor_tick_out,l=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,s,a,l)}_draw_major_labels(t,e,i){const s=i.major,a=this.compute_labels(s[this.dimension]),l=this.model.major_label_orientation,n=e.tick+this.model.major_label_standoff,o=this.visuals.major_label_text;this._draw_oriented_labels(t,a,s,l,this.panel.side,n,o)}_draw_axis_label(t,e,i){if(null==this.model.axis_label||0==this.model.axis_label.length||null!=this.model.fixed_location)return;let s,a;const{bbox:l}=this.panel;switch(this.panel.side){case\"above\":s=l.hcenter,a=l.bottom;break;case\"below\":s=l.hcenter,a=l.top;break;case\"left\":s=l.right,a=l.vcenter;break;case\"right\":s=l.left,a=l.vcenter;break;default:throw new Error(\"unknown side: \"+this.panel.side)}const n=[[s],[a]],r=e.tick+o.sum(e.tick_label)+this.model.axis_label_standoff,_=this.visuals.axis_label_text;this._draw_oriented_labels(t,[this.model.axis_label],n,\"parallel\",this.panel.side,r,_,\"screen\")}_draw_ticks(t,e,i,s,a){if(!a.doit)return;const[l,n]=e,[o,r]=this.coordinates.map_to_screen(l,n),[_,h]=this.normals,[c,d]=this.offsets,[m,b]=[_*(c-i),h*(d-i)],[u,x]=[_*(c+s),h*(d+s)];a.set_value(t),t.beginPath();for(let e=0;e<o.length;e++){const i=Math.round(o[e]+u),s=Math.round(r[e]+x),a=Math.round(o[e]+m),l=Math.round(r[e]+b);t.moveTo(i,s),t.lineTo(a,l)}t.stroke()}_draw_oriented_labels(t,e,i,s,a,l,n,o=\"data\"){if(!n.doit||0==e.length)return;let _,h,c,d;if(\"screen\"==o)[_,h]=i,[c,d]=[0,0];else{const[t,e]=i;[_,h]=this.coordinates.map_to_screen(t,e),[c,d]=this.offsets}const[m,b]=this.normals,u=m*(c+l),x=b*(d+l);let f;n.set_value(t),this.panel.apply_label_text_heuristics(t,s),f=r.isString(s)?this.panel.get_label_angle_heuristic(s):-s;for(let i=0;i<_.length;i++){const s=Math.round(_[i]+u),a=Math.round(h[i]+x);t.translate(s,a),t.rotate(f),t.fillText(e[i],0,0),t.rotate(-f),t.translate(-s,-a)}}_axis_label_extent(){if(null==this.model.axis_label||\"\"==this.model.axis_label)return 0;const t=this.model.axis_label_standoff,e=this.visuals.axis_label_text;return this._oriented_labels_extent([this.model.axis_label],\"parallel\",this.panel.side,t,e)}_tick_extent(){return this.model.major_tick_out}_tick_label_extent(){return o.sum(this._tick_label_extents())}_tick_label_extents(){const t=this.tick_coords.major,e=this.compute_labels(t[this.dimension]),i=this.model.major_label_orientation,s=this.model.major_label_standoff,a=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,this.panel.side,s,a)]}_oriented_labels_extent(t,e,i,s,a){if(0==t.length)return 0;const l=this.layer.ctx;let n,o;a.set_value(l),r.isString(e)?(n=1,o=this.panel.get_label_angle_heuristic(e)):(n=2,o=-e),o=Math.abs(o);const _=Math.cos(o),h=Math.sin(o);let c=0;for(let e=0;e<t.length;e++){const s=1.1*l.measureText(t[e]).width,a=.9*l.measureText(t[e]).ascent;let o;o=\"above\"==i||\"below\"==i?s*h+a/n*_:s*_+a/n*h,o>c&&(c=o)}return c>0&&(c+=s),c}get normals(){return this.panel.normals}get dimension(){return this.panel.dimension}compute_labels(t){const e=this.model.formatter.doFormat(t,this);for(let i=0;i<t.length;i++)t[i]in this.model.major_label_overrides&&(e[i]=this.model.major_label_overrides[t[i]]);return e}get offsets(){if(null!=this.model.fixed_location)return[0,0];const{frame:t}=this.plot_view;let[e,i]=[0,0];switch(this.panel.side){case\"below\":i=h(this.panel.bbox.top-t.bbox.bottom);break;case\"above\":i=h(this.panel.bbox.bottom-t.bbox.top);break;case\"right\":e=h(this.panel.bbox.left-t.bbox.right);break;case\"left\":e=h(this.panel.bbox.right-t.bbox.left)}return[e,i]}get ranges(){const t=this.dimension,e=(t+1)%2,{ranges:i}=this.coordinates;return[i[t],i[e]]}get computed_bounds(){const[t]=this.ranges,e=this.model.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];{let t,s;const[a,l]=e,[n,o]=i;return h(a-l)>h(n-o)?(t=d(c(a,l),n),s=c(d(a,l),o)):(t=c(a,l),s=d(a,l)),[t,s]}}get rule_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,a]=this.computed_bounds,l=[new Array(2),new Array(2)];return l[t][0]=Math.max(s,i.min),l[t][1]=Math.min(a,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l}get tick_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,a]=this.computed_bounds,l=this.model.ticker.get_ticks(s,a,i,this.loc,{}),n=l.major,o=l.minor,r=[[],[]],_=[[],[]],[h,c]=[i.min,i.max];for(let i=0;i<n.length;i++)n[i]<h||n[i]>c||(r[t].push(n[i]),r[e].push(this.loc));for(let i=0;i<o.length;i++)o[i]<h||o[i]>c||(_[t].push(o[i]),_[e].push(this.loc));return{major:r,minor:_}}get loc(){const{fixed_location:t}=this.model;if(null!=t){if(r.isNumber(t))return t;const[,e]=this.ranges;if(e instanceof _.FactorRange)return e.synthetic(t);throw new Error(\"unexpected\")}const[,e]=this.ranges;switch(this.panel.side){case\"left\":case\"below\":return e.start;case\"right\":case\"above\":return e.end}}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box})}}i.AxisView=m,m.__name__=\"AxisView\";class b extends a.GuideRenderer{constructor(t){super(t)}static init_Axis(){this.prototype.default_view=m,this.mixins([[\"axis_\",l.Line],[\"major_tick_\",l.Line],[\"minor_tick_\",l.Line],[\"major_label_\",l.Text],[\"axis_label_\",l.Text]]),this.define({bounds:[n.Any,\"auto\"],ticker:[n.Instance],formatter:[n.Instance],axis_label:[n.String,\"\"],axis_label_standoff:[n.Int,5],major_label_standoff:[n.Int,5],major_label_orientation:[n.Any,\"horizontal\"],major_label_overrides:[n.Any,{}],major_tick_in:[n.Number,2],major_tick_out:[n.Number,6],minor_tick_in:[n.Number,0],minor_tick_out:[n.Number,4],fixed_location:[n.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"11px\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"13px\",axis_label_text_font_style:\"italic\"})}}i.Axis=b,b.__name__=\"Axis\",b.init_Axis()},\n      function _(e,r,d){Object.defineProperty(d,\"__esModule\",{value:!0});const i=e(70);class n extends i.RendererView{}d.GuideRendererView=n,n.__name__=\"GuideRendererView\";class t extends i.Renderer{constructor(e){super(e)}static init_GuideRenderer(){this.override({level:\"guide\"})}}d.GuideRenderer=t,t.__name__=\"GuideRenderer\",t.init_GuideRenderer()},\n      function _(t,s,o){Object.defineProperty(o,\"__esModule\",{value:!0});const e=t(1),i=t(177),r=t(180),a=t(181),l=e.__importStar(t(28)),_=e.__importStar(t(18));class n extends i.AxisView{_paint(t,s,o){this._draw_group_separators(t,s,o)}_draw_group_separators(t,s,o){const[e]=this.ranges,[i,r]=this.computed_bounds;if(!e.tops||e.tops.length<2||!this.visuals.separator_line.doit)return;const a=this.dimension,l=(a+1)%2,_=[[],[]];let n=0;for(let t=0;t<e.tops.length-1;t++){let s,o;for(let i=n;i<e.factors.length;i++)if(e.factors[i][0]==e.tops[t+1]){[s,o]=[e.factors[i-1],e.factors[i]],n=i;break}const h=(e.synthetic(s)+e.synthetic(o))/2;h>i&&h<r&&(_[a].push(h),_[l].push(this.loc))}const h=this._tick_label_extent();this._draw_ticks(t,_,-3,h-6,this.visuals.separator_line)}_draw_major_labels(t,s,o){const e=this._get_factor_info();let i=s.tick+this.model.major_label_standoff;for(let o=0;o<e.length;o++){const[r,a,l,_]=e[o];this._draw_oriented_labels(t,r,a,l,this.panel.side,i,_),i+=s.tick_label[o]}}_tick_label_extents(){const t=this._get_factor_info(),s=[];for(const[o,,e,i]of t){const t=this._oriented_labels_extent(o,e,this.panel.side,this.model.major_label_standoff,i);s.push(t)}return s}_get_factor_info(){const[t]=this.ranges,[s,o]=this.computed_bounds,e=this.loc,i=this.model.ticker.get_ticks(s,o,t,e,{}),r=this.tick_coords,a=[];if(1==t.levels){const t=i.major,s=this.model.formatter.doFormat(t,this);a.push([s,r.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){const t=i.major.map(t=>t[1]),s=this.model.formatter.doFormat(t,this);a.push([s,r.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([i.tops,r.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){const t=i.major.map(t=>t[2]),s=this.model.formatter.doFormat(t,this),o=i.mids.map(t=>t[1]);a.push([s,r.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([o,r.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),a.push([i.tops,r.tops,this.model.group_label_orientation,this.visuals.group_text])}return a}get tick_coords(){const t=this.dimension,s=(t+1)%2,[o]=this.ranges,[e,i]=this.computed_bounds,r=this.model.ticker.get_ticks(e,i,o,this.loc,{}),a={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return a.major[t]=r.major,a.major[s]=r.major.map(t=>this.loc),3==o.levels&&(a.mids[t]=r.mids,a.mids[s]=r.mids.map(t=>this.loc)),o.levels>1&&(a.tops[t]=r.tops,a.tops[s]=r.tops.map(t=>this.loc)),a}}o.CategoricalAxisView=n,n.__name__=\"CategoricalAxisView\";class h extends i.Axis{constructor(t){super(t)}static init_CategoricalAxis(){this.prototype.default_view=n,this.mixins([[\"separator_\",l.Line],[\"group_\",l.Text],[\"subgroup_\",l.Text]]),this.define({group_label_orientation:[_.Any,\"parallel\"],subgroup_label_orientation:[_.Any,\"parallel\"]}),this.override({ticker:()=>new r.CategoricalTicker,formatter:()=>new a.CategoricalTickFormatter,separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"11px\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"11px\"})}}o.CategoricalAxis=h,h.__name__=\"CategoricalAxis\",h.init_CategoricalAxis()},\n      function _(t,c,e){Object.defineProperty(e,\"__esModule\",{value:!0});const o=t(129);class s extends o.Ticker{constructor(t){super(t)}get_ticks(t,c,e,o,s){return{major:this._collect(e.factors,e,t,c),minor:[],tops:this._collect(e.tops||[],e,t,c),mids:this._collect(e.mids||[],e,t,c)}}_collect(t,c,e,o){const s=[];for(const r of t){const t=c.synthetic(r);t>e&&t<o&&s.push(r)}return s}}e.CategoricalTicker=s,s.__name__=\"CategoricalTicker\"},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(131),c=e(9);class a extends o.TickFormatter{constructor(e){super(e)}doFormat(e,t){return c.copy(e)}}r.CategoricalTickFormatter=a,a.__name__=\"CategoricalTickFormatter\"},\n      function _(s,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=s(177);class t extends o.Axis{constructor(s){super(s)}}n.ContinuousAxis=t,t.__name__=\"ContinuousAxis\"},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(184),a=e(185),r=e(190);class n extends s.LinearAxisView{}i.DatetimeAxisView=n,n.__name__=\"DatetimeAxisView\";class _ extends s.LinearAxis{constructor(e){super(e)}static init_DatetimeAxis(){this.prototype.default_view=n,this.override({ticker:()=>new r.DatetimeTicker,formatter:()=>new a.DatetimeTickFormatter})}}i.DatetimeAxis=_,_.__name__=\"DatetimeAxis\",_.init_DatetimeAxis()},\n      function _(e,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=e(177),n=e(182),r=e(130),a=e(126);class _ extends t.AxisView{}s.LinearAxisView=_,_.__name__=\"LinearAxisView\";class c extends n.ContinuousAxis{constructor(e){super(e)}static init_LinearAxis(){this.prototype.default_view=_,this.override({ticker:()=>new a.BasicTicker,formatter:()=>new r.BasicTickFormatter})}}s.LinearAxis=c,c.__name__=\"LinearAxis\",c.init_LinearAxis()},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(1),i=r.__importDefault(t(186)),n=t(131),o=t(19),a=r.__importStar(t(18)),c=t(187),m=t(9),u=t(8);function h(t){return i.default(t,\"%Y %m %d %H %M %S\").split(/\\s+/).map(t=>parseInt(t,10))}function d(t,s){if(u.isFunction(s))return s(t);{const e=c.sprintf(\"$1%06d\",function(t){return Math.round(t/1e3%1*1e6)}(t));return-1==(s=s.replace(/((^|[^%])(%%)*)%f/,e)).indexOf(\"%\")?s:i.default(t,s)}}const l=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"];class _ extends n.TickFormatter{constructor(t){super(t),this.strip_leading_zeros=!0}static init_DatetimeTickFormatter(){this.define({microseconds:[a.Array,[\"%fus\"]],milliseconds:[a.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[a.Array,[\"%Ss\"]],minsec:[a.Array,[\":%M:%S\"]],minutes:[a.Array,[\":%M\",\"%Mm\"]],hourmin:[a.Array,[\"%H:%M\"]],hours:[a.Array,[\"%Hh\",\"%H:%M\"]],days:[a.Array,[\"%m/%d\",\"%a%d\"]],months:[a.Array,[\"%m/%Y\",\"%b %Y\"]],years:[a.Array,[\"%Y\"]]})}initialize(){super.initialize(),this._update_width_formats()}_update_width_formats(){const t=+i.default(new Date),s=function(s){const e=s.map(s=>d(t,s).length),r=m.sort_by(m.zip(e,s),([t])=>t);return m.unzip(r)};this._width_formats={microseconds:s(this.microseconds),milliseconds:s(this.milliseconds),seconds:s(this.seconds),minsec:s(this.minsec),minutes:s(this.minutes),hourmin:s(this.hourmin),hours:s(this.hours),days:s(this.days),months:s(this.months),years:s(this.years)}}_get_resolution_str(t,s){const e=1.1*t;switch(!1){case!(e<.001):return\"microseconds\";case!(e<1):return\"milliseconds\";case!(e<60):return s>=60?\"minsec\":\"seconds\";case!(e<3600):return s>=3600?\"hourmin\":\"minutes\";case!(e<86400):return\"hours\";case!(e<2678400):return\"days\";case!(e<31536e3):return\"months\";default:return\"years\"}}doFormat(t,s){if(0==t.length)return[];const e=Math.abs(t[t.length-1]-t[0])/1e3,r=e/(t.length-1),i=this._get_resolution_str(r,e),[,[n]]=this._width_formats[i],a=[],c=l.indexOf(i),m={};for(const t of l)m[t]=0;m.seconds=5,m.minsec=4,m.minutes=4,m.hourmin=3,m.hours=3;for(const s of t){let t,e;try{e=h(s),t=d(s,n)}catch(t){o.logger.warn(\"unable to format tick for timestamp value \"+s),o.logger.warn(\" - \"+t),a.push(\"ERR\");continue}let r=!1,u=c;for(;0==e[m[l[u]]];){let n;if(u+=1,u==l.length)break;if((\"minsec\"==i||\"hourmin\"==i)&&!r){if(\"minsec\"==i&&0==e[4]&&0!=e[5]||\"hourmin\"==i&&0==e[3]&&0!=e[4]){n=this._width_formats[l[c-1]][1][0],t=d(s,n);break}r=!0}n=this._width_formats[l[u]][1][0],t=d(s,n)}if(this.strip_leading_zeros){let s=t.replace(/^0+/g,\"\");s!=t&&isNaN(parseInt(s))&&(s=\"0\"+s),a.push(s)}else a.push(t)}return a}}e.DatetimeTickFormatter=_,_.__name__=\"DatetimeTickFormatter\",_.init_DatetimeTickFormatter()},\n      function _(e,t,n){!function(e){\"object\"==typeof t&&t.exports?t.exports=e():\"function\"==typeof define?define(e):this.tz=e()}((function(){function e(e,t,n){var r,o=t.day[1];do{r=new Date(Date.UTC(n,t.month,Math.abs(o++)))}while(t.day[0]<7&&r.getUTCDay()!=t.day[0]);return(r={clock:t.clock,sort:r.getTime(),rule:t,save:6e4*t.save,offset:e.offset})[r.clock]=r.sort+6e4*t.time,r.posix?r.wallclock=r[r.clock]+(e.offset+t.saved):r.posix=r[r.clock]-(e.offset+t.saved),r}function t(t,n,r){var o,a,u,i,l,s,c,f=t[t.zone],h=[],T=new Date(r).getUTCFullYear(),g=1;for(o=1,a=f.length;o<a&&!(f[o][n]<=r);o++);if((u=f[o]).rules){for(s=t[u.rules],c=T+1;c>=T-g;--c)for(o=0,a=s.length;o<a;o++)s[o].from<=c&&c<=s[o].to?h.push(e(u,s[o],c)):s[o].to<c&&1==g&&(g=c-s[o].to);for(h.sort((function(e,t){return e.sort-t.sort})),o=0,a=h.length;o<a;o++)r>=h[o][n]&&h[o][h[o].clock]>u[h[o].clock]&&(i=h[o])}return i&&((l=/^(.*)\\/(.*)$/.exec(u.format))?i.abbrev=l[i.save?2:1]:i.abbrev=u.format.replace(/%s/,i.rule.letter)),i||u}function n(e,n){return\"UTC\"==e.zone?n:(e.entry=t(e,\"posix\",n),n+e.entry.offset+e.entry.save)}function r(e,n){return\"UTC\"==e.zone?n:(e.entry=r=t(e,\"wallclock\",n),0<(o=n-r.wallclock)&&o<r.save?null:n-r.offset-r.save);var r,o}function o(e,t,o){var a,i=+(o[1]+1),s=o[2]*i,c=u.indexOf(o[3].toLowerCase());if(c>9)t+=s*l[c-10];else{if(a=new Date(n(e,t)),c<7)for(;s;)a.setUTCDate(a.getUTCDate()+i),a.getUTCDay()==c&&(s-=i);else 7==c?a.setUTCFullYear(a.getUTCFullYear()+s):8==c?a.setUTCMonth(a.getUTCMonth()+s):a.setUTCDate(a.getUTCDate()+s);null==(t=r(e,a.getTime()))&&(t=r(e,a.getTime()+864e5*i)-864e5*i)}return t}var a={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(e,t,n,r){var o,a,u=this.entry.offset+this.entry.save,i=Math.abs(u/1e3),l=[],s=3600;for(o=0;o<3;o++)l.push((\"0\"+Math.floor(i/s)).slice(-2)),i%=s,s/=60;return\"^\"!=n||u?(\"^\"==n&&(r=3),3==r?(a=(a=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=n&&(a=a.replace(/:00$/,\"\"))):r?(a=l.slice(0,r+1).join(\":\"),\"^\"==n&&(a=a.replace(/:00$/,\"\"))):a=l.slice(0,2).join(\"\"),a=(a=(u<0?\"-\":\"+\")+a).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[n]||\"$1$2\")):\"Z\"},\"%\":function(e){return\"%\"},n:function(e){return\"\\n\"},t:function(e){return\"\\t\"},U:function(e){return s(e,0)},W:function(e){return s(e,1)},V:function(e){return c(e)[0]},G:function(e){return c(e)[1]},g:function(e){return c(e)[1]%100},j:function(e){return Math.floor((e.getTime()-Date.UTC(e.getUTCFullYear(),0))/864e5)+1},s:function(e){return Math.floor(e.getTime()/1e3)},C:function(e){return Math.floor(e.getUTCFullYear()/100)},N:function(e){return e.getTime()%1e3*1e6},m:function(e){return e.getUTCMonth()+1},Y:function(e){return e.getUTCFullYear()},y:function(e){return e.getUTCFullYear()%100},H:function(e){return e.getUTCHours()},M:function(e){return e.getUTCMinutes()},S:function(e){return e.getUTCSeconds()},e:function(e){return e.getUTCDate()},d:function(e){return e.getUTCDate()},u:function(e){return e.getUTCDay()||7},w:function(e){return e.getUTCDay()},l:function(e){return e.getUTCHours()%12||12},I:function(e){return e.getUTCHours()%12||12},k:function(e){return e.getUTCHours()},Z:function(e){return this.entry.abbrev},a:function(e){return this[this.locale].day.abbrev[e.getUTCDay()]},A:function(e){return this[this.locale].day.full[e.getUTCDay()]},h:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},b:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},B:function(e){return this[this.locale].month.full[e.getUTCMonth()]},P:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)].toLowerCase()},p:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)]},R:function(e,t){return this.convert([t,\"%H:%M\"])},T:function(e,t){return this.convert([t,\"%H:%M:%S\"])},D:function(e,t){return this.convert([t,\"%m/%d/%y\"])},F:function(e,t){return this.convert([t,\"%Y-%m-%d\"])},x:function(e,t){return this.convert([t,this[this.locale].date])},r:function(e,t){return this.convert([t,this[this.locale].time12||\"%I:%M:%S\"])},X:function(e,t){return this.convert([t,this[this.locale].time24])},c:function(e,t){return this.convert([t,this[this.locale].dateTime])},convert:function(e){if(!e.length)return\"1.0.23\";var t,a,u,l,s,c=Object.create(this),f=[];for(t=0;t<e.length;t++)if(l=e[t],Array.isArray(l))t||isNaN(l[1])?l.splice.apply(e,[t--,1].concat(l)):s=l;else if(isNaN(l)){if(\"string\"==(u=typeof l))~l.indexOf(\"%\")?c.format=l:t||\"*\"!=l?!t&&(u=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(l))?((s=[]).push.apply(s,u.slice(1,8)),u[9]?(s.push(u[10]+1),s.push.apply(s,u[11].split(/:/))):u[8]&&s.push(1)):/^\\w{2,3}_\\w{2}$/.test(l)?c.locale=l:(u=i.exec(l))?f.push(u):c.zone=l:s=l;else if(\"function\"==u){if(u=l.call(c))return u}else if(/^\\w{2,3}_\\w{2}$/.test(l.name))c[l.name]=l;else if(l.zones){for(u in l.zones)c[u]=l.zones[u];for(u in l.rules)c[u]=l.rules[u]}}else t||(s=l);if(c[c.locale]||delete c.locale,c[c.zone]||delete c.zone,null!=s){if(\"*\"==s)s=c.clock();else if(Array.isArray(s)){for(u=[],a=!s[7],t=0;t<11;t++)u[t]=+(s[t]||0);--u[1],s=Date.UTC.apply(Date.UTC,u)+-u[7]*(36e5*u[8]+6e4*u[9]+1e3*u[10])}else s=Math.floor(s);if(!isNaN(s)){if(a&&(s=r(c,s)),null==s)return s;for(t=0,a=f.length;t<a;t++)s=o(c,s,f[t]);return c.format?(u=new Date(n(c,s)),c.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,(function(e,t,n,r,o){var a,i,l=\"0\";if(a=c[o]){for(e=String(a.call(c,u,s,t,n.length)),\"_\"==(t||a.style)&&(l=\" \"),i=\"-\"==t?0:a.pad||0;e.length<i;)e=l+e;for(i=\"-\"==t?0:r||a.pad;e.length<i;)e=l+e;\"N\"==o&&i<e.length&&(e=e.slice(0,i)),\"^\"==t&&(e=e.toUpperCase())}return e}))):s}}return function(){return c.convert(arguments)}},locale:\"en_US\",en_US:{date:\"%m/%d/%Y\",time24:\"%I:%M:%S %p\",time12:\"%I:%M:%S %p\",dateTime:\"%a %d %b %Y %I:%M:%S %p %Z\",meridiem:[\"AM\",\"PM\"],month:{abbrev:\"Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec\".split(\"|\"),full:\"January|February|March|April|May|June|July|August|September|October|November|December\".split(\"|\")},day:{abbrev:\"Sun|Mon|Tue|Wed|Thu|Fri|Sat\".split(\"|\"),full:\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday\".split(\"|\")}}},u=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",i=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+u+\")s?\\\\s*$\",\"i\"),l=[36e5,6e4,1e3,1];function s(e,t){var n,r,o;return r=new Date(Date.UTC(e.getUTCFullYear(),0)),n=Math.floor((e.getTime()-r.getTime())/864e5),r.getUTCDay()==t?o=0:8==(o=7-r.getUTCDay()+t)&&(o=1),n>=o?Math.floor((n-o)/7)+1:0}function c(e){var t,n,r;return n=e.getUTCFullYear(),t=new Date(Date.UTC(n,0)).getUTCDay(),(r=s(e,1)+(t>1&&t<=4?1:0))?53!=r||4==t||3==t&&29==new Date(n,1,29).getDate()?[r,e.getUTCFullYear()]:[1,e.getUTCFullYear()+1]:(n=e.getUTCFullYear()-1,[r=4==(t=new Date(Date.UTC(n,0)).getUTCDay())||3==t&&29==new Date(n,1,29).getDate()?53:52,e.getUTCFullYear()-1])}return u=u.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,(function(e){a[e].pad=2})),a.N.pad=9,a.j.pad=3,a.k.style=\"_\",a.l.style=\"_\",a.e.style=\"_\",function(){return a.convert(arguments)}}))},\n      function _(r,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=r(1),i=n.__importStar(r(188)),u=r(189),a=n.__importDefault(r(186)),f=r(29),o=r(8);function l(r,...e){return u.sprintf(r,...e)}function s(r,e,t){if(o.isNumber(r)){return l((()=>{switch(!1){case Math.floor(r)!=r:return\"%d\";case!(Math.abs(r)>.1&&Math.abs(r)<1e3):return\"%0.3f\";default:return\"%0.3e\"}})(),r)}return\"\"+r}function c(r,e,n){if(null==e)return s;if(null!=n&&r in n){const e=n[r];if(o.isString(e)){if(e in t.DEFAULT_FORMATTERS)return t.DEFAULT_FORMATTERS[e];throw new Error(`Unknown tooltip field formatter type '${e}'`)}return function(r,t,n){return e.format(r,t,n)}}return t.DEFAULT_FORMATTERS.numeral}function m(r,e,t,n){if(\"$\"==r[0]){return function(r,e){if(r in e)return e[r];throw new Error(`Unknown special variable '$${r}'`)}(r.substring(1),n)}return function(r,e,t){const n=e.get_column(r);if(null==n)return null;if(o.isNumber(t))return n[t];const i=n[t.index];if(o.isTypedArray(i)||o.isArray(i)){if(o.isArray(i[0])){return i[t.dim2][t.dim1]}return i[t.flat_index]}return i}(r.substring(1).replace(/[{}]/g,\"\"),e,t)}t.DEFAULT_FORMATTERS={numeral:(r,e,t)=>i.format(r,e),datetime:(r,e,t)=>a.default(r,e),printf:(r,e,t)=>l(e,r)},t.sprintf=l,t.basic_formatter=s,t.get_formatter=c,t.get_value=m,t.replace_placeholders=function(r,e,t,n,i={}){let u,a;if(o.isString(r)?(u=r,a=!1):(u=r.html,a=!0),u=u.replace(/@\\$name/g,r=>`@{${i.name}}`),u=u.replace(/((?:\\$\\w+)|(?:@\\w+)|(?:@{(?:[^{}]+)}))(?:{([^{}]+)})?/g,(r,u,o)=>{const l=m(u,e,t,i);if(null==l)return\"\"+f.escape(\"???\");if(\"safe\"==o)return a=!0,\"\"+l;const s=c(u,o,n);return\"\"+f.escape(s(l,o,i))}),a){return[...(new DOMParser).parseFromString(u,\"text/html\").body.childNodes]}return u}},\n      function _(e,n,t){\n      /*!\n           * numbro.js\n           * version : 1.6.2\n           * author : Företagsplatsen AB\n           * license : MIT\n           * http://www.foretagsplatsen.se\n           */\n      var r,i={},a=i,o=\"en-US\",l=null,u=\"0,0\";void 0!==n&&n.exports;function c(e){this._value=e}function s(e){var n,t=\"\";for(n=0;n<e;n++)t+=\"0\";return t}function f(e,n,t,r){var i,a,o=Math.pow(10,n);return a=e.toFixed(0).search(\"e\")>-1?function(e,n){var t,r,i,a;return t=(a=e.toString()).split(\"e\")[0],i=a.split(\"e\")[1],a=t.split(\".\")[0]+(r=t.split(\".\")[1]||\"\")+s(i-r.length),n>0&&(a+=\".\"+s(n)),a}(e,n):(t(e*o)/o).toFixed(n),r&&(i=new RegExp(\"0{1,\"+r+\"}$\"),a=a.replace(i,\"\")),a}function d(e,n,t){return n.indexOf(\"$\")>-1?function(e,n,t){var r,a,l=n,u=l.indexOf(\"$\"),c=l.indexOf(\"(\"),s=l.indexOf(\"+\"),f=l.indexOf(\"-\"),d=\"\",p=\"\";-1===l.indexOf(\"$\")?\"infix\"===i[o].currency.position?(p=i[o].currency.symbol,i[o].currency.spaceSeparated&&(p=\" \"+p+\" \")):i[o].currency.spaceSeparated&&(d=\" \"):l.indexOf(\" $\")>-1?(d=\" \",l=l.replace(\" $\",\"\")):l.indexOf(\"$ \")>-1?(d=\" \",l=l.replace(\"$ \",\"\")):l=l.replace(\"$\",\"\");if(a=h(e,l,t,p),-1===n.indexOf(\"$\"))switch(i[o].currency.position){case\"postfix\":a.indexOf(\")\")>-1?((a=a.split(\"\")).splice(-1,0,d+i[o].currency.symbol),a=a.join(\"\")):a=a+d+i[o].currency.symbol;break;case\"infix\":break;case\"prefix\":a.indexOf(\"(\")>-1||a.indexOf(\"-\")>-1?(a=a.split(\"\"),r=Math.max(c,f)+1,a.splice(r,0,i[o].currency.symbol+d),a=a.join(\"\")):a=i[o].currency.symbol+d+a;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else u<=1?a.indexOf(\"(\")>-1||a.indexOf(\"+\")>-1||a.indexOf(\"-\")>-1?(a=a.split(\"\"),r=1,(u<c||u<s||u<f)&&(r=0),a.splice(r,0,i[o].currency.symbol+d),a=a.join(\"\")):a=i[o].currency.symbol+d+a:a.indexOf(\")\")>-1?((a=a.split(\"\")).splice(-1,0,d+i[o].currency.symbol),a=a.join(\"\")):a=a+d+i[o].currency.symbol;return a}(e,n,t):n.indexOf(\"%\")>-1?function(e,n,t){var r,i=\"\";e*=100,n.indexOf(\" %\")>-1?(i=\" \",n=n.replace(\" %\",\"\")):n=n.replace(\"%\",\"\");(r=h(e,n,t)).indexOf(\")\")>-1?((r=r.split(\"\")).splice(-1,0,i+\"%\"),r=r.join(\"\")):r=r+i+\"%\";return r}(e,n,t):n.indexOf(\":\")>-1?function(e){var n=Math.floor(e/60/60),t=Math.floor((e-60*n*60)/60),r=Math.round(e-60*n*60-60*t);return n+\":\"+(t<10?\"0\"+t:t)+\":\"+(r<10?\"0\"+r:r)}(e):h(e,n,t)}function h(e,n,t,r){var a,u,c,s,d,h,p,m,x,g,O,b,w,y,M,v,$,B=!1,E=!1,F=!1,k=\"\",U=!1,N=!1,S=!1,j=!1,D=!1,C=\"\",L=\"\",T=Math.abs(e),K=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],G=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",P=!1,R=!1;if(0===e&&null!==l)return l;if(!isFinite(e))return\"\"+e;if(0===n.indexOf(\"{\")){var W=n.indexOf(\"}\");if(-1===W)throw Error('Format should also contain a \"}\"');b=n.slice(1,W),n=n.slice(W+1)}else b=\"\";if(n.indexOf(\"}\")===n.length-1){var Y=n.indexOf(\"{\");if(-1===Y)throw Error('Format should also contain a \"{\"');w=n.slice(Y+1,-1),n=n.slice(0,Y+1)}else w=\"\";if(v=null===($=-1===n.indexOf(\".\")?n.match(/([0-9]+).*/):n.match(/([0-9]+)\\..*/))?-1:$[1].length,-1!==n.indexOf(\"-\")&&(P=!0),n.indexOf(\"(\")>-1?(B=!0,n=n.slice(1,-1)):n.indexOf(\"+\")>-1&&(E=!0,n=n.replace(/\\+/g,\"\")),n.indexOf(\"a\")>-1){if(g=n.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],g=parseInt(g[0],10),U=n.indexOf(\"aK\")>=0,N=n.indexOf(\"aM\")>=0,S=n.indexOf(\"aB\")>=0,j=n.indexOf(\"aT\")>=0,D=U||N||S||j,n.indexOf(\" a\")>-1?(k=\" \",n=n.replace(\" a\",\"\")):n=n.replace(\"a\",\"\"),p=0===(p=(d=Math.floor(Math.log(T)/Math.LN10)+1)%3)?3:p,g&&0!==T&&(h=Math.floor(Math.log(T)/Math.LN10)+1-g,m=3*~~((Math.min(g,d)-p)/3),T/=Math.pow(10,m),-1===n.indexOf(\".\")&&g>3))for(n+=\"[.]\",M=(M=0===h?0:3*~~(h/3)-h)<0?M+3:M,a=0;a<M;a++)n+=\"0\";Math.floor(Math.log(Math.abs(e))/Math.LN10)+1!==g&&(T>=Math.pow(10,12)&&!D||j?(k+=i[o].abbreviations.trillion,e/=Math.pow(10,12)):T<Math.pow(10,12)&&T>=Math.pow(10,9)&&!D||S?(k+=i[o].abbreviations.billion,e/=Math.pow(10,9)):T<Math.pow(10,9)&&T>=Math.pow(10,6)&&!D||N?(k+=i[o].abbreviations.million,e/=Math.pow(10,6)):(T<Math.pow(10,6)&&T>=Math.pow(10,3)&&!D||U)&&(k+=i[o].abbreviations.thousand,e/=Math.pow(10,3)))}if(n.indexOf(\"b\")>-1)for(n.indexOf(\" b\")>-1?(C=\" \",n=n.replace(\" b\",\"\")):n=n.replace(\"b\",\"\"),s=0;s<=K.length;s++)if(u=Math.pow(1024,s),c=Math.pow(1024,s+1),e>=u&&e<c){C+=K[s],u>0&&(e/=u);break}if(n.indexOf(\"d\")>-1)for(n.indexOf(\" d\")>-1?(C=\" \",n=n.replace(\" d\",\"\")):n=n.replace(\"d\",\"\"),s=0;s<=G.length;s++)if(u=Math.pow(1e3,s),c=Math.pow(1e3,s+1),e>=u&&e<c){C+=G[s],u>0&&(e/=u);break}if(n.indexOf(\"o\")>-1&&(n.indexOf(\" o\")>-1?(L=\" \",n=n.replace(\" o\",\"\")):n=n.replace(\"o\",\"\"),i[o].ordinal&&(L+=i[o].ordinal(e))),n.indexOf(\"[.]\")>-1&&(F=!0,n=n.replace(\"[.]\",\".\")),x=e.toString().split(\".\")[0],O=n.split(\".\")[1],y=n.indexOf(\",\"),O){if(x=(I=-1!==O.indexOf(\"*\")?f(e,e.toString().split(\".\")[1].length,t):O.indexOf(\"[\")>-1?f(e,(O=(O=O.replace(\"]\",\"\")).split(\"[\"))[0].length+O[1].length,t,O[1].length):f(e,O.length,t)).split(\".\")[0],I.split(\".\")[1].length)I=(r?k+r:i[o].delimiters.decimal)+I.split(\".\")[1];else I=\"\";F&&0===Number(I.slice(1))&&(I=\"\")}else x=f(e,null,t);return x.indexOf(\"-\")>-1&&(x=x.slice(1),R=!0),x.length<v&&(x=new Array(v-x.length+1).join(\"0\")+x),y>-1&&(x=x.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+i[o].delimiters.thousands)),0===n.indexOf(\".\")&&(x=\"\"),b+(n.indexOf(\"(\")<n.indexOf(\"-\")?(B&&R?\"(\":\"\")+(P&&R||!B&&R?\"-\":\"\"):(P&&R||!B&&R?\"-\":\"\")+(B&&R?\"(\":\"\"))+(!R&&E&&0!==e?\"+\":\"\")+x+I+(L||\"\")+(k&&!r?k:\"\")+(C||\"\")+(B&&R?\")\":\"\")+w}function p(e,n){i[e]=n}function m(e){o=e;var n=i[e].defaults;n&&n.format&&r.defaultFormat(n.format),n&&n.currencyFormat&&r.defaultCurrencyFormat(n.currencyFormat)}(r=function(e){return r.isNumbro(e)?e=e.value():0===e||void 0===e?e=0:Number(e)||(e=r.fn.unformat(e)),new c(Number(e))}).version=\"1.6.2\",r.isNumbro=function(e){return e instanceof c},r.setLanguage=function(e,n){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var t=e,r=e.split(\"-\")[0],i=null;a[t]||(Object.keys(a).forEach((function(e){i||e.split(\"-\")[0]!==r||(i=e)})),t=i||n||\"en-US\"),m(t)},r.setCulture=function(e,n){var t=e,r=e.split(\"-\")[1],a=null;i[t]||(r&&Object.keys(i).forEach((function(e){a||e.split(\"-\")[1]!==r||(a=e)})),t=a||n||\"en-US\"),m(t)},r.language=function(e,n){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!e)return o;if(e&&!n){if(!a[e])throw new Error(\"Unknown language : \"+e);m(e)}return!n&&a[e]||p(e,n),r},r.culture=function(e,n){if(!e)return o;if(e&&!n){if(!i[e])throw new Error(\"Unknown culture : \"+e);m(e)}return!n&&i[e]||p(e,n),r},r.languageData=function(e){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!e)return a[o];if(!a[e])throw new Error(\"Unknown language : \"+e);return a[e]},r.cultureData=function(e){if(!e)return i[o];if(!i[e])throw new Error(\"Unknown culture : \"+e);return i[e]},r.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(e){var n=e%10;return 1==~~(e%100/10)?\"th\":1===n?\"st\":2===n?\"nd\":3===n?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),r.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),a},r.cultures=function(){return i},r.zeroFormat=function(e){l=\"string\"==typeof e?e:null},r.defaultFormat=function(e){u=\"string\"==typeof e?e:\"0.0\"},r.defaultCurrencyFormat=function(e){\"string\"==typeof e?e:\"0$\"},r.validate=function(e,n){var t,i,a,o,l,u,c,s;if(\"string\"!=typeof e&&(e+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",e)),(e=e.trim()).match(/^\\d+$/))return!0;if(\"\"===e)return!1;try{c=r.cultureData(n)}catch(e){c=r.cultureData(r.culture())}return a=c.currency.symbol,l=c.abbreviations,t=c.delimiters.decimal,i=\".\"===c.delimiters.thousands?\"\\\\.\":c.delimiters.thousands,(null===(s=e.match(/^[^\\d]+/))||(e=e.substr(1),s[0]===a))&&((null===(s=e.match(/[^\\d]+$/))||(e=e.slice(0,-1),s[0]===l.thousand||s[0]===l.million||s[0]===l.billion||s[0]===l.trillion))&&(u=new RegExp(i+\"{2}\"),!e.match(/[^\\d.,]/g)&&(!((o=e.split(t)).length>2)&&(o.length<2?!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u):1===o[0].length?!!o[0].match(/^\\d+$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/):!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/)))))},n.exports={format:function(e,n,t,i){return null!=t&&t!==r.culture()&&r.setCulture(t),d(Number(e),null!=n?n:u,null==i?Math.round:i)}}},\n      function _(e,n,t){!function(){\"use strict\";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\\x25]+/,modulo:/^\\x25{2}/,placeholder:/^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\\d]*)/i,key_access:/^\\.([a-z_][a-z_\\d]*)/i,index_access:/^\\[(\\d+)\\]/,sign:/^[+-]/};function n(e){return i(a(e),arguments)}function r(e,t){return n.apply(null,[e].concat(t||[]))}function i(t,r){var i,s,a,o,p,c,l,u,f,d=1,g=t.length,y=\"\";for(s=0;s<g;s++)if(\"string\"==typeof t[s])y+=t[s];else if(\"object\"==typeof t[s]){if((o=t[s]).keys)for(i=r[d],a=0;a<o.keys.length;a++){if(null==i)throw new Error(n('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"',o.keys[a],o.keys[a-1]));i=i[o.keys[a]]}else i=o.param_no?r[o.param_no]:r[d++];if(e.not_type.test(o.type)&&e.not_primitive.test(o.type)&&i instanceof Function&&(i=i()),e.numeric_arg.test(o.type)&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(n(\"[sprintf] expecting number but found %T\",i));switch(e.number.test(o.type)&&(u=i>=0),o.type){case\"b\":i=parseInt(i,10).toString(2);break;case\"c\":i=String.fromCharCode(parseInt(i,10));break;case\"d\":case\"i\":i=parseInt(i,10);break;case\"j\":i=JSON.stringify(i,null,o.width?parseInt(o.width):0);break;case\"e\":i=o.precision?parseFloat(i).toExponential(o.precision):parseFloat(i).toExponential();break;case\"f\":i=o.precision?parseFloat(i).toFixed(o.precision):parseFloat(i);break;case\"g\":i=o.precision?String(Number(i.toPrecision(o.precision))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o.precision?i.substring(0,o.precision):i;break;case\"t\":i=String(!!i),i=o.precision?i.substring(0,o.precision):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o.precision?i.substring(0,o.precision):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o.precision?i.substring(0,o.precision):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}e.json.test(o.type)?y+=i:(!e.number.test(o.type)||u&&!o.sign?f=\"\":(f=u?\"+\":\"-\",i=i.toString().replace(e.sign,\"\")),c=o.pad_char?\"0\"===o.pad_char?\"0\":o.pad_char.charAt(1):\" \",l=o.width-(f+i).length,p=o.width&&l>0?c.repeat(l):\"\",y+=o.align?f+i+p:\"0\"===c?f+p+i:p+f+i)}return y}var s=Object.create(null);function a(n){if(s[n])return s[n];for(var t,r=n,i=[],a=0;r;){if(null!==(t=e.text.exec(r)))i.push(t[0]);else if(null!==(t=e.modulo.exec(r)))i.push(\"%\");else{if(null===(t=e.placeholder.exec(r)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(t[2]){a|=1;var o=[],p=t[2],c=[];if(null===(c=e.key.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(c[1]);\"\"!==(p=p.substring(c[0].length));)if(null!==(c=e.key_access.exec(p)))o.push(c[1]);else{if(null===(c=e.index_access.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(c[1])}t[2]=o}else a|=2;if(3===a)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");i.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return s[n]=i}void 0!==t&&(t.sprintf=n,t.vsprintf=r),\"undefined\"!=typeof window&&(window.sprintf=n,window.vsprintf=r,\"function\"==typeof define&&define.amd&&define((function(){return{sprintf:n,vsprintf:r}})))}()},\n      function _(e,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(9),a=e(127),s=e(191),r=e(192),c=e(195),_=e(196),m=e(194);class k extends s.CompositeTicker{constructor(e){super(e)}static init_DatetimeTicker(){this.override({num_minor_ticks:0,tickers:()=>[new a.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*m.ONE_MILLI,num_minor_ticks:0}),new a.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:m.ONE_SECOND,max_interval:30*m.ONE_MINUTE,num_minor_ticks:0}),new a.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:m.ONE_HOUR,max_interval:12*m.ONE_HOUR,num_minor_ticks:0}),new r.DaysTicker({days:t.range(1,32)}),new r.DaysTicker({days:t.range(1,31,3)}),new r.DaysTicker({days:[1,8,15,22]}),new r.DaysTicker({days:[1,15]}),new c.MonthsTicker({months:t.range(0,12,1)}),new c.MonthsTicker({months:t.range(0,12,2)}),new c.MonthsTicker({months:t.range(0,12,4)}),new c.MonthsTicker({months:t.range(0,12,6)}),new _.YearsTicker({})]})}}n.DatetimeTicker=k,k.__name__=\"DatetimeTicker\",k.init_DatetimeTicker()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=t(1),s=t(128),n=r.__importStar(t(18)),_=t(9);class a extends s.ContinuousTicker{constructor(t){super(t)}static init_CompositeTicker(){this.define({tickers:[n.Array,[]]})}get min_intervals(){return this.tickers.map(t=>t.get_min_interval())}get max_intervals(){return this.tickers.map(t=>t.get_max_interval())}get min_interval(){return this.min_intervals[0]}get max_interval(){return this.max_intervals[0]}get_best_ticker(t,e,i){const r=e-t,s=this.get_ideal_interval(t,e,i),n=[_.sorted_index(this.min_intervals,s)-1,_.sorted_index(this.max_intervals,s)],a=[this.min_intervals[n[0]],this.max_intervals[n[1]]].map(t=>Math.abs(i-r/t));let c;if(_.is_empty(a.filter(t=>!isNaN(t))))c=this.tickers[0];else{const t=n[_.argmin(a)];c=this.tickers[t]}return c}get_interval(t,e,i){return this.get_best_ticker(t,e,i).get_interval(t,e,i)}get_ticks_no_defaults(t,e,i,r){return this.get_best_ticker(t,e,r).get_ticks_no_defaults(t,e,i,r)}}i.CompositeTicker=a,a.__name__=\"CompositeTicker\",a.init_CompositeTicker()},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=t(1),s=t(193),a=t(194),o=i.__importStar(t(18)),r=t(9);class _ extends s.SingleIntervalTicker{constructor(t){super(t)}static init_DaysTicker(){this.define({days:[o.Array,[]]}),this.override({num_minor_ticks:0})}initialize(){super.initialize();const t=this.days;t.length>1?this.interval=(t[1]-t[0])*a.ONE_DAY:this.interval=31*a.ONE_DAY}get_ticks_no_defaults(t,e,n,i){const s=function(t,e){const n=a.last_month_no_later_than(new Date(t)),i=a.last_month_no_later_than(new Date(e));i.setUTCMonth(i.getUTCMonth()+1);const s=[],o=n;for(;s.push(a.copy_date(o)),o.setUTCMonth(o.getUTCMonth()+1),!(o>i););return s}(t,e),o=this.days,_=this.interval;return{major:r.concat(s.map(t=>((t,e)=>{const n=t.getUTCMonth(),i=[];for(const s of o){const o=a.copy_date(t);o.setUTCDate(s);new Date(o.getTime()+e/2).getUTCMonth()==n&&i.push(o)}return i})(t,_))).map(t=>t.getTime()).filter(n=>t<=n&&n<=e),minor:[]}}}n.DaysTicker=_,_.__name__=\"DaysTicker\",_.init_DaysTicker()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),r=e(128),l=n.__importStar(e(18));class a extends r.ContinuousTicker{constructor(e){super(e)}static init_SingleIntervalTicker(){this.define({interval:[l.Number]})}get_interval(e,t,i){return this.interval}get min_interval(){return this.interval}get max_interval(){return this.interval}}i.SingleIntervalTicker=a,a.__name__=\"SingleIntervalTicker\",a.init_SingleIntervalTicker()},\n      function _(t,e,n){function _(t){return new Date(t.getTime())}function O(t){const e=_(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}Object.defineProperty(n,\"__esModule\",{value:!0}),n.ONE_MILLI=1,n.ONE_SECOND=1e3,n.ONE_MINUTE=60*n.ONE_SECOND,n.ONE_HOUR=60*n.ONE_MINUTE,n.ONE_DAY=24*n.ONE_HOUR,n.ONE_MONTH=30*n.ONE_DAY,n.ONE_YEAR=365*n.ONE_DAY,n.copy_date=_,n.last_month_no_later_than=O,n.last_year_no_later_than=function(t){const e=O(t);return e.setUTCMonth(0),e}},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),i=t(193),s=t(194),a=r.__importStar(t(18)),o=t(9);class _ extends i.SingleIntervalTicker{constructor(t){super(t)}static init_MonthsTicker(){this.define({months:[a.Array,[]]})}initialize(){super.initialize();const t=this.months;t.length>1?this.interval=(t[1]-t[0])*s.ONE_MONTH:this.interval=12*s.ONE_MONTH}get_ticks_no_defaults(t,e,n,r){const i=function(t,e){const n=s.last_year_no_later_than(new Date(t)),r=s.last_year_no_later_than(new Date(e));r.setUTCFullYear(r.getUTCFullYear()+1);const i=[],a=n;for(;i.push(s.copy_date(a)),a.setUTCFullYear(a.getUTCFullYear()+1),!(a>r););return i}(t,e),a=this.months;return{major:o.concat(i.map(t=>a.map(e=>{const n=s.copy_date(t);return n.setUTCMonth(e),n}))).map(t=>t.getTime()).filter(n=>t<=n&&n<=e),minor:[]}}}n.MonthsTicker=_,_.__name__=\"MonthsTicker\",_.init_MonthsTicker()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(126),r=e(193),n=e(194);class _ extends r.SingleIntervalTicker{constructor(e){super(e)}initialize(){super.initialize(),this.interval=n.ONE_YEAR,this.basic_ticker=new i.BasicTicker({num_minor_ticks:0})}get_ticks_no_defaults(e,t,a,i){const r=n.last_year_no_later_than(new Date(e)).getUTCFullYear(),_=n.last_year_no_later_than(new Date(t)).getUTCFullYear();return{major:this.basic_ticker.get_ticks_no_defaults(r,_,a,i).major.map(e=>Date.UTC(e,0,1)).filter(a=>e<=a&&a<=t),minor:[]}}}a.YearsTicker=_,_.__name__=\"YearsTicker\"},\n      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(177),o=e(182),n=e(198),r=e(199);class _ extends s.AxisView{}t.LogAxisView=_,_.__name__=\"LogAxisView\";class c extends o.ContinuousAxis{constructor(e){super(e)}static init_LogAxis(){this.prototype.default_view=_,this.override({ticker:()=>new r.LogTicker,formatter:()=>new n.LogTickFormatter})}}t.LogAxis=c,c.__name__=\"LogAxis\",c.init_LogAxis()},\n      function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=t(1),o=t(131),a=t(130),n=i.__importStar(t(18));class c extends o.TickFormatter{constructor(t){super(t)}static init_LogTickFormatter(){this.define({ticker:[n.Instance,null]})}initialize(){super.initialize(),this.basic_formatter=new a.BasicTickFormatter}doFormat(t,e){if(0==t.length)return[];const r=null!=this.ticker?this.ticker.base:10;let i=!1;const o=new Array(t.length);for(let e=0,a=t.length;e<a;e++)if(o[e]=`${r}^${Math.round(Math.log(t[e])/Math.log(r))}`,e>0&&o[e]==o[e-1]){i=!0;break}return i?this.basic_formatter.doFormat(t,e):o}}r.LogTickFormatter=c,c.__name__=\"LogTickFormatter\",c.init_LogTickFormatter()},\n      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(127),s=t(9);class n extends i.AdaptiveTicker{constructor(t){super(t)}static init_LogTicker(){this.override({mantissas:[1,5]})}get_ticks_no_defaults(t,o,e,i){const n=this.num_minor_ticks,r=[],c=this.base,a=Math.log(t)/Math.log(c),f=Math.log(o)/Math.log(c),l=f-a;let h;if(isFinite(l))if(l<2){const e=this.get_interval(t,o,i),c=Math.floor(t/e),a=Math.ceil(o/e);if(h=s.range(c,a+1).filter(t=>0!=t).map(t=>t*e).filter(e=>t<=e&&e<=o),n>0&&h.length>0){const t=e/n,o=s.range(0,n).map(o=>o*t);for(const t of o.slice(1))r.push(h[0]-t);for(const t of h)for(const e of o)r.push(t+e)}}else{const t=Math.ceil(.999999*a),o=Math.floor(1.000001*f),e=Math.ceil((o-t)/9);if(h=s.range(t-1,o+1,e).map(t=>c**t),n>0&&h.length>0){const t=c**e/n,o=s.range(1,n+1).map(o=>o*t);for(const t of o)r.push(h[0]/t);r.push(h[0]);for(const t of h)for(const e of o)r.push(t*e)}}else h=[];return{major:h.filter(e=>t<=e&&e<=o),minor:r.filter(e=>t<=e&&e<=o)}}}e.LogTicker=n,n.__name__=\"LogTicker\",n.init_LogTicker()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(177),s=e(184),o=e(201),a=e(202);class c extends i.AxisView{}r.MercatorAxisView=c,c.__name__=\"MercatorAxisView\";class n extends s.LinearAxis{constructor(e){super(e)}static init_MercatorAxis(){this.prototype.default_view=c,this.override({ticker:()=>new a.MercatorTicker({dimension:\"lat\"}),formatter:()=>new o.MercatorTickFormatter({dimension:\"lat\"})})}}r.MercatorAxis=n,n.__name__=\"MercatorAxis\",n.init_MercatorAxis()},\n      function _(r,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const o=r(1),n=r(130),i=o.__importStar(r(18)),c=r(37);class a extends n.BasicTickFormatter{constructor(r){super(r)}static init_MercatorTickFormatter(){this.define({dimension:[i.LatLon]})}doFormat(r,t){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==r.length)return[];const e=r.length,o=new Array(e);if(\"lon\"==this.dimension)for(let n=0;n<e;n++){const[e]=c.wgs84_mercator.invert(r[n],t.loc);o[n]=e}else for(let n=0;n<e;n++){const[,e]=c.wgs84_mercator.invert(t.loc,r[n]);o[n]=e}return super.doFormat(o,t)}}e.MercatorTickFormatter=a,a.__name__=\"MercatorTickFormatter\",a.init_MercatorTickFormatter()},\n      function _(t,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),s=t(126),e=n.__importStar(t(18)),i=t(37);class c extends s.BasicTicker{constructor(t){super(t)}static init_MercatorTicker(){this.define({dimension:[e.LatLon]})}get_ticks_no_defaults(t,o,r,n){if(null==this.dimension)throw new Error(this+\".dimension wasn't configured\");return[t,o]=i.clip_mercator(t,o,this.dimension),\"lon\"==this.dimension?this._get_ticks_lon(t,o,r,n):this._get_ticks_lat(t,o,r,n)}_get_ticks_lon(t,o,r,n){const[s]=i.wgs84_mercator.invert(t,r),[e,c]=i.wgs84_mercator.invert(o,r),_=super.get_ticks_no_defaults(s,e,r,n),a=[];for(const t of _.major)if(i.in_bounds(t,\"lon\")){const[o]=i.wgs84_mercator.compute(t,c);a.push(o)}const m=[];for(const t of _.minor)if(i.in_bounds(t,\"lon\")){const[o]=i.wgs84_mercator.compute(t,c);m.push(o)}return{major:a,minor:m}}_get_ticks_lat(t,o,r,n){const[,s]=i.wgs84_mercator.invert(r,t),[e,c]=i.wgs84_mercator.invert(r,o),_=super.get_ticks_no_defaults(s,c,r,n),a=[];for(const t of _.major)if(i.in_bounds(t,\"lat\")){const[,o]=i.wgs84_mercator.compute(e,t);a.push(o)}const m=[];for(const t of _.minor)if(i.in_bounds(t,\"lat\")){const[,o]=i.wgs84_mercator.compute(e,t);m.push(o)}return{major:a,minor:m}}}r.MercatorTicker=c,c.__name__=\"MercatorTicker\",c.init_MercatorTicker()},\n      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});var t=e(204);o.CustomJS=t.CustomJS;var u=e(206);o.OpenURL=u.OpenURL},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),u=t(205),c=n.__importStar(t(18)),r=t(13),a=t(29);class i extends u.Callback{constructor(t){super(t)}static init_CustomJS(){this.define({args:[c.Any,{}],code:[c.String,\"\"]})}get names(){return r.keys(this.args)}get values(){return r.values(this.args)}get func(){const t=a.use_strict(this.code);return new Function(...this.names,\"cb_obj\",\"cb_data\",t)}execute(t,e={}){return this.func.apply(t,this.values.concat(t,e))}}s.CustomJS=i,i.__name__=\"CustomJS\",i.init_CustomJS()},\n      function _(e,c,l){Object.defineProperty(l,\"__esModule\",{value:!0});const a=e(81);class n extends a.Model{constructor(e){super(e)}}l.Callback=n,n.__name__=\"Callback\"},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(1),i=e(205),s=e(187),r=e(8),c=o.__importStar(e(18));class a extends i.Callback{constructor(e){super(e)}static init_OpenURL(){this.define({url:[c.String,\"http://\"],same_tab:[c.Boolean,!1]})}execute(e,{source:t}){const n=e=>{const n=s.replace_placeholders(this.url,t,e);if(!r.isString(n))throw new Error(\"HTML output is not supported in this context\");this.same_tab?window.location.href=n:window.open(n)},{selected:o}=t;for(const e of o.indices)n(e);for(const e of o.line_indices)n(e)}}n.OpenURL=a,a.__name__=\"OpenURL\",a.init_OpenURL()},\n      function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});var n=a(77);r.Canvas=n.Canvas;var s=a(208);r.CartesianFrame=s.CartesianFrame},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const a=e(209),_=e(146),n=e(157),r=e(158),i=e(210),g=e(98),c=e(212),o=e(13),l=e(11);class h extends c.LayoutItem{constructor(e,t,s,a,_={},n={}){super(),this.in_x_scale=e,this.in_y_scale=t,this.x_range=s,this.y_range=a,this.extra_x_ranges=_,this.extra_y_ranges=n,l.assert(null==e.source_range&&null==e.target_range),l.assert(null==t.source_range&&null==t.target_range),this._configure_scales()}_get_ranges(e,t){return new Map(o.entries(Object.assign(Object.assign({},t),{default:e})))}_get_scales(e,t,s){const c=new Map;for(const[o,l]of t){if((l instanceof i.DataRange1d||l instanceof r.Range1d)&&!(e instanceof _.ContinuousScale))throw new Error(`Range ${l.type} is incompatible is Scale ${e.type}`);if(l instanceof g.FactorRange&&!(e instanceof a.CategoricalScale))throw new Error(`Range ${l.type} is incompatible is Scale ${e.type}`);e instanceof n.LogScale&&l instanceof i.DataRange1d&&(l.scale_hint=\"log\");const t=e.clone();t.setv({source_range:l,target_range:s}),c.set(o,t)}return c}_configure_frame_ranges(){const{bbox:e}=this;this._x_target=new r.Range1d({start:e.left,end:e.right}),this._y_target=new r.Range1d({start:e.bottom,end:e.top})}_configure_scales(){this._configure_frame_ranges(),this._x_ranges=this._get_ranges(this.x_range,this.extra_x_ranges),this._y_ranges=this._get_ranges(this.y_range,this.extra_y_ranges),this._x_scales=this._get_scales(this.in_x_scale,this._x_ranges,this._x_target),this._y_scales=this._get_scales(this.in_y_scale,this._y_ranges,this._y_target)}_update_scales(){this._configure_frame_ranges();for(const[,e]of this._x_scales)e.target_range=this._x_target;for(const[,e]of this._y_scales)e.target_range=this._y_target}_set_geometry(e,t){super._set_geometry(e,t),this._update_scales()}get x_ranges(){return this._x_ranges}get y_ranges(){return this._y_ranges}get x_scales(){return this._x_scales}get y_scales(){return this._y_scales}get x_scale(){return this._x_scales.get(\"default\")}get y_scale(){return this._y_scales.get(\"default\")}get xscales(){return o.to_object(this.x_scales)}get yscales(){return o.to_object(this.y_scales)}}s.CartesianFrame=h,h.__name__=\"CartesianFrame\"},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(147);class _ extends n.Scale{constructor(e){super(e)}compute(e){return super._linear_compute(this.source_range.synthetic(e))}v_compute(e){return super._linear_v_compute(this.source_range.v_synthetic(e))}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}t.CategoricalScale=_,_.__name__=\"CategoricalScale\"},\n      function _(t,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=t(1),a=t(211),s=t(90),l=t(19),_=e.__importStar(t(18)),o=e.__importStar(t(79)),r=t(9);class h extends a.DataRange{constructor(t){super(t),this.have_updated_interactively=!1}static init_DataRange1d(){this.define({start:[_.Number],end:[_.Number],range_padding:[_.Number,.1],range_padding_units:[_.PaddingUnits,\"percent\"],flipped:[_.Boolean,!1],follow:[_.StartEnd],follow_interval:[_.Number],default_span:[_.Number,2],only_visible:[_.Boolean,!1]}),this.internal({scale_hint:[_.String,\"auto\"]})}initialize(){super.initialize(),this._initial_start=this.start,this._initial_end=this.end,this._initial_range_padding=this.range_padding,this._initial_range_padding_units=this.range_padding_units,this._initial_follow=this.follow,this._initial_follow_interval=this.follow_interval,this._initial_default_span=this.default_span,this._plot_bounds=new Map}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}computed_renderers(){const t=this.names;let i=this.renderers;if(0==i.length)for(const t of this.plots){const n=t.renderers.filter(t=>t instanceof s.GlyphRenderer);i=i.concat(n)}t.length>0&&(i=i.filter(i=>r.includes(t,i.name))),l.logger.debug(`computed ${i.length} renderers for ${this}`);for(const t of i)l.logger.trace(\" - \"+t);return i}_compute_plot_bounds(t,i){let n=o.empty();for(const e of t){const t=i.get(e);null==t||!e.visible&&this.only_visible||(n=o.union(n,t))}return n}adjust_bounds_for_aspect(t,i){const n=o.empty();let e=t.x1-t.x0;e<=0&&(e=1);let a=t.y1-t.y0;a<=0&&(a=1);const s=.5*(t.x1+t.x0),l=.5*(t.y1+t.y0);return e<i*a?e=i*a:a=e/i,n.x1=s+.5*e,n.x0=s-.5*e,n.y1=l+.5*a,n.y0=l-.5*a,n}_compute_min_max(t,i){let n,e,a=o.empty();for(const i of t)a=o.union(a,i);return[n,e]=0==i?[a.x0,a.x1]:[a.y0,a.y1],[n,e]}_compute_range(t,i){const n=this.range_padding;let e,a;if(null!=this._initial_start&&(t=this._initial_start),null!=this._initial_end&&(i=this._initial_end),\"log\"==this.scale_hint){let s,_;if((isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(i)||!isFinite(i)||i<=0?.1:i/100,l.logger.warn(\"could not determine minimum data value for log axis, DataRange1d using value \"+t)),(isNaN(i)||!isFinite(i)||i<=0)&&(i=isNaN(t)||!isFinite(t)||t<=0?10:100*t,l.logger.warn(\"could not determine maximum data value for log axis, DataRange1d using value \"+i)),i==t)_=this.default_span+.001,s=Math.log(t)/Math.log(10);else{let e,a;\"percent\"==this.range_padding_units?(e=Math.log(t)/Math.log(10),a=Math.log(i)/Math.log(10),_=(a-e)*(1+n)):(e=Math.log(t-n)/Math.log(10),a=Math.log(i+n)/Math.log(10),_=a-e),s=(e+a)/2}e=10**(s-_/2),a=10**(s+_/2)}else{let s;s=i==t?this.default_span:\"percent\"==this.range_padding_units?(i-t)*(1+n):i-t+2*n;const l=(i+t)/2;e=l-s/2,a=l+s/2}let s=1;this.flipped&&([e,a]=[a,e],s=-1);const _=this.follow_interval;return null!=_&&Math.abs(e-a)>_&&(\"start\"==this.follow?a=e+s*_:\"end\"==this.follow&&(e=a-s*_)),[e,a]}update(t,i,n,e){if(this.have_updated_interactively)return;const a=this.computed_renderers();let s=this._compute_plot_bounds(a,t);null!=e&&(s=this.adjust_bounds_for_aspect(s,e)),this._plot_bounds.set(n,s);const[l,_]=this._compute_min_max(this._plot_bounds.values(),i);let[o,r]=this._compute_range(l,_);null!=this._initial_start&&(\"log\"==this.scale_hint?this._initial_start>0&&(o=this._initial_start):o=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?this._initial_end>0&&(r=this._initial_end):r=this._initial_end);const[h,d]=[this.start,this.end];if(o!=h||r!=d){const t={};o!=h&&(t.start=o),r!=d&&(t.end=r),this.setv(t)}\"auto\"==this.bounds&&this.setv({bounds:[o,r]},{silent:!0}),this.change.emit()}reset(){this.have_updated_interactively=!1,this.setv({range_padding:this._initial_range_padding,range_padding_units:this._initial_range_padding_units,follow:this._initial_follow,follow_interval:this._initial_follow_interval,default_span:this._initial_default_span},{silent:!0}),this.change.emit()}}n.DataRange1d=h,h.__name__=\"DataRange1d\",h.init_DataRange1d()},\n      function _(e,a,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),r=e(99),s=n.__importStar(e(18));class _ extends r.Range{constructor(e){super(e)}static init_DataRange(){this.define({names:[s.Array,[]],renderers:[s.Array,[]]})}}t.DataRange=_,_.__name__=\"DataRange\",_.init_DataRange()},\n      function _(a,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});var e=a(213);t.Sizeable=e.Sizeable,t.SizingPolicy=e.SizingPolicy;var i=a(214);t.Layoutable=i.Layoutable,t.LayoutItem=i.LayoutItem;var n=a(215);t.HStack=n.HStack,t.VStack=n.VStack,t.AnchorLayout=n.AnchorLayout;var r=a(216);t.Grid=r.Grid,t.Row=r.Row,t.Column=r.Column;var c=a(217);t.ContentBox=c.ContentBox,t.VariadicBox=c.VariadicBox},\n      function _(t,h,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(21),{min:d,max:n}=Math;class w{constructor(t={}){this.width=null!=t.width?t.width:0,this.height=null!=t.height?t.height:0}bounded_to({width:t,height:h}){return new w({width:this.width==1/0&&null!=t?t:this.width,height:this.height==1/0&&null!=h?h:this.height})}expanded_to({width:t,height:h}){return new w({width:t!=1/0?n(this.width,t):this.width,height:h!=1/0?n(this.height,h):this.height})}expand_to({width:t,height:h}){this.width=n(this.width,t),this.height=n(this.height,h)}narrowed_to({width:t,height:h}){return new w({width:d(this.width,t),height:d(this.height,h)})}narrow_to({width:t,height:h}){this.width=d(this.width,t),this.height=d(this.height,h)}grow_by({left:t,right:h,top:i,bottom:e}){const d=this.width+t+h,n=this.height+i+e;return new w({width:d,height:n})}shrink_by({left:t,right:h,top:i,bottom:e}){const d=n(this.width-t-h,0),s=n(this.height-i-e,0);return new w({width:d,height:s})}map(t,h){return new w({width:t(this.width),height:(null!=h?h:t)(this.height)})}}i.Sizeable=w,w.__name__=\"Sizeable\",i.SizingPolicy=e.Enum(\"fixed\",\"fit\",\"min\",\"max\")},\n      function _(i,t,h){Object.defineProperty(h,\"__esModule\",{value:!0});const e=i(213),s=i(79),{min:n,max:g,round:a}=Math;class l{constructor(){this._bbox=new s.BBox,this._inner_bbox=new s.BBox}get bbox(){return this._bbox}get inner_bbox(){return this._inner_bbox}get sizing(){return this._sizing}set_sizing(i){const t=i.width_policy||\"fit\",h=i.width,e=null!=i.min_width?i.min_width:0,s=null!=i.max_width?i.max_width:1/0,n=i.height_policy||\"fit\",g=i.height,a=null!=i.min_height?i.min_height:0,l=null!=i.max_height?i.max_height:1/0,_=i.aspect,d=i.margin||{top:0,right:0,bottom:0,left:0},r=!1!==i.visible,w=i.halign||\"start\",o=i.valign||\"start\";this._sizing={width_policy:t,min_width:e,width:h,max_width:s,height_policy:n,min_height:a,height:g,max_height:l,aspect:_,margin:d,visible:r,halign:w,valign:o,size:{width:h,height:g},min_size:{width:e,height:a},max_size:{width:s,height:l}},this._init()}_init(){}_set_geometry(i,t){this._bbox=i,this._inner_bbox=t}set_geometry(i,t){this._set_geometry(i,t||i)}is_width_expanding(){return\"max\"==this.sizing.width_policy}is_height_expanding(){return\"max\"==this.sizing.height_policy}apply_aspect(i,{width:t,height:h}){const{aspect:e}=this.sizing;if(null!=e){const{width_policy:s,height_policy:n}=this.sizing,g=(i,t)=>{const h={max:4,fit:3,min:2,fixed:1};return h[i]>h[t]};if(\"fixed\"!=s&&\"fixed\"!=n)if(s==n){const s=t,n=a(t/e),g=a(h*e),l=h;Math.abs(i.width-s)+Math.abs(i.height-n)<=Math.abs(i.width-g)+Math.abs(i.height-l)?(t=s,h=n):(t=g,h=l)}else g(s,n)?h=a(t/e):t=a(h*e);else\"fixed\"==s?h=a(t/e):\"fixed\"==n&&(t=a(h*e))}return{width:t,height:h}}measure(i){if(!this.sizing.visible)return{width:0,height:0};const t=i=>\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:i,h=i=>\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:i,s=new e.Sizeable(i).shrink_by(this.sizing.margin).map(t,h),n=this._measure(s),g=this.clip_size(n),a=t(g.width),l=h(g.height),_=this.apply_aspect(s,{width:a,height:l});return Object.assign(Object.assign({},n),_)}compute(i={}){const t=this.measure({width:null!=i.width&&this.is_width_expanding()?i.width:1/0,height:null!=i.height&&this.is_height_expanding()?i.height:1/0}),{width:h,height:e}=t,n=new s.BBox({left:0,top:0,width:h,height:e});let g=void 0;if(null!=t.inner){const{left:i,top:n,right:a,bottom:l}=t.inner;g=new s.BBox({left:i,top:n,right:h-a,bottom:e-l})}this.set_geometry(n,g)}get xview(){return this.bbox.xview}get yview(){return this.bbox.yview}clip_width(i){return g(this.sizing.min_width,n(i,this.sizing.max_width))}clip_height(i){return g(this.sizing.min_height,n(i,this.sizing.max_height))}clip_size({width:i,height:t}){return{width:this.clip_width(i),height:this.clip_height(t)}}}h.Layoutable=l,l.__name__=\"Layoutable\";class _ extends l{_measure(i){const{width_policy:t,height_policy:h}=this.sizing;let e,s;if(i.width==1/0)e=null!=this.sizing.width?this.sizing.width:0;else switch(t){case\"fixed\":e=null!=this.sizing.width?this.sizing.width:0;break;case\"min\":e=null!=this.sizing.width?n(i.width,this.sizing.width):0;break;case\"fit\":e=null!=this.sizing.width?n(i.width,this.sizing.width):i.width;break;case\"max\":e=null!=this.sizing.width?g(i.width,this.sizing.width):i.width}if(i.height==1/0)s=null!=this.sizing.height?this.sizing.height:0;else switch(h){case\"fixed\":s=null!=this.sizing.height?this.sizing.height:0;break;case\"min\":s=null!=this.sizing.height?n(i.height,this.sizing.height):0;break;case\"fit\":s=null!=this.sizing.height?n(i.height,this.sizing.height):i.height;break;case\"max\":s=null!=this.sizing.height?g(i.height,this.sizing.height):i.height}return{width:e,height:s}}}h.LayoutItem=_,_.__name__=\"LayoutItem\";class d extends l{_measure(i){const t=this._content_size(),h=i.bounded_to(this.sizing.size).bounded_to(t);return{width:(()=>{switch(this.sizing.width_policy){case\"fixed\":return null!=this.sizing.width?this.sizing.width:t.width;case\"min\":return t.width;case\"fit\":return h.width;case\"max\":return Math.max(t.width,h.width)}})(),height:(()=>{switch(this.sizing.height_policy){case\"fixed\":return null!=this.sizing.height?this.sizing.height:t.height;case\"min\":return t.height;case\"fit\":return h.height;case\"max\":return Math.max(t.height,h.height)}})()}}}h.ContentLayoutable=d,d.__name__=\"ContentLayoutable\"},\n      function _(t,e,h){Object.defineProperty(h,\"__esModule\",{value:!0});const o=t(214),r=t(79);class i extends o.Layoutable{constructor(){super(...arguments),this.children=[]}}h.Stack=i,i.__name__=\"Stack\";class s extends i{_measure(t){let e=0,h=0;for(const t of this.children){const o=t.measure({width:0,height:0});e+=o.width,h=Math.max(h,o.height)}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const{top:h,bottom:o}=t;let{left:i}=t;for(const t of this.children){const{width:e}=t.measure({width:0,height:0});t.set_geometry(new r.BBox({left:i,width:e,top:h,bottom:o})),i+=e}}}h.HStack=s,s.__name__=\"HStack\";class n extends i{_measure(t){let e=0,h=0;for(const t of this.children){const o=t.measure({width:0,height:0});e=Math.max(e,o.width),h+=o.height}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const{left:h,right:o}=t;let{top:i}=t;for(const t of this.children){const{height:e}=t.measure({width:0,height:0});t.set_geometry(new r.BBox({top:i,height:e,left:h,right:o})),i+=e}}}h.VStack=n,n.__name__=\"VStack\";class c extends o.Layoutable{constructor(){super(...arguments),this.children=[]}_measure(t){let e=0,h=0;for(const{layout:o}of this.children){const r=o.measure(t);e=Math.max(e,r.width),h=Math.max(h,r.height)}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);for(const{layout:e,anchor:h,margin:o}of this.children){const{left:i,right:s,top:n,bottom:c,hcenter:a,vcenter:_}=t,{width:g,height:d}=e.measure(t);let m;switch(h){case\"top_left\":m=new r.BBox({left:i+o,top:n+o,width:g,height:d});break;case\"top_center\":m=new r.BBox({hcenter:a,top:n+o,width:g,height:d});break;case\"top_right\":m=new r.BBox({right:s-o,top:n+o,width:g,height:d});break;case\"bottom_right\":m=new r.BBox({right:s-o,bottom:c-o,width:g,height:d});break;case\"bottom_center\":m=new r.BBox({hcenter:a,bottom:c-o,width:g,height:d});break;case\"bottom_left\":m=new r.BBox({left:i+o,bottom:c-o,width:g,height:d});break;case\"center_left\":m=new r.BBox({left:i+o,vcenter:_,width:g,height:d});break;case\"center\":m=new r.BBox({hcenter:a,vcenter:_,width:g,height:d});break;case\"center_right\":m=new r.BBox({right:s-o,vcenter:_,width:g,height:d})}e.set_geometry(m)}}}h.AnchorLayout=c,c.__name__=\"AnchorLayout\"},\n      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const e=t(213),o=t(214),n=t(8),r=t(79),h=t(9),{max:l,round:c}=Math;class a{constructor(t){this.def=t,this._map=new Map}get(t){let i=this._map.get(t);return void 0===i&&(i=this.def(),this._map.set(t,i)),i}apply(t,i){const s=this.get(t);this._map.set(t,i(s))}}a.__name__=\"DefaultMap\";class g{constructor(){this._items=[],this._nrows=0,this._ncols=0}get nrows(){return this._nrows}get ncols(){return this._ncols}add(t,i){const{r1:s,c1:e}=t;this._nrows=l(this._nrows,s+1),this._ncols=l(this._ncols,e+1),this._items.push({span:t,data:i})}at(t,i){return this._items.filter(({span:s})=>s.r0<=t&&t<=s.r1&&s.c0<=i&&i<=s.c1).map(({data:t})=>t)}row(t){return this._items.filter(({span:i})=>i.r0<=t&&t<=i.r1).map(({data:t})=>t)}col(t){return this._items.filter(({span:i})=>i.c0<=t&&t<=i.c1).map(({data:t})=>t)}foreach(t){for(const{span:i,data:s}of this._items)t(i,s)}map(t){const i=new g;for(const{span:s,data:e}of this._items)i.add(s,t(s,e));return i}}g.__name__=\"Container\";class p extends o.Layoutable{constructor(t=[]){super(),this.items=t,this.rows=\"auto\",this.cols=\"auto\",this.spacing=0,this.absolute=!1}is_width_expanding(){if(super.is_width_expanding())return!0;if(\"fixed\"==this.sizing.width_policy)return!1;const{cols:t}=this._state;return h.some(t,t=>\"max\"==t.policy)}is_height_expanding(){if(super.is_height_expanding())return!0;if(\"fixed\"==this.sizing.height_policy)return!1;const{rows:t}=this._state;return h.some(t,t=>\"max\"==t.policy)}_init(){super._init();const t=new g;for(const{layout:i,row:s,col:e,row_span:o,col_span:n}of this.items)if(i.sizing.visible){const r=s,h=e,l=s+(null!=o?o:1)-1,c=e+(null!=n?n:1)-1;t.add({r0:r,c0:h,r1:l,c1:c},i)}const{nrows:i,ncols:s}=t,e=new Array(i);for(let s=0;s<i;s++){const i=(()=>{const t=n.isPlainObject(this.rows)?this.rows[s]||this.rows[\"*\"]:this.rows;return null==t?{policy:\"auto\"}:n.isNumber(t)?{policy:\"fixed\",height:t}:n.isString(t)?{policy:t}:t})(),o=i.align||\"auto\";if(\"fixed\"==i.policy)e[s]={policy:\"fixed\",height:i.height,align:o};else if(\"min\"==i.policy)e[s]={policy:\"min\",align:o};else if(\"fit\"==i.policy||\"max\"==i.policy)e[s]={policy:i.policy,flex:i.flex||1,align:o};else{if(\"auto\"!=i.policy)throw new Error(\"unrechable\");h.some(t.row(s),t=>t.is_height_expanding())?e[s]={policy:\"max\",flex:1,align:o}:e[s]={policy:\"min\",align:o}}}const o=new Array(s);for(let i=0;i<s;i++){const s=(()=>{const t=n.isPlainObject(this.cols)?this.cols[i]||this.cols[\"*\"]:this.cols;return null==t?{policy:\"auto\"}:n.isNumber(t)?{policy:\"fixed\",width:t}:n.isString(t)?{policy:t}:t})(),e=s.align||\"auto\";if(\"fixed\"==s.policy)o[i]={policy:\"fixed\",width:s.width,align:e};else if(\"min\"==s.policy)o[i]={policy:\"min\",align:e};else if(\"fit\"==s.policy||\"max\"==s.policy)o[i]={policy:s.policy,flex:s.flex||1,align:e};else{if(\"auto\"!=s.policy)throw new Error(\"unrechable\");h.some(t.col(i),t=>t.is_width_expanding())?o[i]={policy:\"max\",flex:1,align:e}:o[i]={policy:\"min\",align:e}}}const[r,l]=n.isNumber(this.spacing)?[this.spacing,this.spacing]:this.spacing;this._state={items:t,nrows:i,ncols:s,rows:e,cols:o,rspacing:r,cspacing:l}}_measure_totals(t,i){const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state;return{height:h.sum(t)+(s-1)*o,width:h.sum(i)+(e-1)*n}}_measure_cells(t){const{items:i,nrows:s,ncols:o,rows:n,cols:r,rspacing:h,cspacing:a}=this._state,p=new Array(s);for(let t=0;t<s;t++){const i=n[t];p[t]=\"fixed\"==i.policy?i.height:0}const _=new Array(o);for(let t=0;t<o;t++){const i=r[t];_[t]=\"fixed\"==i.policy?i.width:0}const f=new g;i.foreach((i,s)=>{const{r0:o,c0:g,r1:d,c1:w}=i,u=(d-o)*h,m=(w-g)*a;let y=0;for(let i=o;i<=d;i++)y+=t(i,g).height;y+=u;let x=0;for(let i=g;i<=w;i++)x+=t(o,i).width;x+=m;const b=s.measure({width:x,height:y});f.add(i,{layout:s,size_hint:b});const z=new e.Sizeable(b).grow_by(s.sizing.margin);z.height-=u,z.width-=m;const j=[];for(let t=o;t<=d;t++){const i=n[t];\"fixed\"==i.policy?z.height-=i.height:j.push(t)}if(z.height>0){const t=c(z.height/j.length);for(const i of j)p[i]=l(p[i],t)}const O=[];for(let t=g;t<=w;t++){const i=r[t];\"fixed\"==i.policy?z.width-=i.width:O.push(t)}if(z.width>0){const t=c(z.width/O.length);for(const i of O)_[i]=l(_[i],t)}});return{size:this._measure_totals(p,_),row_heights:p,col_widths:_,size_hints:f}}_measure_grid(t){const{nrows:i,ncols:s,rows:e,cols:o,rspacing:n,cspacing:r}=this._state,h=this._measure_cells((t,i)=>{const s=e[t],n=o[i];return{width:\"fixed\"==n.policy?n.width:1/0,height:\"fixed\"==s.policy?s.height:1/0}});let a;a=\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:t.height!=1/0&&this.is_height_expanding()?t.height:h.size.height;let g,p=0;for(let t=0;t<i;t++){const i=e[t];\"fit\"==i.policy||\"max\"==i.policy?p+=i.flex:a-=h.row_heights[t]}if(a-=(i-1)*n,0!=p&&a>0)for(let t=0;t<i;t++){const i=e[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=c(a*(i.flex/p));a-=s,h.row_heights[t]=s,p-=i.flex}}else if(a<0){let t=0;for(let s=0;s<i;s++){\"fixed\"!=e[s].policy&&t++}let s=-a;for(let o=0;o<i;o++){if(\"fixed\"!=e[o].policy){const i=h.row_heights[o],e=c(s/t);h.row_heights[o]=l(i-e,0),s-=e>i?i:e,t--}}}g=\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:t.width!=1/0&&this.is_width_expanding()?t.width:h.size.width;let _=0;for(let t=0;t<s;t++){const i=o[t];\"fit\"==i.policy||\"max\"==i.policy?_+=i.flex:g-=h.col_widths[t]}if(g-=(s-1)*r,0!=_&&g>0)for(let t=0;t<s;t++){const i=o[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=c(g*(i.flex/_));g-=s,h.col_widths[t]=s,_-=i.flex}}else if(g<0){let t=0;for(let i=0;i<s;i++){\"fixed\"!=o[i].policy&&t++}let i=-g;for(let e=0;e<s;e++){if(\"fixed\"!=o[e].policy){const s=h.col_widths[e],o=c(i/t);h.col_widths[e]=l(s-o,0),i-=o>s?s:o,t--}}}const{row_heights:f,col_widths:d,size_hints:w}=this._measure_cells((t,i)=>({width:h.col_widths[i],height:h.row_heights[t]}));return{size:this._measure_totals(f,d),row_heights:f,col_widths:d,size_hints:w}}_measure(t){const{size:i}=this._measure_grid(t);return i}_set_geometry(t,i){super._set_geometry(t,i);const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state,{row_heights:h,col_widths:g,size_hints:p}=this._measure_grid(t),_=this._state.rows.map((t,i)=>Object.assign(Object.assign({},t),{top:0,height:h[i],get bottom(){return this.top+this.height}})),f=this._state.cols.map((t,i)=>Object.assign(Object.assign({},t),{left:0,width:g[i],get right(){return this.left+this.width}})),d=p.map((t,i)=>Object.assign(Object.assign({},i),{outer:new r.BBox,inner:new r.BBox}));for(let i=0,e=this.absolute?t.top:0;i<s;i++){const t=_[i];t.top=e,e+=t.height+o}for(let i=0,s=this.absolute?t.left:0;i<e;i++){const t=f[i];t.left=s,s+=t.width+n}d.foreach(({r0:t,c0:i,r1:s,c1:e},h)=>{const{layout:l,size_hint:a}=h,{sizing:g}=l,{width:p,height:d}=a,w=function(t,i){let s=(i-t)*n;for(let e=t;e<=i;e++)s+=f[e].width;return s}(i,e),u=function(t,i){let s=(i-t)*o;for(let e=t;e<=i;e++)s+=_[e].height;return s}(t,s),m=i==e&&\"auto\"!=f[i].align?f[i].align:g.halign,y=t==s&&\"auto\"!=_[t].align?_[t].align:g.valign;let x=f[i].left;\"start\"==m?x+=g.margin.left:\"center\"==m?x+=c((w-p)/2):\"end\"==m&&(x+=w-g.margin.right-p);let b=_[t].top;\"start\"==y?b+=g.margin.top:\"center\"==y?b+=c((u-d)/2):\"end\"==y&&(b+=u-g.margin.bottom-d),h.outer=new r.BBox({left:x,top:b,width:p,height:d})});const w=_.map(()=>({start:new a(()=>0),end:new a(()=>0)})),u=f.map(()=>({start:new a(()=>0),end:new a(()=>0)}));d.foreach(({r0:t,c0:i,r1:s,c1:e},{size_hint:o,outer:n})=>{const{inner:r}=o;null!=r&&(w[t].start.apply(n.top,t=>l(t,r.top)),w[s].end.apply(_[s].bottom-n.bottom,t=>l(t,r.bottom)),u[i].start.apply(n.left,t=>l(t,r.left)),u[e].end.apply(f[e].right-n.right,t=>l(t,r.right)))}),d.foreach(({r0:t,c0:i,r1:s,c1:e},o)=>{const{size_hint:n,outer:h}=o;function l({left:t,right:i,top:s,bottom:e}){const o=h.width-t-i,n=h.height-s-e;return new r.BBox({left:t,top:s,width:o,height:n})}if(null!=n.inner){let r=l(n.inner);if(!1!==n.align){const o=w[t].start.get(h.top),n=w[s].end.get(_[s].bottom-h.bottom),c=u[i].start.get(h.left),a=u[e].end.get(f[e].right-h.right);try{r=l({top:o,bottom:n,left:c,right:a})}catch(t){}}o.inner=r}else o.inner=h}),d.foreach((t,{layout:i,outer:s,inner:e})=>{i.set_geometry(s,e)})}}s.Grid=p,p.__name__=\"Grid\";class _ extends p{constructor(t){super(),this.items=t.map((t,i)=>({layout:t,row:0,col:i})),this.rows=\"fit\"}}s.Row=_,_.__name__=\"Row\";class f extends p{constructor(t){super(),this.items=t.map((t,i)=>({layout:t,row:i,col:0})),this.cols=\"fit\"}}s.Column=f,f.__name__=\"Column\"},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(214),i=e(213),a=e(72);class c extends n.ContentLayoutable{constructor(e){super(),this.content_size=a.unsized(e,()=>new i.Sizeable(a.size(e)))}_content_size(){return this.content_size}}s.ContentBox=c,c.__name__=\"ContentBox\";class o extends n.Layoutable{constructor(e){super(),this.el=e}_measure(e){const t=new i.Sizeable(e).bounded_to(this.sizing.size);return a.sized(this.el,t,()=>{const e=new i.Sizeable(a.content_size(this.el)),{border:t,padding:s}=a.extents(this.el);return e.grow_by(t).grow_by(s).map(Math.ceil)})}}s.VariadicBox=o,o.__name__=\"VariadicBox\";class r extends o{constructor(e){super(e),this._cache=new Map}_measure(e){const{width:t,height:s}=e,n=`${t},${s}`;let i=this._cache.get(n);return null==i&&(i=super._measure(e),this._cache.set(n,i)),i}invalidate_cache(){this._cache.clear()}}s.CachedVariadicBox=r,r.__name__=\"CachedVariadicBox\"},\n      function _(e,r,u){Object.defineProperty(u,\"__esModule\",{value:!0});var a=e(219);u.Expression=a.Expression;var n=e(220);u.Stack=n.Stack;var o=e(221);u.CumSum=o.CumSum},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(81);class i extends n.Model{constructor(e){super(e)}initialize(){super.initialize(),this._connected=new Set,this._result=new Map}v_compute(e){this._connected.has(e)||(this.connect(e.change,()=>this._result.delete(e)),this.connect(e.patching,()=>this._result.delete(e)),this.connect(e.streaming,()=>this._result.delete(e)),this._connected.add(e));let t=this._result.get(e);return null==t&&(t=this._v_compute(e),this._result.set(e,t)),t}}s.Expression=i,i.__name__=\"Expression\"},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),i=t(219),s=t(24),o=r.__importStar(t(18));class a extends i.Expression{constructor(t){super(t)}static init_Stack(){this.define({fields:[o.Array,[]]})}_v_compute(t){var e;const n=null!==(e=t.get_length())&&void 0!==e?e:0,r=new s.NumberArray(n);for(const e of this.fields){const i=t.data[e];if(null!=i)for(let t=0,e=Math.min(n,i.length);t<e;t++)r[t]+=i[t]}return r}}n.Stack=a,a.__name__=\"Stack\",a.init_Stack()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=e(1),u=e(219),r=e(24),_=i.__importStar(e(18));class o extends u.Expression{constructor(e){super(e)}static init_CumSum(){this.define({field:[_.String],include_zero:[_.Boolean,!1]})}_v_compute(e){const t=new r.NumberArray(e.get_length()||0),n=e.data[this.field],i=this.include_zero?1:0;t[0]=this.include_zero?0:n[0];for(let e=1;e<t.length;e++)t[e]=t[e-1]+n[e-i];return t}}n.CumSum=o,o.__name__=\"CumSum\",o.init_CumSum()},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});var l=e(223);t.BooleanFilter=l.BooleanFilter;var i=e(225);t.CustomJSFilter=i.CustomJSFilter;var o=e(224);t.Filter=o.Filter;var F=e(226);t.GroupFilter=F.GroupFilter;var a=e(227);t.IndexFilter=a.IndexFilter},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(1),l=e(224),i=o.__importStar(e(18)),s=e(24);class r extends l.Filter{constructor(e){super(e)}static init_BooleanFilter(){this.define({booleans:[i.Array,null]})}compute_indices(e){const n=e.length,{booleans:t}=this;return null==t?s.Indices.all_set(n):s.Indices.from_booleans(n,t)}}t.BooleanFilter=r,r.__name__=\"BooleanFilter\",r.init_BooleanFilter()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(81);class r extends o.Model{constructor(e){super(e)}}n.Filter=r,r.__name__=\"Filter\"},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=e(1),n=e(224),i=s.__importStar(e(18)),o=e(24),u=e(13),c=e(8),a=e(29);class l extends n.Filter{constructor(e){super(e)}static init_CustomJSFilter(){this.define({args:[i.Any,{}],code:[i.String,\"\"]})}get names(){return u.keys(this.args)}get values(){return u.values(this.args)}get func(){const e=a.use_strict(this.code);return new Function(...this.names,\"source\",e)}compute_indices(e){const t=e.length,r=this.func(...this.values,e);if(null==r)return o.Indices.all_set(t);if(c.isArrayOf(r,c.isInteger))return o.Indices.from_indices(t,r);if(c.isArrayOf(r,c.isBoolean))return o.Indices.from_booleans(t,r);throw new Error(\"expect an array of integers or booleans, or null, got \"+r)}}r.CustomJSFilter=l,l.__name__=\"CustomJSFilter\",l.init_CustomJSFilter()},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=e(1),i=e(224),o=r.__importStar(e(18)),u=e(24),s=e(19);class c extends i.Filter{constructor(e){super(e)}static init_GroupFilter(){this.define({column_name:[o.String],group:[o.String]})}compute_indices(e){const t=e.get_column(this.column_name);if(null==t)return s.logger.warn(`${this}: groupby column '${this.column_name}' not found in the data source`),new u.Indices(e.length,1);{const n=new u.Indices(e.length);for(let e=0;e<n.size;e++)t[e]===this.group&&n.set(e);return n}}}n.GroupFilter=c,c.__name__=\"GroupFilter\",c.init_GroupFilter()},\n      function _(e,i,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(1),s=e(224),r=t.__importStar(e(18)),c=e(24);class l extends s.Filter{constructor(e){super(e)}static init_IndexFilter(){this.define({indices:[r.Array,null]})}compute_indices(e){const i=e.length,{indices:n}=this;return null==n?c.Indices.all_set(i):c.Indices.from_indices(i,n)}}n.IndexFilter=l,l.__name__=\"IndexFilter\",l.init_IndexFilter()},\n      function _(r,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});var e=r(130);a.BasicTickFormatter=e.BasicTickFormatter;var c=r(181);a.CategoricalTickFormatter=c.CategoricalTickFormatter;var i=r(185);a.DatetimeTickFormatter=i.DatetimeTickFormatter;var o=r(229);a.FuncTickFormatter=o.FuncTickFormatter;var m=r(198);a.LogTickFormatter=m.LogTickFormatter;var F=r(201);a.MercatorTickFormatter=F.MercatorTickFormatter;var k=r(230);a.NumeralTickFormatter=k.NumeralTickFormatter;var T=r(231);a.PrintfTickFormatter=T.PrintfTickFormatter;var v=r(131);a.TickFormatter=v.TickFormatter},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),s=t(131),i=r.__importStar(t(18)),c=t(13),a=t(29);class u extends s.TickFormatter{constructor(t){super(t)}static init_FuncTickFormatter(){this.define({args:[i.Any,{}],code:[i.String,\"\"]})}get names(){return c.keys(this.args)}get values(){return c.values(this.args)}_make_func(){const t=a.use_strict(this.code);return new Function(\"tick\",\"index\",\"ticks\",...this.names,t)}doFormat(t,e){const n=this._make_func().bind({});return t.map((t,e,r)=>n(t,e,r,...this.values))}}n.FuncTickFormatter=u,u.__name__=\"FuncTickFormatter\",u.init_FuncTickFormatter()},\n      function _(r,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=r(1),o=e.__importStar(r(188)),a=r(131),i=e.__importStar(r(18));class u extends a.TickFormatter{constructor(r){super(r)}static init_NumeralTickFormatter(){this.define({format:[i.String,\"0,0\"],language:[i.String,\"en\"],rounding:[i.RoundingFunction,\"round\"]})}get _rounding_fn(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}doFormat(r,t){const{format:n,language:e,_rounding_fn:a}=this;return r.map(r=>o.format(r,n,e,a))}}n.NumeralTickFormatter=u,u.__name__=\"NumeralTickFormatter\",u.init_NumeralTickFormatter()},\n      function _(t,r,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(1),n=t(131),o=t(187),a=e.__importStar(t(18));class c extends n.TickFormatter{constructor(t){super(t)}static init_PrintfTickFormatter(){this.define({format:[a.String,\"%s\"]})}doFormat(t,r){return t.map(t=>o.sprintf(this.format,t))}}i.PrintfTickFormatter=c,c.__name__=\"PrintfTickFormatter\",c.init_PrintfTickFormatter()},\n      function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});var v=a(233);r.AnnularWedge=v.AnnularWedge;var l=a(234);r.Annulus=l.Annulus;var t=a(235);r.Arc=t.Arc;var i=a(236);r.Bezier=i.Bezier;var n=a(237);r.Circle=n.Circle;var u=a(241);r.CenterRotatable=u.CenterRotatable;var c=a(242);r.Ellipse=c.Ellipse;var g=a(243);r.EllipseOval=g.EllipseOval;var A=a(94);r.Glyph=A.Glyph;var p=a(111);r.HArea=p.HArea;var s=a(244);r.HBar=s.HBar;var d=a(246);r.HexTile=d.HexTile;var R=a(247);r.Image=R.Image;var o=a(249);r.ImageRGBA=o.ImageRGBA;var y=a(250);r.ImageURL=y.ImageURL;var h=a(92);r.Line=h.Line;var m=a(252);r.MultiLine=m.MultiLine;var B=a(253);r.MultiPolygons=B.MultiPolygons;var P=a(254);r.Oval=P.Oval;var G=a(110);r.Patch=G.Patch;var H=a(255);r.Patches=H.Patches;var I=a(256);r.Quad=I.Quad;var L=a(257);r.Quadratic=L.Quadratic;var M=a(258);r.Ray=M.Ray;var O=a(259);r.Rect=O.Rect;var x=a(260);r.Segment=x.Segment;var C=a(261);r.Step=C.Step;var E=a(262);r.Text=E.Text;var Q=a(113);r.VArea=Q.VArea;var S=a(263);r.VBar=S.VBar;var T=a(264);r.Wedge=T.Wedge;var V=a(93);r.XYGlyph=V.XYGlyph},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(93),n=e(100),a=e(28),_=e(24),o=i.__importStar(e(18)),d=e(10),h=e(88);class u extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=this._inner_radius,\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this._outer_radius):this.souter_radius=this._outer_radius,this._angle=new _.NumberArray(this._start_angle.length);for(let e=0,t=this._start_angle.length;e<t;e++)this._angle[e]=this._end_angle[e]-this._start_angle[e]}_render(e,t,{sx:s,sy:i,_start_angle:r,_angle:n,sinner_radius:a,souter_radius:_}){const o=this.model.properties.direction.value();for(const d of t)isNaN(s[d]+i[d]+a[d]+_[d]+r[d]+n[d])||(e.translate(s[d],i[d]),e.rotate(r[d]),e.beginPath(),e.moveTo(_[d],0),e.arc(0,0,_[d],0,n[d],o),e.rotate(n[d]),e.lineTo(a[d],0),e.arc(0,0,a[d],0,-n[d],!o),e.closePath(),e.rotate(-n[d]-r[d]),e.translate(-s[d],-i[d]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,d),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,d),e.stroke()))}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s);let n,a,_,o;if(\"data\"==this.model.properties.outer_radius.units)n=i-this.max_outer_radius,_=i+this.max_outer_radius,a=r-this.max_outer_radius,o=r+this.max_outer_radius;else{const e=t-this.max_outer_radius,i=t+this.max_outer_radius;[n,_]=this.renderer.xscale.r_invert(e,i);const r=s-this.max_outer_radius,d=s+this.max_outer_radius;[a,o]=this.renderer.yscale.r_invert(r,d)}const u=[];for(const e of this.index.indices({x0:n,x1:_,y0:a,y1:o})){const t=this.souter_radius[e]**2,s=this.sinner_radius[e]**2,[n,a]=this.renderer.xscale.r_compute(i,this._x[e]),[_,o]=this.renderer.yscale.r_compute(r,this._y[e]),d=(n-a)**2+(_-o)**2;d<=t&&d>=s&&u.push(e)}const l=this.model.properties.direction.value(),c=[];for(const e of u){const i=Math.atan2(s-this.sy[e],t-this.sx[e]);d.angle_between(-i,-this._start_angle[e],-this._end_angle[e],l)&&c.push(e)}return new h.Selection({indices:c})}draw_legend_for_index(e,t,s){n.generic_area_legend(this.visuals,e,t,s)}scenterxy(e){const t=(this.sinner_radius[e]+this.souter_radius[e])/2,s=(this._start_angle[e]+this._end_angle[e])/2;return[this.sx[e]+t*Math.cos(s),this.sy[e]+t*Math.sin(s)]}}s.AnnularWedgeView=u,u.__name__=\"AnnularWedgeView\";class l extends r.XYGlyph{constructor(e){super(e)}static init_AnnularWedge(){this.prototype.default_view=u,this.mixins([a.LineVector,a.FillVector]),this.define({direction:[o.Direction,\"anticlock\"],inner_radius:[o.DistanceSpec],outer_radius:[o.DistanceSpec],start_angle:[o.AngleSpec],end_angle:[o.AngleSpec]})}}s.AnnularWedge=l,l.__name__=\"AnnularWedge\",l.init_AnnularWedge()},\n      function _(s,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const t=s(1),r=s(93),n=s(28),a=t.__importStar(s(18)),_=s(32),u=s(88);class o extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=this._inner_radius,\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this._outer_radius):this.souter_radius=this._outer_radius}_render(s,i,{sx:e,sy:t,sinner_radius:r,souter_radius:n}){for(const a of i)if(!isNaN(e[a]+t[a]+r[a]+n[a])){if(this.visuals.fill.doit){if(this.visuals.fill.set_vectorize(s,a),s.beginPath(),_.is_ie)for(const i of[!1,!0])s.arc(e[a],t[a],r[a],0,Math.PI,i),s.arc(e[a],t[a],n[a],Math.PI,0,!i);else s.arc(e[a],t[a],r[a],0,2*Math.PI,!0),s.arc(e[a],t[a],n[a],2*Math.PI,0,!1);s.fill()}this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,a),s.beginPath(),s.arc(e[a],t[a],r[a],0,2*Math.PI),s.moveTo(e[a]+n[a],t[a]),s.arc(e[a],t[a],n[a],0,2*Math.PI),s.stroke())}}_hit_point(s){const{sx:i,sy:e}=s,t=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(e);let n,a,_,o;if(\"data\"==this.model.properties.outer_radius.units)n=t-this.max_outer_radius,_=t+this.max_outer_radius,a=r-this.max_outer_radius,o=r+this.max_outer_radius;else{const s=i-this.max_outer_radius,t=i+this.max_outer_radius;[n,_]=this.renderer.xscale.r_invert(s,t);const r=e-this.max_outer_radius,u=e+this.max_outer_radius;[a,o]=this.renderer.yscale.r_invert(r,u)}const d=[];for(const s of this.index.indices({x0:n,x1:_,y0:a,y1:o})){const i=this.souter_radius[s]**2,e=this.sinner_radius[s]**2,[n,a]=this.renderer.xscale.r_compute(t,this._x[s]),[_,u]=this.renderer.yscale.r_compute(r,this._y[s]),o=(n-a)**2+(_-u)**2;o<=i&&o>=e&&d.push(s)}return new u.Selection({indices:d})}draw_legend_for_index(s,{x0:i,y0:e,x1:t,y1:r},n){const a=n+1,_=new Array(a);_[n]=(i+t)/2;const u=new Array(a);u[n]=(e+r)/2;const o=.5*Math.min(Math.abs(t-i),Math.abs(r-e)),d=new Array(a);d[n]=.4*o;const h=new Array(a);h[n]=.8*o,this._render(s,[n],{sx:_,sy:u,sinner_radius:d,souter_radius:h})}}e.AnnulusView=o,o.__name__=\"AnnulusView\";class d extends r.XYGlyph{constructor(s){super(s)}static init_Annulus(){this.prototype.default_view=o,this.mixins([n.LineVector,n.FillVector]),this.define({inner_radius:[a.DistanceSpec],outer_radius:[a.DistanceSpec]})}}e.Annulus=d,d.__name__=\"Annulus\",d.init_Annulus()},\n      function _(e,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const t=e(1),r=e(93),n=e(100),a=e(28),_=t.__importStar(e(18));class c extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius}_render(e,i,{sx:s,sy:t,sradius:r,_start_angle:n,_end_angle:a}){if(this.visuals.line.doit){const _=this.model.properties.direction.value();for(const c of i)isNaN(s[c]+t[c]+r[c]+n[c]+a[c])||(e.beginPath(),e.arc(s[c],t[c],r[c],n[c],a[c],_),this.visuals.line.set_vectorize(e,c),e.stroke())}}draw_legend_for_index(e,i,s){n.generic_line_legend(this.visuals,e,i,s)}}s.ArcView=c,c.__name__=\"ArcView\";class d extends r.XYGlyph{constructor(e){super(e)}static init_Arc(){this.prototype.default_view=c,this.mixins(a.LineVector),this.define({direction:[_.Direction,\"anticlock\"],radius:[_.DistanceSpec],start_angle:[_.AngleSpec],end_angle:[_.AngleSpec]})}}s.Arc=d,d.__name__=\"Arc\",d.init_Arc()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(28),c=e(94),o=e(100),_=e(37),r=s.__importStar(e(18));function a(e,t,i,s,n,c,o,_){const r=[],a=[[],[]];for(let a=0;a<=2;a++){let h,d,x;if(0===a?(d=6*e-12*i+6*n,h=-3*e+9*i-9*n+3*o,x=3*i-3*e):(d=6*t-12*s+6*c,h=-3*t+9*s-9*c+3*_,x=3*s-3*t),Math.abs(h)<1e-12){if(Math.abs(d)<1e-12)continue;const e=-x/d;0<e&&e<1&&r.push(e);continue}const l=d*d-4*x*h,y=Math.sqrt(l);if(l<0)continue;const p=(-d+y)/(2*h);0<p&&p<1&&r.push(p);const f=(-d-y)/(2*h);0<f&&f<1&&r.push(f)}let h=r.length;const d=h;for(;h--;){const d=r[h],x=1-d,l=x*x*x*e+3*x*x*d*i+3*x*d*d*n+d*d*d*o;a[0][h]=l;const y=x*x*x*t+3*x*x*d*s+3*x*d*d*c+d*d*d*_;a[1][h]=y}return a[0][d]=e,a[1][d]=t,a[0][d+1]=o,a[1][d+1]=_,[Math.min(...a[0]),Math.max(...a[1]),Math.max(...a[0]),Math.min(...a[1])]}class h extends c.GlyphView{_project_data(){_.inplace.project_xy(this._x0,this._y0),_.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++)if(isNaN(this._x0[i]+this._x1[i]+this._y0[i]+this._y1[i]+this._cx0[i]+this._cy0[i]+this._cx1[i]+this._cy1[i]))e.add_empty();else{const[t,s,n,c]=a(this._x0[i],this._y0[i],this._x1[i],this._y1[i],this._cx0[i],this._cy0[i],this._cx1[i],this._cy1[i]);e.add(t,s,n,c)}}_render(e,t,{sx0:i,sy0:s,sx1:n,sy1:c,scx0:o,scy0:_,scx1:r,scy1:a}){if(this.visuals.line.doit)for(const h of t)isNaN(i[h]+s[h]+n[h]+c[h]+o[h]+_[h]+r[h]+a[h])||(e.beginPath(),e.moveTo(i[h],s[h]),e.bezierCurveTo(o[h],_[h],r[h],a[h],n[h],c[h]),this.visuals.line.set_vectorize(e,h),e.stroke())}draw_legend_for_index(e,t,i){o.generic_line_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(this+\".scenterxy() is not implemented\")}}i.BezierView=h,h.__name__=\"BezierView\";class d extends c.Glyph{constructor(e){super(e)}static init_Bezier(){this.prototype.default_view=h,this.define({x0:[r.XCoordinateSpec,{field:\"x0\"}],y0:[r.YCoordinateSpec,{field:\"y0\"}],x1:[r.XCoordinateSpec,{field:\"x1\"}],y1:[r.YCoordinateSpec,{field:\"y1\"}],cx0:[r.XCoordinateSpec,{field:\"cx0\"}],cy0:[r.YCoordinateSpec,{field:\"cy0\"}],cx1:[r.XCoordinateSpec,{field:\"cx1\"}],cy1:[r.YCoordinateSpec,{field:\"cy1\"}]}),this.mixins(n.LineVector)}}i.Bezier=d,d.__name__=\"Bezier\",d.init_Bezier()},\n      function _(s,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const t=s(1),r=s(93),a=s(238),n=s(28),h=t.__importStar(s(101)),d=t.__importStar(s(18)),l=s(9),_=s(12),c=s(88);class o extends r.XYGlyphView{initialize(){super.initialize();const{webgl:s}=this.renderer.plot_view.canvas_view;null!=s&&(this.glglyph=new a.CircleGL(s.gl,this))}_map_data(){if(null!=this._radius)if(\"data\"==this.model.properties.radius.units)switch(this.model.radius_dimension){case\"x\":this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius);break;case\"y\":this.sradius=this.sdist(this.renderer.yscale,this._y,this._radius);break;case\"max\":{const s=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=_.map(s,(s,e)=>Math.max(s,i[e]));break}case\"min\":{const s=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=_.map(s,(s,e)=>Math.min(s,i[e]));break}}else this.sradius=this._radius,this.max_size=2*this.max_radius;else this.sradius=_.map(this._size,s=>s/2)}_mask_data(){const[s,i]=this.renderer.plot_view.frame.bbox.ranges;let e,t,r,a;if(null!=this._radius&&\"data\"==this.model.properties.radius.units){const n=s.start,h=s.end;[e,r]=this.renderer.xscale.r_invert(n,h),e-=this.max_radius,r+=this.max_radius;const d=i.start,l=i.end;[t,a]=this.renderer.yscale.r_invert(d,l),t-=this.max_radius,a+=this.max_radius}else{const n=s.start-this.max_size,h=s.end+this.max_size;[e,r]=this.renderer.xscale.r_invert(n,h);const d=i.start-this.max_size,l=i.end+this.max_size;[t,a]=this.renderer.yscale.r_invert(d,l)}return this.index.indices({x0:e,x1:r,y0:t,y1:a})}_render(s,i,{sx:e,sy:t,sradius:r}){for(const a of i)isNaN(e[a]+t[a]+r[a])||(s.beginPath(),s.arc(e[a],t[a],r[a],0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(s,a),s.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,a),s.stroke()))}_hit_point(s){const{sx:i,sy:e}=s,t=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(e);let a,n,h,d;if(null!=this._radius&&\"data\"==this.model.properties.radius.units)a=t-this.max_radius,n=t+this.max_radius,h=r-this.max_radius,d=r+this.max_radius;else{const s=i-this.max_size,t=i+this.max_size;[a,n]=this.renderer.xscale.r_invert(s,t);const r=e-this.max_size,l=e+this.max_size;[h,d]=this.renderer.yscale.r_invert(r,l)}const l=this.index.indices({x0:a,x1:n,y0:h,y1:d}),_=[];if(null!=this._radius&&\"data\"==this.model.properties.radius.units)for(const s of l){const i=this.sradius[s]**2,[e,a]=this.renderer.xscale.r_compute(t,this._x[s]),[n,h]=this.renderer.yscale.r_compute(r,this._y[s]);(e-a)**2+(n-h)**2<=i&&_.push(s)}else for(const s of l){const t=this.sradius[s]**2;(this.sx[s]-i)**2+(this.sy[s]-e)**2<=t&&_.push(s)}return new c.Selection({indices:_})}_hit_span(s){const{sx:i,sy:e}=s,t=this.bounds();let r,a,n,h;if(\"h\"==s.direction){let s,e;if(n=t.y0,h=t.y1,null!=this._radius&&\"data\"==this.model.properties.radius.units)s=i-this.max_radius,e=i+this.max_radius,[r,a]=this.renderer.xscale.r_invert(s,e);else{const t=this.max_size/2;s=i-t,e=i+t,[r,a]=this.renderer.xscale.r_invert(s,e)}}else{let s,i;if(r=t.x0,a=t.x1,null!=this._radius&&\"data\"==this.model.properties.radius.units)s=e-this.max_radius,i=e+this.max_radius,[n,h]=this.renderer.yscale.r_invert(s,i);else{const t=this.max_size/2;s=e-t,i=e+t,[n,h]=this.renderer.yscale.r_invert(s,i)}}const d=[...this.index.indices({x0:r,x1:a,y0:n,y1:h})];return new c.Selection({indices:d})}_hit_rect(s){const{sx0:i,sx1:e,sy0:t,sy1:r}=s,[a,n]=this.renderer.xscale.r_invert(i,e),[h,d]=this.renderer.yscale.r_invert(t,r),l=[...this.index.indices({x0:a,x1:n,y0:h,y1:d})];return new c.Selection({indices:l})}_hit_poly(s){const{sx:i,sy:e}=s,t=l.range(0,this.sx.length),r=[];for(let s=0,a=t.length;s<a;s++){const a=t[s];h.point_in_poly(this.sx[s],this.sy[s],i,e)&&r.push(a)}return new c.Selection({indices:r})}draw_legend_for_index(s,{x0:i,y0:e,x1:t,y1:r},a){const n=a+1,h=new Array(n);h[a]=(i+t)/2;const d=new Array(n);d[a]=(e+r)/2;const l=new Array(n);l[a]=.2*Math.min(Math.abs(t-i),Math.abs(r-e)),this._render(s,[a],{sx:h,sy:d,sradius:l})}}e.CircleView=o,o.__name__=\"CircleView\";class u extends r.XYGlyph{constructor(s){super(s)}static init_Circle(){this.prototype.default_view=o,this.mixins([n.LineVector,n.FillVector]),this.define({angle:[d.AngleSpec,0],size:[d.DistanceSpec,{units:\"screen\",value:4}],radius:[d.DistanceSpec,void 0,{optional:!0}],radius_dimension:[d.RadiusDimension,\"x\"]})}}e.Circle=u,u.__name__=\"Circle\",u.init_Circle()},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),a=t(103),r=t(107),o=t(239),_=t(240),l=t(237),h=t(12),n=t(19),g=t(22);function u(t,e,s,i,a,r){if(a.doit)if(a[r].is_value)e.used=!1,t.set_attribute(s,\"float\",[a[r].value()]);else{e.used=!0;const o=new Float32Array(a.get_array(r));e.set_size(4*i),e.set_data(0,o),t.set_attribute(s,\"float\",e)}else e.used=!1,t.set_attribute(s,\"float\",[0])}function f(t,e,s,i,a,r){const o=r+\"_color\",_=r+\"_alpha\";if(a.doit){let r,l;if(e.used=!0,a[o].is_value){const t=g.encode_rgba(g.color2rgba(a[o].value())),e=new Uint32Array(i);e.fill(t),r=e}else r=a.get_array(o);if(a[_].is_value){const t=a[_].value(),e=new Float32Array(i);e.fill(t),l=e}else l=a.get_array(_);const h=new Float32Array(4*i);for(let t=0,e=i;t<e;t++){const e=g.decode_rgba(r[t]);1==e[3]&&(e[3]=l[t]),h.set(e,4*t)}e.set_size(4*i*4),e.set_data(0,h),t.set_attribute(s,\"vec4\",e)}else e.used=!1,t.set_attribute(s,\"vec4\",[0,0,0,0])}s.attach_float=u,s.attach_color=f;class d extends r.BaseGLGlyph{init(){const{gl:t}=this,e=o.vertex_shader,s=_.fragment_shader(this._marker_code);this.prog=new a.Program(t),this.prog.set_shaders(e,s),this.vbo_sx=new a.VertexBuffer(t),this.prog.set_attribute(\"a_sx\",\"float\",this.vbo_sx),this.vbo_sy=new a.VertexBuffer(t),this.prog.set_attribute(\"a_sy\",\"float\",this.vbo_sy),this.vbo_s=new a.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new a.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new a.VertexBuffer(t),this.vbo_fg_color=new a.VertexBuffer(t),this.vbo_bg_color=new a.VertexBuffer(t),this.index_buffer=new a.IndexBuffer(t)}draw(t,e,s){const i=e.glglyph,{nvertices:a}=i;if(i.data_changed&&(i._set_data(a),this.glyph instanceof l.CircleView&&null!=this.glyph._radius&&this.vbo_s.set_data(0,h.map(this.glyph.sradius,t=>2*t)),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(a),this.visuals_changed=!1),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a),0!=t.length)if(t.length===a)this.prog.draw(this.gl.POINTS,[0,a]);else if(a<65535){const e=window.navigator.userAgent;e.indexOf(\"MSIE \")+e.indexOf(\"Trident/\")+e.indexOf(\"Edge/\")>0&&n.logger.warn(\"WebGL warning: IE is known to produce 1px sprites whith selections.\"),this.index_buffer.set_size(2*t.length),this.index_buffer.set_data(0,new Uint16Array(t)),this.prog.draw(this.gl.POINTS,this.index_buffer)}else{const e=64e3,s=[];for(let t=0,i=Math.ceil(a/e);t<i;t++)s.push([]);for(let i=0,a=t.length;i<a;i++){const a=t[i]%e;s[Math.floor(t[i]/e)].push(a)}for(let t=0,a=s.length;t<a;t++){const a=new Uint16Array(s[t]),r=t*e*4;0!==a.length&&(this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx,0,r),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy,0,r),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s,0,r),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a,0,r),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,r),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4\",this.vbo_fg_color,0,4*r),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4\",this.vbo_bg_color,0,4*r),this.index_buffer.set_size(2*a.length),this.index_buffer.set_data(0,a),this.prog.draw(this.gl.POINTS,this.index_buffer))}}}_set_data(t){const e=4*t;this.vbo_sx.set_size(e),this.vbo_sy.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e),this.vbo_sx.set_data(0,this.glyph.sx),this.vbo_sy.set_data(0,this.glyph.sy),null!=this.glyph._angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph._angle)),this.glyph instanceof l.CircleView&&null!=this.glyph._radius?this.vbo_s.set_data(0,h.map(this.glyph.sradius,t=>2*t)):this.vbo_s.set_data(0,new Float32Array(this.glyph._size))}_set_visuals(t){u(this.prog,this.vbo_linewidth,\"a_linewidth\",t,this.glyph.visuals.line,\"line_width\"),f(this.prog,this.vbo_fg_color,\"a_fg_color\",t,this.glyph.visuals.line,\"line\"),f(this.prog,this.vbo_bg_color,\"a_bg_color\",t,this.glyph.visuals.fill,\"fill\"),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])}}function b(t){return class extends d{get _marker_code(){return t}}}s.MarkerGL=d,d.__name__=\"MarkerGL\";const c=i.__importStar(t(240));s.AsteriskGL=b(c.asterisk),s.CircleGL=b(c.circle),s.CircleCrossGL=b(c.circlecross),s.CircleXGL=b(c.circlex),s.CrossGL=b(c.cross),s.DiamondGL=b(c.diamond),s.DiamondCrossGL=b(c.diamondcross),s.HexGL=b(c.hex),s.InvertedTriangleGL=b(c.invertedtriangle),s.SquareGL=b(c.square),s.SquareCrossGL=b(c.squarecross),s.SquareXGL=b(c.squarex),s.TriangleGL=b(c.triangle),s.XGL=b(c.x)},\n      function _(n,i,a){Object.defineProperty(a,\"__esModule\",{value:!0}),a.vertex_shader=\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\n//\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size;\\nuniform vec2 u_offset;\\nuniform vec2 u_scale;\\nuniform float u_antialias;\\n//\\nattribute float a_sx;\\nattribute float a_sy;\\nattribute float a_size;\\nattribute float a_angle;  // in radians\\nattribute float a_linewidth;\\nattribute vec4  a_fg_color;\\nattribute vec4  a_bg_color;\\n//\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec4  v_fg_color;\\nvarying vec4  v_bg_color;\\nvarying vec2  v_rotation;\\n\\nvoid main (void)\\n{\\n    v_size = a_size * u_pixel_ratio;\\n    v_linewidth = a_linewidth * u_pixel_ratio;\\n    v_fg_color = a_fg_color;\\n    v_bg_color = a_bg_color;\\n    v_rotation = vec2(cos(-a_angle), sin(-a_angle));\\n    vec2 pos = vec2(a_sx, a_sy);  // in pixels\\n    pos += 0.5;  // make up for Bokeh's offset\\n    pos /= u_canvas_size / u_pixel_ratio;  // in 0..1\\n    gl_Position = vec4(pos*2.0-1.0, 0.0, 1.0);\\n    gl_Position.y *= -1.0;\\n    gl_PointSize = SQRT_2 * v_size + 2.0 * (v_linewidth + 1.5*u_antialias);\\n}\\n\"},\n      function _(a,n,s){Object.defineProperty(s,\"__esModule\",{value:!0}),s.fragment_shader=a=>`\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\n//\\nuniform float u_antialias;\\n//\\nvarying vec4  v_fg_color;\\nvarying vec4  v_bg_color;\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec2  v_rotation;\\n\\n${a}\\n\\nvec4 outline(float distance, float linewidth, float antialias, vec4 fg_color, vec4 bg_color)\\n{\\n    vec4 frag_color;\\n    float t = linewidth/2.0 - antialias;\\n    float signed_distance = distance;\\n    float border_distance = abs(signed_distance) - t;\\n    float alpha = border_distance/antialias;\\n    alpha = exp(-alpha*alpha);\\n\\n    // If fg alpha is zero, it probably means no outline. To avoid a dark outline\\n    // shining through due to aa, we set the fg color to the bg color. Avoid if (i.e. branching).\\n    float select = float(bool(fg_color.a));\\n    fg_color.rgb = select * fg_color.rgb + (1.0  - select) * bg_color.rgb;\\n    // Similarly, if we want a transparent bg\\n    select = float(bool(bg_color.a));\\n    bg_color.rgb = select * bg_color.rgb + (1.0  - select) * fg_color.rgb;\\n\\n    if( border_distance < 0.0)\\n        frag_color = fg_color;\\n    else if( signed_distance < 0.0 ) {\\n        frag_color = mix(bg_color, fg_color, sqrt(alpha));\\n    } else {\\n        if( abs(signed_distance) < (linewidth/2.0 + antialias) ) {\\n            frag_color = vec4(fg_color.rgb, fg_color.a * alpha);\\n        } else {\\n            discard;\\n        }\\n    }\\n    return frag_color;\\n}\\n\\nvoid main()\\n{\\n    vec2 P = gl_PointCoord.xy - vec2(0.5, 0.5);\\n    P = vec2(v_rotation.x*P.x - v_rotation.y*P.y,\\n             v_rotation.y*P.x + v_rotation.x*P.y);\\n    float point_size = SQRT_2*v_size  + 2.0 * (v_linewidth + 1.5*u_antialias);\\n    float distance = marker(P*point_size, v_size);\\n    gl_FragColor = outline(distance, v_linewidth, u_antialias, v_fg_color, v_bg_color);\\n}\\n`,s.circle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return length(P) - size/2.0;\\n}\\n\",s.square=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n\",s.diamond=\"\\nfloat marker(vec2 P, float size)\\n{\\n    float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n    float r1 = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n    return r1 / SQRT_2;\\n}\\n\",s.hex=\"\\nfloat marker(vec2 P, float size)\\n{\\n    vec2 q = abs(P);\\n    return max(q.y * 0.57735 + q.x - 1.0 * size/2.0, q.y - 0.866 * size/2.0);\\n}\\n\",s.triangle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    P.y -= size * 0.3;\\n    float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n    float r1 = max(abs(x), abs(y)) - size / 1.6;\\n    float r2 = P.y;\\n    return max(r1 / SQRT_2, r2);  // Intersect diamond with rectangle\\n}\\n\",s.invertedtriangle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    P.y += size * 0.3;\\n    float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n    float r1 = max(abs(x), abs(y)) - size / 1.6;\\n    float r2 = - P.y;\\n    return max(r1 / SQRT_2, r2);  // Intersect diamond with rectangle\\n}\\n\",s.cross='\\nfloat marker(vec2 P, float size)\\n{\\n    float square = max(abs(P.x), abs(P.y)) - size / 2.5;   // 2.5 is a tweak\\n    float cross = min(abs(P.x), abs(P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    return max(square, cross);\\n}\\n',s.circlecross=\"\\nfloat marker(vec2 P, float size)\\n{\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n    float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n    float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n    float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float circle = length(P) - size/2.0;\\n    float c1 = max(circle, s1);\\n    float c2 = max(circle, s2);\\n    float c3 = max(circle, s3);\\n    float c4 = max(circle, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.squarecross=\"\\nfloat marker(vec2 P, float size)\\n{\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n    float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n    float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n    float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n    float c1 = max(square, s1);\\n    float c2 = max(square, s2);\\n    float c3 = max(square, s3);\\n    float c4 = max(square, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.diamondcross=\"\\nfloat marker(vec2 P, float size)\\n{\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n    float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n    float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n    float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n    float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n    float diamond = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n    diamond /= SQRT_2;\\n    float c1 = max(diamond, s1);\\n    float c2 = max(diamond, s2);\\n    float c3 = max(diamond, s3);\\n    float c4 = max(diamond, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.x='\\nfloat marker(vec2 P, float size)\\n{\\n    float circle = length(P) - size / 1.6;\\n    float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    return max(circle, X);\\n}\\n',s.circlex='\\nfloat marker(vec2 P, float size)\\n{\\n    float x = P.x - P.y;\\n    float y = P.x + P.y;\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n    float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n    float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n    float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float circle = length(P) - size/2.0;\\n    float c1 = max(circle, s1);\\n    float c2 = max(circle, s2);\\n    float c3 = max(circle, s3);\\n    float c4 = max(circle, s4);\\n    // Union\\n    float almost = min(min(min(c1, c2), c3), c4);\\n    // In this case, the X is also outside of the main shape\\n    float Xmask = length(P) - size / 1.6;  // a circle\\n    float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    return min(max(X, Xmask), almost);\\n}\\n',s.squarex=\"\\nfloat marker(vec2 P, float size)\\n{\\n    float x = P.x - P.y;\\n    float y = P.x + P.y;\\n    // Define quadrants\\n    float qs = size / 2.0;  // quadrant size\\n    float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n    float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n    float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n    float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n    // Intersect main shape with quadrants (to form cross)\\n    float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n    float c1 = max(square, s1);\\n    float c2 = max(square, s2);\\n    float c3 = max(square, s3);\\n    float c4 = max(square, s4);\\n    // Union\\n    return min(min(min(c1, c2), c3), c4);\\n}\\n\",s.asterisk='\\nfloat marker(vec2 P, float size)\\n{\\n    // Masks\\n    float diamond = max(abs(SQRT_2 / 2.0 * (P.x - P.y)), abs(SQRT_2 / 2.0 * (P.x + P.y))) - size / (2.0 * SQRT_2);\\n    float square = max(abs(P.x), abs(P.y)) - size / (2.0 * SQRT_2);\\n    // Shapes\\n    float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    float cross = min(abs(P.x), abs(P.y)) - size / 100.0;  // bit of \"width\" for aa\\n    // Result is union of masked shapes\\n    return min(max(X, diamond), max(cross, square));\\n}\\n'},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const a=e(1),i=e(93),l=e(28),s=a.__importStar(e(18));class c extends i.XYGlyphView{}n.CenterRotatableView=c,c.__name__=\"CenterRotatableView\";class o extends i.XYGlyph{constructor(e){super(e)}static init_CenterRotatable(){this.mixins([l.LineVector,l.FillVector]),this.define({angle:[s.AngleSpec,0],width:[s.DistanceSpec],height:[s.DistanceSpec]})}}n.CenterRotatable=o,o.__name__=\"CenterRotatable\",o.init_CenterRotatable()},\n      function _(e,l,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(243);class t extends s.EllipseOvalView{}i.EllipseView=t,t.__name__=\"EllipseView\";class _ extends s.EllipseOval{constructor(e){super(e)}static init_Ellipse(){this.prototype.default_view=t}}i.Ellipse=_,_.__name__=\"Ellipse\",_.init_Ellipse()},\n      function _(t,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(1),h=t(241),a=e.__importStar(t(101)),r=t(88);class n extends h.CenterRotatableView{_set_data(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)}_map_data(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this.sw=this._width,\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height}_render(t,s,{sx:i,sy:e,sw:h,sh:a,_angle:r}){for(const n of s)isNaN(i[n]+e[n]+h[n]+a[n]+r[n])||(t.beginPath(),t.ellipse(i[n],e[n],h[n]/2,a[n]/2,r[n],0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,n),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,n),t.stroke()))}_hit_point(t){let s,i,e,h,n,_,l,d,o;const{sx:x,sy:m}=t,w=this.renderer.xscale.invert(x),c=this.renderer.yscale.invert(m);\"data\"==this.model.properties.width.units?(s=w-this.max_width,i=w+this.max_width):(_=x-this.max_width,l=x+this.max_width,[s,i]=this.renderer.xscale.r_invert(_,l)),\"data\"==this.model.properties.height.units?(e=c-this.max_height,h=c+this.max_height):(d=m-this.max_height,o=m+this.max_height,[e,h]=this.renderer.yscale.r_invert(d,o));const p=this.index.indices({x0:s,x1:i,y0:e,y1:h}),y=[];for(const t of p)n=a.point_in_ellipse(x,m,this._angle[t],this.sh[t]/2,this.sw[t]/2,this.sx[t],this.sy[t]),n&&y.push(t);return new r.Selection({indices:y})}draw_legend_for_index(t,{x0:s,y0:i,x1:e,y1:h},a){const r=a+1,n=new Array(r);n[a]=(s+e)/2;const _=new Array(r);_[a]=(i+h)/2;const l=this.sw[a]/this.sh[a],d=.8*Math.min(Math.abs(e-s),Math.abs(h-i)),o=new Array(r),x=new Array(r);l>1?(o[a]=d,x[a]=d/l):(o[a]=d*l,x[a]=d),this._render(t,[a],{sx:n,sy:_,sw:o,sh:x,_angle:[0]})}_bounds({x0:t,x1:s,y0:i,y1:e}){return{x0:t-this.max_w2,x1:s+this.max_w2,y0:i-this.max_h2,y1:e+this.max_h2}}}i.EllipseOvalView=n,n.__name__=\"EllipseOvalView\";class _ extends h.CenterRotatable{constructor(t){super(t)}}i.EllipseOval=_,_.__name__=\"EllipseOval\"},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(1),h=t(245),r=t(24),_=i.__importStar(t(18));class a extends h.BoxView{scenterxy(t){return[(this.sleft[t]+this.sright[t])/2,this.sy[t]]}_lrtb(t){return[Math.min(this._left[t],this._right[t]),Math.max(this._left[t],this._right[t]),this._y[t]+.5*this._height[t],this._y[t]-.5*this._height[t]]}_map_data(){this.sy=this.renderer.yscale.v_compute(this._y),this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"),this.sleft=this.renderer.xscale.v_compute(this._left),this.sright=this.renderer.xscale.v_compute(this._right);const t=this.sy.length;this.stop=new r.NumberArray(t),this.sbottom=new r.NumberArray(t);for(let e=0;e<t;e++)this.stop[e]=this.sy[e]-this.sh[e]/2,this.sbottom[e]=this.sy[e]+this.sh[e]/2;this._clamp_viewport()}}s.HBarView=a,a.__name__=\"HBarView\";class o extends h.Box{constructor(t){super(t)}static init_HBar(){this.prototype.default_view=a,this.define({left:[_.XCoordinateSpec,{value:0}],y:[_.YCoordinateSpec,{field:\"y\"}],height:[_.NumberSpec,{value:1}],right:[_.XCoordinateSpec,{field:\"right\"}]})}}s.HBar=o,o.__name__=\"HBar\",o.init_HBar()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(28),r=t(94),n=t(100),a=t(88);class h extends r.GlyphView{get_anchor_point(t,e,i){const s=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),n=Math.min(this.stop[e],this.sbottom[e]),a=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:s,y:n};case\"top_center\":return{x:(s+r)/2,y:n};case\"top_right\":return{x:r,y:n};case\"bottom_left\":return{x:s,y:a};case\"bottom_center\":return{x:(s+r)/2,y:a};case\"bottom_right\":return{x:r,y:a};case\"center_left\":return{x:s,y:(n+a)/2};case\"center\":return{x:(s+r)/2,y:(n+a)/2};case\"center_right\":return{x:r,y:(n+a)/2};default:return null}}_index_data(t){const{min:e,max:i}=Math,{data_size:s}=this;for(let r=0;r<s;r++){const[s,n,a,h]=this._lrtb(r);isNaN(s+n+a+h)||!isFinite(s+n+a+h)?t.add_empty():t.add(e(s,n),e(a,h),i(n,s),i(a,h))}}_render(t,e,{sleft:i,sright:s,stop:r,sbottom:n}){for(const a of e)isNaN(i[a]+r[a]+s[a]+n[a])||(t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,a),t.beginPath(),t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),t.fill()),this.visuals.hatch.doit2(t,a,()=>{t.beginPath(),t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),t.fill()},()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,a),t.beginPath(),t.rect(i[a],r[a],s[a]-i[a],n[a]-r[a]),t.stroke()))}_clamp_viewport(){const t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,i=this.stop.length;for(let s=0;s<i;s++)this.stop[s]=Math.max(this.stop[s],e.start),this.sbottom[s]=Math.min(this.sbottom[s],e.end),this.sleft[s]=Math.max(this.sleft[s],t.start),this.sright[s]=Math.min(this.sright[s],t.end)}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){const{sx:e,sy:i}=t,s=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),n=[...this.index.indices({x0:s,y0:r,x1:s,y1:r})];return new a.Selection({indices:n})}_hit_span(t){const{sx:e,sy:i}=t;let s;if(\"v\"==t.direction){const t=this.renderer.yscale.invert(i),e=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(e.start,e.end);s=[...this.index.indices({x0:r,y0:t,x1:n,y1:t})]}else{const t=this.renderer.xscale.invert(e),i=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(i.start,i.end);s=[...this.index.indices({x0:t,y0:r,x1:t,y1:n})]}return new a.Selection({indices:s})}draw_legend_for_index(t,e,i){n.generic_area_legend(this.visuals,t,e,i)}}i.BoxView=h,h.__name__=\"BoxView\";class o extends r.Glyph{constructor(t){super(t)}static init_Box(){this.mixins([s.LineVector,s.FillVector,s.HatchVector])}}i.Box=o,o.__name__=\"Box\",o.init_Box()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(94),n=i.__importStar(e(101)),a=i.__importStar(e(18)),o=e(28),c=e(24),_=e(37),h=e(100),l=e(88);class d extends r.GlyphView{scenterxy(e){return[this.sx[e],this.sy[e]]}_set_data(){const e=this._q.length,{orientation:t,size:s,aspect_scale:i}=this.model;this._x=new c.NumberArray(e),this._y=new c.NumberArray(e);const r=Math.sqrt(3);if(\"pointytop\"==t)for(let t=0;t<e;t++)this._x[t]=s*r*(this._q[t]+this._r[t]/2)/i,this._y[t]=3*-s/2*this._r[t];else for(let t=0;t<e;t++)this._x[t]=3*s/2*this._q[t],this._y[t]=-s*r*(this._r[t]+this._q[t]/2)*i}_project_data(){_.inplace.project_xy(this._x,this._y)}_index_data(e){let t=this.model.size,s=Math.sqrt(3)*t/2;\"flattop\"==this.model.orientation?([s,t]=[t,s],t*=this.model.aspect_scale):s/=this.model.aspect_scale;const{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x[r],n=this._y[r];isNaN(i+n)||!isFinite(i+n)?e.add_empty():e.add(i-s,n-t,i+s,n+t)}}map_data(){[this.sx,this.sy]=this.renderer.coordinates.map_to_screen(this._x,this._y),[this.svx,this.svy]=this._get_unscaled_vertices()}_get_unscaled_vertices(){const e=this.model.size,t=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){const s=this.renderer.yscale,i=this.renderer.xscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))/t,a=r/2;return[[0,-n,-n,0,n,n],[r,a,-a,-r,-a,a]]}{const s=this.renderer.xscale,i=this.renderer.yscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))*t,a=r/2;return[[r,a,-a,-r,-a,a],[0,-n,-n,0,n,n]]}}_render(e,t,{sx:s,sy:i,svx:r,svy:n,_scale:a}){for(const o of t)if(!isNaN(s[o]+i[o]+a[o])){e.translate(s[o],i[o]),e.beginPath();for(let t=0;t<6;t++)e.lineTo(r[t]*a[o],n[t]*a[o]);e.closePath(),e.translate(-s[o],-i[o]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,o),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,o),e.stroke())}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s),a=this.index.indices({x0:i,y0:r,x1:i,y1:r}),o=[];for(const e of a)n.point_in_poly(t-this.sx[e],s-this.sy[e],this.svx,this.svy)&&o.push(e);return new l.Selection({indices:o})}_hit_span(e){const{sx:t,sy:s}=e;let i;if(\"v\"==e.direction){const e=this.renderer.yscale.invert(s),t=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(t.start,t.end);i=[...this.index.indices({x0:r,y0:e,x1:n,y1:e})]}else{const e=this.renderer.xscale.invert(t),s=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(s.start,s.end);i=[...this.index.indices({x0:e,y0:r,x1:e,y1:n})]}return new l.Selection({indices:i})}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:r}=e,[n,a]=this.renderer.xscale.r_invert(t,s),[o,c]=this.renderer.yscale.r_invert(i,r),_=[...this.index.indices({x0:n,x1:a,y0:o,y1:c})];return new l.Selection({indices:_})}draw_legend_for_index(e,t,s){h.generic_area_legend(this.visuals,e,t,s)}}s.HexTileView=d,d.__name__=\"HexTileView\";class x extends r.Glyph{constructor(e){super(e)}static init_HexTile(){this.prototype.default_view=d,this.mixins([o.LineVector,o.FillVector]),this.define({r:[a.NumberSpec],q:[a.NumberSpec],size:[a.Number,1],aspect_scale:[a.Number,1],scale:[a.NumberSpec,1],orientation:[a.HexTileOrientation,\"pointytop\"]}),this.override({line_color:null})}}s.HexTile=x,x.__name__=\"HexTile\",x.init_HexTile()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const _=e(1),i=e(248),n=e(141),s=_.__importStar(e(18));class r extends i.ImageBaseView{connect_signals(){super.connect_signals(),this.connect(this.model.color_mapper.change,()=>this._update_image())}_update_image(){null!=this.image_data&&(this._set_data(null),this.renderer.plot_view.request_render())}_flat_img_to_buf8(e){return this.model.color_mapper.rgba_mapper.v_compute(e)}}a.ImageView=r,r.__name__=\"ImageView\";class o extends i.ImageBase{constructor(e){super(e)}static init_Image(){this.prototype.default_view=r,this.define({color_mapper:[s.Instance,()=>new n.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})]})}}a.Image=o,o.__name__=\"Image\",o.init_Image()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),a=e(93),h=e(24),_=i.__importStar(e(18)),n=e(88),r=e(9),d=e(30),l=e(11);class g extends a.XYGlyphView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.global_alpha.change,()=>this.renderer.request_render())}_render(e,t,{image_data:s,sx:i,sy:a,sw:h,sh:_}){const n=e.getImageSmoothingEnabled();e.setImageSmoothingEnabled(!1),e.globalAlpha=this.model.global_alpha;for(const n of t){if(null==s[n]||isNaN(i[n]+a[n]+h[n]+_[n]))continue;const t=a[n];e.translate(0,t),e.scale(1,-1),e.translate(0,-t),e.drawImage(s[n],0|i[n],0|a[n],h[n],_[n]),e.translate(0,t),e.scale(1,-1),e.translate(0,-t)}e.setImageSmoothingEnabled(n)}_set_data(e){this._set_width_heigh_data();for(let t=0,s=this._image.length;t<s;t++){if(null!=e&&e.indexOf(t)<0)continue;const s=this._image[t];let i;d.is_NDArray(s)?(l.assert(2==s.dimension,\"expected a 2D array\"),i=s,this._height[t]=s.shape[0],this._width[t]=s.shape[1]):(i=r.concat(s),this._height[t]=s.length,this._width[t]=s[0].length);const a=this._flat_img_to_buf8(i);this._set_image_data_from_buffer(t,a)}}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++){const[t,i,a,h]=this._lrtb(s);isNaN(t+i+a+h)||!isFinite(t+i+a+h)?e.add_empty():e.add(t,h,i,a)}}_lrtb(e){const t=this.renderer.xscale.source_range,s=this._x[e],i=t.is_reversed?s-this._dw[e]:s+this._dw[e],a=this.renderer.yscale.source_range,h=this._y[e],_=a.is_reversed?h-this._dh[e]:h+this._dh[e],[n,r]=s<i?[s,i]:[i,s],[d,l]=h<_?[h,_]:[_,h];return[n,r,l,d]}_set_width_heigh_data(){null!=this.image_data&&this.image_data.length==this._image.length||(this.image_data=new Array(this._image.length)),null!=this._width&&this._width.length==this._image.length||(this._width=new h.NumberArray(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new h.NumberArray(this._image.length))}_get_or_create_canvas(e){const t=this.image_data[e];if(null!=t&&t.width==this._width[e]&&t.height==this._height[e])return t;{const t=document.createElement(\"canvas\");return t.width=this._width[e],t.height=this._height[e],t}}_set_image_data_from_buffer(e,t){const s=this._get_or_create_canvas(e),i=s.getContext(\"2d\"),a=i.getImageData(0,0,this._width[e],this._height[e]);a.data.set(t),i.putImageData(a,0,0),this.image_data[e]=s}_map_data(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}}_image_index(e,t,s){const[i,a,h,_]=this._lrtb(e),n=this._width[e],r=this._height[e],d=(a-i)/n,l=(h-_)/r;let g=Math.floor((t-i)/d),o=Math.floor((s-_)/l);return this.renderer.xscale.source_range.is_reversed&&(g=n-g-1),this.renderer.yscale.source_range.is_reversed&&(o=r-o-1),{index:e,dim1:g,dim2:o,flat_index:o*n+g}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),a=this.renderer.yscale.invert(s),h=this.index.indices({x0:i,x1:i,y0:a,y1:a}),_=new n.Selection;for(const e of h)t!=1/0&&s!=1/0&&_.image_indices.push(this._image_index(e,i,a));return _}}s.ImageBaseView=g,g.__name__=\"ImageBaseView\";class o extends a.XYGlyph{constructor(e){super(e)}static init_ImageBase(){this.define({image:[_.NDArraySpec],dw:[_.DistanceSpec],dh:[_.DistanceSpec],dilate:[_.Boolean,!1],global_alpha:[_.Number,1]})}}s.ImageBase=o,o.__name__=\"ImageBase\",o.init_ImageBase()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const _=e(248),i=e(8);class n extends _.ImageBaseView{_flat_img_to_buf8(e){let t;return t=i.isArray(e)?new Uint32Array(e):e,new Uint8Array(t.buffer)}}a.ImageRGBAView=n,n.__name__=\"ImageRGBAView\";class r extends _.ImageBase{constructor(e){super(e)}static init_ImageRGBA(){this.prototype.default_view=n}}a.ImageRGBA=r,r.__name__=\"ImageRGBA\",r.init_ImageRGBA()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=e(1),i=e(93),a=e(24),n=r.__importStar(e(18)),h=e(12),o=e(251);class _ extends i.XYGlyphView{constructor(){super(...arguments),this._images_rendered=!1}initialize(){super.initialize(),this.connect(this.model.properties.global_alpha.change,()=>this.renderer.request_render())}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++)e.add_empty()}_set_data(){null!=this.image&&this.image.length==this._url.length||(this.image=h.map(this._url,()=>null));const{retry_attempts:e,retry_timeout:t}=this.model;for(let s=0,r=this._url.length;s<r;s++){const r=this._url[s];null!=r&&\"\"!=r&&new o.ImageLoader(r,{loaded:e=>{this.image[s]=e,this.renderer.request_render()},attempts:e+1,timeout:t})}const s=\"data\"==this.model.properties.w.units,r=\"data\"==this.model.properties.h.units,i=this._x.length,n=new a.NumberArray(s?2*i:i),_=new a.NumberArray(r?2*i:i),{anchor:c}=this.model;function l(e,t){switch(c){case\"top_left\":case\"bottom_left\":case\"center_left\":return[e,e+t];case\"top_center\":case\"bottom_center\":case\"center\":return[e-t/2,e+t/2];case\"top_right\":case\"bottom_right\":case\"center_right\":return[e-t,e]}}function d(e,t){switch(c){case\"top_left\":case\"top_center\":case\"top_right\":return[e,e-t];case\"bottom_left\":case\"bottom_center\":case\"bottom_right\":return[e+t,e];case\"center_left\":case\"center\":case\"center_right\":return[e+t/2,e-t/2]}}if(s)for(let e=0;e<i;e++)[n[e],n[i+e]]=l(this._x[e],this._w[e]);else n.set(this._x,0);if(r)for(let e=0;e<i;e++)[_[e],_[i+e]]=d(this._y[e],this._h[e]);else _.set(this._y,0);const[m,u]=h.minmax(n),[p,g]=h.minmax(_);this._bounds_rect={x0:m,x1:u,y0:p,y1:g}}has_finished(){return super.has_finished()&&1==this._images_rendered}_map_data(){const e=null!=this.model.w?this._w:h.map(this._x,()=>NaN),t=null!=this.model.h?this._h:h.map(this._x,()=>NaN);switch(this.model.properties.w.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,e,\"edge\",this.model.dilate);break;case\"screen\":this.sw=e}switch(this.model.properties.h.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,t,\"edge\",this.model.dilate);break;case\"screen\":this.sh=t}}_render(e,t,{image:s,sx:r,sy:i,sw:a,sh:n,_angle:h}){const{frame:o}=this.renderer.plot_view;e.rect(o.bbox.left+1,o.bbox.top+1,o.bbox.width-2,o.bbox.height-2),e.clip();let _=!0;for(const o of t){if(isNaN(r[o]+i[o]+h[o]))continue;const t=s[o];null!=t?this._render_image(e,o,t,r,i,a,n,h):_=!1}_&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())}_final_sx_sy(e,t,s,r,i){switch(e){case\"top_left\":return[t,s];case\"top_center\":return[t-r/2,s];case\"top_right\":return[t-r,s];case\"center_right\":return[t-r,s-i/2];case\"bottom_right\":return[t-r,s-i];case\"bottom_center\":return[t-r/2,s-i];case\"bottom_left\":return[t,s-i];case\"center_left\":return[t,s-i/2];case\"center\":return[t-r/2,s-i/2]}}_render_image(e,t,s,r,i,a,n,h){isNaN(a[t])&&(a[t]=s.width),isNaN(n[t])&&(n[t]=s.height);const{anchor:o}=this.model,[_,c]=this._final_sx_sy(o,r[t],i[t],a[t],n[t]);e.save(),e.globalAlpha=this.model.global_alpha;const l=a[t]/2,d=n[t]/2;h[t]?(e.translate(_,c),e.translate(l,d),e.rotate(h[t]),e.translate(-l,-d),e.drawImage(s,0,0,a[t],n[t]),e.translate(l,d),e.rotate(-h[t]),e.translate(-l,-d),e.translate(-_,-c)):e.drawImage(s,_,c,a[t],n[t]),e.restore()}bounds(){return this._bounds_rect}}s.ImageURLView=_,_.__name__=\"ImageURLView\";class c extends i.XYGlyph{constructor(e){super(e)}static init_ImageURL(){this.prototype.default_view=_,this.define({url:[n.StringSpec],anchor:[n.Anchor,\"top_left\"],global_alpha:[n.Number,1],angle:[n.AngleSpec,0],w:[n.DistanceSpec],h:[n.DistanceSpec],dilate:[n.Boolean,!1],retry_attempts:[n.Number,0],retry_timeout:[n.Number,0]})}}s.ImageURL=c,c.__name__=\"ImageURL\",c.init_ImageURL()},\n      function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=i(19);class a{constructor(i,e={}){this._image=new Image,this._finished=!1;const{attempts:t=1,timeout:a=1}=e;this.promise=new Promise((o,n)=>{this._image.crossOrigin=\"anonymous\";let r=0;this._image.onerror=()=>{if(++r==t){const a=`unable to load ${i} image after ${t} attempts`;if(s.logger.warn(a),null==this._image.crossOrigin)return void(null!=e.failed&&e.failed());s.logger.warn(`attempting to load ${i} without a cross origin policy`),this._image.crossOrigin=null,r=0}setTimeout(()=>this._image.src=i,a)},this._image.onload=()=>{this._finished=!0,null!=e.loaded&&e.loaded(this._image),o(this._image)},this._image.src=i})}get finished(){return this._finished}get image(){return this._image}}t.ImageLoader=a,a.__name__=\"ImageLoader\"},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(37),o=e(28),l=s.__importStar(e(101)),r=s.__importStar(e(18)),_=e(12),c=e(13),a=e(94),h=e(100),d=e(88);class y extends a.GlyphView{_project_data(){n.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++){const t=this._xs.get(i);if(0==t.length){e.add_empty();continue}const s=this._ys.get(i);if(0==s.length){e.add_empty();continue}const[n,o]=_.minmax(t),[l,r]=_.minmax(s);e.add(n,l,o,r)}}_render(e,t,{sxs:i,sys:s}){for(const n of t){const t=i.get(n),o=s.get(n);this.visuals.line.set_vectorize(e,n);for(let i=0,s=t.length;i<s;i++)0!=i?isNaN(t[i])||isNaN(o[i])?(e.stroke(),e.beginPath()):e.lineTo(t[i],o[i]):(e.beginPath(),e.moveTo(t[i],o[i]));e.stroke()}}_hit_point(e){const t={x:e.sx,y:e.sy};let i=9999;const s=new Map;for(let e=0,n=this.sxs.length;e<n;e++){const n=Math.max(2,this.visuals.line.cache_select(\"line_width\",e)/2),o=this.sxs.get(e),r=this.sys.get(e);let _=null;for(let e=0,s=o.length-1;e<s;e++){const s={x:o[e],y:r[e]},c={x:o[e+1],y:r[e+1]},a=l.dist_to_segment(t,s,c);a<n&&a<i&&(i=a,_=[e])}null!=_&&s.set(e,_)}return new d.Selection({indices:[...s.keys()],multiline_indices:c.to_object(s)})}_hit_span(e){const{sx:t,sy:i}=e;let s,n;\"v\"==e.direction?(s=this.renderer.yscale.invert(i),n=this._ys):(s=this.renderer.xscale.invert(t),n=this._xs);const o=new Map;for(let e=0,t=n.length;e<t;e++){const t=n.get(e),i=[];for(let e=0,n=t.length-1;e<n;e++)t[e]<=s&&s<=t[e+1]&&i.push(e);i.length>0&&o.set(e,i)}return new d.Selection({indices:[...o.keys()],multiline_indices:c.to_object(o)})}get_interpolation_hit(e,t,i){const s=this._xs.get(e),n=this._ys.get(e),o=s[t],l=n[t],r=s[t+1],_=n[t+1];return h.line_interpolation(this.renderer,i,o,l,r,_)}draw_legend_for_index(e,t,i){h.generic_line_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(this+\".scenterxy() is not implemented\")}}i.MultiLineView=y,y.__name__=\"MultiLineView\";class x extends a.Glyph{constructor(e){super(e)}static init_MultiLine(){this.prototype.default_view=y,this.define({xs:[r.XCoordinateSeqSpec,{field:\"xs\"}],ys:[r.YCoordinateSeqSpec,{field:\"ys\"}]}),this.mixins(o.LineVector)}}i.MultiLine=x,x.__name__=\"MultiLine\",x.init_MultiLine()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(95),o=e(94),r=e(100),l=e(12),h=e(12),_=e(28),a=i.__importStar(e(101)),d=i.__importStar(e(18)),c=e(88),x=e(11);class y extends o.GlyphView{_project_data(){}_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._xs[n],o=this._ys[n];if(0==i.length||0==o.length){e.add_empty();continue}let r=1/0,h=-1/0,_=1/0,a=-1/0;for(let e=0,n=i.length;e<n;e++){const n=i[e][0],d=o[e][0];if(0!=n.length&&0!=d.length){const[e,i]=l.minmax(n),[o,c]=l.minmax(d);r=t(r,e),h=s(h,i),_=t(_,o),a=s(a,c)}}isFinite(r+h+_+a)?e.add(r,_,h,a):e.add_empty()}this._hole_index=this._index_hole_data()}_index_hole_data(){const{min:e,max:t}=Math,{data_size:s}=this,i=new n.SpatialIndex(s);for(let n=0;n<s;n++){const s=this._xs[n],o=this._ys[n];if(0==s.length||0==o.length){i.add_empty();continue}let r=1/0,h=-1/0,_=1/0,a=-1/0;for(let i=0,n=s.length;i<n;i++){const n=s[i],d=o[i];if(n.length>1&&d.length>1)for(let s=1,i=n.length;s<i;s++){const[i,o]=l.minmax(n[s]),[c,x]=l.minmax(d[s]);r=e(r,i),h=t(h,o),_=e(_,c),a=t(a,x)}}isFinite(r+h+_+a)?i.add(r,_,h,a):i.add_empty()}return i.finish(),i}_mask_data(){const e=this.renderer.plot_view.frame.x_range,[t,s]=[e.min,e.max],i=this.renderer.plot_view.frame.y_range,[n,o]=[i.min,i.max];return this.index.indices({x0:t,x1:s,y0:n,y1:o})}_inner_loop(e,t,s){e.beginPath();for(let i=0,n=t.length;i<n;i++)for(let n=0,o=t[i].length;n<o;n++){const o=t[i][n],r=s[i][n];for(let t=0,s=o.length;t<s;t++)0!=t?e.lineTo(o[t],r[t]):e.moveTo(o[t],r[t]);e.closePath()}}_render(e,t,{sxs:s,sys:i}){if(this.visuals.fill.doit||this.visuals.line.doit)for(const n of t){const[t,o]=[s[n],i[n]];this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,n),this._inner_loop(e,t,o),e.fill(\"evenodd\")),this.visuals.hatch.doit2(e,n,()=>{this._inner_loop(e,t,o),e.fill(\"evenodd\")},()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,n),this._inner_loop(e,t,o),e.stroke())}}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,o=[t,s,s,t],r=[i,i,n,n],[l,h]=this.renderer.xscale.r_invert(t,s),[_,d]=this.renderer.yscale.r_invert(i,n),x=this.index.indices({x0:l,x1:h,y0:_,y1:d}),y=[];for(const e of x){const t=this.sxs[e],s=this.sys[e];let i=!0;for(let e=0,n=t.length;e<n;e++){for(let n=0,l=t[e][0].length;n<l;n++){const l=t[e][0][n],h=s[e][0][n];if(!a.point_in_poly(l,h,o,r)){i=!1;break}}if(!i)break}i&&y.push(e)}return new c.Selection({indices:y})}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),n=this.renderer.yscale.invert(s),o=this.index.indices({x0:i,y0:n,x1:i,y1:n}),r=this._hole_index.indices({x0:i,y0:n,x1:i,y1:n}),l=[];for(const e of o){const i=this.sxs[e],n=this.sys[e];for(let o=0,h=i.length;o<h;o++){const h=i[o].length;if(a.point_in_poly(t,s,i[o][0],n[o][0]))if(1==h)l.push(e);else if(r.get(e)){if(h>1){let r=!1;for(let e=1;e<h;e++){const l=i[o][e],h=n[o][e];if(a.point_in_poly(t,s,l,h)){r=!0;break}}r||l.push(e)}}else l.push(e)}}return new c.Selection({indices:l})}_get_snap_coord(e){return h.sum(e)/e.length}scenterxy(e,t,s){if(1==this.sxs[e].length){return[this._get_snap_coord(this.sxs[e][0][0]),this._get_snap_coord(this.sys[e][0][0])]}{const i=this.sxs[e],n=this.sys[e];for(let e=0,o=i.length;e<o;e++)if(a.point_in_poly(t,s,i[e][0],n[e][0])){return[this._get_snap_coord(i[e][0]),this._get_snap_coord(n[e][0])]}}x.unreachable()}map_data(){const e=this._xs.length;this.sxs=new Array(e),this.sys=new Array(e);for(let t=0;t<e;t++){const e=this._xs[t].length;this.sxs[t]=new Array(e),this.sys[t]=new Array(e);for(let s=0;s<e;s++){const e=this._xs[t][s].length;this.sxs[t][s]=new Array(e),this.sys[t][s]=new Array(e);for(let i=0;i<e;i++){const[e,n]=this.renderer.coordinates.map_to_screen(this._xs[t][s][i],this._ys[t][s][i]);this.sxs[t][s][i]=e,this.sys[t][s][i]=n}}}}draw_legend_for_index(e,t,s){r.generic_area_legend(this.visuals,e,t,s)}}s.MultiPolygonsView=y,y.__name__=\"MultiPolygonsView\";class f extends o.Glyph{constructor(e){super(e)}static init_MultiPolygons(){this.prototype.default_view=y,this.define({xs:[d.XCoordinateSeqSeqSeqSpec,{field:\"xs\"}],ys:[d.YCoordinateSeqSeqSeqSpec,{field:\"ys\"}]}),this.mixins([_.LineVector,_.FillVector,_.HatchVector])}}s.MultiPolygons=f,f.__name__=\"MultiPolygons\",f.init_MultiPolygons()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const l=e(243);class s extends l.EllipseOvalView{_map_data(){super._map_data();const{sw:e}=this,t=e.length;for(let a=0;a<t;a++)e[a]*=.75}}a.OvalView=s,s.__name__=\"OvalView\";class _ extends l.EllipseOval{constructor(e){super(e)}static init_Oval(){this.prototype.default_view=s}}a.Oval=_,_.__name__=\"Oval\",_.init_Oval()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(94),r=e(100),o=e(12),a=e(28),_=i.__importStar(e(101)),c=i.__importStar(e(18)),l=e(88),h=e(11),d=e(37);class y extends n.GlyphView{_project_data(){d.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++){const t=this._xs.get(s),i=this._ys.get(s);if(0==t.length)e.add_empty();else{const[s,n]=o.minmax(t),[r,a]=o.minmax(i);e.add(s,r,n,a)}}}_mask_data(){const e=this.renderer.plot_view.frame.x_range,[t,s]=[e.min,e.max],i=this.renderer.plot_view.frame.y_range,[n,r]=[i.min,i.max];return this.index.indices({x0:t,x1:s,y0:n,y1:r})}_inner_loop(e,t,s,i){for(let n=0,r=t.length;n<r;n++)0!=n?isNaN(t[n]+s[n])?(e.closePath(),i.apply(e),e.beginPath()):e.lineTo(t[n],s[n]):(e.beginPath(),e.moveTo(t[n],s[n]));e.closePath(),i.call(e)}_render(e,t,{sxs:s,sys:i}){for(const n of t){const t=s.get(n),r=i.get(n);this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,n),this._inner_loop(e,t,r,e.fill)),this.visuals.hatch.doit2(e,n,()=>this._inner_loop(e,t,r,e.fill),()=>this.renderer.request_render()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,n),this._inner_loop(e,t,r,e.stroke))}}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,r=[t,s,s,t],o=[i,i,n,n],[a,c]=this.renderer.xscale.r_invert(t,s),[h,d]=this.renderer.yscale.r_invert(i,n),y=this.index.indices({x0:a,x1:c,y0:h,y1:d}),p=[];for(const e of y){const t=this.sxs.get(e),s=this.sys.get(e);let i=!0;for(let e=0,n=t.length;e<n;e++){const n=t[e],a=s[e];if(!_.point_in_poly(n,a,r,o)){i=!1;break}}i&&p.push(e)}return new l.Selection({indices:p})}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),n=this.renderer.yscale.invert(s),r=this.index.indices({x0:i,y0:n,x1:i,y1:n}),o=[];for(const e of r){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;for(let a=0,c=0;;c++){if(isNaN(i[c])||c==r){const r=i.subarray(a,c),l=n.subarray(a,c);if(_.point_in_poly(t,s,r,l)){o.push(e);break}a=c+1}if(c==r)break}}return new l.Selection({indices:o})}_get_snap_coord(e){return o.sum(e)/e.length}scenterxy(e,t,s){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;let o=!1;for(let e=0,a=0;;a++){const c=isNaN(i[a]);if(o=o||c,a==r&&!o){return[this._get_snap_coord(i),this._get_snap_coord(n)]}if(c||a==r){const r=i.subarray(e,a),o=n.subarray(e,a);if(_.point_in_poly(t,s,r,o)){return[this._get_snap_coord(r),this._get_snap_coord(o)]}e=a+1}if(a==r)break}h.unreachable()}draw_legend_for_index(e,t,s){r.generic_area_legend(this.visuals,e,t,s)}}s.PatchesView=y,y.__name__=\"PatchesView\";class p extends n.Glyph{constructor(e){super(e)}static init_Patches(){this.prototype.default_view=y,this.define({xs:[c.XCoordinateSeqSpec,{field:\"xs\"}],ys:[c.YCoordinateSeqSpec,{field:\"ys\"}]}),this.mixins([a.LineVector,a.FillVector,a.HatchVector])}}s.Patches=p,p.__name__=\"Patches\",p.init_Patches()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=t(1),s=t(245),r=o.__importStar(t(18));class _ extends s.BoxView{scenterxy(t){return[(this.sleft[t]+this.sright[t])/2,(this.stop[t]+this.sbottom[t])/2]}_lrtb(t){return[this._left[t],this._right[t],this._top[t],this._bottom[t]]}}i.QuadView=_,_.__name__=\"QuadView\";class d extends s.Box{constructor(t){super(t)}static init_Quad(){this.prototype.default_view=_,this.define({right:[r.XCoordinateSpec,{field:\"right\"}],bottom:[r.YCoordinateSpec,{field:\"bottom\"}],left:[r.XCoordinateSpec,{field:\"left\"}],top:[r.YCoordinateSpec,{field:\"top\"}]})}}i.Quad=d,d.__name__=\"Quad\",d.init_Quad()},\n      function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=i(1),a=i(28),_=i(37),c=i(94),n=i(100),r=s.__importStar(i(18));function o(i,e,t){if(e==(i+t)/2)return[i,t];{const s=(i-e)/(i-2*e+t),a=i*(1-s)**2+2*e*(1-s)*s+t*s**2;return[Math.min(i,t,a),Math.max(i,t,a)]}}class d extends c.GlyphView{_project_data(){_.inplace.project_xy(this._x0,this._y0),_.inplace.project_xy(this._x1,this._y1)}_index_data(i){const{data_size:e}=this;for(let t=0;t<e;t++)if(isNaN(this._x0[t]+this._x1[t]+this._y0[t]+this._y1[t]+this._cx[t]+this._cy[t]))i.add_empty();else{const[e,s]=o(this._x0[t],this._cx[t],this._x1[t]),[a,_]=o(this._y0[t],this._cy[t],this._y1[t]);i.add(e,a,s,_)}}_render(i,e,{sx0:t,sy0:s,sx1:a,sy1:_,scx:c,scy:n}){if(this.visuals.line.doit)for(const r of e)isNaN(t[r]+s[r]+a[r]+_[r]+c[r]+n[r])||(i.beginPath(),i.moveTo(t[r],s[r]),i.quadraticCurveTo(c[r],n[r],a[r],_[r]),this.visuals.line.set_vectorize(i,r),i.stroke())}draw_legend_for_index(i,e,t){n.generic_line_legend(this.visuals,i,e,t)}scenterxy(){throw new Error(this+\".scenterxy() is not implemented\")}}t.QuadraticView=d,d.__name__=\"QuadraticView\";class h extends c.Glyph{constructor(i){super(i)}static init_Quadratic(){this.prototype.default_view=d,this.define({x0:[r.XCoordinateSpec,{field:\"x0\"}],y0:[r.YCoordinateSpec,{field:\"y0\"}],x1:[r.XCoordinateSpec,{field:\"x1\"}],y1:[r.YCoordinateSpec,{field:\"y1\"}],cx:[r.XCoordinateSpec,{field:\"cx\"}],cy:[r.YCoordinateSpec,{field:\"cy\"}]}),this.mixins(a.LineVector)}}t.Quadratic=h,h.__name__=\"Quadratic\",h.init_Quadratic()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(93),a=e(100),r=e(28),l=s.__importStar(e(18));class _ extends n.XYGlyphView{_map_data(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this._length):this.slength=this._length}_render(e,t,{sx:i,sy:s,slength:n,_angle:a}){if(this.visuals.line.doit){const r=2*(this.renderer.plot_view.frame.bbox.width+this.renderer.plot_view.frame.bbox.height);for(let e=0,t=n.length;e<t;e++)0==n[e]&&(n[e]=r);for(const r of t)isNaN(i[r]+s[r]+a[r]+n[r])||(e.translate(i[r],s[r]),e.rotate(a[r]),e.beginPath(),e.moveTo(0,0),e.lineTo(n[r],0),this.visuals.line.set_vectorize(e,r),e.stroke(),e.rotate(-a[r]),e.translate(-i[r],-s[r]))}}draw_legend_for_index(e,t,i){a.generic_line_legend(this.visuals,e,t,i)}}i.RayView=_,_.__name__=\"RayView\";class h extends n.XYGlyph{constructor(e){super(e)}static init_Ray(){this.prototype.default_view=_,this.mixins(r.LineVector),this.define({length:[l.DistanceSpec],angle:[l.AngleSpec]})}}i.Ray=h,h.__name__=\"Ray\",h.init_Ray()},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),h=t(241),r=t(100),a=t(24),n=i.__importStar(t(18)),_=t(12),o=t(88);class l extends h.CenterRotatableView{_set_data(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)}_map_data(){if(\"data\"==this.model.properties.width.units)[this.sw,this.sx0]=this._map_dist_corner_for_data_side_length(this._x,this._width,this.renderer.xscale);else{this.sw=this._width;const t=this.sx.length;this.sx0=new a.NumberArray(t);for(let s=0;s<t;s++)this.sx0[s]=this.sx[s]-this.sw[s]/2}if(\"data\"==this.model.properties.height.units)[this.sh,this.sy1]=this._map_dist_corner_for_data_side_length(this._y,this._height,this.renderer.yscale);else{this.sh=this._height;const t=this.sy.length;this.sy1=new a.NumberArray(t);for(let s=0;s<t;s++)this.sy1[s]=this.sy[s]-this.sh[s]/2}const t=this.sw.length;this.ssemi_diag=new a.NumberArray(t);for(let s=0;s<t;s++)this.ssemi_diag[s]=Math.sqrt(this.sw[s]/2*this.sw[s]/2+this.sh[s]/2*this.sh[s]/2)}_render(t,s,{sx:e,sy:i,sx0:h,sy1:r,sw:a,sh:n,_angle:_}){if(this.visuals.fill.doit)for(const o of s)isNaN(e[o]+i[o]+h[o]+r[o]+a[o]+n[o]+_[o])||(this.visuals.fill.set_vectorize(t,o),_[o]?(t.translate(e[o],i[o]),t.rotate(_[o]),t.fillRect(-a[o]/2,-n[o]/2,a[o],n[o]),t.rotate(-_[o]),t.translate(-e[o],-i[o])):t.fillRect(h[o],r[o],a[o],n[o]));if(this.visuals.line.doit){t.beginPath();for(const o of s)isNaN(e[o]+i[o]+h[o]+r[o]+a[o]+n[o]+_[o])||0!=a[o]&&0!=n[o]&&(_[o]?(t.translate(e[o],i[o]),t.rotate(_[o]),t.rect(-a[o]/2,-n[o]/2,a[o],n[o]),t.rotate(-_[o]),t.translate(-e[o],-i[o])):t.rect(h[o],r[o],a[o],n[o]),this.visuals.line.set_vectorize(t,o),t.stroke(),t.beginPath());t.stroke()}}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){let{sx:s,sy:e}=t;const i=this.renderer.xscale.invert(s),h=this.renderer.yscale.invert(e),r=this.sx0.length,n=new a.NumberArray(r);for(let t=0;t<r;t++)n[t]=this.sx0[t]+this.sw[t]/2;const l=new a.NumberArray(r);for(let t=0;t<r;t++)l[t]=this.sy1[t]+this.sh[t]/2;const d=_.max(this._ddist(0,n,this.ssemi_diag)),c=_.max(this._ddist(1,l,this.ssemi_diag)),x=i-d,m=i+d,y=h-c,w=h+c;let f,u;const g=[];for(const t of this.index.indices({x0:x,x1:m,y0:y,y1:w})){if(this._angle[t]){const i=Math.sin(-this._angle[t]),h=Math.cos(-this._angle[t]),r=h*(s-this.sx[t])-i*(e-this.sy[t])+this.sx[t],a=i*(s-this.sx[t])+h*(e-this.sy[t])+this.sy[t];s=r,e=a,f=Math.abs(this.sx[t]-s)<=this.sw[t]/2,u=Math.abs(this.sy[t]-e)<=this.sh[t]/2}else{const i=s-this.sx0[t],h=e-this.sy1[t];f=0<=i&&i<=this.sw[t],u=0<=h&&h<=this.sh[t]}f&&u&&g.push(t)}return new o.Selection({indices:g})}_map_dist_corner_for_data_side_length(t,s,e){const i=t.length,h=new a.NumberArray(i),r=new a.NumberArray(i);for(let e=0;e<i;e++)h[e]=t[e]-s[e]/2,r[e]=t[e]+s[e]/2;const n=e.v_compute(h),_=e.v_compute(r),o=this.sdist(e,h,s,\"edge\",this.model.dilate);let l=n;for(let t=0;t<i;t++){const s=n[t],e=_[t];if(!isNaN(s+e)&&s!=e){l=s<e?n:_;break}}return[o,l]}_ddist(t,s,e){const i=0==t?this.renderer.xscale:this.renderer.yscale,h=s,r=h.length,n=new a.NumberArray(r);for(let t=0;t<r;t++)n[t]=h[t]+e[t];const _=i.v_invert(h),o=i.v_invert(n),l=_.length,d=new a.NumberArray(l);for(let t=0;t<l;t++)d[t]=Math.abs(o[t]-_[t]);return d}draw_legend_for_index(t,s,e){r.generic_area_legend(this.visuals,t,s,e)}_bounds({x0:t,x1:s,y0:e,y1:i}){return{x0:t-this.max_w2,x1:s+this.max_w2,y0:e-this.max_h2,y1:i+this.max_h2}}}e.RectView=l,l.__name__=\"RectView\";class d extends h.CenterRotatable{constructor(t){super(t)}static init_Rect(){this.prototype.default_view=l,this.define({dilate:[n.Boolean,!1]})}}e.Rect=d,d.__name__=\"Rect\",d.init_Rect()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=i.__importStar(e(101)),r=i.__importStar(e(18)),_=e(28),h=e(37),a=e(94),o=e(100),c=e(88);class d extends a.GlyphView{_project_data(){h.inplace.project_xy(this._x0,this._y0),h.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{min:t,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._x0[n],r=this._x1[n],_=this._y0[n],h=this._y1[n];isNaN(i+r+_+h)?e.add_empty():e.add(t(i,r),t(_,h),s(i,r),s(_,h))}}_render(e,t,{sx0:s,sy0:i,sx1:n,sy1:r}){if(this.visuals.line.doit)for(const _ of t)isNaN(s[_]+i[_]+n[_]+r[_])||(e.beginPath(),e.moveTo(s[_],i[_]),e.lineTo(n[_],r[_]),this.visuals.line.set_vectorize(e,_),e.stroke())}_hit_point(e){const{sx:t,sy:s}=e,i={x:t,y:s},[r,_]=this.renderer.xscale.r_invert(t-2,t+2),[h,a]=this.renderer.yscale.r_invert(s-2,s+2),o=this.index.indices({x0:r,y0:h,x1:_,y1:a}),d=[];for(const e of o){const t=Math.max(2,this.visuals.line.cache_select(\"line_width\",e)/2)**2,s={x:this.sx0[e],y:this.sy0[e]},r={x:this.sx1[e],y:this.sy1[e]};n.dist_to_segment_squared(i,s,r)<t&&d.push(e)}return new c.Selection({indices:d})}_hit_span(e){const[t,s]=this.renderer.plot_view.frame.bbox.ranges,{sx:i,sy:n}=e;let r,_,h;\"v\"==e.direction?(h=this.renderer.yscale.invert(n),[r,_]=[this._y0,this._y1]):(h=this.renderer.xscale.invert(i),[r,_]=[this._x0,this._x1]);const a=[],[o,d]=this.renderer.xscale.r_invert(t.start,t.end),[x,l]=this.renderer.yscale.r_invert(s.start,s.end),y=this.index.indices({x0:o,y0:x,x1:d,y1:l});for(const t of y){(r[t]<=h&&h<=_[t]||_[t]<=h&&h<=r[t])&&a.push(t);const s=1.5+this.visuals.line.cache_select(\"line_width\",t)/2;r[t]==_[t]&&(\"h\"==e.direction?Math.abs(this.sx0[t]-i)<=s&&a.push(t):Math.abs(this.sy0[t]-n)<=s&&a.push(t))}return new c.Selection({indices:a})}scenterxy(e){return[(this.sx0[e]+this.sx1[e])/2,(this.sy0[e]+this.sy1[e])/2]}draw_legend_for_index(e,t,s){o.generic_line_legend(this.visuals,e,t,s)}}s.SegmentView=d,d.__name__=\"SegmentView\";class x extends a.Glyph{constructor(e){super(e)}static init_Segment(){this.prototype.default_view=d,this.define({x0:[r.XCoordinateSpec,{field:\"x0\"}],y0:[r.YCoordinateSpec,{field:\"y0\"}],x1:[r.XCoordinateSpec,{field:\"x1\"}],y1:[r.YCoordinateSpec,{field:\"y1\"}]}),this.mixins(_.LineVector)}}s.Segment=x,x.__name__=\"Segment\",x.init_Segment()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(93),o=e(100),r=e(28),l=n.__importStar(e(18));class a extends s.XYGlyphView{_render(e,t,{sx:i,sy:n}){let s=!1,o=null;this.visuals.line.set_value(e);const r=t.length;if(!(r<2)){e.beginPath(),e.moveTo(i[0],n[0]);for(const r of t){let t,l,a,_;switch(this.model.mode){case\"before\":[t,a]=[i[r-1],n[r]],[l,_]=[i[r],n[r]];break;case\"after\":[t,a]=[i[r],n[r-1]],[l,_]=[i[r],n[r]];break;case\"center\":{const e=(i[r-1]+i[r])/2;[t,a]=[e,n[r-1]],[l,_]=[e,n[r]];break}default:throw new Error(\"unexpected\")}if(s){if(!isFinite(i[r]+n[r])){e.stroke(),e.beginPath(),s=!1,o=r;continue}null!=o&&r-o>1&&(e.stroke(),s=!1)}s?(e.lineTo(t,a),e.lineTo(l,_)):(e.beginPath(),e.moveTo(i[r],n[r]),s=!0),o=r}e.lineTo(i[r-1],n[r-1]),e.stroke()}}draw_legend_for_index(e,t,i){o.generic_line_legend(this.visuals,e,t,i)}}i.StepView=a,a.__name__=\"StepView\";class _ extends s.XYGlyph{constructor(e){super(e)}static init_Step(){this.prototype.default_view=a,this.mixins(r.LineVector),this.define({mode:[l.StepMode,\"before\"]})}}i.Step=_,_.__name__=\"Step\",_.init_Step()},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),n=t(93),_=t(28),o=i.__importStar(t(101)),h=i.__importStar(t(18)),l=t(159),a=t(11),r=t(88);class c extends n.XYGlyphView{_rotate_point(t,s,e,i,n){return[(t-e)*Math.cos(n)-(s-i)*Math.sin(n)+e,(t-e)*Math.sin(n)+(s-i)*Math.cos(n)+i]}_text_bounds(t,s,e,i){return[[t,t+e,t+e,t,t],[s,s,s-i,s-i,s]]}_render(t,s,{sx:e,sy:i,_x_offset:n,_y_offset:_,_angle:o,_text:h}){this._sys=[],this._sxs=[];for(const a of s)if(this._sxs[a]=[],this._sys[a]=[],!isNaN(e[a]+i[a]+n[a]+_[a]+o[a])&&null!=h[a]&&this.visuals.text.doit){const s=\"\"+h[a];t.save(),t.translate(e[a]+n[a],i[a]+_[a]),t.rotate(o[a]),this.visuals.text.set_vectorize(t,a);const r=this.visuals.text.cache_select(\"font\",a),{height:c}=l.measure_font(r),x=this.visuals.text.text_line_height.value()*c;if(-1==s.indexOf(\"\\n\")){t.fillText(s,0,0);const o=e[a]+n[a],h=i[a]+_[a],l=t.measureText(s).width,[r,c]=this._text_bounds(o,h,l,x);this._sxs[a].push(r),this._sys[a].push(c)}else{const o=s.split(\"\\n\"),h=x*o.length,l=this.visuals.text.cache_select(\"text_baseline\",a);let r;switch(l){case\"top\":r=0;break;case\"middle\":r=-h/2+x/2;break;case\"bottom\":r=-h+x;break;default:r=0,console.warn(`'${l}' baseline not supported with multi line text`)}for(const s of o){t.fillText(s,0,r);const o=e[a]+n[a],h=r+i[a]+_[a],l=t.measureText(s).width,[c,u]=this._text_bounds(o,h,l,x);this._sxs[a].push(c),this._sys[a].push(u),r+=x}}t.restore()}}_hit_point(t){const{sx:s,sy:e}=t,i=[];for(let t=0;t<this._sxs.length;t++){const n=this._sxs[t],_=this._sys[t],h=n.length;for(let l=0,a=h;l<a;l++){const[a,r]=this._rotate_point(s,e,n[h-1][0],_[h-1][0],-this._angle[t]);o.point_in_poly(a,r,n[l],_[l])&&i.push(t)}}return new r.Selection({indices:i})}scenterxy(t){const s=this._sxs[t],e=this._sys[t];a.assert(0!=s.length&&0!=e.length);const i=s[0][0],n=e[0][0],_=(s[0][2]+i)/2,o=(e[0][2]+n)/2,[h,l]=this._rotate_point(_,o,i,n,this._angle[t]);return[h,l]}}e.TextView=c,c.__name__=\"TextView\";class x extends n.XYGlyph{constructor(t){super(t)}static init_Text(){this.prototype.default_view=c,this.mixins(_.TextVector),this.define({text:[h.NullStringSpec,{field:\"text\"}],angle:[h.AngleSpec,0],x_offset:[h.NumberSpec,0],y_offset:[h.NumberSpec,0]})}}e.Text=x,x.__name__=\"Text\",x.init_Text()},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),r=t(245),h=t(24),o=i.__importStar(t(18));class _ extends r.BoxView{scenterxy(t){return[this.sx[t],(this.stop[t]+this.sbottom[t])/2]}_lrtb(t){return[this._x[t]-this._width[t]/2,this._x[t]+this._width[t]/2,Math.max(this._top[t],this._bottom[t]),Math.min(this._top[t],this._bottom[t])]}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"),this.stop=this.renderer.yscale.v_compute(this._top),this.sbottom=this.renderer.yscale.v_compute(this._bottom);const t=this.sx.length;this.sleft=new h.NumberArray(t),this.sright=new h.NumberArray(t);for(let s=0;s<t;s++)this.sleft[s]=this.sx[s]-this.sw[s]/2,this.sright[s]=this.sx[s]+this.sw[s]/2;this._clamp_viewport()}}e.VBarView=_,_.__name__=\"VBarView\";class a extends r.Box{constructor(t){super(t)}static init_VBar(){this.prototype.default_view=_,this.define({x:[o.XCoordinateSpec,{field:\"x\"}],bottom:[o.YCoordinateSpec,{value:0}],width:[o.NumberSpec,{value:1}],top:[o.YCoordinateSpec,{field:\"top\"}]})}}e.VBar=a,a.__name__=\"VBar\",a.init_VBar()},\n      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(1),r=e(93),n=e(100),a=e(28),d=i.__importStar(e(18)),l=e(10),o=e(88);class _ extends r.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius}_render(e,s,{sx:t,sy:i,sradius:r,_start_angle:n,_end_angle:a}){const d=this.model.properties.direction.value();for(const l of s)isNaN(t[l]+i[l]+r[l]+n[l]+a[l])||(e.beginPath(),e.arc(t[l],i[l],r[l],n[l],a[l],d),e.lineTo(t[l],i[l]),e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,l),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,l),e.stroke()))}_hit_point(e){let s,t,i,r,n,a,d,_,c;const{sx:h,sy:u}=e,p=this.renderer.xscale.invert(h),g=this.renderer.yscale.invert(u),x=2*this.max_radius;\"data\"===this.model.properties.radius.units?(a=p-x,d=p+x,_=g-x,c=g+x):(t=h-x,i=h+x,[a,d]=this.renderer.xscale.r_invert(t,i),r=u-x,n=u+x,[_,c]=this.renderer.yscale.r_invert(r,n));const v=[];for(const e of this.index.indices({x0:a,x1:d,y0:_,y1:c})){const a=this.sradius[e]**2;[t,i]=this.renderer.xscale.r_compute(p,this._x[e]),[r,n]=this.renderer.yscale.r_compute(g,this._y[e]),s=(t-i)**2+(r-n)**2,s<=a&&v.push(e)}const y=this.model.properties.direction.value(),f=[];for(const e of v){const s=Math.atan2(u-this.sy[e],h-this.sx[e]);l.angle_between(-s,-this._start_angle[e],-this._end_angle[e],y)&&f.push(e)}return new o.Selection({indices:f})}draw_legend_for_index(e,s,t){n.generic_area_legend(this.visuals,e,s,t)}scenterxy(e){const s=this.sradius[e]/2,t=(this._start_angle[e]+this._end_angle[e])/2;return[this.sx[e]+s*Math.cos(t),this.sy[e]+s*Math.sin(t)]}}t.WedgeView=_,_.__name__=\"WedgeView\";class c extends r.XYGlyph{constructor(e){super(e)}static init_Wedge(){this.prototype.default_view=_,this.mixins([a.LineVector,a.FillVector]),this.define({direction:[d.Direction,\"anticlock\"],radius:[d.DistanceSpec],start_angle:[d.AngleSpec],end_angle:[d.AngleSpec]})}}t.Wedge=c,c.__name__=\"Wedge\",c.init_Wedge()},\n      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});const r=e(1);r.__exportStar(e(117),_),r.__exportStar(e(266),_),r.__exportStar(e(267),_)},\n      function _(e,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});const t=e(81);class n extends t.Model{constructor(e){super(e)}}r.LayoutProvider=n,n.__name__=\"LayoutProvider\"},\n      function _(t,a,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=t(1),o=t(266),n=t(24),s=r.__importStar(t(18));class u extends o.LayoutProvider{constructor(t){super(t)}static init_StaticLayoutProvider(){this.define({graph_layout:[s.Any,{}]})}get_node_coordinates(t){const a=t.data.index,e=a.length,r=new n.NumberArray(e),o=new n.NumberArray(e);for(let t=0;t<e;t++){const e=this.graph_layout[a[t]],[n,s]=null!=e?e:[NaN,NaN];r[t]=n,o[t]=s}return[r,o]}get_edge_coordinates(t){const a=t.data.start,e=t.data.end,r=a.length,o=[],n=[],s=null!=t.data.xs&&null!=t.data.ys;for(let u=0;u<r;u++){const r=null!=this.graph_layout[a[u]]&&null!=this.graph_layout[e[u]];if(s&&r)o.push(t.data.xs[u]),n.push(t.data.ys[u]);else{let t,s;r?(t=this.graph_layout[a[u]],s=this.graph_layout[e[u]]):(t=[NaN,NaN],s=[NaN,NaN]),o.push([t[0],s[0]]),n.push([t[1],s[1]])}}return[o,n]}}e.StaticLayoutProvider=u,u.__name__=\"StaticLayoutProvider\",u.init_StaticLayoutProvider()},\n      function _(e,r,d){Object.defineProperty(d,\"__esModule\",{value:!0});var i=e(269);d.Grid=i.Grid},\n      function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=i(1),n=i(178),r=s.__importStar(i(28)),o=s.__importStar(i(18)),d=i(8);class _ extends n.GuideRendererView{_render(){const i=this.layer.ctx;i.save(),this._draw_regions(i),this._draw_minor_grids(i),this._draw_grids(i),i.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.request_render())}_draw_regions(i){if(!this.visuals.band_fill.doit&&!this.visuals.band_hatch.doit)return;this.visuals.band_fill.set_value(i);const[e,t]=this.grid_coords(\"major\",!1);for(let s=0;s<e.length-1;s++){if(s%2!=1)continue;const[n,r]=this.coordinates.map_to_screen(e[s],t[s]),[o,d]=this.coordinates.map_to_screen(e[s+1],t[s+1]);this.visuals.band_fill.doit&&i.fillRect(n[0],r[0],o[1]-n[0],d[1]-r[0]),this.visuals.band_hatch.doit2(i,s,()=>{i.fillRect(n[0],r[0],o[1]-n[0],d[1]-r[0])},()=>this.request_render())}}_draw_grids(i){if(!this.visuals.grid_line.doit)return;const[e,t]=this.grid_coords(\"major\");this._draw_grid_helper(i,this.visuals.grid_line,e,t)}_draw_minor_grids(i){if(!this.visuals.minor_grid_line.doit)return;const[e,t]=this.grid_coords(\"minor\");this._draw_grid_helper(i,this.visuals.minor_grid_line,e,t)}_draw_grid_helper(i,e,t,s){e.set_value(i),i.beginPath();for(let e=0;e<t.length;e++){const[n,r]=this.coordinates.map_to_screen(t[e],s[e]);i.moveTo(Math.round(n[0]),Math.round(r[0]));for(let e=1;e<n.length;e++)i.lineTo(Math.round(n[e]),Math.round(r[e]))}i.stroke()}ranges(){const i=this.model.dimension,e=(i+1)%2,{ranges:t}=this.coordinates;return[t[i],t[e]]}computed_bounds(){const[i]=this.ranges(),e=this.model.bounds,t=[i.min,i.max];let s,n;if(d.isArray(e))s=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]),s<t[0]&&(s=t[0]),n>t[1]&&(n=t[1]);else{[s,n]=t;for(const i of this.plot_view.axis_views)i.dimension==this.model.dimension&&i.model.x_range_name==this.model.x_range_name&&i.model.y_range_name==this.model.y_range_name&&([s,n]=i.computed_bounds)}return[s,n]}grid_coords(i,e=!0){const t=this.model.dimension,s=(t+1)%2,[n,r]=this.ranges();let[o,d]=this.computed_bounds();[o,d]=[Math.min(o,d),Math.max(o,d)];const _=[[],[]],a=this.model.get_ticker();if(null==a)return _;const l=a.get_ticks(o,d,n,r.min,{})[i],h=n.min,c=n.max,u=r.min,m=r.max;e||(l[0]!=h&&l.splice(0,0,h),l[l.length-1]!=c&&l.push(c));for(let i=0;i<l.length;i++){if((l[i]==h||l[i]==c)&&e)continue;const n=[],r=[],o=2;for(let e=0;e<o;e++){const t=u+(m-u)/(o-1)*e;n.push(l[i]),r.push(t)}_[t].push(n),_[s].push(r)}return _}}t.GridView=_,_.__name__=\"GridView\";class a extends n.GuideRenderer{constructor(i){super(i)}static init_Grid(){this.prototype.default_view=_,this.mixins([[\"grid_\",r.Line],[\"minor_grid_\",r.Line],[\"band_\",r.Fill],[\"band_\",r.Hatch]]),this.define({bounds:[o.Any,\"auto\"],dimension:[o.Any,0],axis:[o.Instance],ticker:[o.Instance]}),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})}get_ticker(){return null!=this.ticker?this.ticker:null!=this.axis?this.axis.ticker:null}}t.Grid=a,a.__name__=\"Grid\",a.init_Grid()},\n      function _(a,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});var e=a(271);r.Box=e.Box;var v=a(274);r.Column=v.Column;var x=a(275);r.GridBox=x.GridBox;var B=a(276);r.HTMLBox=B.HTMLBox;var n=a(272);r.LayoutDOM=n.LayoutDOM;var t=a(277);r.Row=t.Row;var u=a(278);r.Spacer=u.Spacer;var d=a(279);r.Panel=d.Panel,r.Tabs=d.Tabs;var i=a(286);r.WidgetBox=i.WidgetBox},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(272),o=n.__importStar(e(18));class c extends s.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,()=>this.rebuild())}get child_models(){return this.model.children}}i.BoxView=c,c.__name__=\"BoxView\";class r extends s.LayoutDOM{constructor(e){super(e)}static init_Box(){this.define({children:[o.Array,[]],spacing:[o.Number,0]})}}i.Box=r,r.__name__=\"Box\",r.init_Box()},\n      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const s=i(81),o=i(20),l=i(72),n=i(19),h=i(8),a=i(115),r=i(78),_=i(212),d=i(273),c=i(77);class u extends r.DOMView{constructor(){super(...arguments),this._idle_notified=!1,this._offset_parent=null,this._viewport={}}initialize(){super.initialize(),this.el.style.position=this.is_root?\"relative\":\"absolute\",this._child_views=new Map}async lazy_initialize(){await this.build_child_views()}remove(){for(const i of this.child_views)i.remove();this._child_views.clear(),super.remove()}connect_signals(){super.connect_signals(),this.is_root&&(this._on_resize=()=>this.resize_layout(),window.addEventListener(\"resize\",this._on_resize),this._parent_observer=setInterval(()=>{const i=this.el.offsetParent;this._offset_parent!=i&&(this._offset_parent=i,null!=i&&(this.compute_viewport(),this.invalidate_layout()))},250));const i=this.model.properties;this.on_change([i.width,i.height,i.min_width,i.min_height,i.max_width,i.max_height,i.margin,i.width_policy,i.height_policy,i.sizing_mode,i.aspect_ratio,i.visible],()=>this.invalidate_layout()),this.on_change([i.background,i.css_classes],()=>this.invalidate_render())}disconnect_signals(){null!=this._parent_observer&&clearTimeout(this._parent_observer),null!=this._on_resize&&window.removeEventListener(\"resize\",this._on_resize),super.disconnect_signals()}css_classes(){return super.css_classes().concat(this.model.css_classes)}get child_views(){return this.child_models.map(i=>this._child_views.get(i))}async build_child_views(){await a.build_views(this._child_views,this.child_models,{parent:this})}render(){super.render(),l.empty(this.el);const{background:i}=this.model;this.el.style.backgroundColor=null!=i?i:\"\",l.classes(this.el).clear().add(...this.css_classes());for(const i of this.child_views)this.el.appendChild(i.el),i.render()}update_layout(){for(const i of this.child_views)i.update_layout();this._update_layout()}update_position(){this.el.style.display=this.model.visible?\"block\":\"none\";const i=this.is_root?this.layout.sizing.margin:void 0;l.position(this.el,this.layout.bbox,i);for(const i of this.child_views)i.update_position()}after_layout(){for(const i of this.child_views)i.after_layout();this._has_finished=!0}compute_viewport(){this._viewport=this._viewport_size()}renderTo(i){i.appendChild(this.el),this._offset_parent=this.el.offsetParent,this.compute_viewport(),this.build()}build(){return this.assert_root(),this.render(),this.update_layout(),this.compute_layout(),this}async rebuild(){await this.build_child_views(),this.invalidate_render()}compute_layout(){const i=Date.now();this.layout.compute(this._viewport),this.update_position(),this.after_layout(),n.logger.debug(`layout computed in ${Date.now()-i} ms`),this.notify_finished()}resize_layout(){this.root.compute_viewport(),this.root.compute_layout()}invalidate_layout(){this.root.update_layout(),this.root.compute_layout()}invalidate_render(){this.render(),this.invalidate_layout()}has_finished(){if(!super.has_finished())return!1;for(const i of this.child_views)if(!i.has_finished())return!1;return!0}notify_finished(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):this.root.notify_finished()}_width_policy(){return null!=this.model.width?\"fixed\":\"fit\"}_height_policy(){return null!=this.model.height?\"fixed\":\"fit\"}box_sizing(){let{width_policy:i,height_policy:t,aspect_ratio:e}=this.model;\"auto\"==i&&(i=this._width_policy()),\"auto\"==t&&(t=this._height_policy());const{sizing_mode:s}=this.model;if(null!=s)if(\"fixed\"==s)i=t=\"fixed\";else if(\"stretch_both\"==s)i=t=\"max\";else if(\"stretch_width\"==s)i=\"max\";else if(\"stretch_height\"==s)t=\"max\";else switch(null==e&&(e=\"auto\"),s){case\"scale_width\":i=\"max\",t=\"min\";break;case\"scale_height\":i=\"min\",t=\"max\";break;case\"scale_both\":i=\"max\",t=\"max\"}const o={width_policy:i,height_policy:t},{min_width:l,min_height:n}=this.model;null!=l&&(o.min_width=l),null!=n&&(o.min_height=n);const{width:a,height:r}=this.model;null!=a&&(o.width=a),null!=r&&(o.height=r);const{max_width:_,max_height:d}=this.model;null!=_&&(o.max_width=_),null!=d&&(o.max_height=d),\"auto\"==e&&null!=a&&null!=r?o.aspect=a/r:h.isNumber(e)&&(o.aspect=e);const{margin:c}=this.model;if(null!=c)if(h.isNumber(c))o.margin={top:c,right:c,bottom:c,left:c};else if(2==c.length){const[i,t]=c;o.margin={top:i,right:t,bottom:i,left:t}}else{const[i,t,e,s]=c;o.margin={top:i,right:t,bottom:e,left:s}}o.visible=this.model.visible;const{align:u}=this.model;return h.isArray(u)?[o.halign,o.valign]=u:o.halign=o.valign=u,o}_viewport_size(){return l.undisplayed(this.el,()=>{let i=this.el;for(;i=i.parentElement;){if(i.classList.contains(d.bk_root))continue;if(i==document.body){const{margin:{left:i,right:t,top:e,bottom:s}}=l.extents(document.body);return{width:Math.ceil(document.documentElement.clientWidth-i-t),height:Math.ceil(document.documentElement.clientHeight-e-s)}}const{padding:{left:t,right:e,top:s,bottom:o}}=l.extents(i),{width:n,height:h}=i.getBoundingClientRect(),a=Math.ceil(n-t-e),r=Math.ceil(h-s-o);if(a>0||r>0)return{width:a>0?a:void 0,height:r>0?r:void 0}}return{}})}export(i,t=!0){const e=\"png\"==i?\"canvas\":\"svg\",s=new c.CanvasLayer(e,t),{width:o,height:l}=this.layout.bbox;s.resize(o,l);for(const e of this.child_views){const o=e.export(i,t),{x:l,y:n}=e.layout.bbox;s.ctx.drawImage(o.canvas,l,n)}return s}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box,children:this.child_views.map(i=>i.serializable_state())})}}e.LayoutDOMView=u,u.__name__=\"LayoutDOMView\";class m extends s.Model{constructor(i){super(i)}static init_LayoutDOM(){this.define(i=>{const{Boolean:t,Number:e,String:s,Null:l,Auto:n,Color:h,Array:a,Tuple:r,Or:d}=i,c=r(e,e),u=r(e,e,e,e);return{width:[d(e,l),null],height:[d(e,l),null],min_width:[d(e,l),null],min_height:[d(e,l),null],max_width:[d(e,l),null],max_height:[d(e,l),null],margin:[d(e,c,u),[0,0,0,0]],width_policy:[d(_.SizingPolicy,n),\"auto\"],height_policy:[d(_.SizingPolicy,n),\"auto\"],aspect_ratio:[d(e,n,l),null],sizing_mode:[d(o.SizingMode,l),null],visible:[t,!0],disabled:[t,!1],align:[d(o.Align,r(o.Align,o.Align)),\"start\"],background:[d(h,l),null],css_classes:[a(s),[]]}})}}e.LayoutDOM=m,m.__name__=\"LayoutDOM\",m.init_LayoutDOM()},\n      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.bk_root=\"bk-root\"},\n      function _(t,o,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),e=t(271),n=t(216),l=s.__importStar(t(18));class u extends e.BoxView{_update_layout(){const t=this.child_views.map(t=>t.layout);this.layout=new n.Column(t),this.layout.rows=this.model.rows,this.layout.spacing=[this.model.spacing,0],this.layout.set_sizing(this.box_sizing())}}i.ColumnView=u,u.__name__=\"ColumnView\";class _ extends e.Box{constructor(t){super(t)}static init_Column(){this.prototype.default_view=u,this.define({rows:[l.Any,\"auto\"]})}}i.Column=_,_.__name__=\"Column\",_.init_Column()},\n      function _(t,i,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=t(1),e=t(272),n=t(216),l=o.__importStar(t(18));class r extends e.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,()=>this.rebuild())}get child_models(){return this.model.children.map(([t])=>t)}_update_layout(){this.layout=new n.Grid,this.layout.rows=this.model.rows,this.layout.cols=this.model.cols,this.layout.spacing=this.model.spacing;for(const[t,i,s,o,e]of this.model.children){const n=this._child_views.get(t);this.layout.items.push({layout:n.layout,row:i,col:s,row_span:o,col_span:e})}this.layout.set_sizing(this.box_sizing())}}s.GridBoxView=r,r.__name__=\"GridBoxView\";class a extends e.LayoutDOM{constructor(t){super(t)}static init_GridBox(){this.prototype.default_view=r,this.define({children:[l.Array,[]],rows:[l.Any,\"auto\"],cols:[l.Any,\"auto\"],spacing:[l.Any,0]})}}s.GridBox=a,a.__name__=\"GridBox\",a.init_GridBox()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(272),_=e(212);class n extends s.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new _.ContentBox(this.el),this.layout.set_sizing(this.box_sizing())}}o.HTMLBoxView=n,n.__name__=\"HTMLBoxView\";class i extends s.LayoutDOM{constructor(e){super(e)}}o.HTMLBox=i,i.__name__=\"HTMLBox\"},\n      function _(t,o,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),e=t(271),_=t(216),a=s.__importStar(t(18));class n extends e.BoxView{_update_layout(){const t=this.child_views.map(t=>t.layout);this.layout=new _.Row(t),this.layout.cols=this.model.cols,this.layout.spacing=[0,this.model.spacing],this.layout.set_sizing(this.box_sizing())}}i.RowView=n,n.__name__=\"RowView\";class l extends e.Box{constructor(t){super(t)}static init_Row(){this.prototype.default_view=n,this.define({cols:[a.Any,\"auto\"]})}}i.Row=l,l.__name__=\"Row\",l.init_Row()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(272),s=e(212);class _ extends i.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new s.LayoutItem,this.layout.set_sizing(this.box_sizing())}}a.SpacerView=_,_.__name__=\"SpacerView\";class o extends i.LayoutDOM{constructor(e){super(e)}static init_Spacer(){this.prototype.default_view=_}}a.Spacer=o,o.__name__=\"Spacer\",o.init_Spacer()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),a=e(212),l=e(72),h=e(9),o=i.__importStar(e(18)),c=e(272),d=e(81),r=e(173),n=e(280),_=e(281),b=e(282),p=i.__importDefault(e(283)),u=i.__importDefault(e(284)),m=i.__importDefault(e(285));class v extends c.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.tabs.change,()=>this.rebuild()),this.connect(this.model.properties.active.change,()=>this.on_active_change())}styles(){return[...super.styles(),p.default,u.default,m.default]}get child_models(){return this.model.tabs.map(e=>e.child)}_update_layout(){const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,{scroll_el:s,headers_el:i}=this;this.header=new class extends a.ContentBox{_measure(e){const a=l.size(s),o=l.children(i).slice(0,3).map(e=>l.size(e)),{width:c,height:d}=super._measure(e);if(t){const t=a.width+h.sum(o.map(e=>e.width));return{width:e.width!=1/0?e.width:t,height:d}}{const t=a.height+h.sum(o.map(e=>e.height));return{width:c,height:e.height!=1/0?e.height:t}}}}(this.header_el),t?this.header.set_sizing({width_policy:\"fit\",height_policy:\"fixed\"}):this.header.set_sizing({width_policy:\"fixed\",height_policy:\"fit\"});let o=1,c=1;switch(e){case\"above\":o-=1;break;case\"below\":o+=1;break;case\"left\":c-=1;break;case\"right\":c+=1}const d={layout:this.header,row:o,col:c},r=this.child_views.map(e=>({layout:e.layout,row:1,col:1}));this.layout=new a.Grid([d,...r]),this.layout.set_sizing(this.box_sizing())}update_position(){super.update_position(),this.header_el.style.position=\"absolute\",l.position(this.header_el,this.header.bbox);const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,s=l.size(this.scroll_el),i=l.scroll_size(this.headers_el);if(t){const{width:e}=this.header.bbox;i.width>e?(this.wrapper_el.style.maxWidth=e-s.width+\"px\",l.display(this.scroll_el)):(this.wrapper_el.style.maxWidth=\"\",l.undisplay(this.scroll_el))}else{const{height:e}=this.header.bbox;i.height>e?(this.wrapper_el.style.maxHeight=e-s.height+\"px\",l.display(this.scroll_el)):(this.wrapper_el.style.maxHeight=\"\",l.undisplay(this.scroll_el))}const{child_views:a}=this;for(const e of a)l.hide(e.el);const h=a[this.model.active];null!=h&&l.show(h.el)}render(){super.render();const{active:e}=this.model,t=this.model.tabs_location,s=\"above\"==t||\"below\"==t,i=this.model.tabs.map((t,s)=>{const i=l.div({class:[n.bk_tab,s==e?r.bk_active:null]},t.title);if(i.addEventListener(\"click\",e=>{e.target==e.currentTarget&&this.change_active(s)}),t.closable){const e=l.div({class:n.bk_close});e.addEventListener(\"click\",e=>{if(e.target==e.currentTarget){this.model.tabs=h.remove_at(this.model.tabs,s);const e=this.model.tabs.length;this.model.active>e-1&&(this.model.active=e-1)}}),i.appendChild(e)}return i});this.headers_el=l.div({class:[n.bk_headers]},i),this.wrapper_el=l.div({class:n.bk_headers_wrapper},this.headers_el);const a=l.div({class:[_.bk_btn,_.bk_btn_default],disabled:\"\"},l.div({class:[b.bk_caret,r.bk_left]})),o=l.div({class:[_.bk_btn,_.bk_btn_default]},l.div({class:[b.bk_caret,r.bk_right]}));let c=0;const d=e=>()=>{const t=this.model.tabs.length;c=\"left\"==e?Math.max(c-1,0):Math.min(c+1,t-1),0==c?a.setAttribute(\"disabled\",\"\"):a.removeAttribute(\"disabled\"),c==t-1?o.setAttribute(\"disabled\",\"\"):o.removeAttribute(\"disabled\");const i=l.children(this.headers_el).slice(0,c).map(e=>e.getBoundingClientRect());if(s){const e=-h.sum(i.map(e=>e.width));this.headers_el.style.left=e+\"px\"}else{const e=-h.sum(i.map(e=>e.height));this.headers_el.style.top=e+\"px\"}};a.addEventListener(\"click\",d(\"left\")),o.addEventListener(\"click\",d(\"right\")),this.scroll_el=l.div({class:_.bk_btn_group},a,o),this.header_el=l.div({class:[n.bk_tabs_header,r.bk_side(t)]},this.scroll_el,this.wrapper_el),this.el.appendChild(this.header_el)}change_active(e){e!=this.model.active&&(this.model.active=e)}on_active_change(){const e=this.model.active,t=l.children(this.headers_el);for(const e of t)e.classList.remove(r.bk_active);t[e].classList.add(r.bk_active);const{child_views:s}=this;for(const e of s)l.hide(e.el);l.show(s[e].el)}}s.TabsView=v,v.__name__=\"TabsView\";class g extends c.LayoutDOM{constructor(e){super(e)}static init_Tabs(){this.prototype.default_view=v,this.define({tabs:[o.Array,[]],tabs_location:[o.Location,\"above\"],active:[o.Number,0]})}}s.Tabs=g,g.__name__=\"Tabs\",g.init_Tabs();class w extends d.Model{constructor(e){super(e)}static init_Panel(){this.define({title:[o.String,\"\"],child:[o.Instance],closable:[o.Boolean,!1]})}}s.Panel=w,w.__name__=\"Panel\",w.init_Panel()},\n      function _(e,b,a){Object.defineProperty(a,\"__esModule\",{value:!0}),a.bk_tabs_header=\"bk-tabs-header\",a.bk_headers_wrapper=\"bk-headers-wrapper\",a.bk_headers=\"bk-headers\",a.bk_tab=\"bk-tab\",a.bk_close=\"bk-close\"},\n      function _(n,b,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.bk_btn=\"bk-btn\",t.bk_btn_group=\"bk-btn-group\",t.bk_btn_default=\"bk-btn-default\",t.bk_btn_primary=\"bk-btn-primary\",t.bk_btn_success=\"bk-btn-success\",t.bk_btn_warning=\"bk-btn-warning\",t.bk_btn_danger=\"bk-btn-danger\",t.bk_btn_type=function(n){switch(n){case\"default\":return t.bk_btn_default;case\"primary\":return t.bk_btn_primary;case\"success\":return t.bk_btn_success;case\"warning\":return t.bk_btn_warning;case\"danger\":return t.bk_btn_danger}},t.bk_dropdown_toggle=\"bk-dropdown-toggle\"},\n      function _(e,b,d){Object.defineProperty(d,\"__esModule\",{value:!0}),d.bk_menu=\"bk-menu\",d.bk_caret=\"bk-caret\",d.bk_divider=\"bk-divider\"},\n      function _(n,o,b){Object.defineProperty(b,\"__esModule\",{value:!0});b.default=\"\\n.bk-root .bk-btn {\\n  height: 100%;\\n  display: inline-block;\\n  text-align: center;\\n  vertical-align: middle;\\n  white-space: nowrap;\\n  cursor: pointer;\\n  padding: 6px 12px;\\n  font-size: 12px;\\n  border: 1px solid transparent;\\n  border-radius: 4px;\\n  outline: 0;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n}\\n.bk-root .bk-btn:hover,\\n.bk-root .bk-btn:focus {\\n  text-decoration: none;\\n}\\n.bk-root .bk-btn:active,\\n.bk-root .bk-btn.bk-active {\\n  background-image: none;\\n  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n}\\n.bk-root .bk-btn[disabled] {\\n  cursor: not-allowed;\\n  pointer-events: none;\\n  opacity: 0.65;\\n  box-shadow: none;\\n}\\n.bk-root .bk-btn-default {\\n  color: #333;\\n  background-color: #fff;\\n  border-color: #ccc;\\n}\\n.bk-root .bk-btn-default:hover {\\n  background-color: #f5f5f5;\\n  border-color: #b8b8b8;\\n}\\n.bk-root .bk-btn-default.bk-active {\\n  background-color: #ebebeb;\\n  border-color: #adadad;\\n}\\n.bk-root .bk-btn-default[disabled],\\n.bk-root .bk-btn-default[disabled]:hover,\\n.bk-root .bk-btn-default[disabled]:focus,\\n.bk-root .bk-btn-default[disabled]:active,\\n.bk-root .bk-btn-default[disabled].bk-active {\\n  background-color: #e6e6e6;\\n  border-color: #ccc;\\n}\\n.bk-root .bk-btn-primary {\\n  color: #fff;\\n  background-color: #428bca;\\n  border-color: #357ebd;\\n}\\n.bk-root .bk-btn-primary:hover {\\n  background-color: #3681c1;\\n  border-color: #2c699e;\\n}\\n.bk-root .bk-btn-primary.bk-active {\\n  background-color: #3276b1;\\n  border-color: #285e8e;\\n}\\n.bk-root .bk-btn-primary[disabled],\\n.bk-root .bk-btn-primary[disabled]:hover,\\n.bk-root .bk-btn-primary[disabled]:focus,\\n.bk-root .bk-btn-primary[disabled]:active,\\n.bk-root .bk-btn-primary[disabled].bk-active {\\n  background-color: #506f89;\\n  border-color: #357ebd;\\n}\\n.bk-root .bk-btn-success {\\n  color: #fff;\\n  background-color: #5cb85c;\\n  border-color: #4cae4c;\\n}\\n.bk-root .bk-btn-success:hover {\\n  background-color: #4eb24e;\\n  border-color: #409240;\\n}\\n.bk-root .bk-btn-success.bk-active {\\n  background-color: #47a447;\\n  border-color: #398439;\\n}\\n.bk-root .bk-btn-success[disabled],\\n.bk-root .bk-btn-success[disabled]:hover,\\n.bk-root .bk-btn-success[disabled]:focus,\\n.bk-root .bk-btn-success[disabled]:active,\\n.bk-root .bk-btn-success[disabled].bk-active {\\n  background-color: #667b66;\\n  border-color: #4cae4c;\\n}\\n.bk-root .bk-btn-warning {\\n  color: #fff;\\n  background-color: #f0ad4e;\\n  border-color: #eea236;\\n}\\n.bk-root .bk-btn-warning:hover {\\n  background-color: #eea43b;\\n  border-color: #e89014;\\n}\\n.bk-root .bk-btn-warning.bk-active {\\n  background-color: #ed9c28;\\n  border-color: #d58512;\\n}\\n.bk-root .bk-btn-warning[disabled],\\n.bk-root .bk-btn-warning[disabled]:hover,\\n.bk-root .bk-btn-warning[disabled]:focus,\\n.bk-root .bk-btn-warning[disabled]:active,\\n.bk-root .bk-btn-warning[disabled].bk-active {\\n  background-color: #c89143;\\n  border-color: #eea236;\\n}\\n.bk-root .bk-btn-danger {\\n  color: #fff;\\n  background-color: #d9534f;\\n  border-color: #d43f3a;\\n}\\n.bk-root .bk-btn-danger:hover {\\n  background-color: #d5433e;\\n  border-color: #bd2d29;\\n}\\n.bk-root .bk-btn-danger.bk-active {\\n  background-color: #d2322d;\\n  border-color: #ac2925;\\n}\\n.bk-root .bk-btn-danger[disabled],\\n.bk-root .bk-btn-danger[disabled]:hover,\\n.bk-root .bk-btn-danger[disabled]:focus,\\n.bk-root .bk-btn-danger[disabled]:active,\\n.bk-root .bk-btn-danger[disabled].bk-active {\\n  background-color: #a55350;\\n  border-color: #d43f3a;\\n}\\n.bk-root .bk-btn-group {\\n  height: 100%;\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-btn-group > .bk-btn {\\n  flex-grow: 1;\\n  -webkit-flex-grow: 1;\\n}\\n.bk-root .bk-btn-group > .bk-btn + .bk-btn {\\n  margin-left: -1px;\\n}\\n.bk-root .bk-btn-group > .bk-btn:first-child:not(:last-child) {\\n  border-bottom-right-radius: 0;\\n  border-top-right-radius: 0;\\n}\\n.bk-root .bk-btn-group > .bk-btn:not(:first-child):last-child {\\n  border-bottom-left-radius: 0;\\n  border-top-left-radius: 0;\\n}\\n.bk-root .bk-btn-group > .bk-btn:not(:first-child):not(:last-child) {\\n  border-radius: 0;\\n}\\n.bk-root .bk-btn-group .bk-dropdown-toggle {\\n  flex: 0 0 0;\\n  -webkit-flex: 0 0 0;\\n  padding: 6px 6px;\\n}\\n\"},\n      function _(n,o,r){Object.defineProperty(r,\"__esModule\",{value:!0});r.default=\"\\n.bk-root .bk-menu-icon {\\n  width: 28px;\\n  height: 28px;\\n  background-size: 60%;\\n  background-color: transparent;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n}\\n.bk-root .bk-context-menu {\\n  position: absolute;\\n  display: inline-flex;\\n  display: -webkit-inline-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n  width: auto;\\n  height: auto;\\n  z-index: 100;\\n  cursor: pointer;\\n  font-size: 12px;\\n  background-color: #fff;\\n  border: 1px solid #ccc;\\n  border-radius: 4px;\\n  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\\n}\\n.bk-root .bk-context-menu.bk-horizontal {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-context-menu.bk-vertical {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-context-menu > .bk-divider {\\n  cursor: default;\\n  overflow: hidden;\\n  background-color: #e5e5e5;\\n}\\n.bk-root .bk-context-menu.bk-horizontal > .bk-divider {\\n  width: 1px;\\n  margin: 5px 0;\\n}\\n.bk-root .bk-context-menu.bk-vertical > .bk-divider {\\n  height: 1px;\\n  margin: 0 5px;\\n}\\n.bk-root .bk-context-menu > :not(.bk-divider) {\\n  border: 1px solid transparent;\\n}\\n.bk-root .bk-context-menu > :not(.bk-divider).bk-active {\\n  border-color: #26aae1;\\n}\\n.bk-root .bk-context-menu > :not(.bk-divider):hover {\\n  background-color: #f9f9f9;\\n}\\n.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):first-child {\\n  border-top-left-radius: 4px;\\n  border-bottom-left-radius: 4px;\\n}\\n.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):last-child {\\n  border-top-right-radius: 4px;\\n  border-bottom-right-radius: 4px;\\n}\\n.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):first-child {\\n  border-top-left-radius: 4px;\\n  border-top-right-radius: 4px;\\n}\\n.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):last-child {\\n  border-bottom-left-radius: 4px;\\n  border-bottom-right-radius: 4px;\\n}\\n.bk-root .bk-menu {\\n  position: absolute;\\n  left: 0;\\n  width: 100%;\\n  z-index: 100;\\n  cursor: pointer;\\n  font-size: 12px;\\n  background-color: #fff;\\n  border: 1px solid #ccc;\\n  border-radius: 4px;\\n  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\\n}\\n.bk-root .bk-menu.bk-above {\\n  bottom: 100%;\\n}\\n.bk-root .bk-menu.bk-below {\\n  top: 100%;\\n}\\n.bk-root .bk-menu > .bk-divider {\\n  height: 1px;\\n  margin: 7.5px 0;\\n  overflow: hidden;\\n  background-color: #e5e5e5;\\n}\\n.bk-root .bk-menu > :not(.bk-divider) {\\n  padding: 6px 12px;\\n}\\n.bk-root .bk-menu > :not(.bk-divider):hover,\\n.bk-root .bk-menu > :not(.bk-divider).bk-active {\\n  background-color: #e6e6e6;\\n}\\n.bk-root .bk-caret {\\n  display: inline-block;\\n  vertical-align: middle;\\n  width: 0;\\n  height: 0;\\n  margin: 0 5px;\\n}\\n.bk-root .bk-caret.bk-down {\\n  border-top: 4px solid;\\n}\\n.bk-root .bk-caret.bk-up {\\n  border-bottom: 4px solid;\\n}\\n.bk-root .bk-caret.bk-down,\\n.bk-root .bk-caret.bk-up {\\n  border-right: 4px solid transparent;\\n  border-left: 4px solid transparent;\\n}\\n.bk-root .bk-caret.bk-left {\\n  border-right: 4px solid;\\n}\\n.bk-root .bk-caret.bk-right {\\n  border-left: 4px solid;\\n}\\n.bk-root .bk-caret.bk-left,\\n.bk-root .bk-caret.bk-right {\\n  border-top: 4px solid transparent;\\n  border-bottom: 4px solid transparent;\\n}\\n\"},\n      function _(e,r,n){Object.defineProperty(n,\"__esModule\",{value:!0});n.default='\\n.bk-root .bk-tabs-header {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n  overflow: hidden;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n}\\n.bk-root .bk-tabs-header .bk-btn-group {\\n  height: auto;\\n  margin-right: 5px;\\n}\\n.bk-root .bk-tabs-header .bk-btn-group > .bk-btn {\\n  flex-grow: 0;\\n  -webkit-flex-grow: 0;\\n  height: auto;\\n  padding: 4px 4px;\\n}\\n.bk-root .bk-tabs-header .bk-headers-wrapper {\\n  flex-grow: 1;\\n  -webkit-flex-grow: 1;\\n  overflow: hidden;\\n  color: #666666;\\n}\\n.bk-root .bk-tabs-header.bk-above .bk-headers-wrapper {\\n  border-bottom: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-right .bk-headers-wrapper {\\n  border-left: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-below .bk-headers-wrapper {\\n  border-top: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-left .bk-headers-wrapper {\\n  border-right: 1px solid #e6e6e6;\\n}\\n.bk-root .bk-tabs-header.bk-above,\\n.bk-root .bk-tabs-header.bk-below {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-tabs-header.bk-above .bk-headers,\\n.bk-root .bk-tabs-header.bk-below .bk-headers {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-tabs-header.bk-left,\\n.bk-root .bk-tabs-header.bk-right {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-tabs-header.bk-left .bk-headers,\\n.bk-root .bk-tabs-header.bk-right .bk-headers {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-tabs-header .bk-headers {\\n  position: relative;\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n}\\n.bk-root .bk-tabs-header .bk-tab {\\n  padding: 4px 8px;\\n  border: solid transparent;\\n  white-space: nowrap;\\n  cursor: pointer;\\n}\\n.bk-root .bk-tabs-header .bk-tab:hover {\\n  background-color: #f2f2f2;\\n}\\n.bk-root .bk-tabs-header .bk-tab.bk-active {\\n  color: #4d4d4d;\\n  background-color: white;\\n  border-color: #e6e6e6;\\n}\\n.bk-root .bk-tabs-header .bk-tab .bk-close {\\n  margin-left: 10px;\\n}\\n.bk-root .bk-tabs-header.bk-above .bk-tab {\\n  border-width: 3px 1px 0px 1px;\\n  border-radius: 4px 4px 0 0;\\n}\\n.bk-root .bk-tabs-header.bk-right .bk-tab {\\n  border-width: 1px 3px 1px 0px;\\n  border-radius: 0 4px 4px 0;\\n}\\n.bk-root .bk-tabs-header.bk-below .bk-tab {\\n  border-width: 0px 1px 3px 1px;\\n  border-radius: 0 0 4px 4px;\\n}\\n.bk-root .bk-tabs-header.bk-left .bk-tab {\\n  border-width: 1px 0px 1px 3px;\\n  border-radius: 4px 0 0 4px;\\n}\\n.bk-root .bk-close {\\n  display: inline-block;\\n  width: 10px;\\n  height: 10px;\\n  vertical-align: middle;\\n  background-image: url(\\'data:image/svg+xml;utf8,      <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">        <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"gray\" stroke-width=\"2\"/>        <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"gray\" stroke-width=\"2\"/>      </svg>\\');\\n}\\n.bk-root .bk-close:hover {\\n  background-image: url(\\'data:image/svg+xml;utf8,      <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">        <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"red\" stroke-width=\"2\"/>        <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"red\" stroke-width=\"2\"/>      </svg>\\');\\n}\\n'},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=e(274);class _ extends o.ColumnView{}i.WidgetBoxView=_,_.__name__=\"WidgetBoxView\";class n extends o.Column{constructor(e){super(e)}static init_WidgetBox(){this.prototype.default_view=_}}i.WidgetBox=n,n.__name__=\"WidgetBox\",n.init_WidgetBox()},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});e(1).__exportStar(e(288),t);var a=e(289);t.Marker=a.Marker;var _=e(290);t.Scatter=_.Scatter},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=e(1),r=e(289),n=i.__importStar(e(238)),s=Math.sqrt(3);function c(e,t){e.rotate(Math.PI/4),a(e,t),e.rotate(-Math.PI/4)}function l(e,t){const o=t*s,i=o/3;e.moveTo(-o/2,-i),e.lineTo(0,0),e.lineTo(o/2,-i),e.lineTo(0,0),e.lineTo(0,t)}function a(e,t){e.moveTo(0,t),e.lineTo(0,-t),e.moveTo(-t,0),e.lineTo(t,0)}function u(e,t){e.moveTo(0,t),e.lineTo(t/1.5,0),e.lineTo(0,-t),e.lineTo(-t/1.5,0),e.closePath()}function d(e,t){const o=t*s,i=o/3;e.moveTo(-t,i),e.lineTo(t,i),e.lineTo(0,i-o),e.closePath()}function v(e,t,o,i,r){a(e,o),c(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function _(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function f(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),a(e,o),e.stroke())}function T(e,t,o,i,r){_(e,t,o,i,r),P(e,t,o,i,r)}function z(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),l(e,o),e.stroke())}function C(e,t,o,i,r){e.arc(0,0,o,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),c(e,o),e.stroke())}function k(e,t,o,i,r){a(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function m(e,t,o,i,r){u(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function h(e,t,o,i,r){u(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.moveTo(0,o),e.lineTo(0,-o),e.moveTo(-o/1.5,0),e.lineTo(o/1.5,0),e.stroke())}function q(e,t,o,i,r){m(e,t,o,i,r),P(e,t,o,i,r)}function P(e,t,o,i,r){!function(e,t){e.beginPath(),e.arc(0,0,t/4,0,2*Math.PI,!1),e.closePath()}(e,o),i.set_vectorize(e,t),e.fillStyle=e.strokeStyle,e.fill()}function D(e,t,o,i,r){!function(e,t){const o=t/2,i=s*o;e.moveTo(t,0),e.lineTo(o,-i),e.lineTo(-o,-i),e.lineTo(-t,0),e.lineTo(-o,i),e.lineTo(o,i),e.closePath()}(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function g(e,t,o,i,r){D(e,t,o,i,r),P(e,t,o,i)}function S(e,t,o,i,r){e.rotate(Math.PI),d(e,o),e.rotate(-Math.PI),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function G(e,t,o,i,r){const n=3*o/8,s=[n,n,o,o,n,n,-n,-n,-o,-o,-n,-n],c=[o,n,n,-n,-n,-o,-o,-n,-n,n,n,o];for(e.moveTo(s[0],c[0]),t=1;t<12;t++)e.lineTo(s[t],c[t]);e.closePath(),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function L(e,t,o,i,r){const n=2*o;e.rect(-o,-o,n,n),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function M(e,t,o,i,r){const n=3*o/8;e.moveTo(-o,-o),e.quadraticCurveTo(0,-n,o,-o),e.quadraticCurveTo(n,0,o,o),e.quadraticCurveTo(0,n,-o,o),e.quadraticCurveTo(-n,0,-o,-o),e.closePath(),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function p(e,t,o,i,r){const n=2*o;e.rect(-o,-o,n,n),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),a(e,o),e.stroke())}function x(e,t,o,i,r){L(e,t,o,i,r),P(e,t,o,i)}function I(e,t,o,i,r){const n=2*o;e.rect(-o,-o,n,n),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.moveTo(-o,o),e.lineTo(o,-o),e.moveTo(-o,-o),e.lineTo(o,o),e.stroke())}function y(e,t,o,i,r){d(e,o),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function X(e,t,o,i,r){y(e,t,o,i,r),P(e,t,o,i)}function H(e,t,o,i,r){const n=o*s,c=n/3,l=3*c/8;e.moveTo(-o,c),e.quadraticCurveTo(0,l,o,c),e.quadraticCurveTo(s*l/2,l/2,0,c-n),e.quadraticCurveTo(-s*l/2,l/2,-o,c),e.closePath(),r.doit&&(r.set_vectorize(e,t),e.fill()),i.doit&&(i.set_vectorize(e,t),e.stroke())}function Y(e,t,o,i,r){!function(e,t){e.moveTo(-t,0),e.lineTo(t,0)}(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function A(e,t,o,i,r){c(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function b(e,t,o,i,r){l(e,o),i.doit&&(i.set_vectorize(e,t),e.stroke())}function w(e,t,o){var i;const n=class extends r.MarkerView{static initClass(){this.prototype._render_one=t,this.prototype.glglyph_cls=o}};n.initClass();const s=((i=class extends r.Marker{static initClass(){this.prototype.default_view=n}}).__name__=e,i);return s.initClass(),s}o.Asterisk=w(\"Asterisk\",v,n.AsteriskGL),o.CircleCross=w(\"CircleCross\",f,n.CircleCrossGL),o.CircleDot=w(\"CircleDot\",T),o.CircleY=w(\"CircleY\",z),o.CircleX=w(\"CircleX\",C,n.CircleXGL),o.Cross=w(\"Cross\",k,n.CrossGL),o.Dash=w(\"Dash\",Y),o.Diamond=w(\"Diamond\",m,n.DiamondGL),o.DiamondCross=w(\"DiamondCross\",h,n.DiamondCrossGL),o.DiamondDot=w(\"DiamondDot\",q),o.Dot=w(\"Dot\",P),o.Hex=w(\"Hex\",D,n.HexGL),o.HexDot=w(\"HexDot\",g),o.InvertedTriangle=w(\"InvertedTriangle\",S,n.InvertedTriangleGL),o.Plus=w(\"Plus\",G),o.Square=w(\"Square\",L,n.SquareGL),o.SquareCross=w(\"SquareCross\",p,n.SquareCrossGL),o.SquareDot=w(\"SquareDot\",x),o.SquarePin=w(\"SquarePin\",M),o.SquareX=w(\"SquareX\",I,n.SquareXGL),o.Triangle=w(\"Triangle\",y,n.TriangleGL),o.TriangleDot=w(\"TriangleDot\",X),o.TrianglePin=w(\"TrianglePin\",H),o.X=w(\"X\",A,n.XGL),o.Y=w(\"Y\",b),o.marker_funcs={asterisk:v,circle:_,circle_cross:f,circle_dot:T,circle_y:z,circle_x:C,cross:k,diamond:m,diamond_dot:q,diamond_cross:h,dot:P,hex:D,hex_dot:g,inverted_triangle:S,plus:G,square:L,square_cross:p,square_dot:x,square_pin:M,square_x:I,triangle:y,triangle_dot:X,triangle_pin:H,dash:Y,x:A,y:b}},\n      function _(e,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const t=e(1),n=e(93),r=e(28),a=t.__importStar(e(101)),_=t.__importStar(e(18)),h=e(9),l=e(88);class c extends n.XYGlyphView{initialize(){super.initialize();const{webgl:e}=this.renderer.plot_view.canvas_view;null!=e&&null!=this.glglyph_cls&&(this.glglyph=new this.glglyph_cls(e.gl,this))}_render(e,s,{sx:i,sy:t,_size:n,_angle:r}){for(const a of s){if(isNaN(i[a]+t[a]+n[a]+r[a]))continue;const s=n[a]/2;e.beginPath(),e.translate(i[a],t[a]),r[a]&&e.rotate(r[a]),this._render_one(e,a,s,this.visuals.line,this.visuals.fill),r[a]&&e.rotate(-r[a]),e.translate(-i[a],-t[a])}}_mask_data(){const e=this.renderer.plot_view.frame.bbox.h_range,s=e.start-this.max_size,i=e.end+this.max_size,[t,n]=this.renderer.xscale.r_invert(s,i),r=this.renderer.plot_view.frame.bbox.v_range,a=r.start-this.max_size,_=r.end+this.max_size,[h,l]=this.renderer.yscale.r_invert(a,_);return this.index.indices({x0:t,x1:n,y0:h,y1:l})}_hit_point(e){const{sx:s,sy:i}=e,t=s-this.max_size,n=s+this.max_size,[r,a]=this.renderer.xscale.r_invert(t,n),_=i-this.max_size,h=i+this.max_size,[c,o]=this.renderer.yscale.r_invert(_,h),x=this.index.indices({x0:r,x1:a,y0:c,y1:o}),d=[];for(const e of x){const t=this._size[e]/2;Math.abs(this.sx[e]-s)<=t&&Math.abs(this.sy[e]-i)<=t&&d.push(e)}return new l.Selection({indices:d})}_hit_span(e){const{sx:s,sy:i}=e,t=this.bounds(),n=this.max_size/2;let r,a,_,h;if(\"h\"==e.direction){_=t.y0,h=t.y1;const e=s-n,i=s+n;[r,a]=this.renderer.xscale.r_invert(e,i)}else{r=t.x0,a=t.x1;const e=i-n,s=i+n;[_,h]=this.renderer.yscale.r_invert(e,s)}const c=[...this.index.indices({x0:r,x1:a,y0:_,y1:h})];return new l.Selection({indices:c})}_hit_rect(e){const{sx0:s,sx1:i,sy0:t,sy1:n}=e,[r,a]=this.renderer.xscale.r_invert(s,i),[_,h]=this.renderer.yscale.r_invert(t,n),c=[...this.index.indices({x0:r,x1:a,y0:_,y1:h})];return new l.Selection({indices:c})}_hit_poly(e){const{sx:s,sy:i}=e,t=h.range(0,this.sx.length),n=[];for(let e=0,r=t.length;e<r;e++){const r=t[e];a.point_in_poly(this.sx[e],this.sy[e],s,i)&&n.push(r)}return new l.Selection({indices:n})}_get_legend_args({x0:e,x1:s,y0:i,y1:t},n){const r=n+1,a=new Array(r);a[n]=(e+s)/2;const _=new Array(r);_[n]=(i+t)/2;const h=new Array(r);h[n]=.4*Math.min(Math.abs(s-e),Math.abs(t-i));const l=new Array(r);return l[n]=0,{sx:a,sy:_,_size:h,_angle:l}}draw_legend_for_index(e,{x0:s,x1:i,y0:t,y1:n},r){const a=this._get_legend_args({x0:s,x1:i,y0:t,y1:n},r);this._render(e,[r],a)}}i.MarkerView=c,c.__name__=\"MarkerView\";class o extends n.XYGlyph{constructor(e){super(e)}static init_Marker(){this.mixins([r.LineVector,r.FillVector]),this.define({size:[_.DistanceSpec,{units:\"screen\",value:4}],angle:[_.AngleSpec,0]})}}i.Marker=o,o.__name__=\"Marker\",o.init_Marker()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=e(1),s=e(289),i=e(288),n=a.__importStar(e(18));class _ extends s.MarkerView{_render(e,t,{sx:r,sy:a,_size:s,_angle:n,_marker:_}){for(const c of t){if(isNaN(r[c]+a[c]+s[c]+n[c])||null==_[c])continue;const t=s[c]/2;e.beginPath(),e.translate(r[c],a[c]),n[c]&&e.rotate(n[c]),i.marker_funcs[_[c]](e,c,t,this.visuals.line,this.visuals.fill),n[c]&&e.rotate(-n[c]),e.translate(-r[c],-a[c])}}draw_legend_for_index(e,{x0:t,x1:r,y0:a,y1:s},i){const n=this._get_legend_args({x0:t,x1:r,y0:a,y1:s},i),_=new Array(i+1);_[i]=this._marker[i],n._marker=_,this._render(e,[i],n)}}r.ScatterView=_,_.__name__=\"ScatterView\";class c extends s.Marker{constructor(e){super(e)}static init_Scatter(){this.prototype.default_view=_,this.define({marker:[n.MarkerSpec,{value:\"circle\"}]})}}r.Scatter=c,c.__name__=\"Scatter\",c.init_Scatter()},\n      function _(a,o,p){Object.defineProperty(p,\"__esModule\",{value:!0});var t=a(292);p.MapOptions=t.MapOptions;var e=a(292);p.GMapOptions=e.GMapOptions;var n=a(292);p.GMapPlot=n.GMapPlot;var M=a(293);p.Plot=M.Plot},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=t(1),n=t(19),a=t(293),s=o.__importStar(t(18)),p=t(81),r=t(158),_=t(319);i.GMapPlotView=_.GMapPlotView;class l extends p.Model{constructor(t){super(t)}static init_MapOptions(){this.define({lat:[s.Number],lng:[s.Number],zoom:[s.Number,12]})}}i.MapOptions=l,l.__name__=\"MapOptions\",l.init_MapOptions();class c extends l{constructor(t){super(t)}static init_GMapOptions(){this.define({map_type:[s.String,\"roadmap\"],scale_control:[s.Boolean,!1],styles:[s.String],tilt:[s.Int,45]})}}i.GMapOptions=c,c.__name__=\"GMapOptions\",c.init_GMapOptions();class u extends a.Plot{constructor(t){super(t)}static init_GMapPlot(){this.prototype.default_view=_.GMapPlotView,this.define({map_options:[s.Instance],api_key:[s.String]}),this.override({x_range:()=>new r.Range1d,y_range:()=>new r.Range1d})}initialize(){super.initialize(),this.use_map=!0,this.api_key||n.logger.error(\"api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.\")}}i.GMapPlot=u,u.__name__=\"GMapPlot\",u.init_GMapPlot()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1),o=i.__importStar(e(28)),n=i.__importStar(e(18)),s=e(15),a=e(9),l=e(13),_=e(8),h=e(272),c=e(169),u=e(145),d=e(294),b=e(85),g=e(90),p=e(210),m=e(312);r.PlotView=m.PlotView;class f extends h.LayoutDOM{constructor(e){super(e)}static init_Plot(){this.prototype.default_view=m.PlotView,this.mixins([[\"outline_\",o.Line],[\"background_\",o.Fill],[\"border_\",o.Fill]]),this.define({toolbar:[n.Instance,()=>new d.Toolbar],toolbar_location:[n.Location,\"right\"],toolbar_sticky:[n.Boolean,!0],plot_width:[n.Number,600],plot_height:[n.Number,600],frame_width:[n.Number,null],frame_height:[n.Number,null],title:[n.Any,()=>new c.Title({text:\"\"})],title_location:[n.Location,\"above\"],above:[n.Array,[]],below:[n.Array,[]],left:[n.Array,[]],right:[n.Array,[]],center:[n.Array,[]],renderers:[n.Array,[]],x_range:[n.Instance,()=>new p.DataRange1d],extra_x_ranges:[n.Any,{}],y_range:[n.Instance,()=>new p.DataRange1d],extra_y_ranges:[n.Any,{}],x_scale:[n.Instance,()=>new u.LinearScale],y_scale:[n.Instance,()=>new u.LinearScale],lod_factor:[n.Number,10],lod_interval:[n.Number,300],lod_threshold:[n.Number,2e3],lod_timeout:[n.Number,500],hidpi:[n.Boolean,!0],output_backend:[n.OutputBackend,\"canvas\"],min_border:[n.Number,5],min_border_top:[n.Number,null],min_border_left:[n.Number,null],min_border_bottom:[n.Number,null],min_border_right:[n.Number,null],inner_width:[n.Number],inner_height:[n.Number],outer_width:[n.Number],outer_height:[n.Number],match_aspect:[n.Boolean,!1],aspect_scale:[n.Number,1],reset_policy:[n.ResetPolicy,\"standard\"]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"})}get width(){const e=this.properties.width.get_value();return null!=e?e:this.plot_width}set width(e){this.setv({width:e,plot_width:e})}get height(){const e=this.properties.height.get_value();return null!=e?e:this.plot_height}set height(e){this.setv({height:e,plot_height:e})}_doc_attached(){super._doc_attached(),this._push_changes([[this.properties.inner_height,null,this.inner_height],[this.properties.inner_width,null,this.inner_width]])}initialize(){super.initialize(),this.reset=new s.Signal0(this,\"reset\");for(const e of l.values(this.extra_x_ranges).concat(this.x_range)){let t=e.plots;_.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}for(const e of l.values(this.extra_y_ranges).concat(this.y_range)){let t=e.plots;_.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}}add_layout(e,t=\"center\"){const r=this.properties[t].get_value();this.setv({[t]:[...r,e]})}remove_layout(e){const t=t=>{a.remove_by(t,t=>t==e)};t(this.left),t(this.right),t(this.above),t(this.below),t(this.center)}add_renderers(...e){this.renderers=this.renderers.concat(e)}add_glyph(e,t=new b.ColumnDataSource,r={}){const i=Object.assign(Object.assign({},r),{data_source:t,glyph:e}),o=new g.GlyphRenderer(i);return this.add_renderers(o),o}add_tools(...e){this.toolbar.tools=this.toolbar.tools.concat(e)}get panels(){return[...this.side_panels,...this.center]}get side_panels(){const{above:e,below:t,left:r,right:i}=this;return a.concat([e,t,r,i])}}r.Plot=f,f.__name__=\"Plot\",f.init_Plot()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1).__importStar(t(18)),c=t(8),o=t(9),n=t(13),a=t(295),l=t(305),r=t=>{switch(t){case\"tap\":return\"active_tap\";case\"pan\":return\"active_drag\";case\"pinch\":case\"scroll\":return\"active_scroll\";case\"multi\":return\"active_multi\"}return null},_=t=>\"tap\"==t||\"pan\"==t;class h extends l.ToolbarBase{constructor(t){super(t)}static init_Toolbar(){this.prototype.default_view=l.ToolbarBaseView,this.define({active_drag:[s.Any,\"auto\"],active_inspect:[s.Any,\"auto\"],active_scroll:[s.Any,\"auto\"],active_tap:[s.Any,\"auto\"],active_multi:[s.Any,null]})}connect_signals(){super.connect_signals();const{tools:t,active_drag:e,active_inspect:i,active_scroll:s,active_tap:c,active_multi:o}=this.properties;this.on_change([t,e,i,s,c,o],()=>this._init_tools())}_init_tools(){if(super._init_tools(),\"auto\"==this.active_inspect);else if(this.active_inspect instanceof a.InspectTool){let t=!1;for(const e of this.inspectors)e!=this.active_inspect?e.active=!1:t=!0;t||(this.active_inspect=null)}else if(c.isArray(this.active_inspect)){const t=o.intersection(this.active_inspect,this.inspectors);t.length!=this.active_inspect.length&&(this.active_inspect=t);for(const t of this.inspectors)o.includes(this.active_inspect,t)||(t.active=!1)}else if(null==this.active_inspect)for(const t of this.inspectors)t.active=!1;const t=t=>{t.active?this._active_change(t):t.active=!0};for(const t of n.values(this.gestures)){t.tools=o.sort_by(t.tools,t=>t.default_order);for(const e of t.tools)this.connect(e.properties.active.change,()=>this._active_change(e))}for(const[e,i]of n.entries(this.gestures)){const s=r(e);if(s){const c=this[s];\"auto\"==c?0!=i.tools.length&&_(e)&&t(i.tools[0]):null!=c&&(o.includes(this.tools,c)?t(c):this[s]=null)}}}}i.Toolbar=h,h.__name__=\"Toolbar\",h.init_Toolbar()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const n=e(1),s=e(296),i=e(304),_=n.__importStar(e(18));class c extends s.ButtonToolView{}o.InspectToolView=c,c.__name__=\"InspectToolView\";class l extends s.ButtonTool{constructor(e){super(e),this.event_type=\"move\"}static init_InspectTool(){this.prototype.button_view=i.OnOffButtonView,this.define({toggleable:[_.Boolean,!0]}),this.override({active:!0})}}o.InspectTool=l,l.__name__=\"InspectTool\",l.init_InspectTool()},\n      function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=t(1),s=i.__importDefault(t(297)),n=t(78),l=t(298),r=t(72),a=i.__importStar(t(18)),u=t(29),_=t(8),h=t(9),c=t(299),m=i.__importDefault(t(300)),d=i.__importDefault(t(301)),p=i.__importDefault(t(284)),f=t(302);class g extends n.DOMView{initialize(){super.initialize();const t=this.model.menu;if(null!=t){const e=this.parent.model.toolbar_location,o=\"left\"==e||\"above\"==e,i=this.parent.model.horizontal?\"vertical\":\"horizontal\";this._menu=new f.ContextMenu(o?h.reversed(t):t,{orientation:i,prevent_hide:t=>t.target==this.el})}this._hammer=new s.default(this.el,{touchAction:\"auto\",inputClass:s.default.TouchMouseInput}),this.connect(this.model.change,()=>this.render()),this._hammer.on(\"tap\",t=>{var e;(null===(e=this._menu)||void 0===e?void 0:e.is_open)?this._menu.hide():t.target==this.el&&this._clicked()}),this._hammer.on(\"press\",()=>this._pressed())}remove(){var t;this._hammer.destroy(),null===(t=this._menu)||void 0===t||t.remove(),super.remove()}styles(){return[...super.styles(),m.default,d.default,p.default]}css_classes(){return super.css_classes().concat(c.bk_toolbar_button)}render(){r.empty(this.el);const t=this.model.computed_icon;_.isString(t)&&(u.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip,null!=this._menu&&this.root.el.appendChild(this._menu.el)}_pressed(){var t;const{left:e,top:o,right:i,bottom:s}=this.el.getBoundingClientRect(),n=(()=>{switch(this.parent.model.toolbar_location){case\"right\":return{right:e,top:o};case\"left\":return{left:i,top:o};case\"above\":return{left:e,top:s};case\"below\":return{left:e,bottom:o}}})();null===(t=this._menu)||void 0===t||t.toggle(n)}}o.ButtonToolButtonView=g,g.__name__=\"ButtonToolButtonView\";class v extends l.ToolView{}o.ButtonToolView=v,v.__name__=\"ButtonToolView\";class b extends l.Tool{constructor(t){super(t)}static init_ButtonTool(){this.internal({disabled:[a.Boolean,!1]})}get tooltip(){return this.tool_name}get computed_icon(){return this.icon}get menu(){return null}}o.ButtonTool=b,b.__name__=\"ButtonTool\",b.init_ButtonTool()},\n      function _(t,e,n){\n      /*! Hammer.JS - v2.0.7 - 2016-04-22\n           * http://hammerjs.github.io/\n           *\n           * Copyright (c) 2016 Jorik Tangelder;\n           * Licensed under the MIT license */\n      !function(t,n,i,r){\"use strict\";var s,o=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],a=n.createElement(\"div\"),h=Math.round,u=Math.abs,c=Date.now;function l(t,e,n){return setTimeout(y(t,n),e)}function p(t,e,n){return!!Array.isArray(t)&&(f(t,n[e],n),!0)}function f(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(void 0!==t.length)for(i=0;i<t.length;)e.call(n,t[i],i,t),i++;else for(i in t)t.hasOwnProperty(i)&&e.call(n,t[i],i,t)}function v(e,n,i){var r=\"DEPRECATED METHOD: \"+n+\"\\n\"+i+\" AT \\n\";return function(){var n=new Error(\"get-stack-trace\"),i=n&&n.stack?n.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",s=t.console&&(t.console.warn||t.console.log);return s&&s.call(t.console,r,i),e.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(null==t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var e=Object(t),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)i.hasOwnProperty(r)&&(e[r]=i[r])}return e}:Object.assign;var d=v((function(t,e,n){for(var i=Object.keys(e),r=0;r<i.length;)(!n||n&&void 0===t[i[r]])&&(t[i[r]]=e[i[r]]),r++;return t}),\"extend\",\"Use `assign`.\"),m=v((function(t,e){return d(t,e,!0)}),\"merge\",\"Use `assign`.\");function g(t,e,n){var i,r=e.prototype;(i=t.prototype=Object.create(r)).constructor=t,i._super=r,n&&s(i,n)}function y(t,e){return function(){return t.apply(e,arguments)}}function T(t,e){return\"function\"==typeof t?t.apply(e&&e[0]||void 0,e):t}function E(t,e){return void 0===t?e:t}function I(t,e,n){f(S(e),(function(e){t.addEventListener(e,n,!1)}))}function A(t,e,n){f(S(e),(function(e){t.removeEventListener(e,n,!1)}))}function _(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function C(t,e){return t.indexOf(e)>-1}function S(t){return t.trim().split(/\\s+/g)}function b(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;i<t.length;){if(n&&t[i][n]==e||!n&&t[i]===e)return i;i++}return-1}function x(t){return Array.prototype.slice.call(t,0)}function P(t,e,n){for(var i=[],r=[],s=0;s<t.length;){var o=e?t[s][e]:t[s];b(r,o)<0&&i.push(t[s]),r[s]=o,s++}return n&&(i=e?i.sort((function(t,n){return t[e]>n[e]})):i.sort()),i}function D(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s<o.length;){if((i=(n=o[s])?n+r:e)in t)return i;s++}}var w=1;function O(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var R=\"ontouchstart\"in t,M=void 0!==D(t,\"PointerEvent\"),z=R&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),N=[\"x\",\"y\"],X=[\"clientX\",\"clientY\"];function Y(t,e){var n=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){T(t.options.enable,[t])&&n.handler(e)},this.init()}function F(t,e,n){var i=n.pointers.length,r=n.changedPointers.length,s=1&e&&i-r==0,o=12&e&&i-r==0;n.isFirst=!!s,n.isFinal=!!o,s&&(t.session={}),n.eventType=e,function(t,e){var n=t.session,i=e.pointers,r=i.length;n.firstInput||(n.firstInput=W(e));r>1&&!n.firstMultiple?n.firstMultiple=W(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,a=o?o.center:s.center,h=e.center=q(i);e.timeStamp=c(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=U(a,h),e.distance=L(a,h),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};1!==e.eventType&&4!==s.eventType||(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y});e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=H(e.deltaX,e.deltaY);var l=k(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=u(l.x)>u(l.y)?l.x:l.y,e.scale=o?(p=o.pointers,f=i,L(f[0],f[1],X)/L(p[0],p[1],X)):1,e.rotation=o?function(t,e){return U(e[1],e[0],X)+U(t[1],t[0],X)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,a=e.timeStamp-o.timeStamp;if(8!=e.eventType&&(a>25||void 0===o.velocity)){var h=e.deltaX-o.deltaX,c=e.deltaY-o.deltaY,l=k(a,h,c);i=l.x,r=l.y,n=u(l.x)>u(l.y)?l.x:l.y,s=H(h,c),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var p,f;var v=t.element;_(e.srcEvent.target,v)&&(v=e.srcEvent.target);e.target=v}(t,n),t.emit(\"hammer.input\",n),t.recognize(n),t.session.prevInput=n}function W(t){for(var e=[],n=0;n<t.pointers.length;)e[n]={clientX:h(t.pointers[n].clientX),clientY:h(t.pointers[n].clientY)},n++;return{timeStamp:c(),pointers:e,center:q(e),deltaX:t.deltaX,deltaY:t.deltaY}}function q(t){var e=t.length;if(1===e)return{x:h(t[0].clientX),y:h(t[0].clientY)};for(var n=0,i=0,r=0;r<e;)n+=t[r].clientX,i+=t[r].clientY,r++;return{x:h(n/e),y:h(i/e)}}function k(t,e,n){return{x:e/t||0,y:n/t||0}}function H(t,e){return t===e?1:u(t)>=u(e)?t<0?2:4:e<0?8:16}function L(t,e,n){n||(n=N);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function U(t,e,n){n||(n=N);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return 180*Math.atan2(r,i)/Math.PI}Y.prototype={handler:function(){},init:function(){this.evEl&&I(this.element,this.evEl,this.domHandler),this.evTarget&&I(this.target,this.evTarget,this.domHandler),this.evWin&&I(O(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&A(this.element,this.evEl,this.domHandler),this.evTarget&&A(this.target,this.evTarget,this.domHandler),this.evWin&&A(O(this.element),this.evWin,this.domHandler)}};var V={mousedown:1,mousemove:2,mouseup:4};function j(){this.evEl=\"mousedown\",this.evWin=\"mousemove mouseup\",this.pressed=!1,Y.apply(this,arguments)}g(j,Y,{handler:function(t){var e=V[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var G={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Z={2:\"touch\",3:\"pen\",4:\"mouse\",5:\"kinect\"},B=\"pointerdown\",$=\"pointermove pointerup pointercancel\";function J(){this.evEl=B,this.evWin=$,Y.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(B=\"MSPointerDown\",$=\"MSPointerMove MSPointerUp MSPointerCancel\"),g(J,Y,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace(\"ms\",\"\"),r=G[i],s=Z[t.pointerType]||t.pointerType,o=\"touch\"==s,a=b(e,t.pointerId,\"pointerId\");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(n=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var K={touchstart:1,touchmove:2,touchend:4,touchcancel:8};function Q(){this.evTarget=\"touchstart\",this.evWin=\"touchstart touchmove touchend touchcancel\",this.started=!1,Y.apply(this,arguments)}function tt(t,e){var n=x(t.touches),i=x(t.changedTouches);return 12&e&&(n=P(n.concat(i),\"identifier\",!0)),[n,i]}g(Q,Y,{handler:function(t){var e=K[t.type];if(1===e&&(this.started=!0),this.started){var n=tt.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:\"touch\",srcEvent:t})}}});var et={touchstart:1,touchmove:2,touchend:4,touchcancel:8};function nt(){this.evTarget=\"touchstart touchmove touchend touchcancel\",this.targetIds={},Y.apply(this,arguments)}function it(t,e){var n=x(t.touches),i=this.targetIds;if(3&e&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=x(t.changedTouches),a=[],h=this.target;if(s=n.filter((function(t){return _(t.target,h)})),1===e)for(r=0;r<s.length;)i[s[r].identifier]=!0,r++;for(r=0;r<o.length;)i[o[r].identifier]&&a.push(o[r]),12&e&&delete i[o[r].identifier],r++;return a.length?[P(s.concat(a),\"identifier\",!0),a]:void 0}g(nt,Y,{handler:function(t){var e=et[t.type],n=it.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:\"touch\",srcEvent:t})}});function rt(){Y.apply(this,arguments);var t=y(this.handler,this);this.touch=new nt(this.manager,t),this.mouse=new j(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function st(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,ot.call(this,e)):12&t&&ot.call(this,e)}function ot(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var n={x:e.clientX,y:e.clientY};this.lastTouches.push(n);var i=this.lastTouches;setTimeout((function(){var t=i.indexOf(n);t>-1&&i.splice(t,1)}),2500)}}function at(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var r=this.lastTouches[i],s=Math.abs(e-r.x),o=Math.abs(n-r.y);if(s<=25&&o<=25)return!0}return!1}g(rt,Y,{handler:function(t,e,n){var i=\"touch\"==n.pointerType,r=\"mouse\"==n.pointerType;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)st.call(this,e,n);else if(r&&at.call(this,n))return;this.callback(t,e,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ht=D(a.style,\"touchAction\"),ut=void 0!==ht,ct=function(){if(!ut)return!1;var e={},n=t.CSS&&t.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach((function(i){e[i]=!n||t.CSS.supports(\"touch-action\",i)})),e}();function lt(t,e){this.manager=t,this.set(e)}lt.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),ut&&this.manager.element.style&&ct[t]&&(this.manager.element.style[ht]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return f(this.manager.recognizers,(function(e){T(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))})),function(t){if(C(t,\"none\"))return\"none\";var e=C(t,\"pan-x\"),n=C(t,\"pan-y\");if(e&&n)return\"none\";if(e||n)return e?\"pan-x\":\"pan-y\";if(C(t,\"manipulation\"))return\"manipulation\";return\"auto\"}(t.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var i=this.actions,r=C(i,\"none\")&&!ct.none,s=C(i,\"pan-y\")&&!ct[\"pan-y\"],o=C(i,\"pan-x\")&&!ct[\"pan-x\"];if(r){var a=1===t.pointers.length,h=t.distance<2,u=t.deltaTime<250;if(a&&h&&u)return}if(!o||!s)return r||s&&6&n||o&&24&n?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};function pt(t){this.options=s({},this.defaults,t||{}),this.id=w++,this.manager=null,this.options.enable=E(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function ft(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function vt(t){return 16==t?\"down\":8==t?\"up\":2==t?\"left\":4==t?\"right\":\"\"}function dt(t,e){var n=e.manager;return n?n.get(t):t}function mt(){pt.apply(this,arguments)}function gt(){mt.apply(this,arguments),this.pX=null,this.pY=null}function yt(){mt.apply(this,arguments)}function Tt(){pt.apply(this,arguments),this._timer=null,this._input=null}function Et(){mt.apply(this,arguments)}function It(){mt.apply(this,arguments)}function At(){pt.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function _t(t,e){return(e=e||{}).recognizers=E(e.recognizers,_t.defaults.preset),new Ct(t,e)}pt.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(p(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return e[(t=dt(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return p(t,\"dropRecognizeWith\",this)||(t=dt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(p(t,\"requireFailure\",this))return this;var e=this.requireFail;return-1===b(e,t=dt(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(p(t,\"dropRequireFailure\",this))return this;t=dt(t,this);var e=b(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+ft(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+ft(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!T(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},g(mt,pt,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,n=t.eventType,i=6&e,r=this.attrTest(t);return i&&(8&n||!r)?16|e:i||r?4&n?8|e:2&e?4|e:2:32}}),g(gt,mt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(\"pan-y\"),24&t&&e.push(\"pan-x\"),e},directionTest:function(t){var e=this.options,n=!0,i=t.distance,r=t.direction,s=t.deltaX,o=t.deltaY;return r&e.direction||(6&e.direction?(r=0===s?1:s<0?2:4,n=s!=this.pX,i=Math.abs(t.deltaX)):(r=0===o?1:o<0?8:16,n=o!=this.pY,i=Math.abs(t.deltaY))),t.direction=r,n&&i>e.threshold&&r&e.direction},attrTest:function(t){return mt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=vt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),g(yt,mt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[\"none\"]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?\"in\":\"out\";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),g(Tt,pt,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[\"auto\"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance<e.threshold,r=t.deltaTime>e.time;if(this._input=t,!i||!n||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=l((function(){this.state=8,this.tryEmit()}),e.time,this);else if(4&t.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=c(),this.manager.emit(this.options.event,this._input)))}}),g(Et,mt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[\"none\"]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),g(It,mt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return gt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:24&n&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&u(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=vt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),g(At,pt,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[\"manipulation\"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance<e.threshold,r=t.deltaTime<e.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(i&&r&&n){if(4!=t.eventType)return this.failTimeout();var s=!this.pTime||t.timeStamp-this.pTime<e.interval,o=!this.pCenter||L(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,o&&s?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=l((function(){this.state=8,this.tryEmit()}),e.interval,this),2):8}return 32},failTimeout:function(){return this._timer=l((function(){this.state=32}),this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),_t.VERSION=\"2.0.7\",_t.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Et,{enable:!1}],[yt,{enable:!1},[\"rotate\"]],[It,{direction:6}],[gt,{direction:6},[\"swipe\"]],[At],[At,{event:\"doubletap\",taps:2},[\"tap\"]],[Tt]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};function Ct(t,e){var n;this.options=s({},_t.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((n=this).options.inputClass||(M?J:z?nt:R?rt:j))(n,F),this.touchAction=new lt(this,this.options.touchAction),St(this,!0),f(this.options.recognizers,(function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])}),this)}function St(t,e){var n,i=t.element;i.style&&(f(t.options.cssProps,(function(r,s){n=D(i.style,s),e?(t.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=t.oldCssProps[n]||\"\"})),e||(t.oldCssProps={}))}Ct.prototype={set:function(t){return s(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var n;this.touchAction.preventDefaults(t);var i=this.recognizers,r=e.curRecognizer;(!r||r&&8&r.state)&&(r=e.curRecognizer=null);for(var s=0;s<i.length;)n=i[s],2===e.stopped||r&&n!=r&&!n.canRecognizeWith(r)?n.reset():n.recognize(t),!r&&14&n.state&&(r=e.curRecognizer=n),s++}},get:function(t){if(t instanceof pt)return t;for(var e=this.recognizers,n=0;n<e.length;n++)if(e[n].options.event==t)return e[n];return null},add:function(t){if(p(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(p(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,n=b(e,t);-1!==n&&(e.splice(n,1),this.touchAction.update())}return this},on:function(t,e){if(void 0!==t&&void 0!==e){var n=this.handlers;return f(S(t),(function(t){n[t]=n[t]||[],n[t].push(e)})),this}},off:function(t,e){if(void 0!==t){var n=this.handlers;return f(S(t),(function(t){e?n[t]&&n[t].splice(b(n[t],e),1):delete n[t]})),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var i=n.createEvent(\"Event\");i.initEvent(t,!0,!0),i.gesture=e,e.target.dispatchEvent(i)}(t,e);var i=this.handlers[t]&&this.handlers[t].slice();if(i&&i.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var r=0;r<i.length;)i[r](e),r++}},destroy:function(){this.element&&St(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(_t,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:32,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:24,DIRECTION_ALL:30,Manager:Ct,Input:Y,TouchAction:lt,TouchInput:nt,MouseInput:j,PointerEventInput:J,TouchMouseInput:rt,SingleTouchInput:Q,Recognizer:pt,AttrRecognizer:mt,Tap:At,Pan:gt,Swipe:It,Pinch:yt,Rotate:Et,Press:Tt,on:I,off:A,each:f,merge:m,extend:d,assign:s,inherit:g,bindFn:y,prefixed:D}),(void 0!==t?t:\"undefined\"!=typeof self?self:{}).Hammer=_t,\"function\"==typeof define&&define.amd?define((function(){return _t})):void 0!==e&&e.exports?e.exports=_t:t.Hammer=_t}(window,document)},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1).__importStar(t(18)),o=t(71),s=t(9),a=t(81);class r extends o.View{get plot_view(){return this.parent}get plot_model(){return this.parent.model}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>{this.model.active?this.activate():this.deactivate()})}activate(){}deactivate(){}}i.ToolView=r,r.__name__=\"ToolView\";class _ extends a.Model{constructor(t){super(t)}static init_Tool(){this.prototype._known_aliases=new Map,this.internal({active:[n.Boolean,!1]})}get synthetic_renderers(){return[]}_get_dim_tooltip(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}}_get_dim_limits([t,e],[i,n],o,a){const r=o.bbox.h_range;let _;\"width\"==a||\"both\"==a?(_=[s.min([t,i]),s.max([t,i])],_=[s.max([_[0],r.start]),s.min([_[1],r.end])]):_=[r.start,r.end];const l=o.bbox.v_range;let c;return\"height\"==a||\"both\"==a?(c=[s.min([e,n]),s.max([e,n])],c=[s.max([c[0],l.start]),s.min([c[1],l.end])]):c=[l.start,l.end],[_,c]}static register_alias(t,e){this.prototype._known_aliases.set(t,e)}static from_string(t){const e=this.prototype._known_aliases.get(t);if(null!=e)return e();{const e=[...this.prototype._known_aliases.keys()];throw new Error(`unexpected tool name '${t}', possible tools are ${e.join(\", \")}`)}}}i.Tool=_,_.__name__=\"Tool\",_.init_Tool()},\n      function _(o,b,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.bk_toolbar=\"bk-toolbar\",t.bk_toolbar_hidden=\"bk-toolbar-hidden\",t.bk_toolbar_button=\"bk-toolbar-button\",t.bk_button_bar=\"bk-button-bar\",t.bk_toolbar_button_custom_action=\"bk-toolbar-button-custom-action\"},\n      function _(o,b,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root .bk-toolbar-hidden {\\n  visibility: hidden;\\n  opacity: 0;\\n  transition: visibility 0.3s linear, opacity 0.3s linear;\\n}\\n.bk-root .bk-toolbar,\\n.bk-root .bk-button-bar {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: center;\\n  -webkit-align-items: center;\\n  user-select: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  -webkit-user-select: none;\\n}\\n.bk-root .bk-toolbar .bk-logo {\\n  flex-shrink: 0;\\n  -webkit-flex-shrink: 0;\\n}\\n.bk-root .bk-toolbar.bk-above,\\n.bk-root .bk-toolbar.bk-below {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n  justify-content: flex-end;\\n  -webkit-justify-content: flex-end;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-button-bar,\\n.bk-root .bk-toolbar.bk-below .bk-button-bar {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-logo,\\n.bk-root .bk-toolbar.bk-below .bk-logo {\\n  order: 1;\\n  -webkit-order: 1;\\n  margin-left: 5px;\\n  margin-right: 0px;\\n}\\n.bk-root .bk-toolbar.bk-left,\\n.bk-root .bk-toolbar.bk-right {\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n  justify-content: flex-start;\\n  -webkit-justify-content: flex-start;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-button-bar,\\n.bk-root .bk-toolbar.bk-right .bk-button-bar {\\n  display: flex;\\n  display: -webkit-flex;\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-logo,\\n.bk-root .bk-toolbar.bk-right .bk-logo {\\n  order: 0;\\n  -webkit-order: 0;\\n  margin-bottom: 5px;\\n  margin-top: 0px;\\n}\\n.bk-root .bk-toolbar-button {\\n  width: 30px;\\n  height: 30px;\\n  cursor: pointer;\\n  background-size: 60% 60%;\\n  background-origin: border-box;\\n  background-color: transparent;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n}\\n.bk-root .bk-toolbar-button:hover {\\n  background-color: rgba(192, 192, 192, 0.15);\\n}\\n.bk-root .bk-toolbar-button:focus {\\n  outline: none;\\n}\\n.bk-root .bk-toolbar-button::-moz-focus-inner {\\n  border: 0;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-toolbar-button {\\n  border-bottom: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-toolbar-button.bk-active {\\n  border-bottom-color: #26aae1;\\n}\\n.bk-root .bk-toolbar.bk-below .bk-toolbar-button {\\n  border-top: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-below .bk-toolbar-button.bk-active {\\n  border-top-color: #26aae1;\\n}\\n.bk-root .bk-toolbar.bk-right .bk-toolbar-button {\\n  border-left: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-right .bk-toolbar-button.bk-active {\\n  border-left-color: #26aae1;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-toolbar-button {\\n  border-right: 2px solid transparent;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-toolbar-button.bk-active {\\n  border-right-color: #26aae1;\\n}\\n.bk-root .bk-button-bar + .bk-button-bar:before {\\n  content: \" \";\\n  display: inline-block;\\n  background-color: lightgray;\\n}\\n.bk-root .bk-toolbar.bk-above .bk-button-bar + .bk-button-bar:before,\\n.bk-root .bk-toolbar.bk-below .bk-button-bar + .bk-button-bar:before {\\n  height: 10px;\\n  width: 1px;\\n}\\n.bk-root .bk-toolbar.bk-left .bk-button-bar + .bk-button-bar:before,\\n.bk-root .bk-toolbar.bk-right .bk-button-bar + .bk-button-bar:before {\\n  height: 1px;\\n  width: 10px;\\n}\\n'},\n      function _(A,g,C){Object.defineProperty(C,\"__esModule\",{value:!0});C.default='\\n.bk-root .bk-tool-icon-copy-to-clipboard {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUSDBoBvcHQeQAAAG9JREFUWMNjXLhsJcNAAiaGAQYwB/xHwh/Q+ITEkfHQCwEWND4jmeb8H/JpgBwfI6cNBhLSEkqaGXRpgFRAcZoZsmlg1AGjDhh1wKgDRh0w6gCaVcf/R2wIkNqw+D9s0wADvUNiyIYA47BJAwPuAAAj/Cjd0TCN6wAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-replace-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxokK3gniQAAAHpJREFUWMNjXLhsJcNAAiaGAQajDhhwB7DgEP+PxmeksvjgDwFcLmYkUh2hkBj8IcBIZXsYh1w2/I8v3sgAOM0bLYhGc8GgrwuICgldfQO88pcvXvg/aOuCUQeM5oLRuoCFCJcTbOMh5XOiW0JDNhdQS3y0IBp1ABwAAF8KGrhC1Eg6AAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-append-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkZWD04WwAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAAoUlEQVRYw+1WQQ6AIAwrhO8Y/bIXEz9jIMSDr8ETCUEPQzA4pMeFLKNbu4l5WR0CDOMEALBGIzMuQIBEZQjPgP9JLjwTfBjY9sO9lZsFA9IafZng3BlIyVefgd8XQFZBAWe8jfNxwsDhir6rzoCiPiy1K+J8/FRQemv2XfAdFcQ9znU4Viqg9ta1qYJ+D1BnAIBrkgGVOrXNqUA9rbyZm/AEzFh4jEeY/soAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-intersect-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkrkOpp2wAAAPhJREFUWMPtV1EKwjAMTUavI3oawR/vtn5srJdREfzwMvHHQlcT2mpdMzFfWxiP5r2+JMN+mAiCOB72CABgR1cln4oOGocJnuMTSxWk8jMm7OggYkYXA9gPE3uyd8NXHONJ+eYMdE/NqCJmEZ5ZqlJJ4sUksKN7cYSaPoCZFWR1QI+Xm1fBACU63Cw22x0AAJxudwrffVwvZ+JmQdAHZkw0d4EpAMCw8k87pMdbnwtizQumJYv3nwV6XOA1qbUT/oQLUJgFRbsiNwFVucBIlyR3p0tdMp+XmFjfLKi1LatyAXtCRjPWBdL3Ke3VuACJKFfDr/xFN2fgAR/Go0qaLlmEAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-subtract-mode {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxgsF5XNOQAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAABFUlEQVRYw9VWUQqDMAxNpWfxQxD1MoP97G7zQ5mH2RTZYLtM9lWoMbXtxLXNX4OG9r28l4hrd0PQoqxqAACYpxH25C/nkwCHyCBwSPoS09k1T5Fo+4EiExcC4v584xGFmyIXHBLRISAVZyZufUPVa4rcrwmPDgr93ylo+2GliLRUYHK6th/o/6r7nfLpqaCsagEA8Hh9FmcNKeRmgeYDC+SCq0B6FFi8/BcV6BdR9cL3gCv3ijPKOacsn3rBEcjmaVxpfGcg4wHxzgJJnc6241Hn23DERFRAu1bNcWa3Q0uXi62XR6sCaWoSejbtdLYmU3kTEunNgj0bUbQqYG/IcMaqwPS9jftoVCAQ0ZVDJwf0zQdH4AsyW6fpQu4YegAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-clear-selection {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUGEhcuan3d3wAAAoRJREFUWMPtlzFP3EAQhd+b3TNSzg0N5TWXLkJQUUaKhIQ4fgP/g5ArrriE/I3opEgRrZtIVJR0FJQ010SioUmEZHtnUpwN9gWHGA5BJCy58MraffvmfZ41v3z9hqe8BE98vQh4cgG+Ydzmnrng8efvQJNi/uN7dznx/B3ggtfhf4ehNdUttRzBDIm/2VTiiWCG1HK0nc+3UWtq8BQIiEEakEQOADBIA4QCQmBqoHBhFNR27ikQSmGdYCdTqCpEHMDZmEKRWUBEv1gBDg5SzRJnpopILWICgWuRYflLamuzxB2BmtYqSRIka5VWU8QduXO+1hRc5YZu5GAwmP2ZJzND0IBu5HCV2+NQcAhAVRsnC2IbPzPdSjzd6to6VtfWkXi6YLaVWr7xoAwkfpb8MnC3SH7rKSMBe4M0jA/OTicFIbtCGRIyNbURhcf3ErCd6YwA1m0HgAxhw1NGQnlXBHG4kylVlSJuH0RfIP2CkL2I/qS1gIAAQiBl1QwFggIHtyxgrxK5PgyfC0JWKoT0HLh8LwoietB4TYKaIl7yeNURxB05UtMxDOcVQlZIrlRKdK6m47gjR/fuBRQihyLArtNeJD50Izcx2Eczu7iFkIug4VM3cpOr3MKDekFED0fWUHv9Zq0kpLnridjhY3XDg7NTN0jDrhO3X7O9Wg7wwyANu4mnayNg3gmbu0tCNoUyBNGv2l4rB9EXynA7082FOxAQLhU6rQVO9T2AvWowFToNCJcPORGxIRcnpjZSKATSU9NxvOQnAPArDSaQoUKnNI4iufkGtD4P3EHIcWZhz4HLceSOyrR3Izf5memPAL2cX3yhAkonysZVaWLBkd9dw1Ivv2a/AYPkK+ty1U1DAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-box-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg0kduFrowAAAIdJREFUWMPtVtEKwCAI9KL//4e9DPZ3+wP3KgOjNZouFYI4C8q7s7DtB1lGIeMoRMRinCLXg/ML3EcFqpjjloOyZxRntxpwQ8HsgHYARKFAtSFrCg3TCdMFCE1BuuALEXJLjC4qENsFVXCESZw38/kWLOkC/K4PcOc/Hj03WkoDT3EaWW9egQul6CUbq90JTwAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-box-zoom {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg82t254aQAAAkBJREFUWMPN11+E1FEUB/DPTFn2qaeIpcSwr5NlUyJiKWVXWUqvlUh/iE3RY9mUekkPPURtLKNRrFJEeuphGfUUaVliiX1aVjGs6aG7+XX9ZnZ+d2fTl2vmnHvPPfeee/79Sk+may2/UQq/q7Qu+bAJoxjHIKqB/wlfUMcMVqI9bLZ+DGIKwzlzQ2GcxCx2xwvKOUKlaHTiX8bHNspjDONHkOmJBW5jIof/FvPh/06MZOb6cRc7cGn1AKUE5cdzlM/gAr5F/O24H3xkFRfxAbVygvK+cIsspjGWo1zgjeFpxL+BvnLw7laBA4xjIFJwrgu52DoVjKdY4HBEX8dSF3JLYe1fe6UcYCii3xWQjdfuSTnAtoheKCC7GNED5Zx4L4qt61jbTLHA94geKSC7P7ZeShQ0Inoi1IJuEOeORooFXkV0FZNdZs5qvFfKAeqYy7nZ6yg//HG0MBfffh71lFrQDCW2EvEP4mt4okZUDftz9rmGZkotmMxJRtlisy+MTniAWrty3AlXw0hFM2TD89l+oNsoOJXjbIs4EpqNtTCLXbiZ0g+M4mFObj8U3vsNjoZCVcmk60ZwthpepLZkB/AsivWfOJZxtpUQHfWib7KWDwzjeegBZJSdKFiE2qJTFFTwElsi/unQ/awXrU4WGMD7nOJxBY/1EO2iYConq93CHT1GOwucjdqnRyFz+VcHmMNefMY9nNkA3SWUOoXhQviSWQ4huLIRFlirFixnQq/XaKXUgg2xQNGv4V7x/RcW+AXPB3h7H1PaiQAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-zoom-in {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsUBmL8iQAAA2JJREFUWMO9l12IlFUYx3//MzPrLpSjkm5oN4FFIWVEl66IQlFYwtLOzozsjHdGRSCRF0sfBEXRVV0FQuQiLm5CZNBFgRRaRLVFhbJ2EdiN5gbK7toObTPn6eYdPTvNzPvOBz5Xh/ec5/n/n89zXtEHmZqeSXSuXBz/3zfdKvBWJHQrwZuRcP0El+QkbQXeBX6WZEgm6TtJk5lM5o4Lc+cV6qpf4Ga20Tm338zeATItVK9Ker6yvPzp4NDQ3+XieGsCU9MzTYumGbhz7m4ze9/MHgvBgItACrgfGAj2jgAvAYs3wlEujjc13kii8YyZrXXOfWhmo9GnFUlvOOemarVapVqtkslksmb2KjARqL62ecuWN9NxbRInzrldAXhV0uFSIfdew7G/gNLU9MwS8CwSmE3Oz88fcXG5blfpqVRq0Ix8VIAAX0XgrVL7HDCHGcCaWrV60LUBN8Dae58aQIxEqcA592I9M610JL0cpG/U9TIHJNKY3RV5z0R+7Nd4HZ0P1g/2RMBuegLAsRMnb4vT8d5vqKfMzOgtAlADrkmqGywmiMBTwfr3dC9j1Xv/r6Tvg/5/5ejxE6cO7M9faVbQZrYNOFSPmqQvVo9FKexvi5uWX58943aM7DwAfBDY+FbSCxP5sdkGx55GeguzrUEXPaSo2pFkAbiSZQCAzZJOmdkjwd6SpB/M7KykQTPbA2wDhoIzRzcNDx9MJwGNIXdJ0mEzmwbujL7dbma7gd03A7lKfnTOvf74nl0r6bonTUbujRSUCrm2d4L3/kvn3JPe+8+BDW2i9o+kT7z3kxP5sYsA6W47oE64TsR7P9tQL4vA2mh9WdIscKxUyJ0M7aR7acOGzikD65EQLEjaa2ZXzMwDFeB6qZBbbLTRE4EGeSaozNOZgYFf8qP7lmIvs354n0qlHpB0T7B9Ogl4IgJJrmjv/SiQjbrkD+BMUkfSbYATPdckrTOzkciWAXOlQu5cYgLdPEIapud9wMOR9zVJH3ViKx333mtHMJvNuoWFhZ3A+ojMcja77njXBEKwJJfTcqUyCIQ34Mf7nnh0paMnXacFuGoC1mr3AtuDfLzd8Zuyl+rfuGn4HLAD+Az4qZQf+61TAj0Noj8vX6oC35SL43u7teG6rf5+iXppwW7/JUL5D03qaFRvvUe+AAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-zoom-out {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsHgty9VwAAA0FJREFUWMO9l09oXFUUxn/fmXlpItppi22k7UJBRSlVkCytSAuKUloIdjKT0El3FXVXdVFKRVAQV7qQohsNwdA0UFvBhYtqUVyIVlRaogtFQVq7qSTVjA3z3nHzBq/jvPmTN/Ss7rv3nvN99/y794kByMzcfE/7picn/jenmwWeRUI3E7wdCRskuCSTdDfwBvCtJEdySV9KOhpF0e0/LF5SqKtBgbv7ZjObcvfXgShD9Zqk5+orKx8Oj4z8NT05kU1gZm6+bdK0Azezu9z9hLs/HoIBvwAF4H5gKFh7B3gBWFY3460kWve4+3oze9fdx9OpVUmvmNlMHMf1RqNBFEUldz8OHAxUX9q6bduryut+Sfvc/Wz62ZD0fK1afjND9y3gGSRwv1GMojstTxUUCoVhdyopEYDzKXjWwZ4FFnEHWBc3Goet00m7lZlZYQixKw0FZnakGZksHUnHgvCN5/KARBH37enpOVg58H13HV0Kxg/kIuD/ngSA2ZMLt3bTSZJkUzNk7k4+D0AM/CGpaXCyBw/sC8Y/qZd2GpZiuL9YLN4Sx/HpoP5/c/exQ1OVq+1yyt13SLoArEsJnMjlgfOffvK3u58Kprab2QezJxfG2iTzUzI70wRPG9jbmpmb95SNB9mpzp7/j2yVdNbdx4K565K+cvfPJQ27+x5gBzAS7Hlvy+jo4WIvoC3kWpcvS3rR3eeAO9K529x9N7C7zX6AC2b28hN7Hl1Vt44niVq13LUjmtlYkiQfA5s6eO+GpDNJkhw9NFX5ueNt2ARodyF1IHIN2JiOl4H16fiKpK+B2Vq1vBAqFAf4IJkGNiIhWJK0192vunsC1IE/a9XycquNXARa5OnApeeioaHvKuP7r3dTGsiLqFAo7JR0T7B8rhfwXARa2us4UEqr5Ffgs151i/08oTNKdIO770ptObBYq5Yv5ibQq/sl3Qc8lJ4+lnSqH1vFfp9koZRKJVtaWnqkWXqSVkqlDe+vmUDWpZMlK/X6MBDegKf3P/nYaj8ErN9fqZBYEsf3Ag8G8Xit33BaniTcvGX0IvAw8BHwTa1y4Md+CeRqRL9fudwAvpienNi7Vhu21uwflOT+L+i1X2TJP57iUvUFtHWsAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-help {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABltpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlmZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMzIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDNDIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMTIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDMjIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNjoxMToyOCAxMToxMTo4MjwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjY8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cphjt2AAAAT7SURBVFgJxRdbaFxFdGb2bhui227BWrsVKYgf2kJUbP9EUPuzEB803WTXJjH61Q/7Ya1+CMYKEVTsh4J/EpvY7BoabUiNiA8s1p+4KIhpoUUEselHqyS76TbZ3HuP58ydc3d2u4+IkQxczpz3mZkzZ86VYpXjvenpjZsLhUcliE4AuUuASAgptmt1EFdwPiclzIIUUwubNn17OJlcXo1p2UpodHRiux9xB1Eug1+slbzhFxGOKc851tu7/0oznYYBDA8Pt0U2tL8KQryIq2tvZqQhD0QJHRz3yqWhgYGBpXpydQMwqz6NCnurleCSADkJEfgKfOePqL80R/wV1ZaQyr1LenKfkPCkEPKeaj0xg7vxVL3duCmA0Vyuw/fl52hgBxsBED+h4Cv9z3R/zbRm8MTJTx7HQN7GQB6w5C4L4SX7M5lfLBpurjXMyvNIShiyi0l1pL8n9b7EDGPR8fHxzSsQ6XDB3618/xqo6Pk25V5MpVJllgHM1BO58RdQ612kOYZ+GXdij70TYQB05mpj+1kU5G2fB+l3PZtOf8NGx6ambnMXb3yAxg8wjSEG6OKKR9oicBQD+ZvpH2Wzj0lQpxCPG9qMv1x6hHNCsSAlHM7ZOa682vlI9tRDbvHGbD3nZAPpDoD/3JIrLpAs26UFkC3EMUA99hpfGtEBfJjNJnS2Gwnadnvl+Xw+iuc3DAJuNyIaSCHpilVldyDjjUxj3WDZIAhxhHHyRcdNuA7AAfUaXzVKODpzFiZ4/uLvh5G+m2no+C/pyIf7MqlEJB7bpqR6nXkEUfbeawuLaZsW2ISfNQ2vtaktQlGFQyIVGT0o2+2EC4iQNGwjBIN9qdQ5Qg4mk4X4rW3vCClLtowE2FOFUxKDfNmiZci3ovKKRFPh4FK9q4Zbdr+lKKJiA13TcHR2dmLBgdmQ0GAS2MZaEowY+XbAk09IvgtYZGp16SyvFhaHcIUh645t8T9DBCcnz5zZ4hZLu3DzK2QlL1QQa0Y+pHiJKPSuOGj3PmZTheM5w2TwqBxnvBZOTk7G5gvXJ5Aelms8wnJURL+olSWcfEhf6gDoUXPMq6ZlqbzWU2pE+3hi4s6F68tfIj9cBMlikr7Z0/P0b/X0yIcUXsDCF1WhtL4OROHaXk+xlkbV0Cu732Nmhc4peaWSg73pA8dq5RkvO37ldUTfXCKZv2q45MkhvG87WQEzpCCUSvV1d9GONBy3lMvgKSwrZig8gjAietWY0QriylO2jIo4yVbOSb7KB/qmI9BPKjHpSSXYauRyn92Nq9/Kcrj13x3s3v8D481glQ/0raiNYgX9njPSBOImbrHZePl+tfFmc9sH+Xaoh8NjOKSVdDMhjjYzQLy+dFceH5+IJQf9VYXX4tROg4ZFU8m31M3mfPEqUoJqCGJfvWpo2xnNfdrhC28n06SCeSzNZxlvBINGRXCtKS7EY1uV6V7HWAm38y1cXaXsMcOCvr9ySPj+af7A1U2HJXHzVNvUXVLIGyPf+jV0pf8GHoN+TLAyPkidTCi2RpPApmnR0Bd1zGRaB/B8Oj2HSw7LLbVR1MmskW8RdEWVXSJf3JbpAMgRtc4IZoxTh9qotQjCasm46M0YX9pV1VmbpvRH5OwwgdRtSg2vKaAz/1dNKVtb17Y8DCL4HVufHxMOYl1/zTgIgiYvBnFKfaNp3YjTdPz3n9Na8//X7/k/O1tdwopcZlcAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-hover {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4oVHp0SwAAAQJJREFUWMPtlsENgzAMRb8RQ5VJItFDOgaZAMaAA0iZpN3KPZSoEEHSQBCViI/G8pfNt/KAFFcPshPdoAGgZkYVVYjQAFCyFLN8tlAbXRwAxp61nc9XCkGERpZCxRDvBl0zoxp7K98GAACxxH29srNNmPsK2l7zHoHHXZDr+/9vwDfB3kgeSB5IHkgeOH0DmesJjSXi6pUvkYt5u9teVy6aWREDM0D0BRvmGRV5N6DsQkMzI64FidtI5t3AOKWaFhuioY8dlYf9TO1PREUh/9HVeAqzIThHgWZ6MuNmC1jiL1mK4pAzlKUojEmNsxcmL0J60tazWjLZFpClPbd9BMJfL95145YajN5RHQAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-crosshair {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADEUlEQVRYR81XXVIaQRCeHqug8CXmBNETaE4gniDwIgpVspxAbxC9ATkBkCpQ8gKeQDiB5AQxNyAvUlrldr7eHxyGXZi1rMJ5opbp7m++7un+htSGF204vsoMoNXrlzSpfWa1oxQfhAegCZGaEtPorHo8znIoJwCt6+td8uk7ApUQCIHTF4BNAWzImq8ap6cP68CsBdDp9i9ZqXM7ML79g/EnCWD+jgMKENKqWT+tXK0CkQqgNRjs0OxpQIqKhoMxaG6/6JeRnK7T6yO2UvVqhYSlLX+ryORfgKn9ORDFIy7ky41yGcwsr0QAQfDH5zucOswx819fs4egI9OFCcD8DjBF7VNbEX0JzdWEt3NHSSASAcCxBDqMgt/623kvyTgNgNjJIfTjk4D4FqaJR1715MjmYAmA5Bx3AwUXQL+t105KaTlcBSC26XRvhjEIoLiq1yqXpr8FAGG16/ug4IT27fxBWu7EiQuAiImJpEMKE6nYM30uAIDDttSUOPfJP7JzbjPhAiBIh9QE67vIvoOi9WJfCwDavf40ulpjbCqmUf+W753ezURuh7Dg1SqflwAEHU6pgfyBq9Y4qx0LG++2fnZ/eUzcstmdM2AWH+jfc+liWdBJfSENf8Lifi3GVwC9mybOfi5dzatWVrbbLIHNva8p5h/16gkaFiLGGxbufkoE6XguwePiXLF3XmMfCUCUAqtKXU7sumd1CowOuJEi3Pg1FBpjitIGhyvVSfvmjci6ZR+rFQfDiPVE2jFYeICQ+PoewwjC5h7CZld6DBdyu6nDSKgzOyIMhmhK5TTqXYbRorZYM46TmpKAAOrGWwSJJekSB1yqJNOzp1Gs7YJ0EDeySDIMtJbQHh6Kf/uFfNFZkolJICRmz0P8DKWZuIG2g1hpok+Mk0Qphs0h9lzMtWRoNvYLuVImUWrmPJDlBKeRBDfATGOpHkhw670QSHWGLLckmF1PTsMlYqMJpyUbiO0weiMMceqLVTcotnMCYAYJJbcuQrVgZFP0NOOJYpr62pf3AmrHfWUG4O7abefGAfwH7EXSMJafOlYAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-lasso-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgwlGP1qdAAABMBJREFUWMO9V1uIVVUY/r61z57ZMx4DnbzgkbQXL5iCJphlWdpIGY4jpFBkEiU9ZNaDRRcITcIwMwgxoQtU2IMXdAZfMjFvpERXYiSbysyBEXFmyuHMnLP32uvrwT2xnY5nxvHQ93Jg7fWv71/r//7L4a59TRgqJk+Z6v3a+sv0OI5nk5wu6VaSVZImAThHsgjgrKTvM5nMUWvtmf5n8HodCIKgOgzDhc65pSTrJQWDsSNpJX1ljHnDOfdT37oZLLHv+8OMMasKhcIJ59xHAJYMlhwAJGUAzJfUTHLFuFzOG5QDU6dNMyQfs9Yedc5tBpAD4IYYNQGoBrDtQnt7/b0LFrJsCHzfn2itfQfAnZLiazytA3AaQAuAiwDaEgeNpGkkswAWSBqRONB38b88z5uTKePt6iiKXkk8jq+iJC5LOmiMaTLGHLPWhmWeHr7vV0dRtATAapAzIVmSo51zyzIlbm2stesFPA6pKk0r6Ryg93y/ek8YFvPOOTg3cDSiKCoC2OP7/rEoirYm4rUkF12lAWNM1lr7lqQn0+QA8gI2jBg5cj6Aj8OwmB+KAKIoukhyp6SRJAUgl0ndPLDWPi9pJQCbuviXvu+/GIZhW1dnJ24UJFuTjCCA2ADA8sYGWmsXS3qmL94kDYAtkh4Nw7ANlQJ5U6INT1KrAYC9zQdykl7nFSj5fXp5Y8NWVBhy7mUAjqShMYdMXV2dJ2klyRwAJ8lIeuGWCRMP7N7frEqSG2OmAFhKshNAp5wrmO7u7jEAngPQm1S2z2pqapr+OPt7XEly0oxwzq2RdFmSD2AMgKKJouhhAL4kA+Cs53l7e3t7uytJHgRBreTWkXwkKVJnJD0B4GAGwIJE9R6AFufc6UqSZ7PZbD6ff5dkA4CQZEHSqwAOISmXtwGIE+F1SeqqIP8d+Xz+C0mLJYWSAODteXffczjdDQNJ0BWMCoLg5gqIbRTJNwHsljQhUb0luWPM2LE7Thw/9m/5NCT/TByxAOYWi8X6/gdWV1dnfN8fNRBxJpMZTXKdc+6IpFVJWAEgkvSJpA0X2tvtVTaSjgOYBCAEEADYSHK87/sfhmEYA9gShuEDkgzJHyWtB/B1irQ2juP7ADxkrX0wOUOpzmdpzEY590HJ7Ni1r2kSyZOSiv2+hSRjSTXp/QAukzySNJOJkmalyNIl10hqMcasdc61XDNcQRD8BnITgNp+36r6kfcNFMMlLQGwTNLMEuQGQBfJl2bdPru+HDkAZAqFQux53jZHEsC6aw0eg2gylNRBcqcx5v04ji999+03AwsWAOI4Lsy9a94WkisAnE5a5WCJYwCfA1g7LJudI2lTHMeXBm1faiQzxkyRtF3S5CTupeAB+KG2tnZFT0/P30NO2VKLzrmfAbwGMipjG5Oc0dPTc0Md05SZ5U4Q2FxChErtEYD7jTGNQ3UgM8Asv90Yc9I5LSKRlXSI5CxJa0jWSALJjKRnAewfkniT+vwf7N7fXHK9rq7O7+jo+BTA/NRrdBpjnnLOnUrvXd7YMPQXSBunneno6IhIHgYwW1JtkgmBpBkATlVMAwOk3nFJ+VSoqgCMr6gIy2FcLtdKspAedyQN/98caDt/3kpyabUmf8WvG/8A1vODTBVE/0MAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-pan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4lKssI9gAAAOtJREFUWMPVll0KwyAMgNPgoc0JzDX2Mtgp3csKErSamGabIEUo/T6bHz0ezxdsjPJ5kvUDaROem7VJAp3gufkbtwtI+JYEOsHNEugIN0mgM1wtsVoF1MnyKtZHZBW4DVxoMh6jaAW0MTfnBAbALyUwCD6UwEB4VyJN4FXx4aqUAACgFLjzrsRP9AECAP4Cm88QtJeJrGivdeNdPpko+j1H7XzUB+6WYHmo4eDk4wj41XFMEfBZGXpK0F/eB+QhVcXslVo7i6eANjF5NYSojCN7wi05MJNgbfKiMaPZA75TBVKCrWWbnGrb3DPePZ9Bcbe/QecAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-xpan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4X4hxZdgAAAMpJREFUWMPtlsEKwjAMhr/pwOOedINJe/PobWXCfAIvgo/nA4heOiilZQqN2yE5lpD/I38SWt3uD9aMHSuHAiiAAmwaYCqoM/0KMABtQYDW11wEaHyiEei28bWb8LGOkk5C4iEEgE11YBQWDyHGuAMD0CeS30IQPfACbC3o+Vd2bOIOWMCtoO1mC+ap3CfmoCokFs/SZd6E0ILjnzrhvFbyEJ2FIZzXyB6iZ3AkjITn8WOdSbbAoaD4NSW+tIZdQYBOPyQKoAAKkIsPv0se4A/1UC0AAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-ypan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4anK0lywAAAMVJREFUWMPtlzEKwzAMRX/S7rlpIMXeOnaLaME36FLo8XqCdNFghGljyc4kgQi2Q/SUj0F/eL7eMMTKz6j9wNlYPGRrFcSoLH4XxQPvdQeYuPOlcLbw2dRTgqvoXEaolWM0aP4LYm0NkHYWzyFSSwlmzjw2sR6OvAXNwgEcwAEcwAEcwAEcoGYk20SiMCHlmVoCzACoojEqjHBmCeJOCOo1lgPA7Q8E8TvdjMmHuzsV3NFD4w+1t+Ai/gTx3qHuOFqdMQB8ASMwJX0IEHOeAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .bk-tool-icon-range {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABCJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjU8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxkYzpzdWJqZWN0PgogICAgICAgICAgICA8cmRmOkJhZy8+CiAgICAgICAgIDwvZGM6c3ViamVjdD4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTgtMDQtMjhUMTQ6MDQ6NDk8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPlBpeGVsbWF0b3IgMy43PC94bXA6Q3JlYXRvclRvb2w+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgrsrWBhAAAD60lEQVRYCcVWv2scRxSemZ097SHbSeWkcYwwclDhzr1Q5T6QE1LghP6BGNIYJGRWNlaZItiFK1mr+JAu4HQu0kjpU8sgF3ITAsaFg0hOvt2Zyfvmdsa7a610Unx44Zgf773vvfneezPHNzrbhn3CT3xC3wPXYOC8LDzqdi8YY/gwh4BeknS/2th6dr2kf94AOp3OFyWgMyziOPbMDxV9FTtJnl1ut795Xd0/YQ0/vtYQwMT1KXWCfr2IjOWwtNehwN4xL9ykTrm6Pzl58yLn3J+mKh9mXbT3uRjGEDph+O8/TjfP5dBp7Ha7AX7O3o5nZeD/0E/OGyXntDgzA0X6qmCnrVutVlrUWV9f/3xo+pwhGDhvEPHOjoxnZjJggXmMHzBQ7NGNp9vxk61fr0HR7e/u7pZzCGHlc7qwBYYTT7tJYSx1AQzppyFPft5apta9w7SKcn0b7P7+/jCsDQ5mbc0dCmIJGDN0ehdcjsmkm6A6KUeKFOTE11PLxrC7Ukqh3ylL2fT0NAP9q6ur6rRCJJYsbKB0JsbCKMuy+xREePDyxQPCz+Crlw062QcA5wBOOt1l6vIl2WiI9F1fN6Q+BBqit6hEC4Hk08GQJMn4myjSP7RavVxgdaVUh/3U6HCMsPr9pYnJKRziHtWQ+un58+hGs6nsjQSjpuTyKGN3CX+FBwHXSiEVgjP+O8X6N12kIePES+GzTKAkGbNp8yJsGUMVzz8jPKReiyAQRimy5/cjye5RpF8utFp/+nwmT7d/NMzcFkS7yjJNGDaPURQxIQThEQy0SyF4l5WJYYhBa816vZ6dU7A6CAhbZVow/pDe0O9hVOoCi13r4BgBAvJHqMSQL2vE/iH6IAXEwgrRVUmBoRRwnwJQT98xEeVeSUyB4dJ5nwJBKdCFFGRmUCcu7rwIYypCTblaChuNBhWODrman5ub+4v0rMNBt8z6Ezh7GksJQpCbm79cMQE7QBFm/X6f0rjWnv8WRYg/QdbUpwDAEBy8vPyA8rNGzg3a8MiElwiM7dAtRqNoNptjGPM1laVxP9umWEMGLOKhKUOJDtBwDmzsw9fC/CzHr9SGuCTi2LbbKvVtmqXpCjMihBFa79Wrt5fGx9PDzc3fmu32Lf8qFliwU9emKhBSp+kRKn/hu9k1COEDbFdt/BoKWOAkuEbdVYyoIXv8+I/QK9dMHEb1Knb7MHOv8LFFOsjzCVHWOD7Ltn+MXCRF4729vWMDK+p8rLkvwjLg4N4v741m5YuwCI9CvHp1Ha8gFdBoPnQAkGsYYGxxcfEI7QQlFCTGUXwjAz4tWF+EpymOWu7fglE7qsOvrYE6g4+9/x/vhRbMdLOCFgAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-polygon-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjc1OfiVKAAAAe1JREFUWMPt1r9rU1EUB/DPK0XbqphFHETo4OCiFhwF0V1KHbRSROLqon+AUMVRRFBwEbRFMBiV+mMW/wIxi5OD1kERRVKRJHUwLvfBTZrU5OWBGXLgQu7Jfe98z/ec7z0vKa88b2q1BDtRHdAPBaylm1NzsxsOjPnPNt6WSWprbft+/c3I3zOAjhT1Y4+fvcjEQJIXnVECSa+AhqIHqlHH5lWCZoe+Gk4GRgDG86j9SAUdlDBSQaZhlOkuHyoVdJmsw98D1S5fM4NYM1LCpqM+Lwa240oLgmZzpVZvzKT75VLZcqksSZKWlQeAy/iORVwIvh31xvotvK7VG3Px4aWHj3Jl4C2uYSvq+Bn8v6LLbaVWb9zsBiKLCvbiNG7gLm7jAYqbPHMJMziZ9lsKoh8GtqCEVVzHftwJn+TFHp4/hg8BSCYVfMOZoPEv2NZGdy9WCGUr9toDR3E2/H4V6nwRe/BmgN65H1ZhvMuB3XiKIyFoGefwO6ysVkUlrNUNsyAK/jli533Q+Y8cJFvAeXyMS1CI/jiMr/gUtD2LQwMGr4R3p7bY3oQHQ5b38CT4D2AXXg6YcQXHpyYnlqKsi5iOAVSwL9zd7zJ09r+Cpwq72omFMazjT9Dnibym0dTkRDUKrrgwH7MwXVyYB38BstaGDfLUTsgAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-redo {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4itK+dVQAAAaFJREFUWMPt1L1rFFEUBfDfJDaBBSslIFjbaSFp1FJQFMVCHkzhKIqdUYOCoBgErVz8rCwiTDMwBCIKipDWyip/gxAIWAmBgBC0eYFh2Gx2l9lFcA5M8e59782Zc84dWrT435Hs1siLchqn43MS0zgW22vYxjesYjVLw3YjBPKinMUTBOwf8J5fKLGYpWFjJAJ5Uc7gIW6jM6Kim3iNZ1katgYmEL/6I+YasvY7Lg6iRpIX5VF8wuEe/XV8wGf8jN6LWTiAc7iEQ7ucPZ+lYW0vAtfwvlbfwCKW9gpXDOv1mJvZHiSO91MiyYsyiQSuxtpXXM7SsDmM5nlRdrCMMz3sOJWl4Xevc/vwBzdwAl+yNNwZxfRI+GxelK9ikHcwh8d4NNR/YFRES1ZwoTYdR7I0rNf3TzVNIGbmSvR/Bx08mIgCFSVu4l2ltIWD9WxNGR+W8KOynqnZ0rwCeVG+wa0hjrxtWoF5dAfc28V8Mib/n+Nev5dnabg/zgw87aNEN/bHOwVRiRe4Wym9zNKwMKkpgIWKEt24njxiJlq0aPFv4i9ZWXMSPPhE/QAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-reset {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4gWqH8eQAABLdJREFUWMPtlktsVGUUx3/nfvfOlLQaY2IiRRMQIRpI0PjamJhoVASDvNpCpYw1vJQYSVwZwIVQF6wwRHmkAUof9ElrI6VqDAXcID4TF0IiYQMkSlTokNCZ+b7jove2t+NMH7rQBWd3v+989/zP+Z8X3Jb/WGQySvUNTQBJESkNguAVYIWqzhaRhwBU9WcR+QXoymazn6jqzUQiMQSQzWZRVdal1vwzAI2tHQBPOuc2AbWTdOyQ53n7nHNfRwee51GzqoIQMCLDpr3x/tLQ0oZzrk5Vj0/BOEBt+KYuOlBVGlrahr0Wob27t3gEjnZ2AyQzmUwHsDgP6J/AYRE553neDwDOuUdU9QngNeCumK4TkRMhZUORcYC1qysLA6iuSQHIwkWLD6lqapQsuSmwTVV3h99I7EcAR462A2xR2Ilq6ehTaejvO1774kuLNALR33eclsaGsQDe3fYegHl43vyNwEeqGl1963mm2jl7YZRTQ82qlWP4HM6ZToC5ztkW4LHQoALru7s6Di5dvlIj/e6ujrEAWoZDn8hmMjXATMACGaAVuBjXTVVXFc/AxhaA+4zvn1DV+eHxVWPMAmvtb5GeMWZyZVhI2rt7qVy2pOh9U1snwIPW2vMi4oWJuBPYHkVAVScPoKmtkzVVK6cEMsyJraHhiCqJqJUwj/JRz7TW1iSSyR2rVyylqa0Ta+24Ic8vXaAEmDFc/l5Z2A/80OibuVyuz/f9ElUdHCmvw82t5HK5h6y1PYhsz2YyGw43t2KtBZHIGwB6+j4rCkBVUdV7gXrggnPuu8h4eP+xMeZS2D0rJYZ6AdAMzAt1b4nI26p6IFZOY8pugijcKSIHVLUK0LyST4vnrVfnWr3mjmP4QTATaERkXkypRFX3isjmuHdRJEK6Ckqquopp06bdKCkp2Sgi7XnGLcg7gzeutwNIiPYc8HixqIrIOlU9ONVIhHPEd851icgSVXUiskVV94gIqoonIt0i8gfQCfwae38e6BWRXuBZz5jZ8VbaOE4EIqlZVUEQBLlkMplS1QER2RwkEnsSyaREDUzyeNsvIhvCMqkH1kdIJ2o+k8iJB1LVVRfjZ6nqqlEAIbdVQGto8Lrv+/dbawcjAL7vc+6bs+zetetfLSHxniIFGofGGsU2oC7eOCbDfZ7nQawBOSAX74SF9oEPImOq+r7nmVmxb5raukZa8UReGmNmhbMkAwwBH467EYVZe49z7kdgenj8k7V2oTHm8kgdWcvrNdVFjR8cHkYzjDH9wLjDaEwEzpwa4MypgWvAjtjxfGNMj4jMiT+M+kFsZI/Q6Pv+HGNMT8w4wI7TAyevxXVPD5z8+zD64tRXAMHVK1eaVLUyVvuDqroV2BOnJF4ZIedviUidqt4Re9s+vbx8zZXLl7PR2+nl5Tz/zNOFp2FzxzGAklw22wUsLLaSKXwf8vhosZUM6PeDYEUum70VHfpBwKsVyyfeikOP6oBNwN1TrLbfgX3A1kKLzKeff8nLLzw38T5wZDgxn1LnNk5lLRfP26/OnR2hwfNYW2Atn9RCsrf+EECyrKysDFimqhXhyjY3VLkAXBKRDqA7nU6nS0tLhyIj6XSaN9bVclv+l/IXAmkwvZc+jNUAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-save {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4UexUIzAAAAIRJREFUWMNjXLhs5X+GAQRMDAMMWJDYjGhyf7CoIQf8x2H+f0KGM9M7BBio5FNcITo408CoA0YdQM1cwEhtB/ylgqMkCJmFLwrOQguj/xTg50hmkeyARAYGhlNUCIXjDAwM0eREwTUGBgbz0Ww46oBRB4w6YNQBow4YdcCIahP+H5EhAAAH2R8hH3Rg0QAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-tap-select {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3NzIwRUFGMDYyMjE2ODExOTdBNUNBNjVEQTY5OTRDRSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOTJBQzE0RDQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOTJBQzE0QzQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTQ0QzIwMUM1RjIxNjgxMUE3QkFFMzhGRjc2NTI3MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcyMEVBRjA2MjIxNjgxMTk3QTVDQTY1REE2OTk0Q0UiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6eYZ88AAADLklEQVR42rSXf2TUYRzHv7tuGcfE6Vwb5zLSSjEj7Y9KWqfEmFZJP+yPMdKKmUrrn0iUfjhWlLFi6YfNrF+StBoTo39iYkTGco4xxxG59P7k/T2PT8/37nu3bx9ezvPj+zyf5/PreS78bGLS8SmrwE6yje3NHJsDBTALpknBz6JhH3NiYAB0gHqPOVv52wJ6QQ48BzdAttTioRJjdeA8mAHHS2xuk3p+M8M16ipVQE49Ds6CiFO9RLjGONf05QLx6wPQaBlbBlPgJVgkP0ETiIJ2sB/E1XfimjfgBOOlKDUqCGOcqBcQnw6BYW5YTo4wbvQhMmCfGRemC2rBiGXzWUb+kM/NRZ6CHWBM9ce5R61NgX6ayhSJ5EPlItlDRNkz4JbFHf06BkSzHjXxM+gDv1S/mPUo2AXWgt9UUHL/IVhS8yUV1/EbV3o4N+NaoE9Fu/i827K5pNYHnqAVJECShWmAaddpscYFFXwR7vnXBRGlnUN/L6kqKJlxnRUuDbaDBiL+vst5d4gpcpBrqk/2jIgCKVUolhntplzivHmwh4stGOPfwBWwl/2dpp8p7xjQZqFLiQJtauKkivYm+kzccpK57yXfOUe+P23JqAnVbhMFmlXntCWnxbT31am9ZJ4BJifsUmNTqt0cYhA5ypympPg7VkEKunPbVb8cIG+0kyHLJZNR7fUMooUKFHAPkfQo58VLK+RzwRDd4FdWG9mjpaAXzqkJa1R7kQttqEABWXMjOOxxVRfnhRm5URX1prk/0pQHwNcKlchZ+jdpC+hFdVqO0my9Hj5dkYgCn1Rfh/KdlNDHrJhPqlDih+IfBd6qwpOgEqYMsorJ2HtWxtagLJDn/W3KRfPOZhoeBJfZPgVeGKeKrkQBh5dLXl25Ny3pc4/1fkTdbvFqFQgbxWeYD0hXulhQ0pYiM1jG547fcbMQpVnHTZEn9W3ljsCzwHxCdVteNHIZvQa7/7cC7nV6zHIfyFP9EXjFa7YxKAVqPP4bxhhoLWW+z9JyCb6M/MREg59/RlmmXbmneIybB+YC/ay+yrffqEddDzwGvKxxDmzhc0tc80XVgblqFfgjwAAPubcGjAOl1wAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-undo {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4em8Dh0gAAAatJREFUWMPt1rFrFFEQBvDfGhACASshkL/ALpWVrSAKEQV5sIULWlgZNSgIFkGIVQ412gkBt1lYLERREFJqJRaW1oHAoZUQsDqwecWy7N3tbe6C4H2wxc682Zn3zTfvLXPM8b8j6RqYF+UCzsfnHBawGt3fMcAX7GEvS8NgKgXkRbmMxwg41TLsN0psZmnodyogL8pFPMIdLHUk7hA7eJKl4U/rAuKu3+HslFr/FZezNPSTFslX8QErDe4DvMVH/Iq9F7VwGpdwZUjsPtaSFjv/1vCBPjaxO0xcNbHejLpZrrlvJCMCT+JzA+2fcC1Lw+GE4l3CG1yIptfjCtiKoqtiJ0vD3aM0Py/K57iIMxgkQxat4EdN7e9xdRzlk+LEEPvDWvIDXJ928sYxjL36icWK+VaWhlezOIqbGFirJd/H7szugrwoX+D2BDEvszSsT5OBdfRaru/F9dPXQF6U27g/KnmWhgctxqyzBrZGMNGL/rHI0nDkKXiKexXTsywNGx0OnFbFNk3BRoWJXnw//j+ivCi32/S8CxPVNiWOAdUiJtXITIqYY45/Cn8B2D97FYW2H+IAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-wheel-pan {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgswOmEYWAAABddJREFUWMO9l09oXNcVxn/n3vc0fzRjj2RHyIZ6ERuy6CarxJtS0pQSCsXNpqGFWK5tTHAwyqIGN7VdEts1LV04BEoxdlJnUbfNogtDCYWQRZOSxtAUCoFiJY0pWJVUjeTKM9LMe+9+Xcyb8ZMychuofeHCffeee7/vnXvOuefYlV/+mv932//tb91z/Y2rvxmMHQ+4FcEfOIGN4A+UwDDwoQScc7vM7AIwB8yZ2QXn3K77Ab6OgJnVgeOSbkqaBiaACUnTkm4Cx3OZzwf+qzcRQup1zNZ9RwDe+0YI4YKZTUn6zCGSMLOfAF/03r+QZdnyfwO+ePEiI6N1nPMgMDMkETLRbd2mXG8gCbd9YiIKIUxLKoLfBN7I+80+CUlTIYTp7RMT0b3Af37p8kh5y9gZcy4Fzt+5szqSaxkzUR7dwtrKMmaGW242d0t6vrD/He/90865o865o977p4F3Ctp4frnZ3L0Z+OryUrVSrZ0z8ZxhHjhcq1XPrS43q/0flDlK9XpPA2ma7gMeyvfPx3H8TJZlH4YQWiGEVpZlH8Zx/Awwn8s8lKbpvmq1ahvB641SXNk6dhLskNA2MIBtwKHK1vGTW8bKMRbAMgyPqWeETxUM8VSSJAv52JmZA0iSZMHMThWwnipXKp8hsLLcSaIR92oU8xjSayCQXotiHotG3Ku3m+0EOQwPQCDggMf7BzQajSs5eAk4B5zLx4O1vD2eJMmAQKliscgASJMw21pansFs1swQ/DNLmUmTMNuXX+taXHTDaj5OW612R1JZ0nFJJ/J+XFJ5aWmpA6S5bHV8fHsPHFU6q3pJCjtFxtrKMuXRLUUXXxdrRLazFOtUolZlsGhmACsgnHPTwJnCnjP5HMBKLotzxsTE9rgDL0t6LoriKsDIaB31ZEK+JxQJRHFUBR2NqLw8OTkZR0OC0ntm9k1JWU7OA4vD/mZ+YfElsANmNEKi75vztzB5M8uAr+bx48me88g757PQ1U5zNg52YH7hX8l6f+4Fi3c3BqHNmkI4YQOV2MGCNu9qHPYCewfzbrC+XSGcWEcgTRKA3wFfyzdDz5d+D3x9CIcfA4eBbQS9LscskgfLnHNPAnslvS/pbZDHLLPADpx9N9fqpSIBH8cxWZY9m6bpb4Ev5fN/iKLo2TRNgdx/eo8Wk5O7Ts/N/SOSdMjHdj4kmgkIEJLJzPZKetvMTkIvFLsR25Ml2gfuF5M7vnA66sdooJYkCSGERe/9VAjhzRxoKk3Tvg3U8nulVqvx8cyNpER2umM+SdOkbc5B8JhpqBdIgTRR24h+lpKen731aRIN7thscH9Zlv0d2F8YD2TIX7F2uw3A7ZWV1a0TYz9ca8cJZHRbuRuaDfUCw9/qJHamPOKToAwHtHN6lMvlSkH2o7wDMDo6WuGuQbbn5+YAKNcb3J5fSvrhtTY+vsOPuD1IOyRhMOkj9kSx29HfXB5RUnS964NT2+3vbGbxG9auO2cDNuV6A8NTb5TitBuOpQkfYD2vwOxgmvBB2g3Hto5X42EJyVsFlztbKpXGNgqVSqUxSWcLU2+tdToa9hasLjfPYlwGa+bTi8Dl1dvNsyvNtQQL9MO2w+HM7BqwlAtPdrvdq9773WAVsIr3fne3270KTOYyS2Z2bbXdHhogKmPj7YWF+VOSXs/v/9KdO+0fVBrjbRkgB/KIDBnYu9f/7D+ZmfmRxPd6qwB8YmZXcq1MAQ/nJhTM+OnDe/a8+PGNG9lm19V/D1Qw7HXZlcRa69+U6w38l5/4ipxzf5X0CPBILjcGPJH34pVcc8692FxcXLlXRnTwwH7+9P4f8aWe3fY59LIqo1NMyQBCCHNmdgx4BegUWefjDvCKmR0LIcz9L8nokSNH+PRvH4HC3YQ098pSbevg24qlmZmNmtmjkg4D3+j/tZldkvQXSa3PW5ptlpL3ZaIN99OS9F7+IgKUgSyEkNyv2nHT7DZX0dr9rpjua2l2r4rogRAYVqZvnPsPqVnpEXjEaB4AAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-wheel-zoom {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgskILvMJQAABTtJREFUWMPdl1+MXVUVxn/fPvf2zrSFmUKnoBCUdjRoVaIxEpO2JhilMYBCtBQS2hejpg1Uo2NUrIFAoyGmtiE+GHwQGtvQJhqDmKYRBv+URFsFDNCSptH60DJTO3dKnX/33rM/H7rvsDu9M20fDMaVnGTvtb69z7fWXmvtc/TEzqd4OyXwNsv/FwFJQVI/sA14SZKRLOlPkr5TrVYXHz70quYkEEK4TtI2YAgYkrQthHDdhV5uuw+43/ZrwCbgRttgY/tjtrc0m83X3/f+D6ydnJhYcB4BSZcBA7aP2d4ELAGW2N5k+xgwkDB0IH19CGGH7R8B1aQeAf4KvAw0ku4K2zu7uru3ApdPEyiKohd4TNKjtjt5h6RHgccSNrddbvuHtm9Jqoak7xVF8WFgdavV+pSk5cCObNmXgK++85prCj3z28HKqZMnH7D9YAY4BvwujT8BvCuL1INX9vVt+dfwcCvNb7f9q2RuSfrGvWu/sL2Nf3LX7pzvj4ENSGBPVarVd4fRkZFltjdmoMGiKO4IIWwIIWwoiuIOYDDzeOPoyMiyFLkum7WJCMDztrcrTTrIRuAQZ6NcK1utL4dWq/VZoC8BhqvV6l1lWb4YYxyLMY6VZflitVq9CxhOmL60hhCKeYiV7WMKIXw9jT1HpXw3c+bOAKzOjJubzebJrKQCQLPZPClpc7bP6rMYKtjXth2OMf7tIkr11Wz8oQDc1Fb09vY+kQw1YAuwJY2nbUluAnCWpKkaFl6IQIzxivaR2SYA89sJVK/Xp2x32R6w/a30DNjuqtfrU0ArYecDCEqgLqm94T0dEm9mBG7PxkdDlkBnkhebgIezNQ8nHcCZPL9ijE1Jf/bZZoPtzbavmqNZLbf9tSxq+yoduuJ+SZ+zXSZyBXCqU+d8fvC5yRUrV+0G2j3g2hDCLyXd/+Su3QdnvP/zCuH72LWsgf2k0oHlH2c2odlkxcpVEdgr6aDtjyb8x20/J+mA7T9I6rL9SWA5dne2/GdXLl58qNJh398An85yTMA+4DOz8Dgu6Zu2dwJXJ91ltm8Gbp7Fgb+EEB4aHhpq5CEtACqVyr3AC0AlPS8k3TSmQ2YPhhBuS/1/LpmS9JTtNTHGfwBU2uUALARotVqniqJYH2Pck85pfavVaufAwnQvnHc0McaDKVptebN94QAnJB0EdtjekydyZXqjs/0ZgLIs/w6sy8bnYGYJ63pgERKC05JutT1kOwITwL9tvzlzUQUYB+Zjs2DBgu6xsbGJZHstByZbezregcBXeCsEz1bnzXt5anLyzLq71zDLxTRdVgemdx0fv2e2w5thO5DbiqL4oKT3ZKpnpyYnz+SY2ZpTAPZmJfdIrVZbNBNUq9UW2X4kU+2dcf53Aj1pj2PA7y/6m1DS00A9za9uNBq7iqJYBuoGdRdFsazRaOzKSqye1rTbaa/tlbYrqXQP2X4FIA9/J1l39xrC0v7+w5IeB8XkwS1lWe6TGJAYKMty31tfO4qSHl/a3384I3CDpI+kzC4lnRfrue6GytEjR8oQwlY73gC0L4qlth/q0M1/LYWtR48cKQF6enrC6dOnVwGLEpnxnp7en4+O1i/tszzGOCTpPmB7ahb57QUwBWyXdF+McWg6MScmuoA8OX8xOlpvXGz422XYTsB/SnpA0h7bX5R0WzI9HUL4qe2XbI+dk3xl+V7gxoztD5jRI+YK/zkEEokx2/uB/RdzIfUtueqVN04cXwF8G3iHY3z9Urw/j8ClyhsnjrcS2Vv/J/8NLxT+/zqBTkcxU/cfEkyEAu3kmjAAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-box-edit {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4QfHjM1QAAAGRJREFUWMNjXLhsJcNAAiaGAQYsDAwM/+lsJ+OgCwGsLqMB+D8o08CoA0YdMOqAUQewDFQdMBoFIyoN/B/U7YFRB7DQIc7xyo9GwbBMA4xDqhxgISH1klXbDYk0QOseEeOgDgEAIS0JQleje6IAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-freehand-draw {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADTElEQVRYCeWWTWwMYRjH/88721X1lZJIGxJxcEE4OOiBgzjXWh8TJKR76kWacOBGxdEJIdk4VChZI/phidRBHMRRIr7DSUiaSCRFRM3u88gz+o7Z6bBTdjmYZPf9eJ55fv/5zzvvDPC/H9QsA66Olo9Ga+/MdR+Ljm2/KQIULsz9FqItGdOfJKLhApLgVkiSCGODjWit7QpKWy+TNrFeXvzKVUT8NiTVaIgDcbiCFJ7GiT8WkARXAdYBK0Lbhi/CenArRNskuM7/tgNp4ArQ42dwjf3WY5gWTqC7O/NbNn2Xkfw/YwdSw/We14HP2IEZwX+y9cZ9SH0LmgFP7UCz4KkENBNeV0Cz4b8U8DfgKiDxMWwUXETqLvJpCQpXZfawbzS7t9v5pL19cHBwfja7YA0y/lyCM0+E5hv5+piZXwKYcF23as+37bTXsQVqgkL0p/34fHR7DcBtbetFsBmGDwMOJCggYG55yw7dMlk6DuC1Bdu2RsCU9TYWQq2IoGbsreZ5NzvEqfSBsIsIy8OTbcdgiRHeh4o8AFAEwDakbY2AaCCpH7V9aGhoUUUy3UyVbkPYFuYLDlUZH8XBpwxkK0Dbgxg5HcVi0ent7a0RULMIozaHBSMfF9b2SzdutFcFB2FkwMIJOG6qfteXOa1nHZ48tyefuwyfT9s6wtzZ3t7eZse2DR2I228TtHXzuWCx9g8MtK5cuHCZTH4tiHEOa4xFngvTyS8f35d6enomiCi4/foEXBkZaQuukChL4FYA2Whd7YcC4gEdW3CpdL3LtGAVCVYJywEyTpAuJKeMOKXZs/Bw947C50KhUFOG4cwz35cjWNBlHGeD53n3xsfHP/T19U1qciggar8Fa4I3PHobIotBWBtc2hSiChyZxVzM53Pv7FVH6Tp3uVy+g0r1ImD2GjIrQGYIxjnfuXTZGICS5k/bBwJoubwEFX4TLah9EXomJGMA3za+f9913Yl4TnzsDQ+vE6YTZOjHh4ngibstt1pzQwd04F0bPStEBpXqRoBeQ/AKghfBnOEKgS+Q7z91Xfdz/HGKg8Ox7z8iYD9z6wqTkZFgnvhMGP9VZ2or1XVkPM9z0mytSfVsHa1RLBZbLoyNzUnK+ydz3wC6I9x+lwbngwAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-poly-draw {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjglo9eZgwAAAc5JREFUWMPt1zFrU1EUB/DfS4OmVTGDIChCP4BgnQXRxVHqIJUupp9AB8VBQcRBQUXIB9DWQoMRiXZzcnQSA34A7aAuHSJKkgo2LvfBrU3aJnlYkBy4vHcP557zP/9z3r33JdXa647N0kHSZd5Nn0rSxc8G3cXp85sMcnZZ8vge3osZ+l3vB8CWFA0iL14t79h210swAjACMAIwAjACkB90D/8/GchI9ve4nPwTBh5E9ws7OepzGWb9EddSn51Op9ZstadSg4VK1UKlKkmSDSMLALewiuNh/hVJq71Wxttmqz0dG88vPc+MgWP4grvYG3SLOBrZFFFrttqPe4HIDxh4GSei+98iSlusuYopXEAjBtEPA3tQwUpwluAbDm4TPJUz+BTW9l2Ce6G7L0X/Bw8D3T/7SKKIDzHg7QCcxjvcQAEtXAnrrg/RP0/DKPbqgcN4iVOR7gcO4dcQgRuoh7HSqwlP4n20m63jJu5n8MkWMYfP3UowhzdR8FU8w9iQwevBdyq3/27CMRzAE5yLuvsRLg+ZcR1nJ8YL81HWJUzGAPaFZwe/Q5MdyYDyNHgjzO90YyGHtVDncuiJchaHw8R4oREFV5qdiVmYLM3OgD9k5209/atmIAAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-point-draw {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEiERGWPELgAAA4RJREFUWMO1lr1uG1cQhb9ztdRSP7AF1QxgwKlcuZSqRC9gWUUUINWqTh5AnaFOnVPEteQmRuhCURqWsSqqc9IolREXdEvQBElxtdw7KURSFEVKu4w8wAKLxdw9Z+bMnRmZGXfZ29//II8th4WwGVNyIoQLYB5vxA9Caq04iUd9A+7ZlsNC2I7TdSd2hZXMJKlnTqp9jtl/GBaqoyQ0noFKpUIzBicYYc+DEFpxkglc4oVJa5gvDn8v1xV2irG3FM4NSVwjUKlUaMcpJhCGmSEJQ6QGD8M5WnHCd8+f3QCXpPLx8WNwv0j6Bm9FMK7FJ3WBE+R/2t7c/GBmFvSBrzRTCsyTDjXrxUgEMtpxynJYmJoBJ4VAybwVARgvL7Oik0okCodnKpVKX7P0leiVMb0VvbJT+upznK4vh0GIeQwwQStJkHQD3MwsCALTJRG7Qrdrj5m/djgYaIa0hlkRdJk26XEgC9txurccBtVW3IudBImmZuACUP+ZlIDBt9FKcubYNTcAH/X0RYM1E7utJPlqe+uZzPxUcEkiSS4sTT95n15Mud0xWC0o2PAWOCdK3KYZlFxfM+tHOcnMzNr1es18ug+cgsVjP4yBU/Ppfrter1m/+l0+zYygML1xRVHU7TSb1cSzBzoBzszsH+AMdJJ49jrNZjWKou6wBnwOzcyndBpNbuueURR1Dw8Pq35p9cc5p/Dy9Dypt7jXrtdGwQECS9NPhr6Gq6txUzNigE6zydLK6lTw12/KT4FGFEUfJX2YJNONq5tVs4ODA7sD/DnwJ/BoADZuE3tHFs12dna6d4C/BI6AlbyzI8ii2TTw12/KK33gb2cdXsNZoAntbZC2SeO4c9592k/5eNQbiwvFd1kJuFGwLJr1wSPg/SwpvyFBHufOeXcFeAlE97U/uCxOY+P3b+Bn4B3Q+L8EdJfD4a+/AbC4UBzPxiPg3wlHZquB28Cn2IuR9x3gr3uV4DbwfvSDOvi4uFA8BDZmIRHkjHpS9Ht9iRqd8+5G3g05mAGcQbsdiX5QJ428G7Kygo8XYdb1/K4NWVmjzkNge2sz84bs+ELmpDDLtqWsNZBXgvmw8CTtpWVMT7x5YWBjLARnwZfKQNYN2U2LPvrh+5nBt7c2M2/It9bArCTKR8eZN+SJ13AScPnoODeRdqNenH+wul5w2gUr2WUjMFAt8bZ/0axX/wNnv4H8vTFb1QAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .bk-tool-icon-poly-edit {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gELFi46qJmxxAAABV9JREFUWMOdl19vFFUYxn9n9u9sCyylUIzWUoMQBAWCMdEEIt6xIRQSLIEKtvHe6AcA4yeQb7CAUNJy0daLeomJN8SEULAC2kBBapBKoLvbmdl/c14vdmY7u91tF95kknPOnHmf95znPc97Ro2OTeBbdjFDT3c32ZxVHUOE9kSMB0/m6ExuoJn1H+ur6Y+OTfD50SMN5168OgrAlyf7CfuD+z7+iDs3p8hkLUQ0iFQ/yFl5Nm/qonfHVva+s32Zw9GxCYILsZ08tpNfBhbs+1YN4OH9+7huGdECSBVfqUosbsllfmauBqiR+cCNwOr7AEo8pPHJnymXykhg5fUWjoQpl0vVvhZhbSzGoUOHqgBlt6B6uruj2Zy1E9jo0fhfeyL2x4Mnc8VErK0KUEOB64JSyptfG4RSytsJjUJVxw2lsFy3urL9nx1Qd25ObctkrVMi+jQivd7U2ZyV/3Hzpq7h3h1b/7p9Y0o8v8rwAbTWrGpSocN/FGDlbAI0Rl23PCBan0Ok158H9Ipwzi25A/Mzc9Gl/BYx/E4kYqC1NKRARNAaDCNUM27Z+Zr+ouXs0q4+LSLBHPYCFkTkC6uU39kwCdsS7WRKmaYUiAhdnZ3MPX2K4+QjQI+C94A93rMzm8ltMwyDeDzWjMZeEb2pYQDdW3vITU2jtUZ5QThOPgm8C7wP7J15OPsBsB3oWpGnVWisCeDS1VHj4vBI92+/3tgB7Ab2AruAXiDBK5oIOkhtkEYRNRuJhObrd8Dl9ewf4D5wG7hVLpen29vb5wzD+BrkbBMaL3d1dk5nsrnlFDTTFWAWmAZueWD3gCemGde2k2fw1Al1YXhEvjozoO49eczdqekrWmsc2zlrmvEKOGoW1GUjFLqSk2KpJrCLwyMCPAP+BO54QL8DM6YZX/ClsP9YnwKkXnIBP4jdIpJRpdJTCYdMwwi98KU0Hjc/dDILNyUcwTCWdOSMJ0TRmBktGRhLugu0xyLk7CIqVNm+0bGJptl1YXikD0grpY4Rjc4a8Fbgdab/6OGbAJeCUuyJnnHmZH9pbSyGuBXV8NUwlUpR1EWyixmSyTWEwqGlJ2Swbo2JXbAAfgDGgGQA9I1A9t1tlq0AxrXxn0ilUpw4fhQqYkH/sT41OTnJJwf2s6FjI5mshdYa7bqVR2uezr9MJmJt14FvGrh/O9D+e6UkM/xyCuCqEKCYnJyUTKFQrZDHjxzGshwWLQcRsOz8Hi85P23id0ug/XilAMLBmm4tPGdoaKjSH5+oAGrhwvBI9SjZTn4QSK9yenoD7dlrExPoJlXW8G8ytpNHxRKk02lGxsdRKFwXLNvx5yY94HQLGhGk4LFCYQSqaE0AwWM1eOoEbR0dKBSW7bC4mKuffxs4D/wCLKwQQPAUzIkslfp6cVomROWSolh0GjldAM4nzDi2k9/i5UAzC9aKfwNJ3zgJg9YEvN6+C7SHgKm69+sD7RfNnKTTaZRPQfAut4oFV//IS7gkcB34VlVo8kGzphlfB+DU+TfNGBpZtRastvrvARJmfMF28ge9sc2B9/PNnCilMIDwK6y8/ow/Ai4kvILTljAXvDvEvrqKSUs60KolzPjBxspavQD2tKqCAGF/Ba+xE/Wbilu54wZV8NEKF5fXzQHl/bh4hUsE0WAXSlDMYcQSrQXgCmsTseXHsJkNnjqBFGwKJaHsKlxtUHYVhbLCzr1kaOA4bcn1y1Swmb+iLpJKpVrfgdpfsiVVCYcgluwgnU7jEgJ4s5UkLFtWYyHyEg0/N1q1tmQH+YXnAMFr97Nmv3p+0QsHQRsF8qpBOE5+rb9Nkaj50tVQKjqh4OU3GNL/1/So3vuUgbAAAAAASUVORK5CYII=\");\\n}\\n.bk-root .bk-tool-icon-line-edit {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAG/3pUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjarVdpknSpDfzPKXwEJBDLccQW4Rv4+E4BtXR198znCdeLLijgQUoppWg3//Pv5f6FDwefXJRcUk3J4xNrrKzoFH8+pyUf9/f+8J3C7y/j7jnBGApow/mZ5l2vGJfXCzne8fZ13OV+9yl3ozvx2DDYyXbauCDvRoHPON3frl5Imt7MuX8hH0seiz9/xwxnDMFgYMczUPD7m89J4fwp/iK+OVRbiMf6gm8K4bv/3NN1Pzjw2fvwn+93PLzccTZ6mJU+/HTHSX723/bSOyLi58n8jmiqz/798+a/tUZZax7rNCKOakzXqIcpu4eFDe483kh4Mv4E/byfiqd49R2OHzC1Od/woxLD44siDVJaNHfbqQNi5MkZLXPnsMdKyFy5gwwCHXhocXahhhEK+OhgLmCYn1hon1vtPBxWcPIgrGTCZrR5fHvc58A/fb5stJaFOZEvT18BF1t8AYYxZ99YBUJoXZ/K9i+50/jPjxEbwKBsNxcYqL6dLZrQK7bC5jl4cVga/Ql5yuNuABfhbAEYCmDAJwpCiXxmzkTwYwE/CuQcIjcwQOKEB1ByDCGBnMJ2Nt7JtNey8BmGvIAICSlkUFODgqwYJSbkW0EIqZMgUUSSZClSRVNIMUlKKSfTKc0hxyw55ZxLrllLKLFISSWXUmrRyjVAxsTVVHMttVZVHKpRsZdivWKgcQstNmmp5VZabdoRPj126annXnrtOniEAQlwI408yqhDJ02E0oxTZpp5llmnLsTaCisuWWnlVVZd+mTtsvqVtU/m/po1uqzxJsrW5RdrGM75sQWZnIhxBsY4EhjPxgACmo0zXyhGNuaMM185uBCEgVKMnEHGGBiMk1gWPbl7Mfcrbw7e/V9545+Yc0bd/4M5Z9S9Mfedtx9YG7rlNmyCLAvhUyhkQPrNhvO5AJFnrZIR0plaLL5liQYdDi5TubaIokFDkmoFEB8CzxZVxemssDqthPhUblPgW1iQU5g6XwNwyVI7bUFRm035iNziMkgWvEso2SXnsJfveR0Y4SlVF8YWC1pVQhJiQa8JwDvlMNIxAfq3F7GDObHU1LlhzlZaWwNp6BvACxAgInGXlllMGZCpEnZHrGA6GM2718xuFcz7YdUQxzEEfjdWz4GlkcwaonT0pgA6mB25grPILtnSMhuCpsGhmMU6uJbixJs4lbKHqh+wos1jW2rchyGRCIvN9MXu+KAmMSfAlIKVvi/tybhCPJZCu2Ow9pLdyo427+X2ovMBmKNu8PA0zgl3fS0PB1DWWkVYB47bkyiJHhkFPzTzCjzn4Dq1mqoIWzCmcDGsHQmQAQdEHsixK1IXESd5rLU7THVJNV8obHS8sZeN0G5Jdt5pQTVKCCbgK1hItTS8o92iEZpuWJ/oC2r/0+zTmhvFXoaMVKRe27altDtid6OvG1hENVwBnC61KKugNoemOiPCCNb3GoHAZOFuDxxPsD+07nbSPcr/o1Zmc4jARhotrA5F5ZcjP9rPk90vR8A+k028A+8+5wKlHVID542sMzMCuXktkRzUCpE+xCBZywjNcJITx0II9x5948CekBl4XaC5OCX2nCyObdwN3HwQh5DWL/BBEkhDYHn/vpXNgZkVTZs8rj+HO8JFC6qvDVhgAEQSYCDyC86rMhG1WPzAVB9ZldDWG6EzDcFiqJBDvFS8mXDv3SK2LPoguVB2kwUx7UL5KqZWiEzocsbvSjNnaYDNtcYJuA5cDcsrvHd6yCxGjqvl9+wh3Qh8Kc9py8sNW8ncU8qwxdPj1qIGfrPqlXeoS4/JLa/LwRLTCtxuSoZUT+2Su6kXW3QNacYQbId6NUKVbROpviybFSPQQL9lhB2MamEnFyB9Y+hrG1+xBg+L0QG2TZdTdlcsBdq9oHdt9Bu5/IM9+Nfh1AwrSqlboTA6Bgq568A7UfbaMrZjoQZhQphofvNw93+bN+5X7FYKBgLmRid+tSdV6c02A4R0cHwKobmoMt5+6WI9XNISFIywpf6RMd5/a91vE78FzVHIFmxud4woyJx76OMTCa4yhgN3iJO2VfRPFMv9sYTxFzU+1eWeYS52pwOoSJldZY6koib4P1O427rbeUrNZfu44hWjz5ZSuu/vKPpimoXbLkfxWSPetvxDWG5jQSaZCxA3ad+p6rlttDhK+YwwK1LHVe0drDtorc5vnQ1247g58vewDtU7L3DRwrG4dhCUDRKKOtYr2dXHtpt+33d1WZmfkAHdl7Q8ENF+CNgB+nOw29n5F7SeNo/ckbu4laLTCdqJLHjmhJbKzmrCEX7zULrhefuHmu0V/1nbP1pnb6FaT7sOxn4pvWkfrYhYtCeJ4Xv+kOXrroIs1eHWXN1/AfzaY94ms5vaAAABg2lDQ1BJQ0MgcHJvZmlsZQAAeJx9kT1Iw0AcxV/TSkUqDnYQUchQnSyIijhqFYpQIdQKrTqYXPoFTRqSFBdHwbXg4Mdi1cHFWVcHV0EQ/ABxcnRSdJES/5cUWsR4cNyPd/ced+8AoVFhmhUaBzTdNtPJhJjNrYrhV4QwjAgGIMrMMuYkKQXf8XWPAF/v4jzL/9yfo1fNWwwIiMSzzDBt4g3i6U3b4LxPHGUlWSU+Jx4z6YLEj1xXPH7jXHRZ4JlRM5OeJ44Si8UOVjqYlUyNeIo4pmo65QtZj1XOW5y1So217slfGMnrK8tcpzmEJBaxBAkiFNRQRgU24rTqpFhI037Cxz/o+iVyKeQqg5FjAVVokF0/+B/87tYqTE54SZEE0PXiOB8jQHgXaNYd5/vYcZonQPAZuNLb/moDmPkkvd7WYkdA3zZwcd3WlD3gcgcYeDJkU3alIE2hUADez+ibckD/LdCz5vXW2sfpA5ChrlI3wMEhMFqk7HWfd3d39vbvmVZ/P2aecqIM1FFZAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AQdDBkQmV+argAABM5JREFUWMOtl9trHFUcxz9n9jYzm7Tb9JIWGtqUllLwVgRBQWl90S6lTaGmF6E2/4H+A4r+A0offdlWodL4kEZw9bG+iC9iKqLF0os0EBq02dtcdmdnfj7szGZ2M5vulv5g4JwzZ873+7ufUfMLi0RSa1TZNzVFrW511xBhzMxx79EyOwrbGSSzZ073zOcXFnlv5lTi3mvfzAPwwYVZ0tHiq6+/xu+/LlGtWYgEINL9oG657N41yfSRgxw9cHjDgfMLi8QVsR0X23E3gMXnkXQJ3L9zB99vI4EA0sVXqsPF93xW7y73ACVJBJwE1j8HUBIi3Sz/QNtrIzHN+yWdSdNue915IMKWXI4TJ050Adp+U+2bmkrV6tZeYAXwEJExMyf3Hi0rM5fvAvS4wPdBKRW6vZeEUiq0RIBCddddpymu0+rRbPvEzkPVmmWLBA1EdGAbYNctt7V712QwfeSgd/uXJQnPVVoEEAQBTxXpuEMELNtNNFW1WrsrQdBCRImQEeE/wBUh53v+7tW7y5n1+BZRIoJSioXvy3itdgclURSZTBrP87AdV57G1TT0d4GPgC+Bw8Ca7bifATsTgzBvjlH1qgNdICJM7tjB8soKw4jtuD+Gw3c229e1wF+P/uHPpT86rhBBRHActwAcAl4EjgIvAYcFJnlOoq5dv6EBU8AR4OUQ6AVgGjATwuC5YUdZ4A+z+1mBTUM/AKwqpZSIpPfu2VP7+/6DYEMMPE9N83lzq23ZWwxDd4GaQnmgUloqperSCpKC8HGCXz8G7NANU8CWUKPzsUDbyLPVyjYC39e0VMZx3Ccoha4b4lQqbUlnsBqNWCXpEMgKfA38DNSBcdPQr4zlMtTtFiqlulmQmJv9ks2idUZGZMjZmZMAfBUvxWHR0y5dmPV2FcbPG9ncFdPQS3nTuAJQLBZpBS1qjSqFwjipdGr9SWlsHTewm9ZmnngMKAaV9nBd+/bmdxSLRc6dnemm3+yZ06pcLvPGW2+yfWIn1ZpFEAQEvt95goCV1TXMXH4zAt4woaRF7RTAVylAUS6Xpdpsdjvk2VMnsSyHhuVEZTh+xgywBhwLfZIdKRfj7dWqPGFubq7T428ukslkaHttLNsZ9P3nwIfh+DhwS4EO9DA0zByBCE2n1fPxpQuznSCaX1js9nFp2pjbtqGhobQ0jUY9CbgALERah3IM+El1rNqTaqaph5W1uYGAFrfA5YvnyE9MoFBYtjMI/BXgQR/4pqVDZL3V9/cYrX+x7SnsXh/H5TLwW2iBQbVLNgn65CDsrSPOIJOXwmdQ4fRHrZilUqmXwNXrNzbbfxv4ArgFVBLeJ95oDEMHwHHcvvUcRqEwuBf0SSUEB9gfxsAgAkO1kcj/WvwKPaR8EhvPAUvRtdIMtR1FtBH37w8DEeChaehXw/xfAnzHcVOjEkhHrIe0Qlz7T8PuWLEd9+2w9KphgUUgQJ7JAgAPDT13NTrJyOYqIilrlEwQv/NPMTSByxfPIU37eCqtq2zWmPYDjbavaLYVdn2NuffPjqRJK2hRLBaHzoK+X7L1QE+nIFeYoFQqkTVMaTn2UOe1LWtwEJqGzqgRnS9M4Fb+3XBJGfSrFzW9dBw0icioJBzHzUXdMJM18APwWo6Kmy1O6X+V8UHDotBqogAAAABJRU5ErkJggg==\");\\n}\\n'},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),s=t(72),o=t(303),l=n.__importStar(t(282));class h{constructor(t,e={}){this.items=t,this.options=e,this.el=s.div(),this._open=!1,this._item_click=t=>{var e;null===(e=this.items[t])||void 0===e||e.handler(),this.hide()},this._on_mousedown=t=>{var e,i;const{target:n}=t;n instanceof Node&&this.el.contains(n)||(null===(i=(e=this.options).prevent_hide)||void 0===i?void 0:i.call(e,t))||this.hide()},this._on_keydown=t=>{t.keyCode==s.Keys.Esc&&this.hide()},this._on_blur=()=>{this.hide()},s.undisplay(this.el)}get is_open(){return this._open}get can_open(){return 0!=this.items.length}remove(){s.remove(this.el),this._unlisten()}_listen(){document.addEventListener(\"mousedown\",this._on_mousedown),document.addEventListener(\"keydown\",this._on_keydown),window.addEventListener(\"blur\",this._on_blur)}_unlisten(){document.removeEventListener(\"mousedown\",this._on_mousedown),document.removeEventListener(\"keydown\",this._on_keydown),window.removeEventListener(\"blur\",this._on_blur)}_position(t){const e=this.el.parentElement;if(null!=e){const i=e.getBoundingClientRect();this.el.style.left=null!=t.left?t.left-i.left+\"px\":\"\",this.el.style.top=null!=t.top?t.top-i.top+\"px\":\"\",this.el.style.right=null!=t.right?i.right-t.right+\"px\":\"\",this.el.style.bottom=null!=t.bottom?i.bottom-t.bottom+\"px\":\"\"}}render(){var t,e;s.empty(this.el,!0);const i=null!==(t=this.options.orientation)&&void 0!==t?t:\"vertical\";s.classes(this.el).add(\"bk-context-menu\",\"bk-\"+i);for(const[t,i]of o.enumerate(this.items)){let n;if(null==t)n=s.div({class:l.bk_divider});else{if(null!=t.if&&!t.if())continue;{const i=null!=t.icon?s.div({class:[\"bk-menu-icon\",t.icon]}):null;n=s.div({class:(null===(e=t.active)||void 0===e?void 0:e.call(t))?\"bk-active\":null,title:t.tooltip},i,t.label)}}n.addEventListener(\"click\",()=>this._item_click(i)),this.el.appendChild(n)}}show(t){if(0!=this.items.length&&!this._open){if(this.render(),0==this.el.children.length)return;this._position(null!=t?t:{left:0,top:0}),s.display(this.el),this._listen(),this._open=!0}}hide(){this._open&&(this._open=!1,this._unlisten(),s.undisplay(this.el))}toggle(t){this._open?this.hide():this.show(t)}}i.ContextMenu=h,h.__name__=\"ContextMenu\"},\n      function _(e,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});const t=e(9);function*r(e,n){const o=e.length;if(n>o)return;const r=t.range(n);for(yield r.map(n=>e[n]);;){let f;for(const e of t.reversed(t.range(n)))if(r[e]!=e+o-n){f=e;break}if(null==f)return;r[f]+=1;for(const e of t.range(f+1,n))r[e]=r[e-1]+1;yield r.map(n=>e[n])}}o.enumerate=function*(e){let n=0;for(const o of e)yield[o,n++]},o.combinations=r,o.subsets=function*(e){for(const n of t.range(e.length+1))yield*r(e,n)}},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(296),i=e(173),s=e(72);class c extends o.ButtonToolButtonView{render(){super.render(),s.classes(this.el).toggle(i.bk_active,this.model.active)}_clicked(){const{active:e}=this.model;this.model.active=!e}}n.OnOffButtonView=c,c.__name__=\"OnOffButtonView\"},\n      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),s=t(19),l=t(72),n=t(115),a=i.__importStar(t(18)),r=t(78),_=t(9),c=t(13),h=t(8),u=t(81),v=t(306),d=t(307),b=t(308),p=t(295),g=t(299),f=t(310),m=t(173),w=i.__importDefault(t(300)),y=i.__importDefault(t(311));class T extends u.Model{constructor(t){super(t)}static init_ToolbarViewModel(){this.define({_visible:[a.Any,null],autohide:[a.Boolean,!1]})}get visible(){return!this.autohide||null!=this._visible&&this._visible}}e.ToolbarViewModel=T,T.__name__=\"ToolbarViewModel\",T.init_ToolbarViewModel();class k extends r.DOMView{initialize(){super.initialize(),this._tool_button_views=new Map,this._toolbar_view_model=new T({autohide:this.model.autohide})}async lazy_initialize(){await this._build_tool_button_views()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.tools.change,async()=>{await this._build_tool_button_views(),this.render()}),this.connect(this.model.properties.autohide.change,()=>{this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change()}),this.connect(this._toolbar_view_model.properties._visible.change,()=>this._on_visible_change())}styles(){return[...super.styles(),w.default,y.default]}remove(){n.remove_views(this._tool_button_views),super.remove()}async _build_tool_button_views(){const t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;await n.build_views(this._tool_button_views,t,{parent:this},t=>t.button_view)}set_visibility(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)}_on_visible_change(){const t=this._toolbar_view_model.visible,o=g.bk_toolbar_hidden;this.el.classList.contains(o)&&t?this.el.classList.remove(o):t||this.el.classList.add(o)}render(){if(l.empty(this.el),this.el.classList.add(g.bk_toolbar),this.el.classList.add(m.bk_side(this.model.toolbar_location)),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){const t=\"grey\"===this.model.logo?f.bk_grey:null,o=l.a({href:\"https://bokeh.org/\",target:\"_blank\",class:[f.bk_logo,f.bk_logo_small,t]});this.el.appendChild(o)}for(const[,t]of this._tool_button_views)t.render();const t=[],o=t=>this._tool_button_views.get(t).el,{gestures:e}=this.model;for(const i of c.values(e))t.push(i.tools.map(o));t.push(this.model.actions.map(o)),t.push(this.model.inspectors.filter(t=>t.toggleable).map(o));for(const o of t)if(0!==o.length){const t=l.div({class:g.bk_button_bar},o);this.el.appendChild(t)}}update_layout(){}update_position(){}after_layout(){this._has_finished=!0}}function M(){return{pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}e.ToolbarBaseView=k,k.__name__=\"ToolbarBaseView\";class B extends u.Model{constructor(t){super(t)}static init_ToolbarBase(){this.prototype.default_view=k,this.define({tools:[a.Array,[]],logo:[a.Logo,\"normal\"],autohide:[a.Boolean,!1]}),this.internal({gestures:[a.Any,M],actions:[a.Array,[]],inspectors:[a.Array,[]],help:[a.Array,[]],toolbar_location:[a.Location,\"right\"]})}initialize(){super.initialize(),this._init_tools()}_init_tools(){const t=function(t,o){if(t.length!=o.length)return!0;const e=new Set(o.map(t=>t.id));return _.some(t,t=>!e.has(t.id))},o=this.tools.filter(t=>t instanceof p.InspectTool);t(this.inspectors,o)&&(this.inspectors=o);const e=this.tools.filter(t=>t instanceof b.HelpTool);t(this.help,e)&&(this.help=e);const i=this.tools.filter(t=>t instanceof d.ActionTool);t(this.actions,i)&&(this.actions=i);const l=(t,o)=>{t in this.gestures||s.logger.warn(`Toolbar: unknown event type '${t}' for tool: ${o}`)},n={pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}};for(const t of this.tools)if(t instanceof v.GestureTool&&t.event_type)if(h.isString(t.event_type))n[t.event_type].tools.push(t),l(t.event_type,t);else{n.multi.tools.push(t);for(const o of t.event_type)l(o,t)}for(const o of Object.keys(n)){const e=this.gestures[o];t(e.tools,n[o].tools)&&(e.tools=n[o].tools),e.active&&_.every(e.tools,t=>t.id!=e.active.id)&&(e.active=null)}}get horizontal(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location}get vertical(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location}_active_change(t){const{event_type:o}=t;if(null==o)return;const e=h.isString(o)?[o]:o;for(const o of e)if(t.active){const e=this.gestures[o].active;null!=e&&t!=e&&(s.logger.debug(`Toolbar: deactivating tool: ${e} for event type '${o}'`),e.active=!1),this.gestures[o].active=t,s.logger.debug(`Toolbar: activating tool: ${t} for event type '${o}'`)}else this.gestures[o].active=null}}e.ToolbarBase=B,B.__name__=\"ToolbarBase\",B.init_ToolbarBase()},\n      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(296),n=e(304);class u extends s.ButtonToolView{}t.GestureToolView=u,u.__name__=\"GestureToolView\";class _ extends s.ButtonTool{constructor(e){super(e),this.button_view=n.OnOffButtonView}}t.GestureTool=_,_.__name__=\"GestureTool\"},\n      function _(o,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const e=o(296),i=o(15);class s extends e.ButtonToolButtonView{_clicked(){this.model.do.emit(void 0)}}n.ActionToolButtonView=s,s.__name__=\"ActionToolButtonView\";class c extends e.ButtonToolView{connect_signals(){super.connect_signals(),this.connect(this.model.do,o=>this.doit(o))}}n.ActionToolView=c,c.__name__=\"ActionToolView\";class l extends e.ButtonTool{constructor(o){super(o),this.button_view=s,this.do=new i.Signal(this,\"do\")}}n.ActionTool=l,l.__name__=\"ActionTool\"},\n      function _(o,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=o(1),l=o(307),s=i.__importStar(o(18)),n=o(309);class _ extends l.ActionToolView{doit(){window.open(this.model.redirect)}}t.HelpToolView=_,_.__name__=\"HelpToolView\";class r extends l.ActionTool{constructor(o){super(o),this.tool_name=\"Help\",this.icon=n.bk_tool_icon_help}static init_HelpTool(){this.prototype.default_view=_,this.define({help_tooltip:[s.String,\"Click the question mark to learn more about Bokeh plot tools.\"],redirect:[s.String,\"https://docs.bokeh.org/en/latest/docs/user_guide/tools.html\"]}),this.register_alias(\"help\",()=>new r)}get tooltip(){return this.help_tooltip}}t.HelpTool=r,r.__name__=\"HelpTool\",r.init_HelpTool()},\n      function _(o,_,l){Object.defineProperty(l,\"__esModule\",{value:!0}),l.bk_tool_icon_box_select=\"bk-tool-icon-box-select\",l.bk_tool_icon_box_zoom=\"bk-tool-icon-box-zoom\",l.bk_tool_icon_zoom_in=\"bk-tool-icon-zoom-in\",l.bk_tool_icon_zoom_out=\"bk-tool-icon-zoom-out\",l.bk_tool_icon_help=\"bk-tool-icon-help\",l.bk_tool_icon_hover=\"bk-tool-icon-hover\",l.bk_tool_icon_crosshair=\"bk-tool-icon-crosshair\",l.bk_tool_icon_lasso_select=\"bk-tool-icon-lasso-select\",l.bk_tool_icon_pan=\"bk-tool-icon-pan\",l.bk_tool_icon_xpan=\"bk-tool-icon-xpan\",l.bk_tool_icon_ypan=\"bk-tool-icon-ypan\",l.bk_tool_icon_range=\"bk-tool-icon-range\",l.bk_tool_icon_polygon_select=\"bk-tool-icon-polygon-select\",l.bk_tool_icon_redo=\"bk-tool-icon-redo\",l.bk_tool_icon_reset=\"bk-tool-icon-reset\",l.bk_tool_icon_save=\"bk-tool-icon-save\",l.bk_tool_icon_tap_select=\"bk-tool-icon-tap-select\",l.bk_tool_icon_undo=\"bk-tool-icon-undo\",l.bk_tool_icon_wheel_pan=\"bk-tool-icon-wheel-pan\",l.bk_tool_icon_wheel_zoom=\"bk-tool-icon-wheel-zoom\",l.bk_tool_icon_box_edit=\"bk-tool-icon-box-edit\",l.bk_tool_icon_freehand_draw=\"bk-tool-icon-freehand-draw\",l.bk_tool_icon_poly_draw=\"bk-tool-icon-poly-draw\",l.bk_tool_icon_point_draw=\"bk-tool-icon-point-draw\",l.bk_tool_icon_poly_edit=\"bk-tool-icon-poly-edit\",l.bk_tool_icon_line_edit=\"bk-tool-icon-line-edit\"},\n      function _(o,l,b){Object.defineProperty(b,\"__esModule\",{value:!0}),b.bk_logo=\"bk-logo\",b.bk_logo_notebook=\"bk-logo-notebook\",b.bk_logo_small=\"bk-logo-small\",b.bk_grey=\"bk-grey\"},\n      function _(l,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});o.default=\"\\n.bk-root .bk-logo {\\n  margin: 5px;\\n  position: relative;\\n  display: block;\\n  background-repeat: no-repeat;\\n}\\n.bk-root .bk-logo.bk-grey {\\n  filter: url(\\\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale\\\");\\n  /* Firefox 10+, Firefox on Android */\\n  filter: gray;\\n  /* IE6-9 */\\n  -webkit-filter: grayscale(100%);\\n  /* Chrome 19+, Safari 6+, Safari 6+ iOS */\\n}\\n.bk-root .bk-logo-small {\\n  width: 20px;\\n  height: 20px;\\n  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAOkSURBVDiNjZRtaJVlGMd/1/08zzln5zjP1LWcU9N0NkN8m2CYjpgQYQXqSs0I84OLIC0hkEKoPtiH3gmKoiJDU7QpLgoLjLIQCpEsNJ1vqUOdO7ppbuec5+V+rj4ctwzd8IIbbi6u+8f1539dt3A78eXC7QizUF7gyV1fD1Yqg4JWz84yffhm0qkFqBogB9rM8tZdtwVsPUhWhGcFJngGeWrPzHm5oaMmkfEg1usvLFyc8jLRqDOMru7AyC8saQr7GG7f5fvDeH7Ej8CM66nIF+8yngt6HWaKh7k49Soy9nXurCi1o3qUbS3zWfrYeQDTB/Qj6kX6Ybhw4B+bOYoLKCC9H3Nu/leUTZ1JdRWkkn2ldcCamzrcf47KKXdAJllSlxAOkRgyHsGC/zRday5Qld9DyoM4/q/rUoy/CXh3jzOu3bHUVZeU+DEn8FInkPBFlu3+nW3Nw0mk6vCDiWg8CeJaxEwuHS3+z5RgY+YBR6V1Z1nxSOfoaPa4LASWxxdNp+VWTk7+4vzaou8v8PN+xo+KY2xsw6une2frhw05CTYOmQvsEhjhWjn0bmXPjpE1+kplmmkP3suftwTubK9Vq22qKmrBhpY4jvd5afdRA3wGjFAgcnTK2s4hY0/GPNIb0nErGMCRxWOOX64Z8RAC4oCXdklmEvcL8o0BfkNK4lUg9HTl+oPlQxdNo3Mg4Nv175e/1LDGzZen30MEjRUtmXSfiTVu1kK8W4txyV6BMKlbgk3lMwYCiusNy9fVfvvwMxv8Ynl6vxoByANLTWplvuj/nF9m2+PDtt1eiHPBr1oIfhCChQMBw6Aw0UulqTKZdfVvfG7VcfIqLG9bcldL/+pdWTLxLUy8Qq38heUIjh4XlzZxzQm19lLFlr8vdQ97rjZVOLf8nclzckbcD4wxXMidpX30sFd37Fv/GtwwhzhxGVAprjbg0gCAEeIgwCZyTV2Z1REEW8O4py0wsjeloKoMr6iCY6dP92H6Vw/oTyICIthibxjm/DfN9lVz8IqtqKYLUXfoKVMVQVVJOElGjrnnUt9T9wbgp8AyYKaGlqingHZU/uG2NTZSVqwHQTWkx9hxjkpWDaCg6Ckj5qebgBVbT3V3NNXMSiWSDdGV3hrtzla7J+duwPOToIg42ChPQOQjspnSlp1V+Gjdged7+8UN5CRAV7a5EdFNwCjEaBR27b3W890TE7g24NAP/mMDXRWrGoFPQI9ls/MWO2dWFAar/xcOIImbbpA3zgAAAABJRU5ErkJggg==);\\n}\\n.bk-root .bk-logo-notebook {\\n  display: inline-block;\\n  vertical-align: middle;\\n  margin-right: 5px;\\n}\\n\"},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});var s=this&&this.__rest||function(t,e){var i={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(i[s]=t[s]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(t);n<s.length;n++)e.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(t,s[n])&&(i[s[n]]=t[s[n]])}return i};const n=t(208),a=t(77),o=t(210),l=t(90),r=t(272),h=t(169),_=t(177),d=t(170),c=t(313),u=t(15),p=t(115),f=t(314),b=t(74),g=t(19),m=t(316),v=t(8),w=t(9),y=t(215),x=t(317),z=t(318),M=t(216),O=t(79);class k extends r.LayoutDOMView{constructor(){super(...arguments),this._outer_bbox=new O.BBox,this._inner_bbox=new O.BBox,this._needs_paint=!0,this._needs_layout=!1,this._invalidated_painters=new Set,this._invalidate_all=!0}get is_paused(){return null!=this._is_paused&&0!==this._is_paused}get child_models(){return[]}pause(){null==this._is_paused?this._is_paused=1:this._is_paused+=1}unpause(t=!1){if(null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||t||this.request_paint()}request_render(){this.request_paint()}request_paint(t){if(null!=t?this._invalidated_painters.add(t):this._invalidate_all=!0,!this.is_paused){const t=this.throttled_paint();this._ready=this._ready.then(()=>t)}}request_layout(){this._needs_layout=!0,this.request_paint()}reset(){\"standard\"==this.model.reset_policy&&(this.clear_state(),this.reset_range(),this.reset_selection()),this.model.trigger_event(new c.Reset)}remove(){this.ui_event_bus.destroy(),p.remove_views(this.renderer_views),p.remove_views(this.tool_views),this.canvas_view.remove(),super.remove()}render(){super.render(),this.el.appendChild(this.canvas_view.el),this.canvas_view.render()}initialize(){this.pause(),super.initialize(),this.state_changed=new u.Signal0(this,\"state_changed\"),this.lod_started=!1,this.visuals=new b.Visuals(this.model),this._initial_state_info={selection:new Map,dimensions:{width:0,height:0}},this.visibility_callbacks=[],this.state={history:[],index:-1};const{hidpi:t,output_backend:e}=this.model;this.canvas=new a.Canvas({hidpi:t,output_backend:e}),this.frame=new n.CartesianFrame(this.model.x_scale,this.model.y_scale,this.model.x_range,this.model.y_range,this.model.extra_x_ranges,this.model.extra_y_ranges),this.throttled_paint=m.throttle(()=>this.repaint(),1e3/60);const{title_location:i,title:s}=this.model;null!=i&&null!=s&&(this._title=s instanceof h.Title?s:new h.Title({text:s}));const{toolbar_location:o,toolbar:l}=this.model;null!=o&&null!=l&&(this._toolbar=new d.ToolbarPanel({toolbar:l}),l.toolbar_location=o),this.renderer_views=new Map,this.tool_views=new Map}async lazy_initialize(){this.canvas_view=await p.build_view(this.canvas,{parent:this}),this.ui_event_bus=new f.UIEvents(this,this.model.toolbar,this.canvas_view.events_el),await this.build_renderer_views(),await this.build_tool_views(),this.update_dataranges(),this.unpause(!0),g.logger.debug(\"PlotView initialized\")}_width_policy(){return null==this.model.frame_width?super._width_policy():\"min\"}_height_policy(){return null==this.model.frame_height?super._height_policy():\"min\"}_update_layout(){this.layout=new x.BorderLayout,this.layout.set_sizing(this.box_sizing());const{frame_width:t,frame_height:e}=this.model;this.layout.center_panel=this.frame,this.layout.center_panel.set_sizing(Object.assign(Object.assign({},null!=t?{width_policy:\"fixed\",width:t}:{width_policy:\"fit\"}),null!=e?{height_policy:\"fixed\",height:e}:{height_policy:\"fit\"}));const i=w.copy(this.model.above),s=w.copy(this.model.below),n=w.copy(this.model.left),a=w.copy(this.model.right),o=t=>{switch(t){case\"above\":return i;case\"below\":return s;case\"left\":return n;case\"right\":return a}},{title_location:l,title:r}=this.model;null!=l&&null!=r&&o(l).push(this._title);const{toolbar_location:_,toolbar:c}=this.model;if(null!=_&&null!=c){const t=o(_);let e=!0;if(this.model.toolbar_sticky)for(let i=0;i<t.length;i++){const s=t[i];if(s instanceof h.Title){t[i]=\"above\"==_||\"below\"==_?[s,this._toolbar]:[this._toolbar,s],e=!1;break}}e&&t.push(this._toolbar)}const u=(t,e)=>{const i=this.renderer_views.get(e);return i.layout=new z.SidePanel(t,i)},p=(t,e)=>{const i=\"above\"==t||\"below\"==t,s=[];for(const n of e)if(v.isArray(n)){const e=n.map(e=>{const s=u(t,e);if(e instanceof d.ToolbarPanel){const t=i?\"width_policy\":\"height_policy\";s.set_sizing(Object.assign(Object.assign({},s.sizing),{[t]:\"min\"}))}return s});let a;i?(a=new M.Row(e),a.set_sizing({width_policy:\"max\",height_policy:\"min\"})):(a=new M.Column(e),a.set_sizing({width_policy:\"min\",height_policy:\"max\"})),a.absolute=!0,s.push(a)}else s.push(u(t,n));return s},f=null!=this.model.min_border?this.model.min_border:0;this.layout.min_border={left:null!=this.model.min_border_left?this.model.min_border_left:f,top:null!=this.model.min_border_top?this.model.min_border_top:f,right:null!=this.model.min_border_right?this.model.min_border_right:f,bottom:null!=this.model.min_border_bottom?this.model.min_border_bottom:f};const b=new y.VStack,g=new y.VStack,m=new y.HStack,O=new y.HStack;b.children=w.reversed(p(\"above\",i)),g.children=p(\"below\",s),m.children=w.reversed(p(\"left\",n)),O.children=p(\"right\",a),b.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),g.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),m.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),O.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),this.layout.top_panel=b,this.layout.bottom_panel=g,this.layout.left_panel=m,this.layout.right_panel=O}get axis_views(){const t=[];for(const[,e]of this.renderer_views)e instanceof _.AxisView&&t.push(e);return t}set_cursor(t=\"default\"){this.canvas_view.el.style.cursor=t}set_toolbar_visibility(t){for(const e of this.visibility_callbacks)e(t)}update_dataranges(){const t=new Map,e=new Map;let i=!1;for(const[,t]of this.frame.x_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(i=!0);for(const[,t]of this.frame.y_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(i=!0);for(const[s,n]of this.renderer_views)if(n instanceof l.GlyphRendererView){const a=n.glyph.bounds();if(null!=a&&t.set(s,a),i){const t=n.glyph.log_bounds();null!=t&&e.set(s,t)}}let s=!1,n=!1;const{width:a,height:r}=this.frame.bbox;let h;!1!==this.model.match_aspect&&0!=a&&0!=r&&(h=1/this.model.aspect_scale*(a/r));for(const[,i]of this.frame.x_ranges){if(i instanceof o.DataRange1d){const n=\"log\"==i.scale_hint?e:t;i.update(n,0,this.model,h),i.follow&&(s=!0)}null!=i.bounds&&(n=!0)}for(const[,i]of this.frame.y_ranges){if(i instanceof o.DataRange1d){const n=\"log\"==i.scale_hint?e:t;i.update(n,1,this.model,h),i.follow&&(s=!0)}null!=i.bounds&&(n=!0)}if(s&&n){g.logger.warn(\"Follow enabled so bounds are unset.\");for(const[,t]of this.frame.x_ranges)t.bounds=null;for(const[,t]of this.frame.y_ranges)t.bounds=null}this.range_update_timestamp=Date.now()}push_state(t,e){const{history:i,index:s}=this.state,n=null!=i[s]?i[s].info:{},a=Object.assign(Object.assign(Object.assign({},this._initial_state_info),n),e);this.state.history=this.state.history.slice(0,this.state.index+1),this.state.history.push({type:t,info:a}),this.state.index=this.state.history.length-1,this.state_changed.emit()}clear_state(){this.state={history:[],index:-1},this.state_changed.emit()}can_undo(){return this.state.index>=0}can_redo(){return this.state.index<this.state.history.length-1}undo(){this.can_undo()&&(this.state.index-=1,this._do_state_change(this.state.index),this.state_changed.emit())}redo(){this.can_redo()&&(this.state.index+=1,this._do_state_change(this.state.index),this.state_changed.emit())}_do_state_change(t){const e=null!=this.state.history[t]?this.state.history[t].info:this._initial_state_info;null!=e.range&&this.update_range(e.range),null!=e.selection&&this.update_selection(e.selection)}get_selection(){const t=new Map;for(const e of this.model.renderers)if(e instanceof l.GlyphRenderer){const{selected:i}=e.data_source;t.set(e,i)}return t}update_selection(t){for(const e of this.model.renderers){if(!(e instanceof l.GlyphRenderer))continue;const i=e.data_source;if(null!=t){const s=t.get(e);null!=s&&i.selected.update(s,!0)}else i.selection_manager.clear()}}reset_selection(){this.update_selection(null)}_update_ranges_together(t){let e=1;for(const[i,s]of t)e=Math.min(e,this._get_weight_to_constrain_interval(i,s));if(e<1)for(const[i,s]of t)s.start=e*s.start+(1-e)*i.start,s.end=e*s.end+(1-e)*i.end}_update_ranges_individually(t,e,i,s){let n=!1;for(const[s,a]of t){if(!i){const t=this._get_weight_to_constrain_interval(s,a);t<1&&(a.start=t*a.start+(1-t)*s.start,a.end=t*a.end+(1-t)*s.end)}if(null!=s.bounds&&\"auto\"!=s.bounds){const[t,o]=s.bounds,l=Math.abs(a.end-a.start);s.is_reversed?(null!=t&&t>=a.end&&(n=!0,a.end=t,(e||i)&&(a.start=t+l)),null!=o&&o<=a.start&&(n=!0,a.start=o,(e||i)&&(a.end=o-l))):(null!=t&&t>=a.start&&(n=!0,a.start=t,(e||i)&&(a.end=t+l)),null!=o&&o<=a.end&&(n=!0,a.end=o,(e||i)&&(a.start=o-l)))}}if(!(i&&n&&s))for(const[e,i]of t)e.have_updated_interactively=!0,e.start==i.start&&e.end==i.end||e.setv(i)}_get_weight_to_constrain_interval(t,e){const{min_interval:i}=t;let{max_interval:s}=t;if(null!=t.bounds&&\"auto\"!=t.bounds){const[e,i]=t.bounds;if(null!=e&&null!=i){const t=Math.abs(i-e);s=null!=s?Math.min(s,t):t}}let n=1;if(null!=i||null!=s){const a=Math.abs(t.end-t.start),o=Math.abs(e.end-e.start);i>0&&o<i&&(n=(a-i)/(a-o)),s>0&&o>s&&(n=(s-a)/(o-a)),n=Math.max(0,Math.min(1,n))}return n}update_range(t,e=!1,i=!1,s=!0){this.pause();const{x_ranges:n,y_ranges:a}=this.frame;if(null==t){for(const[,t]of n)t.reset();for(const[,t]of a)t.reset();this.update_dataranges()}else{const o=[];for(const[e,i]of n)o.push([i,t.xrs.get(e)]);for(const[e,i]of a)o.push([i,t.yrs.get(e)]);i&&this._update_ranges_together(o),this._update_ranges_individually(o,e,i,s)}this.unpause()}reset_range(){this.update_range(null)}_invalidate_layout(){(()=>{for(const t of this.model.side_panels){if(this.renderer_views.get(t).layout.has_size_changed())return!0}return!1})()&&this.root.compute_layout()}get_renderer_views(){return this.computed_renderers.map(t=>this.renderer_views.get(t))}async build_renderer_views(){this.computed_renderers=[];const{above:t,below:e,left:i,right:s,center:n,renderers:a}=this.model;this.computed_renderers.push(...t,...e,...i,...s,...n,...a),null!=this._title&&this.computed_renderers.push(this._title),null!=this._toolbar&&this.computed_renderers.push(this._toolbar);for(const t of this.model.toolbar.tools)null!=t.overlay&&this.computed_renderers.push(t.overlay),this.computed_renderers.push(...t.synthetic_renderers);await p.build_views(this.renderer_views,this.computed_renderers,{parent:this})}async build_tool_views(){const t=this.model.toolbar.tools;(await p.build_views(this.tool_views,t,{parent:this})).map(t=>this.ui_event_bus.register_tool(t))}connect_signals(){super.connect_signals();const{x_ranges:t,y_ranges:e}=this.frame;for(const[,e]of t)this.connect(e.change,()=>{this._needs_layout=!0,this.request_paint()});for(const[,t]of e)this.connect(t.change,()=>{this._needs_layout=!0,this.request_paint()});const{plot_width:i,plot_height:s}=this.model.properties;this.on_change([i,s],()=>this.invalidate_layout());const{above:n,below:a,left:o,right:l,center:r,renderers:h}=this.model.properties;this.on_change([n,a,o,l,r,h],async()=>await this.build_renderer_views()),this.connect(this.model.toolbar.properties.tools.change,async()=>{await this.build_renderer_views(),await this.build_tool_views()}),this.connect(this.model.change,()=>this.request_paint()),this.connect(this.model.reset,()=>this.reset())}set_initial_range(){let t=!0;const{x_ranges:e,y_ranges:i}=this.frame,s=new Map,n=new Map;for(const[i,n]of e){const{start:e,end:a}=n;if(null==e||null==a||isNaN(e+a)){t=!1;break}s.set(i,{start:e,end:a})}if(t)for(const[e,s]of i){const{start:i,end:a}=s;if(null==i||null==a||isNaN(i+a)){t=!1;break}n.set(e,{start:i,end:a})}t?(this._initial_state_info.range={xrs:s,yrs:n},g.logger.debug(\"initial ranges set\")):g.logger.warn(\"could not set initial ranges\")}has_finished(){if(!super.has_finished())return!1;if(this.model.visible)for(const[,t]of this.renderer_views)if(!t.has_finished())return!1;return!0}after_layout(){if(super.after_layout(),this._needs_layout=!1,this.model.setv({inner_width:Math.round(this.frame.bbox.width),inner_height:Math.round(this.frame.bbox.height),outer_width:Math.round(this.layout.bbox.width),outer_height:Math.round(this.layout.bbox.height)},{no_change:!0}),!1!==this.model.match_aspect&&(this.pause(),this.update_dataranges(),this.unpause(!0)),!this._outer_bbox.equals(this.layout.bbox)){const{width:t,height:e}=this.layout.bbox;this.canvas_view.resize(t,e),this._outer_bbox=this.layout.bbox,this._invalidate_all=!0,this._needs_paint=!0}this._inner_bbox.equals(this.frame.inner_bbox)||(this._inner_bbox=this.layout.inner_bbox,this._needs_paint=!0),this._needs_paint&&this.paint()}repaint(){this._needs_layout&&this._invalidate_layout(),this.paint()}paint(){if(this.is_paused||!this.model.visible)return;g.logger.trace(\"PlotView.paint() for \"+this.model.id);const{document:t}=this.model;if(null!=t){const e=t.interactive_duration();e>=0&&e<this.model.lod_interval?setTimeout(()=>{t.interactive_duration()>this.model.lod_timeout&&t.interactive_stop(),this.request_paint()},this.model.lod_timeout):t.interactive_stop()}for(const[,t]of this.renderer_views)if(null==this.range_update_timestamp||t instanceof l.GlyphRendererView&&t.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}let e=!1,i=!1;if(this._invalidate_all)e=!0,i=!0;else for(const t of this._invalidated_painters){const{level:s}=t.model;if(\"overlay\"!=s?e=!0:i=!0,e&&i)break}this._invalidated_painters.clear(),this._invalidate_all=!1;const s=[this.frame.bbox.left,this.frame.bbox.top,this.frame.bbox.width,this.frame.bbox.height],{primary:n,overlays:a}=this.canvas_view;e&&(n.prepare(),this.canvas_view.prepare_webgl(s),this.canvas_view.clear_webgl(),this._map_hook(n.ctx,s),this._paint_empty(n.ctx,s),this._paint_outline(n.ctx,s),this._paint_levels(n.ctx,\"image\",s,!0),this._paint_levels(n.ctx,\"underlay\",s,!0),this._paint_levels(n.ctx,\"glyph\",s,!0),this._paint_levels(n.ctx,\"guide\",s,!1),this._paint_levels(n.ctx,\"annotation\",s,!1),n.finish()),i&&(a.prepare(),this._paint_levels(a.ctx,\"overlay\",s,!1),a.finish()),null==this._initial_state_info.range&&this.set_initial_range(),this._needs_paint=!1}_paint_levels(t,e,i,s){for(const n of this.computed_renderers){if(n.level!=e)continue;const a=this.renderer_views.get(n);t.save(),(s||a.needs_clip)&&(t.beginPath(),t.rect(...i),t.clip()),a.render(),t.restore(),a.has_webgl&&a.needs_webgl_blit&&(this.canvas_view.blit_webgl(t),this.canvas_view.clear_webgl())}}_map_hook(t,e){}_paint_empty(t,e){const[i,s,n,a]=[0,0,this.layout.bbox.width,this.layout.bbox.height],[o,l,r,h]=e;this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(t),t.fillRect(i,s,n,a),t.clearRect(o,l,r,h)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(o,l,r,h))}_paint_outline(t,e){if(this.visuals.outline_line.doit){t.save(),this.visuals.outline_line.set_value(t);let[i,s,n,a]=e;i+n==this.layout.bbox.width&&(n-=1),s+a==this.layout.bbox.height&&(a-=1),t.strokeRect(i,s,n,a),t.restore()}}to_blob(){return this.canvas_view.to_blob()}export(t,e=!0){const i=\"png\"==t?\"canvas\":\"svg\",s=new a.CanvasLayer(i,e),{width:n,height:o}=this.layout.bbox;s.resize(n,o);const{canvas:l}=this.canvas_view.compose();return s.ctx.drawImage(l,0,0),s}serializable_state(){const t=super.serializable_state(),{children:e}=t,i=s(t,[\"children\"]),n=this.get_renderer_views().map(t=>t.serializable_state()).filter(t=>\"bbox\"in t);return Object.assign(Object.assign({},i),{children:[...e,...n]})}}i.PlotView=k,k.__name__=\"PlotView\"},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});var n=this&&this.__decorate||function(e,t,s,n){var _,a=arguments.length,o=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,s):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)o=Reflect.decorate(e,t,s,n);else for(var r=e.length-1;r>=0;r--)(_=e[r])&&(o=(a<3?_(o):a>3?_(t,s,o):_(t,s))||o);return a>3&&o&&Object.defineProperty(t,s,o),o};function _(e){return function(t){t.prototype.event_name=e}}class a{to_json(){const{event_name:e}=this;return{event_name:e,event_values:this._to_json()}}}s.BokehEvent=a,a.__name__=\"BokehEvent\";class o extends a{constructor(){super(...arguments),this.origin=null}_to_json(){return{model:this.origin}}}s.ModelEvent=o,o.__name__=\"ModelEvent\";let r=class extends a{_to_json(){return{}}};s.DocumentReady=r,r.__name__=\"DocumentReady\",s.DocumentReady=r=n([_(\"document_ready\")],r);let c=class extends o{};s.ButtonClick=c,c.__name__=\"ButtonClick\",s.ButtonClick=c=n([_(\"button_click\")],c);let l=class extends o{constructor(e){super(),this.item=e}_to_json(){const{item:e}=this;return Object.assign(Object.assign({},super._to_json()),{item:e})}};s.MenuItemClick=l,l.__name__=\"MenuItemClick\",s.MenuItemClick=l=n([_(\"menu_item_click\")],l);class i extends o{}s.UIEvent=i,i.__name__=\"UIEvent\";let u=class extends i{};s.LODStart=u,u.__name__=\"LODStart\",s.LODStart=u=n([_(\"lodstart\")],u);let d=class extends i{};s.LODEnd=d,d.__name__=\"LODEnd\",s.LODEnd=d=n([_(\"lodend\")],d);let h=class extends i{constructor(e,t){super(),this.geometry=e,this.final=t}_to_json(){const{geometry:e,final:t}=this;return Object.assign(Object.assign({},super._to_json()),{geometry:e,final:t})}};s.SelectionGeometry=h,h.__name__=\"SelectionGeometry\",s.SelectionGeometry=h=n([_(\"selectiongeometry\")],h);let m=class extends i{};s.Reset=m,m.__name__=\"Reset\",s.Reset=m=n([_(\"reset\")],m);class x extends i{constructor(e,t,s,n){super(),this.sx=e,this.sy=t,this.x=s,this.y=n}_to_json(){const{sx:e,sy:t,x:s,y:n}=this;return Object.assign(Object.assign({},super._to_json()),{sx:e,sy:t,x:s,y:n})}}s.PointEvent=x,x.__name__=\"PointEvent\";let p=class extends x{constructor(e,t,s,n,_,a){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta_x=_,this.delta_y=a}_to_json(){const{delta_x:e,delta_y:t}=this;return Object.assign(Object.assign({},super._to_json()),{delta_x:e,delta_y:t})}};s.Pan=p,p.__name__=\"Pan\",s.Pan=p=n([_(\"pan\")],p);let j=class extends x{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.scale=_}_to_json(){const{scale:e}=this;return Object.assign(Object.assign({},super._to_json()),{scale:e})}};s.Pinch=j,j.__name__=\"Pinch\",s.Pinch=j=n([_(\"pinch\")],j);let y=class extends x{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.rotation=_}_to_json(){const{rotation:e}=this;return Object.assign(Object.assign({},super._to_json()),{rotation:e})}};s.Rotate=y,y.__name__=\"Rotate\",s.Rotate=y=n([_(\"rotate\")],y);let P=class extends x{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta=_}_to_json(){const{delta:e}=this;return Object.assign(Object.assign({},super._to_json()),{delta:e})}};s.MouseWheel=P,P.__name__=\"MouseWheel\",s.MouseWheel=P=n([_(\"wheel\")],P);let v=class extends x{};s.MouseMove=v,v.__name__=\"MouseMove\",s.MouseMove=v=n([_(\"mousemove\")],v);let O=class extends x{};s.MouseEnter=O,O.__name__=\"MouseEnter\",s.MouseEnter=O=n([_(\"mouseenter\")],O);let b=class extends x{};s.MouseLeave=b,b.__name__=\"MouseLeave\",s.MouseLeave=b=n([_(\"mouseleave\")],b);let g=class extends x{};s.Tap=g,g.__name__=\"Tap\",s.Tap=g=n([_(\"tap\")],g);let E=class extends x{};s.DoubleTap=E,E.__name__=\"DoubleTap\",s.DoubleTap=E=n([_(\"doubletap\")],E);let M=class extends x{};s.Press=M,M.__name__=\"Press\",s.Press=M=n([_(\"press\")],M);let R=class extends x{};s.PressUp=R,R.__name__=\"PressUp\",s.PressUp=R=n([_(\"pressup\")],R);let f=class extends x{};s.PanStart=f,f.__name__=\"PanStart\",s.PanStart=f=n([_(\"panstart\")],f);let S=class extends x{};s.PanEnd=S,S.__name__=\"PanEnd\",s.PanEnd=S=n([_(\"panend\")],S);let D=class extends x{};s.PinchStart=D,D.__name__=\"PinchStart\",s.PinchStart=D=n([_(\"pinchstart\")],D);let k=class extends x{};s.PinchEnd=k,k.__name__=\"PinchEnd\",s.PinchEnd=k=n([_(\"pinchend\")],k);let L=class extends x{};s.RotateStart=L,L.__name__=\"RotateStart\",s.RotateStart=L=n([_(\"rotatestart\")],L);let C=class extends x{};s.RotateEnd=C,C.__name__=\"RotateEnd\",s.RotateEnd=C=n([_(\"rotateend\")],C)},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),i=n.__importDefault(t(297)),r=t(15),a=t(19),h=t(72),_=n.__importStar(t(313)),o=t(315),c=t(9),l=t(8),p=t(32),u=t(302);class d{constructor(t,e,s){this.plot_view=t,this.toolbar=e,this.hit_area=s,this.pan_start=new r.Signal(this,\"pan:start\"),this.pan=new r.Signal(this,\"pan\"),this.pan_end=new r.Signal(this,\"pan:end\"),this.pinch_start=new r.Signal(this,\"pinch:start\"),this.pinch=new r.Signal(this,\"pinch\"),this.pinch_end=new r.Signal(this,\"pinch:end\"),this.rotate_start=new r.Signal(this,\"rotate:start\"),this.rotate=new r.Signal(this,\"rotate\"),this.rotate_end=new r.Signal(this,\"rotate:end\"),this.tap=new r.Signal(this,\"tap\"),this.doubletap=new r.Signal(this,\"doubletap\"),this.press=new r.Signal(this,\"press\"),this.pressup=new r.Signal(this,\"pressup\"),this.move_enter=new r.Signal(this,\"move:enter\"),this.move=new r.Signal(this,\"move\"),this.move_exit=new r.Signal(this,\"move:exit\"),this.scroll=new r.Signal(this,\"scroll\"),this.keydown=new r.Signal(this,\"keydown\"),this.keyup=new r.Signal(this,\"keyup\"),this.hammer=new i.default(this.hit_area,{touchAction:\"auto\",inputClass:i.default.TouchMouseInput}),this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",t=>this._mouse_move(t)),this.hit_area.addEventListener(\"mouseenter\",t=>this._mouse_enter(t)),this.hit_area.addEventListener(\"mouseleave\",t=>this._mouse_exit(t)),this.hit_area.addEventListener(\"contextmenu\",t=>this._context_menu(t)),this.hit_area.addEventListener(\"wheel\",t=>this._mouse_wheel(t)),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this),this.menu=new u.ContextMenu([],{prevent_hide:t=>2==t.button&&t.target==this.hit_area}),this.hit_area.appendChild(this.menu.el)}destroy(){this.menu.remove(),this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)}handleEvent(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)}_configure_hammerjs(){this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",t=>this._doubletap(t)),this.hammer.on(\"tap\",t=>this._tap(t)),this.hammer.on(\"press\",t=>this._press(t)),this.hammer.on(\"pressup\",t=>this._pressup(t)),this.hammer.get(\"pan\").set({direction:i.default.DIRECTION_ALL}),this.hammer.on(\"panstart\",t=>this._pan_start(t)),this.hammer.on(\"pan\",t=>this._pan(t)),this.hammer.on(\"panend\",t=>this._pan_end(t)),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",t=>this._pinch_start(t)),this.hammer.on(\"pinch\",t=>this._pinch(t)),this.hammer.on(\"pinchend\",t=>this._pinch_end(t)),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",t=>this._rotate_start(t)),this.hammer.on(\"rotate\",t=>this._rotate(t)),this.hammer.on(\"rotateend\",t=>this._rotate_end(t))}register_tool(t){const e=t.model.event_type;null!=e&&(l.isString(e)?this._register_tool(t,e):e.forEach((e,s)=>this._register_tool(t,e,s<1)))}_register_tool(t,e,s=!0){const n=t,{id:i}=n.model,r=t=>e=>{e.id==i&&t(e.e)},h=t=>e=>{t(e.e)};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,r(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,r(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,r(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,r(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,r(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,r(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,r(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,r(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,r(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,r(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,r(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,r(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,r(n._tap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,r(n._press.bind(n))),null!=n._pressup&&n.connect(this.pressup,r(n._pressup.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,r(n._scroll.bind(n)));break;default:throw new Error(\"unsupported event_type: \"+e)}s&&(null!=n._doubletap&&n.connect(this.doubletap,h(n._doubletap.bind(n))),null!=n._keydown&&n.connect(this.keydown,h(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,h(n._keyup.bind(n))),p.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(a.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,r(n._scroll.bind(n)))))}_hit_test_renderers(t,e){const s=this.plot_view.get_renderer_views();for(const n of c.reversed(s)){const{level:s}=n.model;if((\"annotation\"==s||\"overlay\"==s)&&null!=n.interactive_hit&&n.interactive_hit(t,e))return n}return null}_hit_test_frame(t,e){return this.plot_view.frame.bbox.contains(t,e)}_hit_test_canvas(t,e){return this.plot_view.layout.bbox.contains(t,e)}_trigger(t,e,s){const n=this.toolbar.gestures,i=t.name.split(\":\")[0],r=this._hit_test_renderers(e.sx,e.sy),a=this._hit_test_canvas(e.sx,e.sy);switch(i){case\"move\":{const s=n[i].active;null!=s&&this.trigger(t,e,s.id);const h=this.toolbar.inspectors.filter(t=>t.active);let _=\"default\";null!=r?(_=r.cursor(e.sx,e.sy)||_,c.is_empty(h)||(t=this.move_exit)):this._hit_test_frame(e.sx,e.sy)&&(c.is_empty(h)||(_=\"crosshair\")),this.plot_view.set_cursor(_),this.plot_view.set_toolbar_visibility(a),h.map(s=>this.trigger(t,e,s.id));break}case\"tap\":{const{target:a}=s;if(null!=a&&a!=this.hit_area)return;null!=r&&null!=r.on_hit&&r.on_hit(e.sx,e.sy);const h=n[i].active;null!=h&&this.trigger(t,e,h.id);break}case\"scroll\":{const i=n[p.is_mobile?\"pinch\":\"scroll\"].active;null!=i&&(s.preventDefault(),s.stopPropagation(),this.trigger(t,e,i.id));break}case\"pan\":{const r=n[i].active;null!=r&&(s.preventDefault(),this.trigger(t,e,r.id));break}default:{const s=n[i].active;null!=s&&this.trigger(t,e,s.id)}}this._trigger_bokeh_event(e)}trigger(t,e,s=null){t.emit({id:s,e})}_trigger_bokeh_event(t){const e=(()=>{const{sx:e,sy:s}=t,n=this.plot_view.frame.x_scale.invert(e),i=this.plot_view.frame.y_scale.invert(s);switch(t.type){case\"wheel\":return new _.MouseWheel(e,s,n,i,t.delta);case\"mousemove\":return new _.MouseMove(e,s,n,i);case\"mouseenter\":return new _.MouseEnter(e,s,n,i);case\"mouseleave\":return new _.MouseLeave(e,s,n,i);case\"tap\":return new _.Tap(e,s,n,i);case\"doubletap\":return new _.DoubleTap(e,s,n,i);case\"press\":return new _.Press(e,s,n,i);case\"pressup\":return new _.PressUp(e,s,n,i);case\"pan\":return new _.Pan(e,s,n,i,t.deltaX,t.deltaY);case\"panstart\":return new _.PanStart(e,s,n,i);case\"panend\":return new _.PanEnd(e,s,n,i);case\"pinch\":return new _.Pinch(e,s,n,i,t.scale);case\"pinchstart\":return new _.PinchStart(e,s,n,i);case\"pinchend\":return new _.PinchEnd(e,s,n,i);case\"rotate\":return new _.Rotate(e,s,n,i,t.rotation);case\"rotatestart\":return new _.RotateStart(e,s,n,i);case\"rotateend\":return new _.RotateEnd(e,s,n,i);default:return}})();null!=e&&this.plot_view.model.trigger_event(e)}_get_sxy(t){const{pageX:e,pageY:s}=function(t){return\"undefined\"!=typeof TouchEvent&&t instanceof TouchEvent}(t)?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t,{left:n,top:i}=h.offset(this.hit_area);return{sx:e-n,sy:s-i}}_pan_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{deltaX:t.deltaX,deltaY:t.deltaY,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_pinch_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{scale:t.scale,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_rotate_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{rotation:t.rotation,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_tap_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_move_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_scroll_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{delta:o.getDeltaY(t),shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_key_event(t){return{type:t.type,keyCode:t.keyCode}}_pan_start(t){const e=this._pan_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)}_pan(t){this._trigger(this.pan,this._pan_event(t),t.srcEvent)}_pan_end(t){this._trigger(this.pan_end,this._pan_event(t),t.srcEvent)}_pinch_start(t){this._trigger(this.pinch_start,this._pinch_event(t),t.srcEvent)}_pinch(t){this._trigger(this.pinch,this._pinch_event(t),t.srcEvent)}_pinch_end(t){this._trigger(this.pinch_end,this._pinch_event(t),t.srcEvent)}_rotate_start(t){this._trigger(this.rotate_start,this._rotate_event(t),t.srcEvent)}_rotate(t){this._trigger(this.rotate,this._rotate_event(t),t.srcEvent)}_rotate_end(t){this._trigger(this.rotate_end,this._rotate_event(t),t.srcEvent)}_tap(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)}_doubletap(t){const e=this._tap_event(t);this._trigger_bokeh_event(e),this.trigger(this.doubletap,e)}_press(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)}_pressup(t){this._trigger(this.pressup,this._tap_event(t),t.srcEvent)}_mouse_enter(t){this._trigger(this.move_enter,this._move_event(t),t)}_mouse_move(t){this._trigger(this.move,this._move_event(t),t)}_mouse_exit(t){this._trigger(this.move_exit,this._move_event(t),t)}_mouse_wheel(t){this._trigger(this.scroll,this._scroll_event(t),t)}_context_menu(t){!this.menu.is_open&&this.menu.can_open&&t.preventDefault();const{sx:e,sy:s}=this._get_sxy(t);this.menu.toggle({left:e,top:s})}_key_down(t){this.trigger(this.keydown,this._key_event(t))}_key_up(t){this.trigger(this.keyup,this._key_event(t))}}s.UIEvents=d,d.__name__=\"UIEvents\"},\n      function _(e,t,n){\n      /*!\n           * jQuery Mousewheel 3.1.13\n           *\n           * Copyright jQuery Foundation and other contributors\n           * Released under the MIT license\n           * http://jquery.org/license\n           */\n      function r(e){const t=getComputedStyle(e).fontSize;return null!=t?parseInt(t,10):null}Object.defineProperty(n,\"__esModule\",{value:!0}),n.getDeltaY=function(e){let t=-e.deltaY;if(e.target instanceof HTMLElement)switch(e.deltaMode){case e.DOM_DELTA_LINE:t*=r((n=e.target).offsetParent||document.body)||r(n)||16;break;case e.DOM_DELTA_PAGE:t*=function(e){return e.clientHeight}(e.target)}var n;return t}},\n      function _(n,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const t=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(n){return n(Date.now()),-1};o.throttle=function(n,e){let o=null,i=0,u=!1;return function(){return new Promise((d,w)=>{const r=function(){i=Date.now(),o=null,u=!1;try{n(),d()}catch(n){w(n)}},a=Date.now(),f=e-(a-i);f<=0&&!u?(null!=o&&clearTimeout(o),u=!0,t(r)):o||u?d():o=setTimeout(()=>t(r),f)})}}},\n      function _(t,e,h){Object.defineProperty(h,\"__esModule\",{value:!0});const i=t(213),o=t(214),r=t(79);class s extends o.Layoutable{constructor(){super(...arguments),this.min_border={left:0,top:0,right:0,bottom:0}}_measure(t){t=new i.Sizeable(t).bounded_to(this.sizing.size);const e=this.left_panel.measure({width:0,height:t.height}),h=Math.max(e.width,this.min_border.left),o=this.right_panel.measure({width:0,height:t.height}),r=Math.max(o.width,this.min_border.right),s=this.top_panel.measure({width:t.width,height:0}),n=Math.max(s.height,this.min_border.top),a=this.bottom_panel.measure({width:t.width,height:0}),g=Math.max(a.height,this.min_border.bottom),_=new i.Sizeable(t).shrink_by({left:h,right:r,top:n,bottom:g}),m=this.center_panel.measure(_);return{width:h+m.width+r,height:n+m.height+g,inner:{left:h,right:r,top:n,bottom:g},align:(()=>{const{width_policy:t,height_policy:e}=this.center_panel.sizing;return\"fixed\"!=t&&\"fixed\"!=e})()}}_set_geometry(t,e){super._set_geometry(t,e),this.center_panel.set_geometry(e);const h=this.left_panel.measure({width:0,height:t.height}),i=this.right_panel.measure({width:0,height:t.height}),o=this.top_panel.measure({width:t.width,height:0}),s=this.bottom_panel.measure({width:t.width,height:0}),{left:n,top:a,right:g,bottom:_}=e;this.top_panel.set_geometry(new r.BBox({left:n,right:g,bottom:a,height:o.height})),this.bottom_panel.set_geometry(new r.BBox({left:n,right:g,top:_,height:s.height})),this.left_panel.set_geometry(new r.BBox({top:a,bottom:_,right:n,width:h.width})),this.right_panel.set_geometry(new r.BBox({top:a,bottom:_,left:g,width:i.width}))}}h.BorderLayout=s,s.__name__=\"BorderLayout\"},\n      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const l=i(213),a=i(214),r=i(8),o=Math.PI/2,h=\"left\",s=\"center\",n={above:{parallel:0,normal:-o,horizontal:0,vertical:-o},below:{parallel:0,normal:o,horizontal:0,vertical:o},left:{parallel:-o,normal:0,horizontal:0,vertical:-o},right:{parallel:o,normal:0,horizontal:0,vertical:o}},d={above:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"alphabetic\",vertical:\"middle\"},below:{justified:\"bottom\",parallel:\"hanging\",normal:\"middle\",horizontal:\"hanging\",vertical:\"middle\"},left:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"middle\",vertical:\"alphabetic\"},right:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"middle\",vertical:\"alphabetic\"}},_={above:{justified:s,parallel:s,normal:h,horizontal:s,vertical:h},below:{justified:s,parallel:s,normal:h,horizontal:s,vertical:h},left:{justified:s,parallel:s,normal:\"right\",horizontal:\"right\",vertical:s},right:{justified:s,parallel:s,normal:h,horizontal:h,vertical:s}},c={above:\"right\",below:h,left:\"right\",right:h},m={above:h,below:\"right\",left:\"right\",right:h};class g extends a.ContentLayoutable{constructor(i,t){switch(super(),this.side=i,this.obj=t,this.side){case\"above\":this._dim=0,this._normals=[0,-1];break;case\"below\":this._dim=0,this._normals=[0,1];break;case\"left\":this._dim=1,this._normals=[-1,0];break;case\"right\":this._dim=1,this._normals=[1,0]}this.is_horizontal?this.set_sizing({width_policy:\"max\",height_policy:\"fixed\"}):this.set_sizing({width_policy:\"fixed\",height_policy:\"max\"})}_content_size(){return new l.Sizeable(this.get_oriented_size())}get_oriented_size(){const{width:i,height:t}=this.obj.get_size();return!this.obj.rotate||this.is_horizontal?{width:i,height:t}:{width:t,height:i}}has_size_changed(){const{width:i,height:t}=this.get_oriented_size();return this.is_horizontal?this.bbox.height!=t:this.bbox.width!=i}get dimension(){return this._dim}get normals(){return this._normals}get is_horizontal(){return 0==this._dim}get is_vertical(){return 1==this._dim}apply_label_text_heuristics(i,t){const e=this.side;let l,a;r.isString(t)?(l=d[e][t],a=_[e][t]):t<0?(l=\"middle\",a=c[e]):(l=\"middle\",a=m[e]),i.textBaseline=l,i.textAlign=a}get_label_angle_heuristic(i){return n[this.side][i]}}e.SidePanel=g,g.__name__=\"SidePanel\"},\n      function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=t(15),o=t(72),a=t(37),n=t(312),p=new i.Signal0({},\"gmaps_ready\");class l extends n.PlotView{initialize(){this.pause(),super.initialize(),this._tiles_loaded=!1,this.zoom_count=0;const{zoom:t,lat:e,lng:s}=this.model.map_options;if(this.initial_zoom=t,this.initial_lat=e,this.initial_lng=s,\"undefined\"==typeof google||null==google.maps){if(void 0===window._bokeh_gmaps_callback){!function(t){window._bokeh_gmaps_callback=()=>p.emit();const e=document.createElement(\"script\");e.type=\"text/javascript\",e.src=`https://maps.googleapis.com/maps/api/js?v=3.36&key=${t}&callback=_bokeh_gmaps_callback`,document.body.appendChild(e)}(atob(this.model.api_key))}p.connect(()=>this.request_render())}this.unpause()}remove(){o.remove(this.map_el),super.remove()}update_range(t){if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),super.update_range(null);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(t.sdx||0,t.sdy||0),super.update_range(t);else if(null!=t.factor){if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),super.update_range(t);const e=t.factor<0?-1:1,s=this.map.getZoom(),i=s+e;if(i>=2){this.map.setZoom(i);const[t,e,,]=this._get_projected_bounds();e-t<0&&this.map.setZoom(s)}this.unpause()}this._set_bokeh_ranges()}_build_map(){const{maps:t}=google;this.map_types={satellite:t.MapTypeId.SATELLITE,terrain:t.MapTypeId.TERRAIN,roadmap:t.MapTypeId.ROADMAP,hybrid:t.MapTypeId.HYBRID};const e=this.model.map_options,s={center:new t.LatLng(e.lat,e.lng),zoom:e.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[e.map_type],scaleControl:e.scale_control,tilt:e.tilt};null!=e.styles&&(s.styles=JSON.parse(e.styles)),this.map_el=o.div({style:{position:\"absolute\"}}),this.canvas_view.add_underlay(this.map_el),this.map=new t.Map(this.map_el,s),t.event.addListener(this.map,\"idle\",()=>this._set_bokeh_ranges()),t.event.addListener(this.map,\"bounds_changed\",()=>this._set_bokeh_ranges()),t.event.addListenerOnce(this.map,\"tilesloaded\",()=>this._render_finished()),this.connect(this.model.properties.map_options.change,()=>this._update_options()),this.connect(this.model.map_options.properties.styles.change,()=>this._update_styles()),this.connect(this.model.map_options.properties.lat.change,()=>this._update_center(\"lat\")),this.connect(this.model.map_options.properties.lng.change,()=>this._update_center(\"lng\")),this.connect(this.model.map_options.properties.zoom.change,()=>this._update_zoom()),this.connect(this.model.map_options.properties.map_type.change,()=>this._update_map_type()),this.connect(this.model.map_options.properties.scale_control.change,()=>this._update_scale_control()),this.connect(this.model.map_options.properties.tilt.change,()=>this._update_tilt())}_render_finished(){this._tiles_loaded=!0,this.notify_finished()}has_finished(){return super.has_finished()&&!0===this._tiles_loaded}_get_latlon_bounds(){const t=this.map.getBounds(),e=t.getNorthEast(),s=t.getSouthWest();return[s.lng(),e.lng(),s.lat(),e.lat()]}_get_projected_bounds(){const[t,e,s,i]=this._get_latlon_bounds(),[o,n]=a.wgs84_mercator.compute(t,s),[p,l]=a.wgs84_mercator.compute(e,i);return[o,p,n,l]}_set_bokeh_ranges(){const[t,e,s,i]=this._get_projected_bounds();this.frame.x_range.setv({start:t,end:e}),this.frame.y_range.setv({start:s,end:i})}_update_center(t){const e=this.map.getCenter().toJSON();e[t]=this.model.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()}_update_map_type(){this.map.setOptions({mapTypeId:this.map_types[this.model.map_options.map_type]})}_update_scale_control(){this.map.setOptions({scaleControl:this.model.map_options.scale_control})}_update_tilt(){this.map.setOptions({tilt:this.model.map_options.tilt})}_update_options(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()}_update_styles(){this.map.setOptions({styles:JSON.parse(this.model.map_options.styles)})}_update_zoom(){this.map.setOptions({zoom:this.model.map_options.zoom}),this._set_bokeh_ranges()}_map_hook(t,e){if(null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map(),null!=this.map_el){const[t,s,i,o]=e;this.map_el.style.top=s+\"px\",this.map_el.style.left=t+\"px\",this.map_el.style.width=i+\"px\",this.map_el.style.height=o+\"px\"}}_paint_empty(t,e){const s=this.layout.bbox.width,i=this.layout.bbox.height,[o,a,n,p]=e;t.clearRect(0,0,s,i),t.beginPath(),t.moveTo(0,0),t.lineTo(0,i),t.lineTo(s,i),t.lineTo(s,0),t.lineTo(0,0),t.moveTo(o,a),t.lineTo(o+n,a),t.lineTo(o+n,a+p),t.lineTo(o,a+p),t.lineTo(o,a),t.closePath(),null!=this.model.border_fill_color&&(t.fillStyle=this.model.border_fill_color,t.fill())}}s.GMapPlotView=l,l.__name__=\"GMapPlotView\"},\n      function _(a,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});var g=a(211);n.DataRange=g.DataRange;var R=a(210);n.DataRange1d=R.DataRange1d;var r=a(98);n.FactorRange=r.FactorRange;var t=a(99);n.Range=t.Range;var d=a(158);n.Range1d=d.Range1d},\n      function _(e,r,d){Object.defineProperty(d,\"__esModule\",{value:!0});var n=e(90);d.GlyphRenderer=n.GlyphRenderer;var R=e(116);d.GraphRenderer=R.GraphRenderer;var a=e(178);d.GuideRenderer=a.GuideRenderer;var G=e(70);d.Renderer=G.Renderer},\n      function _(a,e,l){Object.defineProperty(l,\"__esModule\",{value:!0});var c=a(209);l.CategoricalScale=c.CategoricalScale;var r=a(146);l.ContinuousScale=r.ContinuousScale;var n=a(145);l.LinearScale=n.LinearScale;var o=a(156);l.LinearInterpolationScale=o.LinearInterpolationScale;var i=a(157);l.LogScale=i.LogScale;var S=a(147);l.Scale=S.Scale},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});e(1).__exportStar(e(118),o);var n=e(88);o.Selection=n.Selection},\n      function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});var o=a(325);r.ServerSentDataSource=o.ServerSentDataSource;var S=a(327);r.AjaxDataSource=S.AjaxDataSource;var u=a(85);r.ColumnDataSource=u.ColumnDataSource;var t=a(86);r.ColumnarDataSource=t.ColumnarDataSource;var c=a(114);r.CDSView=c.CDSView;var D=a(87);r.DataSource=D.DataSource;var v=a(328);r.GeoJSONDataSource=v.GeoJSONDataSource;var n=a(326);r.WebDataSource=n.WebDataSource},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=e(326);class s extends a.WebDataSource{constructor(e){super(e),this.initialized=!1}destroy(){super.destroy()}setup(){if(!this.initialized){this.initialized=!0;new EventSource(this.data_url).onmessage=e=>{this.load_data(JSON.parse(e.data),this.mode,this.max_size)}}}}i.ServerSentDataSource=s,s.__name__=\"ServerSentDataSource\"},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=e(1),s=e(85),i=r.__importStar(e(18));class n extends s.ColumnDataSource{constructor(e){super(e)}get_column(e){const t=this.data[e];return null!=t?t:[]}initialize(){super.initialize(),this.setup()}load_data(e,t,a){const{adapter:r}=this;let s;switch(s=null!=r?r.execute(this,{response:e}):e,t){case\"replace\":this.data=s;break;case\"append\":{const e=this.data;for(const t of this.columns()){const r=Array.from(e[t]),i=Array.from(s[t]);s[t]=r.concat(i).slice(-a)}this.data=s;break}}}static init_WebDataSource(){this.define({mode:[i.UpdateMode,\"replace\"],max_size:[i.Number],adapter:[i.Any,null],data_url:[i.String]})}}a.WebDataSource=n,n.__name__=\"WebDataSource\",n.init_WebDataSource()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),a=t(326),r=t(19),o=s.__importStar(t(18)),n=t(13);class d extends a.WebDataSource{constructor(t){super(t),this.initialized=!1}static init_AjaxDataSource(){this.define({polling_interval:[o.Number],content_type:[o.String,\"application/json\"],http_headers:[o.Any,{}],method:[o.HTTPMethod,\"POST\"],if_modified:[o.Boolean,!1]})}destroy(){null!=this.interval&&clearInterval(this.interval),super.destroy()}setup(){if(!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)){const t=()=>this.get_data(this.mode,this.max_size,this.if_modified);this.interval=setInterval(t,this.polling_interval)}}get_data(t,e=0,i=!1){const s=this.prepare_request();s.addEventListener(\"load\",()=>this.do_load(s,t,e)),s.addEventListener(\"error\",()=>this.do_error(s)),s.send()}prepare_request(){const t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);const e=this.http_headers;for(const[i,s]of n.entries(e))t.setRequestHeader(i,s);return t}do_load(t,e,i){if(200===t.status){const s=JSON.parse(t.responseText);this.load_data(s,e,i)}}do_error(t){r.logger.error(`Failed to fetch JSON from ${this.data_url} with code ${t.status}`)}}i.AjaxDataSource=d,d.__name__=\"AjaxDataSource\",d.init_AjaxDataSource()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(1),n=e(86),s=e(19),a=r.__importStar(e(18)),i=e(9),l=e(13);function c(e){return null!=e?e:NaN}class _ extends n.ColumnarDataSource{constructor(e){super(e)}static init_GeoJSONDataSource(){this.define({geojson:[a.Any]}),this.internal({data:[a.Any,{}]})}initialize(){super.initialize(),this._update_data()}connect_signals(){super.connect_signals(),this.connect(this.properties.geojson.change,()=>this._update_data())}_update_data(){this.data=this.geojson_to_column_data()}_get_new_list_array(e){return i.range(0,e).map(e=>[])}_get_new_nan_array(e){return i.range(0,e).map(e=>NaN)}_add_properties(e,t,o,r){var n;const s=null!==(n=e.properties)&&void 0!==n?n:{};for(const[e,n]of l.entries(s))t.hasOwnProperty(e)||(t[e]=this._get_new_nan_array(r)),t[e][o]=c(n)}_add_geometry(e,t,o){function r(e,t){return e.concat([[NaN,NaN,NaN]]).concat(t)}switch(e.type){case\"Point\":{const[r,n,s]=e.coordinates;t.x[o]=r,t.y[o]=n,t.z[o]=c(s);break}case\"LineString\":{const{coordinates:r}=e;for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"Polygon\":{e.coordinates.length>1&&s.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");const r=e.coordinates[0];for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPoint\":s.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":{const n=e.coordinates.reduce(r);for(let e=0;e<n.length;e++){const[r,s,a]=n[e];t.xs[o][e]=r,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPolygon\":{const n=[];for(const t of e.coordinates)t.length>1&&s.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),n.push(t[0]);const a=n.reduce(r);for(let e=0;e<a.length;e++){const[r,n,s]=a[e];t.xs[o][e]=r,t.ys[o][e]=n,t.zs[o][e]=c(s)}break}default:throw new Error(\"Invalid GeoJSON geometry type: \"+e.type)}}geojson_to_column_data(){const e=JSON.parse(this.geojson);let t;switch(e.type){case\"GeometryCollection\":if(null==e.geometries)throw new Error(\"No geometries found in GeometryCollection\");if(0===e.geometries.length)throw new Error(\"geojson.geometries must have one or more items\");t=e.geometries;break;case\"FeatureCollection\":if(null==e.features)throw new Error(\"No features found in FeaturesCollection\");if(0==e.features.length)throw new Error(\"geojson.features must have one or more items\");t=e.features;break;default:throw new Error(\"Bokeh only supports type GeometryCollection and FeatureCollection at top level\")}let o=0;for(const e of t){const t=\"Feature\"===e.type?e.geometry:e;\"GeometryCollection\"==t.type?o+=t.geometries.length:o+=1}const r={x:this._get_new_nan_array(o),y:this._get_new_nan_array(o),z:this._get_new_nan_array(o),xs:this._get_new_list_array(o),ys:this._get_new_list_array(o),zs:this._get_new_list_array(o)};let n=0;for(const e of t){const t=\"Feature\"==e.type?e.geometry:e;if(\"GeometryCollection\"==t.type)for(const s of t.geometries)this._add_geometry(s,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1;else this._add_geometry(t,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1}return r}}o.GeoJSONDataSource=_,_.__name__=\"GeoJSONDataSource\",_.init_GeoJSONDataSource()},\n      function _(e,r,i){Object.defineProperty(i,\"__esModule\",{value:!0});var c=e(127);i.AdaptiveTicker=c.AdaptiveTicker;var a=e(126);i.BasicTicker=a.BasicTicker;var k=e(180);i.CategoricalTicker=k.CategoricalTicker;var T=e(191);i.CompositeTicker=T.CompositeTicker;var t=e(128);i.ContinuousTicker=t.ContinuousTicker;var o=e(190);i.DatetimeTicker=o.DatetimeTicker;var v=e(192);i.DaysTicker=v.DaysTicker;var n=e(330);i.FixedTicker=n.FixedTicker;var s=e(199);i.LogTicker=s.LogTicker;var l=e(202);i.MercatorTicker=l.MercatorTicker;var u=e(195);i.MonthsTicker=u.MonthsTicker;var d=e(193);i.SingleIntervalTicker=d.SingleIntervalTicker;var g=e(129);i.Ticker=g.Ticker;var C=e(196);i.YearsTicker=C.YearsTicker},\n      function _(i,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const r=i(1),n=i(128),s=r.__importStar(i(18));class _ extends n.ContinuousTicker{constructor(i){super(i),this.min_interval=0,this.max_interval=0}static init_FixedTicker(){this.define({ticks:[s.Array,[]],minor_ticks:[s.Array,[]]})}get_ticks_no_defaults(i,t,e,r){return{major:this.ticks,minor:this.minor_ticks}}get_interval(i,t,e){return 0}}e.FixedTicker=_,_.__name__=\"FixedTicker\",_.init_FixedTicker()},\n      function _(e,r,o){Object.defineProperty(o,\"__esModule\",{value:!0});var T=e(332);o.BBoxTileSource=T.BBoxTileSource;var c=e(333);o.MercatorTileSource=c.MercatorTileSource;var i=e(336);o.QUADKEYTileSource=i.QUADKEYTileSource;var l=e(337);o.TileRenderer=l.TileRenderer;var S=e(334);o.TileSource=S.TileSource;var u=e(341);o.TMSTileSource=u.TMSTileSource;var a=e(338);o.WMTSTileSource=a.WMTSTileSource},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(1),i=e(333),l=o.__importStar(e(18));class _ extends i.MercatorTileSource{constructor(e){super(e)}static init_BBoxTileSource(){this.define({use_latlon:[l.Boolean,!1]})}get_image_url(e,t,r){const o=this.string_lookup_replace(this.url,this.extra_url_vars);let i,l,_,n;return this.use_latlon?[l,n,i,_]=this.get_tile_geographic_bounds(e,t,r):[l,n,i,_]=this.get_tile_meter_bounds(e,t,r),o.replace(\"{XMIN}\",l.toString()).replace(\"{YMIN}\",n.toString()).replace(\"{XMAX}\",i.toString()).replace(\"{YMAX}\",_.toString())}}r.BBoxTileSource=_,_.__name__=\"BBoxTileSource\",_.init_BBoxTileSource()},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const _=t(1),s=t(334),r=_.__importStar(t(18)),o=t(9),n=t(335);class l extends s.TileSource{constructor(t){super(t)}static init_MercatorTileSource(){this.define({snap_to_zoom:[r.Boolean,!1],wrap_around:[r.Boolean,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})}initialize(){super.initialize(),this._resolutions=o.range(this.min_zoom,this.max_zoom+1).map(t=>this.get_resolution(t))}_computed_initial_resolution(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size}is_valid_tile(t,e,i){return!(!this.wrap_around&&(t<0||t>=2**i))&&!(e<0||e>=2**i)}parent_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=_.substring(0,_.length-1);return this.quadkey_to_tile_xyz(s)}get_resolution(t){return this._computed_initial_resolution()/2**t}get_resolution_by_extent(t,e,i){return[(t[2]-t[0])/i,(t[3]-t[1])/e]}get_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s);let o=0;for(const t of this._resolutions){if(r>t){if(0==o)return 0;if(o>0)return o-1}o+=1}return o-1}get_closest_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s),o=this._resolutions.reduce((function(t,e){return Math.abs(e-r)<Math.abs(t-r)?e:t}));return this._resolutions.indexOf(o)}snap_to_zoom_level(t,e,i,_){const[s,r,o,n]=t,l=this._resolutions[_];let u=i*l,a=e*l;if(!this.snap_to_zoom){const t=(o-s)/u,e=(n-r)/a;t>e?(u=o-s,a*=t):(u*=e,a=n-r)}const h=(u-(o-s))/2,c=(a-(n-r))/2;return[s-h,r-c,o+h,n+c]}tms_to_wmts(t,e,i){return[t,2**i-1-e,i]}wmts_to_tms(t,e,i){return[t,2**i-1-e,i]}pixels_to_meters(t,e,i){const _=this.get_resolution(i);return[t*_-this.x_origin_offset,e*_-this.y_origin_offset]}meters_to_pixels(t,e,i){const _=this.get_resolution(i);return[(t+this.x_origin_offset)/_,(e+this.y_origin_offset)/_]}pixels_to_tile(t,e){let i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;return[i,Math.max(Math.ceil(e/this.tile_size)-1,0)]}pixels_to_raster(t,e,i){return[t,(this.tile_size<<i)-e]}meters_to_tile(t,e,i){const[_,s]=this.meters_to_pixels(t,e,i);return this.pixels_to_tile(_,s)}get_tile_meter_bounds(t,e,i){const[_,s]=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),[r,o]=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i);return[_,s,r,o]}get_tile_geographic_bounds(t,e,i){const _=this.get_tile_meter_bounds(t,e,i),[s,r,o,l]=n.meters_extent_to_geographic(_);return[s,r,o,l]}get_tiles_by_extent(t,e,i=1){const[_,s,r,o]=t;let[n,l]=this.meters_to_tile(_,s,e),[u,a]=this.meters_to_tile(r,o,e);n-=i,l-=i,u+=i,a+=i;const h=[];for(let t=a;t>=l;t--)for(let i=n;i<=u;i++)this.is_valid_tile(i,t,e)&&h.push([i,t,e,this.get_tile_meter_bounds(i,t,e)]);return this.sort_tiles_from_center(h,[n,l,u,a]),h}quadkey_to_tile_xyz(t){let e=0,i=0;const _=t.length;for(let s=_;s>0;s--){const r=1<<s-1;switch(t.charAt(_-s)){case\"0\":continue;case\"1\":e|=r;break;case\"2\":i|=r;break;case\"3\":e|=r,i|=r;break;default:throw new TypeError(\"Invalid Quadkey: \"+t)}}return[e,i,_]}tile_xyz_to_quadkey(t,e,i){let _=\"\";for(let s=i;s>0;s--){const i=1<<s-1;let r=0;0!=(t&i)&&(r+=1),0!=(e&i)&&(r+=2),_+=r.toString()}return _}children_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=[];for(let t=0;t<=3;t++){const[e,i,r]=this.quadkey_to_tile_xyz(_+t.toString()),o=this.get_tile_meter_bounds(e,i,r);s.push([e,i,r,o])}return s}get_closest_parent_by_tile_xyz(t,e,i){const _=this.calculate_world_x_by_tile_xyz(t,e,i);[t,e,i]=this.normalize_xyz(t,e,i);let s=this.tile_xyz_to_quadkey(t,e,i);for(;s.length>0;)if(s=s.substring(0,s.length-1),[t,e,i]=this.quadkey_to_tile_xyz(s),[t,e,i]=this.denormalize_xyz(t,e,i,_),this.tiles.has(this.tile_xyz_to_key(t,e,i)))return[t,e,i];return[0,0,0]}normalize_xyz(t,e,i){if(this.wrap_around){const _=2**i;return[(t%_+_)%_,e,i]}return[t,e,i]}denormalize_xyz(t,e,i,_){return[t+_*2**i,e,i]}denormalize_meters(t,e,i,_){return[t+2*_*Math.PI*6378137,e]}calculate_world_x_by_tile_xyz(t,e,i){return Math.floor(t/2**i)}}i.MercatorTileSource=l,l.__name__=\"MercatorTileSource\",l.init_MercatorTileSource()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1),n=e(81),s=e(13),l=i.__importStar(e(18));class a extends n.Model{constructor(e){super(e)}static init_TileSource(){this.define({url:[l.String,\"\"],tile_size:[l.Number,256],max_zoom:[l.Number,30],min_zoom:[l.Number,0],extra_url_vars:[l.Any,{}],attribution:[l.String,\"\"],x_origin_offset:[l.Number],y_origin_offset:[l.Number],initial_resolution:[l.Number]})}initialize(){super.initialize(),this.tiles=new Map,this._normalize_case()}connect_signals(){super.connect_signals(),this.connect(this.change,()=>this._clear_cache())}string_lookup_replace(e,t){let r=e;for(const[e,i]of s.entries(t))r=r.replace(`{${e}}`,i);return r}_normalize_case(){const e=this.url.replace(\"{x}\",\"{X}\").replace(\"{y}\",\"{Y}\").replace(\"{z}\",\"{Z}\").replace(\"{q}\",\"{Q}\").replace(\"{xmin}\",\"{XMIN}\").replace(\"{ymin}\",\"{YMIN}\").replace(\"{xmax}\",\"{XMAX}\").replace(\"{ymax}\",\"{YMAX}\");this.url=e}_clear_cache(){this.tiles=new Map}tile_xyz_to_key(e,t,r){return`${e}:${t}:${r}`}key_to_tile_xyz(e){const[t,r,i]=e.split(\":\").map(e=>parseInt(e));return[t,r,i]}sort_tiles_from_center(e,t){const[r,i,n,s]=t,l=(n-r)/2+r,a=(s-i)/2+i;e.sort((function(e,t){return Math.sqrt((l-e[0])**2+(a-e[1])**2)-Math.sqrt((l-t[0])**2+(a-t[1])**2)}))}get_image_url(e,t,r){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",t.toString()).replace(\"{Z}\",r.toString())}}r.TileSource=a,a.__name__=\"TileSource\",a.init_TileSource()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=e(37);function o(e,t){return n.wgs84_mercator.compute(e,t)}function c(e,t){return n.wgs84_mercator.invert(e,t)}r.geographic_to_meters=o,r.meters_to_geographic=c,r.geographic_extent_to_meters=function(e){const[t,r,n,c]=e,[_,u]=o(t,r),[i,g]=o(n,c);return[_,u,i,g]},r.meters_extent_to_geographic=function(e){const[t,r,n,o]=e,[_,u]=c(t,r),[i,g]=c(n,o);return[_,u,i,g]}},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const _=e(333);class s extends _.MercatorTileSource{constructor(e){super(e)}get_image_url(e,t,r){const _=this.string_lookup_replace(this.url,this.extra_url_vars),[s,o,u]=this.tms_to_wmts(e,t,r),c=this.tile_xyz_to_quadkey(s,o,u);return _.replace(\"{Q}\",c)}}r.QUADKEYTileSource=s,s.__name__=\"QUADKEYTileSource\"},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),_=t(338),n=t(91),a=t(158),r=t(72),o=s.__importStar(t(18)),h=t(251),l=t(9),d=t(8),m=t(89),c=t(85),g=t(339),p=s.__importDefault(t(340));class u extends n.DataRendererView{initialize(){this._tiles=[],super.initialize()}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.request_render()),this.connect(this.model.tile_source.change,()=>this.request_render())}styles(){return[...super.styles(),p.default]}get_extent(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]}get map_plot(){return this.plot_model}get map_canvas(){return this.layer.ctx}get map_frame(){return this.plot_view.frame}get x_range(){return this.map_plot.x_range}get y_range(){return this.map_plot.y_range}_set_data(){this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0}_update_attribution(){null!=this.attribution_el&&r.removeElement(this.attribution_el);const{attribution:t}=this.model.tile_source;if(d.isString(t)&&t.length>0){const{layout:e,frame:i}=this.plot_view,s=e.bbox.width-i.bbox.right,_=e.bbox.height-i.bbox.bottom,n=i.bbox.width;this.attribution_el=r.div({class:g.bk_tile_attribution,style:{position:\"absolute\",right:s+\"px\",bottom:_+\"px\",\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"9px\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}}),this.plot_view.canvas_view.add_event(this.attribution_el),this.attribution_el.innerHTML=t,this.attribution_el.title=this.attribution_el.textContent.replace(/\\s*\\n\\s*/g,\" \")}}_map_data(){this.initial_extent=this.get_extent();const t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width,t);this.x_range.start=e[0],this.y_range.start=e[1],this.x_range.end=e[2],this.y_range.end=e[3],this.x_range instanceof a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._update_attribution()}_create_tile(t,e,i,s,_=!1){const[n,a,r]=this.model.tile_source.normalize_xyz(t,e,i),o={img:void 0,tile_coords:[t,e,i],normalized_coords:[n,a,r],quadkey:this.model.tile_source.tile_xyz_to_quadkey(t,e,i),cache_key:this.model.tile_source.tile_xyz_to_key(t,e,i),bounds:s,loaded:!1,finished:!1,x_coord:s[0],y_coord:s[3]},l=this.model.tile_source.get_image_url(n,a,r);new h.ImageLoader(l,{loaded:t=>{Object.assign(o,{img:t,loaded:!0}),_?(o.finished=!0,this.notify_finished()):this.request_render()},failed(){o.finished=!0}}),this.model.tile_source.tiles.set(o.cache_key,o),this._tiles.push(o)}_enforce_aspect_ratio(){if(this._last_height!==this.map_frame.bbox.height||this._last_width!==this.map_frame.bbox.width){const t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame.bbox.height,this.map_frame.bbox.width),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame.bbox.height,this.map_frame.bbox.width,e);this.x_range.setv({start:i[0],end:i[2]}),this.y_range.setv({start:i[1],end:i[3]}),this.extent=i,this._last_height=this.map_frame.bbox.height,this._last_width=this.map_frame.bbox.width}}has_finished(){if(!super.has_finished())return!1;if(0===this._tiles.length)return!1;for(const t of this._tiles)if(!t.finished)return!1;return!0}_render(){null==this.map_initialized&&(this._set_data(),this._map_data(),this.map_initialized=!0),this._enforce_aspect_ratio(),this._update(),null!=this.prefetch_timer&&clearTimeout(this.prefetch_timer),this.prefetch_timer=setTimeout(this._prefetch_tiles.bind(this),500),this.has_finished()&&this.notify_finished()}_draw_tile(t){const e=this.model.tile_source.tiles.get(t);if(null!=e&&e.loaded){const[[t],[i]]=this.coordinates.map_to_screen([e.bounds[0]],[e.bounds[3]]),[[s],[_]]=this.coordinates.map_to_screen([e.bounds[2]],[e.bounds[1]]),n=s-t,a=_-i,r=t,o=i,h=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,r,o,n,a),this.map_canvas.setImageSmoothingEnabled(h),e.finished=!0}}_set_rect(){const t=this.plot_model.properties.outline_line_width.value(),e=this.map_frame.bbox.left+t/2,i=this.map_frame.bbox.top+t/2,s=this.map_frame.bbox.width-t,_=this.map_frame.bbox.height-t;this.map_canvas.rect(e,i,s,_),this.map_canvas.clip()}_render_tiles(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(const e of t)this._draw_tile(e);this.map_canvas.restore()}_prefetch_tiles(){const{tile_source:t}=this.model,e=this.get_extent(),i=this.map_frame.bbox.height,s=this.map_frame.bbox.width,_=this.model.tile_source.get_level_by_extent(e,i,s),n=this.model.tile_source.get_tiles_by_extent(e,_);for(let e=0,i=Math.min(10,n.length);e<i;e++){const[i,s,_]=n[e],a=this.model.tile_source.children_by_tile_xyz(i,s,_);for(const e of a){const[i,s,_,n]=e;t.tiles.has(t.tile_xyz_to_key(i,s,_))||this._create_tile(i,s,_,n,!0)}}}_fetch_tiles(t){for(const e of t){const[t,i,s,_]=e;this._create_tile(t,i,s,_)}}_update(){const{tile_source:t}=this.model,{min_zoom:e}=t,{max_zoom:i}=t;let s=this.get_extent();const _=this.extent[2]-this.extent[0]<s[2]-s[0],n=this.map_frame.bbox.height,a=this.map_frame.bbox.width;let r=t.get_level_by_extent(s,n,a),o=!1;r<e?(s=this.extent,r=e,o=!0):r>i&&(s=this.extent,r=i,o=!0),o&&(this.x_range.setv({x_range:{start:s[0],end:s[2]}}),this.y_range.setv({start:s[1],end:s[3]})),this.extent=s;const h=t.get_tiles_by_extent(s,r),d=[],m=[],c=[],g=[];for(const e of h){const[i,s,n]=e,a=t.tile_xyz_to_key(i,s,n),r=t.tiles.get(a);if(null!=r&&r.loaded)m.push(a);else if(this.model.render_parents){const[e,a,r]=t.get_closest_parent_by_tile_xyz(i,s,n),o=t.tile_xyz_to_key(e,a,r),h=t.tiles.get(o);if(null!=h&&h.loaded&&!l.includes(c,o)&&c.push(o),_){const e=t.children_by_tile_xyz(i,s,n);for(const[i,s,_]of e){const e=t.tile_xyz_to_key(i,s,_);t.tiles.has(e)&&g.push(e)}}}null==r&&d.push(e)}this._render_tiles(c),this._render_tiles(g),this._render_tiles(m),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout(()=>this._fetch_tiles(d),65)}}i.TileRendererView=u,u.__name__=\"TileRendererView\";class b extends n.DataRenderer{constructor(t){super(t),this._selection_manager=new m.SelectionManager({source:new c.ColumnDataSource})}static init_TileRenderer(){this.prototype.default_view=u,this.define({alpha:[o.Number,1],smoothing:[o.Boolean,!0],tile_source:[o.Instance,()=>new _.WMTSTileSource],render_parents:[o.Boolean,!0]})}get_selection_manager(){return this._selection_manager}}i.TileRenderer=b,b.__name__=\"TileRenderer\",b.init_TileRenderer()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(333);class s extends o.MercatorTileSource{constructor(e){super(e)}get_image_url(e,t,r){const o=this.string_lookup_replace(this.url,this.extra_url_vars),[s,c,_]=this.tms_to_wmts(e,t,r);return o.replace(\"{X}\",s.toString()).replace(\"{Y}\",c.toString()).replace(\"{Z}\",_.toString())}}r.WMTSTileSource=s,s.__name__=\"WMTSTileSource\"},\n      function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.bk_tile_attribution=\"bk-tile-attribution\"},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});n.default=\"\\n.bk-root .bk-tile-attribution a {\\n  color: black;\\n}\\n\"},\n      function _(e,r,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(333);class c extends o.MercatorTileSource{constructor(e){super(e)}get_image_url(e,r,t){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",r.toString()).replace(\"{Z}\",t.toString())}}t.TMSTileSource=c,c.__name__=\"TMSTileSource\"},\n      function _(e,r,a){Object.defineProperty(a,\"__esModule\",{value:!0});var t=e(343);a.CanvasTexture=t.CanvasTexture;var u=e(345);a.ImageURLTexture=u.ImageURLTexture;var v=e(344);a.Texture=v.Texture},\n      function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(1),c=t(344),s=r.__importStar(t(18)),i=t(29);class a extends c.Texture{constructor(t){super(t)}static init_CanvasTexture(){this.define({code:[s.String]})}get func(){const t=i.use_strict(this.code);return new Function(\"ctx\",\"color\",\"scale\",\"weight\",t)}get_pattern(t,e,n){return r=>{const c=document.createElement(\"canvas\");c.width=e,c.height=e;const s=c.getContext(\"2d\");return this.func.call(this,s,t,e,n),r.createPattern(c,this.repetition)}}}n.CanvasTexture=a,a.__name__=\"CanvasTexture\",a.init_CanvasTexture()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1),n=e(81),o=r.__importStar(e(18));class _ extends n.Model{constructor(e){super(e)}static init_Texture(){this.define({repetition:[o.TextureRepetition,\"repeat\"]})}onload(e){e()}}i.Texture=_,_.__name__=\"Texture\",_.init_Texture()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1),a=e(344),n=r.__importStar(e(18)),s=e(251);class o extends a.Texture{constructor(e){super(e)}static init_ImageURLTexture(){this.define({url:[n.String]})}initialize(){super.initialize(),this._loader=new s.ImageLoader(this.url)}get_pattern(e,t,i){return e=>this._loader.finished?e.createPattern(this._loader.image,this.repetition):null}onload(e){this._loader.promise.then(()=>e())}}i.ImageURLTexture=o,o.__name__=\"ImageURLTexture\",o.init_ImageURLTexture()},\n      function _(o,l,T){Object.defineProperty(T,\"__esModule\",{value:!0});var a=o(307);T.ActionTool=a.ActionTool;var r=o(347);T.CustomAction=r.CustomAction;var e=o(308);T.HelpTool=e.HelpTool;var v=o(348);T.RedoTool=v.RedoTool;var t=o(349);T.ResetTool=t.ResetTool;var n=o(350);T.SaveTool=n.SaveTool;var s=o(351);T.UndoTool=s.UndoTool;var i=o(352);T.ZoomInTool=i.ZoomInTool;var P=o(355);T.ZoomOutTool=P.ZoomOutTool;var c=o(296);T.ButtonTool=c.ButtonTool;var d=o(356);T.EditTool=d.EditTool;var u=o(357);T.BoxEditTool=u.BoxEditTool;var y=o(358);T.FreehandDrawTool=y.FreehandDrawTool;var m=o(359);T.PointDrawTool=m.PointDrawTool;var x=o(360);T.PolyDrawTool=x.PolyDrawTool;var B=o(361);T.PolyTool=B.PolyTool;var S=o(362);T.PolyEditTool=S.PolyEditTool;var b=o(363);T.BoxSelectTool=b.BoxSelectTool;var h=o(366);T.BoxZoomTool=h.BoxZoomTool;var E=o(306);T.GestureTool=E.GestureTool;var Z=o(367);T.LassoSelectTool=Z.LassoSelectTool;var p=o(369);T.LineEditTool=p.LineEditTool;var w=o(371);T.PanTool=w.PanTool;var C=o(368);T.PolySelectTool=C.PolySelectTool;var D=o(372);T.RangeTool=D.RangeTool;var H=o(364);T.SelectTool=H.SelectTool;var R=o(373);T.TapTool=R.TapTool;var A=o(374);T.WheelPanTool=A.WheelPanTool;var I=o(375);T.WheelZoomTool=I.WheelZoomTool;var L=o(376);T.CrosshairTool=L.CrosshairTool;var W=o(377);T.CustomJSHover=W.CustomJSHover;var O=o(378);T.HoverTool=O.HoverTool;var _=o(295);T.InspectTool=_.InspectTool;var f=o(298);T.Tool=f.Tool;var g=o(379);T.ToolProxy=g.ToolProxy;var F=o(294);T.Toolbar=F.Toolbar;var G=o(305);T.ToolbarBase=G.ToolbarBase;var J=o(380);T.ProxyToolbar=J.ProxyToolbar;var U=o(380);T.ToolbarBox=U.ToolbarBox},\n      function _(t,o,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),s=t(307),e=n.__importStar(t(18)),c=t(299);class _ extends s.ActionToolButtonView{css_classes(){return super.css_classes().concat(c.bk_toolbar_button_custom_action)}}i.CustomActionButtonView=_,_.__name__=\"CustomActionButtonView\";class l extends s.ActionToolView{doit(){null!=this.model.callback&&this.model.callback.execute(this.model)}}i.CustomActionView=l,l.__name__=\"CustomActionView\";class u extends s.ActionTool{constructor(t){super(t),this.tool_name=\"Custom Action\",this.button_view=_}static init_CustomAction(){this.prototype.default_view=l,this.define({action_tooltip:[e.String,\"Perform a Custom Action\"],callback:[e.Any],icon:[e.String]})}get tooltip(){return this.action_tooltip}}i.CustomAction=u,u.__name__=\"CustomAction\",u.init_CustomAction()},\n      function _(o,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=o(307),s=o(309);class n extends i.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state_changed,()=>this.model.disabled=!this.plot_view.can_redo())}doit(){this.plot_view.redo()}}t.RedoToolView=n,n.__name__=\"RedoToolView\";class _ extends i.ActionTool{constructor(o){super(o),this.tool_name=\"Redo\",this.icon=s.bk_tool_icon_redo}static init_RedoTool(){this.prototype.default_view=n,this.override({disabled:!0}),this.register_alias(\"redo\",()=>new _)}}t.RedoTool=_,_.__name__=\"RedoTool\",_.init_RedoTool()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(307),i=e(309);class _ extends s.ActionToolView{doit(){this.plot_view.reset()}}o.ResetToolView=_,_.__name__=\"ResetToolView\";class l extends s.ActionTool{constructor(e){super(e),this.tool_name=\"Reset\",this.icon=i.bk_tool_icon_reset}static init_ResetTool(){this.prototype.default_view=_,this.register_alias(\"reset\",()=>new l)}}o.ResetTool=l,l.__name__=\"ResetTool\",l.init_ResetTool()},\n      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const a=e(307),i=e(309);class n extends a.ActionToolView{async copy(){const e=await this.plot_view.to_blob(),o=new ClipboardItem({[e.type]:e});await navigator.clipboard.write([o])}async save(e){const o=await this.plot_view.to_blob(),t=document.createElement(\"a\");t.href=URL.createObjectURL(o),t.download=e,t.target=\"_blank\",t.dispatchEvent(new MouseEvent(\"click\"))}doit(e=\"save\"){switch(e){case\"save\":this.save(\"bokeh_plot\");break;case\"copy\":this.copy()}}}t.SaveToolView=n,n.__name__=\"SaveToolView\";class s extends a.ActionTool{constructor(e){super(e),this.tool_name=\"Save\",this.icon=i.bk_tool_icon_save}static init_SaveTool(){this.prototype.default_view=n,this.register_alias(\"save\",()=>new s)}get menu(){return[{icon:\"bk-tool-icon-copy-to-clipboard\",tooltip:\"Copy image to clipboard\",if:()=>\"undefined\"!=typeof ClipboardItem,handler:()=>{this.do.emit(\"copy\")}}]}}t.SaveTool=s,s.__name__=\"SaveTool\",s.init_SaveTool()},\n      function _(o,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=o(307),i=o(309);class s extends n.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state_changed,()=>this.model.disabled=!this.plot_view.can_undo())}doit(){this.plot_view.undo()}}e.UndoToolView=s,s.__name__=\"UndoToolView\";class _ extends n.ActionTool{constructor(o){super(o),this.tool_name=\"Undo\",this.icon=i.bk_tool_icon_undo}static init_UndoTool(){this.prototype.default_view=s,this.override({disabled:!0}),this.register_alias(\"undo\",()=>new _)}}e.UndoTool=_,_.__name__=\"UndoTool\",_.init_UndoTool()},\n      function _(o,i,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=o(353),s=o(309);class t extends n.ZoomBaseTool{constructor(o){super(o),this.sign=1,this.tool_name=\"Zoom In\",this.icon=s.bk_tool_icon_zoom_in}static init_ZoomInTool(){this.prototype.default_view=n.ZoomBaseToolView,this.register_alias(\"zoom_in\",()=>new t({dimensions:\"both\"})),this.register_alias(\"xzoom_in\",()=>new t({dimensions:\"width\"})),this.register_alias(\"yzoom_in\",()=>new t({dimensions:\"height\"}))}}e.ZoomInTool=t,t.__name__=\"ZoomInTool\",t.init_ZoomInTool()},\n      function _(o,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=o(1),s=o(307),n=o(354),_=i.__importStar(o(18));class l extends s.ActionToolView{doit(){const o=this.plot_view.frame,t=this.model.dimensions,e=\"width\"==t||\"both\"==t,i=\"height\"==t||\"both\"==t,s=n.scale_range(o,this.model.sign*this.model.factor,e,i);this.plot_view.push_state(\"zoom_out\",{range:s}),this.plot_view.update_range(s,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model)}}e.ZoomBaseToolView=l,l.__name__=\"ZoomBaseToolView\";class a extends s.ActionTool{constructor(o){super(o)}static init_ZoomBaseTool(){this.prototype.default_view=l,this.define({factor:[_.Percent,.1],dimensions:[_.Dimensions,\"both\"]})}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}e.ZoomBaseTool=a,a.__name__=\"ZoomBaseTool\",a.init_ZoomBaseTool()},\n      function _(n,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=n(10);function r(n,e,t){const[o,r]=[n.start,n.end],s=null!=t?t:(r+o)/2;return[o-(o-s)*e,r-(r-s)*e]}function s(n,[e,t]){const o=new Map;for(const[r,s]of n){const[n,c]=s.r_invert(e,t);o.set(r,{start:n,end:c})}return o}t.scale_highlow=r,t.get_info=s,t.scale_range=function(n,e,t=!0,c=!0,l){e=o.clamp(e,-.9,.9);const a=t?e:0,[u,_]=r(n.bbox.h_range,a,null!=l?l.x:void 0),i=s(n.x_scales,[u,_]),f=c?e:0,[d,b]=r(n.bbox.v_range,f,null!=l?l.y:void 0);return{xrs:i,yrs:s(n.y_scales,[d,b]),factor:e}}},\n      function _(o,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=o(353),s=o(309);class n extends e.ZoomBaseTool{constructor(o){super(o),this.sign=-1,this.tool_name=\"Zoom Out\",this.icon=s.bk_tool_icon_zoom_out}static init_ZoomOutTool(){this.prototype.default_view=e.ZoomBaseToolView,this.register_alias(\"zoom_out\",()=>new n({dimensions:\"both\"})),this.register_alias(\"xzoom_out\",()=>new n({dimensions:\"width\"})),this.register_alias(\"yzoom_out\",()=>new n({dimensions:\"height\"}))}}i.ZoomOutTool=n,n.__name__=\"ZoomOutTool\",n.init_ZoomOutTool()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(1).__importStar(e(18)),i=e(9),n=e(8),r=e(11),_=e(306);class c extends _.GestureToolView{constructor(){super(...arguments),this._mouse_in_frame=!0}_select_mode(e){const{shiftKey:t,ctrlKey:o}=e;return t||o?t&&!o?\"append\":!t&&o?\"intersect\":t&&o?\"subtract\":void r.unreachable():\"replace\"}_move_enter(e){this._mouse_in_frame=!0}_move_exit(e){this._mouse_in_frame=!1}_map_drag(e,t,o){if(!this.plot_view.frame.bbox.contains(e,t))return null;const s=this.plot_view.renderer_views.get(o);return[s.coordinates.x_scale.invert(e),s.coordinates.y_scale.invert(t)]}_delete_selected(e){const t=e.data_source,o=t.selected.indices;o.sort();for(const e of t.columns()){const s=t.get_array(e);for(let e=0;e<o.length;e++){const t=o[e];s.splice(t-e,1)}}this._emit_cds_changes(t)}_pop_glyphs(e,t){const o=e.columns();if(t&&o.length)for(const s of o){let o=e.get_array(s);const i=o.length-t+1;i<1||(n.isArray(o)||(o=Array.from(o),e.data[s]=o),o.splice(0,i))}}_emit_cds_changes(e,t=!0,o=!0,s=!0){o&&e.selection_manager.clear(),t&&e.change.emit(),s&&(e.data=e.data,e.properties.data.change.emit())}_drag_points(e,t,o=\"both\"){if(null==this._basepoint)return;const[s,i]=this._basepoint;for(const n of t){const t=this._map_drag(s,i,n),r=this._map_drag(e.sx,e.sy,n);if(null==r||null==t)continue;const[_,c]=r,[a,l]=t,[d,u]=[_-a,c-l],h=n.glyph,m=n.data_source,[p,f]=[h.x.field,h.y.field];for(const e of m.selected.indices)!p||\"width\"!=o&&\"both\"!=o||(m.data[p][e]+=d),!f||\"height\"!=o&&\"both\"!=o||(m.data[f][e]+=u);m.change.emit()}this._basepoint=[e.sx,e.sy]}_pad_empty_columns(e,t){for(const o of e.columns())i.includes(t,o)||e.get_array(o).push(this.model.empty_value)}_select_event(e,t,o){const s=this.plot_view.frame,{sx:i,sy:n}=e;if(!s.bbox.contains(i,n))return[];const r={type:\"point\",sx:i,sy:n},_=[];for(const e of o){const o=e.get_selection_manager(),s=e.data_source,i=[this.plot_view.renderer_views.get(e)];o.select(i,r,!0,t)&&_.push(e),s.properties.selected.change.emit()}return _}}o.EditToolView=c,c.__name__=\"EditToolView\";class a extends _.GestureTool{constructor(e){super(e)}static init_EditTool(){this.define({custom_icon:[s.String],custom_tooltip:[s.String],empty_value:[s.Any],renderers:[s.Array,[]]})}get tooltip(){return this.custom_tooltip||this.tool_name}get computed_icon(){return this.custom_icon||this.icon}}o.EditTool=a,a.__name__=\"EditTool\",a.init_EditTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),_=e(72),o=i.__importStar(e(18)),n=e(356),a=e(309);class d extends n.EditToolView{_tap(e){null==this._draw_basepoint&&null==this._basepoint&&this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)if(e.keyCode===_.Keys.Backspace)this._delete_selected(t);else if(e.keyCode==_.Keys.Esc){t.data_source.selection_manager.clear()}}_set_extent([e,t],[s,i],_,o=!1){const n=this.model.renderers[0],a=this.plot_view.renderer_views.get(n),d=n.glyph,l=n.data_source,[r,h]=a.coordinates.x_scale.r_invert(e,t),[p,u]=a.coordinates.y_scale.r_invert(s,i),[c,m]=[(r+h)/2,(p+u)/2],[f,b]=[h-r,u-p],[x,y]=[d.x.field,d.y.field],[w,v]=[d.width.field,d.height.field];if(_)this._pop_glyphs(l,this.model.num_objects),x&&l.get_array(x).push(c),y&&l.get_array(y).push(m),w&&l.get_array(w).push(f),v&&l.get_array(v).push(b),this._pad_empty_columns(l,[x,y,w,v]);else{const e=l.data[x].length-1;x&&(l.data[x][e]=c),y&&(l.data[y][e]=m),w&&(l.data[w][e]=f),v&&(l.data[v][e]=b)}this._emit_cds_changes(l,!0,!1,o)}_update_box(e,t=!1,s=!1){if(null==this._draw_basepoint)return;const i=[e.sx,e.sy],_=this.plot_view.frame,o=this.model.dimensions,n=this.model._get_dim_limits(this._draw_basepoint,i,_,o);if(null!=n){const[e,i]=n;this._set_extent(e,i,t,s)}}_doubletap(e){this.model.active&&(null!=this._draw_basepoint?(this._update_box(e,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[e.sx,e.sy],this._select_event(e,\"append\",this.model.renderers),this._update_box(e,!0,!1)))}_move(e){this._update_box(e,!1,!1)}_pan_start(e){if(e.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[e.sx,e.sy],this._update_box(e,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy]}}_pan(e,t=!1,s=!1){if(e.shiftKey){if(null==this._draw_basepoint)return;this._update_box(e,t,s)}else{if(null==this._basepoint)return;this._drag_points(e,this.model.renderers)}}_pan_end(e){if(this._pan(e,!1,!0),e.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0)}}}s.BoxEditToolView=d,d.__name__=\"BoxEditToolView\";class l extends n.EditTool{constructor(e){super(e),this.tool_name=\"Box Edit Tool\",this.icon=a.bk_tool_icon_box_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=1}static init_BoxEditTool(){this.prototype.default_view=d,this.define({dimensions:[o.Dimensions,\"both\"],num_objects:[o.Int,0]})}}s.BoxEditTool=l,l.__name__=\"BoxEditTool\",l.init_BoxEditTool()},\n      function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const s=e(1),r=e(72),_=s.__importStar(e(18)),o=e(8),i=e(356),d=e(309);class n extends i.EditToolView{_draw(e,t,a=!1){if(!this.model.active)return;const s=this.model.renderers[0],r=this._map_drag(e.sx,e.sy,s);if(null==r)return;const[_,i]=r,d=s.data_source,n=s.glyph,[l,h]=[n.xs.field,n.ys.field];if(\"new\"==t)this._pop_glyphs(d,this.model.num_objects),l&&d.get_array(l).push([_]),h&&d.get_array(h).push([i]),this._pad_empty_columns(d,[l,h]);else if(\"add\"==t){if(l){const e=d.data[l].length-1;let t=d.get_array(l)[e];o.isArray(t)||(t=Array.from(t),d.data[l][e]=t),t.push(_)}if(h){const e=d.data[h].length-1;let t=d.get_array(h)[e];o.isArray(t)||(t=Array.from(t),d.data[h][e]=t),t.push(i)}}this._emit_cds_changes(d,!0,!0,a)}_pan_start(e){this._draw(e,\"new\")}_pan(e){this._draw(e,\"add\")}_pan_end(e){this._draw(e,\"add\",!0)}_tap(e){this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===r.Keys.Esc?t.data_source.selection_manager.clear():e.keyCode===r.Keys.Backspace&&this._delete_selected(t)}}a.FreehandDrawToolView=n,n.__name__=\"FreehandDrawToolView\";class l extends i.EditTool{constructor(e){super(e),this.tool_name=\"Freehand Draw Tool\",this.icon=d.bk_tool_icon_freehand_draw,this.event_type=[\"pan\",\"tap\"],this.default_order=3}static init_FreehandDrawTool(){this.prototype.default_view=n,this.define({num_objects:[_.Int,0]})}}a.FreehandDrawTool=l,l.__name__=\"FreehandDrawTool\",l.init_FreehandDrawTool()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(1),i=e(72),a=s.__importStar(e(18)),n=e(356),_=e(309);class r extends n.EditToolView{_tap(e){if(this._select_event(e,this._select_mode(e),this.model.renderers).length||!this.model.add)return;const t=this.model.renderers[0],o=this._map_drag(e.sx,e.sy,t);if(null==o)return;const s=t.glyph,i=t.data_source,[a,n]=[s.x.field,s.y.field],[_,r]=o;this._pop_glyphs(i,this.model.num_objects),a&&i.get_array(a).push(_),n&&i.get_array(n).push(r),this._pad_empty_columns(i,[a,n]),i.change.emit(),i.data=i.data,i.properties.data.change.emit()}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===i.Keys.Backspace?this._delete_selected(t):e.keyCode==i.Keys.Esc&&t.data_source.selection_manager.clear()}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){this.model.drag&&null!=this._basepoint&&this._drag_points(e,this.model.renderers)}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0);this._basepoint=null}}}o.PointDrawToolView=r,r.__name__=\"PointDrawToolView\";class d extends n.EditTool{constructor(e){super(e),this.tool_name=\"Point Draw Tool\",this.icon=_.bk_tool_icon_point_draw,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=2}static init_PointDrawTool(){this.prototype.default_view=r,this.define({add:[a.Boolean,!0],drag:[a.Boolean,!0],num_objects:[a.Int,0]})}}o.PointDrawTool=d,d.__name__=\"PointDrawTool\",d.init_PointDrawTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),r=e(72),a=i.__importStar(e(18)),o=e(8),n=e(361),_=e(309);class d extends n.PolyToolView{constructor(){super(...arguments),this._drawing=!1,this._initialized=!1}_tap(e){this._drawing?this._draw(e,\"add\",!0):this._select_event(e,this._select_mode(e),this.model.renderers)}_draw(e,t,s=!1){const i=this.model.renderers[0],r=this._map_drag(e.sx,e.sy,i);if(this._initialized||this.activate(),null==r)return;const[a,n]=this._snap_to_vertex(e,...r),_=i.data_source,d=i.glyph,[l,h]=[d.xs.field,d.ys.field];if(\"new\"==t)this._pop_glyphs(_,this.model.num_objects),l&&_.get_array(l).push([a,a]),h&&_.get_array(h).push([n,n]),this._pad_empty_columns(_,[l,h]);else if(\"edit\"==t){if(l){const e=_.data[l][_.data[l].length-1];e[e.length-1]=a}if(h){const e=_.data[h][_.data[h].length-1];e[e.length-1]=n}}else if(\"add\"==t){if(l){const e=_.data[l].length-1;let t=_.get_array(l)[e];const s=t[t.length-1];t[t.length-1]=a,o.isArray(t)||(t=Array.from(t),_.data[l][e]=t),t.push(s)}if(h){const e=_.data[h].length-1;let t=_.get_array(h)[e];const s=t[t.length-1];t[t.length-1]=n,o.isArray(t)||(t=Array.from(t),_.data[h][e]=t),t.push(s)}}this._emit_cds_changes(_,!0,!1,s)}_show_vertices(){if(!this.model.active)return;const e=[],t=[];for(let s=0;s<this.model.renderers.length;s++){const i=this.model.renderers[s],r=i.data_source,a=i.glyph,[o,n]=[a.xs.field,a.ys.field];if(o)for(const t of r.get_array(o))Array.prototype.push.apply(e,t);if(n)for(const e of r.get_array(n))Array.prototype.push.apply(t,e);this._drawing&&s==this.model.renderers.length-1&&(e.splice(e.length-1,1),t.splice(t.length-1,1))}this._set_vertices(e,t)}_doubletap(e){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(e,\"edit\",!0)):(this._drawing=!0,this._draw(e,\"new\",!0)))}_move(e){this._drawing&&this._draw(e,\"edit\")}_remove(){const e=this.model.renderers[0],t=e.data_source,s=e.glyph,[i,r]=[s.xs.field,s.ys.field];if(i){const e=t.data[i].length-1,s=t.get_array(i)[e];s.splice(s.length-1,1)}if(r){const e=t.data[r].length-1,s=t.get_array(r)[e];s.splice(s.length-1,1)}this._emit_cds_changes(t)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===r.Keys.Backspace?this._delete_selected(t):e.keyCode==r.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),t.data_source.selection_manager.clear())}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){if(null==this._basepoint||!this.model.drag)return;const[t,s]=this._basepoint;for(const i of this.model.renderers){const r=this._map_drag(t,s,i),a=this._map_drag(e.sx,e.sy,i);if(null==a||null==r)continue;const o=i.data_source,n=i.glyph,[_,d]=[n.xs.field,n.ys.field];if(!_&&!d)continue;const[l,h]=a,[c,g]=r,[p,f]=[l-c,h-g];for(const e of o.selected.indices){let t,s,i;_&&(s=o.data[_][e]),d?(i=o.data[d][e],t=i.length):t=s.length;for(let e=0;e<t;e++)s&&(s[e]+=p),i&&(i[e]+=f)}o.change.emit()}this._basepoint=[e.sx,e.sy]}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source);this._basepoint=null}}activate(){if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(const e of this.model.renderers){const t=e.data_source;t.connect(t.properties.data.change,()=>this._show_vertices())}this._initialized=!0}}deactivate(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()}}s.PolyDrawToolView=d,d.__name__=\"PolyDrawToolView\";class l extends n.PolyTool{constructor(e){super(e),this.tool_name=\"Polygon Draw Tool\",this.icon=_.bk_tool_icon_poly_draw,this.event_type=[\"pan\",\"tap\",\"move\"],this.default_order=3}static init_PolyDrawTool(){this.prototype.default_view=d,this.define({drag:[a.Boolean,!0],num_objects:[a.Int,0]})}}s.PolyDrawTool=l,l.__name__=\"PolyDrawTool\",l.init_PolyDrawTool()},\n      function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=e(1).__importStar(e(18)),i=e(8),s=e(356);class _ extends s.EditToolView{_set_vertices(e,t){const r=this.model.vertex_renderer.glyph,o=this.model.vertex_renderer.data_source,[s,_]=[r.x.field,r.y.field];s&&(i.isArray(e)?o.data[s]=e:r.x={value:e}),_&&(i.isArray(t)?o.data[_]=t:r.y={value:t}),this._emit_cds_changes(o,!0,!0,!1)}_hide_vertices(){this._set_vertices([],[])}_snap_to_vertex(e,t,r){if(this.model.vertex_renderer){const o=this._select_event(e,\"replace\",[this.model.vertex_renderer]),i=this.model.vertex_renderer.data_source,s=this.model.vertex_renderer.glyph,[_,l]=[s.x.field,s.y.field];if(o.length){const e=i.selected.indices[0];_&&(t=i.data[_][e]),l&&(r=i.data[l][e]),i.selection_manager.clear()}}return[t,r]}}r.PolyToolView=_,_.__name__=\"PolyToolView\";class l extends s.EditTool{constructor(e){super(e)}static init_PolyTool(){this.prototype.default_view=_,this.define({vertex_renderer:[o.Instance]})}}r.PolyTool=l,l.__name__=\"PolyTool\",l.init_PolyTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=e(72),i=e(8),_=e(361),d=e(309);class n extends _.PolyToolView{constructor(){super(...arguments),this._drawing=!1}_doubletap(e){if(!this.model.active)return;const t=this._map_drag(e.sx,e.sy,this.model.vertex_renderer);if(null==t)return;const[s,r]=t,i=this._select_event(e,\"replace\",[this.model.vertex_renderer]),_=this.model.vertex_renderer.data_source,d=this.model.vertex_renderer.glyph,[n,l]=[d.x.field,d.y.field];if(i.length&&null!=this._selected_renderer){const e=_.selected.indices[0];this._drawing?(this._drawing=!1,_.selection_manager.clear()):(_.selected.indices=[e+1],n&&_.get_array(n).splice(e+1,0,s),l&&_.get_array(l).splice(e+1,0,r),this._drawing=!0),_.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(e)}_show_vertices(e){if(!this.model.active)return;const t=this._select_event(e,\"replace\",this.model.renderers);if(!t.length)return this._set_vertices([],[]),this._selected_renderer=null,void(this._drawing=!1);const s=t[0],r=s.glyph,_=s.data_source,d=_.selected.indices[0],[n,l]=[r.xs.field,r.ys.field];let a,c;n?(a=_.data[n][d],i.isArray(a)||(_.data[n][d]=a=Array.from(a))):a=r.xs.value,l?(c=_.data[l][d],i.isArray(c)||(_.data[l][d]=c=Array.from(c))):c=r.ys.value,this._selected_renderer=s,this._set_vertices(a,c)}_move(e){if(this._drawing&&null!=this._selected_renderer){const t=this.model.vertex_renderer,s=t.data_source,r=t.glyph,i=this._map_drag(e.sx,e.sy,t);if(null==i)return;let[_,d]=i;const n=s.selected.indices;[_,d]=this._snap_to_vertex(e,_,d),s.selected.indices=n;const[l,a]=[r.x.field,r.y.field],c=n[0];l&&(s.data[l][c]=_),a&&(s.data[a][c]=d),s.change.emit(),this._selected_renderer.data_source.change.emit()}}_tap(e){const t=this.model.vertex_renderer,s=this._map_drag(e.sx,e.sy,t);if(null==s)return;if(this._drawing&&this._selected_renderer){let[r,i]=s;const _=t.data_source,d=t.glyph,[n,l]=[d.x.field,d.y.field],a=_.selected.indices;[r,i]=this._snap_to_vertex(e,r,i);const c=a[0];if(_.selected.indices=[c+1],n){const e=_.get_array(n),t=e[c];e[c]=r,e.splice(c+1,0,t)}if(l){const e=_.get_array(l),t=e[c];e[c]=i,e.splice(c+1,0,t)}return _.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}const r=this._select_mode(e);this._select_event(e,r,[t]),this._select_event(e,r,this.model.renderers)}_remove_vertex(){if(!this._drawing||!this._selected_renderer)return;const e=this.model.vertex_renderer,t=e.data_source,s=e.glyph,r=t.selected.indices[0],[i,_]=[s.x.field,s.y.field];i&&t.get_array(i).splice(r,1),_&&t.get_array(_).splice(r,1),t.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}_pan_start(e){this._select_event(e,\"append\",[this.model.vertex_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._emit_cds_changes(this.model.vertex_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}_keyup(e){if(!this.model.active||!this._mouse_in_frame)return;let t;t=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(const s of t)e.keyCode===r.Keys.Backspace?(this._delete_selected(s),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):e.keyCode==r.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),s.data_source.selection_manager.clear())}deactivate(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())}}s.PolyEditToolView=n,n.__name__=\"PolyEditToolView\";class l extends _.PolyTool{constructor(e){super(e),this.tool_name=\"Poly Edit Tool\",this.icon=d.bk_tool_icon_poly_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_PolyEditTool(){this.prototype.default_view=n}}s.PolyEditTool=l,l.__name__=\"PolyEditTool\",l.init_PolyEditTool()},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(1),i=e(364),l=e(124),_=s.__importStar(e(18)),n=e(309);class c extends i.SelectToolView{_compute_limits(e){const t=this.plot_view.frame,o=this.model.dimensions;let s=this._base_point;if(\"center\"==this.model.origin){const[t,o]=s,[i,l]=e;s=[t-(i-t),o-(l-o)]}return this.model._get_dim_limits(s,e,t,o)}_pan_start(e){const{sx:t,sy:o}=e;this._base_point=[t,o]}_pan(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this.model.overlay.update({left:i[0],right:i[1],top:l[0],bottom:l[1]}),this.model.select_every_mousemove&&this._do_select(i,l,!1,this._select_mode(e))}_pan_end(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this._do_select(i,l,!0,this._select_mode(e)),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.push_state(\"box_select\",{selection:this.plot_view.get_selection()})}_do_select([e,t],[o,s],i,l=\"replace\"){const _={type:\"rect\",sx0:e,sx1:t,sy0:o,sy1:s};this._select(_,i,l)}}o.BoxSelectToolView=c,c.__name__=\"BoxSelectToolView\";const r=()=>new l.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class h extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Box Select\",this.icon=n.bk_tool_icon_box_select,this.event_type=\"pan\",this.default_order=30}static init_BoxSelectTool(){this.prototype.default_view=c,this.define({dimensions:[_.Dimensions,\"both\"],select_every_mousemove:[_.Boolean,!1],overlay:[_.Instance,r],origin:[_.BoxOrigin,\"corner\"]}),this.register_alias(\"box_select\",()=>new h),this.register_alias(\"xbox_select\",()=>new h({dimensions:\"width\"})),this.register_alias(\"ybox_select\",()=>new h({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}o.BoxSelectTool=h,h.__name__=\"BoxSelectTool\",h.init_BoxSelectTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(1),o=e(306),r=e(90),c=e(116),i=e(365),l=n.__importStar(e(18)),a=e(72),_=e(313),d=e(15),h=e(11);class p extends o.GestureToolView{connect_signals(){super.connect_signals(),this.model.clear.connect(()=>this._clear())}get computed_renderers(){const e=this.model.renderers,t=this.plot_model.renderers,s=this.model.names;return i.compute_renderers(e,t,s)}_computed_renderers_by_data_source(){var e;const t=new Map;for(const s of this.computed_renderers){let n;if(s instanceof r.GlyphRenderer)n=s.data_source;else{if(!(s instanceof c.GraphRenderer))continue;n=s.node_renderer.data_source}const o=null!==(e=t.get(n))&&void 0!==e?e:[];t.set(n,[...o,s])}return t}_select_mode(e){const{shiftKey:t,ctrlKey:s}=e;return t||s?t&&!s?\"append\":!t&&s?\"intersect\":t&&s?\"subtract\":void h.unreachable():this.model.mode}_keyup(e){e.keyCode==a.Keys.Esc&&this._clear()}_clear(){for(const e of this.computed_renderers)e.get_selection_manager().clear();this.plot_view.request_render()}_select(e,t,s){const n=this._computed_renderers_by_data_source();for(const[,o]of n){const n=o[0].get_selection_manager(),r=[];for(const e of o){const t=this.plot_view.renderer_views.get(e);null!=t&&r.push(t)}n.select(r,e,t,s)}null!=this.model.callback&&this._emit_callback(e),this._emit_selection_event(e,t)}_emit_selection_event(e,t=!0){const{x_scale:s,y_scale:n}=this.plot_view.frame;let o;switch(e.type){case\"point\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"span\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"rect\":{const{sx0:t,sx1:r,sy0:c,sy1:i}=e,[l,a]=s.r_invert(t,r),[_,d]=n.r_invert(c,i);o=Object.assign(Object.assign({},e),{x0:l,y0:_,x1:a,y1:d});break}case\"poly\":{const{sx:t,sy:r}=e,c=s.v_invert(t),i=n.v_invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}}this.plot_model.trigger_event(new _.SelectionGeometry(o,t))}}s.SelectToolView=p,p.__name__=\"SelectToolView\";class u extends o.GestureTool{constructor(e){super(e)}initialize(){super.initialize(),this.clear=new d.Signal0(this,\"clear\")}static init_SelectTool(){this.define({renderers:[l.Any,\"auto\"],names:[l.Array,[]],mode:[l.Any,\"replace\"]})}get menu(){return[{icon:\"bk-tool-icon-replace-mode\",tooltip:\"Replace the current selection\",active:()=>\"replace\"==this.mode,handler:()=>{this.mode=\"replace\",this.active=!0}},{icon:\"bk-tool-icon-append-mode\",tooltip:\"Append to the current selection (Shift)\",active:()=>\"append\"==this.mode,handler:()=>{this.mode=\"append\",this.active=!0}},{icon:\"bk-tool-icon-intersect-mode\",tooltip:\"Intersect with the current selection (Ctrl)\",active:()=>\"intersect\"==this.mode,handler:()=>{this.mode=\"intersect\",this.active=!0}},{icon:\"bk-tool-icon-subtract-mode\",tooltip:\"Subtract from the current selection (Shift+Ctrl)\",active:()=>\"subtract\"==this.mode,handler:()=>{this.mode=\"subtract\",this.active=!0}},null,{icon:\"bk-tool-icon-clear-selection\",tooltip:\"Clear the current selection (Esc)\",handler:()=>{this.clear.emit()}}]}}s.SelectTool=u,u.__name__=\"SelectTool\",u.init_SelectTool()},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const r=e(9);t.compute_renderers=function(e,n,t){if(null==e)return[];let u=\"auto\"==e?n:e;return t.length>0&&(u=u.filter(e=>r.includes(t,e.name))),u}},\n      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const s=t(1),i=t(306),n=t(124),_=s.__importStar(t(18)),a=t(309);class l extends i.GestureToolView{_match_aspect(t,o,e){const s=e.bbox.aspect,i=e.bbox.h_range.end,n=e.bbox.h_range.start,_=e.bbox.v_range.end,a=e.bbox.v_range.start;let l=Math.abs(t[0]-o[0]),r=Math.abs(t[1]-o[1]);const h=0==r?0:l/r,[c]=h>=s?[1,h/s]:[s/h,1];let m,p,d,b;return t[0]<=o[0]?(m=t[0],p=t[0]+l*c,p>i&&(p=i)):(p=t[0],m=t[0]-l*c,m<n&&(m=n)),l=Math.abs(p-m),t[1]<=o[1]?(b=t[1],d=t[1]+l/s,d>_&&(d=_)):(d=t[1],b=t[1]-l/s,b<a&&(b=a)),r=Math.abs(d-b),t[0]<=o[0]?p=t[0]+s*r:m=t[0]-s*r,[[m,p],[b,d]]}_compute_limits(t){const o=this.plot_view.frame,e=this.model.dimensions;let s,i,n=this._base_point;if(\"center\"==this.model.origin){const[o,e]=n,[s,i]=t;n=[o-(s-o),e-(i-e)]}return this.model.match_aspect&&\"both\"==e?[s,i]=this._match_aspect(n,t,o):[s,i]=this.model._get_dim_limits(n,t,o,e),[s,i]}_pan_start(t){this._base_point=[t.sx,t.sy]}_pan(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this.model.overlay.update({left:e[0],right:e[1],top:s[0],bottom:s[1]})}_pan_end(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this._update(e,s),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null}_update([t,o],[e,s]){if(Math.abs(o-t)<=5||Math.abs(s-e)<=5)return;const{x_scales:i,y_scales:n}=this.plot_view.frame,_=new Map;for(const[e,s]of i){const[i,n]=s.r_invert(t,o);_.set(e,{start:i,end:n})}const a=new Map;for(const[t,o]of n){const[i,n]=o.r_invert(e,s);a.set(t,{start:i,end:n})}const l={xrs:_,yrs:a};this.plot_view.push_state(\"box_zoom\",{range:l}),this.plot_view.update_range(l)}}e.BoxZoomToolView=l,l.__name__=\"BoxZoomToolView\";const r=()=>new n.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class h extends i.GestureTool{constructor(t){super(t),this.tool_name=\"Box Zoom\",this.icon=a.bk_tool_icon_box_zoom,this.event_type=\"pan\",this.default_order=20}static init_BoxZoomTool(){this.prototype.default_view=l,this.define({dimensions:[_.Dimensions,\"both\"],overlay:[_.Instance,r],match_aspect:[_.Boolean,!1],origin:[_.BoxOrigin,\"corner\"]}),this.register_alias(\"box_zoom\",()=>new h({dimensions:\"both\"})),this.register_alias(\"xbox_zoom\",()=>new h({dimensions:\"width\"})),this.register_alias(\"ybox_zoom\",()=>new h({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}e.BoxZoomTool=h,h.__name__=\"BoxZoomTool\",h.init_BoxZoomTool()},\n      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(1),a=e(364),i=e(368),l=e(72),_=o.__importStar(e(18)),c=e(309);class n extends a.SelectToolView{initialize(){super.initialize(),this.data=null}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>this._active_change())}_active_change(){this.model.active||this._clear_overlay()}_keyup(e){e.keyCode==l.Keys.Enter&&this._clear_overlay()}_pan_start(e){const{sx:s,sy:t}=e;this.data={sx:[s],sy:[t]}}_pan(e){const{sx:s,sy:t}=e,[o,a]=this.plot_view.frame.bbox.clip(s,t);this.data.sx.push(o),this.data.sy.push(a);this.model.overlay.update({xs:this.data.sx,ys:this.data.sy}),this.model.select_every_mousemove&&this._do_select(this.data.sx,this.data.sy,!1,this._select_mode(e))}_pan_end(e){this._clear_overlay(),this._do_select(this.data.sx,this.data.sy,!0,this._select_mode(e)),this.plot_view.push_state(\"lasso_select\",{selection:this.plot_view.get_selection()})}_clear_overlay(){this.model.overlay.update({xs:[],ys:[]})}_do_select(e,s,t,o){const a={type:\"poly\",sx:e,sy:s};this._select(a,t,o)}}t.LassoSelectToolView=n,n.__name__=\"LassoSelectToolView\";class h extends a.SelectTool{constructor(e){super(e),this.tool_name=\"Lasso Select\",this.icon=c.bk_tool_icon_lasso_select,this.event_type=\"pan\",this.default_order=12}static init_LassoSelectTool(){this.prototype.default_view=n,this.define({select_every_mousemove:[_.Boolean,!0],overlay:[_.Instance,i.DEFAULT_POLY_OVERLAY]}),this.register_alias(\"lasso_select\",()=>new h)}}t.LassoSelectTool=h,h.__name__=\"LassoSelectTool\",h.init_LassoSelectTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const l=e(1),i=e(364),o=e(166),a=e(72),_=l.__importStar(e(18)),c=e(9),n=e(309);class h extends i.SelectToolView{initialize(){super.initialize(),this.data={sx:[],sy:[]}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>this._active_change())}_active_change(){this.model.active||this._clear_data()}_keyup(e){e.keyCode==a.Keys.Enter&&this._clear_data()}_doubletap(e){this._do_select(this.data.sx,this.data.sy,!0,this._select_mode(e)),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()}_clear_data(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})}_tap(e){const{sx:t,sy:s}=e;this.plot_view.frame.bbox.contains(t,s)&&(this.data.sx.push(t),this.data.sy.push(s),this.model.overlay.update({xs:c.copy(this.data.sx),ys:c.copy(this.data.sy)}))}_do_select(e,t,s,l){const i={type:\"poly\",sx:e,sy:t};this._select(i,s,l)}}s.PolySelectToolView=h,h.__name__=\"PolySelectToolView\",s.DEFAULT_POLY_OVERLAY=()=>new o.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class y extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Poly Select\",this.icon=n.bk_tool_icon_polygon_select,this.event_type=\"tap\",this.default_order=11}static init_PolySelectTool(){this.prototype.default_view=h,this.define({overlay:[_.Instance,s.DEFAULT_POLY_OVERLAY]}),this.register_alias(\"poly_select\",()=>new y)}}s.PolySelectTool=y,y.__name__=\"PolySelectTool\",y.init_PolySelectTool()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(370),r=s.__importStar(e(18)),_=e(309);class d extends n.LineToolView{constructor(){super(...arguments),this._drawing=!1}_doubletap(e){if(!this.model.active)return;const t=this.model.renderers;for(const i of t){1==this._select_event(e,\"replace\",[i]).length&&(this._selected_renderer=i)}this._show_intersections(),this._update_line_cds()}_show_intersections(){if(!this.model.active)return;if(null==this._selected_renderer)return;if(!this.model.renderers.length)return this._set_intersection([],[]),this._selected_renderer=null,void(this._drawing=!1);const e=this._selected_renderer.data_source,t=this._selected_renderer.glyph,[i,s]=[t.x.field,t.y.field],n=e.get_array(i),r=e.get_array(s);this._set_intersection(n,r)}_tap(e){const t=this.model.intersection_renderer;if(null==this._map_drag(e.sx,e.sy,t))return;if(this._drawing&&this._selected_renderer){const i=this._select_mode(e);if(0==this._select_event(e,i,[t]).length)return}const i=this._select_mode(e);this._select_event(e,i,[t]),this._select_event(e,i,this.model.renderers)}_update_line_cds(){if(null==this._selected_renderer)return;const e=this.model.intersection_renderer.glyph,t=this.model.intersection_renderer.data_source,[i,s]=[e.x.field,e.y.field];if(i&&s){const e=t.data[i],n=t.data[s];this._selected_renderer.data_source.data[i]=e,this._selected_renderer.data_source.data[s]=n}this._emit_cds_changes(this._selected_renderer.data_source,!0,!0,!1)}_pan_start(e){this._select_event(e,\"append\",[this.model.intersection_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer],this.model.dimensions),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer]),this._emit_cds_changes(this.model.intersection_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}activate(){this._drawing=!0}deactivate(){this._selected_renderer&&(this._drawing&&(this._drawing=!1),this._hide_intersections())}}i.LineEditToolView=d,d.__name__=\"LineEditToolView\";class o extends n.LineTool{constructor(e){super(e),this.tool_name=\"Line Edit Tool\",this.icon=_.bk_tool_icon_line_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_LineEditTool(){this.prototype.default_view=d,this.define({dimensions:[r.Dimensions,\"both\"]})}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}i.LineEditTool=o,o.__name__=\"LineEditTool\",o.init_LineEditTool()},\n      function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1).__importStar(e(18)),o=e(8),s=e(356);class _ extends s.EditToolView{_set_intersection(e,i){const t=this.model.intersection_renderer.glyph,n=this.model.intersection_renderer.data_source,[s,_]=[t.x.field,t.y.field];s&&(o.isArray(e)?n.data[s]=e:t.x={value:e}),_&&(o.isArray(i)?n.data[_]=i:t.y={value:i}),this._emit_cds_changes(n,!0,!0,!1)}_hide_intersections(){this._set_intersection([],[])}}t.LineToolView=_,_.__name__=\"LineToolView\";class r extends s.EditTool{constructor(e){super(e)}static init_LineTool(){this.prototype.default_view=_,this.define({intersection_renderer:[n.Instance]})}}t.LineTool=r,r.__name__=\"LineTool\",r.init_LineTool()},\n      function _(t,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const n=t(1),i=t(306),o=n.__importStar(t(18)),a=t(309);function _(t,s,e){const n=new Map;for(const[i,o]of t){const[t,a]=o.r_invert(s,e);n.set(i,{start:t,end:a})}return n}e.update_ranges=_;class h extends i.GestureToolView{_pan_start(t){this.last_dx=0,this.last_dy=0;const{sx:s,sy:e}=t,n=this.plot_view.frame.bbox;if(!n.contains(s,e)){const t=n.h_range,i=n.v_range;(s<t.start||s>t.end)&&(this.v_axis_only=!0),(e<i.start||e>i.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}_pan(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}_pan_end(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})}_update(t,s){const e=this.plot_view.frame,n=t-this.last_dx,i=s-this.last_dy,o=e.bbox.h_range,a=o.start-n,h=o.end-n,l=e.bbox.v_range,r=l.start-i,d=l.end-i,p=this.model.dimensions;let c,u,m,x,y,g;\"width\"!=p&&\"both\"!=p||this.v_axis_only?(c=o.start,u=o.end,m=0):(c=a,u=h,m=-n),\"height\"!=p&&\"both\"!=p||this.h_axis_only?(x=l.start,y=l.end,g=0):(x=r,y=d,g=-i),this.last_dx=t,this.last_dy=s;const{x_scales:w,y_scales:b}=e,f=_(w,c,u),v=_(b,x,y);this.pan_info={xrs:f,yrs:v,sdx:m,sdy:g},this.plot_view.update_range(this.pan_info,!0)}}e.PanToolView=h,h.__name__=\"PanToolView\";class l extends i.GestureTool{constructor(t){super(t),this.tool_name=\"Pan\",this.event_type=\"pan\",this.default_order=10}static init_PanTool(){this.prototype.default_view=h,this.define({dimensions:[o.Dimensions,\"both\"]}),this.register_alias(\"pan\",()=>new l({dimensions:\"both\"})),this.register_alias(\"xpan\",()=>new l({dimensions:\"width\"})),this.register_alias(\"ypan\",()=>new l({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(\"Pan\",this.dimensions)}get icon(){switch(this.dimensions){case\"both\":return a.bk_tool_icon_pan;case\"width\":return a.bk_tool_icon_xpan;case\"height\":return a.bk_tool_icon_ypan}}}e.PanTool=l,l.__name__=\"PanTool\",l.init_PanTool()},\n      function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(124),l=e(19),a=s.__importStar(e(18)),r=e(306),o=e(309);function _(e){switch(e){case 1:return 2;case 2:return 1;case 4:return 5;case 5:return 4;default:return e}}function h(e,t,i,s){if(null==t)return!1;const n=i.compute(t);return Math.abs(e-n)<s}function d(e,t,i,s,n){let l=!0;if(null!=n.left&&null!=n.right){const t=i.invert(e);(t<n.left||t>n.right)&&(l=!1)}if(null!=n.bottom&&null!=n.top){const e=s.invert(t);(e<n.bottom||e>n.top)&&(l=!1)}return l}function u(e,t,i){let s=0;return e>=i.start&&e<=i.end&&(s+=1),t>=i.start&&t<=i.end&&(s+=1),s}function c(e,t,i,s){const n=t.compute(e),l=t.invert(n+i);return l>=s.start&&l<=s.end?l:e}function g(e,t,i){return e>t.start?(t.end=e,i):(t.end=t.start,t.start=e,_(i))}function y(e,t,i){return e<t.end?(t.start=e,i):(t.start=t.end,t.end=e,_(i))}function f(e,t,i,s){const[n,l]=t.r_compute(e.start,e.end),[a,r]=t.r_invert(n+i,l+i),o=u(e.start,e.end,s);u(a,r,s)>=o&&(e.start=a,e.end=r)}i.flip_side=_,i.is_near=h,i.is_inside=d,i.sides_inside=u,i.compute_value=c,i.update_range_end_side=g,i.update_range_start_side=y,i.update_range=f;class p extends r.GestureToolView{initialize(){super.initialize(),this.side=0,this.model.update_overlay_from_ranges()}connect_signals(){super.connect_signals(),null!=this.model.x_range&&this.connect(this.model.x_range.change,()=>this.model.update_overlay_from_ranges()),null!=this.model.y_range&&this.connect(this.model.y_range.change,()=>this.model.update_overlay_from_ranges())}_pan_start(e){this.last_dx=0,this.last_dy=0;const t=this.model.x_range,i=this.model.y_range,{frame:s}=this.plot_view,l=s.x_scale,a=s.y_scale,r=this.model.overlay,{left:o,right:_,top:u,bottom:c}=r,g=this.model.overlay.properties.line_width.value()+n.EDGE_TOLERANCE;null!=t&&this.model.x_interaction&&(h(e.sx,o,l,g)?this.side=1:h(e.sx,_,l,g)?this.side=2:d(e.sx,e.sy,l,a,r)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&h(e.sy,c,a,g)&&(this.side=4),0==this.side&&h(e.sy,u,a,g)?this.side=5:d(e.sx,e.sy,l,a,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))}_pan(e){const t=this.plot_view.frame,i=e.deltaX-this.last_dx,s=e.deltaY-this.last_dy,n=this.model.x_range,l=this.model.y_range,a=t.x_scale,r=t.y_scale;if(null!=n)if(3==this.side||7==this.side)f(n,a,i,t.x_range);else if(1==this.side){const e=c(n.start,a,i,t.x_range);this.side=y(e,n,this.side)}else if(2==this.side){const e=c(n.end,a,i,t.x_range);this.side=g(e,n,this.side)}if(null!=l)if(6==this.side||7==this.side)f(l,r,s,t.y_range);else if(4==this.side){const e=c(l.start,r,s,t.y_range);this.side=y(e,l,this.side)}else if(5==this.side){const e=c(l.end,r,s,t.y_range);this.side=g(e,l,this.side)}this.last_dx=e.deltaX,this.last_dy=e.deltaY}_pan_end(e){this.side=0}}i.RangeToolView=p,p.__name__=\"RangeToolView\";const m=()=>new n.BoxAnnotation({level:\"overlay\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:.5,line_dash:[2,2]});class v extends r.GestureTool{constructor(e){super(e),this.tool_name=\"Range Tool\",this.icon=o.bk_tool_icon_range,this.event_type=\"pan\",this.default_order=1}static init_RangeTool(){this.prototype.default_view=p,this.define({x_range:[a.Instance,null],x_interaction:[a.Boolean,!0],y_range:[a.Instance,null],y_interaction:[a.Boolean,!0],overlay:[a.Instance,m]})}initialize(){super.initialize(),this.overlay.in_cursor=\"grab\",this.overlay.ew_cursor=null!=this.x_range&&this.x_interaction?\"ew-resize\":null,this.overlay.ns_cursor=null!=this.y_range&&this.y_interaction?\"ns-resize\":null}update_overlay_from_ranges(){null==this.x_range&&null==this.y_range&&(this.overlay.left=null,this.overlay.right=null,this.overlay.bottom=null,this.overlay.top=null,l.logger.warn(\"RangeTool not configured with any Ranges.\")),null==this.x_range?(this.overlay.left=null,this.overlay.right=null):(this.overlay.left=this.x_range.start,this.overlay.right=this.x_range.end),null==this.y_range?(this.overlay.bottom=null,this.overlay.top=null):(this.overlay.bottom=this.y_range.start,this.overlay.top=this.y_range.end)}}i.RangeTool=v,v.__name__=\"RangeTool\",v.init_RangeTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),i=e(364),c=o.__importStar(e(18)),n=e(309);class a extends i.SelectToolView{_tap(e){const{sx:t,sy:s}=e,o={type:\"point\",sx:t,sy:s};this._select(o,!0,this._select_mode(e))}_select(e,t,s){const o=this.model.callback;if(\"select\"==this.model.behavior){const i=this._computed_renderers_by_data_source();for(const[,c]of i){const i=c[0].get_selection_manager(),n=c.map(e=>this.plot_view.renderer_views.get(e));if(i.select(n,e,t,s)&&null!=o){const t=n[0].coordinates.x_scale.invert(e.sx),s=n[0].coordinates.y_scale.invert(e.sy),c={geometries:Object.assign(Object.assign({},e),{x:t,y:s}),source:i.source};o.execute(this.model,c)}}this._emit_selection_event(e),this.plot_view.push_state(\"tap\",{selection:this.plot_view.get_selection()})}else for(const t of this.computed_renderers){const s=this.plot_view.renderer_views.get(t),i=t.get_selection_manager();if(i.inspect(s,e)&&null!=o){const t=s.coordinates.x_scale.invert(e.sx),c=s.coordinates.y_scale.invert(e.sy),n={geometries:Object.assign(Object.assign({},e),{x:t,y:c}),source:i.source};o.execute(this.model,n)}}}}s.TapToolView=a,a.__name__=\"TapToolView\";class _ extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Tap\",this.icon=n.bk_tool_icon_tap_select,this.event_type=\"tap\",this.default_order=10}static init_TapTool(){this.prototype.default_view=a,this.define({behavior:[c.TapBehavior,\"select\"],callback:[c.Any]}),this.register_alias(\"click\",()=>new _({behavior:\"inspect\"})),this.register_alias(\"tap\",()=>new _)}}s.TapTool=_,_.__name__=\"TapTool\",_.init_TapTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),o=e(306),n=i.__importStar(e(18)),a=e(309),l=e(371);class _ extends o.GestureToolView{_scroll(e){let t=this.model.speed*e.delta;t>.9?t=.9:t<-.9&&(t=-.9),this._update_ranges(t)}_update_ranges(e){const{frame:t}=this.plot_view,s=t.bbox.h_range,i=t.bbox.v_range,[o,n]=[s.start,s.end],[a,_]=[i.start,i.end];let h,r,d,p;switch(this.model.dimension){case\"height\":{const t=Math.abs(_-a);h=o,r=n,d=a-t*e,p=_-t*e;break}case\"width\":{const t=Math.abs(n-o);h=o-t*e,r=n-t*e,d=a,p=_;break}default:throw new Error(\"this shouldn't have happened\")}const{x_scales:c,y_scales:u}=t,m={xrs:l.update_ranges(c,h,r),yrs:l.update_ranges(u,d,p),factor:e};this.plot_view.push_state(\"wheel_pan\",{range:m}),this.plot_view.update_range(m,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}}s.WheelPanToolView=_,_.__name__=\"WheelPanToolView\";class h extends o.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Pan\",this.icon=a.bk_tool_icon_wheel_pan,this.event_type=\"scroll\",this.default_order=12}static init_WheelPanTool(){this.prototype.default_view=_,this.define({dimension:[n.Dimension,\"width\"]}),this.internal({speed:[n.Number,.001]}),this.register_alias(\"xwheel_pan\",()=>new h({dimension:\"width\"})),this.register_alias(\"ywheel_pan\",()=>new h({dimension:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimension)}}s.WheelPanTool=h,h.__name__=\"WheelPanTool\",h.init_WheelPanTool()},\n      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),i=e(306),l=e(354),n=s.__importStar(e(18)),_=e(32),h=e(309);class a extends i.GestureToolView{_pinch(e){const{sx:o,sy:t,scale:s,ctrlKey:i,shiftKey:l}=e;let n;n=s>=1?20*(s-1):-20/s,this._scroll({type:\"wheel\",sx:o,sy:t,delta:n,ctrlKey:i,shiftKey:l})}_scroll(e){const{frame:o}=this.plot_view,t=o.bbox.h_range,s=o.bbox.v_range,{sx:i,sy:n}=e,_=this.model.dimensions,h=(\"width\"==_||\"both\"==_)&&t.start<i&&i<t.end,a=(\"height\"==_||\"both\"==_)&&s.start<n&&n<s.end;if(!(h&&a||this.model.zoom_on_axis))return;const m=this.model.speed*e.delta,r=l.scale_range(o,m,h,a,{x:i,y:n});this.plot_view.push_state(\"wheel_zoom\",{range:r}),this.plot_view.update_range(r,!1,!0,this.model.maintain_focus),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)}}t.WheelZoomToolView=a,a.__name__=\"WheelZoomToolView\";class m extends i.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Zoom\",this.icon=h.bk_tool_icon_wheel_zoom,this.event_type=_.is_mobile?\"pinch\":\"scroll\",this.default_order=10}static init_WheelZoomTool(){this.prototype.default_view=a,this.define({dimensions:[n.Dimensions,\"both\"],maintain_focus:[n.Boolean,!0],zoom_on_axis:[n.Boolean,!0],speed:[n.Number,1/600]}),this.register_alias(\"wheel_zoom\",()=>new m({dimensions:\"both\"})),this.register_alias(\"xwheel_zoom\",()=>new m({dimensions:\"width\"})),this.register_alias(\"ywheel_zoom\",()=>new m({dimensions:\"height\"}))}get tooltip(){return this._get_dim_tooltip(this.tool_name,this.dimensions)}}t.WheelZoomTool=m,m.__name__=\"WheelZoomTool\",m.init_WheelZoomTool()},\n      function _(i,s,e){Object.defineProperty(e,\"__esModule\",{value:!0});const t=i(1),o=i(295),n=i(168),l=t.__importStar(i(18)),h=i(13),a=i(309);class r extends o.InspectToolView{_move(i){if(!this.model.active)return;const{sx:s,sy:e}=i;this.plot_view.frame.bbox.contains(s,e)?this._update_spans(s,e):this._update_spans(null,null)}_move_exit(i){this._update_spans(null,null)}_update_spans(i,s){const e=this.model.dimensions;\"width\"!=e&&\"both\"!=e||(this.model.spans.width.location=s),\"height\"!=e&&\"both\"!=e||(this.model.spans.height.location=i)}}e.CrosshairToolView=r,r.__name__=\"CrosshairToolView\";class _ extends o.InspectTool{constructor(i){super(i),this.tool_name=\"Crosshair\",this.icon=a.bk_tool_icon_crosshair}static init_CrosshairTool(){this.prototype.default_view=r,this.define({dimensions:[l.Dimensions,\"both\"],line_color:[l.Color,\"black\"],line_width:[l.Number,1],line_alpha:[l.Number,1]}),this.internal({spans:[l.Any]}),this.register_alias(\"crosshair\",()=>new _)}get tooltip(){return this._get_dim_tooltip(\"Crosshair\",this.dimensions)}get synthetic_renderers(){return h.values(this.spans)}initialize(){super.initialize(),this.spans={width:new n.Span({for_hover:!0,dimension:\"width\",location_units:\"screen\",level:\"overlay\",line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha}),height:new n.Span({for_hover:!0,dimension:\"height\",location_units:\"screen\",level:\"overlay\",line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha})}}}e.CrosshairTool=_,_.__name__=\"CrosshairTool\",_.init_CrosshairTool()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=e(1),o=e(81),i=r.__importStar(e(18)),a=e(13),n=e(29);class u extends o.Model{constructor(e){super(e)}static init_CustomJSHover(){this.define({args:[i.Any,{}],code:[i.String,\"\"]})}get values(){return a.values(this.args)}_make_code(e,t,s,r){return new Function(...a.keys(this.args),e,t,s,n.use_strict(r))}format(e,t,s){return this._make_code(\"value\",\"format\",\"special_vars\",this.code)(...this.values,e,t,s)}}s.CustomJSHover=u,u.__name__=\"CustomJSHover\",u.init_CustomJSHover()},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=e(1),n=e(295),i=e(171),r=e(90),l=e(116),c=e(365),a=o.__importStar(e(101)),_=e(187),d=e(72),p=o.__importStar(e(18)),h=e(22),m=e(13),u=e(303),y=e(8),f=e(115),x=e(309),v=e(172);function w(e,t,s,o,n,i){const r={x:n[e],y:i[e]},l={x:n[e+1],y:i[e+1]};let c,_;if(\"span\"==t.type)\"h\"==t.direction?(c=Math.abs(r.x-s),_=Math.abs(l.x-s)):(c=Math.abs(r.y-o),_=Math.abs(l.y-o));else{const e={x:s,y:o};c=a.dist_2_pts(r,e),_=a.dist_2_pts(l,e)}return c<_?[[r.x,r.y],e]:[[l.x,l.y],e+1]}function g(e,t,s){return[[e[s],t[s]],s]}s._nearest_line_hit=w,s._line_hit=g;class b extends n.InspectToolView{initialize(){super.initialize(),this._ttmodels=null,this._ttviews=new Map;const{tooltips:e}=this.model;y.isArray(e)&&(this._template_el=this._create_template(e))}remove(){f.remove_views(this._ttviews),super.remove()}connect_signals(){super.connect_signals();for(const e of this.computed_renderers)e instanceof r.GlyphRenderer?this.connect(e.data_source.inspect,this._update):e instanceof l.GraphRenderer&&(this.connect(e.node_renderer.data_source.inspect,this._update),this.connect(e.edge_renderer.data_source.inspect,this._update));this.connect(this.model.properties.renderers.change,()=>this._computed_renderers=this._ttmodels=null),this.connect(this.model.properties.names.change,()=>this._computed_renderers=this._ttmodels=null),this.connect(this.model.properties.tooltips.change,()=>this._ttmodels=null)}_compute_ttmodels(){const e=new Map,t=this.model.tooltips;if(null!=t)for(const s of this.computed_renderers){const o=new i.Tooltip({custom:y.isString(t)||y.isFunction(t),attachment:this.model.attachment,show_arrow:this.model.show_arrow});s instanceof r.GlyphRenderer?e.set(s,o):s instanceof l.GraphRenderer&&(e.set(s.node_renderer,o),e.set(s.edge_renderer,o))}return(async()=>{const t=await f.build_views(this._ttviews,[...e.values()],{parent:this.plot_view});for(const e of t)e.render()})(),e}get computed_renderers(){if(null==this._computed_renderers){const e=this.model.renderers,t=this.plot_model.renderers,s=this.model.names;this._computed_renderers=c.compute_renderers(e,t,s)}return this._computed_renderers}get ttmodels(){return null==this._ttmodels&&(this._ttmodels=this._compute_ttmodels()),this._ttmodels}_clear(){this._inspect(1/0,1/0);for(const[,e]of this.ttmodels)e.clear()}_move(e){if(!this.model.active)return;const{sx:t,sy:s}=e;this.plot_view.frame.bbox.contains(t,s)?this._inspect(t,s):this._clear()}_move_exit(){this._clear()}_inspect(e,t){let s;if(\"mouse\"==this.model.mode)s={type:\"point\",sx:e,sy:t};else{s={type:\"span\",direction:\"vline\"==this.model.mode?\"h\":\"v\",sx:e,sy:t}}for(const e of this.computed_renderers){e.get_selection_manager().inspect(this.plot_view.renderer_views.get(e),s)}null!=this.model.callback&&this._emit_callback(s)}_update([e,{geometry:t}]){if(!this.model.active)return;if(!(e instanceof r.GlyphRendererView))return;const{model:s}=e;if(\"ignore\"==this.model.muted_policy&&s instanceof r.GlyphRenderer&&s.muted)return;const o=this.ttmodels.get(s);if(null==o)return;const n=s.get_selection_manager();let i=n.inspectors.get(s);if(s instanceof r.GlyphRenderer&&(i=s.view.convert_selection_to_subset(i)),i.is_empty())return void o.clear();const l=n.source,{sx:c,sy:a}=t,_=e.coordinates.x_scale,p=e.coordinates.y_scale,h=_.invert(c),u=p.invert(a),y=e.glyph,f=[];for(const s of i.line_indices){let o,n,r=y._x[s+1],d=y._y[s+1],m=s;switch(this.model.line_policy){case\"interp\":[r,d]=y.get_interpolation_hit(s,t),o=_.compute(r),n=p.compute(d);break;case\"prev\":[[o,n],m]=g(y.sx,y.sy,s);break;case\"next\":[[o,n],m]=g(y.sx,y.sy,s+1);break;case\"nearest\":[[o,n],m]=w(s,t,c,a,y.sx,y.sy),r=y._x[m],d=y._y[m];break;default:[o,n]=[c,a]}const x={index:m,x:h,y:u,sx:c,sy:a,data_x:r,data_y:d,rx:o,ry:n,indices:i.line_indices,name:e.model.name};f.push([o,n,this._render_tooltips(l,m,x)])}for(const t of i.image_indices){const s={index:t.index,x:h,y:u,sx:c,sy:a,name:e.model.name},o=this._render_tooltips(l,t,s);f.push([c,a,o])}for(const o of i.indices)if(m.isEmpty(i.multiline_indices)){const t=null!=y._x?y._x[o]:void 0,n=null!=y._y?y._y[o]:void 0;let _,d,p;if(\"snap_to_data\"==this.model.point_policy){let e=y.get_anchor_point(this.model.anchor,o,[c,a]);null==e&&(e=y.get_anchor_point(\"center\",o,[c,a])),_=e.x,d=e.y}else[_,d]=[c,a];p=s instanceof r.GlyphRenderer?s.view.convert_indices_from_subset([o])[0]:o;const m={index:p,x:h,y:u,sx:c,sy:a,data_x:t,data_y:n,indices:i.indices,name:e.model.name};f.push([_,d,this._render_tooltips(l,p,m)])}else for(const n of i.multiline_indices[o.toString()]){let d,m,x,v=y._xs[o][n],b=y._ys[o][n],k=n;switch(this.model.line_policy){case\"interp\":[v,b]=y.get_interpolation_hit(o,n,t),d=_.compute(v),m=p.compute(b);break;case\"prev\":[[d,m],k]=g(y.sxs[o],y.sys[o],n);break;case\"next\":[[d,m],k]=g(y.sxs[o],y.sys[o],n+1);break;case\"nearest\":[[d,m],k]=w(n,t,c,a,y.sxs[o],y.sys[o]),v=y._xs[o][k],b=y._ys[o][k];break;default:throw new Error(\"should't have happened\")}x=s instanceof r.GlyphRenderer?s.view.convert_indices_from_subset([o])[0]:o;const A={index:x,x:h,y:u,sx:c,sy:a,data_x:v,data_y:b,segment_index:k,indices:i.multiline_indices,name:e.model.name};f.push([d,m,this._render_tooltips(l,x,A)])}if(0==f.length)o.clear();else{const{content:e}=o;d.empty(o.content);for(const[,,t]of f)e.appendChild(t);const[t,s]=f[f.length-1];o.setv({position:[t,s]},{check_eq:!1})}}_emit_callback(e){for(const t of this.computed_renderers){const s=this.plot_view.renderer_views.get(t),o=s.coordinates.x_scale.invert(e.sx),n=s.coordinates.y_scale.invert(e.sy),i=t.data_source.inspected,r=Object.assign({x:o,y:n},e);this.model.callback.execute(this.model,{index:i,geometry:r,renderer:t})}}_create_template(e){const t=d.div({style:{display:\"table\",borderSpacing:\"2px\"}});for(const[s]of e){const e=d.div({style:{display:\"table-row\"}});t.appendChild(e);const o=d.div({style:{display:\"table-cell\"},class:v.bk_tooltip_row_label},0!=s.length?s+\": \":\"\");e.appendChild(o);const n=d.span();n.dataset.value=\"\";const i=d.span({class:v.bk_tooltip_color_block},\" \");i.dataset.swatch=\"\",d.undisplay(i);const r=d.div({style:{display:\"table-cell\"},class:v.bk_tooltip_row_value},n,i);e.appendChild(r)}return t}_render_template(e,t,s,o,n){const i=e.cloneNode(!0),r=i.querySelectorAll(\"[data-value]\"),l=i.querySelectorAll(\"[data-swatch]\"),c=/\\$color(\\[.*\\])?:(\\w*)/;for(const[[,e],i]of u.enumerate(t)){const t=e.match(c);if(null!=t){const[,e=\"\",n]=t,c=s.get_column(n);if(null==c){r[i].textContent=n+\" unknown\";continue}const a=e.indexOf(\"hex\")>=0,_=e.indexOf(\"swatch\")>=0;let p=y.isNumber(o)?c[o]:null;if(null==p){r[i].textContent=\"(null)\";continue}a&&(p=h.color2hex(p)),r[i].textContent=p,_&&(l[i].style.backgroundColor=p,d.display(l[i]))}else{const t=_.replace_placeholders(e.replace(\"$~\",\"$data_\"),s,o,this.model.formatters,n);if(y.isString(t))r[i].textContent=t;else for(const e of t)r[i].appendChild(e)}}return i}_render_tooltips(e,t,s){const o=this.model.tooltips;if(y.isString(o)){const n=_.replace_placeholders({html:o},e,t,this.model.formatters,s);return d.div({},n)}return y.isFunction(o)?o(e,s):this._render_template(this._template_el,o,e,t,s)}}s.HoverToolView=b,b.__name__=\"HoverToolView\";class k extends n.InspectTool{constructor(e){super(e),this.tool_name=\"Hover\",this.icon=x.bk_tool_icon_hover}static init_HoverTool(){this.prototype.default_view=b,this.define({tooltips:[p.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[p.Any,{}],renderers:[p.Any,\"auto\"],names:[p.Array,[]],mode:[p.HoverMode,\"mouse\"],muted_policy:[p.MutedPolicy,\"show\"],point_policy:[p.PointPolicy,\"snap_to_data\"],line_policy:[p.LinePolicy,\"nearest\"],show_arrow:[p.Boolean,!0],anchor:[p.Anchor,\"center\"],attachment:[p.TooltipAttachment,\"horizontal\"],callback:[p.Any]}),this.register_alias(\"hover\",()=>new k)}}s.HoverTool=k,k.__name__=\"HoverTool\",k.init_HoverTool()},\n      function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1).__importStar(t(18)),n=t(15),s=t(81),l=t(295),c=t(303);class r extends s.Model{constructor(t){super(t)}static init_ToolProxy(){this.define({tools:[i.Array,[]],active:[i.Boolean,!1],disabled:[i.Boolean,!1]})}get button_view(){return this.tools[0].button_view}get event_type(){return this.tools[0].event_type}get tooltip(){return this.tools[0].tooltip}get tool_name(){return this.tools[0].tool_name}get icon(){return this.tools[0].computed_icon}get computed_icon(){return this.icon}get toggleable(){const t=this.tools[0];return t instanceof l.InspectTool&&t.toggleable}initialize(){super.initialize(),this.do=new n.Signal0(this,\"do\")}connect_signals(){super.connect_signals(),this.connect(this.do,()=>this.doit()),this.connect(this.properties.active.change,()=>this.set_active());for(const t of this.tools)this.connect(t.properties.active.change,()=>{this.active=t.active})}doit(){for(const t of this.tools)t.do.emit()}set_active(){for(const t of this.tools)t.active=this.active}get menu(){const{menu:t}=this.tools[0];if(null==t)return null;const o=[];for(const[e,i]of c.enumerate(t))if(null==e)o.push(null);else{const t=()=>{var t,o;for(const e of this.tools)null===(o=null===(t=e.menu)||void 0===t?void 0:t[i])||void 0===o||o.handler()};o.push(Object.assign(Object.assign({},e),{handler:t}))}return o}}e.ToolProxy=r,r.__name__=\"ToolProxy\",r.init_ToolProxy()},\n      function _(o,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=o(1).__importStar(o(18)),e=o(9),n=o(13),r=o(305),l=o(379),c=o(272),h=o(212);class a extends r.ToolbarBase{constructor(o){super(o)}static init_ProxyToolbar(){this.define({toolbars:[i.Array,[]]})}initialize(){super.initialize(),this._merge_tools()}_merge_tools(){this._proxied_tools=[];const o={},t={},s={},i=[],r=[];for(const o of this.help)e.includes(r,o.redirect)||(i.push(o),r.push(o.redirect));this._proxied_tools.push(...i),this.help=i;for(const[o,t]of n.entries(this.gestures)){o in s||(s[o]={});for(const i of t.tools)i.type in s[o]||(s[o][i.type]=[]),s[o][i.type].push(i)}for(const t of this.inspectors)t.type in o||(o[t.type]=[]),o[t.type].push(t);for(const o of this.actions)o.type in t||(t[o.type]=[]),t[o.type].push(o);const c=(o,t=!1)=>{const s=new l.ToolProxy({tools:o,active:t});return this._proxied_tools.push(s),s};for(const o of n.keys(s)){const t=this.gestures[o];t.tools=[];for(const i of n.keys(s[o])){const e=s[o][i];if(e.length>0)if(\"multi\"==o)for(const o of e){const s=c([o]);t.tools.push(s),this.connect(s.properties.active.change,()=>this._active_change(s))}else{const o=c(e);t.tools.push(o),this.connect(o.properties.active.change,()=>this._active_change(o))}}}this.actions=[];for(const[o,s]of n.entries(t))if(\"CustomAction\"==o)for(const o of s)this.actions.push(c([o]));else s.length>0&&this.actions.push(c(s));this.inspectors=[];for(const t of n.values(o))t.length>0&&this.inspectors.push(c(t,!0));for(const[o,t]of n.entries(this.gestures))0!=t.tools.length&&(t.tools=e.sort_by(t.tools,o=>o.default_order),\"pinch\"!=o&&\"scroll\"!=o&&\"multi\"!=o&&(t.tools[0].active=!0))}}s.ProxyToolbar=a,a.__name__=\"ProxyToolbar\",a.init_ProxyToolbar();class _ extends c.LayoutDOMView{initialize(){this.model.toolbar.toolbar_location=this.model.toolbar_location,super.initialize()}get child_models(){return[this.model.toolbar]}_update_layout(){this.layout=new h.ContentBox(this.child_views[0].el);const{toolbar:o}=this.model;o.horizontal?this.layout.set_sizing({width_policy:\"fit\",min_width:100,height_policy:\"fixed\"}):this.layout.set_sizing({width_policy:\"fixed\",height_policy:\"fit\",min_height:100})}}s.ToolbarBoxView=_,_.__name__=\"ToolbarBoxView\";class p extends c.LayoutDOM{constructor(o){super(o)}static init_ToolbarBox(){this.prototype.default_view=_,this.define({toolbar:[i.Instance],toolbar_location:[i.Location,\"right\"]})}}s.ToolbarBox=p,p.__name__=\"ToolbarBox\",p.init_ToolbarBox()},\n      function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(5),i=e(78),d=e(115),c=e(72),l=e(382);t.index={},t.add_document_standalone=async function(e,n,s=[],a=!1){const u=new Map;async function r(o){let a;const r=e.roots().indexOf(o),f=s[r];null!=f?a=f:n.classList.contains(l.BOKEH_ROOT)?a=n:(a=c.div({class:l.BOKEH_ROOT}),n.appendChild(a));const v=await d.build_view(o,{parent:null});return v instanceof i.DOMView&&v.renderTo(a),u.set(o,v),t.index[o.id]=v,v}for(const n of e.roots())await r(n);return a&&(window.document.title=e.title()),e.on_change(e=>{e instanceof o.RootAddedEvent?r(e.model):e instanceof o.RootRemovedEvent?function(e){const n=u.get(e);null!=n&&(n.remove(),u.delete(e),delete t.index[e.id])}(e.model):a&&e instanceof o.TitleChangedEvent&&(window.document.title=e.title)}),[...u.values()]}},\n      function _(e,o,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(72),r=e(273);function l(e){let o=document.getElementById(e);if(null==o)throw new Error(`Error rendering Bokeh model: could not find #${e} HTML tag`);if(!document.body.contains(o))throw new Error(`Error rendering Bokeh model: element #${e} must be under <body>`);if(\"SCRIPT\"==o.tagName){const e=t.div({class:n.BOKEH_ROOT});t.replaceWith(o,e),o=e}return o}n.BOKEH_ROOT=r.bk_root,n._resolve_element=function(e){const{elementid:o}=e;return null!=o?l(o):document.body},n._resolve_root_elements=function(e){const o=[];if(null!=e.root_ids&&null!=e.roots)for(const n of e.root_ids)o.push(l(e.roots[n]));return o}},\n      function _(n,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const e=n(384),s=n(19),c=n(381);t._get_ws_url=function(n,o){let t,e=\"ws:\";return\"https:\"==window.location.protocol&&(e=\"wss:\"),null!=o?(t=document.createElement(\"a\"),t.href=o):t=window.location,null!=n?\"/\"==n&&(n=\"\"):n=t.pathname.replace(/\\/+$/,\"\"),e+\"//\"+t.host+n+\"/ws\"};const r={};t.add_document_from_session=async function(n,o,t,a=[],i=!1){const l=window.location.search.substr(1);let d;try{d=await function(n,o,t){const s=e.parse_token(o).session_id;n in r||(r[n]={});const c=r[n];return s in c||(c[s]=e.pull_session(n,o,t)),c[s]}(n,o,l)}catch(n){const t=e.parse_token(o).session_id;throw s.logger.error(`Failed to load Bokeh session ${t}: ${n}`),n}return c.add_document_standalone(d.document,t,a,i)}},\n      function _(e,s,n){Object.defineProperty(n,\"__esModule\",{value:!0});const t=e(19),o=e(5),r=e(385),i=e(386),c=e(387);n.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",n.DEFAULT_TOKEN=\"eyJzZXNzaW9uX2lkIjogImRlZmF1bHQifQ\";let l=0;function _(e){let s=e.split(\".\")[0];const n=s.length%4;return 0!=n&&(s+=\"=\".repeat(4-n)),JSON.parse(atob(s.replace(/_/g,\"/\").replace(/-/g,\"+\")))}n.parse_token=_;class h{constructor(e=n.DEFAULT_SERVER_WEBSOCKET_URL,s=n.DEFAULT_TOKEN,o=null){this.url=e,this.token=s,this.args_string=o,this._number=l++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_replies=new Map,this._pending_messages=[],this._receiver=new i.Receiver,this.id=_(s).session_id.split(\".\")[0],t.logger.debug(`Creating websocket ${this._number} to '${this.url}' session '${this.id}'`)}async connect(){if(this.closed_permanently)throw new Error(\"Cannot connect() a closed ClientConnection\");if(null!=this.socket)throw new Error(\"Already connected\");this._current_handler=null,this._pending_replies.clear(),this._pending_messages=[];try{let e=\"\"+this.url;return null!=this.args_string&&this.args_string.length>0&&(e+=\"?\"+this.args_string),this.socket=new WebSocket(e,[\"bokeh\",this.token]),new Promise((e,s)=>{this.socket.binaryType=\"arraybuffer\",this.socket.onopen=()=>this._on_open(e,s),this.socket.onmessage=e=>this._on_message(e),this.socket.onclose=e=>this._on_close(e,s),this.socket.onerror=()=>this._on_error(s)})}catch(e){throw t.logger.error(\"websocket creation failed to url: \"+this.url),t.logger.error(\" - \"+e),e}}close(){this.closed_permanently||(t.logger.debug(\"Permanently closing websocket connection \"+this._number),this.closed_permanently=!0,null!=this.socket&&this.socket.close(1e3,\"close method called on ClientConnection \"+this._number),this.session._connection_closed())}_schedule_reconnect(e){setTimeout(()=>{this.closed_permanently||t.logger.info(`Websocket connection ${this._number} disconnected, will not attempt to reconnect`)},e)}send(e){if(null==this.socket)throw new Error(\"not connected so cannot send \"+e);e.send(this.socket)}async send_with_reply(e){const s=await new Promise((s,n)=>{this._pending_replies.set(e.msgid(),{resolve:s,reject:n}),this.send(e)});if(\"ERROR\"===s.msgtype())throw new Error(\"Error reply \"+s.content.text);return s}async _pull_doc_json(){const e=r.Message.create(\"PULL-DOC-REQ\",{}),s=await this.send_with_reply(e);if(!(\"doc\"in s.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return s.content.doc}async _repull_session_doc(e,s){var n;t.logger.debug(this.session?\"Repulling session\":\"Pulling session for first time\");try{const n=await this._pull_doc_json();if(null==this.session)if(this.closed_permanently)t.logger.debug(\"Got new document after connection was already closed\"),s(new Error(\"The connection has been closed\"));else{const s=o.Document.from_json(n),i=o.Document._compute_patch_since_json(n,s);if(i.events.length>0){t.logger.debug(`Sending ${i.events.length} changes from model construction back to server`);const e=r.Message.create(\"PATCH-DOC\",{},i);this.send(e)}this.session=new c.ClientSession(this,s,this.id);for(const e of this._pending_messages)this.session.handle(e);this._pending_messages=[],t.logger.debug(\"Created a new session from new pulled doc\"),e(this.session)}else this.session.document.replace_with_json(n),t.logger.debug(\"Updated existing session with new pulled doc\")}catch(e){null===(n=console.trace)||void 0===n||n.call(console,e),t.logger.error(\"Failed to repull session \"+e),s(e)}}_on_open(e,s){t.logger.info(`Websocket connection ${this._number} is now open`),this._current_handler=n=>{this._awaiting_ack_handler(n,e,s)}}_on_message(e){null==this._current_handler&&t.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(e.data)}catch(e){this._close_bad_protocol(e.toString())}const s=this._receiver.message;if(null!=s){const e=s.problem();null!=e&&this._close_bad_protocol(e),this._current_handler(s)}}_on_close(e,s){t.logger.info(`Lost websocket ${this._number} connection, ${e.code} (${e.reason})`),this.socket=null,this._pending_replies.forEach(e=>e.reject(\"Disconnected\")),this._pending_replies.clear(),this.closed_permanently||this._schedule_reconnect(2e3),s(new Error(`Lost websocket connection, ${e.code} (${e.reason})`))}_on_error(e){t.logger.debug(\"Websocket error on socket \"+this._number);const s=\"Could not open websocket\";t.logger.error(\"Failed to connect to Bokeh server: \"+s),e(new Error(s))}_close_bad_protocol(e){t.logger.error(\"Closing connection: \"+e),null!=this.socket&&this.socket.close(1002,e)}_awaiting_ack_handler(e,s,n){\"ACK\"===e.msgtype()?(this._current_handler=e=>this._steady_state_handler(e),this._repull_session_doc(s,n)):this._close_bad_protocol(\"First message was not an ACK\")}_steady_state_handler(e){const s=e.reqid(),n=this._pending_replies.get(s);n?(this._pending_replies.delete(s),n.resolve(e)):this.session?this.session.handle(e):\"PATCH-DOC\"!=e.msgtype()&&this._pending_messages.push(e)}}n.ClientConnection=h,h.__name__=\"ClientConnection\",n.pull_session=function(e,s,n){return new h(e,s,n).connect()}},\n      function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const r=e(29);class n{constructor(e,s,t){this.header=e,this.metadata=s,this.content=t,this.buffers=new Map}static assemble(e,s,t){const r=JSON.parse(e),i=JSON.parse(s),a=JSON.parse(t);return new n(r,i,a)}assemble_buffer(e,s){const t=null!=this.header.num_buffers?this.header.num_buffers:0;if(t<=this.buffers.size)throw new Error(\"too many buffers received, expecting \"+t);const{id:r}=JSON.parse(e);this.buffers.set(r,s)}static create(e,s,t={}){const r=n.create_header(e);return new n(r,s,t)}static create_header(e){return{msgid:r.uniqueId(),msgtype:e}}complete(){return null!=this.header&&null!=this.metadata&&null!=this.content&&(null==this.header.num_buffers||this.buffers.size==this.header.num_buffers)}send(e){if((null!=this.header.num_buffers?this.header.num_buffers:0)>0)throw new Error(\"BokehJS only supports receiving buffers, not sending\");const s=JSON.stringify(this.header),t=JSON.stringify(this.metadata),r=JSON.stringify(this.content);e.send(s),e.send(t),e.send(r)}msgid(){return this.header.msgid}msgtype(){return this.header.msgtype}reqid(){return this.header.reqid}problem(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"}}t.Message=n,n.__name__=\"Message\"},\n      function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const _=e(385),r=e(8);class i{constructor(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}consume(e){this._current_consumer(e)}_HEADER(e){this._assume_text(e),this.message=null,this._partial=null,this._fragments=[e],this._buf_header=null,this._current_consumer=this._METADATA}_METADATA(e){this._assume_text(e),this._fragments.push(e),this._current_consumer=this._CONTENT}_CONTENT(e){this._assume_text(e),this._fragments.push(e);const[t,s,r]=this._fragments.slice(0,3);this._partial=_.Message.assemble(t,s,r),this._check_complete()}_BUFFER_HEADER(e){this._assume_text(e),this._buf_header=e,this._current_consumer=this._BUFFER_PAYLOAD}_BUFFER_PAYLOAD(e){this._assume_binary(e),this._partial.assemble_buffer(this._buf_header,e),this._check_complete()}_assume_text(e){if(!r.isString(e))throw new Error(\"Expected text fragment but received binary fragment\")}_assume_binary(e){if(!(e instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")}_check_complete(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER}}s.Receiver=i,i.__name__=\"Receiver\"},\n      function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(5),s=e(385),c=e(19);class i{constructor(e,t,n){this._connection=e,this.document=t,this.id=n,this._document_listener=e=>{this._document_changed(e)},this.document.on_change(this._document_listener,!0)}handle(e){const t=e.msgtype();\"PATCH-DOC\"===t?this._handle_patch(e):\"OK\"===t?this._handle_ok(e):\"ERROR\"===t?this._handle_error(e):c.logger.debug(\"Doing nothing with message \"+e.msgtype())}close(){this._connection.close()}_connection_closed(){this.document.remove_on_change(this._document_listener)}async request_server_info(){const e=s.Message.create(\"SERVER-INFO-REQ\",{});return(await this._connection.send_with_reply(e)).content}async force_roundtrip(){await this.request_server_info()}_document_changed(e){if(e.setter_id===this.id)return;const t=e instanceof o.DocumentEventBatch?e.events:[e],n=this.document.create_json_patch(t),c=s.Message.create(\"PATCH-DOC\",{},n);this._connection.send(c)}_handle_patch(e){this.document.apply_json_patch(e.content,e.buffers,this.id)}_handle_ok(e){c.logger.trace(\"Unhandled OK reply to \"+e.reqid())}_handle_error(e){c.logger.error(`Unhandled ERROR reply to ${e.reqid()}: ${e.content.text}`)}}n.ClientSession=i,i.__name__=\"ClientSession\"},\n      function _(e,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1);var r=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var o,t=e[Symbol.asyncIterator];return t?t.call(e):(e=\"function\"==typeof __values?__values(e):e[Symbol.iterator](),o={},n(\"next\"),n(\"throw\"),n(\"return\"),o[Symbol.asyncIterator]=function(){return this},o);function n(t){o[t]=e[t]&&function(o){return new Promise((function(n,r){(function(e,o,t,n){Promise.resolve(n).then((function(o){e({value:o,done:t})}),o)})(n,r,(o=e[t](o)).done,o.value)}))}}};const s=e(5),i=e(386),l=e(19),a=e(72),c=e(13),u=e(381),f=e(382),g=n.__importDefault(e(73)),m=n.__importDefault(e(311)),d=n.__importDefault(e(389));function p(e,o){o.buffers.length>0?e.consume(o.buffers[0].buffer):e.consume(o.content.data);const t=e.message;null!=t&&this.apply_json_patch(t.content,t.buffers)}function _(e,o){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){l.logger.info(\"Registering Jupyter comms for target \"+e);const t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(e,t=>{l.logger.info(\"Registering Jupyter comms for target \"+e);const n=new i.Receiver;t.on_msg(p.bind(o,n))})}catch(e){l.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(o.roots()[0].id in t.kernels){l.logger.info(\"Registering JupyterLab comms for target \"+e);const n=t.kernels[o.roots()[0].id];try{n.registerCommTarget(e,t=>{l.logger.info(\"Registering JupyterLab comms for target \"+e);const n=new i.Receiver;t.onMsg=p.bind(o,n)})}catch(e){l.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(\"undefined\"!=typeof google&&null!=google.colab.kernel){l.logger.info(\"Registering Google Colab comms for target \"+e);const t=google.colab.kernel.comms;try{t.registerTarget(e,async t=>{var n,s,a;l.logger.info(\"Registering Google Colab comms for target \"+e);const c=new i.Receiver;try{for(var u,f=r(t.messages);!(u=await f.next()).done;){const e=u.value,t={data:e.data},n=[];for(const o of null!==(a=e.buffers)&&void 0!==a?a:[])n.push(new DataView(o));const r={content:t,buffers:n};p.bind(o)(c,r)}}catch(e){n={error:e}}finally{try{u&&!u.done&&(s=f.return)&&await s.call(f)}finally{if(n)throw n.error}}})}catch(e){l.logger.warn(`Google Colab comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest @bokeh/jupyter_bokeh extension is installed. In an exported notebook this warning is expected.\")}a.stylesheet.append(g.default),a.stylesheet.append(m.default),a.stylesheet.append(d.default),t.kernels={},t.embed_items_notebook=function(e,o){if(1!=c.size(e))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");const t=s.Document.from_json(c.values(e)[0]);for(const e of o){null!=e.notebook_comms_target&&_(e.notebook_comms_target,t);const o=f._resolve_element(e),n=f._resolve_root_elements(e);u.add_document_standalone(t,o,n)}}},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});o.default=\"\\n/* notebook specific tweaks so no black outline and matching padding\\n/* can't be wrapped inside bk-root. here are the offending jupyter lines:\\n/* https://github.com/jupyter/notebook/blob/master/notebook/static/notebook/less/renderedhtml.less#L59-L76 */\\n.rendered_html .bk-root .bk-tooltip table,\\n.rendered_html .bk-root .bk-tooltip tr,\\n.rendered_html .bk-root .bk-tooltip th,\\n.rendered_html .bk-root .bk-tooltip td {\\n  border: none;\\n  padding: 1px;\\n}\\n\"},\n      function _(e,t,_){Object.defineProperty(_,\"__esModule\",{value:!0});const o=e(1);o.__exportStar(e(385),_),o.__exportStar(e(386),_)},\n      function _(e,t,n){function s(){const e=document.getElementsByTagName(\"body\")[0],t=document.getElementsByClassName(\"bokeh-test-div\");1==t.length&&(e.removeChild(t[0]),delete t[0]);const n=document.createElement(\"div\");n.classList.add(\"bokeh-test-div\"),n.style.display=\"none\",e.insertBefore(n,e.firstChild)}Object.defineProperty(n,\"__esModule\",{value:!0}),n.results={},n.init=function(){s()},n.record0=function(e,t){n.results[e]=t},n.record=function(e,t){n.results[e]=t,s()},n.count=function(e){null==n.results[e]&&(n.results[e]=0),n.results[e]+=1,s()}},\n      function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0}),o.safely=function(e,t=!1){try{return e()}catch(e){if(function(e){const t=document.createElement(\"div\");t.style.backgroundColor=\"#f2dede\",t.style.border=\"1px solid #a94442\",t.style.borderRadius=\"4px\",t.style.display=\"inline-block\",t.style.fontFamily=\"sans-serif\",t.style.marginTop=\"5px\",t.style.minWidth=\"200px\",t.style.padding=\"5px 5px 5px 10px\",t.classList.add(\"bokeh-error-box-into-flames\");const o=document.createElement(\"span\");o.style.backgroundColor=\"#a94442\",o.style.borderRadius=\"0px 4px 0px 0px\",o.style.color=\"white\",o.style.cursor=\"pointer\",o.style.cssFloat=\"right\",o.style.fontSize=\"0.8em\",o.style.margin=\"-6px -6px 0px 0px\",o.style.padding=\"2px 5px 4px 5px\",o.title=\"close\",o.setAttribute(\"aria-label\",\"close\"),o.appendChild(document.createTextNode(\"x\")),o.addEventListener(\"click\",()=>r.removeChild(t));const n=document.createElement(\"h3\");n.style.color=\"#a94442\",n.style.margin=\"8px 0px 0px 0px\",n.style.padding=\"0px\",n.appendChild(document.createTextNode(\"Bokeh Error\"));const l=document.createElement(\"pre\");l.style.whiteSpace=\"unset\",l.style.overflowX=\"auto\";const s=e instanceof Error?e.message:e;l.appendChild(document.createTextNode(s)),t.appendChild(o),t.appendChild(n),t.appendChild(l);const r=document.getElementsByTagName(\"body\")[0];r.insertBefore(t,r.firstChild)}(e),t)return;throw e}}},\n      ], 0, {\"main\":0,\"tslib\":1,\"index\":2,\"version\":3,\"embed/index\":4,\"document/index\":5,\"document/document\":6,\"base\":7,\"core/util/types\":8,\"core/util/array\":9,\"core/util/math\":10,\"core/util/assert\":11,\"core/util/arrayable\":12,\"core/util/object\":13,\"core/has_props\":14,\"core/signaling\":15,\"core/util/callback\":16,\"core/util/refs\":17,\"core/properties\":18,\"core/logging\":19,\"core/enums\":20,\"core/kinds\":21,\"core/util/color\":22,\"core/util/svg_colors\":23,\"core/types\":24,\"core/util/eq\":25,\"core/util/data_structures\":26,\"core/settings\":27,\"core/property_mixins\":28,\"core/util/string\":29,\"core/util/ndarray\":30,\"core/util/serialization\":31,\"core/util/compat\":32,\"core/util/pretty\":33,\"models/index\":34,\"models/annotations/index\":35,\"models/annotations/annotation\":36,\"core/util/projections\":37,\"models/renderers/renderer\":70,\"core/view\":71,\"core/dom\":72,\"styles/root.css\":73,\"core/visuals\":74,\"core/util/svg\":75,\"core/util/affine\":76,\"models/canvas/canvas\":77,\"core/dom_view\":78,\"core/util/bbox\":79,\"core/util/canvas\":80,\"model\":81,\"models/canvas/coordinates\":82,\"models/annotations/arrow\":83,\"models/annotations/arrow_head\":84,\"models/sources/column_data_source\":85,\"models/sources/columnar_data_source\":86,\"models/sources/data_source\":87,\"models/selections/selection\":88,\"core/selection_manager\":89,\"models/renderers/glyph_renderer\":90,\"models/renderers/data_renderer\":91,\"models/glyphs/line\":92,\"models/glyphs/xy_glyph\":93,\"models/glyphs/glyph\":94,\"core/util/spatial\":95,\"models/ranges/factor_range\":98,\"models/ranges/range\":99,\"models/glyphs/utils\":100,\"core/hittest\":101,\"models/glyphs/webgl/line\":102,\"models/glyphs/webgl/utils/index\":103,\"models/glyphs/webgl/utils/program\":104,\"models/glyphs/webgl/utils/buffer\":105,\"models/glyphs/webgl/utils/texture\":106,\"models/glyphs/webgl/base\":107,\"models/glyphs/webgl/line.vert\":108,\"models/glyphs/webgl/line.frag\":109,\"models/glyphs/patch\":110,\"models/glyphs/harea\":111,\"models/glyphs/area\":112,\"models/glyphs/varea\":113,\"models/sources/cds_view\":114,\"core/build_views\":115,\"models/renderers/graph_renderer\":116,\"models/graphs/graph_hit_test_policy\":117,\"models/selections/interaction_policy\":118,\"core/util/typed_array\":119,\"core/util/set\":120,\"document/events\":121,\"models/annotations/band\":122,\"models/annotations/upper_lower\":123,\"models/annotations/box_annotation\":124,\"models/annotations/color_bar\":125,\"models/tickers/basic_ticker\":126,\"models/tickers/adaptive_ticker\":127,\"models/tickers/continuous_ticker\":128,\"models/tickers/ticker\":129,\"models/formatters/basic_tick_formatter\":130,\"models/formatters/tick_formatter\":131,\"models/mappers/index\":132,\"models/mappers/categorical_color_mapper\":133,\"models/mappers/categorical_mapper\":134,\"models/mappers/color_mapper\":135,\"models/mappers/mapper\":136,\"models/transforms/transform\":137,\"models/mappers/categorical_marker_mapper\":138,\"models/mappers/categorical_pattern_mapper\":139,\"models/mappers/continuous_color_mapper\":140,\"models/mappers/linear_color_mapper\":141,\"models/mappers/log_color_mapper\":142,\"models/mappers/scanning_color_mapper\":143,\"models/mappers/eqhist_color_mapper\":144,\"models/scales/linear_scale\":145,\"models/scales/continuous_scale\":146,\"models/scales/scale\":147,\"models/transforms/index\":148,\"models/transforms/customjs_transform\":149,\"models/transforms/dodge\":150,\"models/transforms/range_transform\":151,\"models/transforms/interpolator\":152,\"models/transforms/jitter\":153,\"models/transforms/linear_interpolator\":154,\"models/transforms/step_interpolator\":155,\"models/scales/linear_interpolation_scale\":156,\"models/scales/log_scale\":157,\"models/ranges/range1d\":158,\"core/util/text\":159,\"models/annotations/label\":160,\"models/annotations/text_annotation\":161,\"models/annotations/label_set\":162,\"models/annotations/legend\":163,\"models/annotations/legend_item\":164,\"core/vectorization\":165,\"models/annotations/poly_annotation\":166,\"models/annotations/slope\":167,\"models/annotations/span\":168,\"models/annotations/title\":169,\"models/annotations/toolbar_panel\":170,\"models/annotations/tooltip\":171,\"styles/tooltips\":172,\"styles/mixins\":173,\"styles/tooltips.css\":174,\"models/annotations/whisker\":175,\"models/axes/index\":176,\"models/axes/axis\":177,\"models/renderers/guide_renderer\":178,\"models/axes/categorical_axis\":179,\"models/tickers/categorical_ticker\":180,\"models/formatters/categorical_tick_formatter\":181,\"models/axes/continuous_axis\":182,\"models/axes/datetime_axis\":183,\"models/axes/linear_axis\":184,\"models/formatters/datetime_tick_formatter\":185,\"core/util/templating\":187,\"models/tickers/datetime_ticker\":190,\"models/tickers/composite_ticker\":191,\"models/tickers/days_ticker\":192,\"models/tickers/single_interval_ticker\":193,\"models/tickers/util\":194,\"models/tickers/months_ticker\":195,\"models/tickers/years_ticker\":196,\"models/axes/log_axis\":197,\"models/formatters/log_tick_formatter\":198,\"models/tickers/log_ticker\":199,\"models/axes/mercator_axis\":200,\"models/formatters/mercator_tick_formatter\":201,\"models/tickers/mercator_ticker\":202,\"models/callbacks/index\":203,\"models/callbacks/customjs\":204,\"models/callbacks/callback\":205,\"models/callbacks/open_url\":206,\"models/canvas/index\":207,\"models/canvas/cartesian_frame\":208,\"models/scales/categorical_scale\":209,\"models/ranges/data_range1d\":210,\"models/ranges/data_range\":211,\"core/layout/index\":212,\"core/layout/types\":213,\"core/layout/layoutable\":214,\"core/layout/alignments\":215,\"core/layout/grid\":216,\"core/layout/html\":217,\"models/expressions/index\":218,\"models/expressions/expression\":219,\"models/expressions/stack\":220,\"models/expressions/cumsum\":221,\"models/filters/index\":222,\"models/filters/boolean_filter\":223,\"models/filters/filter\":224,\"models/filters/customjs_filter\":225,\"models/filters/group_filter\":226,\"models/filters/index_filter\":227,\"models/formatters/index\":228,\"models/formatters/func_tick_formatter\":229,\"models/formatters/numeral_tick_formatter\":230,\"models/formatters/printf_tick_formatter\":231,\"models/glyphs/index\":232,\"models/glyphs/annular_wedge\":233,\"models/glyphs/annulus\":234,\"models/glyphs/arc\":235,\"models/glyphs/bezier\":236,\"models/glyphs/circle\":237,\"models/glyphs/webgl/markers\":238,\"models/glyphs/webgl/markers.vert\":239,\"models/glyphs/webgl/markers.frag\":240,\"models/glyphs/center_rotatable\":241,\"models/glyphs/ellipse\":242,\"models/glyphs/ellipse_oval\":243,\"models/glyphs/hbar\":244,\"models/glyphs/box\":245,\"models/glyphs/hex_tile\":246,\"models/glyphs/image\":247,\"models/glyphs/image_base\":248,\"models/glyphs/image_rgba\":249,\"models/glyphs/image_url\":250,\"core/util/image\":251,\"models/glyphs/multi_line\":252,\"models/glyphs/multi_polygons\":253,\"models/glyphs/oval\":254,\"models/glyphs/patches\":255,\"models/glyphs/quad\":256,\"models/glyphs/quadratic\":257,\"models/glyphs/ray\":258,\"models/glyphs/rect\":259,\"models/glyphs/segment\":260,\"models/glyphs/step\":261,\"models/glyphs/text\":262,\"models/glyphs/vbar\":263,\"models/glyphs/wedge\":264,\"models/graphs/index\":265,\"models/graphs/layout_provider\":266,\"models/graphs/static_layout_provider\":267,\"models/grids/index\":268,\"models/grids/grid\":269,\"models/layouts/index\":270,\"models/layouts/box\":271,\"models/layouts/layout_dom\":272,\"styles/root\":273,\"models/layouts/column\":274,\"models/layouts/grid_box\":275,\"models/layouts/html_box\":276,\"models/layouts/row\":277,\"models/layouts/spacer\":278,\"models/layouts/tabs\":279,\"styles/tabs\":280,\"styles/buttons\":281,\"styles/menus\":282,\"styles/buttons.css\":283,\"styles/menus.css\":284,\"styles/tabs.css\":285,\"models/layouts/widget_box\":286,\"models/markers/index\":287,\"models/markers/defs\":288,\"models/markers/marker\":289,\"models/markers/scatter\":290,\"models/plots/index\":291,\"models/plots/gmap_plot\":292,\"models/plots/plot\":293,\"models/tools/toolbar\":294,\"models/tools/inspectors/inspect_tool\":295,\"models/tools/button_tool\":296,\"models/tools/tool\":298,\"styles/toolbar\":299,\"styles/toolbar.css\":300,\"styles/icons.css\":301,\"core/util/menus\":302,\"core/util/iterator\":303,\"models/tools/on_off_button\":304,\"models/tools/toolbar_base\":305,\"models/tools/gestures/gesture_tool\":306,\"models/tools/actions/action_tool\":307,\"models/tools/actions/help_tool\":308,\"styles/icons\":309,\"styles/logo\":310,\"styles/logo.css\":311,\"models/plots/plot_canvas\":312,\"core/bokeh_events\":313,\"core/ui_events\":314,\"core/util/wheel\":315,\"core/util/throttle\":316,\"core/layout/border\":317,\"core/layout/side_panel\":318,\"models/plots/gmap_plot_canvas\":319,\"models/ranges/index\":320,\"models/renderers/index\":321,\"models/scales/index\":322,\"models/selections/index\":323,\"models/sources/index\":324,\"models/sources/server_sent_data_source\":325,\"models/sources/web_data_source\":326,\"models/sources/ajax_data_source\":327,\"models/sources/geojson_data_source\":328,\"models/tickers/index\":329,\"models/tickers/fixed_ticker\":330,\"models/tiles/index\":331,\"models/tiles/bbox_tile_source\":332,\"models/tiles/mercator_tile_source\":333,\"models/tiles/tile_source\":334,\"models/tiles/tile_utils\":335,\"models/tiles/quadkey_tile_source\":336,\"models/tiles/tile_renderer\":337,\"models/tiles/wmts_tile_source\":338,\"styles/tiles\":339,\"styles/tiles.css\":340,\"models/tiles/tms_tile_source\":341,\"models/textures/index\":342,\"models/textures/canvas_texture\":343,\"models/textures/texture\":344,\"models/textures/image_url_texture\":345,\"models/tools/index\":346,\"models/tools/actions/custom_action\":347,\"models/tools/actions/redo_tool\":348,\"models/tools/actions/reset_tool\":349,\"models/tools/actions/save_tool\":350,\"models/tools/actions/undo_tool\":351,\"models/tools/actions/zoom_in_tool\":352,\"models/tools/actions/zoom_base_tool\":353,\"core/util/zoom\":354,\"models/tools/actions/zoom_out_tool\":355,\"models/tools/edit/edit_tool\":356,\"models/tools/edit/box_edit_tool\":357,\"models/tools/edit/freehand_draw_tool\":358,\"models/tools/edit/point_draw_tool\":359,\"models/tools/edit/poly_draw_tool\":360,\"models/tools/edit/poly_tool\":361,\"models/tools/edit/poly_edit_tool\":362,\"models/tools/gestures/box_select_tool\":363,\"models/tools/gestures/select_tool\":364,\"models/tools/util\":365,\"models/tools/gestures/box_zoom_tool\":366,\"models/tools/gestures/lasso_select_tool\":367,\"models/tools/gestures/poly_select_tool\":368,\"models/tools/edit/line_edit_tool\":369,\"models/tools/edit/line_tool\":370,\"models/tools/gestures/pan_tool\":371,\"models/tools/gestures/range_tool\":372,\"models/tools/gestures/tap_tool\":373,\"models/tools/gestures/wheel_pan_tool\":374,\"models/tools/gestures/wheel_zoom_tool\":375,\"models/tools/inspectors/crosshair_tool\":376,\"models/tools/inspectors/customjs_hover\":377,\"models/tools/inspectors/hover_tool\":378,\"models/tools/tool_proxy\":379,\"models/tools/toolbar_box\":380,\"embed/standalone\":381,\"embed/dom\":382,\"embed/server\":383,\"client/connection\":384,\"protocol/message\":385,\"protocol/receiver\":386,\"client/session\":387,\"embed/notebook\":388,\"styles/notebook.css\":389,\"protocol/index\":390,\"testing\":391,\"safely\":392}, {});\n      })\n\n\n      /* END bokeh.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-widgets.min.js */\n      /*!\n       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n       * All rights reserved.\n       * \n       * Redistribution and use in source and binary forms, with or without modification,\n       * are permitted provided that the following conditions are met:\n       * \n       * Redistributions of source code must retain the above copyright notice,\n       * this list of conditions and the following disclaimer.\n       * \n       * Redistributions in binary form must reproduce the above copyright notice,\n       * this list of conditions and the following disclaimer in the documentation\n       * and/or other materials provided with the distribution.\n       * \n       * Neither the name of Anaconda nor the names of any contributors\n       * may be used to endorse or promote products derived from this software\n       * without specific prior written permission.\n       * \n       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n       * THE POSSIBILITY OF SUCH DAMAGE.\n      */\n      (function(root, factory) {\n        factory(root[\"Bokeh\"], \"2.2.1\");\n      })(this, function(Bokeh, version) {\n        var define;\n        return (function(modules, entry, aliases, externals) {\n          const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n          if (bokeh != null) {\n            return bokeh.register_plugin(modules, entry, aliases);\n          } else {\n            throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n          }\n        })\n      ({\n      402: function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(1).__importStar(e(403));o.Widgets=r;e(7).register_models(r)},\n      403: function _(r,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});var a=r(404);t.AbstractButton=a.AbstractButton;var o=r(407);t.AbstractIcon=o.AbstractIcon;var u=r(408);t.AutocompleteInput=u.AutocompleteInput;var n=r(413);t.Button=n.Button;var i=r(414);t.CheckboxButtonGroup=i.CheckboxButtonGroup;var v=r(416);t.CheckboxGroup=v.CheckboxGroup;var p=r(418);t.ColorPicker=p.ColorPicker;var c=r(419);t.DatePicker=c.DatePicker;var l=r(422);t.DateRangeSlider=l.DateRangeSlider;var d=r(428);t.DateSlider=d.DateSlider;var I=r(429);t.Div=I.Div;var g=r(433);t.Dropdown=g.Dropdown;var S=r(434);t.FileInput=S.FileInput;var P=r(410);t.InputWidget=P.InputWidget;var k=r(430);t.Markup=k.Markup;var x=r(435);t.MultiSelect=x.MultiSelect;var D=r(436);t.Paragraph=D.Paragraph;var b=r(437);t.PasswordInput=b.PasswordInput;var s=r(438);t.MultiChoice=s.MultiChoice;var h=r(441);t.NumericInput=h.NumericInput;var A=r(444);t.PreText=A.PreText;var B=r(445);t.RadioButtonGroup=B.RadioButtonGroup;var C=r(446);t.RadioGroup=C.RadioGroup;var G=r(447);t.RangeSlider=G.RangeSlider;var R=r(448);t.Select=R.Select;var T=r(449);t.Slider=T.Slider;var M=r(450);t.Spinner=M.Spinner;var m=r(409);t.TextInput=m.TextInput;var w=r(451);t.TextAreaInput=w.TextAreaInput;var W=r(452);t.Toggle=W.Toggle;var _=r(472);t.Widget=_.Widget},\n      404: function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=t(1),s=i.__importStar(t(18)),o=t(72),l=t(115),r=t(405),_=t(281),c=i.__importDefault(t(283));class u extends r.ControlView{*controls(){yield this.button_el}async lazy_initialize(){await super.lazy_initialize();const{icon:t}=this.model;null!=t&&(this.icon_view=await l.build_view(t,{parent:this}))}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render())}remove(){null!=this.icon_view&&this.icon_view.remove(),super.remove()}styles(){return[...super.styles(),c.default]}_render_button(...t){return o.button({type:\"button\",disabled:this.model.disabled,class:[_.bk_btn,_.bk_btn_type(this.model.button_type)]},...t)}render(){super.render(),this.button_el=this._render_button(this.model.label),this.button_el.addEventListener(\"click\",()=>this.click()),null!=this.icon_view&&(o.prepend(this.button_el,this.icon_view.el,o.nbsp()),this.icon_view.render()),this.group_el=o.div({class:_.bk_btn_group},this.button_el),this.el.appendChild(this.group_el)}click(){}}n.AbstractButtonView=u,u.__name__=\"AbstractButtonView\";class a extends r.Control{constructor(t){super(t)}static init_AbstractButton(){this.define({label:[s.String,\"Button\"],icon:[s.Instance],button_type:[s.ButtonType,\"default\"]})}}n.AbstractButton=a,a.__name__=\"AbstractButton\",a.init_AbstractButton()},\n      405: function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(472),n=e(72);class i extends s.WidgetView{connect_signals(){super.connect_signals();const e=this.model.properties;this.on_change(e.disabled,()=>{for(const e of this.controls())n.toggle_attribute(e,\"disabled\",this.model.disabled)})}}o.ControlView=i,i.__name__=\"ControlView\";class l extends s.Widget{constructor(e){super(e)}}o.Control=l,l.__name__=\"Control\"},\n      472: function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=i(1),n=i(276),r=o.__importStar(i(18));class _ extends n.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}t.WidgetView=_,_.__name__=\"WidgetView\";class s extends n.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define({orientation:[r.Orientation,\"horizontal\"],default_size:[r.Number,300]}),this.override({margin:[5,5,5,5]})}}t.Widget=s,s.__name__=\"Widget\",s.init_Widget()},\n      407: function _(e,t,c){Object.defineProperty(c,\"__esModule\",{value:!0});const s=e(81),n=e(78);class o extends n.DOMView{}c.AbstractIconView=o,o.__name__=\"AbstractIconView\";class _ extends s.Model{constructor(e){super(e)}}c.AbstractIcon=_,_.__name__=\"AbstractIcon\"},\n      408: function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const i=e(1),s=e(409),h=e(72),_=i.__importStar(e(18)),o=e(10),u=e(173),r=e(282),c=i.__importDefault(e(284));class l extends s.TextInputView{constructor(){super(...arguments),this._open=!1,this._last_value=\"\",this._hover_index=0}styles(){return[...super.styles(),c.default]}render(){super.render(),this.input_el.addEventListener(\"keydown\",e=>this._keydown(e)),this.input_el.addEventListener(\"keyup\",e=>this._keyup(e)),this.menu=h.div({class:[r.bk_menu,u.bk_below]}),this.menu.addEventListener(\"click\",e=>this._menu_click(e)),this.menu.addEventListener(\"mouseover\",e=>this._menu_hover(e)),this.el.appendChild(this.menu),h.undisplay(this.menu)}change_input(){this._open&&this.menu.children.length>0&&(this.model.value=this.menu.children[this._hover_index].textContent,this.input_el.focus(),this._hide_menu())}_update_completions(e){h.empty(this.menu);for(const t of e){const e=h.div({},t);this.menu.appendChild(e)}e.length>0&&this.menu.children[0].classList.add(u.bk_active)}_show_menu(){if(!this._open){this._open=!0,this._hover_index=0,this._last_value=this.model.value,h.display(this.menu);const e=t=>{const{target:n}=t;n instanceof HTMLElement&&!this.el.contains(n)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,h.undisplay(this.menu))}_menu_click(e){e.target!=e.currentTarget&&e.target instanceof Element&&(this.model.value=e.target.textContent,this.input_el.focus(),this._hide_menu())}_menu_hover(e){if(e.target!=e.currentTarget&&e.target instanceof Element){let t=0;for(t=0;t<this.menu.children.length&&this.menu.children[t].textContent!=e.target.textContent;t++);this._bump_hover(t)}}_bump_hover(e){const t=this.menu.children.length;this._open&&t>0&&(this.menu.children[this._hover_index].classList.remove(u.bk_active),this._hover_index=o.clamp(e,0,t-1),this.menu.children[this._hover_index].classList.add(u.bk_active))}_keydown(e){}_keyup(e){switch(e.keyCode){case h.Keys.Enter:this.change_input();break;case h.Keys.Esc:this._hide_menu();break;case h.Keys.Up:this._bump_hover(this._hover_index-1);break;case h.Keys.Down:this._bump_hover(this._hover_index+1);break;default:{const e=this.input_el.value;if(e.length<this.model.min_characters)return void this._hide_menu();const t=[],{case_sensitive:n}=this.model;let i;i=n?e=>e:e=>e.toLowerCase();for(const n of this.model.completions)i(n).startsWith(i(e))&&t.push(n);this._update_completions(t),0==t.length?this._hide_menu():this._show_menu()}}}}n.AutocompleteInputView=l,l.__name__=\"AutocompleteInputView\";class a extends s.TextInput{constructor(e){super(e)}static init_AutocompleteInput(){this.prototype.default_view=l,this.define({completions:[_.Array,[]],min_characters:[_.Int,2],case_sensitive:[_.Boolean,!0]})}}n.AutocompleteInput=a,a.__name__=\"AutocompleteInput\",a.init_AutocompleteInput()},\n      409: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(410),l=e(72),p=n.__importStar(e(18)),u=e(412);class a extends s.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.value.change,()=>this.input_el.value=this.model.value),this.connect(this.model.properties.value_input.change,()=>this.input_el.value=this.model.value_input),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled),this.connect(this.model.properties.placeholder.change,()=>this.input_el.placeholder=this.model.placeholder)}render(){super.render(),this.input_el=l.input({type:\"text\",class:u.bk_input,name:this.model.name,value:this.model.value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.input_el.addEventListener(\"input\",()=>this.change_input_oninput()),this.group_el.appendChild(this.input_el)}change_input(){this.model.value=this.input_el.value,super.change_input()}change_input_oninput(){this.model.value_input=this.input_el.value,super.change_input()}}i.TextInputView=a,a.__name__=\"TextInputView\";class h extends s.InputWidget{constructor(e){super(e)}static init_TextInput(){this.prototype.default_view=a,this.define({value:[p.String,\"\"],value_input:[p.String,\"\"],placeholder:[p.String,\"\"]})}}i.TextInput=h,h.__name__=\"TextInput\",h.init_TextInput()},\n      410: function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=t(1),l=t(405),s=t(72),_=n.__importStar(t(18)),o=n.__importDefault(t(411)),r=t(412);class p extends l.ControlView{*controls(){yield this.input_el}connect_signals(){super.connect_signals(),this.connect(this.model.properties.title.change,()=>{this.label_el.textContent=this.model.title})}styles(){return[...super.styles(),o.default]}render(){super.render();const{title:t}=this.model;this.label_el=s.label({style:{display:0==t.length?\"none\":\"\"}},t),this.group_el=s.div({class:r.bk_input_group},this.label_el),this.el.appendChild(this.group_el)}change_input(){}}i.InputWidgetView=p,p.__name__=\"InputWidgetView\";class u extends l.Control{constructor(t){super(t)}static init_InputWidget(){this.define({title:[_.String,\"\"]})}}i.InputWidget=u,u.__name__=\"InputWidget\",u.init_InputWidget()},\n      411: function _(n,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root .bk-input {\\n  display: inline-block;\\n  width: 100%;\\n  flex-grow: 1;\\n  -webkit-flex-grow: 1;\\n  min-height: 31px;\\n  padding: 0 12px;\\n  background-color: #fff;\\n  border: 1px solid #ccc;\\n  border-radius: 4px;\\n}\\n.bk-root .bk-input:focus {\\n  border-color: #66afe9;\\n  outline: 0;\\n  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\\n}\\n.bk-root .bk-input::placeholder,\\n.bk-root .bk-input:-ms-input-placeholder,\\n.bk-root .bk-input::-moz-placeholder,\\n.bk-root .bk-input::-webkit-input-placeholder {\\n  color: #999;\\n  opacity: 1;\\n}\\n.bk-root .bk-input[disabled] {\\n  cursor: not-allowed;\\n  background-color: #eee;\\n  opacity: 1;\\n}\\n.bk-root select:not([multiple]).bk-input,\\n.bk-root select:not([size]).bk-input {\\n  height: auto;\\n  appearance: none;\\n  -webkit-appearance: none;\\n  background-image: url(\\'data:image/svg+xml;utf8,<svg version=\"1.1\" viewBox=\"0 0 25 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0,0 25,0 12.5,20 Z\" fill=\"black\" /></svg>\\');\\n  background-position: right 0.5em center;\\n  background-size: 8px 6px;\\n  background-repeat: no-repeat;\\n}\\n.bk-root select[multiple].bk-input,\\n.bk-root select[size].bk-input,\\n.bk-root textarea.bk-input {\\n  height: auto;\\n}\\n.bk-root .bk-input-group {\\n  width: 100%;\\n  height: 100%;\\n  display: inline-flex;\\n  display: -webkit-inline-flex;\\n  flex-wrap: nowrap;\\n  -webkit-flex-wrap: nowrap;\\n  align-items: start;\\n  -webkit-align-items: start;\\n  flex-direction: column;\\n  -webkit-flex-direction: column;\\n  white-space: nowrap;\\n}\\n.bk-root .bk-input-group.bk-inline {\\n  flex-direction: row;\\n  -webkit-flex-direction: row;\\n}\\n.bk-root .bk-input-group.bk-inline > *:not(:first-child) {\\n  margin-left: 5px;\\n}\\n.bk-root .bk-input-group input[type=\"checkbox\"] + span,\\n.bk-root .bk-input-group input[type=\"radio\"] + span {\\n  position: relative;\\n  top: -2px;\\n  margin-left: 3px;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper {\\n  display: inherit;\\n  width: inherit;\\n  height: inherit;\\n  position: relative;\\n  overflow: hidden;\\n  padding: 0;\\n  vertical-align: middle;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper input {\\n  padding-right: 20px;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn {\\n  position: absolute;\\n  display: block;\\n  height: 50%;\\n  min-height: 0;\\n  min-width: 0;\\n  width: 30px;\\n  padding: 0;\\n  margin: 0;\\n  right: 0;\\n  border: none;\\n  background: none;\\n  cursor: pointer;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn:before {\\n  content: \"\";\\n  display: inline-block;\\n  transform: translateY(-50%);\\n  border-left: 5px solid transparent;\\n  border-right: 5px solid transparent;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up {\\n  top: 0;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:before {\\n  border-bottom: 5px solid black;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:disabled:before {\\n  border-bottom-color: grey;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down {\\n  bottom: 0;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:before {\\n  border-top: 5px solid black;\\n}\\n.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:disabled:before {\\n  border-top-color: grey;\\n}\\n'},\n      412: function _(u,e,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.bk_input=\"bk-input\",n.bk_input_group=\"bk-input-group\"},\n      413: function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=t(404),i=t(313);class s extends o.AbstractButtonView{click(){this.model.trigger_event(new i.ButtonClick),super.click()}}n.ButtonView=s,s.__name__=\"ButtonView\";class u extends o.AbstractButton{constructor(t){super(t)}static init_Button(){this.prototype.default_view=s,this.override({label:\"Button\"})}}n.Button=u,u.__name__=\"Button\",u.init_Button()},\n      414: function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=t(1),c=t(415),s=t(72),n=i.__importStar(t(18)),a=t(173);class u extends c.ButtonGroupView{get active(){return new Set(this.model.active)}change_active(t){const{active:e}=this;e.has(t)?e.delete(t):e.add(t),this.model.active=[...e].sort()}_update_active(){const{active:t}=this;this._buttons.forEach((e,o)=>{s.classes(e).toggle(a.bk_active,t.has(o))})}}o.CheckboxButtonGroupView=u,u.__name__=\"CheckboxButtonGroupView\";class r extends c.ButtonGroup{constructor(t){super(t)}static init_CheckboxButtonGroup(){this.prototype.default_view=u,this.define({active:[n.Array,[]]})}}o.CheckboxButtonGroup=r,r.__name__=\"CheckboxButtonGroup\",r.init_CheckboxButtonGroup()},\n      415: function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=t(1),o=t(405),i=t(72),r=n.__importStar(t(18)),_=t(281),u=n.__importDefault(t(283));class a extends o.ControlView{*controls(){yield*this._buttons}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.button_type,()=>this.render()),this.on_change(t.labels,()=>this.render()),this.on_change(t.active,()=>this._update_active())}styles(){return[...super.styles(),u.default]}render(){super.render(),this._buttons=this.model.labels.map((t,e)=>{const s=i.div({class:[_.bk_btn,_.bk_btn_type(this.model.button_type)],disabled:this.model.disabled},t);return s.addEventListener(\"click\",()=>this.change_active(e)),s}),this._update_active();const t=i.div({class:_.bk_btn_group},this._buttons);this.el.appendChild(t)}}s.ButtonGroupView=a,a.__name__=\"ButtonGroupView\";class l extends o.Control{constructor(t){super(t)}static init_ButtonGroup(){this.define({labels:[r.Array,[]],button_type:[r.ButtonType,\"default\"]})}}s.ButtonGroup=l,l.__name__=\"ButtonGroup\",l.init_ButtonGroup()},\n      416: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(417),o=e(72),c=e(9),a=n.__importStar(e(18)),l=e(173),d=e(412);class r extends s.InputGroupView{render(){super.render();const e=o.div({class:[d.bk_input_group,this.model.inline?l.bk_inline:null]});this.el.appendChild(e);const{active:t,labels:i}=this.model;this._inputs=[];for(let n=0;n<i.length;n++){const s=o.input({type:\"checkbox\",value:\"\"+n});s.addEventListener(\"change\",()=>this.change_active(n)),this._inputs.push(s),this.model.disabled&&(s.disabled=!0),c.includes(t,n)&&(s.checked=!0);const a=o.label({},s,o.span({},i[n]));e.appendChild(a)}}change_active(e){const t=new Set(this.model.active);t.has(e)?t.delete(e):t.add(e),this.model.active=[...t].sort()}}i.CheckboxGroupView=r,r.__name__=\"CheckboxGroupView\";class p extends s.InputGroup{constructor(e){super(e)}static init_CheckboxGroup(){this.prototype.default_view=r,this.define({active:[a.Array,[]],labels:[a.Array,[]],inline:[a.Boolean,!1]})}}i.CheckboxGroup=p,p.__name__=\"CheckboxGroup\",p.init_CheckboxGroup()},\n      417: function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=e(1),o=e(405),r=s.__importDefault(e(411));class u extends o.ControlView{*controls(){yield*this._inputs}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render())}styles(){return[...super.styles(),r.default]}}n.InputGroupView=u,u.__name__=\"InputGroupView\";class _ extends o.Control{constructor(e){super(e)}}n.InputGroup=_,_.__name__=\"InputGroup\"},\n      418: function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),o=e(410),s=e(72),l=n.__importStar(e(18)),r=e(412);class c extends o.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.color.change,()=>this.input_el.value=this.model.color),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled)}render(){super.render(),this.input_el=s.input({type:\"color\",class:r.bk_input,name:this.model.name,value:this.model.color,disabled:this.model.disabled}),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.input_el)}change_input(){this.model.color=this.input_el.value,super.change_input()}}t.ColorPickerView=c,c.__name__=\"ColorPickerView\";class d extends o.InputWidget{constructor(e){super(e)}static init_ColorPicker(){this.prototype.default_view=c,this.define({color:[l.Color,\"#000000\"]})}}t.ColorPicker=d,d.__name__=\"ColorPicker\",d.init_ColorPicker()},\n      419: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=n.__importDefault(e(420)),a=e(410),l=e(72),o=n.__importStar(e(18)),r=e(8),d=e(412),c=n.__importDefault(e(421));function u(e){const t=[];for(const i of e)if(r.isString(i))t.push(i);else{const[e,n]=i;t.push({from:e,to:n})}return t}class _ extends a.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,min_date:t,max_date:i,disabled_dates:n,enabled_dates:s,position:a,inline:l}=this.model.properties;this.connect(e.change,()=>{var t;return null===(t=this._picker)||void 0===t?void 0:t.setDate(e.value())}),this.connect(t.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"minDate\",t.value())}),this.connect(i.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"maxDate\",i.value())}),this.connect(n.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"disable\",n.value())}),this.connect(s.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enable\",s.value())}),this.connect(a.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"position\",a.value())}),this.connect(l.change,()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"inline\",l.value())})}remove(){var e;null===(e=this._picker)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),c.default]}render(){null==this._picker&&(super.render(),this.input_el=l.input({type:\"text\",class:d.bk_input,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=s.default(this.input_el,{defaultDate:this.model.value,minDate:this.model.min_date,maxDate:this.model.max_date,inline:this.model.inline,position:this.model.position,disable:u(this.model.disabled_dates),enable:u(this.model.enabled_dates),onChange:(e,t,i)=>this._on_change(e,t,i)}))}_on_change(e,t,i){this.model.value=t,this.change_input()}}i.DatePickerView=_,_.__name__=\"DatePickerView\";class h extends a.InputWidget{constructor(e){super(e)}static init_DatePicker(){this.prototype.default_view=_,this.define({value:[o.Any],min_date:[o.Any],max_date:[o.Any],disabled_dates:[o.Any,[]],enabled_dates:[o.Any,[]],position:[o.CalendarPosition,\"auto\"],inline:[o.Boolean,!1]})}}i.DatePicker=h,h.__name__=\"DatePicker\",h.init_DatePicker()},\n      420: function _(e,t,n){\n      /* flatpickr v4.6.3, @license MIT */var a,i;a=this,i=function(){\"use strict\";\n      /*! *****************************************************************************\n              Copyright (c) Microsoft Corporation. All rights reserved.\n              Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n              this file except in compliance with the License. You may obtain a copy of the\n              License at http://www.apache.org/licenses/LICENSE-2.0\n          \n              THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n              KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n              WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n              MERCHANTABLITY OR NON-INFRINGEMENT.\n          \n              See the Apache Version 2.0 License for specific language governing permissions\n              and limitations under the License.\n              ***************************************************************************** */var e=function(){return(e=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)},t=[\"onChange\",\"onClose\",\"onDayCreate\",\"onDestroy\",\"onKeyDown\",\"onMonthChange\",\"onOpen\",\"onParseConfig\",\"onReady\",\"onValueUpdate\",\"onYearChange\",\"onPreCalendarPosition\"],n={_disable:[],_enable:[],allowInput:!1,altFormat:\"F j, Y\",altInput:!1,altInputClass:\"form-control input\",animate:\"object\"==typeof window&&-1===window.navigator.userAgent.indexOf(\"MSIE\"),ariaDateFormat:\"F j, Y\",clickOpens:!0,closeOnSelect:!0,conjunction:\", \",dateFormat:\"Y-m-d\",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:function(e){return\"undefined\"!=typeof console&&console.warn(e)},getWeek:function(e){var t=new Date(e.getTime());t.setHours(0,0,0,0),t.setDate(t.getDate()+3-(t.getDay()+6)%7);var n=new Date(t.getFullYear(),0,4);return 1+Math.round(((t.getTime()-n.getTime())/864e5-3+(n.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:\"default\",minuteIncrement:5,mode:\"single\",monthSelectorType:\"dropdown\",nextArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:\"auto\",positionElement:void 0,prevArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},a={weekdays:{shorthand:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longhand:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"]},months:{shorthand:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longhand:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var t=e%100;if(t>3&&t<21)return\"th\";switch(t%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\"}},rangeSeparator:\" to \",weekAbbreviation:\"Wk\",scrollTitle:\"Scroll to increment\",toggleTitle:\"Click to toggle\",amPM:[\"AM\",\"PM\"],yearAriaLabel:\"Year\",hourAriaLabel:\"Hour\",minuteAriaLabel:\"Minute\",time_24hr:!1},i=function(e){return(\"0\"+e).slice(-2)},o=function(e){return!0===e?1:0};function r(e,t,n){var a;return void 0===n&&(n=!1),function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout((function(){a=null,n||e.apply(i,o)}),t),n&&!a&&e.apply(i,o)}}var l=function(e){return e instanceof Array?e:[e]};function c(e,t,n){if(!0===n)return e.classList.add(t);e.classList.remove(t)}function d(e,t,n){var a=window.document.createElement(e);return t=t||\"\",n=n||\"\",a.className=t,void 0!==n&&(a.textContent=n),a}function s(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function u(e,t){var n=d(\"div\",\"numInputWrapper\"),a=d(\"input\",\"numInput \"+e),i=d(\"span\",\"arrowUp\"),o=d(\"span\",\"arrowDown\");if(-1===navigator.userAgent.indexOf(\"MSIE 9.0\")?a.type=\"number\":(a.type=\"text\",a.pattern=\"\\\\d*\"),void 0!==t)for(var r in t)a.setAttribute(r,t[r]);return n.appendChild(a),n.appendChild(i),n.appendChild(o),n}var f=function(){},m=function(e,t,n){return n.months[t?\"shorthand\":\"longhand\"][e]},g={D:f,F:function(e,t,n){e.setMonth(n.months.longhand.indexOf(t))},G:function(e,t){e.setHours(parseFloat(t))},H:function(e,t){e.setHours(parseFloat(t))},J:function(e,t){e.setDate(parseFloat(t))},K:function(e,t,n){e.setHours(e.getHours()%12+12*o(new RegExp(n.amPM[1],\"i\").test(t)))},M:function(e,t,n){e.setMonth(n.months.shorthand.indexOf(t))},S:function(e,t){e.setSeconds(parseFloat(t))},U:function(e,t){return new Date(1e3*parseFloat(t))},W:function(e,t,n){var a=parseInt(t),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+n.firstDayOfWeek),i},Y:function(e,t){e.setFullYear(parseFloat(t))},Z:function(e,t){return new Date(t)},d:function(e,t){e.setDate(parseFloat(t))},h:function(e,t){e.setHours(parseFloat(t))},i:function(e,t){e.setMinutes(parseFloat(t))},j:function(e,t){e.setDate(parseFloat(t))},l:f,m:function(e,t){e.setMonth(parseFloat(t)-1)},n:function(e,t){e.setMonth(parseFloat(t)-1)},s:function(e,t){e.setSeconds(parseFloat(t))},u:function(e,t){return new Date(parseFloat(t))},w:f,y:function(e,t){e.setFullYear(2e3+parseFloat(t))}},p={D:\"(\\\\w+)\",F:\"(\\\\w+)\",G:\"(\\\\d\\\\d|\\\\d)\",H:\"(\\\\d\\\\d|\\\\d)\",J:\"(\\\\d\\\\d|\\\\d)\\\\w+\",K:\"\",M:\"(\\\\w+)\",S:\"(\\\\d\\\\d|\\\\d)\",U:\"(.+)\",W:\"(\\\\d\\\\d|\\\\d)\",Y:\"(\\\\d{4})\",Z:\"(.+)\",d:\"(\\\\d\\\\d|\\\\d)\",h:\"(\\\\d\\\\d|\\\\d)\",i:\"(\\\\d\\\\d|\\\\d)\",j:\"(\\\\d\\\\d|\\\\d)\",l:\"(\\\\w+)\",m:\"(\\\\d\\\\d|\\\\d)\",n:\"(\\\\d\\\\d|\\\\d)\",s:\"(\\\\d\\\\d|\\\\d)\",u:\"(.+)\",w:\"(\\\\d\\\\d|\\\\d)\",y:\"(\\\\d{2})\"},h={Z:function(e){return e.toISOString()},D:function(e,t,n){return t.weekdays.shorthand[h.w(e,t,n)]},F:function(e,t,n){return m(h.n(e,t,n)-1,!1,t)},G:function(e,t,n){return i(h.h(e,t,n))},H:function(e){return i(e.getHours())},J:function(e,t){return void 0!==t.ordinal?e.getDate()+t.ordinal(e.getDate()):e.getDate()},K:function(e,t){return t.amPM[o(e.getHours()>11)]},M:function(e,t){return m(e.getMonth(),!0,t)},S:function(e){return i(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,t,n){return n.getWeek(e)},Y:function(e){return e.getFullYear()},d:function(e){return i(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return i(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,t){return t.weekdays.longhand[e.getDay()]},m:function(e){return i(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},v=function(e){var t=e.config,i=void 0===t?n:t,o=e.l10n,r=void 0===o?a:o;return function(e,t,n){var a=n||r;return void 0!==i.formatDate?i.formatDate(e,t,a):t.split(\"\").map((function(t,n,o){return h[t]&&\"\\\\\"!==o[n-1]?h[t](e,a,i):\"\\\\\"!==t?t:\"\"})).join(\"\")}},D=function(e){var t=e.config,i=void 0===t?n:t,o=e.l10n,r=void 0===o?a:o;return function(e,t,a,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if(\"string\"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if(\"string\"==typeof e){var s=t||(i||n).dateFormat,u=String(e).trim();if(\"today\"===u)l=new Date,a=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(i&&i.parseDate)l=i.parseDate(e,s);else{l=i&&i.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],h=0,v=0,D=\"\";h<s.length;h++){var w=s[h],b=\"\\\\\"===w,C=\"\\\\\"===s[h-1]||b;if(p[w]&&!C){D+=p[w];var M=new RegExp(D).exec(e);M&&(f=!0)&&m[\"Y\"!==w?\"push\":\"unshift\"]({fn:g[w],val:M[++v]})}else b||(D+=\".\");m.forEach((function(e){var t=e.fn,n=e.val;return l=t(l,n,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===a&&l.setHours(0,0,0,0),l;i.errorHandler(new Error(\"Invalid date provided: \"+d))}}};function w(e,t,n){return void 0===n&&(n=!0),!1!==n?new Date(e.getTime()).setHours(0,0,0,0)-new Date(t.getTime()).setHours(0,0,0,0):e.getTime()-t.getTime()}var b=864e5;function C(f,g){var h={config:e({},n,y.defaultConfig),l10n:a};function C(e){return e.bind(h)}function M(){var e=h.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==h.calendarContainer&&(h.calendarContainer.style.visibility=\"hidden\",h.calendarContainer.style.display=\"block\"),void 0!==h.daysContainer){var t=(h.days.offsetWidth+1)*e.showMonths;h.daysContainer.style.width=t+\"px\",h.calendarContainer.style.width=t+(void 0!==h.weekWrapper?h.weekWrapper.offsetWidth:0)+\"px\",h.calendarContainer.style.removeProperty(\"visibility\"),h.calendarContainer.style.removeProperty(\"display\")}}))}function x(e){0===h.selectedDates.length&&ne(),void 0!==e&&\"blur\"!==e.type&&function(e){e.preventDefault();var t=\"keydown\"===e.type,n=e.target;void 0!==h.amPM&&e.target===h.amPM&&(h.amPM.textContent=h.l10n.amPM[o(h.amPM.textContent===h.l10n.amPM[0])]);var a=parseFloat(n.getAttribute(\"min\")),r=parseFloat(n.getAttribute(\"max\")),l=parseFloat(n.getAttribute(\"step\")),c=parseInt(n.value,10),d=e.delta||(t?38===e.which?1:-1:0),s=c+l*d;if(void 0!==n.value&&2===n.value.length){var u=n===h.hourElement,f=n===h.minuteElement;s<a?(s=r+s+o(!u)+(o(u)&&o(!h.amPM)),f&&Y(void 0,-1,h.hourElement)):s>r&&(s=n===h.hourElement?s-r-o(!h.amPM):a,f&&Y(void 0,1,h.hourElement)),h.amPM&&u&&(1===l?s+c===23:Math.abs(s-c)>l)&&(h.amPM.textContent=h.l10n.amPM[o(h.amPM.textContent===h.l10n.amPM[0])]),n.value=i(s)}}(e);var t=h._input.value;E(),ve(),h._input.value!==t&&h._debouncedChange()}function E(){if(void 0!==h.hourElement&&void 0!==h.minuteElement){var e,t,n=(parseInt(h.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(h.minuteElement.value,10)||0)%60,i=void 0!==h.secondElement?(parseInt(h.secondElement.value,10)||0)%60:0;void 0!==h.amPM&&(e=n,t=h.amPM.textContent,n=e%12+12*o(t===h.l10n.amPM[1]));var r=void 0!==h.config.minTime||h.config.minDate&&h.minDateHasTime&&h.latestSelectedDateObj&&0===w(h.latestSelectedDateObj,h.config.minDate,!0);if(void 0!==h.config.maxTime||h.config.maxDate&&h.maxDateHasTime&&h.latestSelectedDateObj&&0===w(h.latestSelectedDateObj,h.config.maxDate,!0)){var l=void 0!==h.config.maxTime?h.config.maxTime:h.config.maxDate;(n=Math.min(n,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(r){var c=void 0!==h.config.minTime?h.config.minTime:h.config.minDate;(n=Math.max(n,c.getHours()))===c.getHours()&&(a=Math.max(a,c.getMinutes())),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}I(n,a,i)}}function T(e){var t=e||h.latestSelectedDateObj;t&&I(t.getHours(),t.getMinutes(),t.getSeconds())}function k(){var e=h.config.defaultHour,t=h.config.defaultMinute,n=h.config.defaultSeconds;if(void 0!==h.config.minDate){var a=h.config.minDate.getHours(),i=h.config.minDate.getMinutes();(e=Math.max(e,a))===a&&(t=Math.max(i,t)),e===a&&t===i&&(n=h.config.minDate.getSeconds())}if(void 0!==h.config.maxDate){var o=h.config.maxDate.getHours(),r=h.config.maxDate.getMinutes();(e=Math.min(e,o))===o&&(t=Math.min(r,t)),e===o&&t===r&&(n=h.config.maxDate.getSeconds())}I(e,t,n)}function I(e,t,n){void 0!==h.latestSelectedDateObj&&h.latestSelectedDateObj.setHours(e%24,t,n||0,0),h.hourElement&&h.minuteElement&&!h.isMobile&&(h.hourElement.value=i(h.config.time_24hr?e:(12+e)%12+12*o(e%12==0)),h.minuteElement.value=i(t),void 0!==h.amPM&&(h.amPM.textContent=h.l10n.amPM[o(e>=12)]),void 0!==h.secondElement&&(h.secondElement.value=i(n)))}function S(e){var t=parseInt(e.target.value)+(e.delta||0);(t/1e3>1||\"Enter\"===e.key&&!/[^\\d]/.test(t.toString()))&&V(t)}function O(e,t,n,a){return t instanceof Array?t.forEach((function(t){return O(e,t,n,a)})):e instanceof Array?e.forEach((function(e){return O(e,t,n,a)})):(e.addEventListener(t,n,a),void h._handlers.push({element:e,event:t,handler:n,options:a}))}function _(e){return function(t){1===t.which&&e(t)}}function F(){fe(\"onChange\")}function N(e,t){var n=void 0!==e?h.parseDate(e):h.latestSelectedDateObj||(h.config.minDate&&h.config.minDate>h.now?h.config.minDate:h.config.maxDate&&h.config.maxDate<h.now?h.config.maxDate:h.now),a=h.currentYear,i=h.currentMonth;try{void 0!==n&&(h.currentYear=n.getFullYear(),h.currentMonth=n.getMonth())}catch(e){e.message=\"Invalid date supplied: \"+n,h.config.errorHandler(e)}t&&h.currentYear!==a&&(fe(\"onYearChange\"),B()),!t||h.currentYear===a&&h.currentMonth===i||fe(\"onMonthChange\"),h.redraw()}function P(e){~e.target.className.indexOf(\"arrow\")&&Y(e,e.target.classList.contains(\"arrowUp\")?1:-1)}function Y(e,t,n){var a=e&&e.target,i=n||a&&a.parentNode&&a.parentNode.firstChild,o=me(\"increment\");o.delta=t,i&&i.dispatchEvent(o)}function A(e,t,n,a){var i=Z(t,!0),o=d(\"span\",\"flatpickr-day \"+e,t.getDate().toString());return o.dateObj=t,o.$i=a,o.setAttribute(\"aria-label\",h.formatDate(t,h.config.ariaDateFormat)),-1===e.indexOf(\"hidden\")&&0===w(t,h.now)&&(h.todayDateElem=o,o.classList.add(\"today\"),o.setAttribute(\"aria-current\",\"date\")),i?(o.tabIndex=-1,ge(t)&&(o.classList.add(\"selected\"),h.selectedDateElem=o,\"range\"===h.config.mode&&(c(o,\"startRange\",h.selectedDates[0]&&0===w(t,h.selectedDates[0],!0)),c(o,\"endRange\",h.selectedDates[1]&&0===w(t,h.selectedDates[1],!0)),\"nextMonthDay\"===e&&o.classList.add(\"inRange\")))):o.classList.add(\"flatpickr-disabled\"),\"range\"===h.config.mode&&function(e){return!(\"range\"!==h.config.mode||h.selectedDates.length<2)&&w(e,h.selectedDates[0])>=0&&w(e,h.selectedDates[1])<=0}(t)&&!ge(t)&&o.classList.add(\"inRange\"),h.weekNumbers&&1===h.config.showMonths&&\"prevMonthDay\"!==e&&n%7==1&&h.weekNumbers.insertAdjacentHTML(\"beforeend\",\"<span class='flatpickr-day'>\"+h.config.getWeek(t)+\"</span>\"),fe(\"onDayCreate\",o),o}function j(e){e.focus(),\"range\"===h.config.mode&&ee(e)}function H(e){for(var t=e>0?0:h.config.showMonths-1,n=e>0?h.config.showMonths:-1,a=t;a!=n;a+=e)for(var i=h.daysContainer.children[a],o=e>0?0:i.children.length-1,r=e>0?i.children.length:-1,l=o;l!=r;l+=e){var c=i.children[l];if(-1===c.className.indexOf(\"hidden\")&&Z(c.dateObj))return c}}function L(e,t){var n=Q(document.activeElement||document.body),a=void 0!==e?e:n?document.activeElement:void 0!==h.selectedDateElem&&Q(h.selectedDateElem)?h.selectedDateElem:void 0!==h.todayDateElem&&Q(h.todayDateElem)?h.todayDateElem:H(t>0?1:-1);return void 0===a?h._input.focus():n?void function(e,t){for(var n=-1===e.className.indexOf(\"Month\")?e.dateObj.getMonth():h.currentMonth,a=t>0?h.config.showMonths:-1,i=t>0?1:-1,o=n-h.currentMonth;o!=a;o+=i)for(var r=h.daysContainer.children[o],l=n-h.currentMonth===o?e.$i+t:t<0?r.children.length-1:0,c=r.children.length,d=l;d>=0&&d<c&&d!=(t>0?c:-1);d+=i){var s=r.children[d];if(-1===s.className.indexOf(\"hidden\")&&Z(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(t))return j(s)}h.changeMonth(i),L(H(i),0)}(a,t):j(a)}function W(e,t){for(var n=(new Date(e,t,1).getDay()-h.l10n.firstDayOfWeek+7)%7,a=h.utils.getDaysInMonth((t-1+12)%12),i=h.utils.getDaysInMonth(t),o=window.document.createDocumentFragment(),r=h.config.showMonths>1,l=r?\"prevMonthDay hidden\":\"prevMonthDay\",c=r?\"nextMonthDay hidden\":\"nextMonthDay\",s=a+1-n,u=0;s<=a;s++,u++)o.appendChild(A(l,new Date(e,t-1,s),s,u));for(s=1;s<=i;s++,u++)o.appendChild(A(\"\",new Date(e,t,s),s,u));for(var f=i+1;f<=42-n&&(1===h.config.showMonths||u%7!=0);f++,u++)o.appendChild(A(c,new Date(e,t+1,f%i),f,u));var m=d(\"div\",\"dayContainer\");return m.appendChild(o),m}function R(){if(void 0!==h.daysContainer){s(h.daysContainer),h.weekNumbers&&s(h.weekNumbers);for(var e=document.createDocumentFragment(),t=0;t<h.config.showMonths;t++){var n=new Date(h.currentYear,h.currentMonth,1);n.setMonth(h.currentMonth+t),e.appendChild(W(n.getFullYear(),n.getMonth()))}h.daysContainer.appendChild(e),h.days=h.daysContainer.firstChild,\"range\"===h.config.mode&&1===h.selectedDates.length&&ee()}}function B(){if(!(h.config.showMonths>1||\"dropdown\"!==h.config.monthSelectorType)){var e=function(e){return!(void 0!==h.config.minDate&&h.currentYear===h.config.minDate.getFullYear()&&e<h.config.minDate.getMonth()||void 0!==h.config.maxDate&&h.currentYear===h.config.maxDate.getFullYear()&&e>h.config.maxDate.getMonth())};h.monthsDropdownContainer.tabIndex=-1,h.monthsDropdownContainer.innerHTML=\"\";for(var t=0;t<12;t++)if(e(t)){var n=d(\"option\",\"flatpickr-monthDropdown-month\");n.value=new Date(h.currentYear,t).getMonth().toString(),n.textContent=m(t,h.config.shorthandCurrentMonth,h.l10n),n.tabIndex=-1,h.currentMonth===t&&(n.selected=!0),h.monthsDropdownContainer.appendChild(n)}}}function J(){var e,t=d(\"div\",\"flatpickr-month\"),n=window.document.createDocumentFragment();h.config.showMonths>1||\"static\"===h.config.monthSelectorType?e=d(\"span\",\"cur-month\"):(h.monthsDropdownContainer=d(\"select\",\"flatpickr-monthDropdown-months\"),O(h.monthsDropdownContainer,\"change\",(function(e){var t=e.target,n=parseInt(t.value,10);h.changeMonth(n-h.currentMonth),fe(\"onMonthChange\")})),B(),e=h.monthsDropdownContainer);var a=u(\"cur-year\",{tabindex:\"-1\"}),i=a.getElementsByTagName(\"input\")[0];i.setAttribute(\"aria-label\",h.l10n.yearAriaLabel),h.config.minDate&&i.setAttribute(\"min\",h.config.minDate.getFullYear().toString()),h.config.maxDate&&(i.setAttribute(\"max\",h.config.maxDate.getFullYear().toString()),i.disabled=!!h.config.minDate&&h.config.minDate.getFullYear()===h.config.maxDate.getFullYear());var o=d(\"div\",\"flatpickr-current-month\");return o.appendChild(e),o.appendChild(a),n.appendChild(o),t.appendChild(n),{container:t,yearElement:i,monthElement:e}}function K(){s(h.monthNav),h.monthNav.appendChild(h.prevMonthNav),h.config.showMonths&&(h.yearElements=[],h.monthElements=[]);for(var e=h.config.showMonths;e--;){var t=J();h.yearElements.push(t.yearElement),h.monthElements.push(t.monthElement),h.monthNav.appendChild(t.container)}h.monthNav.appendChild(h.nextMonthNav)}function U(){h.weekdayContainer?s(h.weekdayContainer):h.weekdayContainer=d(\"div\",\"flatpickr-weekdays\");for(var e=h.config.showMonths;e--;){var t=d(\"div\",\"flatpickr-weekdaycontainer\");h.weekdayContainer.appendChild(t)}return q(),h.weekdayContainer}function q(){if(h.weekdayContainer){var e=h.l10n.firstDayOfWeek,t=h.l10n.weekdays.shorthand.slice();e>0&&e<t.length&&(t=t.splice(e,t.length).concat(t.splice(0,e)));for(var n=h.config.showMonths;n--;)h.weekdayContainer.children[n].innerHTML=\"\\n      <span class='flatpickr-weekday'>\\n        \"+t.join(\"</span><span class='flatpickr-weekday'>\")+\"\\n      </span>\\n      \"}}function $(e,t){void 0===t&&(t=!0);var n=t?e:e-h.currentMonth;n<0&&!0===h._hidePrevMonthArrow||n>0&&!0===h._hideNextMonthArrow||(h.currentMonth+=n,(h.currentMonth<0||h.currentMonth>11)&&(h.currentYear+=h.currentMonth>11?1:-1,h.currentMonth=(h.currentMonth+12)%12,fe(\"onYearChange\"),B()),R(),fe(\"onMonthChange\"),pe())}function z(e){return!(!h.config.appendTo||!h.config.appendTo.contains(e))||h.calendarContainer.contains(e)}function G(e){if(h.isOpen&&!h.config.inline){var t=\"function\"==typeof(r=e).composedPath?r.composedPath()[0]:r.target,n=z(t),a=t===h.input||t===h.altInput||h.element.contains(t)||e.path&&e.path.indexOf&&(~e.path.indexOf(h.input)||~e.path.indexOf(h.altInput)),i=\"blur\"===e.type?a&&e.relatedTarget&&!z(e.relatedTarget):!a&&!n&&!z(e.relatedTarget),o=!h.config.ignoredFocusElements.some((function(e){return e.contains(t)}));i&&o&&(void 0!==h.timeContainer&&void 0!==h.minuteElement&&void 0!==h.hourElement&&x(),h.close(),\"range\"===h.config.mode&&1===h.selectedDates.length&&(h.clear(!1),h.redraw()))}var r}function V(e){if(!(!e||h.config.minDate&&e<h.config.minDate.getFullYear()||h.config.maxDate&&e>h.config.maxDate.getFullYear())){var t=e,n=h.currentYear!==t;h.currentYear=t||h.currentYear,h.config.maxDate&&h.currentYear===h.config.maxDate.getFullYear()?h.currentMonth=Math.min(h.config.maxDate.getMonth(),h.currentMonth):h.config.minDate&&h.currentYear===h.config.minDate.getFullYear()&&(h.currentMonth=Math.max(h.config.minDate.getMonth(),h.currentMonth)),n&&(h.redraw(),fe(\"onYearChange\"),B())}}function Z(e,t){void 0===t&&(t=!0);var n=h.parseDate(e,void 0,t);if(h.config.minDate&&n&&w(n,h.config.minDate,void 0!==t?t:!h.minDateHasTime)<0||h.config.maxDate&&n&&w(n,h.config.maxDate,void 0!==t?t:!h.maxDateHasTime)>0)return!1;if(0===h.config.enable.length&&0===h.config.disable.length)return!0;if(void 0===n)return!1;for(var a=h.config.enable.length>0,i=a?h.config.enable:h.config.disable,o=0,r=void 0;o<i.length;o++){if(\"function\"==typeof(r=i[o])&&r(n))return a;if(r instanceof Date&&void 0!==n&&r.getTime()===n.getTime())return a;if(\"string\"==typeof r&&void 0!==n){var l=h.parseDate(r,void 0,!0);return l&&l.getTime()===n.getTime()?a:!a}if(\"object\"==typeof r&&void 0!==n&&r.from&&r.to&&n.getTime()>=r.from.getTime()&&n.getTime()<=r.to.getTime())return a}return!a}function Q(e){return void 0!==h.daysContainer&&-1===e.className.indexOf(\"hidden\")&&h.daysContainer.contains(e)}function X(e){var t=e.target===h._input,n=h.config.allowInput,a=h.isOpen&&(!n||!t),i=h.config.inline&&t&&!n;if(13===e.keyCode&&t){if(n)return h.setDate(h._input.value,!0,e.target===h.altInput?h.config.altFormat:h.config.dateFormat),e.target.blur();h.open()}else if(z(e.target)||a||i){var o=!!h.timeContainer&&h.timeContainer.contains(e.target);switch(e.keyCode){case 13:o?(e.preventDefault(),x(),le()):ce(e);break;case 27:e.preventDefault(),le();break;case 8:case 46:t&&!h.config.allowInput&&(e.preventDefault(),h.clear());break;case 37:case 39:if(o||t)h.hourElement&&h.hourElement.focus();else if(e.preventDefault(),void 0!==h.daysContainer&&(!1===n||document.activeElement&&Q(document.activeElement))){var r=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),$(r),L(H(1),0)):L(void 0,r)}break;case 38:case 40:e.preventDefault();var l=40===e.keyCode?1:-1;h.daysContainer&&void 0!==e.target.$i||e.target===h.input||e.target===h.altInput?e.ctrlKey?(e.stopPropagation(),V(h.currentYear-l),L(H(1),0)):o||L(void 0,7*l):e.target===h.currentYearElement?V(h.currentYear-l):h.config.enableTime&&(!o&&h.hourElement&&h.hourElement.focus(),x(e),h._debouncedChange());break;case 9:if(o){var c=[h.hourElement,h.minuteElement,h.secondElement,h.amPM].concat(h.pluginElements).filter((function(e){return e})),d=c.indexOf(e.target);if(-1!==d){var s=c[d+(e.shiftKey?-1:1)];e.preventDefault(),(s||h._input).focus()}}else!h.config.noCalendar&&h.daysContainer&&h.daysContainer.contains(e.target)&&e.shiftKey&&(e.preventDefault(),h._input.focus())}}if(void 0!==h.amPM&&e.target===h.amPM)switch(e.key){case h.l10n.amPM[0].charAt(0):case h.l10n.amPM[0].charAt(0).toLowerCase():h.amPM.textContent=h.l10n.amPM[0],E(),ve();break;case h.l10n.amPM[1].charAt(0):case h.l10n.amPM[1].charAt(0).toLowerCase():h.amPM.textContent=h.l10n.amPM[1],E(),ve()}(t||z(e.target))&&fe(\"onKeyDown\",e)}function ee(e){if(1===h.selectedDates.length&&(!e||e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\"))){for(var t=e?e.dateObj.getTime():h.days.firstElementChild.dateObj.getTime(),n=h.parseDate(h.selectedDates[0],void 0,!0).getTime(),a=Math.min(t,h.selectedDates[0].getTime()),i=Math.max(t,h.selectedDates[0].getTime()),o=!1,r=0,l=0,c=a;c<i;c+=b)Z(new Date(c),!0)||(o=o||c>a&&c<i,c<n&&(!r||c>r)?r=c:c>n&&(!l||c<l)&&(l=c));for(var d=0;d<h.config.showMonths;d++)for(var s=h.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add(\"notAllowed\"),[\"inRange\",\"startRange\",\"endRange\"].forEach((function(e){f.classList.remove(e)})),\"continue\"):o&&!g?\"continue\":([\"startRange\",\"inRange\",\"endRange\",\"notAllowed\"].forEach((function(e){f.classList.remove(e)})),void(void 0!==e&&(e.classList.add(t<=h.selectedDates[0].getTime()?\"startRange\":\"endRange\"),n<t&&m===n?f.classList.add(\"startRange\"):n>t&&m===n&&f.classList.add(\"endRange\"),m>=r&&(0===l||m<=l)&&(d=n,u=t,(c=m)>Math.min(d,u)&&c<Math.max(d,u))&&f.classList.add(\"inRange\"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function te(){!h.isOpen||h.config.static||h.config.inline||oe()}function ne(){h.setDate(void 0!==h.config.minDate?new Date(h.config.minDate.getTime()):new Date,!0),k(),ve()}function ae(e){return function(t){var n=h.config[\"_\"+e+\"Date\"]=h.parseDate(t,h.config.dateFormat),a=h.config[\"_\"+(\"min\"===e?\"max\":\"min\")+\"Date\"];void 0!==n&&(h[\"min\"===e?\"minDateHasTime\":\"maxDateHasTime\"]=n.getHours()>0||n.getMinutes()>0||n.getSeconds()>0),h.selectedDates&&(h.selectedDates=h.selectedDates.filter((function(e){return Z(e)})),h.selectedDates.length||\"min\"!==e||T(n),ve()),h.daysContainer&&(re(),void 0!==n?h.currentYearElement[e]=n.getFullYear().toString():h.currentYearElement.removeAttribute(e),h.currentYearElement.disabled=!!a&&void 0!==n&&a.getFullYear()===n.getFullYear())}}function ie(){\"object\"!=typeof h.config.locale&&void 0===y.l10ns[h.config.locale]&&h.config.errorHandler(new Error(\"flatpickr: invalid locale \"+h.config.locale)),h.l10n=e({},y.l10ns.default,\"object\"==typeof h.config.locale?h.config.locale:\"default\"!==h.config.locale?y.l10ns[h.config.locale]:void 0),p.K=\"(\"+h.l10n.amPM[0]+\"|\"+h.l10n.amPM[1]+\"|\"+h.l10n.amPM[0].toLowerCase()+\"|\"+h.l10n.amPM[1].toLowerCase()+\")\",void 0===e({},g,JSON.parse(JSON.stringify(f.dataset||{}))).time_24hr&&void 0===y.defaultConfig.time_24hr&&(h.config.time_24hr=h.l10n.time_24hr),h.formatDate=v(h),h.parseDate=D({config:h.config,l10n:h.l10n})}function oe(e){if(void 0!==h.calendarContainer){fe(\"onPreCalendarPosition\");var t=e||h._positionElement,n=Array.prototype.reduce.call(h.calendarContainer.children,(function(e,t){return e+t.offsetHeight}),0),a=h.calendarContainer.offsetWidth,i=h.config.position.split(\" \"),o=i[0],r=i.length>1?i[1]:null,l=t.getBoundingClientRect(),d=window.innerHeight-l.bottom,s=\"above\"===o||\"below\"!==o&&d<n&&l.top>n,u=window.pageYOffset+l.top+(s?-n-2:t.offsetHeight+2);if(c(h.calendarContainer,\"arrowTop\",!s),c(h.calendarContainer,\"arrowBottom\",s),!h.config.inline){var f=window.pageXOffset+l.left-(null!=r&&\"center\"===r?(a-l.width)/2:0),m=window.document.body.offsetWidth-(window.pageXOffset+l.right),g=f+a>window.document.body.offsetWidth,p=m+a>window.document.body.offsetWidth;if(c(h.calendarContainer,\"rightMost\",g),!h.config.static)if(h.calendarContainer.style.top=u+\"px\",g)if(p){var v=document.styleSheets[0];if(void 0===v)return;var D=window.document.body.offsetWidth,w=Math.max(0,D/2-a/2),b=v.cssRules.length,C=\"{left:\"+l.left+\"px;right:auto;}\";c(h.calendarContainer,\"rightMost\",!1),c(h.calendarContainer,\"centerMost\",!0),v.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\"+C,b),h.calendarContainer.style.left=w+\"px\",h.calendarContainer.style.right=\"auto\"}else h.calendarContainer.style.left=\"auto\",h.calendarContainer.style.right=m+\"px\";else h.calendarContainer.style.left=f+\"px\",h.calendarContainer.style.right=\"auto\"}}}function re(){h.config.noCalendar||h.isMobile||(pe(),R())}function le(){h._input.focus(),-1!==window.navigator.userAgent.indexOf(\"MSIE\")||void 0!==navigator.msMaxTouchPoints?setTimeout(h.close,0):h.close()}function ce(e){e.preventDefault(),e.stopPropagation();var t=function e(t,n){return n(t)?t:t.parentNode?e(t.parentNode,n):void 0}(e.target,(function(e){return e.classList&&e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\")&&!e.classList.contains(\"notAllowed\")}));if(void 0!==t){var n=t,a=h.latestSelectedDateObj=new Date(n.dateObj.getTime()),i=(a.getMonth()<h.currentMonth||a.getMonth()>h.currentMonth+h.config.showMonths-1)&&\"range\"!==h.config.mode;if(h.selectedDateElem=n,\"single\"===h.config.mode)h.selectedDates=[a];else if(\"multiple\"===h.config.mode){var o=ge(a);o?h.selectedDates.splice(parseInt(o),1):h.selectedDates.push(a)}else\"range\"===h.config.mode&&(2===h.selectedDates.length&&h.clear(!1,!1),h.latestSelectedDateObj=a,h.selectedDates.push(a),0!==w(a,h.selectedDates[0],!0)&&h.selectedDates.sort((function(e,t){return e.getTime()-t.getTime()})));if(E(),i){var r=h.currentYear!==a.getFullYear();h.currentYear=a.getFullYear(),h.currentMonth=a.getMonth(),r&&(fe(\"onYearChange\"),B()),fe(\"onMonthChange\")}if(pe(),R(),ve(),h.config.enableTime&&setTimeout((function(){return h.showTimeInput=!0}),50),i||\"range\"===h.config.mode||1!==h.config.showMonths?void 0!==h.selectedDateElem&&void 0===h.hourElement&&h.selectedDateElem&&h.selectedDateElem.focus():j(n),void 0!==h.hourElement&&void 0!==h.hourElement&&h.hourElement.focus(),h.config.closeOnSelect){var l=\"single\"===h.config.mode&&!h.config.enableTime,c=\"range\"===h.config.mode&&2===h.selectedDates.length&&!h.config.enableTime;(l||c)&&le()}F()}}h.parseDate=D({config:h.config,l10n:h.l10n}),h._handlers=[],h.pluginElements=[],h.loadedPlugins=[],h._bind=O,h._setHoursFromDate=T,h._positionCalendar=oe,h.changeMonth=$,h.changeYear=V,h.clear=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0),h.input.value=\"\",void 0!==h.altInput&&(h.altInput.value=\"\"),void 0!==h.mobileInput&&(h.mobileInput.value=\"\"),h.selectedDates=[],h.latestSelectedDateObj=void 0,!0===t&&(h.currentYear=h._initialDate.getFullYear(),h.currentMonth=h._initialDate.getMonth()),h.showTimeInput=!1,!0===h.config.enableTime&&k(),h.redraw(),e&&fe(\"onChange\")},h.close=function(){h.isOpen=!1,h.isMobile||(void 0!==h.calendarContainer&&h.calendarContainer.classList.remove(\"open\"),void 0!==h._input&&h._input.classList.remove(\"active\")),fe(\"onClose\")},h._createElement=d,h.destroy=function(){void 0!==h.config&&fe(\"onDestroy\");for(var e=h._handlers.length;e--;){var t=h._handlers[e];t.element.removeEventListener(t.event,t.handler,t.options)}if(h._handlers=[],h.mobileInput)h.mobileInput.parentNode&&h.mobileInput.parentNode.removeChild(h.mobileInput),h.mobileInput=void 0;else if(h.calendarContainer&&h.calendarContainer.parentNode)if(h.config.static&&h.calendarContainer.parentNode){var n=h.calendarContainer.parentNode;if(n.lastChild&&n.removeChild(n.lastChild),n.parentNode){for(;n.firstChild;)n.parentNode.insertBefore(n.firstChild,n);n.parentNode.removeChild(n)}}else h.calendarContainer.parentNode.removeChild(h.calendarContainer);h.altInput&&(h.input.type=\"text\",h.altInput.parentNode&&h.altInput.parentNode.removeChild(h.altInput),delete h.altInput),h.input&&(h.input.type=h.input._type,h.input.classList.remove(\"flatpickr-input\"),h.input.removeAttribute(\"readonly\"),h.input.value=\"\"),[\"_showTimeInput\",\"latestSelectedDateObj\",\"_hideNextMonthArrow\",\"_hidePrevMonthArrow\",\"__hideNextMonthArrow\",\"__hidePrevMonthArrow\",\"isMobile\",\"isOpen\",\"selectedDateElem\",\"minDateHasTime\",\"maxDateHasTime\",\"days\",\"daysContainer\",\"_input\",\"_positionElement\",\"innerContainer\",\"rContainer\",\"monthNav\",\"todayDateElem\",\"calendarContainer\",\"weekdayContainer\",\"prevMonthNav\",\"nextMonthNav\",\"monthsDropdownContainer\",\"currentMonthElement\",\"currentYearElement\",\"navigationCurrentMonth\",\"selectedDateElem\",\"config\"].forEach((function(e){try{delete h[e]}catch(e){}}))},h.isEnabled=Z,h.jumpToDate=N,h.open=function(e,t){if(void 0===t&&(t=h._positionElement),!0===h.isMobile)return e&&(e.preventDefault(),e.target&&e.target.blur()),void 0!==h.mobileInput&&(h.mobileInput.focus(),h.mobileInput.click()),void fe(\"onOpen\");if(!h._input.disabled&&!h.config.inline){var n=h.isOpen;h.isOpen=!0,n||(h.calendarContainer.classList.add(\"open\"),h._input.classList.add(\"active\"),fe(\"onOpen\"),oe(t)),!0===h.config.enableTime&&!0===h.config.noCalendar&&(0===h.selectedDates.length&&ne(),!1!==h.config.allowInput||void 0!==e&&h.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return h.hourElement.select()}),50))}},h.redraw=re,h.set=function(e,n){if(null!==e&&\"object\"==typeof e)for(var a in Object.assign(h.config,e),e)void 0!==de[a]&&de[a].forEach((function(e){return e()}));else h.config[e]=n,void 0!==de[e]?de[e].forEach((function(e){return e()})):t.indexOf(e)>-1&&(h.config[e]=l(n));h.redraw(),ve(!1)},h.setDate=function(e,t,n){if(void 0===t&&(t=!1),void 0===n&&(n=h.config.dateFormat),0!==e&&!e||e instanceof Array&&0===e.length)return h.clear(t);se(e,n),h.showTimeInput=h.selectedDates.length>0,h.latestSelectedDateObj=h.selectedDates[h.selectedDates.length-1],h.redraw(),N(),T(),0===h.selectedDates.length&&h.clear(!1),ve(t),t&&fe(\"onChange\")},h.toggle=function(e){if(!0===h.isOpen)return h.close();h.open(e)};var de={locale:[ie,q],showMonths:[K,M,U],minDate:[N],maxDate:[N]};function se(e,t){var n=[];if(e instanceof Array)n=e.map((function(e){return h.parseDate(e,t)}));else if(e instanceof Date||\"number\"==typeof e)n=[h.parseDate(e,t)];else if(\"string\"==typeof e)switch(h.config.mode){case\"single\":case\"time\":n=[h.parseDate(e,t)];break;case\"multiple\":n=e.split(h.config.conjunction).map((function(e){return h.parseDate(e,t)}));break;case\"range\":n=e.split(h.l10n.rangeSeparator).map((function(e){return h.parseDate(e,t)}))}else h.config.errorHandler(new Error(\"Invalid date supplied: \"+JSON.stringify(e)));h.selectedDates=n.filter((function(e){return e instanceof Date&&Z(e,!1)})),\"range\"===h.config.mode&&h.selectedDates.sort((function(e,t){return e.getTime()-t.getTime()}))}function ue(e){return e.slice().map((function(e){return\"string\"==typeof e||\"number\"==typeof e||e instanceof Date?h.parseDate(e,void 0,!0):e&&\"object\"==typeof e&&e.from&&e.to?{from:h.parseDate(e.from,void 0),to:h.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function fe(e,t){if(void 0!==h.config){var n=h.config[e];if(void 0!==n&&n.length>0)for(var a=0;n[a]&&a<n.length;a++)n[a](h.selectedDates,h.input.value,h,t);\"onChange\"===e&&(h.input.dispatchEvent(me(\"change\")),h.input.dispatchEvent(me(\"input\")))}}function me(e){var t=document.createEvent(\"Event\");return t.initEvent(e,!0,!0),t}function ge(e){for(var t=0;t<h.selectedDates.length;t++)if(0===w(h.selectedDates[t],e))return\"\"+t;return!1}function pe(){h.config.noCalendar||h.isMobile||!h.monthNav||(h.yearElements.forEach((function(e,t){var n=new Date(h.currentYear,h.currentMonth,1);n.setMonth(h.currentMonth+t),h.config.showMonths>1||\"static\"===h.config.monthSelectorType?h.monthElements[t].textContent=m(n.getMonth(),h.config.shorthandCurrentMonth,h.l10n)+\" \":h.monthsDropdownContainer.value=n.getMonth().toString(),e.value=n.getFullYear().toString()})),h._hidePrevMonthArrow=void 0!==h.config.minDate&&(h.currentYear===h.config.minDate.getFullYear()?h.currentMonth<=h.config.minDate.getMonth():h.currentYear<h.config.minDate.getFullYear()),h._hideNextMonthArrow=void 0!==h.config.maxDate&&(h.currentYear===h.config.maxDate.getFullYear()?h.currentMonth+1>h.config.maxDate.getMonth():h.currentYear>h.config.maxDate.getFullYear()))}function he(e){return h.selectedDates.map((function(t){return h.formatDate(t,e)})).filter((function(e,t,n){return\"range\"!==h.config.mode||h.config.enableTime||n.indexOf(e)===t})).join(\"range\"!==h.config.mode?h.config.conjunction:h.l10n.rangeSeparator)}function ve(e){void 0===e&&(e=!0),void 0!==h.mobileInput&&h.mobileFormatStr&&(h.mobileInput.value=void 0!==h.latestSelectedDateObj?h.formatDate(h.latestSelectedDateObj,h.mobileFormatStr):\"\"),h.input.value=he(h.config.dateFormat),void 0!==h.altInput&&(h.altInput.value=he(h.config.altFormat)),!1!==e&&fe(\"onValueUpdate\")}function De(e){var t=h.prevMonthNav.contains(e.target),n=h.nextMonthNav.contains(e.target);t||n?$(t?-1:1):h.yearElements.indexOf(e.target)>=0?e.target.select():e.target.classList.contains(\"arrowUp\")?h.changeYear(h.currentYear+1):e.target.classList.contains(\"arrowDown\")&&h.changeYear(h.currentYear-1)}return function(){h.element=h.input=f,h.isOpen=!1,function(){var a=[\"wrap\",\"weekNumbers\",\"allowInput\",\"clickOpens\",\"time_24hr\",\"enableTime\",\"noCalendar\",\"altInput\",\"shorthandCurrentMonth\",\"inline\",\"static\",\"enableSeconds\",\"disableMobile\"],i=e({},g,JSON.parse(JSON.stringify(f.dataset||{}))),o={};h.config.parseDate=i.parseDate,h.config.formatDate=i.formatDate,Object.defineProperty(h.config,\"enable\",{get:function(){return h.config._enable},set:function(e){h.config._enable=ue(e)}}),Object.defineProperty(h.config,\"disable\",{get:function(){return h.config._disable},set:function(e){h.config._disable=ue(e)}});var r=\"time\"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var c=y.defaultConfig.dateFormat||n.dateFormat;o.dateFormat=i.noCalendar||r?\"H:i\"+(i.enableSeconds?\":S\":\"\"):c+\" H:i\"+(i.enableSeconds?\":S\":\"\")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=y.defaultConfig.altFormat||n.altFormat;o.altFormat=i.noCalendar||r?\"h:i\"+(i.enableSeconds?\":S K\":\" K\"):d+\" h:i\"+(i.enableSeconds?\":S\":\"\")+\" K\"}i.altInputClass||(h.config.altInputClass=h.input.className+\" \"+h.config.altInputClass),Object.defineProperty(h.config,\"minDate\",{get:function(){return h.config._minDate},set:ae(\"min\")}),Object.defineProperty(h.config,\"maxDate\",{get:function(){return h.config._maxDate},set:ae(\"max\")});var s=function(e){return function(t){h.config[\"min\"===e?\"_minTime\":\"_maxTime\"]=h.parseDate(t,\"H:i:S\")}};Object.defineProperty(h.config,\"minTime\",{get:function(){return h.config._minTime},set:s(\"min\")}),Object.defineProperty(h.config,\"maxTime\",{get:function(){return h.config._maxTime},set:s(\"max\")}),\"time\"===i.mode&&(h.config.noCalendar=!0,h.config.enableTime=!0),Object.assign(h.config,o,i);for(var u=0;u<a.length;u++)h.config[a[u]]=!0===h.config[a[u]]||\"true\"===h.config[a[u]];for(t.filter((function(e){return void 0!==h.config[e]})).forEach((function(e){h.config[e]=l(h.config[e]||[]).map(C)})),h.isMobile=!h.config.disableMobile&&!h.config.inline&&\"single\"===h.config.mode&&!h.config.disable.length&&!h.config.enable.length&&!h.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),u=0;u<h.config.plugins.length;u++){var m=h.config.plugins[u](h)||{};for(var p in m)t.indexOf(p)>-1?h.config[p]=l(m[p]).map(C).concat(h.config[p]):void 0===i[p]&&(h.config[p]=m[p])}fe(\"onParseConfig\")}(),ie(),h.input=h.config.wrap?f.querySelector(\"[data-input]\"):f,h.input?(h.input._type=h.input.type,h.input.type=\"text\",h.input.classList.add(\"flatpickr-input\"),h._input=h.input,h.config.altInput&&(h.altInput=d(h.input.nodeName,h.config.altInputClass),h._input=h.altInput,h.altInput.placeholder=h.input.placeholder,h.altInput.disabled=h.input.disabled,h.altInput.required=h.input.required,h.altInput.tabIndex=h.input.tabIndex,h.altInput.type=\"text\",h.input.setAttribute(\"type\",\"hidden\"),!h.config.static&&h.input.parentNode&&h.input.parentNode.insertBefore(h.altInput,h.input.nextSibling)),h.config.allowInput||h._input.setAttribute(\"readonly\",\"readonly\"),h._positionElement=h.config.positionElement||h._input):h.config.errorHandler(new Error(\"Invalid input element specified\")),function(){h.selectedDates=[],h.now=h.parseDate(h.config.now)||new Date;var e=h.config.defaultDate||(\"INPUT\"!==h.input.nodeName&&\"TEXTAREA\"!==h.input.nodeName||!h.input.placeholder||h.input.value!==h.input.placeholder?h.input.value:null);e&&se(e,h.config.dateFormat),h._initialDate=h.selectedDates.length>0?h.selectedDates[0]:h.config.minDate&&h.config.minDate.getTime()>h.now.getTime()?h.config.minDate:h.config.maxDate&&h.config.maxDate.getTime()<h.now.getTime()?h.config.maxDate:h.now,h.currentYear=h._initialDate.getFullYear(),h.currentMonth=h._initialDate.getMonth(),h.selectedDates.length>0&&(h.latestSelectedDateObj=h.selectedDates[0]),void 0!==h.config.minTime&&(h.config.minTime=h.parseDate(h.config.minTime,\"H:i\")),void 0!==h.config.maxTime&&(h.config.maxTime=h.parseDate(h.config.maxTime,\"H:i\")),h.minDateHasTime=!!h.config.minDate&&(h.config.minDate.getHours()>0||h.config.minDate.getMinutes()>0||h.config.minDate.getSeconds()>0),h.maxDateHasTime=!!h.config.maxDate&&(h.config.maxDate.getHours()>0||h.config.maxDate.getMinutes()>0||h.config.maxDate.getSeconds()>0),Object.defineProperty(h,\"showTimeInput\",{get:function(){return h._showTimeInput},set:function(e){h._showTimeInput=e,h.calendarContainer&&c(h.calendarContainer,\"showTimeInput\",e),h.isOpen&&oe()}})}(),h.utils={getDaysInMonth:function(e,t){return void 0===e&&(e=h.currentMonth),void 0===t&&(t=h.currentYear),1===e&&(t%4==0&&t%100!=0||t%400==0)?29:h.l10n.daysInMonth[e]}},h.isMobile||function(){var e=window.document.createDocumentFragment();if(h.calendarContainer=d(\"div\",\"flatpickr-calendar\"),h.calendarContainer.tabIndex=-1,!h.config.noCalendar){if(e.appendChild((h.monthNav=d(\"div\",\"flatpickr-months\"),h.yearElements=[],h.monthElements=[],h.prevMonthNav=d(\"span\",\"flatpickr-prev-month\"),h.prevMonthNav.innerHTML=h.config.prevArrow,h.nextMonthNav=d(\"span\",\"flatpickr-next-month\"),h.nextMonthNav.innerHTML=h.config.nextArrow,K(),Object.defineProperty(h,\"_hidePrevMonthArrow\",{get:function(){return h.__hidePrevMonthArrow},set:function(e){h.__hidePrevMonthArrow!==e&&(c(h.prevMonthNav,\"flatpickr-disabled\",e),h.__hidePrevMonthArrow=e)}}),Object.defineProperty(h,\"_hideNextMonthArrow\",{get:function(){return h.__hideNextMonthArrow},set:function(e){h.__hideNextMonthArrow!==e&&(c(h.nextMonthNav,\"flatpickr-disabled\",e),h.__hideNextMonthArrow=e)}}),h.currentYearElement=h.yearElements[0],pe(),h.monthNav)),h.innerContainer=d(\"div\",\"flatpickr-innerContainer\"),h.config.weekNumbers){var t=function(){h.calendarContainer.classList.add(\"hasWeeks\");var e=d(\"div\",\"flatpickr-weekwrapper\");e.appendChild(d(\"span\",\"flatpickr-weekday\",h.l10n.weekAbbreviation));var t=d(\"div\",\"flatpickr-weeks\");return e.appendChild(t),{weekWrapper:e,weekNumbers:t}}(),n=t.weekWrapper,a=t.weekNumbers;h.innerContainer.appendChild(n),h.weekNumbers=a,h.weekWrapper=n}h.rContainer=d(\"div\",\"flatpickr-rContainer\"),h.rContainer.appendChild(U()),h.daysContainer||(h.daysContainer=d(\"div\",\"flatpickr-days\"),h.daysContainer.tabIndex=-1),R(),h.rContainer.appendChild(h.daysContainer),h.innerContainer.appendChild(h.rContainer),e.appendChild(h.innerContainer)}h.config.enableTime&&e.appendChild(function(){h.calendarContainer.classList.add(\"hasTime\"),h.config.noCalendar&&h.calendarContainer.classList.add(\"noCalendar\"),h.timeContainer=d(\"div\",\"flatpickr-time\"),h.timeContainer.tabIndex=-1;var e=d(\"span\",\"flatpickr-time-separator\",\":\"),t=u(\"flatpickr-hour\",{\"aria-label\":h.l10n.hourAriaLabel});h.hourElement=t.getElementsByTagName(\"input\")[0];var n=u(\"flatpickr-minute\",{\"aria-label\":h.l10n.minuteAriaLabel});if(h.minuteElement=n.getElementsByTagName(\"input\")[0],h.hourElement.tabIndex=h.minuteElement.tabIndex=-1,h.hourElement.value=i(h.latestSelectedDateObj?h.latestSelectedDateObj.getHours():h.config.time_24hr?h.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(h.config.defaultHour)),h.minuteElement.value=i(h.latestSelectedDateObj?h.latestSelectedDateObj.getMinutes():h.config.defaultMinute),h.hourElement.setAttribute(\"step\",h.config.hourIncrement.toString()),h.minuteElement.setAttribute(\"step\",h.config.minuteIncrement.toString()),h.hourElement.setAttribute(\"min\",h.config.time_24hr?\"0\":\"1\"),h.hourElement.setAttribute(\"max\",h.config.time_24hr?\"23\":\"12\"),h.minuteElement.setAttribute(\"min\",\"0\"),h.minuteElement.setAttribute(\"max\",\"59\"),h.timeContainer.appendChild(t),h.timeContainer.appendChild(e),h.timeContainer.appendChild(n),h.config.time_24hr&&h.timeContainer.classList.add(\"time24hr\"),h.config.enableSeconds){h.timeContainer.classList.add(\"hasSeconds\");var a=u(\"flatpickr-second\");h.secondElement=a.getElementsByTagName(\"input\")[0],h.secondElement.value=i(h.latestSelectedDateObj?h.latestSelectedDateObj.getSeconds():h.config.defaultSeconds),h.secondElement.setAttribute(\"step\",h.minuteElement.getAttribute(\"step\")),h.secondElement.setAttribute(\"min\",\"0\"),h.secondElement.setAttribute(\"max\",\"59\"),h.timeContainer.appendChild(d(\"span\",\"flatpickr-time-separator\",\":\")),h.timeContainer.appendChild(a)}return h.config.time_24hr||(h.amPM=d(\"span\",\"flatpickr-am-pm\",h.l10n.amPM[o((h.latestSelectedDateObj?h.hourElement.value:h.config.defaultHour)>11)]),h.amPM.title=h.l10n.toggleTitle,h.amPM.tabIndex=-1,h.timeContainer.appendChild(h.amPM)),h.timeContainer}()),c(h.calendarContainer,\"rangeMode\",\"range\"===h.config.mode),c(h.calendarContainer,\"animate\",!0===h.config.animate),c(h.calendarContainer,\"multiMonth\",h.config.showMonths>1),h.calendarContainer.appendChild(e);var r=void 0!==h.config.appendTo&&void 0!==h.config.appendTo.nodeType;if((h.config.inline||h.config.static)&&(h.calendarContainer.classList.add(h.config.inline?\"inline\":\"static\"),h.config.inline&&(!r&&h.element.parentNode?h.element.parentNode.insertBefore(h.calendarContainer,h._input.nextSibling):void 0!==h.config.appendTo&&h.config.appendTo.appendChild(h.calendarContainer)),h.config.static)){var l=d(\"div\",\"flatpickr-wrapper\");h.element.parentNode&&h.element.parentNode.insertBefore(l,h.element),l.appendChild(h.element),h.altInput&&l.appendChild(h.altInput),l.appendChild(h.calendarContainer)}h.config.static||h.config.inline||(void 0!==h.config.appendTo?h.config.appendTo:window.document.body).appendChild(h.calendarContainer)}(),function(){if(h.config.wrap&&[\"open\",\"close\",\"toggle\",\"clear\"].forEach((function(e){Array.prototype.forEach.call(h.element.querySelectorAll(\"[data-\"+e+\"]\"),(function(t){return O(t,\"click\",h[e])}))})),h.isMobile)!function(){var e=h.config.enableTime?h.config.noCalendar?\"time\":\"datetime-local\":\"date\";h.mobileInput=d(\"input\",h.input.className+\" flatpickr-mobile\"),h.mobileInput.step=h.input.getAttribute(\"step\")||\"any\",h.mobileInput.tabIndex=1,h.mobileInput.type=e,h.mobileInput.disabled=h.input.disabled,h.mobileInput.required=h.input.required,h.mobileInput.placeholder=h.input.placeholder,h.mobileFormatStr=\"datetime-local\"===e?\"Y-m-d\\\\TH:i:S\":\"date\"===e?\"Y-m-d\":\"H:i:S\",h.selectedDates.length>0&&(h.mobileInput.defaultValue=h.mobileInput.value=h.formatDate(h.selectedDates[0],h.mobileFormatStr)),h.config.minDate&&(h.mobileInput.min=h.formatDate(h.config.minDate,\"Y-m-d\")),h.config.maxDate&&(h.mobileInput.max=h.formatDate(h.config.maxDate,\"Y-m-d\")),h.input.type=\"hidden\",void 0!==h.altInput&&(h.altInput.type=\"hidden\");try{h.input.parentNode&&h.input.parentNode.insertBefore(h.mobileInput,h.input.nextSibling)}catch(e){}O(h.mobileInput,\"change\",(function(e){h.setDate(e.target.value,!1,h.mobileFormatStr),fe(\"onChange\"),fe(\"onClose\")}))}();else{var e=r(te,50);h._debouncedChange=r(F,300),h.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&O(h.daysContainer,\"mouseover\",(function(e){\"range\"===h.config.mode&&ee(e.target)})),O(window.document.body,\"keydown\",X),h.config.inline||h.config.static||O(window,\"resize\",e),void 0!==window.ontouchstart?O(window.document,\"touchstart\",G):O(window.document,\"mousedown\",_(G)),O(window.document,\"focus\",G,{capture:!0}),!0===h.config.clickOpens&&(O(h._input,\"focus\",h.open),O(h._input,\"mousedown\",_(h.open))),void 0!==h.daysContainer&&(O(h.monthNav,\"mousedown\",_(De)),O(h.monthNav,[\"keyup\",\"increment\"],S),O(h.daysContainer,\"mousedown\",_(ce))),void 0!==h.timeContainer&&void 0!==h.minuteElement&&void 0!==h.hourElement&&(O(h.timeContainer,[\"increment\"],x),O(h.timeContainer,\"blur\",x,{capture:!0}),O(h.timeContainer,\"mousedown\",_(P)),O([h.hourElement,h.minuteElement],[\"focus\",\"click\"],(function(e){return e.target.select()})),void 0!==h.secondElement&&O(h.secondElement,\"focus\",(function(){return h.secondElement&&h.secondElement.select()})),void 0!==h.amPM&&O(h.amPM,\"mousedown\",_((function(e){x(e),F()}))))}}(),(h.selectedDates.length||h.config.noCalendar)&&(h.config.enableTime&&T(h.config.noCalendar?h.latestSelectedDateObj||h.config.minDate:void 0),ve(!1)),M(),h.showTimeInput=h.selectedDates.length>0||h.config.noCalendar;var a=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!h.isMobile&&a&&oe(),fe(\"onReady\")}(),h}function M(e,t){for(var n=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<n.length;i++){var o=n[i];try{if(null!==o.getAttribute(\"data-fp-omit\"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=C(o,t||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}\"function\"!=typeof Object.assign&&(Object.assign=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];if(!e)throw TypeError(\"Cannot convert undefined or null to object\");for(var a=function(t){t&&Object.keys(t).forEach((function(n){return e[n]=t[n]}))},i=0,o=t;i<o.length;i++){var r=o[i];a(r)}return e}),\"undefined\"!=typeof HTMLElement&&\"undefined\"!=typeof HTMLCollection&&\"undefined\"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return M(this,e)},HTMLElement.prototype.flatpickr=function(e){return M([this],e)});var y=function(e,t){return\"string\"==typeof e?M(window.document.querySelectorAll(e),t):e instanceof Node?M([e],t):M(e,t)};return y.defaultConfig={},y.l10ns={en:e({},a),default:e({},a)},y.localize=function(t){y.l10ns.default=e({},y.l10ns.default,t)},y.setDefaults=function(t){y.defaultConfig=e({},y.defaultConfig,t)},y.parseDate=D({}),y.formatDate=v({}),y.compareDates=w,\"undefined\"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return M(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(\"string\"==typeof e?parseInt(e,10):e))},\"undefined\"!=typeof window&&(window.flatpickr=y),y},\"object\"==typeof n&&void 0!==t?t.exports=i():\"function\"==typeof define&&define.amd?define(i):(a=a||self).flatpickr=i()},\n      421: function _(n,t,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default='\\n.flatpickr-calendar {\\n  background: transparent;\\n  opacity: 0;\\n  display: none;\\n  text-align: center;\\n  visibility: hidden;\\n  padding: 0;\\n  -webkit-animation: none;\\n  animation: none;\\n  direction: ltr;\\n  border: 0;\\n  font-size: 14px;\\n  line-height: 24px;\\n  border-radius: 5px;\\n  position: absolute;\\n  width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -ms-touch-action: manipulation;\\n  touch-action: manipulation;\\n  background: #fff;\\n  -webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);\\n  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);\\n}\\n.flatpickr-calendar.open,\\n.flatpickr-calendar.inline {\\n  opacity: 1;\\n  max-height: 640px;\\n  visibility: visible;\\n}\\n.flatpickr-calendar.open {\\n  display: inline-block;\\n  z-index: 99999;\\n}\\n.flatpickr-calendar.animate.open {\\n  -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n}\\n.flatpickr-calendar.inline {\\n  display: block;\\n  position: relative;\\n  top: 2px;\\n}\\n.flatpickr-calendar.static {\\n  position: absolute;\\n  top: calc(100% + 2px);\\n}\\n.flatpickr-calendar.static.open {\\n  z-index: 999;\\n  display: block;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {\\n  -webkit-box-shadow: none !important;\\n  box-shadow: none !important;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {\\n  -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer,\\n.flatpickr-calendar .hasTime .dayContainer {\\n  border-bottom: 0;\\n  border-bottom-right-radius: 0;\\n  border-bottom-left-radius: 0;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer {\\n  border-left: 0;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\\n  height: 40px;\\n  border-top: 1px solid #e6e6e6;\\n}\\n.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {\\n  height: auto;\\n}\\n.flatpickr-calendar:before,\\n.flatpickr-calendar:after {\\n  position: absolute;\\n  display: block;\\n  pointer-events: none;\\n  border: solid transparent;\\n  content: \\'\\';\\n  height: 0;\\n  width: 0;\\n  left: 22px;\\n}\\n.flatpickr-calendar.rightMost:before,\\n.flatpickr-calendar.rightMost:after {\\n  left: auto;\\n  right: 22px;\\n}\\n.flatpickr-calendar:before {\\n  border-width: 5px;\\n  margin: 0 -5px;\\n}\\n.flatpickr-calendar:after {\\n  border-width: 4px;\\n  margin: 0 -4px;\\n}\\n.flatpickr-calendar.arrowTop:before,\\n.flatpickr-calendar.arrowTop:after {\\n  bottom: 100%;\\n}\\n.flatpickr-calendar.arrowTop:before {\\n  border-bottom-color: #e6e6e6;\\n}\\n.flatpickr-calendar.arrowTop:after {\\n  border-bottom-color: #fff;\\n}\\n.flatpickr-calendar.arrowBottom:before,\\n.flatpickr-calendar.arrowBottom:after {\\n  top: 100%;\\n}\\n.flatpickr-calendar.arrowBottom:before {\\n  border-top-color: #e6e6e6;\\n}\\n.flatpickr-calendar.arrowBottom:after {\\n  border-top-color: #fff;\\n}\\n.flatpickr-calendar:focus {\\n  outline: 0;\\n}\\n.flatpickr-wrapper {\\n  position: relative;\\n  display: inline-block;\\n}\\n.flatpickr-months {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n}\\n.flatpickr-months .flatpickr-month {\\n  background: transparent;\\n  color: rgba(0, 0, 0, 0.9);\\n  fill: rgba(0, 0, 0, 0.9);\\n  height: 34px;\\n  line-height: 1;\\n  text-align: center;\\n  position: relative;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  overflow: hidden;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\n.flatpickr-months .flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month {\\n  text-decoration: none;\\n  cursor: pointer;\\n  position: absolute;\\n  top: 0;\\n  height: 34px;\\n  padding: 10px;\\n  z-index: 3;\\n  color: rgba(0, 0, 0, 0.9);\\n  fill: rgba(0, 0, 0, 0.9);\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,\\n.flatpickr-months .flatpickr-next-month.flatpickr-disabled {\\n  display: none;\\n}\\n.flatpickr-months .flatpickr-prev-month i,\\n.flatpickr-months .flatpickr-next-month i {\\n  position: relative;\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  left: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-next-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  right: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month:hover,\\n.flatpickr-months .flatpickr-next-month:hover {\\n  color: #959ea9;\\n}\\n.flatpickr-months .flatpickr-prev-month:hover svg,\\n.flatpickr-months .flatpickr-next-month:hover svg {\\n  fill: #f64747;\\n}\\n.flatpickr-months .flatpickr-prev-month svg,\\n.flatpickr-months .flatpickr-next-month svg {\\n  width: 14px;\\n  height: 14px;\\n}\\n.flatpickr-months .flatpickr-prev-month svg path,\\n.flatpickr-months .flatpickr-next-month svg path {\\n  -webkit-transition: fill 0.1s;\\n  transition: fill 0.1s;\\n  fill: inherit;\\n}\\n.numInputWrapper {\\n  position: relative;\\n  height: auto;\\n}\\n.numInputWrapper input,\\n.numInputWrapper span {\\n  display: inline-block;\\n}\\n.numInputWrapper input {\\n  width: 100%;\\n}\\n.numInputWrapper input::-ms-clear {\\n  display: none;\\n}\\n.numInputWrapper input::-webkit-outer-spin-button,\\n.numInputWrapper input::-webkit-inner-spin-button {\\n  margin: 0;\\n  -webkit-appearance: none;\\n}\\n.numInputWrapper span {\\n  position: absolute;\\n  right: 0;\\n  width: 14px;\\n  padding: 0 4px 0 2px;\\n  height: 50%;\\n  line-height: 50%;\\n  opacity: 0;\\n  cursor: pointer;\\n  border: 1px solid rgba(57, 57, 57, 0.15);\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.numInputWrapper span:hover {\\n  background: rgba(0, 0, 0, 0.1);\\n}\\n.numInputWrapper span:active {\\n  background: rgba(0, 0, 0, 0.2);\\n}\\n.numInputWrapper span:after {\\n  display: block;\\n  content: \"\";\\n  position: absolute;\\n}\\n.numInputWrapper span.arrowUp {\\n  top: 0;\\n  border-bottom: 0;\\n}\\n.numInputWrapper span.arrowUp:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-bottom: 4px solid rgba(57, 57, 57, 0.6);\\n  top: 26%;\\n}\\n.numInputWrapper span.arrowDown {\\n  top: 50%;\\n}\\n.numInputWrapper span.arrowDown:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-top: 4px solid rgba(57, 57, 57, 0.6);\\n  top: 40%;\\n}\\n.numInputWrapper span svg {\\n  width: inherit;\\n  height: auto;\\n}\\n.numInputWrapper span svg path {\\n  fill: rgba(0, 0, 0, 0.5);\\n}\\n.numInputWrapper:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.numInputWrapper:hover span {\\n  opacity: 1;\\n}\\n.flatpickr-current-month {\\n  font-size: 135%;\\n  line-height: inherit;\\n  font-weight: 300;\\n  color: inherit;\\n  position: absolute;\\n  width: 75%;\\n  left: 12.5%;\\n  padding: 7.48px 0 0 0;\\n  line-height: 1;\\n  height: 34px;\\n  display: inline-block;\\n  text-align: center;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n}\\n.flatpickr-current-month span.cur-month {\\n  font-family: inherit;\\n  font-weight: 700;\\n  color: inherit;\\n  display: inline-block;\\n  margin-left: 0.5ch;\\n  padding: 0;\\n}\\n.flatpickr-current-month span.cur-month:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .numInputWrapper {\\n  width: 6ch;\\n  width: 7ch\\0;\\n  display: inline-block;\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: rgba(0, 0, 0, 0.9);\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowDown:after {\\n  border-top-color: rgba(0, 0, 0, 0.9);\\n}\\n.flatpickr-current-month input.cur-year {\\n  background: transparent;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: text;\\n  padding: 0 0 0 0.5ch;\\n  margin: 0;\\n  display: inline-block;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  line-height: inherit;\\n  height: auto;\\n  border: 0;\\n  border-radius: 0;\\n  vertical-align: initial;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-current-month input.cur-year:focus {\\n  outline: 0;\\n}\\n.flatpickr-current-month input.cur-year[disabled],\\n.flatpickr-current-month input.cur-year[disabled]:hover {\\n  font-size: 100%;\\n  color: rgba(0, 0, 0, 0.5);\\n  background: transparent;\\n  pointer-events: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months {\\n  appearance: menulist;\\n  background: transparent;\\n  border: none;\\n  border-radius: 0;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: pointer;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  height: auto;\\n  line-height: inherit;\\n  margin: -1px 0 0 0;\\n  outline: none;\\n  padding: 0 0 0 0.5ch;\\n  position: relative;\\n  vertical-align: initial;\\n  -webkit-box-sizing: border-box;\\n  -webkit-appearance: menulist;\\n  -moz-appearance: menulist;\\n  width: auto;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:focus,\\n.flatpickr-current-month .flatpickr-monthDropdown-months:active {\\n  outline: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {\\n  background-color: transparent;\\n  outline: none;\\n  padding: 0;\\n}\\n.flatpickr-weekdays {\\n  background: transparent;\\n  text-align: center;\\n  overflow: hidden;\\n  width: 100%;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: center;\\n  -webkit-align-items: center;\\n  -ms-flex-align: center;\\n  align-items: center;\\n  height: 28px;\\n}\\n.flatpickr-weekdays .flatpickr-weekdaycontainer {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\nspan.flatpickr-weekday {\\n  cursor: default;\\n  font-size: 90%;\\n  background: transparent;\\n  color: rgba(0, 0, 0, 0.54);\\n  line-height: 1;\\n  margin: 0;\\n  text-align: center;\\n  display: block;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  font-weight: bolder;\\n}\\n.dayContainer,\\n.flatpickr-weeks {\\n  padding: 1px 0 0 0;\\n}\\n.flatpickr-days {\\n  position: relative;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: start;\\n  -webkit-align-items: flex-start;\\n  -ms-flex-align: start;\\n  align-items: flex-start;\\n  width: 307.875px;\\n}\\n.flatpickr-days:focus {\\n  outline: 0;\\n}\\n.dayContainer {\\n  padding: 0;\\n  outline: 0;\\n  text-align: left;\\n  width: 307.875px;\\n  min-width: 307.875px;\\n  max-width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  display: inline-block;\\n  display: -ms-flexbox;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: flex;\\n  -webkit-flex-wrap: wrap;\\n  flex-wrap: wrap;\\n  -ms-flex-wrap: wrap;\\n  -ms-flex-pack: justify;\\n  -webkit-justify-content: space-around;\\n  justify-content: space-around;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n  opacity: 1;\\n}\\n.dayContainer + .dayContainer {\\n  -webkit-box-shadow: -1px 0 0 #e6e6e6;\\n  box-shadow: -1px 0 0 #e6e6e6;\\n}\\n.flatpickr-day {\\n  background: none;\\n  border: 1px solid transparent;\\n  border-radius: 150px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: #393939;\\n  cursor: pointer;\\n  font-weight: 400;\\n  width: 14.2857143%;\\n  -webkit-flex-basis: 14.2857143%;\\n  -ms-flex-preferred-size: 14.2857143%;\\n  flex-basis: 14.2857143%;\\n  max-width: 39px;\\n  height: 39px;\\n  line-height: 39px;\\n  margin: 0;\\n  display: inline-block;\\n  position: relative;\\n  -webkit-box-pack: center;\\n  -webkit-justify-content: center;\\n  -ms-flex-pack: center;\\n  justify-content: center;\\n  text-align: center;\\n}\\n.flatpickr-day.inRange,\\n.flatpickr-day.prevMonthDay.inRange,\\n.flatpickr-day.nextMonthDay.inRange,\\n.flatpickr-day.today.inRange,\\n.flatpickr-day.prevMonthDay.today.inRange,\\n.flatpickr-day.nextMonthDay.today.inRange,\\n.flatpickr-day:hover,\\n.flatpickr-day.prevMonthDay:hover,\\n.flatpickr-day.nextMonthDay:hover,\\n.flatpickr-day:focus,\\n.flatpickr-day.prevMonthDay:focus,\\n.flatpickr-day.nextMonthDay:focus {\\n  cursor: pointer;\\n  outline: 0;\\n  background: #e6e6e6;\\n  border-color: #e6e6e6;\\n}\\n.flatpickr-day.today {\\n  border-color: #959ea9;\\n}\\n.flatpickr-day.today:hover,\\n.flatpickr-day.today:focus {\\n  border-color: #959ea9;\\n  background: #959ea9;\\n  color: #fff;\\n}\\n.flatpickr-day.selected,\\n.flatpickr-day.startRange,\\n.flatpickr-day.endRange,\\n.flatpickr-day.selected.inRange,\\n.flatpickr-day.startRange.inRange,\\n.flatpickr-day.endRange.inRange,\\n.flatpickr-day.selected:focus,\\n.flatpickr-day.startRange:focus,\\n.flatpickr-day.endRange:focus,\\n.flatpickr-day.selected:hover,\\n.flatpickr-day.startRange:hover,\\n.flatpickr-day.endRange:hover,\\n.flatpickr-day.selected.prevMonthDay,\\n.flatpickr-day.startRange.prevMonthDay,\\n.flatpickr-day.endRange.prevMonthDay,\\n.flatpickr-day.selected.nextMonthDay,\\n.flatpickr-day.startRange.nextMonthDay,\\n.flatpickr-day.endRange.nextMonthDay {\\n  background: #569ff7;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  color: #fff;\\n  border-color: #569ff7;\\n}\\n.flatpickr-day.selected.startRange,\\n.flatpickr-day.startRange.startRange,\\n.flatpickr-day.endRange.startRange {\\n  border-radius: 50px 0 0 50px;\\n}\\n.flatpickr-day.selected.endRange,\\n.flatpickr-day.startRange.endRange,\\n.flatpickr-day.endRange.endRange {\\n  border-radius: 0 50px 50px 0;\\n}\\n.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {\\n  -webkit-box-shadow: -10px 0 0 #569ff7;\\n  box-shadow: -10px 0 0 #569ff7;\\n}\\n.flatpickr-day.selected.startRange.endRange,\\n.flatpickr-day.startRange.startRange.endRange,\\n.flatpickr-day.endRange.startRange.endRange {\\n  border-radius: 50px;\\n}\\n.flatpickr-day.inRange {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n  box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover,\\n.flatpickr-day.prevMonthDay,\\n.flatpickr-day.nextMonthDay,\\n.flatpickr-day.notAllowed,\\n.flatpickr-day.notAllowed.prevMonthDay,\\n.flatpickr-day.notAllowed.nextMonthDay {\\n  color: rgba(57, 57, 57, 0.3);\\n  background: transparent;\\n  border-color: transparent;\\n  cursor: default;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover {\\n  cursor: not-allowed;\\n  color: rgba(57, 57, 57, 0.1);\\n}\\n.flatpickr-day.week.selected {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;\\n  box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;\\n}\\n.flatpickr-day.hidden {\\n  visibility: hidden;\\n}\\n.rangeMode .flatpickr-day {\\n  margin-top: 1px;\\n}\\n.flatpickr-weekwrapper {\\n  float: left;\\n}\\n.flatpickr-weekwrapper .flatpickr-weeks {\\n  padding: 0 12px;\\n  -webkit-box-shadow: 1px 0 0 #e6e6e6;\\n  box-shadow: 1px 0 0 #e6e6e6;\\n}\\n.flatpickr-weekwrapper .flatpickr-weekday {\\n  float: none;\\n  width: 100%;\\n  line-height: 28px;\\n}\\n.flatpickr-weekwrapper span.flatpickr-day,\\n.flatpickr-weekwrapper span.flatpickr-day:hover {\\n  display: block;\\n  width: 100%;\\n  max-width: none;\\n  color: rgba(57, 57, 57, 0.3);\\n  background: transparent;\\n  cursor: default;\\n  border: none;\\n}\\n.flatpickr-innerContainer {\\n  display: block;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n}\\n.flatpickr-rContainer {\\n  display: inline-block;\\n  padding: 0;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.flatpickr-time {\\n  text-align: center;\\n  outline: 0;\\n  display: block;\\n  height: 0;\\n  line-height: 40px;\\n  max-height: 40px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n}\\n.flatpickr-time:after {\\n  content: \"\";\\n  display: table;\\n  clear: both;\\n}\\n.flatpickr-time .numInputWrapper {\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  width: 40%;\\n  height: 40px;\\n  float: left;\\n}\\n.flatpickr-time .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: #393939;\\n}\\n.flatpickr-time .numInputWrapper span.arrowDown:after {\\n  border-top-color: #393939;\\n}\\n.flatpickr-time.hasSeconds .numInputWrapper {\\n  width: 26%;\\n}\\n.flatpickr-time.time24hr .numInputWrapper {\\n  width: 49%;\\n}\\n.flatpickr-time input {\\n  background: transparent;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  border: 0;\\n  border-radius: 0;\\n  text-align: center;\\n  margin: 0;\\n  padding: 0;\\n  height: inherit;\\n  line-height: inherit;\\n  color: #393939;\\n  font-size: 14px;\\n  position: relative;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-time input.flatpickr-hour {\\n  font-weight: bold;\\n}\\n.flatpickr-time input.flatpickr-minute,\\n.flatpickr-time input.flatpickr-second {\\n  font-weight: 400;\\n}\\n.flatpickr-time input:focus {\\n  outline: 0;\\n  border: 0;\\n}\\n.flatpickr-time .flatpickr-time-separator,\\n.flatpickr-time .flatpickr-am-pm {\\n  height: inherit;\\n  float: left;\\n  line-height: inherit;\\n  color: #393939;\\n  font-weight: bold;\\n  width: 2%;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  -webkit-align-self: center;\\n  -ms-flex-item-align: center;\\n  align-self: center;\\n}\\n.flatpickr-time .flatpickr-am-pm {\\n  outline: 0;\\n  width: 18%;\\n  cursor: pointer;\\n  text-align: center;\\n  font-weight: 400;\\n}\\n.flatpickr-time input:hover,\\n.flatpickr-time .flatpickr-am-pm:hover,\\n.flatpickr-time input:focus,\\n.flatpickr-time .flatpickr-am-pm:focus {\\n  background: #eee;\\n}\\n.flatpickr-input[readonly] {\\n  cursor: pointer;\\n}\\n@-webkit-keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\n@keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\n.flatpickr-calendar {\\n  background: transparent;\\n  opacity: 0;\\n  display: none;\\n  text-align: center;\\n  visibility: hidden;\\n  padding: 0;\\n  -webkit-animation: none;\\n  animation: none;\\n  direction: ltr;\\n  border: 0;\\n  font-size: 14px;\\n  line-height: 24px;\\n  border-radius: 5px;\\n  position: absolute;\\n  width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -ms-touch-action: manipulation;\\n  touch-action: manipulation;\\n  -webkit-box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);\\n  box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);\\n}\\n.flatpickr-calendar.open,\\n.flatpickr-calendar.inline {\\n  opacity: 1;\\n  max-height: 640px;\\n  visibility: visible;\\n}\\n.flatpickr-calendar.open {\\n  display: inline-block;\\n  z-index: 99999;\\n}\\n.flatpickr-calendar.animate.open {\\n  -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);\\n}\\n.flatpickr-calendar.inline {\\n  display: block;\\n  position: relative;\\n  top: 2px;\\n}\\n.flatpickr-calendar.static {\\n  position: absolute;\\n  top: calc(100% + 2px);\\n}\\n.flatpickr-calendar.static.open {\\n  z-index: 999;\\n  display: block;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {\\n  -webkit-box-shadow: none !important;\\n  box-shadow: none !important;\\n}\\n.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {\\n  -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer,\\n.flatpickr-calendar .hasTime .dayContainer {\\n  border-bottom: 0;\\n  border-bottom-right-radius: 0;\\n  border-bottom-left-radius: 0;\\n}\\n.flatpickr-calendar .hasWeeks .dayContainer {\\n  border-left: 0;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\\n  height: 40px;\\n  border-top: 1px solid #eceef1;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-innerContainer {\\n  border-bottom: 0;\\n}\\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\\n  border: 1px solid #eceef1;\\n}\\n.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {\\n  height: auto;\\n}\\n.flatpickr-calendar:before,\\n.flatpickr-calendar:after {\\n  position: absolute;\\n  display: block;\\n  pointer-events: none;\\n  border: solid transparent;\\n  content: \\'\\';\\n  height: 0;\\n  width: 0;\\n  left: 22px;\\n}\\n.flatpickr-calendar.rightMost:before,\\n.flatpickr-calendar.rightMost:after {\\n  left: auto;\\n  right: 22px;\\n}\\n.flatpickr-calendar:before {\\n  border-width: 5px;\\n  margin: 0 -5px;\\n}\\n.flatpickr-calendar:after {\\n  border-width: 4px;\\n  margin: 0 -4px;\\n}\\n.flatpickr-calendar.arrowTop:before,\\n.flatpickr-calendar.arrowTop:after {\\n  bottom: 100%;\\n}\\n.flatpickr-calendar.arrowTop:before {\\n  border-bottom-color: #eceef1;\\n}\\n.flatpickr-calendar.arrowTop:after {\\n  border-bottom-color: #eceef1;\\n}\\n.flatpickr-calendar.arrowBottom:before,\\n.flatpickr-calendar.arrowBottom:after {\\n  top: 100%;\\n}\\n.flatpickr-calendar.arrowBottom:before {\\n  border-top-color: #eceef1;\\n}\\n.flatpickr-calendar.arrowBottom:after {\\n  border-top-color: #eceef1;\\n}\\n.flatpickr-calendar:focus {\\n  outline: 0;\\n}\\n.flatpickr-wrapper {\\n  position: relative;\\n  display: inline-block;\\n}\\n.flatpickr-months {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n}\\n.flatpickr-months .flatpickr-month {\\n  border-radius: 5px 5px 0 0;\\n  background: #eceef1;\\n  color: #5a6171;\\n  fill: #5a6171;\\n  height: 34px;\\n  line-height: 1;\\n  text-align: center;\\n  position: relative;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  overflow: hidden;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\n.flatpickr-months .flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month {\\n  text-decoration: none;\\n  cursor: pointer;\\n  position: absolute;\\n  top: 0;\\n  height: 34px;\\n  padding: 10px;\\n  z-index: 3;\\n  color: #5a6171;\\n  fill: #5a6171;\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,\\n.flatpickr-months .flatpickr-next-month.flatpickr-disabled {\\n  display: none;\\n}\\n.flatpickr-months .flatpickr-prev-month i,\\n.flatpickr-months .flatpickr-next-month i {\\n  position: relative;\\n}\\n.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  left: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,\\n.flatpickr-months .flatpickr-next-month.flatpickr-next-month {\\n  /*\\n      /*rtl:begin:ignore*/\\n  /*\\n      */\\n  right: 0;\\n  /*\\n      /*rtl:end:ignore*/\\n  /*\\n      */\\n}\\n/*\\n      /*rtl:begin:ignore*/\\n/*\\n      /*rtl:end:ignore*/\\n.flatpickr-months .flatpickr-prev-month:hover,\\n.flatpickr-months .flatpickr-next-month:hover {\\n  color: #bbb;\\n}\\n.flatpickr-months .flatpickr-prev-month:hover svg,\\n.flatpickr-months .flatpickr-next-month:hover svg {\\n  fill: #f64747;\\n}\\n.flatpickr-months .flatpickr-prev-month svg,\\n.flatpickr-months .flatpickr-next-month svg {\\n  width: 14px;\\n  height: 14px;\\n}\\n.flatpickr-months .flatpickr-prev-month svg path,\\n.flatpickr-months .flatpickr-next-month svg path {\\n  -webkit-transition: fill 0.1s;\\n  transition: fill 0.1s;\\n  fill: inherit;\\n}\\n.numInputWrapper {\\n  position: relative;\\n  height: auto;\\n}\\n.numInputWrapper input,\\n.numInputWrapper span {\\n  display: inline-block;\\n}\\n.numInputWrapper input {\\n  width: 100%;\\n}\\n.numInputWrapper input::-ms-clear {\\n  display: none;\\n}\\n.numInputWrapper input::-webkit-outer-spin-button,\\n.numInputWrapper input::-webkit-inner-spin-button {\\n  margin: 0;\\n  -webkit-appearance: none;\\n}\\n.numInputWrapper span {\\n  position: absolute;\\n  right: 0;\\n  width: 14px;\\n  padding: 0 4px 0 2px;\\n  height: 50%;\\n  line-height: 50%;\\n  opacity: 0;\\n  cursor: pointer;\\n  border: 1px solid rgba(72, 72, 72, 0.15);\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.numInputWrapper span:hover {\\n  background: rgba(0, 0, 0, 0.1);\\n}\\n.numInputWrapper span:active {\\n  background: rgba(0, 0, 0, 0.2);\\n}\\n.numInputWrapper span:after {\\n  display: block;\\n  content: \"\";\\n  position: absolute;\\n}\\n.numInputWrapper span.arrowUp {\\n  top: 0;\\n  border-bottom: 0;\\n}\\n.numInputWrapper span.arrowUp:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-bottom: 4px solid rgba(72, 72, 72, 0.6);\\n  top: 26%;\\n}\\n.numInputWrapper span.arrowDown {\\n  top: 50%;\\n}\\n.numInputWrapper span.arrowDown:after {\\n  border-left: 4px solid transparent;\\n  border-right: 4px solid transparent;\\n  border-top: 4px solid rgba(72, 72, 72, 0.6);\\n  top: 40%;\\n}\\n.numInputWrapper span svg {\\n  width: inherit;\\n  height: auto;\\n}\\n.numInputWrapper span svg path {\\n  fill: rgba(90, 97, 113, 0.5);\\n}\\n.numInputWrapper:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.numInputWrapper:hover span {\\n  opacity: 1;\\n}\\n.flatpickr-current-month {\\n  font-size: 135%;\\n  line-height: inherit;\\n  font-weight: 300;\\n  color: inherit;\\n  position: absolute;\\n  width: 75%;\\n  left: 12.5%;\\n  padding: 7.48px 0 0 0;\\n  line-height: 1;\\n  height: 34px;\\n  display: inline-block;\\n  text-align: center;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n}\\n.flatpickr-current-month span.cur-month {\\n  font-family: inherit;\\n  font-weight: 700;\\n  color: inherit;\\n  display: inline-block;\\n  margin-left: 0.5ch;\\n  padding: 0;\\n}\\n.flatpickr-current-month span.cur-month:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .numInputWrapper {\\n  width: 6ch;\\n  width: 7ch\\0;\\n  display: inline-block;\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: #5a6171;\\n}\\n.flatpickr-current-month .numInputWrapper span.arrowDown:after {\\n  border-top-color: #5a6171;\\n}\\n.flatpickr-current-month input.cur-year {\\n  background: transparent;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: text;\\n  padding: 0 0 0 0.5ch;\\n  margin: 0;\\n  display: inline-block;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  line-height: inherit;\\n  height: auto;\\n  border: 0;\\n  border-radius: 0;\\n  vertical-align: initial;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-current-month input.cur-year:focus {\\n  outline: 0;\\n}\\n.flatpickr-current-month input.cur-year[disabled],\\n.flatpickr-current-month input.cur-year[disabled]:hover {\\n  font-size: 100%;\\n  color: rgba(90, 97, 113, 0.5);\\n  background: transparent;\\n  pointer-events: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months {\\n  appearance: menulist;\\n  background: #eceef1;\\n  border: none;\\n  border-radius: 0;\\n  box-sizing: border-box;\\n  color: inherit;\\n  cursor: pointer;\\n  font-size: inherit;\\n  font-family: inherit;\\n  font-weight: 300;\\n  height: auto;\\n  line-height: inherit;\\n  margin: -1px 0 0 0;\\n  outline: none;\\n  padding: 0 0 0 0.5ch;\\n  position: relative;\\n  vertical-align: initial;\\n  -webkit-box-sizing: border-box;\\n  -webkit-appearance: menulist;\\n  -moz-appearance: menulist;\\n  width: auto;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:focus,\\n.flatpickr-current-month .flatpickr-monthDropdown-months:active {\\n  outline: none;\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months:hover {\\n  background: rgba(0, 0, 0, 0.05);\\n}\\n.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {\\n  background-color: #eceef1;\\n  outline: none;\\n  padding: 0;\\n}\\n.flatpickr-weekdays {\\n  background: #eceef1;\\n  text-align: center;\\n  overflow: hidden;\\n  width: 100%;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: center;\\n  -webkit-align-items: center;\\n  -ms-flex-align: center;\\n  align-items: center;\\n  height: 28px;\\n}\\n.flatpickr-weekdays .flatpickr-weekdaycontainer {\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n}\\nspan.flatpickr-weekday {\\n  cursor: default;\\n  font-size: 90%;\\n  background: #eceef1;\\n  color: #5a6171;\\n  line-height: 1;\\n  margin: 0;\\n  text-align: center;\\n  display: block;\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  font-weight: bolder;\\n}\\n.dayContainer,\\n.flatpickr-weeks {\\n  padding: 1px 0 0 0;\\n}\\n.flatpickr-days {\\n  position: relative;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-align: start;\\n  -webkit-align-items: flex-start;\\n  -ms-flex-align: start;\\n  align-items: flex-start;\\n  width: 307.875px;\\n  border-left: 1px solid #eceef1;\\n  border-right: 1px solid #eceef1;\\n}\\n.flatpickr-days:focus {\\n  outline: 0;\\n}\\n.dayContainer {\\n  padding: 0;\\n  outline: 0;\\n  text-align: left;\\n  width: 307.875px;\\n  min-width: 307.875px;\\n  max-width: 307.875px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  display: inline-block;\\n  display: -ms-flexbox;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: flex;\\n  -webkit-flex-wrap: wrap;\\n  flex-wrap: wrap;\\n  -ms-flex-wrap: wrap;\\n  -ms-flex-pack: justify;\\n  -webkit-justify-content: space-around;\\n  justify-content: space-around;\\n  -webkit-transform: translate3d(0px, 0px, 0px);\\n  transform: translate3d(0px, 0px, 0px);\\n  opacity: 1;\\n}\\n.dayContainer + .dayContainer {\\n  -webkit-box-shadow: -1px 0 0 #eceef1;\\n  box-shadow: -1px 0 0 #eceef1;\\n}\\n.flatpickr-day {\\n  background: none;\\n  border: 1px solid transparent;\\n  border-radius: 150px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  color: #484848;\\n  cursor: pointer;\\n  font-weight: 400;\\n  width: 14.2857143%;\\n  -webkit-flex-basis: 14.2857143%;\\n  -ms-flex-preferred-size: 14.2857143%;\\n  flex-basis: 14.2857143%;\\n  max-width: 39px;\\n  height: 39px;\\n  line-height: 39px;\\n  margin: 0;\\n  display: inline-block;\\n  position: relative;\\n  -webkit-box-pack: center;\\n  -webkit-justify-content: center;\\n  -ms-flex-pack: center;\\n  justify-content: center;\\n  text-align: center;\\n}\\n.flatpickr-day.inRange,\\n.flatpickr-day.prevMonthDay.inRange,\\n.flatpickr-day.nextMonthDay.inRange,\\n.flatpickr-day.today.inRange,\\n.flatpickr-day.prevMonthDay.today.inRange,\\n.flatpickr-day.nextMonthDay.today.inRange,\\n.flatpickr-day:hover,\\n.flatpickr-day.prevMonthDay:hover,\\n.flatpickr-day.nextMonthDay:hover,\\n.flatpickr-day:focus,\\n.flatpickr-day.prevMonthDay:focus,\\n.flatpickr-day.nextMonthDay:focus {\\n  cursor: pointer;\\n  outline: 0;\\n  background: #e2e2e2;\\n  border-color: #e2e2e2;\\n}\\n.flatpickr-day.today {\\n  border-color: #bbb;\\n}\\n.flatpickr-day.today:hover,\\n.flatpickr-day.today:focus {\\n  border-color: #bbb;\\n  background: #bbb;\\n  color: #fff;\\n}\\n.flatpickr-day.selected,\\n.flatpickr-day.startRange,\\n.flatpickr-day.endRange,\\n.flatpickr-day.selected.inRange,\\n.flatpickr-day.startRange.inRange,\\n.flatpickr-day.endRange.inRange,\\n.flatpickr-day.selected:focus,\\n.flatpickr-day.startRange:focus,\\n.flatpickr-day.endRange:focus,\\n.flatpickr-day.selected:hover,\\n.flatpickr-day.startRange:hover,\\n.flatpickr-day.endRange:hover,\\n.flatpickr-day.selected.prevMonthDay,\\n.flatpickr-day.startRange.prevMonthDay,\\n.flatpickr-day.endRange.prevMonthDay,\\n.flatpickr-day.selected.nextMonthDay,\\n.flatpickr-day.startRange.nextMonthDay,\\n.flatpickr-day.endRange.nextMonthDay {\\n  background: #ff5a5f;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  color: #fff;\\n  border-color: #ff5a5f;\\n}\\n.flatpickr-day.selected.startRange,\\n.flatpickr-day.startRange.startRange,\\n.flatpickr-day.endRange.startRange {\\n  border-radius: 50px 0 0 50px;\\n}\\n.flatpickr-day.selected.endRange,\\n.flatpickr-day.startRange.endRange,\\n.flatpickr-day.endRange.endRange {\\n  border-radius: 0 50px 50px 0;\\n}\\n.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),\\n.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {\\n  -webkit-box-shadow: -10px 0 0 #ff5a5f;\\n  box-shadow: -10px 0 0 #ff5a5f;\\n}\\n.flatpickr-day.selected.startRange.endRange,\\n.flatpickr-day.startRange.startRange.endRange,\\n.flatpickr-day.endRange.startRange.endRange {\\n  border-radius: 50px;\\n}\\n.flatpickr-day.inRange {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;\\n  box-shadow: -5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover,\\n.flatpickr-day.prevMonthDay,\\n.flatpickr-day.nextMonthDay,\\n.flatpickr-day.notAllowed,\\n.flatpickr-day.notAllowed.prevMonthDay,\\n.flatpickr-day.notAllowed.nextMonthDay {\\n  color: rgba(72, 72, 72, 0.3);\\n  background: transparent;\\n  border-color: transparent;\\n  cursor: default;\\n}\\n.flatpickr-day.flatpickr-disabled,\\n.flatpickr-day.flatpickr-disabled:hover {\\n  cursor: not-allowed;\\n  color: rgba(72, 72, 72, 0.1);\\n}\\n.flatpickr-day.week.selected {\\n  border-radius: 0;\\n  -webkit-box-shadow: -5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;\\n  box-shadow: -5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;\\n}\\n.flatpickr-day.hidden {\\n  visibility: hidden;\\n}\\n.rangeMode .flatpickr-day {\\n  margin-top: 1px;\\n}\\n.flatpickr-weekwrapper {\\n  float: left;\\n}\\n.flatpickr-weekwrapper .flatpickr-weeks {\\n  padding: 0 12px;\\n  border-left: 1px solid #eceef1;\\n}\\n.flatpickr-weekwrapper .flatpickr-weekday {\\n  float: none;\\n  width: 100%;\\n  line-height: 28px;\\n}\\n.flatpickr-weekwrapper span.flatpickr-day,\\n.flatpickr-weekwrapper span.flatpickr-day:hover {\\n  display: block;\\n  width: 100%;\\n  max-width: none;\\n  color: rgba(72, 72, 72, 0.3);\\n  background: transparent;\\n  cursor: default;\\n  border: none;\\n}\\n.flatpickr-innerContainer {\\n  display: block;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n  background: #fff;\\n  border-bottom: 1px solid #eceef1;\\n}\\n.flatpickr-rContainer {\\n  display: inline-block;\\n  padding: 0;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.flatpickr-time {\\n  text-align: center;\\n  outline: 0;\\n  display: block;\\n  height: 0;\\n  line-height: 40px;\\n  max-height: 40px;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  overflow: hidden;\\n  display: -webkit-box;\\n  display: -webkit-flex;\\n  display: -ms-flexbox;\\n  display: flex;\\n  background: #fff;\\n  border-radius: 0 0 5px 5px;\\n}\\n.flatpickr-time:after {\\n  content: \"\";\\n  display: table;\\n  clear: both;\\n}\\n.flatpickr-time .numInputWrapper {\\n  -webkit-box-flex: 1;\\n  -webkit-flex: 1;\\n  -ms-flex: 1;\\n  flex: 1;\\n  width: 40%;\\n  height: 40px;\\n  float: left;\\n}\\n.flatpickr-time .numInputWrapper span.arrowUp:after {\\n  border-bottom-color: #484848;\\n}\\n.flatpickr-time .numInputWrapper span.arrowDown:after {\\n  border-top-color: #484848;\\n}\\n.flatpickr-time.hasSeconds .numInputWrapper {\\n  width: 26%;\\n}\\n.flatpickr-time.time24hr .numInputWrapper {\\n  width: 49%;\\n}\\n.flatpickr-time input {\\n  background: transparent;\\n  -webkit-box-shadow: none;\\n  box-shadow: none;\\n  border: 0;\\n  border-radius: 0;\\n  text-align: center;\\n  margin: 0;\\n  padding: 0;\\n  height: inherit;\\n  line-height: inherit;\\n  color: #484848;\\n  font-size: 14px;\\n  position: relative;\\n  -webkit-box-sizing: border-box;\\n  box-sizing: border-box;\\n  -webkit-appearance: textfield;\\n  -moz-appearance: textfield;\\n  appearance: textfield;\\n}\\n.flatpickr-time input.flatpickr-hour {\\n  font-weight: bold;\\n}\\n.flatpickr-time input.flatpickr-minute,\\n.flatpickr-time input.flatpickr-second {\\n  font-weight: 400;\\n}\\n.flatpickr-time input:focus {\\n  outline: 0;\\n  border: 0;\\n}\\n.flatpickr-time .flatpickr-time-separator,\\n.flatpickr-time .flatpickr-am-pm {\\n  height: inherit;\\n  float: left;\\n  line-height: inherit;\\n  color: #484848;\\n  font-weight: bold;\\n  width: 2%;\\n  -webkit-user-select: none;\\n  -moz-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  -webkit-align-self: center;\\n  -ms-flex-item-align: center;\\n  align-self: center;\\n}\\n.flatpickr-time .flatpickr-am-pm {\\n  outline: 0;\\n  width: 18%;\\n  cursor: pointer;\\n  text-align: center;\\n  font-weight: 400;\\n}\\n.flatpickr-time input:hover,\\n.flatpickr-time .flatpickr-am-pm:hover,\\n.flatpickr-time input:focus,\\n.flatpickr-time .flatpickr-am-pm:focus {\\n  background: #eaeaea;\\n}\\n.flatpickr-input[readonly] {\\n  cursor: pointer;\\n}\\n@-webkit-keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\n@keyframes fpFadeInDown {\\n  from {\\n    opacity: 0;\\n    -webkit-transform: translate3d(0, -20px, 0);\\n    transform: translate3d(0, -20px, 0);\\n  }\\n  to {\\n    opacity: 1;\\n    -webkit-transform: translate3d(0, 0, 0);\\n    transform: translate3d(0, 0, 0);\\n  }\\n}\\nspan.flatpickr-day.selected {\\n  font-weight: bold;\\n}\\n'},\n      422: function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(1).__importDefault(e(186)),r=e(423);class n extends r.AbstractRangeSliderView{}a.DateRangeSliderView=n,n.__name__=\"DateRangeSliderView\";class d extends r.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_DateRangeSlider(){this.prototype.default_view=n,this.override({format:\"%d %b %Y\"})}_formatter(e,t){return i.default(e,t)}}a.DateRangeSlider=d,d.__name__=\"DateRangeSlider\",d.init_DateRangeSlider()},\n      423: function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=t(1),l=s.__importStar(t(424)),r=t(72),o=t(9),n=t(405),a=t(131),d=t(425),_=t(412),h=s.__importDefault(t(426)),c=s.__importDefault(t(427));class u extends n.ControlView{*controls(){yield this.slider_el}get noUiSlider(){return this.slider_el.noUiSlider}connect_signals(){super.connect_signals();const{direction:t,orientation:e,tooltips:i}=this.model.properties;this.on_change([t,e,i],()=>this.render());const{start:s,end:l,value:r,step:o,title:n}=this.model.properties;this.on_change([s,l,r,o],()=>{const{start:t,end:e,value:i,step:s}=this._calc_to();this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s})});const{bar_color:a}=this.model.properties;this.on_change(a,()=>{this._set_bar_color()});const{show_value:d}=this.model.properties;this.on_change([r,n,d],()=>this._update_title())}styles(){return[...super.styles(),h.default,c.default]}_update_title(){r.empty(this.title_el);const t=null==this.model.title||0==this.model.title.length&&!this.model.show_value;if(this.title_el.style.display=t?\"none\":\"\",!t&&(0!=this.model.title.length&&(this.title_el.textContent=this.model.title+\": \"),this.model.show_value)){const{value:t}=this._calc_to(),e=t.map(t=>this.model.pretty(t)).join(\" .. \");this.title_el.appendChild(r.span({class:d.bk_slider_value},e))}}_set_bar_color(){if(!this.model.disabled){this.slider_el.querySelector(\".noUi-connect\").style.backgroundColor=this.model.bar_color}}render(){super.render();const{start:t,end:e,value:i,step:s}=this._calc_to();let n;if(this.model.tooltips){const t={to:t=>this.model.pretty(t)};n=o.repeat(t,i.length)}else n=!1;if(null==this.slider_el){this.slider_el=r.div(),l.create(this.slider_el,{range:{min:t,max:e},start:i,step:s,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:n,orientation:this.model.orientation,direction:this.model.direction}),this.noUiSlider.on(\"slide\",(t,e,i)=>this._slide(i)),this.noUiSlider.on(\"change\",(t,e,i)=>this._change(i));const o=(t,e)=>{if(!n)return;this.slider_el.querySelectorAll(\".noUi-handle\")[t].querySelector(\".noUi-tooltip\").style.display=e?\"block\":\"\"};this.noUiSlider.on(\"start\",(t,e)=>o(e,!0)),this.noUiSlider.on(\"end\",(t,e)=>o(e,!1))}else this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s});this._set_bar_color(),this.model.disabled?this.slider_el.setAttribute(\"disabled\",\"true\"):this.slider_el.removeAttribute(\"disabled\"),this.title_el=r.div({class:d.bk_slider_title}),this._update_title(),this.group_el=r.div({class:_.bk_input_group},this.title_el,this.slider_el),this.el.appendChild(this.group_el)}_slide(t){this.model.value=this._calc_from(t)}_change(t){this.model.value=this._calc_from(t),this.model.value_throttled=this.model.value}}u.__name__=\"AbstractBaseSliderView\";class m extends u{_calc_to(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}}_calc_from([t]){return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(t):t}}i.AbstractSliderView=m,m.__name__=\"AbstractSliderView\";class p extends u{_calc_to(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}}_calc_from(t){return t}}i.AbstractRangeSliderView=p,p.__name__=\"AbstractRangeSliderView\";class b extends n.Control{constructor(t){super(t),this.connected=!1}static init_AbstractSlider(){this.define(({Any:t,Boolean:e,Number:i,String:s,Color:l,Or:r,Enum:o,Ref:n})=>({title:[s,\"\"],show_value:[e,!0],start:[t],end:[t],value:[t],value_throttled:[t],step:[i,1],format:[r(s,n(a.TickFormatter))],direction:[o(\"ltr\",\"rtl\"),\"ltr\"],tooltips:[e,!0],bar_color:[l,\"#e6e6e6\"]}))}_formatter(t,e){return\"\"+t}pretty(t){return this._formatter(t,this.format)}}i.AbstractSlider=b,b.__name__=\"AbstractSlider\",b.init_AbstractSlider()},\n      424: function _(t,e,r){\n      /*! nouislider - 14.6.0 - 6/27/2020 */\n      var n;n=function(){\"use strict\";var t=\"14.6.0\";function e(t){t.parentElement.removeChild(t)}function r(t){return null!=t}function n(t){t.preventDefault()}function i(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function o(t,e,r){r>0&&(u(t,e),setTimeout((function(){c(t,e)}),r))}function s(t){return Math.max(Math.min(t,100),0)}function a(t){return Array.isArray(t)?t:[t]}function l(t){var e=(t=String(t)).split(\".\");return e.length>1?e[1].length:0}function u(t,e){t.classList&&!/\\s/.test(e)?t.classList.add(e):t.className+=\" \"+e}function c(t,e){t.classList&&!/\\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function p(t){var e=void 0!==window.pageXOffset,r=\"CSS1Compat\"===(t.compatMode||\"\");return{x:e?window.pageXOffset:r?t.documentElement.scrollLeft:t.body.scrollLeft,y:e?window.pageYOffset:r?t.documentElement.scrollTop:t.body.scrollTop}}function f(t,e){return 100/(e-t)}function d(t,e,r){return 100*e/(t[r+1]-t[r])}function h(t,e){for(var r=1;t>=e[r];)r+=1;return r}function m(t,e,r){if(r>=t.slice(-1)[0])return 100;var n=h(r,t),i=t[n-1],o=t[n],s=e[n-1],a=e[n];return s+function(t,e){return d(t,t[0]<0?e+Math.abs(t[0]):e-t[0],0)}([i,o],r)/f(s,a)}function g(t,e,r,n){if(100===n)return n;var i=h(n,t),o=t[i-1],s=t[i];return r?n-o>(s-o)/2?s:o:e[i-1]?t[i-1]+function(t,e){return Math.round(t/e)*e}(n-t[i-1],e[i-1]):n}function v(t,e,r){var n;if(\"number\"==typeof e&&(e=[e]),!Array.isArray(e))throw new Error(\"noUiSlider (14.6.0): 'range' contains invalid value.\");if(!i(n=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!i(e[0]))throw new Error(\"noUiSlider (14.6.0): 'range' value isn't numeric.\");r.xPct.push(n),r.xVal.push(e[0]),n?r.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(r.xSteps[0]=e[1]),r.xHighestCompleteStep.push(0)}function b(t,e,r){if(e)if(r.xVal[t]!==r.xVal[t+1]){r.xSteps[t]=d([r.xVal[t],r.xVal[t+1]],e,0)/f(r.xPct[t],r.xPct[t+1]);var n=(r.xVal[t+1]-r.xVal[t])/r.xNumSteps[t],i=Math.ceil(Number(n.toFixed(3))-1),o=r.xVal[t]+r.xNumSteps[t]*i;r.xHighestCompleteStep[t]=o}else r.xSteps[t]=r.xHighestCompleteStep[t]=r.xVal[t]}function x(t,e,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i=[];for(n in t)t.hasOwnProperty(n)&&i.push([t[n],n]);for(i.length&&\"object\"==typeof i[0][0]?i.sort((function(t,e){return t[0][0]-e[0][0]})):i.sort((function(t,e){return t[0]-e[0]})),n=0;n<i.length;n++)v(i[n][1],i[n][0],this);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)b(n,this.xNumSteps[n],this)}x.prototype.getDistance=function(t){var e,r=[];for(e=0;e<this.xNumSteps.length-1;e++){var n=this.xNumSteps[e];if(n&&t/n%1!=0)throw new Error(\"noUiSlider (14.6.0): 'limit', 'margin' and 'padding' of \"+this.xPct[e]+\"% range must be divisible by step.\");r[e]=d(this.xVal,t,e)}return r},x.prototype.getAbsoluteDistance=function(t,e,r){var n,i=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[i+1];)i++;else t===this.xPct[this.xPct.length-1]&&(i=this.xPct.length-2);r||t!==this.xPct[i+1]||i++;var o=1,s=e[i],a=0,l=0,u=0,c=0;for(n=r?(t-this.xPct[i])/(this.xPct[i+1]-this.xPct[i]):(this.xPct[i+1]-t)/(this.xPct[i+1]-this.xPct[i]);s>0;)a=this.xPct[i+1+c]-this.xPct[i+c],e[i+c]*o+100-100*n>100?(l=a*n,o=(s-100*n)/e[i+c],n=1):(l=e[i+c]*a/100*o,o=0),r?(u-=l,this.xPct.length+c>=1&&c--):(u+=l,this.xPct.length-c>=1&&c++),s=e[i+c]*o;return t+u},x.prototype.toStepping=function(t){return t=m(this.xVal,this.xPct,t)},x.prototype.fromStepping=function(t){return function(t,e,r){if(r>=100)return t.slice(-1)[0];var n=h(r,e),i=t[n-1],o=t[n],s=e[n-1];return function(t,e){return e*(t[1]-t[0])/100+t[0]}([i,o],(r-s)*f(s,e[n]))}(this.xVal,this.xPct,t)},x.prototype.getStep=function(t){return t=g(this.xPct,this.xSteps,this.snap,t)},x.prototype.getDefaultStep=function(t,e,r){var n=h(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},x.prototype.getNearbySteps=function(t){var e=h(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e],step:this.xNumSteps[e],highestStep:this.xHighestCompleteStep[e]}}},x.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(l);return Math.max.apply(null,t)},x.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var S={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number},w={target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",touchArea:\"touch-area\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",connects:\"connects\",ltr:\"ltr\",rtl:\"rtl\",textDirectionLtr:\"txt-dir-ltr\",textDirectionRtl:\"txt-dir-rtl\",draggable:\"draggable\",drag:\"state-drag\",tap:\"state-tap\",active:\"active\",tooltip:\"tooltip\",pips:\"pips\",pipsHorizontal:\"pips-horizontal\",pipsVertical:\"pips-vertical\",marker:\"marker\",markerHorizontal:\"marker-horizontal\",markerVertical:\"marker-vertical\",markerNormal:\"marker-normal\",markerLarge:\"marker-large\",markerSub:\"marker-sub\",value:\"value\",valueHorizontal:\"value-horizontal\",valueVertical:\"value-vertical\",valueNormal:\"value-normal\",valueLarge:\"value-large\",valueSub:\"value-sub\"};function y(t){if(function(t){return\"object\"==typeof t&&\"function\"==typeof t.to&&\"function\"==typeof t.from}(t))return!0;throw new Error(\"noUiSlider (14.6.0): 'format' requires 'to' and 'from' methods.\")}function E(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'step' is not numeric.\");t.singleStep=e}function C(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'keyboardPageMultiplier' is not numeric.\");t.keyboardPageMultiplier=e}function P(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'keyboardDefaultStep' is not numeric.\");t.keyboardDefaultStep=e}function N(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (14.6.0): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (14.6.0): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (14.6.0): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new x(e,t.snap,t.singleStep)}function k(t,e){if(e=a(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (14.6.0): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function U(t,e){if(t.snap=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'snap' option must be a boolean.\")}function A(t,e){if(t.animate=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'animate' option must be a boolean.\")}function V(t,e){if(t.animationDuration=e,\"number\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'animationDuration' option must be a number.\")}function D(t,e){var r,n=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (14.6.0): 'connect' option doesn't match handle count.\");n=e}t.connect=n}function M(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (14.6.0): 'orientation' option is invalid.\")}}function O(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'margin' option must be numeric.\");0!==e&&(t.margin=t.spectrum.getDistance(e))}function L(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.0): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (14.6.0): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function z(t,e){var r;if(!i(e)&&!Array.isArray(e))throw new Error(\"noUiSlider (14.6.0): 'padding' option must be numeric or array of exactly 2 numbers.\");if(Array.isArray(e)&&2!==e.length&&!i(e[0])&&!i(e[1]))throw new Error(\"noUiSlider (14.6.0): 'padding' option must be numeric or array of exactly 2 numbers.\");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error(\"noUiSlider (14.6.0): 'padding' option must be a positive number(s).\");var n=e[0]+e[1],o=t.spectrum.xVal[0];if(n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-o)>1)throw new Error(\"noUiSlider (14.6.0): 'padding' option must not exceed 100% of the range.\")}}function H(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (14.6.0): 'direction' option was not recognized.\")}}function j(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'behaviour' must be a string containing options.\");var r=e.indexOf(\"tap\")>=0,n=e.indexOf(\"drag\")>=0,i=e.indexOf(\"fixed\")>=0,o=e.indexOf(\"snap\")>=0,s=e.indexOf(\"hover\")>=0,a=e.indexOf(\"unconstrained\")>=0;if(i){if(2!==t.handles)throw new Error(\"noUiSlider (14.6.0): 'fixed' behaviour must be used with 2 handles\");O(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error(\"noUiSlider (14.6.0): 'unconstrained' behaviour cannot be used with margin or limit\");t.events={tap:r||o,drag:n,fixed:i,snap:o,hover:s,unconstrained:a}}function F(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(!0)}else{if(t.tooltips=a(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (14.6.0): must pass a formatter for all handles.\");t.tooltips.forEach((function(t){if(\"boolean\"!=typeof t&&(\"object\"!=typeof t||\"function\"!=typeof t.to))throw new Error(\"noUiSlider (14.6.0): 'tooltips' must be passed a formatter or 'false'.\")}))}}function R(t,e){t.ariaFormat=e,y(e)}function T(t,e){t.format=e,y(e)}function B(t,e){if(t.keyboardSupport=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'keyboardSupport' option must be a boolean.\")}function q(t,e){t.documentElement=e}function X(t,e){if(\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (14.6.0): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function _(t,e){if(\"object\"!=typeof e)throw new Error(\"noUiSlider (14.6.0): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var r in t.cssClasses={},e)e.hasOwnProperty(r)&&(t.cssClasses[r]=t.cssPrefix+e[r]);else t.cssClasses=e}function Y(t){var e={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:S,format:S},n={step:{r:!1,t:E},keyboardPageMultiplier:{r:!1,t:C},keyboardDefaultStep:{r:!1,t:P},start:{r:!0,t:k},connect:{r:!0,t:D},direction:{r:!0,t:H},snap:{r:!1,t:U},animate:{r:!1,t:A},animationDuration:{r:!1,t:V},range:{r:!0,t:N},orientation:{r:!1,t:M},margin:{r:!1,t:O},limit:{r:!1,t:L},padding:{r:!1,t:z},behaviour:{r:!0,t:j},ariaFormat:{r:!1,t:R},format:{r:!1,t:T},tooltips:{r:!1,t:F},keyboardSupport:{r:!0,t:B},documentElement:{r:!1,t:q},cssPrefix:{r:!0,t:X},cssClasses:{r:!0,t:_}},i={connect:!1,direction:\"ltr\",behaviour:\"tap\",orientation:\"horizontal\",keyboardSupport:!0,cssPrefix:\"noUi-\",cssClasses:w,keyboardPageMultiplier:5,keyboardDefaultStep:10};t.format&&!t.ariaFormat&&(t.ariaFormat=t.format),Object.keys(n).forEach((function(o){if(!r(t[o])&&void 0===i[o]){if(n[o].r)throw new Error(\"noUiSlider (14.6.0): '\"+o+\"' is required.\");return!0}n[o].t(e,r(t[o])?t[o]:i[o])})),e.pips=t.pips;var o=document.createElement(\"div\"),s=void 0!==o.style.msTransform,a=void 0!==o.style.transform;return e.transformRule=a?\"transform\":s?\"msTransform\":\"webkitTransform\",e.style=[[\"left\",\"top\"],[\"right\",\"bottom\"]][e.dir][e.ort],e}function I(t,r,i){var l,f,d,h,m,g,v,b,x=window.navigator.pointerEnabled?{start:\"pointerdown\",move:\"pointermove\",end:\"pointerup\"}:window.navigator.msPointerEnabled?{start:\"MSPointerDown\",move:\"MSPointerMove\",end:\"MSPointerUp\"}:{start:\"mousedown touchstart\",move:\"mousemove touchmove\",end:\"mouseup touchend\"},S=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\")&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),w=t,y=r.spectrum,E=[],C=[],P=[],N=0,k={},U=t.ownerDocument,A=r.documentElement||U.documentElement,V=U.body,D=\"rtl\"===U.dir||1===r.ort?0:100;function M(t,e){var r=U.createElement(\"div\");return e&&u(r,e),t.appendChild(r),r}function O(t,e){var n=M(t,r.cssClasses.origin),i=M(n,r.cssClasses.handle);return M(i,r.cssClasses.touchArea),i.setAttribute(\"data-handle\",e),r.keyboardSupport&&(i.setAttribute(\"tabindex\",\"0\"),i.addEventListener(\"keydown\",(function(t){return function(t,e){if(H()||j(e))return!1;var n=[\"Left\",\"Right\"],i=[\"Down\",\"Up\"],o=[\"PageDown\",\"PageUp\"],s=[\"Home\",\"End\"];r.dir&&!r.ort?n.reverse():r.ort&&!r.dir&&(i.reverse(),o.reverse());var a,l=t.key.replace(\"Arrow\",\"\"),u=l===o[0],c=l===o[1],p=l===i[0]||l===n[0]||u,f=l===i[1]||l===n[1]||c,d=l===s[0],h=l===s[1];if(!(p||f||d||h))return!0;if(t.preventDefault(),f||p){var m=r.keyboardPageMultiplier,g=p?0:1,v=ft(e)[g];if(null===v)return!1;!1===v&&(v=y.getDefaultStep(C[e],p,r.keyboardDefaultStep)),(c||u)&&(v*=m),v=Math.max(v,1e-7),v*=p?-1:1,a=E[e]+v}else a=h?r.spectrum.xVal[r.spectrum.xVal.length-1]:r.spectrum.xVal[0];return at(e,y.toStepping(a),!0,!0),et(\"slide\",e),et(\"update\",e),et(\"change\",e),et(\"set\",e),!1}(t,e)}))),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",r.ort?\"vertical\":\"horizontal\"),0===e?u(i,r.cssClasses.handleLower):e===r.handles-1&&u(i,r.cssClasses.handleUpper),n}function L(t,e){return!!e&&M(t,r.cssClasses.connect)}function z(t,e){return!!r.tooltips[e]&&M(t.firstChild,r.cssClasses.tooltip)}function H(){return w.hasAttribute(\"disabled\")}function j(t){return f[t].hasAttribute(\"disabled\")}function F(){m&&(tt(\"update.tooltips\"),m.forEach((function(t){t&&e(t)})),m=null)}function R(){F(),m=f.map(z),Z(\"update.tooltips\",(function(t,e,n){if(m[e]){var i=t[e];!0!==r.tooltips[e]&&(i=r.tooltips[e].to(n[e])),m[e].innerHTML=i}}))}function T(t,e,n){var i=U.createElement(\"div\"),o=[];o[0]=r.cssClasses.valueNormal,o[1]=r.cssClasses.valueLarge,o[2]=r.cssClasses.valueSub;var s=[];s[0]=r.cssClasses.markerNormal,s[1]=r.cssClasses.markerLarge,s[2]=r.cssClasses.markerSub;var a=[r.cssClasses.valueHorizontal,r.cssClasses.valueVertical],l=[r.cssClasses.markerHorizontal,r.cssClasses.markerVertical];function c(t,e){var n=e===r.cssClasses.value,i=n?o:s;return e+\" \"+(n?a:l)[r.ort]+\" \"+i[t]}return u(i,r.cssClasses.pips),u(i,0===r.ort?r.cssClasses.pipsHorizontal:r.cssClasses.pipsVertical),Object.keys(t).forEach((function(o){!function(t,o,s){if(-1!==(s=e?e(o,s):s)){var a=M(i,!1);a.className=c(s,r.cssClasses.marker),a.style[r.style]=t+\"%\",s>0&&((a=M(i,!1)).className=c(s,r.cssClasses.value),a.setAttribute(\"data-value\",o),a.style[r.style]=t+\"%\",a.innerHTML=n.to(o))}}(o,t[o][0],t[o][1])})),i}function B(){h&&(e(h),h=null)}function q(t){B();var e=t.mode,r=t.density||1,n=t.filter||!1,i=function(t,e,r){if(\"range\"===t||\"steps\"===t)return y.xVal;if(\"count\"===t){if(e<2)throw new Error(\"noUiSlider (14.6.0): 'values' (>= 2) required for mode 'count'.\");var n=e-1,i=100/n;for(e=[];n--;)e[n]=n*i;e.push(100),t=\"positions\"}return\"positions\"===t?e.map((function(t){return y.fromStepping(r?y.getStep(t):t)})):\"values\"===t?r?e.map((function(t){return y.fromStepping(y.getStep(y.toStepping(t)))})):e:void 0}(e,t.values||!1,t.stepped||!1),o=function(t,e,r){var n,i={},o=y.xVal[0],s=y.xVal[y.xVal.length-1],a=!1,l=!1,u=0;return n=r.slice().sort((function(t,e){return t-e})),(r=n.filter((function(t){return!this[t]&&(this[t]=!0)}),{}))[0]!==o&&(r.unshift(o),a=!0),r[r.length-1]!==s&&(r.push(s),l=!0),r.forEach((function(n,o){var s,c,p,f,d,h,m,g,v,b,x=n,S=r[o+1],w=\"steps\"===e;if(w&&(s=y.xNumSteps[o]),s||(s=S-x),!1!==x&&void 0!==S)for(s=Math.max(s,1e-7),c=x;c<=S;c=(c+s).toFixed(7)/1){for(g=(d=(f=y.toStepping(c))-u)/t,b=d/(v=Math.round(g)),p=1;p<=v;p+=1)i[(h=u+p*b).toFixed(5)]=[y.fromStepping(h),0];m=r.indexOf(c)>-1?1:w?2:0,!o&&a&&c!==S&&(m=0),c===S&&l||(i[f.toFixed(5)]=[c,m]),u=f}})),i}(r,e,i),s=t.format||{to:Math.round};return h=w.appendChild(T(o,n,s))}function X(){var t=l.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][r.ort];return 0===r.ort?t.width||l[e]:t.height||l[e]}function _(t,e,n,i){var o=function(o){return!!(o=function(t,e,r){var n,i,o=0===t.type.indexOf(\"touch\"),s=0===t.type.indexOf(\"mouse\"),a=0===t.type.indexOf(\"pointer\");if(0===t.type.indexOf(\"MSPointer\")&&(a=!0),o){var l=function(t){return t.target===r||r.contains(t.target)||t.target.shadowRoot&&t.target.shadowRoot.contains(r)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(u.length>1)return!1;n=u[0].pageX,i=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;n=c.pageX,i=c.pageY}}return e=e||p(U),(s||a)&&(n=t.clientX+e.x,i=t.clientY+e.y),t.pageOffset=e,t.points=[n,i],t.cursor=s||a,t}(o,i.pageOffset,i.target||e))&&!(H()&&!i.doNotReject)&&(s=w,a=r.cssClasses.tap,!((s.classList?s.classList.contains(a):new RegExp(\"\\\\b\"+a+\"\\\\b\").test(s.className))&&!i.doNotReject)&&!(t===x.start&&void 0!==o.buttons&&o.buttons>1)&&(!i.hover||!o.buttons)&&(S||o.preventDefault(),o.calcPoint=o.points[r.ort],void n(o,i)));var s,a},s=[];return t.split(\" \").forEach((function(t){e.addEventListener(t,o,!!S&&{passive:!0}),s.push([t,o])})),s}function I(t){var e,n,i,o,a,u,c=100*(t-(e=l,n=r.ort,i=e.getBoundingClientRect(),o=e.ownerDocument,a=o.documentElement,u=p(o),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(u.x=0),n?i.top+u.y-a.clientTop:i.left+u.x-a.clientLeft))/X();return c=s(c),r.dir?100-c:c}function W(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&G(t,e)}function $(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return G(t,e);var n=(r.dir?-1:1)*(t.calcPoint-e.startCalcPoint);it(n>0,100*n/e.baseSize,e.locations,e.handleNumbers)}function G(t,e){e.handle&&(c(e.handle,r.cssClasses.active),N-=1),e.listeners.forEach((function(t){A.removeEventListener(t[0],t[1])})),0===N&&(c(w,r.cssClasses.drag),st(),t.cursor&&(V.style.cursor=\"\",V.removeEventListener(\"selectstart\",n))),e.handleNumbers.forEach((function(t){et(\"change\",t),et(\"set\",t),et(\"end\",t)}))}function J(t,e){if(e.handleNumbers.some(j))return!1;var i;1===e.handleNumbers.length&&(i=f[e.handleNumbers[0]].children[0],N+=1,u(i,r.cssClasses.active)),t.stopPropagation();var o=[],s=_(x.move,A,$,{target:t.target,handle:i,listeners:o,startCalcPoint:t.calcPoint,baseSize:X(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:C.slice()}),a=_(x.end,A,G,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers}),l=_(\"mouseout\",A,W,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers});o.push.apply(o,s.concat(a,l)),t.cursor&&(V.style.cursor=getComputedStyle(t.target).cursor,f.length>1&&u(w,r.cssClasses.drag),V.addEventListener(\"selectstart\",n,!1)),e.handleNumbers.forEach((function(t){et(\"start\",t)}))}function K(t){if(!t.buttons&&!t.touches)return!1;t.stopPropagation();var e=I(t.calcPoint),n=function(t){var e=100,r=!1;return f.forEach((function(n,i){if(!j(i)){var o=C[i],s=Math.abs(o-t);(s<e||s<=e&&t>o||100===s&&100===e)&&(r=i,e=s)}})),r}(e);if(!1===n)return!1;r.events.snap||o(w,r.cssClasses.tap,r.animationDuration),at(n,e,!0,!0),st(),et(\"slide\",n,!0),et(\"update\",n,!0),et(\"change\",n,!0),et(\"set\",n,!0),r.events.snap&&J(t,{handleNumbers:[n]})}function Q(t){var e=I(t.calcPoint),r=y.getStep(e),n=y.fromStepping(r);Object.keys(k).forEach((function(t){\"hover\"===t.split(\".\")[0]&&k[t].forEach((function(t){t.call(g,n)}))}))}function Z(t,e){k[t]=k[t]||[],k[t].push(e),\"update\"===t.split(\".\")[0]&&f.forEach((function(t,e){et(\"update\",e)}))}function tt(t){var e=t&&t.split(\".\")[0],r=e&&t.substring(e.length);Object.keys(k).forEach((function(t){var n=t.split(\".\")[0],i=t.substring(n.length);e&&e!==n||r&&r!==i||delete k[t]}))}function et(t,e,n){Object.keys(k).forEach((function(i){var o=i.split(\".\")[0];t===o&&k[i].forEach((function(t){t.call(g,E.map(r.format.to),e,E.slice(),n||!1,C.slice(),g)}))}))}function rt(t,e,n,i,o,a){var l;return f.length>1&&!r.events.unconstrained&&(i&&e>0&&(l=y.getAbsoluteDistance(t[e-1],r.margin,0),n=Math.max(n,l)),o&&e<f.length-1&&(l=y.getAbsoluteDistance(t[e+1],r.margin,1),n=Math.min(n,l))),f.length>1&&r.limit&&(i&&e>0&&(l=y.getAbsoluteDistance(t[e-1],r.limit,0),n=Math.min(n,l)),o&&e<f.length-1&&(l=y.getAbsoluteDistance(t[e+1],r.limit,1),n=Math.max(n,l))),r.padding&&(0===e&&(l=y.getAbsoluteDistance(0,r.padding[0],0),n=Math.max(n,l)),e===f.length-1&&(l=y.getAbsoluteDistance(100,r.padding[1],1),n=Math.min(n,l))),!((n=s(n=y.getStep(n)))===t[e]&&!a)&&n}function nt(t,e){var n=r.ort;return(n?e:t)+\", \"+(n?t:e)}function it(t,e,r,n){var i=r.slice(),o=[!t,t],s=[t,!t];n=n.slice(),t&&n.reverse(),n.length>1?n.forEach((function(t,r){var n=rt(i,t,i[t]+e,o[r],s[r],!1);!1===n?e=0:(e=n-i[t],i[t]=n)})):o=s=[!0];var a=!1;n.forEach((function(t,n){a=at(t,r[t]+e,o[n],s[n])||a})),a&&n.forEach((function(t){et(\"update\",t),et(\"slide\",t)}))}function ot(t,e){return r.dir?100-t-e:t}function st(){P.forEach((function(t){var e=C[t]>50?-1:1,r=3+(f.length+e*t);f[t].style.zIndex=r}))}function at(t,e,n,i){return!1!==(e=rt(C,t,e,n,i,!1))&&(function(t,e){C[t]=e,E[t]=y.fromStepping(e);var n=\"translate(\"+nt(10*(ot(e,0)-D)+\"%\",\"0\")+\")\";f[t].style[r.transformRule]=n,lt(t),lt(t+1)}(t,e),!0)}function lt(t){if(d[t]){var e=0,n=100;0!==t&&(e=C[t-1]),t!==d.length-1&&(n=C[t]);var i=n-e,o=\"translate(\"+nt(ot(e,i)+\"%\",\"0\")+\")\",s=\"scale(\"+nt(i/100,\"1\")+\")\";d[t].style[r.transformRule]=o+\" \"+s}}function ut(t,e){return null===t||!1===t||void 0===t?C[e]:(\"number\"==typeof t&&(t=String(t)),t=r.format.from(t),!1===(t=y.toStepping(t))||isNaN(t)?C[e]:t)}function ct(t,e){var n=a(t),i=void 0===C[0];e=void 0===e||!!e,r.animate&&!i&&o(w,r.cssClasses.tap,r.animationDuration),P.forEach((function(t){at(t,ut(n[t],t),!0,!1)}));for(var s=1===P.length?0:1;s<P.length;++s)P.forEach((function(t){at(t,C[t],!0,!0)}));st(),P.forEach((function(t){et(\"update\",t),null!==n[t]&&e&&et(\"set\",t)}))}function pt(){var t=E.map(r.format.to);return 1===t.length?t[0]:t}function ft(t){var e=C[t],n=y.getNearbySteps(e),i=E[t],o=n.thisStep.step,s=null;if(r.snap)return[i-n.stepBefore.startValue||null,n.stepAfter.startValue-i||null];!1!==o&&i+o>n.stepAfter.startValue&&(o=n.stepAfter.startValue-i),s=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===e?o=null:0===e&&(s=null);var a=y.countStepDecimals();return null!==o&&!1!==o&&(o=Number(o.toFixed(a))),null!==s&&!1!==s&&(s=Number(s.toFixed(a))),[s,o]}return u(v=w,r.cssClasses.target),0===r.dir?u(v,r.cssClasses.ltr):u(v,r.cssClasses.rtl),0===r.ort?u(v,r.cssClasses.horizontal):u(v,r.cssClasses.vertical),u(v,\"rtl\"===getComputedStyle(v).direction?r.cssClasses.textDirectionRtl:r.cssClasses.textDirectionLtr),l=M(v,r.cssClasses.base),function(t,e){var n=M(e,r.cssClasses.connects);f=[],(d=[]).push(L(n,t[0]));for(var i=0;i<r.handles;i++)f.push(O(e,i)),P[i]=i,d.push(L(n,t[i+1]))}(r.connect,l),(b=r.events).fixed||f.forEach((function(t,e){_(x.start,t.children[0],J,{handleNumbers:[e]})})),b.tap&&_(x.start,l,K,{}),b.hover&&_(x.move,l,Q,{hover:!0}),b.drag&&d.forEach((function(t,e){if(!1!==t&&0!==e&&e!==d.length-1){var n=f[e-1],i=f[e],o=[t];u(t,r.cssClasses.draggable),b.fixed&&(o.push(n.children[0]),o.push(i.children[0])),o.forEach((function(t){_(x.start,t,J,{handles:[n,i],handleNumbers:[e-1,e]})}))}})),ct(r.start),r.pips&&q(r.pips),r.tooltips&&R(),Z(\"update\",(function(t,e,n,i,o){P.forEach((function(t){var e=f[t],i=rt(C,t,0,!0,!0,!0),s=rt(C,t,100,!0,!0,!0),a=o[t],l=r.ariaFormat.to(n[t]);i=y.fromStepping(i).toFixed(1),s=y.fromStepping(s).toFixed(1),a=y.fromStepping(a).toFixed(1),e.children[0].setAttribute(\"aria-valuemin\",i),e.children[0].setAttribute(\"aria-valuemax\",s),e.children[0].setAttribute(\"aria-valuenow\",a),e.children[0].setAttribute(\"aria-valuetext\",l)}))})),g={destroy:function(){for(var t in r.cssClasses)r.cssClasses.hasOwnProperty(t)&&c(w,r.cssClasses[t]);for(;w.firstChild;)w.removeChild(w.firstChild);delete w.noUiSlider},steps:function(){return P.map(ft)},on:Z,off:tt,get:pt,set:ct,setHandle:function(t,e,r){if(!((t=Number(t))>=0&&t<P.length))throw new Error(\"noUiSlider (14.6.0): invalid handle number, got: \"+t);at(t,ut(e,t),!0,!0),et(\"update\",t),r&&et(\"set\",t)},reset:function(t){ct(r.start,t)},__moveHandles:function(t,e,r){it(t,e,C,r)},options:i,updateOptions:function(t,e){var n=pt(),o=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\",\"pips\",\"tooltips\"];o.forEach((function(e){void 0!==t[e]&&(i[e]=t[e])}));var s=Y(i);o.forEach((function(e){void 0!==t[e]&&(r[e]=s[e])})),y=s.spectrum,r.margin=s.margin,r.limit=s.limit,r.padding=s.padding,r.pips?q(r.pips):B(),r.tooltips?R():F(),C=[],ct(t.start||n,e)},target:w,removePips:B,removeTooltips:F,getTooltips:function(){return m},getOrigins:function(){return f},pips:q}}return{__spectrum:x,version:t,cssClasses:w,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (14.6.0): create requires a single element, got: \"+t);if(t.noUiSlider)throw new Error(\"noUiSlider (14.6.0): Slider was already initialized.\");var r=I(t,Y(e),e);return t.noUiSlider=r,r}}},\"function\"==typeof define&&define.amd?define([],n):\"object\"==typeof r?e.exports=n():window.noUiSlider=n()},\n      425: function _(e,l,i){Object.defineProperty(i,\"__esModule\",{value:!0}),i.bk_slider_value=\"bk-slider-value\",i.bk_slider_title=\"bk-slider-title\"},\n      426: function _(n,o,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default=\"\\n.bk-root {\\n  /*! nouislider - 14.6.0 - 6/27/2020 */\\n  /* Functional styling;\\n * These styles are required for noUiSlider to function.\\n * You don't need to change these rules to apply your design.\\n */\\n  /* Wrapper for all connect elements.\\n */\\n  /* Offset direction\\n */\\n  /* Give origins 0 height/width so they don't interfere with clicking the\\n * connect elements.\\n */\\n  /* Slider size and handle placement;\\n */\\n  /* Styling;\\n * Giving the connect element a border radius causes issues with using transform: scale\\n */\\n  /* Handles and cursors;\\n */\\n  /* Handle stripes;\\n */\\n  /* Disabled state;\\n */\\n  /* Base;\\n *\\n */\\n  /* Values;\\n *\\n */\\n  /* Markings;\\n *\\n */\\n  /* Horizontal layout;\\n *\\n */\\n  /* Vertical layout;\\n *\\n */\\n}\\n.bk-root .noUi-target,\\n.bk-root .noUi-target * {\\n  -webkit-touch-callout: none;\\n  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n  -webkit-user-select: none;\\n  -ms-touch-action: none;\\n  touch-action: none;\\n  -ms-user-select: none;\\n  -moz-user-select: none;\\n  user-select: none;\\n  -moz-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.bk-root .noUi-target {\\n  position: relative;\\n}\\n.bk-root .noUi-base,\\n.bk-root .noUi-connects {\\n  width: 100%;\\n  height: 100%;\\n  position: relative;\\n  z-index: 1;\\n}\\n.bk-root .noUi-connects {\\n  overflow: hidden;\\n  z-index: 0;\\n}\\n.bk-root .noUi-connect,\\n.bk-root .noUi-origin {\\n  will-change: transform;\\n  position: absolute;\\n  z-index: 1;\\n  top: 0;\\n  right: 0;\\n  -ms-transform-origin: 0 0;\\n  -webkit-transform-origin: 0 0;\\n  -webkit-transform-style: preserve-3d;\\n  transform-origin: 0 0;\\n  transform-style: flat;\\n}\\n.bk-root .noUi-connect {\\n  height: 100%;\\n  width: 100%;\\n}\\n.bk-root .noUi-origin {\\n  height: 10%;\\n  width: 10%;\\n}\\n.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {\\n  left: 0;\\n  right: auto;\\n}\\n.bk-root .noUi-vertical .noUi-origin {\\n  width: 0;\\n}\\n.bk-root .noUi-horizontal .noUi-origin {\\n  height: 0;\\n}\\n.bk-root .noUi-handle {\\n  -webkit-backface-visibility: hidden;\\n  backface-visibility: hidden;\\n  position: absolute;\\n}\\n.bk-root .noUi-touch-area {\\n  height: 100%;\\n  width: 100%;\\n}\\n.bk-root .noUi-state-tap .noUi-connect,\\n.bk-root .noUi-state-tap .noUi-origin {\\n  -webkit-transition: transform 0.3s;\\n  transition: transform 0.3s;\\n}\\n.bk-root .noUi-state-drag * {\\n  cursor: inherit !important;\\n}\\n.bk-root .noUi-horizontal {\\n  height: 18px;\\n}\\n.bk-root .noUi-horizontal .noUi-handle {\\n  width: 34px;\\n  height: 28px;\\n  right: -17px;\\n  top: -6px;\\n}\\n.bk-root .noUi-vertical {\\n  width: 18px;\\n}\\n.bk-root .noUi-vertical .noUi-handle {\\n  width: 28px;\\n  height: 34px;\\n  right: -6px;\\n  top: -17px;\\n}\\n.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {\\n  left: -17px;\\n  right: auto;\\n}\\n.bk-root .noUi-target {\\n  background: #FAFAFA;\\n  border-radius: 4px;\\n  border: 1px solid #D3D3D3;\\n  box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;\\n}\\n.bk-root .noUi-connects {\\n  border-radius: 3px;\\n}\\n.bk-root .noUi-connect {\\n  background: #3FB8AF;\\n}\\n.bk-root .noUi-draggable {\\n  cursor: ew-resize;\\n}\\n.bk-root .noUi-vertical .noUi-draggable {\\n  cursor: ns-resize;\\n}\\n.bk-root .noUi-handle {\\n  border: 1px solid #D9D9D9;\\n  border-radius: 3px;\\n  background: #FFF;\\n  cursor: default;\\n  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;\\n}\\n.bk-root .noUi-active {\\n  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;\\n}\\n.bk-root .noUi-handle:before,\\n.bk-root .noUi-handle:after {\\n  content: \\\"\\\";\\n  display: block;\\n  position: absolute;\\n  height: 14px;\\n  width: 1px;\\n  background: #E8E7E6;\\n  left: 14px;\\n  top: 6px;\\n}\\n.bk-root .noUi-handle:after {\\n  left: 17px;\\n}\\n.bk-root .noUi-vertical .noUi-handle:before,\\n.bk-root .noUi-vertical .noUi-handle:after {\\n  width: 14px;\\n  height: 1px;\\n  left: 6px;\\n  top: 14px;\\n}\\n.bk-root .noUi-vertical .noUi-handle:after {\\n  top: 17px;\\n}\\n.bk-root [disabled] .noUi-connect {\\n  background: #B8B8B8;\\n}\\n.bk-root [disabled].noUi-target,\\n.bk-root [disabled].noUi-handle,\\n.bk-root [disabled] .noUi-handle {\\n  cursor: not-allowed;\\n}\\n.bk-root .noUi-pips,\\n.bk-root .noUi-pips * {\\n  -moz-box-sizing: border-box;\\n  box-sizing: border-box;\\n}\\n.bk-root .noUi-pips {\\n  position: absolute;\\n  color: #999;\\n}\\n.bk-root .noUi-value {\\n  position: absolute;\\n  white-space: nowrap;\\n  text-align: center;\\n}\\n.bk-root .noUi-value-sub {\\n  color: #ccc;\\n  font-size: 10px;\\n}\\n.bk-root .noUi-marker {\\n  position: absolute;\\n  background: #CCC;\\n}\\n.bk-root .noUi-marker-sub {\\n  background: #AAA;\\n}\\n.bk-root .noUi-marker-large {\\n  background: #AAA;\\n}\\n.bk-root .noUi-pips-horizontal {\\n  padding: 10px 0;\\n  height: 80px;\\n  top: 100%;\\n  left: 0;\\n  width: 100%;\\n}\\n.bk-root .noUi-value-horizontal {\\n  -webkit-transform: translate(-50%, 50%);\\n  transform: translate(-50%, 50%);\\n}\\n.bk-root .noUi-rtl .noUi-value-horizontal {\\n  -webkit-transform: translate(50%, 50%);\\n  transform: translate(50%, 50%);\\n}\\n.bk-root .noUi-marker-horizontal.noUi-marker {\\n  margin-left: -1px;\\n  width: 2px;\\n  height: 5px;\\n}\\n.bk-root .noUi-marker-horizontal.noUi-marker-sub {\\n  height: 10px;\\n}\\n.bk-root .noUi-marker-horizontal.noUi-marker-large {\\n  height: 15px;\\n}\\n.bk-root .noUi-pips-vertical {\\n  padding: 0 10px;\\n  height: 100%;\\n  top: 0;\\n  left: 100%;\\n}\\n.bk-root .noUi-value-vertical {\\n  -webkit-transform: translate(0, -50%);\\n  transform: translate(0, -50%);\\n  padding-left: 25px;\\n}\\n.bk-root .noUi-rtl .noUi-value-vertical {\\n  -webkit-transform: translate(0, 50%);\\n  transform: translate(0, 50%);\\n}\\n.bk-root .noUi-marker-vertical.noUi-marker {\\n  width: 5px;\\n  height: 2px;\\n  margin-top: -1px;\\n}\\n.bk-root .noUi-marker-vertical.noUi-marker-sub {\\n  width: 10px;\\n}\\n.bk-root .noUi-marker-vertical.noUi-marker-large {\\n  width: 15px;\\n}\\n.bk-root .noUi-tooltip {\\n  display: block;\\n  position: absolute;\\n  border: 1px solid #D9D9D9;\\n  border-radius: 3px;\\n  background: #fff;\\n  color: #000;\\n  padding: 5px;\\n  text-align: center;\\n  white-space: nowrap;\\n}\\n.bk-root .noUi-horizontal .noUi-tooltip {\\n  -webkit-transform: translate(-50%, 0);\\n  transform: translate(-50%, 0);\\n  left: 50%;\\n  bottom: 120%;\\n}\\n.bk-root .noUi-vertical .noUi-tooltip {\\n  -webkit-transform: translate(0, -50%);\\n  transform: translate(0, -50%);\\n  top: 50%;\\n  right: 120%;\\n}\\n.bk-root .noUi-horizontal .noUi-origin > .noUi-tooltip {\\n  -webkit-transform: translate(50%, 0);\\n  transform: translate(50%, 0);\\n  left: auto;\\n  bottom: 10px;\\n}\\n.bk-root .noUi-vertical .noUi-origin > .noUi-tooltip {\\n  -webkit-transform: translate(0, -18px);\\n  transform: translate(0, -18px);\\n  top: auto;\\n  right: 28px;\\n}\\n.bk-root .noUi-handle {\\n  cursor: grab;\\n  cursor: -webkit-grab;\\n}\\n.bk-root .noUi-handle.noUi-active {\\n  cursor: grabbing;\\n  cursor: -webkit-grabbing;\\n}\\n.bk-root .noUi-handle:after,\\n.bk-root .noUi-handle:before {\\n  display: none;\\n}\\n.bk-root .noUi-tooltip {\\n  display: none;\\n  white-space: nowrap;\\n}\\n.bk-root .noUi-handle:hover .noUi-tooltip {\\n  display: block;\\n}\\n.bk-root .noUi-horizontal {\\n  width: 100%;\\n  height: 10px;\\n}\\n.bk-root .noUi-vertical {\\n  width: 10px;\\n  height: 100%;\\n}\\n.bk-root .noUi-horizontal .noUi-handle {\\n  width: 14px;\\n  height: 18px;\\n  right: -7px;\\n  top: -5px;\\n}\\n.bk-root .noUi-vertical .noUi-handle {\\n  width: 18px;\\n  height: 14px;\\n  right: -5px;\\n  top: -7px;\\n}\\n.bk-root .noUi-target.noUi-horizontal {\\n  margin: 5px 0px;\\n}\\n.bk-root .noUi-target.noUi-vertical {\\n  margin: 0px 5px;\\n}\\n\"},\n      427: function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default=\"\\n.bk-root .bk-slider-title {\\n  white-space: nowrap;\\n}\\n.bk-root .bk-slider-value {\\n  font-weight: 600;\\n}\\n\"},\n      428: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1).__importDefault(e(186)),a=e(423);class d extends a.AbstractSliderView{}i.DateSliderView=d,d.__name__=\"DateSliderView\";class s extends a.AbstractSlider{constructor(e){super(e),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_DateSlider(){this.prototype.default_view=d,this.override({format:\"%d %b %Y\"})}_formatter(e,t){return r.default(e,t)}}i.DateSlider=s,s.__name__=\"DateSlider\",s.init_DateSlider()},\n      429: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=e(1),_=e(430),n=r.__importStar(e(18));class s extends _.MarkupView{render(){super.render(),this.model.render_as_text?this.markup_el.textContent=this.model.text:this.markup_el.innerHTML=this.model.text}}i.DivView=s,s.__name__=\"DivView\";class a extends _.Markup{constructor(e){super(e)}static init_Div(){this.prototype.default_view=s,this.define({render_as_text:[n.Boolean,!1]})}}i.Div=a,a.__name__=\"Div\",a.init_Div()},\n      430: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),a=e(217),n=e(72),l=i.__importStar(e(18)),r=e(472),_=e(431),c=i.__importDefault(e(432));class u extends r.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>{this.layout.invalidate_cache(),this.render(),this.root.compute_layout()})}styles(){return[...super.styles(),c.default]}_update_layout(){this.layout=new a.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render();const e=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.markup_el=n.div({class:_.bk_clearfix,style:e}),this.el.appendChild(this.markup_el)}}s.MarkupView=u,u.__name__=\"MarkupView\";class o extends r.Widget{constructor(e){super(e)}static init_Markup(){this.define({text:[l.String,\"\"],style:[l.Any,{}]})}}s.Markup=o,o.__name__=\"Markup\",o.init_Markup()},\n      431: function _(e,c,f){Object.defineProperty(f,\"__esModule\",{value:!0}),f.bk_clearfix=\"bk-clearfix\"},\n      432: function _(e,n,t){Object.defineProperty(t,\"__esModule\",{value:!0});t.default='\\n.bk-root .bk-clearfix:before,\\n.bk-root .bk-clearfix:after {\\n  content: \"\";\\n  display: table;\\n}\\n.bk-root .bk-clearfix:after {\\n  clear: both;\\n}\\n'},\n      433: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(404),o=e(313),_=e(72),d=n.__importStar(e(18)),l=e(8),r=e(173),u=e(281),c=e(282),h=n.__importDefault(e(284));class p extends s.AbstractButtonView{constructor(){super(...arguments),this._open=!1}styles(){return[...super.styles(),h.default]}render(){super.render();const e=_.div({class:[c.bk_caret,r.bk_down]});if(this.model.is_split){const t=this._render_button(e);t.classList.add(u.bk_dropdown_toggle),t.addEventListener(\"click\",()=>this._toggle_menu()),this.group_el.appendChild(t)}else this.button_el.appendChild(e);const t=this.model.menu.map((e,t)=>{if(null==e)return _.div({class:c.bk_divider});{const i=l.isString(e)?e:e[0],n=_.div({},i);return n.addEventListener(\"click\",()=>this._item_click(t)),n}});this.menu=_.div({class:[c.bk_menu,r.bk_below]},t),this.el.appendChild(this.menu),_.undisplay(this.menu)}_show_menu(){if(!this._open){this._open=!0,_.display(this.menu);const e=t=>{const{target:i}=t;i instanceof HTMLElement&&!this.el.contains(i)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,_.undisplay(this.menu))}_toggle_menu(){this._open?this._hide_menu():this._show_menu()}click(){this.model.is_split?(this._hide_menu(),this.model.trigger_event(new o.ButtonClick),super.click()):this._toggle_menu()}_item_click(e){this._hide_menu();const t=this.model.menu[e];if(null!=t){const i=l.isString(t)?t:t[1];l.isString(i)?this.model.trigger_event(new o.MenuItemClick(i)):i.execute(this.model,{index:e})}}}i.DropdownView=p,p.__name__=\"DropdownView\";class m extends s.AbstractButton{constructor(e){super(e)}static init_Dropdown(){this.prototype.default_view=p,this.define({split:[d.Boolean,!1],menu:[d.Array,[]]}),this.override({label:\"Dropdown\"})}get is_split(){return this.split}}i.Dropdown=m,m.__name__=\"Dropdown\",m.init_Dropdown()},\n      434: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=e(1).__importStar(e(18)),s=e(472);class n extends s.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render()),this.connect(this.model.properties.width.change,()=>this.render())}render(){null==this.dialogEl&&(this.dialogEl=document.createElement(\"input\"),this.dialogEl.type=\"file\",this.dialogEl.multiple=this.model.multiple,this.dialogEl.onchange=()=>{const{files:e}=this.dialogEl;null!=e&&this.load_files(e)},this.el.appendChild(this.dialogEl)),null!=this.model.accept&&\"\"!=this.model.accept&&(this.dialogEl.accept=this.model.accept),this.dialogEl.style.width=\"{this.model.width}px\",this.dialogEl.disabled=this.model.disabled}async load_files(e){const t=[],i=[],l=[];let s;for(s=0;s<e.length;s++){i.push(e[s].name);const n=await this.readfile(e[s]),[,o,,a]=n.split(/[:;,]/,4);t.push(a),l.push(o)}this.model.multiple?(this.model.filename=i,this.model.mime_type=l,this.model.value=t):(this.model.filename=i[0],this.model.mime_type=l[0],this.model.value=t[0])}readfile(e){return new Promise((t,i)=>{const l=new FileReader;l.onload=()=>{var s;const{result:n}=l;null!=n?t(n):i(null!==(s=l.error)&&void 0!==s?s:new Error(`unable to read '${e.name}'`))},l.readAsDataURL(e)})}}i.FileInputView=n,n.__name__=\"FileInputView\";class o extends s.Widget{constructor(e){super(e)}static init_FileInput(){this.prototype.default_view=n,this.define({value:[l.Any,\"\"],mime_type:[l.Any,\"\"],filename:[l.Any,\"\"],accept:[l.String,\"\"],multiple:[l.Boolean,!1]})}}i.FileInput=o,o.__name__=\"FileInput\",o.init_FileInput()},\n      435: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(1),n=e(72),l=e(8),o=i.__importStar(e(18)),c=e(410),r=e(412);class h extends c.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,()=>this.render_selection()),this.connect(this.model.properties.options.change,()=>this.render()),this.connect(this.model.properties.name.change,()=>this.render()),this.connect(this.model.properties.title.change,()=>this.render()),this.connect(this.model.properties.size.change,()=>this.render()),this.connect(this.model.properties.disabled.change,()=>this.render())}render(){super.render();const e=this.model.options.map(e=>{let t,s;return l.isString(e)?t=s=e:[t,s]=e,n.option({value:t},s)});this.select_el=n.select({multiple:!0,class:r.bk_input,name:this.model.name,disabled:this.model.disabled},e),this.select_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.select_el),this.render_selection()}render_selection(){const e=new Set(this.model.value);for(const t of this.el.querySelectorAll(\"option\"))t.selected=e.has(t.value);this.select_el.size=this.model.size}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.select_el.focus()}}s.MultiSelectView=h,h.__name__=\"MultiSelectView\";class d extends c.InputWidget{constructor(e){super(e)}static init_MultiSelect(){this.prototype.default_view=h,this.define({value:[o.Array,[]],options:[o.Array,[]],size:[o.Number,4]})}}s.MultiSelect=d,d.__name__=\"MultiSelect\",d.init_MultiSelect()},\n      436: function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const t=a(430),p=a(72);class s extends t.MarkupView{render(){super.render();const a=p.p({style:{margin:0}},this.model.text);this.markup_el.appendChild(a)}}r.ParagraphView=s,s.__name__=\"ParagraphView\";class i extends t.Markup{constructor(a){super(a)}static init_Paragraph(){this.prototype.default_view=s}}r.Paragraph=i,i.__name__=\"Paragraph\",i.init_Paragraph()},\n      437: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const n=e(409);class r extends n.TextInputView{render(){super.render(),this.input_el.type=\"password\"}}s.PasswordInputView=r,r.__name__=\"PasswordInputView\";class p extends n.TextInput{constructor(e){super(e)}static init_PasswordInput(){this.prototype.default_view=r}}s.PasswordInput=p,p.__name__=\"PasswordInput\",p.init_PasswordInput()},\n      438: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=e(1),s=l.__importDefault(e(439)),o=e(72),n=e(8),h=e(217),a=l.__importStar(e(18)),c=e(412),u=l.__importDefault(e(440)),d=e(410);class _ extends d.InputWidgetView{constructor(){super(...arguments),this._last_height=null}connect_signals(){super.connect_signals(),this.connect(this.model.properties.disabled.change,()=>this.set_disabled());const{value:e,max_items:t,option_limit:i,delete_button:l,placeholder:s,options:o,name:n,title:h}=this.model.properties;this.on_change([e,t,i,l,s,o,n,h],()=>this.render())}styles(){return[...super.styles(),u.default]}_update_layout(){this.layout=new h.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render(),this.select_el=o.select({multiple:!0,class:c.bk_input,name:this.model.name,disabled:this.model.disabled}),this.group_el.appendChild(this.select_el);const e=new Set(this.model.value),t=this.model.options.map(t=>{let i,l;return n.isString(t)?i=l=t:[i,l]=t,{value:i,label:l,selected:e.has(i)}}),i=this.model.solid?\"solid\":\"light\",l=\"choices__item \"+i,h=\"choices__button \"+i,a={choices:t,duplicateItemsAllowed:!1,removeItemButton:this.model.delete_button,classNames:{item:l,button:h}};null!=this.model.placeholder&&(a.placeholderValue=this.model.placeholder),null!=this.model.max_items&&(a.maxItemCount=this.model.max_items),null!=this.model.option_limit&&(a.renderChoiceLimit=this.model.option_limit),this.choice_el=new s.default(this.select_el,a);const u=()=>this.choice_el.containerOuter.element.getBoundingClientRect().height;null!=this._last_height&&this._last_height!=u()&&this.root.invalidate_layout(),this._last_height=u(),this.select_el.addEventListener(\"change\",()=>this.change_input())}set_disabled(){this.model.disabled?this.choice_el.disable():this.choice_el.enable()}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.select_el.focus()}}i.MultiChoiceView=_,_.__name__=\"MultiChoiceView\";class r extends d.InputWidget{constructor(e){super(e)}static init_MultiChoice(){this.prototype.default_view=_,this.define({value:[a.Array,[]],options:[a.Array,[]],max_items:[a.Number,null],delete_button:[a.Boolean,!0],placeholder:[a.String,null],option_limit:[a.Number,null],solid:[a.Boolean,!0]})}}i.MultiChoice=r,r.__name__=\"MultiChoice\",r.init_MultiChoice()},\n      439: function _(e,t,i){\n      /*! choices.js v9.0.1 | © 2019 Josh Johnson | https://github.com/jshjohnson/Choices#readme */\n      var n,s;n=window,s=function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"/public/assets/scripts/\",i(i.s=4)}([function(e,t,i){\"use strict\";var n=function(e){return function(e){return!!e&&\"object\"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return\"[object RegExp]\"===t||\"[object Date]\"===t||function(e){return e.$$typeof===s}(e)}(e)},s=\"function\"==typeof Symbol&&Symbol.for?Symbol.for(\"react.element\"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?l((i=e,Array.isArray(i)?[]:{}),e,t):e;var i}function o(e,t,i){return e.concat(t).map((function(e){return r(e,i)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function c(e,t,i){var n={};return i.isMergeableObject(e)&&a(e).forEach((function(t){n[t]=r(e[t],i)})),a(t).forEach((function(s){(function(e,t){try{return t in e&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}catch(e){return!1}})(e,s)||(i.isMergeableObject(t[s])&&e[s]?n[s]=function(e,t){if(!t.customMerge)return l;var i=t.customMerge(e);return\"function\"==typeof i?i:l}(s,i)(e[s],t[s],i):n[s]=r(t[s],i))})),n}function l(e,t,i){(i=i||{}).arrayMerge=i.arrayMerge||o,i.isMergeableObject=i.isMergeableObject||n,i.cloneUnlessOtherwiseSpecified=r;var s=Array.isArray(t);return s===Array.isArray(e)?s?i.arrayMerge(e,t,i):c(e,t,i):r(t,i)}l.all=function(e,t){if(!Array.isArray(e))throw new Error(\"first argument should be an array\");return e.reduce((function(e,i){return l(e,i,t)}),{})};var h=l;e.exports=h},function(e,t,i){\"use strict\";(function(e,n){var s,r=i(3);s=\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:void 0!==e?e:n;var o=Object(r.a)(s);t.a=o}).call(this,i(5),i(6)(e))},function(e,t,i){\n      /*!\n                       * Fuse.js v3.4.5 - Lightweight fuzzy-search (http://fusejs.io)\n                       *\n                       * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me)\n                       * All Rights Reserved. Apache Software License 2.0\n                       *\n                       * http://www.apache.org/licenses/LICENSE-2.0\n                       */\n      e.exports=function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"\",i(i.s=1)}([function(e,t){e.exports=function(e){return Array.isArray?Array.isArray(e):\"[object Array]\"===Object.prototype.toString.call(e)}},function(e,t,i){function n(e){return(n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function s(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var r=i(2),o=i(8),a=i(0),c=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.caseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_,y=i.id,E=void 0===y?null:y,I=i.keys,S=void 0===I?[]:I,w=i.shouldSort,O=void 0===w||w,C=i.getFn,A=void 0===C?o:C,L=i.sortFn,T=void 0===L?function(e,t){return e.score-t.score}:L,x=i.tokenize,k=void 0!==x&&x,P=i.matchAllTokens,D=void 0!==P&&P,M=i.includeMatches,N=void 0!==M&&M,F=i.includeScore,j=void 0!==F&&F,K=i.verbose,R=void 0!==K&&K;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b,id:E,keys:S,includeMatches:N,includeScore:j,shouldSort:O,getFn:A,sortFn:T,verbose:R,tokenize:k,matchAllTokens:D},this.setCollection(t)}var t,i;return t=e,(i=[{key:\"setCollection\",value:function(e){return this.list=e,e}},{key:\"search\",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{limit:!1};this._log('---------\\nSearch pattern: \"'.concat(e,'\"'));var i=this._prepareSearchers(e),n=i.tokenSearchers,s=i.fullSearcher,r=this._search(n,s),o=r.weights,a=r.results;return this._computeScore(o,a),this.options.shouldSort&&this._sort(a),t.limit&&\"number\"==typeof t.limit&&(a=a.slice(0,t.limit)),this._format(a)}},{key:\"_prepareSearchers\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",t=[];if(this.options.tokenize)for(var i=e.split(this.options.tokenSeparator),n=0,s=i.length;n<s;n+=1)t.push(new r(i[n],this.options));return{tokenSearchers:t,fullSearcher:new r(e,this.options)}}},{key:\"_search\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,i=this.list,n={},s=[];if(\"string\"==typeof i[0]){for(var r=0,o=i.length;r<o;r+=1)this._analyze({key:\"\",value:i[r],record:r,index:r},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t});return{weights:null,results:s}}for(var a={},c=0,l=i.length;c<l;c+=1)for(var h=i[c],u=0,d=this.options.keys.length;u<d;u+=1){var p=this.options.keys[u];if(\"string\"!=typeof p){if(a[p.name]={weight:1-p.weight||1},p.weight<=0||p.weight>1)throw new Error(\"Key weight has to be > 0 and <= 1\");p=p.name}else a[p]={weight:1};this._analyze({key:p,value:this.options.getFn(h,p),record:h,index:c},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t})}return{weights:a,results:s}}},{key:\"_analyze\",value:function(e,t){var i=e.key,n=e.arrayIndex,s=void 0===n?-1:n,r=e.value,o=e.record,c=e.index,l=t.tokenSearchers,h=void 0===l?[]:l,u=t.fullSearcher,d=void 0===u?[]:u,p=t.resultMap,m=void 0===p?{}:p,f=t.results,v=void 0===f?[]:f;if(null!=r){var g=!1,_=-1,b=0;if(\"string\"==typeof r){this._log(\"\\nKey: \".concat(\"\"===i?\"-\":i));var y=d.search(r);if(this._log('Full text: \"'.concat(r,'\", score: ').concat(y.score)),this.options.tokenize){for(var E=r.split(this.options.tokenSeparator),I=[],S=0;S<h.length;S+=1){var w=h[S];this._log('\\nPattern: \"'.concat(w.pattern,'\"'));for(var O=!1,C=0;C<E.length;C+=1){var A=E[C],L=w.search(A),T={};L.isMatch?(T[A]=L.score,g=!0,O=!0,I.push(L.score)):(T[A]=1,this.options.matchAllTokens||I.push(1)),this._log('Token: \"'.concat(A,'\", score: ').concat(T[A]))}O&&(b+=1)}_=I[0];for(var x=I.length,k=1;k<x;k+=1)_+=I[k];_/=x,this._log(\"Token score average:\",_)}var P=y.score;_>-1&&(P=(P+_)/2),this._log(\"Score average:\",P);var D=!this.options.tokenize||!this.options.matchAllTokens||b>=h.length;if(this._log(\"\\nCheck Matches: \".concat(D)),(g||y.isMatch)&&D){var M=m[c];M?M.output.push({key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}):(m[c]={item:o,output:[{key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}]},v.push(m[c]))}}else if(a(r))for(var N=0,F=r.length;N<F;N+=1)this._analyze({key:i,arrayIndex:N,value:r[N],record:o,index:c},{resultMap:m,results:v,tokenSearchers:h,fullSearcher:d})}}},{key:\"_computeScore\",value:function(e,t){this._log(\"\\n\\nComputing score:\\n\");for(var i=0,n=t.length;i<n;i+=1){for(var s=t[i].output,r=s.length,o=1,a=1,c=0;c<r;c+=1){var l=e?e[s[c].key].weight:1,h=(1===l?s[c].score:s[c].score||.001)*l;1!==l?a=Math.min(a,h):(s[c].nScore=h,o*=h)}t[i].score=1===a?o:a,this._log(t[i])}}},{key:\"_sort\",value:function(e){this._log(\"\\n\\nSorting....\"),e.sort(this.options.sortFn)}},{key:\"_format\",value:function(e){var t=[];if(this.options.verbose){var i=[];this._log(\"\\n\\nOutput:\\n\\n\",JSON.stringify(e,(function(e,t){if(\"object\"===n(t)&&null!==t){if(-1!==i.indexOf(t))return;i.push(t)}return t}))),i=null}var s=[];this.options.includeMatches&&s.push((function(e,t){var i=e.output;t.matches=[];for(var n=0,s=i.length;n<s;n+=1){var r=i[n];if(0!==r.matchedIndices.length){var o={indices:r.matchedIndices,value:r.value};r.key&&(o.key=r.key),r.hasOwnProperty(\"arrayIndex\")&&r.arrayIndex>-1&&(o.arrayIndex=r.arrayIndex),t.matches.push(o)}}})),this.options.includeScore&&s.push((function(e,t){t.score=e.score}));for(var r=0,o=e.length;r<o;r+=1){var a=e[r];if(this.options.id&&(a.item=this.options.getFn(a.item,this.options.id)[0]),s.length){for(var c={item:a.item},l=0,h=s.length;l<h;l+=1)s[l](a,c);t.push(c)}else t.push(a.item)}return t}},{key:\"_log\",value:function(){var e;this.options.verbose&&(e=console).log.apply(e,arguments)}}])&&s(t.prototype,i),e}();e.exports=c},function(e,t,i){function n(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var s=i(3),r=i(4),o=i(7),a=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.isCaseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b},this.pattern=this.options.isCaseSensitive?t:t.toLowerCase(),this.pattern.length<=u&&(this.patternAlphabet=o(this.pattern))}var t,i;return t=e,(i=[{key:\"search\",value:function(e){if(this.options.isCaseSensitive||(e=e.toLowerCase()),this.pattern===e)return{isMatch:!0,score:0,matchedIndices:[[0,e.length-1]]};var t=this.options,i=t.maxPatternLength,n=t.tokenSeparator;if(this.pattern.length>i)return s(e,this.pattern,n);var o=this.options,a=o.location,c=o.distance,l=o.threshold,h=o.findAllMatches,u=o.minMatchCharLength;return r(e,this.pattern,this.patternAlphabet,{location:a,distance:c,threshold:l,findAllMatches:h,minMatchCharLength:u})}}])&&n(t.prototype,i),e}();e.exports=a},function(e,t){var i=/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g;e.exports=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/ +/g,s=new RegExp(t.replace(i,\"\\\\$&\").replace(n,\"|\")),r=e.match(s),o=!!r,a=[];if(o)for(var c=0,l=r.length;c<l;c+=1){var h=r[c];a.push([e.indexOf(h),h.length-1])}return{score:o?.5:1,isMatch:o,matchedIndices:a}}},function(e,t,i){var n=i(5),s=i(6);e.exports=function(e,t,i,r){for(var o=r.location,a=void 0===o?0:o,c=r.distance,l=void 0===c?100:c,h=r.threshold,u=void 0===h?.6:h,d=r.findAllMatches,p=void 0!==d&&d,m=r.minMatchCharLength,f=void 0===m?1:m,v=a,g=e.length,_=u,b=e.indexOf(t,v),y=t.length,E=[],I=0;I<g;I+=1)E[I]=0;if(-1!==b){var S=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});if(_=Math.min(S,_),-1!==(b=e.lastIndexOf(t,v+y))){var w=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});_=Math.min(w,_)}}b=-1;for(var O=[],C=1,A=y+g,L=1<<y-1,T=0;T<y;T+=1){for(var x=0,k=A;x<k;)n(t,{errors:T,currentLocation:v+k,expectedLocation:v,distance:l})<=_?x=k:A=k,k=Math.floor((A-x)/2+x);A=k;var P=Math.max(1,v-k+1),D=p?g:Math.min(v+k,g)+y,M=Array(D+2);M[D+1]=(1<<T)-1;for(var N=D;N>=P;N-=1){var F=N-1,j=i[e.charAt(F)];if(j&&(E[F]=1),M[N]=(M[N+1]<<1|1)&j,0!==T&&(M[N]|=(O[N+1]|O[N])<<1|1|O[N+1]),M[N]&L&&(C=n(t,{errors:T,currentLocation:F,expectedLocation:v,distance:l}))<=_){if(_=C,(b=F)<=v)break;P=Math.max(1,2*v-b)}}if(n(t,{errors:T+1,currentLocation:v,expectedLocation:v,distance:l})>_)break;O=M}return{isMatch:b>=0,score:0===C?.001:C,matchedIndices:s(E,f)}}},function(e,t){e.exports=function(e,t){var i=t.errors,n=void 0===i?0:i,s=t.currentLocation,r=void 0===s?0:s,o=t.expectedLocation,a=void 0===o?0:o,c=t.distance,l=void 0===c?100:c,h=n/e.length,u=Math.abs(a-r);return l?h+u/l:u?1:h}},function(e,t){e.exports=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=[],n=-1,s=-1,r=0,o=e.length;r<o;r+=1){var a=e[r];a&&-1===n?n=r:a||-1===n||((s=r-1)-n+1>=t&&i.push([n,s]),n=-1)}return e[r-1]&&r-n>=t&&i.push([n,r-1]),i}},function(e,t){e.exports=function(e){for(var t={},i=e.length,n=0;n<i;n+=1)t[e.charAt(n)]=0;for(var s=0;s<i;s+=1)t[e.charAt(s)]|=1<<i-s-1;return t}},function(e,t,i){var n=i(0);e.exports=function(e,t){return function e(t,i,s){if(i){var r=i.indexOf(\".\"),o=i,a=null;-1!==r&&(o=i.slice(0,r),a=i.slice(r+1));var c=t[o];if(null!=c)if(a||\"string\"!=typeof c&&\"number\"!=typeof c)if(n(c))for(var l=0,h=c.length;l<h;l+=1)e(c[l],a,s);else a&&e(c,a,s);else s.push(c.toString())}else s.push(t);return s}(e,t,[])}}])},function(e,t,i){\"use strict\";function n(e){var t,i=e.Symbol;return\"function\"==typeof i?i.observable?t=i.observable:(t=i(\"observable\"),i.observable=t):t=\"@@observable\",t}i.d(t,\"a\",(function(){return n}))},function(e,t,i){e.exports=i(7)},function(e,t){var i;i=function(){return this}();try{i=i||new Function(\"return this\")()}catch(e){\"object\"==typeof window&&(i=window)}e.exports=i},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,\"loaded\",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,\"id\",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,\"exports\",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,i){\"use strict\";i.r(t);var n=i(2),s=i.n(n),r=i(0),o=i.n(r),a=i(1),c=function(){return Math.random().toString(36).substring(7).split(\"\").join(\".\")},l={INIT:\"@@redux/INIT\"+c(),REPLACE:\"@@redux/REPLACE\"+c(),PROBE_UNKNOWN_ACTION:function(){return\"@@redux/PROBE_UNKNOWN_ACTION\"+c()}};function h(e){if(\"object\"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function u(e,t,i){var n;if(\"function\"==typeof t&&\"function\"==typeof i||\"function\"==typeof i&&\"function\"==typeof arguments[3])throw new Error(\"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.\");if(\"function\"==typeof t&&void 0===i&&(i=t,t=void 0),void 0!==i){if(\"function\"!=typeof i)throw new Error(\"Expected the enhancer to be a function.\");return i(u)(e,t)}if(\"function\"!=typeof e)throw new Error(\"Expected the reducer to be a function.\");var s=e,r=t,o=[],c=o,d=!1;function p(){c===o&&(c=o.slice())}function m(){if(d)throw new Error(\"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.\");return r}function f(e){if(\"function\"!=typeof e)throw new Error(\"Expected the listener to be a function.\");if(d)throw new Error(\"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");var t=!0;return p(),c.push(e),function(){if(t){if(d)throw new Error(\"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");t=!1,p();var i=c.indexOf(e);c.splice(i,1)}}}function v(e){if(!h(e))throw new Error(\"Actions must be plain objects. Use custom middleware for async actions.\");if(void 0===e.type)throw new Error('Actions may not have an undefined \"type\" property. Have you misspelled a constant?');if(d)throw new Error(\"Reducers may not dispatch actions.\");try{d=!0,r=s(r,e)}finally{d=!1}for(var t=o=c,i=0;i<t.length;i++)(0,t[i])();return e}function g(e){if(\"function\"!=typeof e)throw new Error(\"Expected the nextReducer to be a function.\");s=e,v({type:l.REPLACE})}function _(){var e,t=f;return(e={subscribe:function(e){if(\"object\"!=typeof e||null===e)throw new TypeError(\"Expected the observer to be an object.\");function i(){e.next&&e.next(m())}return i(),{unsubscribe:t(i)}}})[a.a]=function(){return this},e}return v({type:l.INIT}),(n={dispatch:v,subscribe:f,getState:m,replaceReducer:g})[a.a]=_,n}function d(e,t){var i=t&&t.type;return\"Given \"+(i&&'action \"'+String(i)+'\"'||\"an action\")+', reducer \"'+e+'\" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}var p,m=[],f=[],v=[],g={loading:!1},_=function(e,t){switch(void 0===e&&(e=g),t.type){case\"SET_IS_LOADING\":return{loading:t.isLoading};default:return e}},b=function(e){return Array.from({length:e},(function(){return(e=0,t=36,Math.floor(Math.random()*(t-e)+e)).toString(36);var e,t})).join(\"\")},y=function(e){return Object.prototype.toString.call(e).slice(8,-1)},E=function(e,t){return null!=t&&y(t)===e},I=function(e){return\"string\"!=typeof e?e:e.replace(/&/g,\"&amp;\").replace(/>/g,\"&rt;\").replace(/</g,\"&lt;\").replace(/\"/g,\"&quot;\")},S=(p=document.createElement(\"div\"),function(e){var t=e.trim();p.innerHTML=t;for(var i=p.children[0];p.firstChild;)p.removeChild(p.firstChild);return i}),w=function(e,t){return e.score-t.score},O=function(e){return JSON.parse(JSON.stringify(e))},C=function(e){for(var t=Object.keys(e),i={},n=0;n<t.length;n++){var s=t[n];\"function\"==typeof e[s]&&(i[s]=e[s])}var r,o=Object.keys(i);try{!function(e){Object.keys(e).forEach((function(t){var i=e[t];if(void 0===i(void 0,{type:l.INIT}))throw new Error('Reducer \"'+t+\"\\\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.\");if(void 0===i(void 0,{type:l.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer \"'+t+\"\\\" returned undefined when probed with a random type. Don't try to handle \"+l.INIT+' or other actions in \"redux/*\" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(i)}catch(e){r=e}return function(e,t){if(void 0===e&&(e={}),r)throw r;for(var n=!1,s={},a=0;a<o.length;a++){var c=o[a],l=i[c],h=e[c],u=l(h,t);if(void 0===u){var p=d(c,t);throw new Error(p)}s[c]=u,n=n||u!==h}return n?s:e}}({items:function(e,t){switch(void 0===e&&(e=m),t.type){case\"ADD_ITEM\":return[].concat(e,[{id:t.id,choiceId:t.choiceId,groupId:t.groupId,value:t.value,label:t.label,active:!0,highlighted:!1,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]).map((function(e){var t=e;return t.highlighted=!1,t}));case\"REMOVE_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.active=!1),i}));case\"HIGHLIGHT_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.highlighted=t.highlighted),i}));default:return e}},groups:function(e,t){switch(void 0===e&&(e=f),t.type){case\"ADD_GROUP\":return[].concat(e,[{id:t.id,value:t.value,active:t.active,disabled:t.disabled}]);case\"CLEAR_CHOICES\":return[];default:return e}},choices:function(e,t){switch(void 0===e&&(e=v),t.type){case\"ADD_CHOICE\":return[].concat(e,[{id:t.id,elementId:t.elementId,groupId:t.groupId,value:t.value,label:t.label||t.value,disabled:t.disabled||!1,selected:!1,active:!0,score:9999,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]);case\"ADD_ITEM\":return t.activateOptions?e.map((function(e){var i=e;return i.active=t.active,i})):t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!0),i})):e;case\"REMOVE_ITEM\":return t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!1),i})):e;case\"FILTER_CHOICES\":return e.map((function(e){var i=e;return i.active=t.results.some((function(e){var t=e.item,n=e.score;return t.id===i.id&&(i.score=n,!0)})),i}));case\"ACTIVATE_CHOICES\":return e.map((function(e){var i=e;return i.active=t.active,i}));case\"CLEAR_CHOICES\":return v;default:return e}},general:_}),A=function(e,t){var i=e;if(\"CLEAR_ALL\"===t.type)i=void 0;else if(\"RESET_TO\"===t.type)return O(t.state);return C(i,t)};function L(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var T=function(){function e(){this._store=u(A,window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__())}var t,i,n,s=e.prototype;return s.subscribe=function(e){this._store.subscribe(e)},s.dispatch=function(e){this._store.dispatch(e)},s.isLoading=function(){return this.state.general.loading},s.getChoiceById=function(e){return this.activeChoices.find((function(t){return t.id===parseInt(e,10)}))},s.getGroupById=function(e){return this.groups.find((function(t){return t.id===e}))},t=e,(i=[{key:\"state\",get:function(){return this._store.getState()}},{key:\"items\",get:function(){return this.state.items}},{key:\"activeItems\",get:function(){return this.items.filter((function(e){return!0===e.active}))}},{key:\"highlightedActiveItems\",get:function(){return this.items.filter((function(e){return e.active&&e.highlighted}))}},{key:\"choices\",get:function(){return this.state.choices}},{key:\"activeChoices\",get:function(){return this.choices.filter((function(e){return!0===e.active}))}},{key:\"selectableChoices\",get:function(){return this.choices.filter((function(e){return!0!==e.disabled}))}},{key:\"searchableChoices\",get:function(){return this.selectableChoices.filter((function(e){return!0!==e.placeholder}))}},{key:\"placeholderChoice\",get:function(){return[].concat(this.choices).reverse().find((function(e){return!0===e.placeholder}))}},{key:\"groups\",get:function(){return this.state.groups}},{key:\"activeGroups\",get:function(){var e=this.groups,t=this.choices;return e.filter((function(e){var i=!0===e.active&&!1===e.disabled,n=t.some((function(e){return!0===e.active&&!1===e.disabled}));return i&&n}),[])}}])&&L(t.prototype,i),n&&L(t,n),e}();function x(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var k=function(){function e(e){var t=e.element,i=e.type,n=e.classNames;this.element=t,this.classNames=n,this.type=i,this.isActive=!1}var t,i,n,s=e.prototype;return s.getChild=function(e){return this.element.querySelector(e)},s.show=function(){return this.element.classList.add(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isActive=!0,this},s.hide=function(){return this.element.classList.remove(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.isActive=!1,this},t=e,(i=[{key:\"distanceFromTopWindow\",get:function(){return this.element.getBoundingClientRect().bottom}}])&&x(t.prototype,i),n&&x(t,n),e}(),P={items:[],choices:[],silent:!1,renderChoiceLimit:-1,maxItemCount:-1,addItems:!0,addItemFilter:null,removeItems:!0,removeItemButton:!1,editItems:!1,duplicateItemsAllowed:!0,delimiter:\",\",paste:!0,searchEnabled:!0,searchChoices:!0,searchFloor:1,searchResultLimit:4,searchFields:[\"label\",\"value\"],position:\"auto\",resetScrollPosition:!0,shouldSort:!0,shouldSortItems:!1,sorter:function(e,t){var i=e.value,n=e.label,s=void 0===n?i:n,r=t.value,o=t.label,a=void 0===o?r:o;return s.localeCompare(a,[],{sensitivity:\"base\",ignorePunctuation:!0,numeric:!0})},placeholder:!0,placeholderValue:null,searchPlaceholderValue:null,prependValue:null,appendValue:null,renderSelectedChoices:\"auto\",loadingText:\"Loading...\",noResultsText:\"No results found\",noChoicesText:\"No choices to choose from\",itemSelectText:\"Press to select\",uniqueItemText:\"Only unique values can be added\",customAddItemText:\"Only values matching specific conditions can be added\",addItemText:function(e){return'Press Enter to add <b>\"'+I(e)+'\"</b>'},maxItemText:function(e){return\"Only \"+e+\" values can be added\"},valueComparer:function(e,t){return e===t},fuseOptions:{includeScore:!0},callbackOnInit:null,callbackOnCreateTemplates:null,classNames:{containerOuter:\"choices\",containerInner:\"choices__inner\",input:\"choices__input\",inputCloned:\"choices__input--cloned\",list:\"choices__list\",listItems:\"choices__list--multiple\",listSingle:\"choices__list--single\",listDropdown:\"choices__list--dropdown\",item:\"choices__item\",itemSelectable:\"choices__item--selectable\",itemDisabled:\"choices__item--disabled\",itemChoice:\"choices__item--choice\",placeholder:\"choices__placeholder\",group:\"choices__group\",groupHeading:\"choices__heading\",button:\"choices__button\",activeState:\"is-active\",focusState:\"is-focused\",openState:\"is-open\",disabledState:\"is-disabled\",highlightedState:\"is-highlighted\",selectedState:\"is-selected\",flippedState:\"is-flipped\",loadingState:\"is-loading\",noResults:\"has-no-results\",noChoices:\"has-no-choices\"}},D=\"showDropdown\",M=\"hideDropdown\",N=\"change\",F=\"choice\",j=\"search\",K=\"addItem\",R=\"removeItem\",H=\"highlightItem\",B=\"highlightChoice\",V=\"ADD_CHOICE\",G=\"FILTER_CHOICES\",q=\"ACTIVATE_CHOICES\",U=\"CLEAR_CHOICES\",z=\"ADD_GROUP\",W=\"ADD_ITEM\",X=\"REMOVE_ITEM\",$=\"HIGHLIGHT_ITEM\",J=46,Y=8,Z=13,Q=65,ee=27,te=38,ie=40,ne=33,se=34,re=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.position;this.element=t,this.classNames=n,this.type=i,this.position=s,this.isOpen=!1,this.isFlipped=!1,this.isFocussed=!1,this.isDisabled=!1,this.isLoading=!1,this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t=e.prototype;return t.addEventListeners=function(){this.element.addEventListener(\"focus\",this._onFocus),this.element.addEventListener(\"blur\",this._onBlur)},t.removeEventListeners=function(){this.element.removeEventListener(\"focus\",this._onFocus),this.element.removeEventListener(\"blur\",this._onBlur)},t.shouldFlip=function(e){if(\"number\"!=typeof e)return!1;var t=!1;return\"auto\"===this.position?t=!window.matchMedia(\"(min-height: \"+(e+1)+\"px)\").matches:\"top\"===this.position&&(t=!0),t},t.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},t.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},t.open=function(e){this.element.classList.add(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isOpen=!0,this.shouldFlip(e)&&(this.element.classList.add(this.classNames.flippedState),this.isFlipped=!0)},t.close=function(){this.element.classList.remove(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.removeActiveDescendant(),this.isOpen=!1,this.isFlipped&&(this.element.classList.remove(this.classNames.flippedState),this.isFlipped=!1)},t.focus=function(){this.isFocussed||this.element.focus()},t.addFocusState=function(){this.element.classList.add(this.classNames.focusState)},t.removeFocusState=function(){this.element.classList.remove(this.classNames.focusState)},t.enable=function(){this.element.classList.remove(this.classNames.disabledState),this.element.removeAttribute(\"aria-disabled\"),\"select-one\"===this.type&&this.element.setAttribute(\"tabindex\",\"0\"),this.isDisabled=!1},t.disable=function(){this.element.classList.add(this.classNames.disabledState),this.element.setAttribute(\"aria-disabled\",\"true\"),\"select-one\"===this.type&&this.element.setAttribute(\"tabindex\",\"-1\"),this.isDisabled=!0},t.wrap=function(e){!function(e,t){void 0===t&&(t=document.createElement(\"div\")),e.nextSibling?e.parentNode.insertBefore(t,e.nextSibling):e.parentNode.appendChild(t),t.appendChild(e)}(e,this.element)},t.unwrap=function(e){this.element.parentNode.insertBefore(e,this.element),this.element.parentNode.removeChild(this.element)},t.addLoadingState=function(){this.element.classList.add(this.classNames.loadingState),this.element.setAttribute(\"aria-busy\",\"true\"),this.isLoading=!0},t.removeLoadingState=function(){this.element.classList.remove(this.classNames.loadingState),this.element.removeAttribute(\"aria-busy\"),this.isLoading=!1},t._onFocus=function(){this.isFocussed=!0},t._onBlur=function(){this.isFocussed=!1},e}();function oe(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var ae=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.preventPaste;this.element=t,this.type=i,this.classNames=n,this.preventPaste=s,this.isFocussed=this.element===document.activeElement,this.isDisabled=t.disabled,this._onPaste=this._onPaste.bind(this),this._onInput=this._onInput.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t,i,n,s=e.prototype;return s.addEventListeners=function(){this.element.addEventListener(\"paste\",this._onPaste),this.element.addEventListener(\"input\",this._onInput,{passive:!0}),this.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.addEventListener(\"blur\",this._onBlur,{passive:!0})},s.removeEventListeners=function(){this.element.removeEventListener(\"input\",this._onInput,{passive:!0}),this.element.removeEventListener(\"paste\",this._onPaste),this.element.removeEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.removeEventListener(\"blur\",this._onBlur,{passive:!0})},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.isDisabled=!0},s.focus=function(){this.isFocussed||this.element.focus()},s.blur=function(){this.isFocussed&&this.element.blur()},s.clear=function(e){return void 0===e&&(e=!0),this.element.value&&(this.element.value=\"\"),e&&this.setWidth(),this},s.setWidth=function(){var e=this.element,t=e.style,i=e.value,n=e.placeholder;t.minWidth=n.length+1+\"ch\",t.width=i.length+1+\"ch\"},s.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},s.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},s._onInput=function(){\"select-one\"!==this.type&&this.setWidth()},s._onPaste=function(e){this.preventPaste&&e.preventDefault()},s._onFocus=function(){this.isFocussed=!0},s._onBlur=function(){this.isFocussed=!1},t=e,(i=[{key:\"placeholder\",set:function(e){this.element.placeholder=e}},{key:\"value\",get:function(){return I(this.element.value)},set:function(e){this.element.value=e}}])&&oe(t.prototype,i),n&&oe(t,n),e}(),ce=function(){function e(e){var t=e.element;this.element=t,this.scrollPos=this.element.scrollTop,this.height=this.element.offsetHeight}var t=e.prototype;return t.clear=function(){this.element.innerHTML=\"\"},t.append=function(e){this.element.appendChild(e)},t.getChild=function(e){return this.element.querySelector(e)},t.hasChildren=function(){return this.element.hasChildNodes()},t.scrollToTop=function(){this.element.scrollTop=0},t.scrollToChildElement=function(e,t){var i=this;if(e){var n=this.element.offsetHeight,s=this.element.scrollTop+n,r=e.offsetHeight,o=e.offsetTop+r,a=t>0?this.element.scrollTop+o-s:e.offsetTop;requestAnimationFrame((function(){i._animateScroll(a,t)}))}},t._scrollDown=function(e,t,i){var n=(i-e)/t,s=n>1?n:1;this.element.scrollTop=e+s},t._scrollUp=function(e,t,i){var n=(e-i)/t,s=n>1?n:1;this.element.scrollTop=e-s},t._animateScroll=function(e,t){var i=this,n=this.element.scrollTop,s=!1;t>0?(this._scrollDown(n,4,e),n<e&&(s=!0)):(this._scrollUp(n,4,e),n>e&&(s=!0)),s&&requestAnimationFrame((function(){i._animateScroll(e,t)}))},e}();function le(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var he=function(){function e(e){var t=e.element,i=e.classNames;if(this.element=t,this.classNames=i,!(t instanceof HTMLInputElement||t instanceof HTMLSelectElement))throw new TypeError(\"Invalid element passed\");this.isDisabled=!1}var t,i,n,s=e.prototype;return s.conceal=function(){this.element.classList.add(this.classNames.input),this.element.hidden=!0,this.element.tabIndex=-1;var e=this.element.getAttribute(\"style\");e&&this.element.setAttribute(\"data-choice-orig-style\",e),this.element.setAttribute(\"data-choice\",\"active\")},s.reveal=function(){this.element.classList.remove(this.classNames.input),this.element.hidden=!1,this.element.removeAttribute(\"tabindex\");var e=this.element.getAttribute(\"data-choice-orig-style\");e?(this.element.removeAttribute(\"data-choice-orig-style\"),this.element.setAttribute(\"style\",e)):this.element.removeAttribute(\"style\"),this.element.removeAttribute(\"data-choice\"),this.element.value=this.element.value},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.element.disabled=!1,this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.element.disabled=!0,this.isDisabled=!0},s.triggerEvent=function(e,t){!function(e,t,i){void 0===i&&(i=null);var n=new CustomEvent(t,{detail:i,bubbles:!0,cancelable:!0});e.dispatchEvent(n)}(this.element,e,t)},t=e,(i=[{key:\"isActive\",get:function(){return\"active\"===this.element.dataset.choice}},{key:\"dir\",get:function(){return this.element.dir}},{key:\"value\",get:function(){return this.element.value},set:function(e){this.element.value=e}}])&&le(t.prototype,i),n&&le(t,n),e}();function ue(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var de=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.delimiter;return(i=e.call(this,{element:n,classNames:s})||this).delimiter=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,n=o,(s=[{key:\"value\",get:function(){return this.element.value},set:function(e){var t=e.map((function(e){return e.value})).join(this.delimiter);this.element.setAttribute(\"value\",t),this.element.value=t}}])&&ue(n.prototype,s),r&&ue(n,r),o}(he);function pe(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var me=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.template;return(i=e.call(this,{element:n,classNames:s})||this).template=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,o.prototype.appendDocFragment=function(e){this.element.innerHTML=\"\",this.element.appendChild(e)},n=o,(s=[{key:\"placeholderOption\",get:function(){return this.element.querySelector('option[value=\"\"]')||this.element.querySelector(\"option[placeholder]\")}},{key:\"optionGroups\",get:function(){return Array.from(this.element.getElementsByTagName(\"OPTGROUP\"))}},{key:\"options\",get:function(){return Array.from(this.element.options)},set:function(e){var t=this,i=document.createDocumentFragment();e.forEach((function(e){return n=e,s=t.template(n),void i.appendChild(s);var n,s})),this.appendDocFragment(i)}}])&&pe(n.prototype,s),r&&pe(n,r),o}(he),fe={containerOuter:function(e,t,i,n,s,r){var o=e.containerOuter,a=Object.assign(document.createElement(\"div\"),{className:o});return a.dataset.type=r,t&&(a.dir=t),n&&(a.tabIndex=0),i&&(a.setAttribute(\"role\",s?\"combobox\":\"listbox\"),s&&a.setAttribute(\"aria-autocomplete\",\"list\")),a.setAttribute(\"aria-haspopup\",\"true\"),a.setAttribute(\"aria-expanded\",\"false\"),a},containerInner:function(e){var t=e.containerInner;return Object.assign(document.createElement(\"div\"),{className:t})},itemList:function(e,t){var i=e.list,n=e.listSingle,s=e.listItems;return Object.assign(document.createElement(\"div\"),{className:i+\" \"+(t?n:s)})},placeholder:function(e,t){var i=e.placeholder;return Object.assign(document.createElement(\"div\"),{className:i,innerHTML:t})},item:function(e,t,i){var n=e.item,s=e.button,r=e.highlightedState,o=e.itemSelectable,a=e.placeholder,c=t.id,l=t.value,h=t.label,u=t.customProperties,d=t.active,p=t.disabled,m=t.highlighted,f=t.placeholder,v=Object.assign(document.createElement(\"div\"),{className:n,innerHTML:h});if(Object.assign(v.dataset,{item:\"\",id:c,value:l,customProperties:u}),d&&v.setAttribute(\"aria-selected\",\"true\"),p&&v.setAttribute(\"aria-disabled\",\"true\"),f&&v.classList.add(a),v.classList.add(m?r:o),i){p&&v.classList.remove(o),v.dataset.deletable=\"\";var g=Object.assign(document.createElement(\"button\"),{type:\"button\",className:s,innerHTML:\"Remove item\"});g.setAttribute(\"aria-label\",\"Remove item: '\"+l+\"'\"),g.dataset.button=\"\",v.appendChild(g)}return v},choiceList:function(e,t){var i=e.list,n=Object.assign(document.createElement(\"div\"),{className:i});return t||n.setAttribute(\"aria-multiselectable\",\"true\"),n.setAttribute(\"role\",\"listbox\"),n},choiceGroup:function(e,t){var i=e.group,n=e.groupHeading,s=e.itemDisabled,r=t.id,o=t.value,a=t.disabled,c=Object.assign(document.createElement(\"div\"),{className:i+\" \"+(a?s:\"\")});return c.setAttribute(\"role\",\"group\"),Object.assign(c.dataset,{group:\"\",id:r,value:o}),a&&c.setAttribute(\"aria-disabled\",\"true\"),c.appendChild(Object.assign(document.createElement(\"div\"),{className:n,innerHTML:o})),c},choice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.itemSelectable,o=e.selectedState,a=e.itemDisabled,c=e.placeholder,l=t.id,h=t.value,u=t.label,d=t.groupId,p=t.elementId,m=t.disabled,f=t.selected,v=t.placeholder,g=Object.assign(document.createElement(\"div\"),{id:p,innerHTML:u,className:n+\" \"+s});return f&&g.classList.add(o),v&&g.classList.add(c),g.setAttribute(\"role\",d>0?\"treeitem\":\"option\"),Object.assign(g.dataset,{choice:\"\",id:l,value:h,selectText:i}),m?(g.classList.add(a),g.dataset.choiceDisabled=\"\",g.setAttribute(\"aria-disabled\",\"true\")):(g.classList.add(r),g.dataset.choiceSelectable=\"\"),g},input:function(e,t){var i=e.input,n=e.inputCloned,s=Object.assign(document.createElement(\"input\"),{type:\"text\",className:i+\" \"+n,autocomplete:\"off\",autocapitalize:\"off\",spellcheck:!1});return s.setAttribute(\"role\",\"textbox\"),s.setAttribute(\"aria-autocomplete\",\"list\"),s.setAttribute(\"aria-label\",t),s},dropdown:function(e){var t=e.list,i=e.listDropdown,n=document.createElement(\"div\");return n.classList.add(t,i),n.setAttribute(\"aria-expanded\",\"false\"),n},notice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.noResults,o=e.noChoices;void 0===i&&(i=\"\");var a=[n,s];return\"no-choices\"===i?a.push(o):\"no-results\"===i&&a.push(r),Object.assign(document.createElement(\"div\"),{innerHTML:t,className:a.join(\" \")})},option:function(e){var t=e.label,i=e.value,n=e.customProperties,s=e.active,r=e.disabled,o=new Option(t,i,!1,s);return n&&(o.dataset.customProperties=n),o.disabled=r,o}},ve=function(e){return void 0===e&&(e=!0),{type:q,active:e}},ge=function(e,t){return{type:$,id:e,highlighted:t}},_e=function(e){var t=e.value,i=e.id,n=e.active,s=e.disabled;return{type:z,value:t,id:i,active:n,disabled:s}},be=function(e){return{type:\"SET_IS_LOADING\",isLoading:e}};function ye(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var Ee=\"-ms-scroll-limit\"in document.documentElement.style&&\"-ms-ime-align\"in document.documentElement.style,Ie={},Se=function(){var e,t,i;function n(e,t){var i=this;void 0===e&&(e=\"[data-choice]\"),void 0===t&&(t={}),this.config=o.a.all([P,n.defaults.options,t],{arrayMerge:function(e,t){return[].concat(t)}});var s,r,a,c,l=(s=this.config,r=P,a=Object.keys(s).sort(),c=Object.keys(r).sort(),a.filter((function(e){return c.indexOf(e)<0})));l.length&&console.warn(\"Unknown config option(s) passed\",l.join(\", \"));var h=\"string\"==typeof e?document.querySelector(e):e;if(!(h instanceof HTMLInputElement||h instanceof HTMLSelectElement))throw TypeError(\"Expected one of the following types text|select-one|select-multiple\");if(this._isTextElement=\"text\"===h.type,this._isSelectOneElement=\"select-one\"===h.type,this._isSelectMultipleElement=\"select-multiple\"===h.type,this._isSelectElement=this._isSelectOneElement||this._isSelectMultipleElement,this.config.searchEnabled=this._isSelectMultipleElement||this.config.searchEnabled,[\"auto\",\"always\"].includes(this.config.renderSelectedChoices)||(this.config.renderSelectedChoices=\"auto\"),t.addItemFilter&&\"function\"!=typeof t.addItemFilter){var u=t.addItemFilter instanceof RegExp?t.addItemFilter:new RegExp(t.addItemFilter);this.config.addItemFilter=u.test.bind(u)}if(this._isTextElement?this.passedElement=new de({element:h,classNames:this.config.classNames,delimiter:this.config.delimiter}):this.passedElement=new me({element:h,classNames:this.config.classNames,template:function(e){return i._templates.option(e)}}),this.initialised=!1,this._store=new T,this._initialState={},this._currentState={},this._prevState={},this._currentValue=\"\",this._canSearch=this.config.searchEnabled,this._isScrollingOnIe=!1,this._highlightPosition=0,this._wasTap=!0,this._placeholderValue=this._generatePlaceholderValue(),this._baseId=function(e,t){var i=e.id||e.name&&e.name+\"-\"+b(2)||b(4);return i=t+\"-\"+(i=i.replace(/(:|\\.|\\[|\\]|,)/g,\"\"))}(this.passedElement.element,\"choices-\"),this._direction=this.passedElement.dir,!this._direction){var d=window.getComputedStyle(this.passedElement.element).direction;d!==window.getComputedStyle(document.documentElement).direction&&(this._direction=d)}if(this._idNames={itemChoice:\"item-choice\"},this._presetGroups=this.passedElement.optionGroups,this._presetOptions=this.passedElement.options,this._presetChoices=this.config.choices,this._presetItems=this.config.items,this.passedElement.value&&(this._presetItems=this._presetItems.concat(this.passedElement.value.split(this.config.delimiter))),this.passedElement.options&&this.passedElement.options.forEach((function(e){i._presetChoices.push({value:e.value,label:e.innerHTML,selected:e.selected,disabled:e.disabled||e.parentNode.disabled,placeholder:\"\"===e.value||e.hasAttribute(\"placeholder\"),customProperties:e.getAttribute(\"data-custom-properties\")})})),this._render=this._render.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this),this._onKeyUp=this._onKeyUp.bind(this),this._onKeyDown=this._onKeyDown.bind(this),this._onClick=this._onClick.bind(this),this._onTouchMove=this._onTouchMove.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onMouseDown=this._onMouseDown.bind(this),this._onMouseOver=this._onMouseOver.bind(this),this._onFormReset=this._onFormReset.bind(this),this._onAKey=this._onAKey.bind(this),this._onEnterKey=this._onEnterKey.bind(this),this._onEscapeKey=this._onEscapeKey.bind(this),this._onDirectionKey=this._onDirectionKey.bind(this),this._onDeleteKey=this._onDeleteKey.bind(this),this.passedElement.isActive)return this.config.silent||console.warn(\"Trying to initialise Choices on element already initialised\"),void(this.initialised=!0);this.init()}e=n,i=[{key:\"defaults\",get:function(){return Object.preventExtensions({get options(){return Ie},get templates(){return fe}})}}],(t=null)&&ye(e.prototype,t),i&&ye(e,i);var r=n.prototype;return r.init=function(){if(!this.initialised){this._createTemplates(),this._createElements(),this._createStructure(),this._initialState=O(this._store.state),this._store.subscribe(this._render),this._render(),this._addEventListeners(),(!this.config.addItems||this.passedElement.element.hasAttribute(\"disabled\"))&&this.disable(),this.initialised=!0;var e=this.config.callbackOnInit;e&&\"function\"==typeof e&&e.call(this)}},r.destroy=function(){this.initialised&&(this._removeEventListeners(),this.passedElement.reveal(),this.containerOuter.unwrap(this.passedElement.element),this.clearStore(),this._isSelectElement&&(this.passedElement.options=this._presetOptions),this._templates=null,this.initialised=!1)},r.enable=function(){return this.passedElement.isDisabled&&this.passedElement.enable(),this.containerOuter.isDisabled&&(this._addEventListeners(),this.input.enable(),this.containerOuter.enable()),this},r.disable=function(){return this.passedElement.isDisabled||this.passedElement.disable(),this.containerOuter.isDisabled||(this._removeEventListeners(),this.input.disable(),this.containerOuter.disable()),this},r.highlightItem=function(e,t){if(void 0===t&&(t=!0),!e)return this;var i=e.id,n=e.groupId,s=void 0===n?-1:n,r=e.value,o=void 0===r?\"\":r,a=e.label,c=void 0===a?\"\":a,l=s>=0?this._store.getGroupById(s):null;return this._store.dispatch(ge(i,!0)),t&&this.passedElement.triggerEvent(H,{id:i,value:o,label:c,groupValue:l&&l.value?l.value:null}),this},r.unhighlightItem=function(e){if(!e)return this;var t=e.id,i=e.groupId,n=void 0===i?-1:i,s=e.value,r=void 0===s?\"\":s,o=e.label,a=void 0===o?\"\":o,c=n>=0?this._store.getGroupById(n):null;return this._store.dispatch(ge(t,!1)),this.passedElement.triggerEvent(H,{id:t,value:r,label:a,groupValue:c&&c.value?c.value:null}),this},r.highlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.highlightItem(t)})),this},r.unhighlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.unhighlightItem(t)})),this},r.removeActiveItemsByValue=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.value===e})).forEach((function(e){return t._removeItem(e)})),this},r.removeActiveItems=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.id!==e})).forEach((function(e){return t._removeItem(e)})),this},r.removeHighlightedItems=function(e){var t=this;return void 0===e&&(e=!1),this._store.highlightedActiveItems.forEach((function(i){t._removeItem(i),e&&t._triggerChange(i.value)})),this},r.showDropdown=function(e){var t=this;return this.dropdown.isActive||requestAnimationFrame((function(){t.dropdown.show(),t.containerOuter.open(t.dropdown.distanceFromTopWindow),!e&&t._canSearch&&t.input.focus(),t.passedElement.triggerEvent(D,{})})),this},r.hideDropdown=function(e){var t=this;return this.dropdown.isActive?(requestAnimationFrame((function(){t.dropdown.hide(),t.containerOuter.close(),!e&&t._canSearch&&(t.input.removeActiveDescendant(),t.input.blur()),t.passedElement.triggerEvent(M,{})})),this):this},r.getValue=function(e){void 0===e&&(e=!1);var t=this._store.activeItems.reduce((function(t,i){var n=e?i.value:i;return t.push(n),t}),[]);return this._isSelectOneElement?t[0]:t},r.setValue=function(e){var t=this;return this.initialised?(e.forEach((function(e){return t._setChoiceOrItem(e)})),this):this},r.setChoiceByValue=function(e){var t=this;return!this.initialised||this._isTextElement||(Array.isArray(e)?e:[e]).forEach((function(e){return t._findAndSelectChoiceByValue(e)})),this},r.setChoices=function(e,t,i,n){var s=this;if(void 0===e&&(e=[]),void 0===t&&(t=\"value\"),void 0===i&&(i=\"label\"),void 0===n&&(n=!1),!this.initialised)throw new ReferenceError(\"setChoices was called on a non-initialized instance of Choices\");if(!this._isSelectElement)throw new TypeError(\"setChoices can't be used with INPUT based Choices\");if(\"string\"!=typeof t||!t)throw new TypeError(\"value parameter must be a name of 'value' field in passed objects\");if(n&&this.clearChoices(),\"function\"==typeof e){var r=e(this);if(\"function\"==typeof Promise&&r instanceof Promise)return new Promise((function(e){return requestAnimationFrame(e)})).then((function(){return s._handleLoadingState(!0)})).then((function(){return r})).then((function(e){return s.setChoices(e,t,i,n)})).catch((function(e){s.config.silent||console.error(e)})).then((function(){return s._handleLoadingState(!1)})).then((function(){return s}));if(!Array.isArray(r))throw new TypeError(\".setChoices first argument function must return either array of choices or Promise, got: \"+typeof r);return this.setChoices(r,t,i,!1)}if(!Array.isArray(e))throw new TypeError(\".setChoices must be called either with array of choices with a function resulting into Promise of array of choices\");return this.containerOuter.removeLoadingState(),this._startLoading(),e.forEach((function(e){e.choices?s._addGroup({id:parseInt(e.id,10)||null,group:e,valueKey:t,labelKey:i}):s._addChoice({value:e[t],label:e[i],isSelected:e.selected,isDisabled:e.disabled,customProperties:e.customProperties,placeholder:e.placeholder})})),this._stopLoading(),this},r.clearChoices=function(){return this._store.dispatch({type:U}),this},r.clearStore=function(){return this._store.dispatch({type:\"CLEAR_ALL\"}),this},r.clearInput=function(){var e=!this._isSelectOneElement;return this.input.clear(e),!this._isTextElement&&this._canSearch&&(this._isSearching=!1,this._store.dispatch(ve(!0))),this},r._render=function(){if(!this._store.isLoading()){this._currentState=this._store.state;var e=this._currentState.choices!==this._prevState.choices||this._currentState.groups!==this._prevState.groups||this._currentState.items!==this._prevState.items,t=this._isSelectElement,i=this._currentState.items!==this._prevState.items;e&&(t&&this._renderChoices(),i&&this._renderItems(),this._prevState=this._currentState)}},r._renderChoices=function(){var e=this,t=this._store,i=t.activeGroups,n=t.activeChoices,s=document.createDocumentFragment();if(this.choiceList.clear(),this.config.resetScrollPosition&&requestAnimationFrame((function(){return e.choiceList.scrollToTop()})),i.length>=1&&!this._isSearching){var r=n.filter((function(e){return!0===e.placeholder&&-1===e.groupId}));r.length>=1&&(s=this._createChoicesFragment(r,s)),s=this._createGroupsFragment(i,n,s)}else n.length>=1&&(s=this._createChoicesFragment(n,s));if(s.childNodes&&s.childNodes.length>0){var o=this._store.activeItems,a=this._canAddItem(o,this.input.value);a.response?(this.choiceList.append(s),this._highlightChoice()):this.choiceList.append(this._getTemplate(\"notice\",a.notice))}else{var c,l;this._isSearching?(l=\"function\"==typeof this.config.noResultsText?this.config.noResultsText():this.config.noResultsText,c=this._getTemplate(\"notice\",l,\"no-results\")):(l=\"function\"==typeof this.config.noChoicesText?this.config.noChoicesText():this.config.noChoicesText,c=this._getTemplate(\"notice\",l,\"no-choices\")),this.choiceList.append(c)}},r._renderItems=function(){var e=this._store.activeItems||[];this.itemList.clear();var t=this._createItemsFragment(e);t.childNodes&&this.itemList.append(t)},r._createGroupsFragment=function(e,t,i){var n=this;return void 0===i&&(i=document.createDocumentFragment()),this.config.shouldSort&&e.sort(this.config.sorter),e.forEach((function(e){var s=function(e){return t.filter((function(t){return n._isSelectOneElement?t.groupId===e.id:t.groupId===e.id&&(\"always\"===n.config.renderSelectedChoices||!t.selected)}))}(e);if(s.length>=1){var r=n._getTemplate(\"choiceGroup\",e);i.appendChild(r),n._createChoicesFragment(s,i,!0)}})),i},r._createChoicesFragment=function(e,t,i){var n=this;void 0===t&&(t=document.createDocumentFragment()),void 0===i&&(i=!1);var s=this.config,r=s.renderSelectedChoices,o=s.searchResultLimit,a=s.renderChoiceLimit,c=this._isSearching?w:this.config.sorter,l=function(e){if(\"auto\"!==r||n._isSelectOneElement||!e.selected){var i=n._getTemplate(\"choice\",e,n.config.itemSelectText);t.appendChild(i)}},h=e;\"auto\"!==r||this._isSelectOneElement||(h=e.filter((function(e){return!e.selected})));var u=h.reduce((function(e,t){return t.placeholder?e.placeholderChoices.push(t):e.normalChoices.push(t),e}),{placeholderChoices:[],normalChoices:[]}),d=u.placeholderChoices,p=u.normalChoices;(this.config.shouldSort||this._isSearching)&&p.sort(c);var m=h.length,f=this._isSelectOneElement?[].concat(d,p):p;this._isSearching?m=o:a&&a>0&&!i&&(m=a);for(var v=0;v<m;v+=1)f[v]&&l(f[v]);return t},r._createItemsFragment=function(e,t){var i=this;void 0===t&&(t=document.createDocumentFragment());var n=this.config,s=n.shouldSortItems,r=n.sorter,o=n.removeItemButton;return s&&!this._isSelectOneElement&&e.sort(r),this._isTextElement?this.passedElement.value=e:this.passedElement.options=e,e.forEach((function(e){var n=i._getTemplate(\"item\",e,o);t.appendChild(n)})),t},r._triggerChange=function(e){null!=e&&this.passedElement.triggerEvent(N,{value:e})},r._selectPlaceholderChoice=function(){var e=this._store.placeholderChoice;e&&(this._addItem({value:e.value,label:e.label,choiceId:e.id,groupId:e.groupId,placeholder:e.placeholder}),this._triggerChange(e.value))},r._handleButtonAction=function(e,t){if(e&&t&&this.config.removeItems&&this.config.removeItemButton){var i=t.parentNode.getAttribute(\"data-id\"),n=e.find((function(e){return e.id===parseInt(i,10)}));this._removeItem(n),this._triggerChange(n.value),this._isSelectOneElement&&this._selectPlaceholderChoice()}},r._handleItemAction=function(e,t,i){var n=this;if(void 0===i&&(i=!1),e&&t&&this.config.removeItems&&!this._isSelectOneElement){var s=t.getAttribute(\"data-id\");e.forEach((function(e){e.id!==parseInt(s,10)||e.highlighted?!i&&e.highlighted&&n.unhighlightItem(e):n.highlightItem(e)})),this.input.focus()}},r._handleChoiceAction=function(e,t){if(e&&t){var i=t.dataset.id,n=this._store.getChoiceById(i);if(n){var s=e[0]&&e[0].keyCode?e[0].keyCode:null,r=this.dropdown.isActive;n.keyCode=s,this.passedElement.triggerEvent(F,{choice:n}),n.selected||n.disabled||this._canAddItem(e,n.value).response&&(this._addItem({value:n.value,label:n.label,choiceId:n.id,groupId:n.groupId,customProperties:n.customProperties,placeholder:n.placeholder,keyCode:n.keyCode}),this._triggerChange(n.value)),this.clearInput(),r&&this._isSelectOneElement&&(this.hideDropdown(!0),this.containerOuter.focus())}}},r._handleBackspace=function(e){if(this.config.removeItems&&e){var t=e[e.length-1],i=e.some((function(e){return e.highlighted}));this.config.editItems&&!i&&t?(this.input.value=t.value,this.input.setWidth(),this._removeItem(t),this._triggerChange(t.value)):(i||this.highlightItem(t,!1),this.removeHighlightedItems(!0))}},r._startLoading=function(){this._store.dispatch(be(!0))},r._stopLoading=function(){this._store.dispatch(be(!1))},r._handleLoadingState=function(e){void 0===e&&(e=!0);var t=this.itemList.getChild(\".\"+this.config.classNames.placeholder);e?(this.disable(),this.containerOuter.addLoadingState(),this._isSelectOneElement?t?t.innerHTML=this.config.loadingText:(t=this._getTemplate(\"placeholder\",this.config.loadingText),this.itemList.append(t)):this.input.placeholder=this.config.loadingText):(this.enable(),this.containerOuter.removeLoadingState(),this._isSelectOneElement?t.innerHTML=this._placeholderValue||\"\":this.input.placeholder=this._placeholderValue||\"\")},r._handleSearch=function(e){if(e&&this.input.isFocussed){var t=this._store.choices,i=this.config,n=i.searchFloor,s=i.searchChoices,r=t.some((function(e){return!e.active}));if(e&&e.length>=n){var o=s?this._searchChoices(e):0;this.passedElement.triggerEvent(j,{value:e,resultCount:o})}else r&&(this._isSearching=!1,this._store.dispatch(ve(!0)))}},r._canAddItem=function(e,t){var i=!0,n=\"function\"==typeof this.config.addItemText?this.config.addItemText(t):this.config.addItemText;if(!this._isSelectOneElement){var s=function(e,t,i){return void 0===i&&(i=\"value\"),e.some((function(e){return\"string\"==typeof t?e[i]===t.trim():e[i]===t}))}(e,t);this.config.maxItemCount>0&&this.config.maxItemCount<=e.length&&(i=!1,n=\"function\"==typeof this.config.maxItemText?this.config.maxItemText(this.config.maxItemCount):this.config.maxItemText),!this.config.duplicateItemsAllowed&&s&&i&&(i=!1,n=\"function\"==typeof this.config.uniqueItemText?this.config.uniqueItemText(t):this.config.uniqueItemText),this._isTextElement&&this.config.addItems&&i&&\"function\"==typeof this.config.addItemFilter&&!this.config.addItemFilter(t)&&(i=!1,n=\"function\"==typeof this.config.customAddItemText?this.config.customAddItemText(t):this.config.customAddItemText)}return{response:i,notice:n}},r._searchChoices=function(e){var t=\"string\"==typeof e?e.trim():e,i=\"string\"==typeof this._currentValue?this._currentValue.trim():this._currentValue;if(t.length<1&&t===i+\" \")return 0;var n=this._store.searchableChoices,r=t,o=[].concat(this.config.searchFields),a=Object.assign(this.config.fuseOptions,{keys:o}),c=new s.a(n,a).search(r);return this._currentValue=t,this._highlightPosition=0,this._isSearching=!0,this._store.dispatch(function(e){return{type:G,results:e}}(c)),c.length},r._addEventListeners=function(){var e=document.documentElement;e.addEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.addEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.addEventListener(\"mousedown\",this._onMouseDown,!0),e.addEventListener(\"click\",this._onClick,{passive:!0}),e.addEventListener(\"touchmove\",this._onTouchMove,{passive:!0}),this.dropdown.element.addEventListener(\"mouseover\",this._onMouseOver,{passive:!0}),this._isSelectOneElement&&(this.containerOuter.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.containerOuter.element.addEventListener(\"blur\",this._onBlur,{passive:!0})),this.input.element.addEventListener(\"keyup\",this._onKeyUp,{passive:!0}),this.input.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.input.element.addEventListener(\"blur\",this._onBlur,{passive:!0}),this.input.element.form&&this.input.element.form.addEventListener(\"reset\",this._onFormReset,{passive:!0}),this.input.addEventListeners()},r._removeEventListeners=function(){var e=document.documentElement;e.removeEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.removeEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.removeEventListener(\"mousedown\",this._onMouseDown,!0),e.removeEventListener(\"click\",this._onClick),e.removeEventListener(\"touchmove\",this._onTouchMove),this.dropdown.element.removeEventListener(\"mouseover\",this._onMouseOver),this._isSelectOneElement&&(this.containerOuter.element.removeEventListener(\"focus\",this._onFocus),this.containerOuter.element.removeEventListener(\"blur\",this._onBlur)),this.input.element.removeEventListener(\"keyup\",this._onKeyUp),this.input.element.removeEventListener(\"focus\",this._onFocus),this.input.element.removeEventListener(\"blur\",this._onBlur),this.input.element.form&&this.input.element.form.removeEventListener(\"reset\",this._onFormReset),this.input.removeEventListeners()},r._onKeyDown=function(e){var t,i=e.target,n=e.keyCode,s=e.ctrlKey,r=e.metaKey,o=this._store.activeItems,a=this.input.isFocussed,c=this.dropdown.isActive,l=this.itemList.hasChildren(),h=String.fromCharCode(n),u=J,d=Y,p=Z,m=Q,f=ee,v=te,g=ie,_=ne,b=se,y=s||r;!this._isTextElement&&/[a-zA-Z0-9-_ ]/.test(h)&&this.showDropdown();var E=((t={})[m]=this._onAKey,t[p]=this._onEnterKey,t[f]=this._onEscapeKey,t[v]=this._onDirectionKey,t[_]=this._onDirectionKey,t[g]=this._onDirectionKey,t[b]=this._onDirectionKey,t[d]=this._onDeleteKey,t[u]=this._onDeleteKey,t);E[n]&&E[n]({event:e,target:i,keyCode:n,metaKey:r,activeItems:o,hasFocusedInput:a,hasActiveDropdown:c,hasItems:l,hasCtrlDownKeyPressed:y})},r._onKeyUp=function(e){var t=e.target,i=e.keyCode,n=this.input.value,s=this._store.activeItems,r=this._canAddItem(s,n),o=J,a=Y;if(this._isTextElement)if(r.notice&&n){var c=this._getTemplate(\"notice\",r.notice);this.dropdown.element.innerHTML=c.outerHTML,this.showDropdown(!0)}else this.hideDropdown(!0);else{var l=(i===o||i===a)&&!t.value,h=!this._isTextElement&&this._isSearching,u=this._canSearch&&r.response;l&&h?(this._isSearching=!1,this._store.dispatch(ve(!0))):u&&this._handleSearch(this.input.value)}this._canSearch=this.config.searchEnabled},r._onAKey=function(e){var t=e.hasItems;e.hasCtrlDownKeyPressed&&t&&(this._canSearch=!1,this.config.removeItems&&!this.input.value&&this.input.element===document.activeElement&&this.highlightAll())},r._onEnterKey=function(e){var t=e.event,i=e.target,n=e.activeItems,s=e.hasActiveDropdown,r=Z,o=i.hasAttribute(\"data-button\");if(this._isTextElement&&i.value){var a=this.input.value;this._canAddItem(n,a).response&&(this.hideDropdown(!0),this._addItem({value:a}),this._triggerChange(a),this.clearInput())}if(o&&(this._handleButtonAction(n,i),t.preventDefault()),s){var c=this.dropdown.getChild(\".\"+this.config.classNames.highlightedState);c&&(n[0]&&(n[0].keyCode=r),this._handleChoiceAction(n,c)),t.preventDefault()}else this._isSelectOneElement&&(this.showDropdown(),t.preventDefault())},r._onEscapeKey=function(e){e.hasActiveDropdown&&(this.hideDropdown(!0),this.containerOuter.focus())},r._onDirectionKey=function(e){var t,i,n,s=e.event,r=e.hasActiveDropdown,o=e.keyCode,a=e.metaKey,c=ie,l=ne,h=se;if(r||this._isSelectOneElement){this.showDropdown(),this._canSearch=!1;var u,d=o===c||o===h?1:-1;if(a||o===h||o===l)u=d>0?this.dropdown.element.querySelector(\"[data-choice-selectable]:last-of-type\"):this.dropdown.element.querySelector(\"[data-choice-selectable]\");else{var p=this.dropdown.element.querySelector(\".\"+this.config.classNames.highlightedState);u=p?function(e,t,i){if(void 0===i&&(i=1),e instanceof Element&&\"string\"==typeof t){for(var n=(i>0?\"next\":\"previous\")+\"ElementSibling\",s=e[n];s;){if(s.matches(t))return s;s=s[n]}return s}}(p,\"[data-choice-selectable]\",d):this.dropdown.element.querySelector(\"[data-choice-selectable]\")}u&&(t=u,i=this.choiceList.element,void 0===(n=d)&&(n=1),t&&(n>0?i.scrollTop+i.offsetHeight>=t.offsetTop+t.offsetHeight:t.offsetTop>=i.scrollTop)||this.choiceList.scrollToChildElement(u,d),this._highlightChoice(u)),s.preventDefault()}},r._onDeleteKey=function(e){var t=e.event,i=e.target,n=e.hasFocusedInput,s=e.activeItems;!n||i.value||this._isSelectOneElement||(this._handleBackspace(s),t.preventDefault())},r._onTouchMove=function(){this._wasTap&&(this._wasTap=!1)},r._onTouchEnd=function(e){var t=(e||e.touches[0]).target;this._wasTap&&this.containerOuter.element.contains(t)&&((t===this.containerOuter.element||t===this.containerInner.element)&&(this._isTextElement?this.input.focus():this._isSelectMultipleElement&&this.showDropdown()),e.stopPropagation()),this._wasTap=!0},r._onMouseDown=function(e){var t=e.target;if(t instanceof HTMLElement){if(Ee&&this.choiceList.element.contains(t)){var i=this.choiceList.element.firstElementChild,n=\"ltr\"===this._direction?e.offsetX>=i.offsetWidth:e.offsetX<i.offsetLeft;this._isScrollingOnIe=n}if(t!==this.input.element){var s=t.closest(\"[data-button],[data-item],[data-choice]\");if(s instanceof HTMLElement){var r=e.shiftKey,o=this._store.activeItems,a=s.dataset;\"button\"in a?this._handleButtonAction(o,s):\"item\"in a?this._handleItemAction(o,s,r):\"choice\"in a&&this._handleChoiceAction(o,s)}e.preventDefault()}}},r._onMouseOver=function(e){var t=e.target;t instanceof HTMLElement&&\"choice\"in t.dataset&&this._highlightChoice(t)},r._onClick=function(e){var t=e.target;this.containerOuter.element.contains(t)?this.dropdown.isActive||this.containerOuter.isDisabled?this._isSelectOneElement&&t!==this.input.element&&!this.dropdown.element.contains(t)&&this.hideDropdown():this._isTextElement?document.activeElement!==this.input.element&&this.input.focus():(this.showDropdown(),this.containerOuter.focus()):(this._store.highlightedActiveItems.length>0&&this.unhighlightAll(),this.containerOuter.removeFocusState(),this.hideDropdown(!0))},r._onFocus=function(e){var t,i=this,n=e.target;this.containerOuter.element.contains(n)&&((t={}).text=function(){n===i.input.element&&i.containerOuter.addFocusState()},t[\"select-one\"]=function(){i.containerOuter.addFocusState(),n===i.input.element&&i.showDropdown(!0)},t[\"select-multiple\"]=function(){n===i.input.element&&(i.showDropdown(!0),i.containerOuter.addFocusState())},t)[this.passedElement.element.type]()},r._onBlur=function(e){var t=this,i=e.target;if(this.containerOuter.element.contains(i)&&!this._isScrollingOnIe){var n,s=this._store.activeItems.some((function(e){return e.highlighted}));((n={}).text=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),s&&t.unhighlightAll(),t.hideDropdown(!0))},n[\"select-one\"]=function(){t.containerOuter.removeFocusState(),(i===t.input.element||i===t.containerOuter.element&&!t._canSearch)&&t.hideDropdown(!0)},n[\"select-multiple\"]=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),t.hideDropdown(!0),s&&t.unhighlightAll())},n)[this.passedElement.element.type]()}else this._isScrollingOnIe=!1,this.input.element.focus()},r._onFormReset=function(){this._store.dispatch({type:\"RESET_TO\",state:this._initialState})},r._highlightChoice=function(e){var t=this;void 0===e&&(e=null);var i=Array.from(this.dropdown.element.querySelectorAll(\"[data-choice-selectable]\"));if(i.length){var n=e;Array.from(this.dropdown.element.querySelectorAll(\".\"+this.config.classNames.highlightedState)).forEach((function(e){e.classList.remove(t.config.classNames.highlightedState),e.setAttribute(\"aria-selected\",\"false\")})),n?this._highlightPosition=i.indexOf(n):(n=i.length>this._highlightPosition?i[this._highlightPosition]:i[i.length-1])||(n=i[0]),n.classList.add(this.config.classNames.highlightedState),n.setAttribute(\"aria-selected\",\"true\"),this.passedElement.triggerEvent(B,{el:n}),this.dropdown.isActive&&(this.input.setActiveDescendant(n.id),this.containerOuter.setActiveDescendant(n.id))}},r._addItem=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.choiceId,r=void 0===s?-1:s,o=e.groupId,a=void 0===o?-1:o,c=e.customProperties,l=void 0===c?null:c,h=e.placeholder,u=void 0!==h&&h,d=e.keyCode,p=void 0===d?null:d,m=\"string\"==typeof t?t.trim():t,f=p,v=l,g=this._store.items,_=n||m,b=r||-1,y=a>=0?this._store.getGroupById(a):null,E=g?g.length+1:1;return this.config.prependValue&&(m=this.config.prependValue+m.toString()),this.config.appendValue&&(m+=this.config.appendValue.toString()),this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.choiceId,r=e.groupId,o=e.customProperties,a=e.placeholder,c=e.keyCode;return{type:W,value:t,label:i,id:n,choiceId:s,groupId:r,customProperties:o,placeholder:a,keyCode:c}}({value:m,label:_,id:E,choiceId:b,groupId:a,customProperties:l,placeholder:u,keyCode:f})),this._isSelectOneElement&&this.removeActiveItems(E),this.passedElement.triggerEvent(K,{id:E,value:m,label:_,customProperties:v,groupValue:y&&y.value?y.value:void 0,keyCode:f}),this},r._removeItem=function(e){if(!e||!E(\"Object\",e))return this;var t=e.id,i=e.value,n=e.label,s=e.choiceId,r=e.groupId,o=r>=0?this._store.getGroupById(r):null;return this._store.dispatch(function(e,t){return{type:X,id:e,choiceId:t}}(t,s)),o&&o.value?this.passedElement.triggerEvent(R,{id:t,value:i,label:n,groupValue:o.value}):this.passedElement.triggerEvent(R,{id:t,value:i,label:n}),this},r._addChoice=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.isSelected,r=void 0!==s&&s,o=e.isDisabled,a=void 0!==o&&o,c=e.groupId,l=void 0===c?-1:c,h=e.customProperties,u=void 0===h?null:h,d=e.placeholder,p=void 0!==d&&d,m=e.keyCode,f=void 0===m?null:m;if(null!=t){var v=this._store.choices,g=n||t,_=v?v.length+1:1,b=this._baseId+\"-\"+this._idNames.itemChoice+\"-\"+_;this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.groupId,r=e.disabled,o=e.elementId,a=e.customProperties,c=e.placeholder,l=e.keyCode;return{type:V,value:t,label:i,id:n,groupId:s,disabled:r,elementId:o,customProperties:a,placeholder:c,keyCode:l}}({id:_,groupId:l,elementId:b,value:t,label:g,disabled:a,customProperties:u,placeholder:p,keyCode:f})),r&&this._addItem({value:t,label:g,choiceId:_,customProperties:u,placeholder:p,keyCode:f})}},r._addGroup=function(e){var t=this,i=e.group,n=e.id,s=e.valueKey,r=void 0===s?\"value\":s,o=e.labelKey,a=void 0===o?\"label\":o,c=E(\"Object\",i)?i.choices:Array.from(i.getElementsByTagName(\"OPTION\")),l=n||Math.floor((new Date).valueOf()*Math.random()),h=!!i.disabled&&i.disabled;c?(this._store.dispatch(_e({value:i.label,id:l,active:!0,disabled:h})),c.forEach((function(e){var i=e.disabled||e.parentNode&&e.parentNode.disabled;t._addChoice({value:e[r],label:E(\"Object\",e)?e[a]:e.innerHTML,isSelected:e.selected,isDisabled:i,groupId:l,customProperties:e.customProperties,placeholder:e.placeholder})}))):this._store.dispatch(_e({value:i.label,id:i.id,active:!1,disabled:i.disabled}))},r._getTemplate=function(e){var t;if(!e)return null;for(var i=this.config.classNames,n=arguments.length,s=new Array(n>1?n-1:0),r=1;r<n;r++)s[r-1]=arguments[r];return(t=this._templates[e]).call.apply(t,[this,i].concat(s))},r._createTemplates=function(){var e=this.config.callbackOnCreateTemplates,t={};e&&\"function\"==typeof e&&(t=e.call(this,S)),this._templates=o()(fe,t)},r._createElements=function(){this.containerOuter=new re({element:this._getTemplate(\"containerOuter\",this._direction,this._isSelectElement,this._isSelectOneElement,this.config.searchEnabled,this.passedElement.element.type),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.containerInner=new re({element:this._getTemplate(\"containerInner\"),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.input=new ae({element:this._getTemplate(\"input\",this._placeholderValue),classNames:this.config.classNames,type:this.passedElement.element.type,preventPaste:!this.config.paste}),this.choiceList=new ce({element:this._getTemplate(\"choiceList\",this._isSelectOneElement)}),this.itemList=new ce({element:this._getTemplate(\"itemList\",this._isSelectOneElement)}),this.dropdown=new k({element:this._getTemplate(\"dropdown\"),classNames:this.config.classNames,type:this.passedElement.element.type})},r._createStructure=function(){this.passedElement.conceal(),this.containerInner.wrap(this.passedElement.element),this.containerOuter.wrap(this.containerInner.element),this._isSelectOneElement?this.input.placeholder=this.config.searchPlaceholderValue||\"\":this._placeholderValue&&(this.input.placeholder=this._placeholderValue,this.input.setWidth()),this.containerOuter.element.appendChild(this.containerInner.element),this.containerOuter.element.appendChild(this.dropdown.element),this.containerInner.element.appendChild(this.itemList.element),this._isTextElement||this.dropdown.element.appendChild(this.choiceList.element),this._isSelectOneElement?this.config.searchEnabled&&this.dropdown.element.insertBefore(this.input.element,this.dropdown.element.firstChild):this.containerInner.element.appendChild(this.input.element),this._isSelectElement&&(this._highlightPosition=0,this._isSearching=!1,this._startLoading(),this._presetGroups.length?this._addPredefinedGroups(this._presetGroups):this._addPredefinedChoices(this._presetChoices),this._stopLoading()),this._isTextElement&&this._addPredefinedItems(this._presetItems)},r._addPredefinedGroups=function(e){var t=this,i=this.passedElement.placeholderOption;i&&\"SELECT\"===i.parentNode.tagName&&this._addChoice({value:i.value,label:i.innerHTML,isSelected:i.selected,isDisabled:i.disabled,placeholder:!0}),e.forEach((function(e){return t._addGroup({group:e,id:e.id||null})}))},r._addPredefinedChoices=function(e){var t=this;this.config.shouldSort&&e.sort(this.config.sorter);var i=e.some((function(e){return e.selected})),n=e.findIndex((function(e){return void 0===e.disabled||!e.disabled}));e.forEach((function(e,s){var r=e.value,o=e.label,a=e.customProperties,c=e.placeholder;if(t._isSelectElement)if(e.choices)t._addGroup({group:e,id:e.id||null});else{var l=!(!t._isSelectOneElement||i||s!==n)||e.selected,h=e.disabled;t._addChoice({value:r,label:o,isSelected:l,isDisabled:h,customProperties:a,placeholder:c})}else t._addChoice({value:r,label:o,isSelected:e.selected,isDisabled:e.disabled,customProperties:a,placeholder:c})}))},r._addPredefinedItems=function(e){var t=this;e.forEach((function(e){\"object\"==typeof e&&e.value&&t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}),\"string\"==typeof e&&t._addItem({value:e})}))},r._setChoiceOrItem=function(e){var t=this;({object:function(){e.value&&(t._isTextElement?t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}):t._addChoice({value:e.value,label:e.label,isSelected:!0,isDisabled:!1,customProperties:e.customProperties,placeholder:e.placeholder}))},string:function(){t._isTextElement?t._addItem({value:e}):t._addChoice({value:e,label:e,isSelected:!0,isDisabled:!1})}})[y(e).toLowerCase()]()},r._findAndSelectChoiceByValue=function(e){var t=this,i=this._store.choices.find((function(i){return t.config.valueComparer(i.value,e)}));i&&!i.selected&&this._addItem({value:i.value,label:i.label,choiceId:i.id,groupId:i.groupId,customProperties:i.customProperties,placeholder:i.placeholder,keyCode:i.keyCode})},r._generatePlaceholderValue=function(){if(this._isSelectElement){var e=this.passedElement.placeholderOption;return!!e&&e.text}var t=this.config,i=t.placeholder,n=t.placeholderValue,s=this.passedElement.element.dataset;if(i){if(n)return n;if(s.placeholder)return s.placeholder}return!1},n}();t.default=Se}]).default},\"object\"==typeof i&&\"object\"==typeof t?t.exports=s():\"function\"==typeof define&&define.amd?define([],s):\"object\"==typeof i?i.Choices=s():n.Choices=s()},\n      440: function _(n,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default=\"\\n.bk-root {\\n  /*===============================\\n=            Choices            =\\n===============================*/\\n  /*=====  End of Choices  ======*/\\n}\\n.bk-root .choices {\\n  position: relative;\\n  margin-bottom: 24px;\\n  font-size: 16px;\\n}\\n.bk-root .choices:focus {\\n  outline: none;\\n}\\n.bk-root .choices:last-child {\\n  margin-bottom: 0;\\n}\\n.bk-root .choices.is-disabled .choices__inner,\\n.bk-root .choices.is-disabled .choices__input {\\n  background-color: #eaeaea;\\n  cursor: not-allowed;\\n  -webkit-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n}\\n.bk-root .choices.is-disabled .choices__item {\\n  cursor: not-allowed;\\n}\\n.bk-root .choices [hidden] {\\n  display: none !important;\\n}\\n.bk-root .choices[data-type*='select-one'] {\\n  cursor: pointer;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__inner {\\n  padding-bottom: 7.5px;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__input {\\n  display: block;\\n  width: 100%;\\n  padding: 10px;\\n  border-bottom: 1px solid #dddddd;\\n  background-color: #ffffff;\\n  margin: 0;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__button {\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n  padding: 0;\\n  background-size: 8px;\\n  position: absolute;\\n  top: 50%;\\n  right: 0;\\n  margin-top: -10px;\\n  margin-right: 25px;\\n  height: 20px;\\n  width: 20px;\\n  border-radius: 10em;\\n  opacity: 0.5;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__button:hover,\\n.bk-root .choices[data-type*='select-one'] .choices__button:focus {\\n  opacity: 1;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__button:focus {\\n  box-shadow: 0px 0px 0px 2px #00bcd4;\\n}\\n.bk-root .choices[data-type*='select-one'] .choices__item[data-value=''] .choices__button {\\n  display: none;\\n}\\n.bk-root .choices[data-type*='select-one']:after {\\n  content: '';\\n  height: 0;\\n  width: 0;\\n  border-style: solid;\\n  border-color: #333333 transparent transparent transparent;\\n  border-width: 5px;\\n  position: absolute;\\n  right: 11.5px;\\n  top: 50%;\\n  margin-top: -2.5px;\\n  pointer-events: none;\\n}\\n.bk-root .choices[data-type*='select-one'].is-open:after {\\n  border-color: transparent transparent #333333 transparent;\\n  margin-top: -7.5px;\\n}\\n.bk-root .choices[data-type*='select-one'][dir='rtl']:after {\\n  left: 11.5px;\\n  right: auto;\\n}\\n.bk-root .choices[data-type*='select-one'][dir='rtl'] .choices__button {\\n  right: auto;\\n  left: 0;\\n  margin-left: 25px;\\n  margin-right: 0;\\n}\\n.bk-root .choices[data-type*='select-multiple'] .choices__inner,\\n.bk-root .choices[data-type*='text'] .choices__inner {\\n  cursor: text;\\n}\\n.bk-root .choices[data-type*='select-multiple'] .choices__button,\\n.bk-root .choices[data-type*='text'] .choices__button {\\n  position: relative;\\n  display: inline-block;\\n  margin-top: 0;\\n  margin-right: -4px;\\n  margin-bottom: 0;\\n  margin-left: 8px;\\n  padding-left: 16px;\\n  border-left: 1px solid #008fa1;\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n  background-size: 8px;\\n  width: 8px;\\n  line-height: 1;\\n  opacity: 0.75;\\n  border-radius: 0;\\n}\\n.bk-root .choices[data-type*='select-multiple'] .choices__button:hover,\\n.bk-root .choices[data-type*='select-multiple'] .choices__button:focus,\\n.bk-root .choices[data-type*='text'] .choices__button:hover,\\n.bk-root .choices[data-type*='text'] .choices__button:focus {\\n  opacity: 1;\\n}\\n.bk-root .choices__inner {\\n  display: inline-block;\\n  vertical-align: top;\\n  width: 100%;\\n  background-color: #f9f9f9;\\n  padding: 7.5px 7.5px 3.75px;\\n  border: 1px solid #dddddd;\\n  border-radius: 2.5px;\\n  font-size: 14px;\\n  min-height: 44px;\\n  overflow: hidden;\\n}\\n.bk-root .is-focused .choices__inner,\\n.bk-root .is-open .choices__inner {\\n  border-color: #b7b7b7;\\n}\\n.bk-root .is-open .choices__inner {\\n  border-radius: 2.5px 2.5px 0 0;\\n}\\n.bk-root .is-flipped.is-open .choices__inner {\\n  border-radius: 0 0 2.5px 2.5px;\\n}\\n.bk-root .choices__list {\\n  margin: 0;\\n  padding-left: 0;\\n  list-style: none;\\n}\\n.bk-root .choices__list--single {\\n  display: inline-block;\\n  padding: 4px 16px 4px 4px;\\n  width: 100%;\\n}\\n.bk-root [dir='rtl'] .choices__list--single {\\n  padding-right: 4px;\\n  padding-left: 16px;\\n}\\n.bk-root .choices__list--single .choices__item {\\n  width: 100%;\\n}\\n.bk-root .choices__list--multiple {\\n  display: inline;\\n}\\n.bk-root .choices__list--multiple .choices__item {\\n  display: inline-block;\\n  vertical-align: middle;\\n  border-radius: 20px;\\n  padding: 4px 10px;\\n  font-size: 12px;\\n  font-weight: 500;\\n  margin-right: 3.75px;\\n  margin-bottom: 3.75px;\\n  background-color: #00bcd4;\\n  border: 1px solid #00a5bb;\\n  color: #ffffff;\\n  word-break: break-all;\\n  box-sizing: border-box;\\n}\\n.bk-root .choices__list--multiple .choices__item[data-deletable] {\\n  padding-right: 5px;\\n}\\n.bk-root [dir='rtl'] .choices__list--multiple .choices__item {\\n  margin-right: 0;\\n  margin-left: 3.75px;\\n}\\n.bk-root .choices__list--multiple .choices__item.is-highlighted {\\n  background-color: #00a5bb;\\n  border: 1px solid #008fa1;\\n}\\n.bk-root .is-disabled .choices__list--multiple .choices__item {\\n  background-color: #aaaaaa;\\n  border: 1px solid #919191;\\n}\\n.bk-root .choices__list--dropdown {\\n  visibility: hidden;\\n  z-index: 1;\\n  position: absolute;\\n  width: 100%;\\n  background-color: #ffffff;\\n  border: 1px solid #dddddd;\\n  top: 100%;\\n  margin-top: -1px;\\n  border-bottom-left-radius: 2.5px;\\n  border-bottom-right-radius: 2.5px;\\n  overflow: hidden;\\n  word-break: break-all;\\n  will-change: visibility;\\n}\\n.bk-root .choices__list--dropdown.is-active {\\n  visibility: visible;\\n}\\n.bk-root .is-open .choices__list--dropdown {\\n  border-color: #b7b7b7;\\n}\\n.bk-root .is-flipped .choices__list--dropdown {\\n  top: auto;\\n  bottom: 100%;\\n  margin-top: 0;\\n  margin-bottom: -1px;\\n  border-radius: 0.25rem 0.25rem 0 0;\\n}\\n.bk-root .choices__list--dropdown .choices__list {\\n  position: relative;\\n  max-height: 300px;\\n  overflow: auto;\\n  -webkit-overflow-scrolling: touch;\\n  will-change: scroll-position;\\n}\\n.bk-root .choices__list--dropdown .choices__item {\\n  position: relative;\\n  padding: 10px;\\n  font-size: 14px;\\n}\\n.bk-root [dir='rtl'] .choices__list--dropdown .choices__item {\\n  text-align: right;\\n}\\n@media (min-width: 640px) {\\n  .bk-root .choices__list--dropdown .choices__item--selectable {\\n    padding-right: 100px;\\n  }\\n  .bk-root .choices__list--dropdown .choices__item--selectable:after {\\n    content: attr(data-select-text);\\n    font-size: 12px;\\n    opacity: 0;\\n    position: absolute;\\n    right: 10px;\\n    top: 50%;\\n    transform: translateY(-50%);\\n  }\\n  .bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable {\\n    text-align: right;\\n    padding-left: 100px;\\n    padding-right: 10px;\\n  }\\n  .bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable:after {\\n    right: auto;\\n    left: 10px;\\n  }\\n}\\n.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted {\\n  background-color: #f2f2f2;\\n}\\n.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted:after {\\n  opacity: 0.5;\\n}\\n.bk-root .choices__item {\\n  cursor: default;\\n}\\n.bk-root .choices__item--selectable {\\n  cursor: pointer;\\n}\\n.bk-root .choices__item--disabled {\\n  cursor: not-allowed;\\n  -webkit-user-select: none;\\n  -ms-user-select: none;\\n  user-select: none;\\n  opacity: 0.5;\\n}\\n.bk-root .choices__heading {\\n  font-weight: 600;\\n  font-size: 12px;\\n  padding: 10px;\\n  border-bottom: 1px solid #f7f7f7;\\n  color: gray;\\n}\\n.bk-root .choices__button {\\n  text-indent: -9999px;\\n  -webkit-appearance: none;\\n  -moz-appearance: none;\\n  appearance: none;\\n  border: 0;\\n  background-color: transparent;\\n  background-repeat: no-repeat;\\n  background-position: center;\\n  cursor: pointer;\\n}\\n.bk-root .choices__button:focus {\\n  outline: none;\\n}\\n.bk-root .choices__input {\\n  display: inline-block;\\n  vertical-align: baseline;\\n  background-color: #f9f9f9;\\n  font-size: 14px;\\n  margin-bottom: 5px;\\n  border: 0;\\n  border-radius: 0;\\n  max-width: 100%;\\n  padding: 4px 0 4px 2px;\\n}\\n.bk-root .choices__input:focus {\\n  outline: 0;\\n}\\n.bk-root [dir='rtl'] .choices__input {\\n  padding-right: 2px;\\n  padding-left: 0;\\n}\\n.bk-root .choices__placeholder {\\n  opacity: 0.5;\\n}\\n.bk-root .choices {\\n  width: 100%;\\n}\\n.bk-root .choices {\\n  box-sizing: border-box;\\n}\\n.bk-root .choices *,\\n.bk-root .choices *:before,\\n.bk-root .choices *:after {\\n  box-sizing: inherit;\\n}\\n.bk-root .choices__inner .choices__item.light {\\n  background-color: rgba(0, 126, 255, 0.08);\\n  border-radius: 5px;\\n  border: 1px solid rgba(0, 126, 255, 0.24);\\n  color: #007eff;\\n}\\n.bk-root .choices__inner .choices__item.solid {\\n  background-color: #1f77b4;\\n  border: none;\\n  border-radius: 5px;\\n  color: white;\\n}\\n.bk-root .choices__inner .choices__item.solid .is-highlighted {\\n  background-color: #1f77b4;\\n  border: none;\\n}\\n.bk-root .choices__input {\\n  background-color: transparent;\\n}\\n.bk-root .choices__inner {\\n  background: transparent;\\n  border: 1px solid darkgray;\\n  border-radius: 5px;\\n  min-height: unset;\\n}\\n.bk-root .choices__list {\\n  white-space: initial;\\n}\\n.bk-root .choices[data-type*=select-multiple] .choices__button.light {\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDA3ZWZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n}\\n.bk-root .choices[data-type*=select-multiple] .choices__button.solid {\\n  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);\\n  border-left: 1px solid white;\\n  opacity: 1;\\n}\\n\"},\n      441: function _(e,t,l){Object.defineProperty(l,\"__esModule\",{value:!0});const i=e(1),n=i.__importStar(e(188)),s=e(410),u=e(72),h=e(11),o=i.__importStar(e(18)),a=e(442),r=e(412),d=/^[-+]?\\d*$/,p=/^[-+]?\\d*\\.?\\d*(?:(?:\\d|\\d.)[eE][-+]?)*\\d*$/;class _ extends s.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.value.change,()=>{this.input_el.value=this.format_value,this.old_value=this.input_el.value}),this.connect(this.model.properties.low.change,()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&h.assert(t<=l,\"Invalid bounds, low must be inferior to high\"),null!=e&&null!=t&&(this.model.value=Math.max(e,t))}),this.connect(this.model.properties.high.change,()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&h.assert(l>=t,\"Invalid bounds, high must be superior to low\"),null!=e&&null!=l&&(this.model.value=Math.min(e,l))}),this.connect(this.model.properties.high.change,()=>this.input_el.placeholder=this.model.placeholder),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled),this.connect(this.model.properties.placeholder.change,()=>this.input_el.placeholder=this.model.placeholder)}get format_value(){return null!=this.model.value?this.model.pretty(this.model.value):\"\"}_set_input_filter(e){this.input_el.addEventListener(\"input\",()=>{const{selectionStart:t,selectionEnd:l}=this.input_el;if(e(this.input_el.value))this.old_value=this.input_el.value;else{const e=this.old_value.length-this.input_el.value.length;this.input_el.value=this.old_value,t&&l&&this.input_el.setSelectionRange(t-1,l+e)}})}render(){super.render(),this.input_el=u.input({type:\"text\",class:r.bk_input,name:this.model.name,value:this.format_value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.old_value=this.format_value,this.set_input_filter(),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.input_el.addEventListener(\"focusout\",()=>this.input_el.value=this.format_value),this.group_el.appendChild(this.input_el)}set_input_filter(){\"int\"==this.model.mode?this._set_input_filter(e=>d.test(e)):\"float\"==this.model.mode&&this._set_input_filter(e=>p.test(e))}bound_value(e){let t=e;const{low:l,high:i}=this.model;return t=null!=l?Math.max(l,t):t,t=null!=i?Math.min(i,t):t,t}get value(){let e=\"\"!==this.input_el.value?Number(this.input_el.value):null;return null!=e&&(e=this.bound_value(e)),e}change_input(){null==this.value?this.model.value=null:Number.isNaN(this.value)||(this.model.value=this.value)}}l.NumericInputView=_,_.__name__=\"NumericInputView\";class m extends s.InputWidget{constructor(e){super(e)}static init_NumericInput(){this.prototype.default_view=_,this.define({value:[o.Number,null],placeholder:[o.String,\"\"],mode:[o.Any,\"int\"],format:[o.Any],low:[o.Number,null],high:[o.Number,null]})}_formatter(e,t){return a.isString(t)?n.format(e,t):t.doFormat([e],{loc:0})[0]}pretty(e){return null!=this.format?this._formatter(e,this.format):\"\"+e}}l.NumericInput=m,m.__name__=\"NumericInput\",m.init_NumericInput()},\n      442: function _(t,_,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=t(1);e.__exportStar(t(13),r),e.__exportStar(t(9),r),e.__exportStar(t(29),r),e.__exportStar(t(443),r),e.__exportStar(t(8),r),e.__exportStar(t(25),r)},\n      443: function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});class n{constructor(e){this.seed=e%2147483647,this.seed<=0&&(this.seed+=2147483646)}integer(){return this.seed=48271*this.seed%2147483647,this.seed}float(){return(this.integer()-1)/2147483646}floats(e){const t=new Array(e);for(let s=0;s<e;s++)t[s]=this.float();return t}}s.Random=n,n.__name__=\"Random\",s.random=new n(Date.now())},\n      444: function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=e(430),i=e(72);class n extends s.MarkupView{render(){super.render();const e=i.pre({style:{overflow:\"auto\"}},this.model.text);this.markup_el.appendChild(e)}}r.PreTextView=n,n.__name__=\"PreTextView\";class _ extends s.Markup{constructor(e){super(e)}static init_PreText(){this.prototype.default_view=n}}r.PreText=_,_.__name__=\"PreText\",_.init_PreText()},\n      445: function _(t,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});const i=t(1),a=t(415),n=t(72),u=i.__importStar(t(18)),s=t(173);class _ extends a.ButtonGroupView{change_active(t){this.model.active!==t&&(this.model.active=t)}_update_active(){const{active:t}=this.model;this._buttons.forEach((o,e)=>{n.classes(o).toggle(s.bk_active,t===e)})}}e.RadioButtonGroupView=_,_.__name__=\"RadioButtonGroupView\";class c extends a.ButtonGroup{constructor(t){super(t)}static init_RadioButtonGroup(){this.prototype.default_view=_,this.define({active:[u.Any,null]})}}e.RadioButtonGroup=c,c.__name__=\"RadioButtonGroup\",c.init_RadioButtonGroup()},\n      446: function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const n=e(1),a=e(72),s=e(29),o=n.__importStar(e(18)),d=e(417),l=e(173),p=e(412);class r extends d.InputGroupView{render(){super.render();const e=a.div({class:[p.bk_input_group,this.model.inline?l.bk_inline:null]});this.el.appendChild(e);const i=s.uniqueId(),{active:t,labels:n}=this.model;this._inputs=[];for(let s=0;s<n.length;s++){const o=a.input({type:\"radio\",name:i,value:\"\"+s});o.addEventListener(\"change\",()=>this.change_active(s)),this._inputs.push(o),this.model.disabled&&(o.disabled=!0),s==t&&(o.checked=!0);const d=a.label({},o,a.span({},n[s]));e.appendChild(d)}}change_active(e){this.model.active=e}}t.RadioGroupView=r,r.__name__=\"RadioGroupView\";class u extends d.InputGroup{constructor(e){super(e)}static init_RadioGroup(){this.prototype.default_view=r,this.define({active:[o.Number],labels:[o.Array,[]],inline:[o.Boolean,!1]})}}t.RadioGroup=u,u.__name__=\"RadioGroup\",u.init_RadioGroup()},\n      447: function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1).__importStar(e(188)),a=e(423),n=e(8);class o extends a.AbstractRangeSliderView{}r.RangeSliderView=o,o.__name__=\"RangeSliderView\";class s extends a.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_RangeSlider(){this.prototype.default_view=o,this.override({format:\"0[.]00\"})}_formatter(e,t){return n.isString(t)?i.format(e,t):t.doFormat([e],{loc:0})[0]}}r.RangeSlider=s,s.__name__=\"RangeSlider\",s.init_RangeSlider()},\n      448: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(72),l=e(8),o=e(13),p=n.__importStar(e(18)),u=e(410),a=e(412);class _ extends u.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,options:t}=this.model.properties;this.on_change(e,()=>{this._update_value()}),this.on_change(t,()=>{s.empty(this.input_el),s.append(this.input_el,...this.options_el())})}options_el(){function e(e){return e.map(e=>{let t,i;return l.isString(e)?t=i=e:[t,i]=e,s.option({value:t},i)})}const{options:t}=this.model;return l.isArray(t)?e(t):o.entries(t).map(([t,i])=>s.optgroup({label:t},e(i)))}render(){super.render(),this.input_el=s.select({class:a.bk_input,name:this.model.name,disabled:this.model.disabled},this.options_el()),this._update_value(),this.input_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.input_el)}change_input(){const e=this.input_el.value;this.model.value=e,super.change_input()}_update_value(){const{value:e}=this.model;null!=e&&0!=e.length&&(this.input_el.value=this.model.value)}}i.SelectView=_,_.__name__=\"SelectView\";class h extends u.InputWidget{constructor(e){super(e)}static init_Select(){this.prototype.default_view=_,this.define({value:[p.String,\"\"],options:[p.Any,[]]})}}i.Select=h,h.__name__=\"Select\",h.init_Select()},\n      449: function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const i=e(1).__importStar(e(188)),o=e(423),s=e(8);class _ extends o.AbstractSliderView{}r.SliderView=_,_.__name__=\"SliderView\";class a extends o.AbstractSlider{constructor(e){super(e),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_Slider(){this.prototype.default_view=_,this.override({format:\"0[.]00\"})}_formatter(e,t){return s.isString(t)?i.format(e,t):t.doFormat([e],{loc:0})[0]}}r.Slider=a,a.__name__=\"Slider\",a.init_Slider()},\n      450: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(1),s=e(441),l=n.__importStar(e(18)),r=e(72),{min:o,max:_,floor:a,abs:h}=Math;function u(e){return a(e)!==e?e.toFixed(16).replace(/0+$/,\"\").split(\".\")[1].length:0}class p extends s.NumericInputView{*buttons(){yield this.btn_up_el,yield this.btn_down_el}initialize(){super.initialize(),this._interval=200}connect_signals(){super.connect_signals();const e=this.model.properties;this.on_change(e.disabled,()=>{for(const e of this.buttons())r.toggle_attribute(e,\"disabled\",this.model.disabled)})}render(){super.render(),this.wrapper_el=r.div({class:\"bk-spin-wrapper\"}),this.group_el.replaceChild(this.wrapper_el,this.input_el),this.btn_up_el=r.button({class:\"bk-spin-btn bk-spin-btn-up\"}),this.btn_down_el=r.button({class:\"bk-spin-btn bk-spin-btn-down\"}),this.wrapper_el.appendChild(this.input_el),this.wrapper_el.appendChild(this.btn_up_el),this.wrapper_el.appendChild(this.btn_down_el);for(const e of this.buttons())r.toggle_attribute(e,\"disabled\",this.model.disabled),e.addEventListener(\"mousedown\",e=>this._btn_mouse_down(e)),e.addEventListener(\"mouseup\",()=>this._btn_mouse_up()),e.addEventListener(\"mouseleave\",()=>this._btn_mouse_leave());this.input_el.addEventListener(\"keydown\",e=>this._input_key_down(e)),this.input_el.addEventListener(\"keyup\",()=>this.model.value_throttled=this.model.value),this.input_el.addEventListener(\"wheel\",e=>this._input_mouse_wheel(e)),this.input_el.addEventListener(\"wheel\",function(e,t,i=!1){let n;return function(...s){const l=this,r=i&&void 0===n;void 0!==n&&clearTimeout(n),n=setTimeout((function(){n=void 0,i||e.apply(l,s)}),t),r&&e.apply(l,s)}}(()=>{this.model.value_throttled=this.model.value},this.model.wheel_wait,!1))}get precision(){const{low:e,high:t,step:i}=this.model;return _(...[e,t,i].map(h).reduce((e,t)=>(null!=t&&e.push(t),e),[]).map(u))}_start_incrementation(e){clearInterval(this._interval_handle),this._counter=0;const{step:t}=this.model,i=e=>{if(this._counter+=1,this._counter%5==0){const t=Math.floor(this._counter/5);t<10?(clearInterval(this._interval_handle),this._interval_handle=setInterval(()=>i(e),this._interval/(t+1))):t>=10&&t<=13&&(clearInterval(this._interval_handle),this._interval_handle=setInterval(()=>i(2*e),this._interval/10))}this.increment(e)};this._interval_handle=setInterval(()=>i(e*t),this._interval)}_stop_incrementation(){clearInterval(this._interval_handle),this.model.value_throttled=this.model.value}_btn_mouse_down(e){e.preventDefault();const t=e.currentTarget===this.btn_up_el?1:-1;this.increment(t*this.model.step),this.input_el.focus(),this._start_incrementation(t)}_btn_mouse_up(){this._stop_incrementation()}_btn_mouse_leave(){this._stop_incrementation()}_input_mouse_wheel(e){if(document.activeElement===this.input_el){e.preventDefault();const t=e.deltaY>0?-1:1;this.increment(t*this.model.step)}}_input_key_down(e){switch(e.keyCode){case r.Keys.Up:return e.preventDefault(),this.increment(this.model.step);case r.Keys.Down:return e.preventDefault(),this.increment(-this.model.step);case r.Keys.PageUp:return e.preventDefault(),this.increment(this.model.page_step_multiplier*this.model.step);case r.Keys.PageDown:return e.preventDefault(),this.increment(-this.model.page_step_multiplier*this.model.step)}}adjust_to_precision(e){return this.bound_value(Number(e.toFixed(this.precision)))}increment(e){const{low:t,high:i}=this.model;null==this.model.value?e>0?this.model.value=null!=t?t:null!=i?o(0,i):0:e<0&&(this.model.value=null!=i?i:null!=t?_(t,0):0):this.model.value=this.adjust_to_precision(this.model.value+e)}change_input(){super.change_input(),this.model.value_throttled=this.model.value}}i.SpinnerView=p,p.__name__=\"SpinnerView\";class d extends s.NumericInput{constructor(e){super(e)}static init_Spinner(){this.prototype.default_view=p,this.define({value_throttled:[l.Number,null],step:[l.Number,1],page_step_multiplier:[l.Number,10],wheel_wait:[l.Number,100]}),this.override({mode:\"float\"})}}i.Spinner=d,d.__name__=\"Spinner\",d.init_Spinner()},\n      451: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),n=e(410),l=e(72),h=s.__importStar(e(18)),o=e(412);class a extends n.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,()=>this.input_el.name=this.model.name||\"\"),this.connect(this.model.properties.value.change,()=>this.input_el.value=this.model.value),this.connect(this.model.properties.disabled.change,()=>this.input_el.disabled=this.model.disabled),this.connect(this.model.properties.placeholder.change,()=>this.input_el.placeholder=this.model.placeholder),this.connect(this.model.properties.rows.change,()=>this.input_el.rows=this.model.rows),this.connect(this.model.properties.cols.change,()=>this.input_el.cols=this.model.cols),this.connect(this.model.properties.max_length.change,()=>this.input_el.maxLength=this.model.max_length)}render(){super.render(),this.input_el=l.textarea({class:o.bk_input,name:this.model.name,disabled:this.model.disabled,placeholder:this.model.placeholder,cols:this.model.cols,rows:this.model.rows,maxLength:this.model.max_length}),this.input_el.textContent=this.model.value,this.input_el.addEventListener(\"change\",()=>this.change_input()),this.group_el.appendChild(this.input_el)}change_input(){this.model.value=this.input_el.value,super.change_input()}}i.TextAreaInputView=a,a.__name__=\"TextAreaInputView\";class p extends n.InputWidget{constructor(e){super(e)}static init_TextAreaInput(){this.prototype.default_view=a,this.define({value:[h.String,\"\"],value_input:[h.String,\"\"],placeholder:[h.String,\"\"],cols:[h.Number,20],rows:[h.Number,2],max_length:[h.Number,500]})}}i.TextAreaInput=p,p.__name__=\"TextAreaInput\",p.init_TextAreaInput()},\n      452: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),c=e(404),o=e(72),a=s.__importStar(e(18)),n=e(173);class l extends c.AbstractButtonView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,()=>this._update_active())}render(){super.render(),this._update_active()}click(){this.model.active=!this.model.active,super.click()}_update_active(){o.classes(this.button_el).toggle(n.bk_active,this.model.active)}}i.ToggleView=l,l.__name__=\"ToggleView\";class _ extends c.AbstractButton{constructor(e){super(e)}static init_Toggle(){this.prototype.default_view=l,this.define({active:[a.Boolean,!1]}),this.override({label:\"Toggle\"})}}i.Toggle=_,_.__name__=\"Toggle\",_.init_Toggle()},\n      }, 402, {\"models/widgets/main\":402,\"models/widgets/index\":403,\"models/widgets/abstract_button\":404,\"models/widgets/control\":405,\"models/widgets/widget\":472,\"models/widgets/abstract_icon\":407,\"models/widgets/autocomplete_input\":408,\"models/widgets/text_input\":409,\"models/widgets/input_widget\":410,\"styles/widgets/inputs.css\":411,\"styles/widgets/inputs\":412,\"models/widgets/button\":413,\"models/widgets/checkbox_button_group\":414,\"models/widgets/button_group\":415,\"models/widgets/checkbox_group\":416,\"models/widgets/input_group\":417,\"models/widgets/color_picker\":418,\"models/widgets/date_picker\":419,\"styles/widgets/flatpickr.css\":421,\"models/widgets/date_range_slider\":422,\"models/widgets/abstract_slider\":423,\"styles/widgets/sliders\":425,\"styles/widgets/nouislider.css\":426,\"styles/widgets/sliders.css\":427,\"models/widgets/date_slider\":428,\"models/widgets/div\":429,\"models/widgets/markup\":430,\"styles/clearfix\":431,\"styles/clearfix.css\":432,\"models/widgets/dropdown\":433,\"models/widgets/file_input\":434,\"models/widgets/multiselect\":435,\"models/widgets/paragraph\":436,\"models/widgets/password_input\":437,\"models/widgets/multichoice\":438,\"styles/widgets/choices.css\":440,\"models/widgets/numeric_input\":441,\"api/linalg\":442,\"core/util/random\":443,\"models/widgets/pretext\":444,\"models/widgets/radio_button_group\":445,\"models/widgets/radio_group\":446,\"models/widgets/range_slider\":447,\"models/widgets/selectbox\":448,\"models/widgets/slider\":449,\"models/widgets/spinner\":450,\"models/widgets/textarea_input\":451,\"models/widgets/toggle\":452}, {});\n      })\n\n\n      /* END bokeh-widgets.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-tables.min.js */\n      /*!\n       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n       * All rights reserved.\n       * \n       * Redistribution and use in source and binary forms, with or without modification,\n       * are permitted provided that the following conditions are met:\n       * \n       * Redistributions of source code must retain the above copyright notice,\n       * this list of conditions and the following disclaimer.\n       * \n       * Redistributions in binary form must reproduce the above copyright notice,\n       * this list of conditions and the following disclaimer in the documentation\n       * and/or other materials provided with the distribution.\n       * \n       * Neither the name of Anaconda nor the names of any contributors\n       * may be used to endorse or promote products derived from this software\n       * without specific prior written permission.\n       * \n       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n       * THE POSSIBILITY OF SUCH DAMAGE.\n      */\n      (function(root, factory) {\n        factory(root[\"Bokeh\"], \"2.2.1\");\n      })(this, function(Bokeh, version) {\n        var define;\n        return (function(modules, entry, aliases, externals) {\n          const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n          if (bokeh != null) {\n            return bokeh.register_plugin(modules, entry, aliases);\n          } else {\n            throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n          }\n        })\n      ({\n      453: function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const r=e(1).__importStar(e(454));o.Tables=r;e(7).register_models(r)},\n      454: function _(a,g,r){Object.defineProperty(r,\"__esModule\",{value:!0});const e=a(1);e.__exportStar(a(455),r),e.__exportStar(a(475),r);var t=a(456);r.DataTable=t.DataTable;var o=a(474);r.TableColumn=o.TableColumn;var n=a(473);r.TableWidget=n.TableWidget;var u=a(481);r.AvgAggregator=u.AvgAggregator,r.MinAggregator=u.MinAggregator,r.MaxAggregator=u.MaxAggregator,r.SumAggregator=u.SumAggregator;var l=a(482);r.GroupingInfo=l.GroupingInfo,r.DataCube=l.DataCube},\n      455: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1).__importStar(e(18)),r=e(72),a=e(78),n=e(81),l=e(456),u=e(478);class d extends a.DOMView{constructor(e){const{model:t,parent:i}=e.column;super(Object.assign({model:t,parent:i},e)),this.args=e,this.initialize(),this.render()}get emptyValue(){return null}initialize(){super.initialize(),this.inputEl=this._createInput(),this.defaultValue=null}async lazy_initialize(){throw new Error(\"unsupported\")}css_classes(){return super.css_classes().concat(u.bk_cell_editor)}render(){super.render(),this.args.container.append(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()}renderEditor(){}disableNavigation(){this.inputEl.addEventListener(\"keydown\",e=>{switch(e.keyCode){case r.Keys.Left:case r.Keys.Right:case r.Keys.Up:case r.Keys.Down:case r.Keys.PageUp:case r.Keys.PageDown:e.stopImmediatePropagation()}})}destroy(){this.remove()}focus(){this.inputEl.focus()}show(){}hide(){}position(){}getValue(){return this.inputEl.value}setValue(e){this.inputEl.value=e}serializeValue(){return this.getValue()}isValueChanged(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue}applyValue(e,t){const i=this.args.grid.getData(),s=i.index.indexOf(e[l.DTINDEX_NAME]);i.setField(s,this.args.column.field,t)}loadValue(e){const t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)}validateValue(e){if(this.args.column.validator){const t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}}validate(){return this.validateValue(this.getValue())}}i.CellEditorView=d,d.__name__=\"CellEditorView\";class o extends n.Model{}i.CellEditor=o,o.__name__=\"CellEditor\";class _ extends d{get emptyValue(){return\"\"}_createInput(){return r.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}}i.StringEditorView=_,_.__name__=\"StringEditorView\";class c extends o{static init_StringEditor(){this.prototype.default_view=_,this.define({completions:[s.Array,[]]})}}i.StringEditor=c,c.__name__=\"StringEditor\",c.init_StringEditor();class p extends d{_createInput(){return r.textarea()}renderEditor(){this.inputEl.focus(),this.inputEl.select()}}i.TextEditorView=p,p.__name__=\"TextEditorView\";class h extends o{static init_TextEditor(){this.prototype.default_view=p}}i.TextEditor=h,h.__name__=\"TextEditor\",h.init_TextEditor();class E extends d{_createInput(){return r.select()}renderEditor(){for(const e of this.model.options)this.inputEl.appendChild(r.option({value:e},e));this.focus()}}i.SelectEditorView=E,E.__name__=\"SelectEditorView\";class V extends o{static init_SelectEditor(){this.prototype.default_view=E,this.define({options:[s.Array,[]]})}}i.SelectEditor=V,V.__name__=\"SelectEditor\",V.init_SelectEditor();class m extends d{_createInput(){return r.input({type:\"text\"})}}i.PercentEditorView=m,m.__name__=\"PercentEditorView\";class f extends o{static init_PercentEditor(){this.prototype.default_view=m}}i.PercentEditor=f,f.__name__=\"PercentEditor\",f.init_PercentEditor();class x extends d{_createInput(){return r.input({type:\"checkbox\"})}renderEditor(){this.focus()}loadValue(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue}serializeValue(){return this.inputEl.checked}}i.CheckboxEditorView=x,x.__name__=\"CheckboxEditorView\";class w extends o{static init_CheckboxEditor(){this.prototype.default_view=x}}i.CheckboxEditor=w,w.__name__=\"CheckboxEditor\",w.init_CheckboxEditor();class g extends d{_createInput(){return r.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){return parseInt(this.getValue(),10)||0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:super.validateValue(e)}}i.IntEditorView=g,g.__name__=\"IntEditorView\";class y extends o{static init_IntEditor(){this.prototype.default_view=g,this.define({step:[s.Number,1]})}}i.IntEditor=y,y.__name__=\"IntEditor\",y.init_IntEditor();class v extends d{_createInput(){return r.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){return parseFloat(this.getValue())||0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:super.validateValue(e)}}i.NumberEditorView=v,v.__name__=\"NumberEditorView\";class b extends o{static init_NumberEditor(){this.prototype.default_view=v,this.define({step:[s.Number,.01]})}}i.NumberEditor=b,b.__name__=\"NumberEditor\",b.init_NumberEditor();class I extends d{_createInput(){return r.input({type:\"text\"})}}i.TimeEditorView=I,I.__name__=\"TimeEditorView\";class N extends o{static init_TimeEditor(){this.prototype.default_view=I}}i.TimeEditor=N,N.__name__=\"TimeEditor\",N.init_TimeEditor();class C extends d{_createInput(){return r.input({type:\"text\"})}get emptyValue(){return new Date}renderEditor(){this.inputEl.focus(),this.inputEl.select()}destroy(){super.destroy()}show(){super.show()}hide(){super.hide()}position(){return super.position()}getValue(){}setValue(e){}}i.DateEditorView=C,C.__name__=\"DateEditorView\";class D extends o{static init_DateEditor(){this.prototype.default_view=C}}i.DateEditor=D,D.__name__=\"DateEditor\",D.init_DateEditor()},\n      456: function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(1),o=e(457),n=e(461),l=e(462),r=e(463),d=e(29),a=e(8),h=e(9),u=e(13),c=e(19),_=e(472),m=e(473),g=e(474),p=e(478),f=s.__importDefault(e(479)),b=s.__importDefault(e(480));i.DTINDEX_NAME=\"__bkdt_internal_index__\",i.AutosizeModes={fit_columns:\"FCV\",fit_viewport:\"FVC\",force_fit:\"LFF\",none:\"NOA\"};class w{constructor(e,t){this.init(e,t)}init(e,t){if(i.DTINDEX_NAME in e.data)throw new Error(`special name ${i.DTINDEX_NAME} cannot be used as a data table column`);this.source=e,this.view=t,this.index=[...this.view.indices]}getLength(){return this.index.length}getItem(e){const t={};for(const i of u.keys(this.source.data))t[i]=this.source.data[i][this.index[e]];return t[i.DTINDEX_NAME]=this.index[e],t}getField(e,t){return t==i.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]}setField(e,t,i){const s=this.index[e];this.source.patch({[t]:[[s,i]]})}getRecords(){return h.range(0,this.getLength()).map(e=>this.getItem(e))}getItems(){return this.getRecords()}slice(e,t,i){return e=null!=e?e:0,t=null!=t?t:this.getLength(),i=null!=i?i:1,h.range(e,t,i).map(e=>this.getItem(e))}sort(e){let t=e.map(e=>[e.sortCol.field,e.sortAsc?1:-1]);0==t.length&&(t=[[i.DTINDEX_NAME,1]]);const s=this.getRecords(),o=this.index.slice();this.index.sort((e,i)=>{for(const[n,l]of t){const t=s[o.indexOf(e)][n],r=s[o.indexOf(i)][n];if(t!==r)return a.isNumber(t)&&a.isNumber(r)?l*(t-r||+isNaN(t)-+isNaN(r)):\"\"+t>\"\"+r?l:-l}return 0})}}i.TableDataProvider=w,w.__name__=\"TableDataProvider\";class x extends _.WidgetView{constructor(){super(...arguments),this._in_selection_update=!1,this._warned_not_reorderable=!1,this._width=null}connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render()),this.connect(this.model.source.streaming,()=>this.updateGrid()),this.connect(this.model.source.patching,()=>this.updateGrid()),this.connect(this.model.source.change,()=>this.updateGrid()),this.connect(this.model.source.properties.data.change,()=>this.updateGrid()),this.connect(this.model.source.selected.change,()=>this.updateSelection()),this.connect(this.model.source.selected.properties.indices.change,()=>this.updateSelection())}remove(){var e;null===(e=this.grid)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),f.default,b.default]}update_position(){super.update_position(),this.grid.resizeCanvas()}after_layout(){super.after_layout(),this.updateLayout(!0,!1)}box_sizing(){const e=super.box_sizing();return\"fit_viewport\"===this.model.autosize_mode&&null!=this._width&&(e.width=this._width),e}updateLayout(e,t){const s=this.autosize;s===i.AutosizeModes.fit_columns||s===i.AutosizeModes.force_fit?(e||this.grid.resizeCanvas(),this.grid.autosizeColumns()):e&&t&&s===i.AutosizeModes.fit_viewport&&this.invalidate_layout()}updateGrid(){if(this.model.view.compute_indices(),this.data.init(this.model.source,this.model.view),this.model.sortable){const e=this.grid.getColumns(),t=this.grid.getSortColumns().map(t=>({sortCol:{field:e[this.grid.getColumnIndex(t.columnId)].field},sortAsc:t.sortAsc}));this.data.sort(t)}this.grid.invalidate(),this.updateLayout(!0,!0)}updateSelection(){if(this._in_selection_update)return;const{selected:e}=this.model.source,t=e.indices.map(e=>this.data.index.indexOf(e)).sort();this._in_selection_update=!0,this.grid.setSelectedRows(t),this._in_selection_update=!1;const i=this.grid.getViewport(),s=this.model.get_scroll_index(i,t);null!=s&&this.grid.scrollRowToTop(s)}newIndexColumn(){return{id:d.uniqueId(),name:this.model.index_header,field:i.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:p.bk_cell_index,headerCssClass:p.bk_header_index}}css_classes(){return super.css_classes().concat(p.bk_data_table)}get autosize(){let e;return e=!0===this.model.fit_columns?i.AutosizeModes.force_fit:!1===this.model.fit_columns?i.AutosizeModes.none:i.AutosizeModes[this.model.autosize_mode],e}render(){var e;const t=this.model.columns.map(e=>Object.assign(Object.assign({},e.toColumn()),{parent:this}));let s=null;if(\"checkbox\"==this.model.selectable&&(s=new n.CheckboxSelectColumn({cssClass:p.bk_cell_select}),t.unshift(s.getColumnDefinition())),null!=this.model.index_position){const e=this.model.index_position,i=this.newIndexColumn();-1==e?t.push(i):e<-1?t.splice(e+1,0,i):t.splice(e,0,i)}let{reorderable:d}=this.model;!d||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(c.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),d=!1);let h=-1,u=!1;const{frozen_rows:_,frozen_columns:m}=this.model,g=null==m?-1:m-1;null!=_&&(u=_<0,h=Math.abs(_));const f={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:d,autosizeColsMode:this.autosize,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:this.model.auto_edit,autoHeight:!1,rowHeight:this.model.row_height,frozenColumn:g,frozenRow:h,frozenBottom:u},b=null!=this.grid;if(this.data=new w(this.model.source,this.model.view),this.grid=new r.Grid(this.el,this.data,t,f),this.autosize==i.AutosizeModes.fit_viewport){this.grid.autosizeColumns();let i=0;for(const s of t)i+=null!==(e=s.width)&&void 0!==e?e:0;this._width=Math.ceil(i)}if(this.grid.onSort.subscribe((e,t)=>{if(!this.model.sortable)return;const i=t.sortCols;null!=i&&(this.data.sort(i),this.grid.invalidate(),this.updateSelection(),this.grid.render(),this.model.header_row||this._hide_header(),this.model.update_sort_columns(i))}),!1!==this.model.selectable){this.grid.setSelectionModel(new o.RowSelectionModel({selectActiveRow:null==s})),null!=s&&this.grid.registerPlugin(s);const e={dataItemColumnValueExtractor(e,t){let i=e[t.field];return a.isString(i)&&(i=i.replace(/\\n/g,\"\\\\n\")),i},includeHeaderWhenCopying:!1};this.grid.registerPlugin(new l.CellExternalCopyManager(e)),this.grid.onSelectedRowsChanged.subscribe((e,t)=>{this._in_selection_update||(this.model.source.selected.indices=t.rows.map(e=>this.data.index[e]))}),this.updateSelection(),this.model.header_row||this._hide_header()}b&&this.updateLayout(b,!1)}_hide_header(){for(const e of this.el.querySelectorAll(\".slick-header-columns\"))e.style.height=\"0px\";this.grid.resizeCanvas()}}i.DataTableView=x,x.__name__=\"DataTableView\";class C extends m.TableWidget{constructor(e){super(e),this._sort_columns=[]}get sort_columns(){return this._sort_columns}static init_DataTable(){this.prototype.default_view=x,this.define(({Array:e,Boolean:t,Int:i,Ref:s,String:o,Enum:n,Or:l,Null:r})=>({autosize_mode:[n(\"fit_columns\",\"fit_viewport\",\"none\",\"force_fit\"),\"force_fit\"],auto_edit:[t,!1],columns:[e(s(g.TableColumn)),[]],fit_columns:[l(t,r),null],frozen_columns:[l(i,r),null],frozen_rows:[l(i,r),null],sortable:[t,!0],reorderable:[t,!0],editable:[t,!1],selectable:[l(t,n(\"checkbox\")),!0],index_position:[l(i,r),0],index_header:[o,\"#\"],index_width:[i,40],scroll_to_selection:[t,!0],header_row:[t,!0],row_height:[i,25]})),this.override({width:600,height:400})}update_sort_columns(e){this._sort_columns=e.map(({sortCol:e,sortAsc:t})=>({field:e.field,sortAsc:t}))}get_scroll_index(e,t){return this.scroll_to_selection&&0!=t.length?h.some(t,t=>e.top<=t&&t<=e.bottom)?null:Math.max(0,Math.min(...t)-1):null}}i.DataTable=C,C.__name__=\"DataTable\",C.init_DataTable()},\n      457: function _(e,t,n){var o=e(458),r=e(460);t.exports={RowSelectionModel:function(e){var t,n,l,i=[],c=this,u=new r.EventHandler,s={selectActiveRow:!0};function a(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function f(e){for(var t=[],n=0;n<e.length;n++)for(var o=e[n].fromRow;o<=e[n].toRow;o++)t.push(o);return t}function h(e){for(var n=[],o=t.getColumns().length-1,l=0;l<e.length;l++)n.push(new r.Range(e[l],0,e[l],o));return n}function w(){return f(i)}function g(e){(i&&0!==i.length||e&&0!==e.length)&&(i=e,c.onSelectedRangesChanged.notify(i))}function v(e,n){l.selectActiveRow&&null!=n.row&&g([new r.Range(n.row,0,n.row,t.getColumns().length-1)])}function p(e){var n=t.getActiveCell();if(t.getOptions().multiSelect&&n&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(e.which==r.keyCode.UP||e.which==r.keyCode.DOWN)){var o=w();o.sort((function(e,t){return e-t})),o.length||(o=[n.row]);var l,i=o[0],c=o[o.length-1];if((l=e.which==r.keyCode.DOWN?n.row<c||i==c?++c:++i:n.row<c?--c:--i)>=0&&l<t.getDataLength())t.scrollRowIntoView(l),g(h(function(e,t){var n,o=[];for(n=e;n<=t;n++)o.push(n);for(n=t;n<e;n++)o.push(n);return o}(i,c)));e.preventDefault(),e.stopPropagation()}}function y(e){var n=t.getCellFromEvent(e);if(!n||!t.canCellBeActive(n.row,n.cell))return!1;if(!t.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var r=f(i),l=o.inArray(n.row,r);if(-1===l&&(e.ctrlKey||e.metaKey))r.push(n.row),t.setActiveCell(n.row,n.cell);else if(-1!==l&&(e.ctrlKey||e.metaKey))r=o.grep(r,(function(e,t){return e!==n.row})),t.setActiveCell(n.row,n.cell);else if(r.length&&e.shiftKey){var c=r.pop(),u=Math.min(n.row,c),s=Math.max(n.row,c);r=[];for(var a=u;a<=s;a++)a!==c&&r.push(a);r.push(c),t.setActiveCell(n.row,n.cell)}return g(h(r)),e.stopImmediatePropagation(),!0}o.extend(this,{getSelectedRows:w,setSelectedRows:function(e){g(h(e))},getSelectedRanges:function(){return i},setSelectedRanges:g,init:function(n){l=o.extend(!0,{},s,e),t=n,u.subscribe(t.onActiveCellChanged,a(v)),u.subscribe(t.onKeyDown,a(p)),u.subscribe(t.onClick,a(y))},destroy:function(){u.unsubscribeAll()},pluginName:\"RowSelectionModel\",onSelectedRangesChanged:new r.Event})}}},\n      458: function _(e,n,f){n.exports=\"undefined\"!=typeof $?$:e(459)},\n      459: function _(e,t,n){\n      /*!\n           * jQuery JavaScript Library v3.5.1\n           * https://jquery.com/\n           *\n           * Includes Sizzle.js\n           * https://sizzlejs.com/\n           *\n           * Copyright JS Foundation and other contributors\n           * Released under the MIT license\n           * https://jquery.org/license\n           *\n           * Date: 2020-05-04T22:49Z\n           */\n      !function(e,n){\"use strict\";\"object\"==typeof t&&\"object\"==typeof t.exports?t.exports=e.document?n(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return n(e)}:n(e)}(\"undefined\"!=typeof window?window:this,(function(e,t){\"use strict\";var n=[],r=Object.getPrototypeOf,i=n.slice,o=n.flat?function(e){return n.flat.call(e)}:function(e){return n.concat.apply([],e)},a=n.push,s=n.indexOf,u={},l=u.toString,c=u.hasOwnProperty,f=c.toString,p=f.call(Object),d={},h=function(e){return\"function\"==typeof e&&\"number\"!=typeof e.nodeType},g=function(e){return null!=e&&e===e.window},v=e.document,y={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||v).createElement(\"script\");if(o.text=e,t)for(r in y)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?u[l.call(e)]||\"object\":typeof e}var b=function(e,t){return new b.fn.init(e,t)};function w(e){var t=!!e&&\"length\"in e&&e.length,n=x(e);return!h(e)&&!g(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&t>0&&t-1 in e)}b.fn=b.prototype={jquery:\"3.5.1\",constructor:b,length:0,toArray:function(){return i.call(this)},get:function(e){return null==e?i.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=b.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return b.each(this,e)},map:function(e){return this.pushStack(b.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(i.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(b.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(b.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:n.sort,splice:n.splice},b.extend=b.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for(\"boolean\"==typeof a&&(l=a,a=arguments[s]||{},s++),\"object\"==typeof a||h(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],\"__proto__\"!==t&&a!==r&&(l&&r&&(b.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||b.isPlainObject(n)?n:{},i=!1,a[t]=b.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},b.extend({expando:\"jQuery\"+(\"3.5.1\"+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==l.call(e))&&(!(t=r(e))||\"function\"==typeof(n=c.call(t,\"constructor\")&&t.constructor)&&f.call(n)===p)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){m(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(w(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(w(Object(e))?b.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:s.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,a=0,s=[];if(w(e))for(r=e.length;a<r;a++)null!=(i=t(e[a],a,n))&&s.push(i);else for(a in e)null!=(i=t(e[a],a,n))&&s.push(i);return o(s)},guid:1,support:d}),\"function\"==typeof Symbol&&(b.fn[Symbol.iterator]=n[Symbol.iterator]),b.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),(function(e,t){u[\"[object \"+t+\"]\"]=t.toLowerCase()}));var T=\n      /*!\n               * Sizzle CSS Selector Engine v2.3.5\n               * https://sizzlejs.com/\n               *\n               * Copyright JS Foundation and other contributors\n               * Released under the MIT license\n               * https://js.foundation/\n               *\n               * Date: 2020-03-14\n               */\n      function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,v,y,m,x,b=\"sizzle\"+1*new Date,w=e.document,T=0,C=0,E=ue(),S=ue(),k=ue(),A=ue(),N=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,j=[],q=j.pop,L=j.push,H=j.push,O=j.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",M=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\[\\\\da-fA-F]{1,6}\"+M+\"?|\\\\\\\\[^\\\\r\\\\n\\\\f]|[\\\\w-]|[^\\0-\\\\x7f])+\",W=\"\\\\[\"+M+\"*(\"+I+\")(?:\"+M+\"*([*^$|!~]?=)\"+M+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+M+\"*\\\\]\",F=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+W+\")*)|.*)\\\\)|)\",B=new RegExp(M+\"+\",\"g\"),$=new RegExp(\"^\"+M+\"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\"+M+\"+$\",\"g\"),_=new RegExp(\"^\"+M+\"*,\"+M+\"*\"),z=new RegExp(\"^\"+M+\"*([>+~]|\"+M+\")\"+M+\"*\"),U=new RegExp(M+\"|>\"),X=new RegExp(F),V=new RegExp(\"^\"+I+\"$\"),G={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+W),PSEUDO:new RegExp(\"^\"+F),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+M+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+M+\"*(?:([+-]|)\"+M+\"*(\\\\d+)|))\"+M+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+R+\")$\",\"i\"),needsContext:new RegExp(\"^\"+M+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+M+\"*((?:-\\\\d)?\\\\d*)\"+M+\"*\\\\)|)(?=[^-]|$)\",\"i\")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\\d$/i,K=/^[^{]+\\{\\s*\\[native \\w/,Z=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,ee=/[+~]/,te=new RegExp(\"\\\\\\\\[\\\\da-fA-F]{1,6}\"+M+\"?|\\\\\\\\([^\\\\r\\\\n\\\\f])\",\"g\"),ne=function(e,t){var n=\"0x\"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ie=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){p()},ae=be((function(e){return!0===e.disabled&&\"fieldset\"===e.nodeName.toLowerCase()}),{dir:\"parentNode\",next:\"legend\"});try{H.apply(j=O.call(w.childNodes),w.childNodes),j[w.childNodes.length].nodeType}catch(e){H={apply:j.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var o,s,l,c,f,h,y,m=t&&t.ownerDocument,w=t?t.nodeType:9;if(r=r||[],\"string\"!=typeof e||!e||1!==w&&9!==w&&11!==w)return r;if(!i&&(p(t),t=t||d,g)){if(11!==w&&(f=Z.exec(e)))if(o=f[1]){if(9===w){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return H.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return H.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!A[e+\" \"]&&(!v||!v.test(e))&&(1!==w||\"object\"!==t.nodeName.toLowerCase())){if(y=e,m=t,1===w&&(U.test(e)||z.test(e))){for((m=ee.test(e)&&ye(t.parentNode)||t)===t&&n.scope||((c=t.getAttribute(\"id\"))?c=c.replace(re,ie):t.setAttribute(\"id\",c=b)),s=(h=a(e)).length;s--;)h[s]=(c?\"#\"+c:\":scope\")+\" \"+xe(h[s]);y=h.join(\",\")}try{return H.apply(r,m.querySelectorAll(y)),r}catch(t){A(e,!0)}finally{c===b&&t.removeAttribute(\"id\")}}}return u(e.replace($,\"$1\"),t,r,i)}function ue(){var e=[];return function t(n,i){return e.push(n+\" \")>r.cacheLength&&delete t[e.shift()],t[n+\" \"]=i}}function le(e){return e[b]=!0,e}function ce(e){var t=d.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split(\"|\"),i=n.length;i--;)r.attrHandle[n[i]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return\"input\"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return(\"input\"===n||\"button\"===n)&&t.type===e}}function ge(e){return function(t){return\"form\"in t?t.parentNode&&!1===t.disabled?\"label\"in t?\"label\"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:\"label\"in t&&t.disabled===e}}function ve(e){return le((function(t){return t=+t,le((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function ye(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||\"HTML\")},p=se.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!=d&&9===a.nodeType&&a.documentElement?(h=(d=a).documentElement,g=!o(d),w!=d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener(\"unload\",oe,!1):i.attachEvent&&i.attachEvent(\"onunload\",oe)),n.scope=ce((function(e){return h.appendChild(e).appendChild(d.createElement(\"div\")),void 0!==e.querySelectorAll&&!e.querySelectorAll(\":scope fieldset div\").length})),n.attributes=ce((function(e){return e.className=\"i\",!e.getAttribute(\"className\")})),n.getElementsByTagName=ce((function(e){return e.appendChild(d.createComment(\"\")),!e.getElementsByTagName(\"*\").length})),n.getElementsByClassName=K.test(d.getElementsByClassName),n.getById=ce((function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute(\"id\")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if(\"*\"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=K.test(d.querySelectorAll))&&(ce((function(e){var t;h.appendChild(e).innerHTML=\"<a id='\"+b+\"'></a><select id='\"+b+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&v.push(\"[*^$]=\"+M+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||v.push(\"\\\\[\"+M+\"*(?:value|\"+R+\")\"),e.querySelectorAll(\"[id~=\"+b+\"-]\").length||v.push(\"~=\"),(t=d.createElement(\"input\")).setAttribute(\"name\",\"\"),e.appendChild(t),e.querySelectorAll(\"[name='']\").length||v.push(\"\\\\[\"+M+\"*name\"+M+\"*=\"+M+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\":checked\").length||v.push(\":checked\"),e.querySelectorAll(\"a#\"+b+\"+*\").length||v.push(\".#.+[+~]\"),e.querySelectorAll(\"\\\\\\f\"),v.push(\"[\\\\r\\\\n\\\\f]\")})),ce((function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=d.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&v.push(\"name\"+M+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&v.push(\":enabled\",\":disabled\"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&v.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),v.push(\",.*:\")}))),(n.matchesSelector=K.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ce((function(e){n.disconnectedMatch=m.call(e,\"*\"),m.call(e,\"[s!='']:x\"),y.push(\"!=\",F)})),v=v.length&&new RegExp(v.join(\"|\")),y=y.length&&new RegExp(y.join(\"|\")),t=K.test(h.compareDocumentPosition),x=t||K.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},N=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==d||e.ownerDocument==w&&x(w,e)?-1:t==d||t.ownerDocument==w&&x(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==d?-1:t==d?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return pe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?pe(a[r],s[r]):a[r]==w?-1:s[r]==w?1:0},d):d},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(p(e),n.matchesSelector&&g&&!A[t+\" \"]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){A(t,!0)}return se(t,d,null,[e]).length>0},se.contains=function(e,t){return(e.ownerDocument||e)!=d&&p(e),x(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},se.escape=function(e){return(e+\"\").replace(re,ie)},se.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},se.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(N),f){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return c=null,e},i=se.getText=function(e){var t,n=\"\",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{\">\":{dir:\"parentNode\",first:!0},\" \":{dir:\"parentNode\"},\"+\":{dir:\"previousSibling\",first:!0},\"~\":{dir:\"previousSibling\"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||\"\").replace(te,ne),\"~=\"===e[2]&&(e[3]=\" \"+e[3]+\" \"),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),\"nth\"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*(\"even\"===e[3]||\"odd\"===e[3])),e[5]=+(e[7]+e[8]||\"odd\"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(\")\",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+\" \"];return t||(t=new RegExp(\"(^|\"+M+\")\"+e+\"(\"+M+\"|$)\"))&&E(e,(function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")}))},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?\"!=\"===t:!t||(i+=\"\",\"=\"===t?i===n:\"!=\"===t?i!==n:\"^=\"===t?n&&0===i.indexOf(n):\"*=\"===t?n&&i.indexOf(n)>-1:\"$=\"===t?n&&i.slice(-n.length)===n:\"~=\"===t?(\" \"+i.replace(B,\" \")+\" \").indexOf(n)>-1:\"|=\"===t&&(i===n||i.slice(0,n.length+1)===n+\"-\"))}},CHILD:function(e,t,n,r,i){var o=\"nth\"!==e.slice(0,3),a=\"last\"!==e.slice(-4),s=\"of-type\"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?\"nextSibling\":\"previousSibling\",v=t.parentNode,y=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(v){if(o){for(;g;){for(p=t;p=p[g];)if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g=\"only\"===e&&!h&&\"nextSibling\"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){for(x=(d=(l=(c=(f=(p=v)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&v.childNodes[d];p=++d&&p&&p[g]||(x=d=0)||h.pop();)if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)for(;(p=++d&&p&&p[g]||(x=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==y:1!==p.nodeType)||!++x||(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||se.error(\"unsupported pseudo: \"+e);return i[b]?i(t):i.length>1?(n=[e,e,\"\",t],r.setFilters.hasOwnProperty(e.toLowerCase())?le((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=P(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:le((function(e){var t=[],n=[],r=s(e.replace($,\"$1\"));return r[b]?le((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:le((function(e){return function(t){return se(e,t).length>0}})),contains:le((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:le((function(e){return V.test(e||\"\")||se.error(\"unsupported lang: \"+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute(\"xml:lang\")||t.getAttribute(\"lang\"))return(n=n.toLowerCase())===e||0===n.indexOf(e+\"-\")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&!!e.checked||\"option\"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&\"button\"===e.type||\"button\"===t},text:function(e){var t;return\"input\"===e.nodeName.toLowerCase()&&\"text\"===e.type&&(null==(t=e.getAttribute(\"type\"))||\"text\"===t.toLowerCase())},first:ve((function(){return[0]})),last:ve((function(e,t){return[t-1]})),eq:ve((function(e,t,n){return[n<0?n+t:n]})),even:ve((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:ve((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:ve((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:ve((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}}).pseudos.nth=r.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=de(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=he(t);function me(){}function xe(e){for(var t=0,n=e.length,r=\"\";t<n;t++)r+=e[t].value;return r}function be(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&\"parentNode\"===o,s=C++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,p=[T,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(c=(f=t[b]||(t[b]={}))[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===T&&l[1]===s)return p[2]=l[2];if(c[o]=p,p[2]=e(t,n,u))return!0}return!1}}function we(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(e,t,n,r,i,o){return r&&!r[b]&&(r=Ce(r)),i&&!i[b]&&(i=Ce(i,o)),le((function(o,a,s,u){var l,c,f,p=[],d=[],h=a.length,g=o||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(t||\"*\",s.nodeType?[s]:s,[]),v=!e||!o&&t?g:Te(g,p,e,s,u),y=n?i||(o?e:h||r)?[]:a:v;if(n&&n(v,y,s,u),r)for(l=Te(y,d),r(l,[],s,u),c=l.length;c--;)(f=l[c])&&(y[d[c]]=!(v[d[c]]=f));if(o){if(i||e){if(i){for(l=[],c=y.length;c--;)(f=y[c])&&l.push(v[c]=f);i(null,y=[],l,u)}for(c=y.length;c--;)(f=y[c])&&(l=i?P(o,f):p[c])>-1&&(o[l]=!(a[l]=f))}}else y=Te(y===a?y.splice(h,y.length):y),i?i(null,a,y,u):H.apply(a,y)}))}function Ee(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[\" \"],u=a?1:0,c=be((function(e){return e===t}),s,!0),f=be((function(e){return P(t,e)>-1}),s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u<o;u++)if(n=r.relative[e[u].type])p=[be(we(p),n)];else{if((n=r.filter[e[u].type].apply(null,e[u].matches))[b]){for(i=++u;i<o&&!r.relative[e[i].type];i++);return Ce(u>1&&we(p),u>1&&xe(e.slice(0,u-1).concat({value:\" \"===e[u-2].type?\"*\":\"\"})).replace($,\"$1\"),n,u<i&&Ee(e.slice(u,i)),i<o&&Ee(e=e.slice(i)),i<o&&xe(e))}p.push(n)}return we(p)}return me.prototype=r.filters=r.pseudos,r.setFilters=new me,a=se.tokenize=function(e,t){var n,i,o,a,s,u,l,c=S[e+\" \"];if(c)return t?0:c.slice(0);for(s=e,u=[],l=r.preFilter;s;){for(a in n&&!(i=_.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),n=!1,(i=z.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace($,\" \")}),s=s.slice(n.length)),r.filter)!(i=G[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?se.error(e):S(e,u).slice(0)},s=se.compile=function(e,t){var n,i=[],o=[],s=k[e+\" \"];if(!s){for(t||(t=a(e)),n=t.length;n--;)(s=Ee(t[n]))[b]?i.push(s):o.push(s);(s=k(e,function(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,s,u,c){var f,h,v,y=0,m=\"0\",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG(\"*\",c),E=T+=null==w?1:Math.random()||.1,S=C.length;for(c&&(l=a==d||a||c);m!==S&&null!=(f=C[m]);m++){if(i&&f){for(h=0,a||f.ownerDocument==d||(p(f),s=!g);v=e[h++];)if(v(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!v&&f)&&y--,o&&x.push(f))}if(y+=m,n&&m!==y){for(h=0;v=t[h++];)v(x,b,a,s);if(o){if(y>0)for(;m--;)x[m]||b[m]||(b[m]=q.call(u));b=Te(b)}H.apply(u,b),c&&!o&&b.length>0&&y+t.length>1&&se.uniqueSort(u)}return c&&(T=E,l=w),x};return n?le(o):o}(o,i))).selector=e}return s},u=se.select=function(e,t,n,i){var o,u,l,c,f,p=\"function\"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&\"ID\"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(te,ne),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}for(o=G.needsContext.test(e)?0:u.length;o--&&(l=u[o],!r.relative[c=l.type]);)if((f=r.find[c])&&(i=f(l.matches[0].replace(te,ne),ee.test(u[0].type)&&ye(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&xe(u)))return H.apply(n,i),n;break}}return(p||s(e,d))(i,t,!g,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},n.sortStable=b.split(\"\").sort(N).join(\"\")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ce((function(e){return 1&e.compareDocumentPosition(d.createElement(\"fieldset\"))})),ce((function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")}))||fe(\"type|href|height|width\",(function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)})),n.attributes&&ce((function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")}))||fe(\"value\",(function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue})),ce((function(e){return null==e.getAttribute(\"disabled\")}))||fe(R,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),se}(e);b.find=T,b.expr=T.selectors,b.expr[\":\"]=b.expr.pseudos,b.uniqueSort=b.unique=T.uniqueSort,b.text=T.getText,b.isXMLDoc=T.isXML,b.contains=T.contains,b.escapeSelector=T.escape;var C=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&b(e).is(n))break;r.push(e)}return r},E=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},S=b.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var A=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i;function N(e,t,n){return h(t)?b.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?b.grep(e,(function(e){return e===t!==n})):\"string\"!=typeof t?b.grep(e,(function(e){return s.call(t,e)>-1!==n})):b.filter(t,e,n)}b.filter=function(e,t,n){var r=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===r.nodeType?b.find.matchesSelector(r,e)?[r]:[]:b.find.matches(e,b.grep(t,(function(e){return 1===e.nodeType})))},b.fn.extend({find:function(e){var t,n,r=this.length,i=this;if(\"string\"!=typeof e)return this.pushStack(b(e).filter((function(){for(t=0;t<r;t++)if(b.contains(i[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)b.find(e,i[t],n);return r>1?b.uniqueSort(n):n},filter:function(e){return this.pushStack(N(this,e||[],!1))},not:function(e){return this.pushStack(N(this,e||[],!0))},is:function(e){return!!N(this,\"string\"==typeof e&&S.test(e)?b(e):e||[],!1).length}});var D,j=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/;(b.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,\"string\"==typeof e){if(!(r=\"<\"===e[0]&&\">\"===e[e.length-1]&&e.length>=3?[null,e,null]:j.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof b?t[0]:t,b.merge(this,b.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:v,!0)),A.test(r[1])&&b.isPlainObject(t))for(r in t)h(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=v.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):h(e)?void 0!==n.ready?n.ready(e):e(b):b.makeArray(e,this)}).prototype=b.fn,D=b(v);var q=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function H(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}b.fn.extend({has:function(e){var t=b(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(b.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,i=this.length,o=[],a=\"string\"!=typeof e&&b(e);if(!S.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&b.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?b.uniqueSort(o):o)},index:function(e){return e?\"string\"==typeof e?s.call(b(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(b.uniqueSort(b.merge(this.get(),b(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),b.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,\"parentNode\")},parentsUntil:function(e,t,n){return C(e,\"parentNode\",n)},next:function(e){return H(e,\"nextSibling\")},prev:function(e){return H(e,\"previousSibling\")},nextAll:function(e){return C(e,\"nextSibling\")},prevAll:function(e){return C(e,\"previousSibling\")},nextUntil:function(e,t,n){return C(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return C(e,\"previousSibling\",n)},siblings:function(e){return E((e.parentNode||{}).firstChild,e)},children:function(e){return E(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(k(e,\"template\")&&(e=e.content||e),b.merge([],e.childNodes))}},(function(e,t){b.fn[e]=function(n,r){var i=b.map(this,t,n);return\"Until\"!==e.slice(-5)&&(r=n),r&&\"string\"==typeof r&&(i=b.filter(r,i)),this.length>1&&(L[e]||b.uniqueSort(i),q.test(e)&&i.reverse()),this.pushStack(i)}}));var O=/[^\\x20\\t\\r\\n\\f]+/g;function P(e){return e}function R(e){throw e}function M(e,t,n,r){var i;try{e&&h(i=e.promise)?i.call(e).done(t).fail(n):e&&h(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}b.Callbacks=function(e){e=\"string\"==typeof e?function(e){var t={};return b.each(e.match(O)||[],(function(e,n){t[n]=!0})),t}(e):b.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:\"\")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){b.each(n,(function(n,r){h(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&\"string\"!==x(r)&&t(r)}))}(arguments),n&&!t&&u()),this},remove:function(){return b.each(arguments,(function(e,t){for(var n;(n=b.inArray(t,o,n))>-1;)o.splice(n,1),n<=s&&s--})),this},has:function(e){return e?b.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n=\"\",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=\"\"),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},b.extend({Deferred:function(t){var n=[[\"notify\",\"progress\",b.Callbacks(\"memory\"),b.Callbacks(\"memory\"),2],[\"resolve\",\"done\",b.Callbacks(\"once memory\"),b.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",b.Callbacks(\"once memory\"),b.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return b.Deferred((function(t){b.each(n,(function(n,r){var i=h(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&h(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+\"With\"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t<o)){if((e=r.apply(s,u))===n.promise())throw new TypeError(\"Thenable self-resolution\");l=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,h(l)?i?l.call(e,a(o,n,P,i),a(o,n,R,i)):(o++,l.call(e,a(o,n,P,i),a(o,n,R,i),a(o,n,P,n.notifyWith))):(r!==P&&(s=void 0,u=[e]),(i||n.resolveWith)(s,u))}},c=i?l:function(){try{l()}catch(e){b.Deferred.exceptionHook&&b.Deferred.exceptionHook(e,c.stackTrace),t+1>=o&&(r!==R&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(b.Deferred.getStackHook&&(c.stackTrace=b.Deferred.getStackHook()),e.setTimeout(c))}}return b.Deferred((function(e){n[0][3].add(a(0,e,h(i)?i:P,e.notifyWith)),n[1][3].add(a(0,e,h(t)?t:P)),n[2][3].add(a(0,e,h(r)?r:R))})).promise()},promise:function(e){return null!=e?b.extend(e,i):i}},o={};return b.each(n,(function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add((function(){r=s}),n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+\"With\"](this===o?void 0:this,arguments),this},o[t[0]+\"With\"]=a.fireWith})),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),o=i.call(arguments),a=b.Deferred(),s=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?i.call(arguments):n,--t||a.resolveWith(r,o)}};if(t<=1&&(M(e,a.done(s(n)).resolve,a.reject,!t),\"pending\"===a.state()||h(o[n]&&o[n].then)))return a.then();for(;n--;)M(o[n],s(n),a.reject);return a.promise()}});var I=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;b.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&I.test(t.name)&&e.console.warn(\"jQuery.Deferred exception: \"+t.message,t.stack,n)},b.readyException=function(t){e.setTimeout((function(){throw t}))};var W=b.Deferred();function F(){v.removeEventListener(\"DOMContentLoaded\",F),e.removeEventListener(\"load\",F),b.ready()}b.fn.ready=function(e){return W.then(e).catch((function(e){b.readyException(e)})),this},b.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--b.readyWait:b.isReady)||(b.isReady=!0,!0!==e&&--b.readyWait>0||W.resolveWith(v,[b]))}}),b.ready.then=W.then,\"complete\"===v.readyState||\"loading\"!==v.readyState&&!v.documentElement.doScroll?e.setTimeout(b.ready):(v.addEventListener(\"DOMContentLoaded\",F),e.addEventListener(\"load\",F));var B=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if(\"object\"===x(n))for(s in i=!0,n)B(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,h(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(b(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},$=/^-ms-/,_=/-([a-z])/g;function z(e,t){return t.toUpperCase()}function U(e){return e.replace($,\"ms-\").replace(_,z)}var X=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function V(){this.expando=b.expando+V.uid++}V.uid=1,V.prototype={cache:function(e){var t=e[this.expando];return t||(t={},X(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if(\"string\"==typeof t)i[U(t)]=n;else for(r in t)i[U(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][U(t)]},access:function(e,t,n){return void 0===t||t&&\"string\"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(U):(t=U(t))in r?[t]:t.match(O)||[]).length;for(;n--;)delete r[t[n]]}(void 0===t||b.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!b.isEmptyObject(t)}};var G=new V,Y=new V,Q=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,J=/[A-Z]/g;function K(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r=\"data-\"+t.replace(J,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(r))){try{n=function(e){return\"true\"===e||\"false\"!==e&&(\"null\"===e?null:e===+e+\"\"?+e:Q.test(e)?JSON.parse(e):e)}(n)}catch(e){}Y.set(e,t,n)}else n=void 0;return n}b.extend({hasData:function(e){return Y.hasData(e)||G.hasData(e)},data:function(e,t,n){return Y.access(e,t,n)},removeData:function(e,t){Y.remove(e,t)},_data:function(e,t,n){return G.access(e,t,n)},_removeData:function(e,t){G.remove(e,t)}}),b.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Y.get(o),1===o.nodeType&&!G.get(o,\"hasDataAttrs\"))){for(n=a.length;n--;)a[n]&&0===(r=a[n].name).indexOf(\"data-\")&&(r=U(r.slice(5)),K(o,r,i[r]));G.set(o,\"hasDataAttrs\",!0)}return i}return\"object\"==typeof e?this.each((function(){Y.set(this,e)})):B(this,(function(t){var n;if(o&&void 0===t)return void 0!==(n=Y.get(o,e))||void 0!==(n=K(o,e))?n:void 0;this.each((function(){Y.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){Y.remove(this,e)}))}}),b.extend({queue:function(e,t,n){var r;if(e)return t=(t||\"fx\")+\"queue\",r=G.get(e,t),n&&(!r||Array.isArray(n)?r=G.access(e,t,b.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||\"fx\";var n=b.queue(e,t),r=n.length,i=n.shift(),o=b._queueHooks(e,t);\"inprogress\"===i&&(i=n.shift(),r--),i&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete o.stop,i.call(e,(function(){b.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return G.get(e,n)||G.access(e,n,{empty:b.Callbacks(\"once memory\").add((function(){G.remove(e,[t+\"queue\",n])}))})}}),b.fn.extend({queue:function(e,t){var n=2;return\"string\"!=typeof e&&(t=e,e=\"fx\",n--),arguments.length<n?b.queue(this[0],e):void 0===t?this:this.each((function(){var n=b.queue(this,e,t);b._queueHooks(this,e),\"fx\"===e&&\"inprogress\"!==n[0]&&b.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){b.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,r=1,i=b.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";a--;)(n=G.get(o[a],e+\"queueHooks\"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var Z=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,ee=new RegExp(\"^(?:([+-])=|)(\"+Z+\")([a-z%]*)$\",\"i\"),te=[\"Top\",\"Right\",\"Bottom\",\"Left\"],ne=v.documentElement,re=function(e){return b.contains(e.ownerDocument,e)},ie={composed:!0};ne.getRootNode&&(re=function(e){return b.contains(e.ownerDocument,e)||e.getRootNode(ie)===e.ownerDocument});var oe=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&re(e)&&\"none\"===b.css(e,\"display\")};function ae(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return b.css(e,t,\"\")},u=s(),l=n&&n[3]||(b.cssNumber[t]?\"\":\"px\"),c=e.nodeType&&(b.cssNumber[t]||\"px\"!==l&&+u)&&ee.exec(b.css(e,t));if(c&&c[3]!==l){for(u/=2,l=l||c[3],c=+u||1;a--;)b.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,b.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var se={};function ue(e){var t,n=e.ownerDocument,r=e.nodeName,i=se[r];return i||(t=n.body.appendChild(n.createElement(r)),i=b.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===i&&(i=\"block\"),se[r]=i,i)}function le(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)(r=e[o]).style&&(n=r.style.display,t?(\"none\"===n&&(i[o]=G.get(r,\"display\")||null,i[o]||(r.style.display=\"\")),\"\"===r.style.display&&oe(r)&&(i[o]=ue(r))):\"none\"!==n&&(i[o]=\"none\",G.set(r,\"display\",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}b.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each((function(){oe(this)?b(this).show():b(this).hide()}))}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i,he=/^$|^module$|\\/(?:java|ecma)script/i;ce=v.createDocumentFragment().appendChild(v.createElement(\"div\")),(fe=v.createElement(\"input\")).setAttribute(\"type\",\"radio\"),fe.setAttribute(\"checked\",\"checked\"),fe.setAttribute(\"name\",\"t\"),ce.appendChild(fe),d.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML=\"<textarea>x</textarea>\",d.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML=\"<option></option>\",d.option=!!ce.lastChild;var ge={thead:[1,\"<table>\",\"</table>\"],col:[2,\"<table><colgroup>\",\"</colgroup></table>\"],tr:[2,\"<table><tbody>\",\"</tbody></table>\"],td:[3,\"<table><tbody><tr>\",\"</tr></tbody></table>\"],_default:[0,\"\",\"\"]};function ve(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&k(e,t)?b.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)G.set(e[n],\"globalEval\",!t||G.get(t[n],\"globalEval\"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,d.option||(ge.optgroup=ge.option=[1,\"<select multiple='multiple'>\",\"</select>\"]);var me=/<|&#?\\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if(\"object\"===x(o))b.merge(p,o.nodeType?[o]:o);else if(me.test(o)){for(a=a||f.appendChild(t.createElement(\"div\")),s=(de.exec(o)||[\"\",\"\"])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+b.htmlPrefilter(o)+u[2],c=u[0];c--;)a=a.lastChild;b.merge(p,a.childNodes),(a=f.firstChild).textContent=\"\"}else p.push(t.createTextNode(o));for(f.textContent=\"\",d=0;o=p[d++];)if(r&&b.inArray(o,r)>-1)i&&i.push(o);else if(l=re(o),a=ve(f.appendChild(o),\"script\"),l&&ye(a),n)for(c=0;o=a[c++];)he.test(o.type||\"\")&&n.push(o);return f}var be=/^key/,we=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\\.(.+)|)/;function Ce(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return v.activeElement}catch(e){}}()==(\"focus\"===t)}function ke(e,t,n,r,i,o){var a,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&(\"string\"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return b().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=b.guid++)),e.each((function(){b.event.add(this,t,i,r,n)}))}function Ae(e,t,n){n?(G.set(e,t,!1),b.event.add(e,t,{namespace:!1,handler:function(e){var r,o,a=G.get(this,t);if(1&e.isTrigger&&this[t]){if(a.length)(b.event.special[t]||{}).delegateType&&e.stopPropagation();else if(a=i.call(arguments),G.set(this,t,a),r=n(this,t),this[t](),a!==(o=G.get(this,t))||r?G.set(this,t,!1):o={},a!==o)return e.stopImmediatePropagation(),e.preventDefault(),o.value}else a.length&&(G.set(this,t,{value:b.event.trigger(b.extend(a[0],b.Event.prototype),a.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===G.get(e,t)&&b.event.add(e,t,Ce)}b.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=G.get(e);if(X(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&b.find.matchesSelector(ne,i),n.guid||(n.guid=b.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(t){return void 0!==b&&b.event.triggered!==t.type?b.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||\"\").match(O)||[\"\"]).length;l--;)d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d&&(f=b.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=b.event.special[d]||{},c=b.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&b.expr.match.needsContext.test(i),namespace:h.join(\".\")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),b.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=G.hasData(e)&&G.get(e);if(v&&(u=v.events)){for(l=(t=(t||\"\").match(O)||[\"\"]).length;l--;)if(d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d){for(f=b.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&(\"**\"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||b.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)b.event.remove(e,d+t[l],n,r,!0);b.isEmptyObject(u)&&G.remove(e,\"handle events\")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=b.event.fix(e),l=(G.get(this,\"events\")||Object.create(null))[u.type]||[],c=b.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){for(a=b.event.handlers.call(this,u,l),t=0;(i=a[t++])&&!u.isPropagationStopped();)for(u.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!u.isImmediatePropagationStopped();)u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((b.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!(\"click\"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&(\"click\"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+\" \"]&&(a[i]=r.needsContext?b(i,this).index(l)>-1:b.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(b.Event.prototype,e,{enumerable:!0,configurable:!0,get:h(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[b.expando]?e:new b.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&k(t,\"input\")&&Ae(t,\"click\",Ce),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&k(t,\"input\")&&Ae(t,\"click\"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&k(t,\"input\")&&G.get(t,\"click\")||k(t,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},b.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},b.Event=function(e,t){if(!(this instanceof b.Event))return new b.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ce:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&b.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[b.expando]=!0},b.Event.prototype={constructor:b.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ce,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ce,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ce,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},b.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&be.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&we.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},b.event.addProp),b.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){b.event.special[e]={setup:function(){return Ae(this,e,Se),!1},trigger:function(){return Ae(this,e),!0},delegateType:t}})),b.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},(function(e,t){b.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||b.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}})),b.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,b(e.delegateTarget).off(r.namespace?r.origType+\".\"+r.namespace:r.origType,r.selector,r.handler),this;if(\"object\"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each((function(){b.event.remove(this,e,n,t)}))}});var Ne=/<script|<style|<link/i,De=/checked\\s*(?:[^=]|=\\s*.checked.)/i,je=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function qe(e,t){return k(e,\"table\")&&k(11!==t.nodeType?t:t.firstChild,\"tr\")&&b(e).children(\"tbody\")[0]||e}function Le(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function He(e){return\"true/\"===(e.type||\"\").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute(\"type\"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(G.hasData(e)&&(s=G.get(e).events))for(i in G.remove(t,\"handle events\"),s)for(n=0,r=s[i].length;n<r;n++)b.event.add(t,i,s[i][n]);Y.hasData(e)&&(o=Y.access(e),a=b.extend({},o),Y.set(t,a))}}function Pe(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&pe.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function Re(e,t,n,r){t=o(t);var i,a,s,u,l,c,f=0,p=e.length,g=p-1,v=t[0],y=h(v);if(y||p>1&&\"string\"==typeof v&&!d.checkClone&&De.test(v))return e.each((function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Re(o,t,n,r)}));if(p&&(a=(i=xe(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=a),a||r)){for(u=(s=b.map(ve(i,\"script\"),Le)).length;f<p;f++)l=i,f!==g&&(l=b.clone(l,!0,!0),u&&b.merge(s,ve(l,\"script\"))),n.call(e[f],l,f);if(u)for(c=s[s.length-1].ownerDocument,b.map(s,He),f=0;f<u;f++)l=s[f],he.test(l.type||\"\")&&!G.access(l,\"globalEval\")&&b.contains(c,l)&&(l.src&&\"module\"!==(l.type||\"\").toLowerCase()?b._evalUrl&&!l.noModule&&b._evalUrl(l.src,{nonce:l.nonce||l.getAttribute(\"nonce\")},c):m(l.textContent.replace(je,\"\"),l,c))}return e}function Me(e,t,n){for(var r,i=t?b.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||b.cleanData(ve(r)),r.parentNode&&(n&&re(r)&&ye(ve(r,\"script\")),r.parentNode.removeChild(r));return e}b.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=re(e);if(!(d.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||b.isXMLDoc(e)))for(a=ve(s),r=0,i=(o=ve(e)).length;r<i;r++)Pe(o[r],a[r]);if(t)if(n)for(o=o||ve(e),a=a||ve(s),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,s);return(a=ve(s,\"script\")).length>0&&ye(a,!u&&ve(e,\"script\")),s},cleanData:function(e){for(var t,n,r,i=b.event.special,o=0;void 0!==(n=e[o]);o++)if(X(n)){if(t=n[G.expando]){if(t.events)for(r in t.events)i[r]?b.event.remove(n,r):b.removeEvent(n,r,t.handle);n[G.expando]=void 0}n[Y.expando]&&(n[Y.expando]=void 0)}}}),b.fn.extend({detach:function(e){return Me(this,e,!0)},remove:function(e){return Me(this,e)},text:function(e){return B(this,(function(e){return void 0===e?b.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return Re(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)}))},prepend:function(){return Re(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Re(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Re(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(b.cleanData(ve(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return b.clone(this,e,t)}))},html:function(e){return B(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=b.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(b.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Re(this,arguments,(function(t){var n=this.parentNode;b.inArray(this,e)<0&&(b.cleanData(ve(this)),n&&n.replaceChild(t,this))}),e)}}),b.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},(function(e,t){b.fn[e]=function(e){for(var n,r=[],i=b(e),o=i.length-1,s=0;s<=o;s++)n=s===o?this:this.clone(!0),b(i[s])[t](n),a.apply(r,n.get());return this.pushStack(r)}}));var Ie=new RegExp(\"^(\"+Z+\")(?!px)[a-z%]+$\",\"i\"),We=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},Fe=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Be=new RegExp(te.join(\"|\"),\"i\");function $e(e,t,n){var r,i,o,a,s=e.style;return(n=n||We(e))&&(\"\"!==(a=n.getPropertyValue(t)||n[t])||re(e)||(a=b.style(e,t)),!d.pixelBoxStyles()&&Ie.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+\"\":a}function _e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function t(){if(c){l.style.cssText=\"position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0\",c.style.cssText=\"position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%\",ne.appendChild(l).appendChild(c);var t=e.getComputedStyle(c);r=\"1%\"!==t.top,u=12===n(t.marginLeft),c.style.right=\"60%\",a=36===n(t.right),i=36===n(t.width),c.style.position=\"absolute\",o=12===n(c.offsetWidth/3),ne.removeChild(l),c=null}}function n(e){return Math.round(parseFloat(e))}var r,i,o,a,s,u,l=v.createElement(\"div\"),c=v.createElement(\"div\");c.style&&(c.style.backgroundClip=\"content-box\",c.cloneNode(!0).style.backgroundClip=\"\",d.clearCloneStyle=\"content-box\"===c.style.backgroundClip,b.extend(d,{boxSizingReliable:function(){return t(),i},pixelBoxStyles:function(){return t(),a},pixelPosition:function(){return t(),r},reliableMarginLeft:function(){return t(),u},scrollboxSize:function(){return t(),o},reliableTrDimensions:function(){var t,n,r,i;return null==s&&(t=v.createElement(\"table\"),n=v.createElement(\"tr\"),r=v.createElement(\"div\"),t.style.cssText=\"position:absolute;left:-11111px\",n.style.height=\"1px\",r.style.height=\"9px\",ne.appendChild(t).appendChild(n).appendChild(r),i=e.getComputedStyle(n),s=parseInt(i.height)>3,ne.removeChild(t)),s}}))}();var ze=[\"Webkit\",\"Moz\",\"ms\"],Ue=v.createElement(\"div\").style,Xe={};function Ve(e){var t=b.cssProps[e]||Xe[e];return t||(e in Ue?e:Xe[e]=function(e){for(var t=e[0].toUpperCase()+e.slice(1),n=ze.length;n--;)if((e=ze[n]+t)in Ue)return e}(e)||e)}var Ge=/^(none|table(?!-c[ea]).+)/,Ye=/^--/,Qe={position:\"absolute\",visibility:\"hidden\",display:\"block\"},Je={letterSpacing:\"0\",fontWeight:\"400\"};function Ke(e,t,n){var r=ee.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||\"px\"):t}function Ze(e,t,n,r,i,o){var a=\"width\"===t?1:0,s=0,u=0;if(n===(r?\"border\":\"content\"))return 0;for(;a<4;a+=2)\"margin\"===n&&(u+=b.css(e,n+te[a],!0,i)),r?(\"content\"===n&&(u-=b.css(e,\"padding\"+te[a],!0,i)),\"margin\"!==n&&(u-=b.css(e,\"border\"+te[a]+\"Width\",!0,i))):(u+=b.css(e,\"padding\"+te[a],!0,i),\"padding\"!==n?u+=b.css(e,\"border\"+te[a]+\"Width\",!0,i):s+=b.css(e,\"border\"+te[a]+\"Width\",!0,i));return!r&&o>=0&&(u+=Math.max(0,Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function et(e,t,n){var r=We(e),i=(!d.boxSizingReliable()||n)&&\"border-box\"===b.css(e,\"boxSizing\",!1,r),o=i,a=$e(e,t,r),s=\"offset\"+t[0].toUpperCase()+t.slice(1);if(Ie.test(a)){if(!n)return a;a=\"auto\"}return(!d.boxSizingReliable()&&i||!d.reliableTrDimensions()&&k(e,\"tr\")||\"auto\"===a||!parseFloat(a)&&\"inline\"===b.css(e,\"display\",!1,r))&&e.getClientRects().length&&(i=\"border-box\"===b.css(e,\"boxSizing\",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ze(e,t,n||(i?\"border\":\"content\"),o,r,a)+\"px\"}function tt(e,t,n,r,i){return new tt.prototype.init(e,t,n,r,i)}b.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=$e(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=U(t),u=Ye.test(t),l=e.style;if(u||(t=Ve(s)),a=b.cssHooks[t]||b.cssHooks[s],void 0===n)return a&&\"get\"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];\"string\"===(o=typeof n)&&(i=ee.exec(n))&&i[1]&&(n=ae(e,t,i),o=\"number\"),null!=n&&n==n&&(\"number\"!==o||u||(n+=i&&i[3]||(b.cssNumber[s]?\"\":\"px\")),d.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(l[t]=\"inherit\"),a&&\"set\"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=U(t);return Ye.test(t)||(t=Ve(s)),(a=b.cssHooks[t]||b.cssHooks[s])&&\"get\"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=$e(e,t,r)),\"normal\"===i&&t in Je&&(i=Je[t]),\"\"===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),b.each([\"height\",\"width\"],(function(e,t){b.cssHooks[t]={get:function(e,n,r){if(n)return!Ge.test(b.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):Fe(e,Qe,(function(){return et(e,t,r)}))},set:function(e,n,r){var i,o=We(e),a=!d.scrollboxSize()&&\"absolute\"===o.position,s=(a||r)&&\"border-box\"===b.css(e,\"boxSizing\",!1,o),u=r?Ze(e,t,r,s,o):0;return s&&a&&(u-=Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,\"border\",!1,o)-.5)),u&&(i=ee.exec(n))&&\"px\"!==(i[3]||\"px\")&&(e.style[t]=n,n=b.css(e,t)),Ke(0,n,u)}}})),b.cssHooks.marginLeft=_e(d.reliableMarginLeft,(function(e,t){if(t)return(parseFloat($e(e,\"marginLeft\"))||e.getBoundingClientRect().left-Fe(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+\"px\"})),b.each({margin:\"\",padding:\"\",border:\"Width\"},(function(e,t){b.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o=\"string\"==typeof n?n.split(\" \"):[n];r<4;r++)i[e+te[r]+t]=o[r]||o[r-2]||o[0];return i}},\"margin\"!==e&&(b.cssHooks[e+t].set=Ke)})),b.fn.extend({css:function(e,t){return B(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a<i;a++)o[t[a]]=b.css(e,t[a],!1,r);return o}return void 0!==n?b.style(e,t,n):b.css(e,t)}),e,t,arguments.length>1)}}),b.Tween=tt,tt.prototype={constructor:tt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||b.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(b.cssNumber[n]?\"\":\"px\")},cur:function(){var e=tt.propHooks[this.prop];return e&&e.get?e.get(this):tt.propHooks._default.get(this)},run:function(e){var t,n=tt.propHooks[this.prop];return this.options.duration?this.pos=t=b.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):tt.propHooks._default.set(this),this}},tt.prototype.init.prototype=tt.prototype,tt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=b.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){b.fx.step[e.prop]?b.fx.step[e.prop](e):1!==e.elem.nodeType||!b.cssHooks[e.prop]&&null==e.elem.style[Ve(e.prop)]?e.elem[e.prop]=e.now:b.style(e.elem,e.prop,e.now+e.unit)}}},tt.propHooks.scrollTop=tt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},b.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},b.fx=tt.prototype.init,b.fx.step={};var nt,rt,it=/^(?:toggle|show|hide)$/,ot=/queueHooks$/;function at(){rt&&(!1===v.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(at):e.setTimeout(at,b.fx.interval),b.fx.tick())}function st(){return e.setTimeout((function(){nt=void 0})),nt=Date.now()}function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i[\"margin\"+(n=te[r])]=i[\"padding\"+n]=e;return t&&(i.opacity=i.width=e),i}function lt(e,t,n){for(var r,i=(ct.tweeners[t]||[]).concat(ct.tweeners[\"*\"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ct(e,t,n){var r,i,o=0,a=ct.prefilters.length,s=b.Deferred().always((function(){delete u.elem})),u=function(){if(i)return!1;for(var t=nt||st(),n=Math.max(0,l.startTime+l.duration-t),r=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(r);return s.notifyWith(e,[l,r,n]),r<1&&a?n:(a||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:b.extend({},t),opts:b.extend(!0,{specialEasing:{},easing:b.easing._default},n),originalProperties:t,originalOptions:n,startTime:nt||st(),duration:n.duration,tweens:[],createTween:function(t,n){var r=b.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=U(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=b.cssHooks[r])&&\"expand\"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);o<a;o++)if(r=ct.prefilters[o].call(l,e,c,l.opts))return h(r.stop)&&(b._queueHooks(l.elem,l.opts.queue).stop=r.stop.bind(r)),r;return b.map(c,lt,l),h(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),b.fx.timer(b.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}b.Animation=b.extend(ct,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return ae(n.elem,e,ee.exec(t),n),n}]},tweener:function(e,t){h(e)?(t=e,e=[\"*\"]):e=e.match(O);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ct.tweeners[n]=ct.tweeners[n]||[],ct.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f=\"width\"in t||\"height\"in t,p=this,d={},h=e.style,g=e.nodeType&&oe(e),v=G.get(e,\"fxshow\");for(r in n.queue||(null==(a=b._queueHooks(e,\"fx\")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always((function(){p.always((function(){a.unqueued--,b.queue(e,\"fx\").length||a.empty.fire()}))}))),t)if(i=t[r],it.test(i)){if(delete t[r],o=o||\"toggle\"===i,i===(g?\"hide\":\"show\")){if(\"show\"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||b.style(e,r)}if((u=!b.isEmptyObject(t))||!b.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=G.get(e,\"display\")),\"none\"===(c=b.css(e,\"display\"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=b.css(e,\"display\"),le([e]))),(\"inline\"===c||\"inline-block\"===c&&null!=l)&&\"none\"===b.css(e,\"float\")&&(u||(p.done((function(){h.display=l})),null==l&&(c=h.display,l=\"none\"===c?\"\":c)),h.display=\"inline-block\")),n.overflow&&(h.overflow=\"hidden\",p.always((function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]}))),u=!1,d)u||(v?\"hidden\"in v&&(g=v.hidden):v=G.access(e,\"fxshow\",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done((function(){for(r in g||le([e]),G.remove(e,\"fxshow\"),d)b.style(e,r,d[r])}))),u=lt(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ct.prefilters.unshift(e):ct.prefilters.push(e)}}),b.speed=function(e,t,n){var r=e&&\"object\"==typeof e?b.extend({},e):{complete:n||!n&&t||h(e)&&e,duration:e,easing:n&&t||t&&!h(t)&&t};return b.fx.off?r.duration=0:\"number\"!=typeof r.duration&&(r.duration in b.fx.speeds?r.duration=b.fx.speeds[r.duration]:r.duration=b.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue=\"fx\"),r.old=r.complete,r.complete=function(){h(r.old)&&r.old.call(this),r.queue&&b.dequeue(this,r.queue)},r},b.fn.extend({fadeTo:function(e,t,n,r){return this.filter(oe).css(\"opacity\",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=b.isEmptyObject(e),o=b.speed(t,n,r),a=function(){var t=ct(this,b.extend({},e),o);(i||G.get(this,\"finish\"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return\"string\"!=typeof e&&(n=t,t=e,e=void 0),t&&this.queue(e||\"fx\",[]),this.each((function(){var t=!0,i=null!=e&&e+\"queueHooks\",o=b.timers,a=G.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&ot.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||b.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||\"fx\"),this.each((function(){var t,n=G.get(this),r=n[e+\"queue\"],i=n[e+\"queueHooks\"],o=b.timers,a=r?r.length:0;for(n.finish=!0,b.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),b.each([\"toggle\",\"show\",\"hide\"],(function(e,t){var n=b.fn[t];b.fn[t]=function(e,r,i){return null==e||\"boolean\"==typeof e?n.apply(this,arguments):this.animate(ut(t,!0),e,r,i)}})),b.each({slideDown:ut(\"show\"),slideUp:ut(\"hide\"),slideToggle:ut(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},(function(e,t){b.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),b.timers=[],b.fx.tick=function(){var e,t=0,n=b.timers;for(nt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||b.fx.stop(),nt=void 0},b.fx.timer=function(e){b.timers.push(e),b.fx.start()},b.fx.interval=13,b.fx.start=function(){rt||(rt=!0,at())},b.fx.stop=function(){rt=null},b.fx.speeds={slow:600,fast:200,_default:400},b.fn.delay=function(t,n){return t=b.fx&&b.fx.speeds[t]||t,n=n||\"fx\",this.queue(n,(function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}}))},function(){var e=v.createElement(\"input\"),t=v.createElement(\"select\").appendChild(v.createElement(\"option\"));e.type=\"checkbox\",d.checkOn=\"\"!==e.value,d.optSelected=t.selected,(e=v.createElement(\"input\")).value=\"t\",e.type=\"radio\",d.radioValue=\"t\"===e.value}();var ft,pt=b.expr.attrHandle;b.fn.extend({attr:function(e,t){return B(this,b.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){b.removeAttr(this,e)}))}}),b.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?b.prop(e,t,n):(1===o&&b.isXMLDoc(e)||(i=b.attrHooks[t.toLowerCase()]||(b.expr.match.bool.test(t)?ft:void 0)),void 0!==n?null===n?void b.removeAttr(e,t):i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+\"\"),n):i&&\"get\"in i&&null!==(r=i.get(e,t))?r:null==(r=b.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!d.radioValue&&\"radio\"===t&&k(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(O);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),ft={set:function(e,t,n){return!1===t?b.removeAttr(e,n):e.setAttribute(n,n),n}},b.each(b.expr.match.bool.source.match(/\\w+/g),(function(e,t){var n=pt[t]||b.find.attr;pt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=pt[a],pt[a]=i,i=null!=n(e,t,r)?a:null,pt[a]=o),i}}));var dt=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function gt(e){return(e.match(O)||[]).join(\" \")}function vt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}function yt(e){return Array.isArray(e)?e:\"string\"==typeof e&&e.match(O)||[]}b.fn.extend({prop:function(e,t){return B(this,b.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[b.propFix[e]||e]}))}}),b.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&b.isXMLDoc(e)||(t=b.propFix[t]||t,i=b.propHooks[t]),void 0!==n?i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&\"get\"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=b.find.attr(e,\"tabindex\");return t?parseInt(t,10):dt.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),d.optSelected||(b.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),b.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],(function(){b.propFix[this.toLowerCase()]=this})),b.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){b(this).addClass(e.call(this,t,vt(this)))}));if((t=yt(e)).length)for(;n=this[u++];)if(i=vt(n),r=1===n.nodeType&&\" \"+gt(i)+\" \"){for(a=0;o=t[a++];)r.indexOf(\" \"+o+\" \")<0&&(r+=o+\" \");i!==(s=gt(r))&&n.setAttribute(\"class\",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){b(this).removeClass(e.call(this,t,vt(this)))}));if(!arguments.length)return this.attr(\"class\",\"\");if((t=yt(e)).length)for(;n=this[u++];)if(i=vt(n),r=1===n.nodeType&&\" \"+gt(i)+\" \"){for(a=0;o=t[a++];)for(;r.indexOf(\" \"+o+\" \")>-1;)r=r.replace(\" \"+o+\" \",\" \");i!==(s=gt(r))&&n.setAttribute(\"class\",s)}return this},toggleClass:function(e,t){var n=typeof e,r=\"string\"===n||Array.isArray(e);return\"boolean\"==typeof t&&r?t?this.addClass(e):this.removeClass(e):h(e)?this.each((function(n){b(this).toggleClass(e.call(this,n,vt(this),t),t)})):this.each((function(){var t,i,o,a;if(r)for(i=0,o=b(this),a=yt(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&\"boolean\"!==n||((t=vt(this))&&G.set(this,\"__className__\",t),this.setAttribute&&this.setAttribute(\"class\",t||!1===e?\"\":G.get(this,\"__className__\")||\"\"))}))},hasClass:function(e){var t,n,r=0;for(t=\" \"+e+\" \";n=this[r++];)if(1===n.nodeType&&(\" \"+gt(vt(n))+\" \").indexOf(t)>-1)return!0;return!1}});var mt=/\\r/g;b.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=h(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,b(this).val()):e)?i=\"\":\"number\"==typeof i?i+=\"\":Array.isArray(i)&&(i=b.map(i,(function(e){return null==e?\"\":e+\"\"}))),(t=b.valHooks[this.type]||b.valHooks[this.nodeName.toLowerCase()])&&\"set\"in t&&void 0!==t.set(this,i,\"value\")||(this.value=i))}))):i?(t=b.valHooks[i.type]||b.valHooks[i.nodeName.toLowerCase()])&&\"get\"in t&&void 0!==(n=t.get(i,\"value\"))?n:\"string\"==typeof(n=i.value)?n.replace(mt,\"\"):null==n?\"\":n:void 0}}),b.extend({valHooks:{option:{get:function(e){var t=b.find.attr(e,\"value\");return null!=t?t:gt(b.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a=\"select-one\"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,\"optgroup\"))){if(t=b(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=b.makeArray(t),a=i.length;a--;)((r=i[a]).selected=b.inArray(b.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),b.each([\"radio\",\"checkbox\"],(function(){b.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=b.inArray(b(e).val(),t)>-1}},d.checkOn||(b.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})})),d.focusin=\"onfocusin\"in e;var xt=/^(?:focusinfocus|focusoutblur)$/,bt=function(e){e.stopPropagation()};b.extend(b.event,{trigger:function(t,n,r,i){var o,a,s,u,l,f,p,d,y=[r||v],m=c.call(t,\"type\")?t.type:t,x=c.call(t,\"namespace\")?t.namespace.split(\".\"):[];if(a=d=s=r=r||v,3!==r.nodeType&&8!==r.nodeType&&!xt.test(m+b.event.triggered)&&(m.indexOf(\".\")>-1&&(x=m.split(\".\"),m=x.shift(),x.sort()),l=m.indexOf(\":\")<0&&\"on\"+m,(t=t[b.expando]?t:new b.Event(m,\"object\"==typeof t&&t)).isTrigger=i?2:3,t.namespace=x.join(\".\"),t.rnamespace=t.namespace?new RegExp(\"(^|\\\\.)\"+x.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:b.makeArray(n,[t]),p=b.event.special[m]||{},i||!p.trigger||!1!==p.trigger.apply(r,n))){if(!i&&!p.noBubble&&!g(r)){for(u=p.delegateType||m,xt.test(u+m)||(a=a.parentNode);a;a=a.parentNode)y.push(a),s=a;s===(r.ownerDocument||v)&&y.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=y[o++])&&!t.isPropagationStopped();)d=a,t.type=o>1?u:p.bindType||m,(f=(G.get(a,\"events\")||Object.create(null))[t.type]&&G.get(a,\"handle\"))&&f.apply(a,n),(f=l&&a[l])&&f.apply&&X(a)&&(t.result=f.apply(a,n),!1===t.result&&t.preventDefault());return t.type=m,i||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!X(r)||l&&h(r[m])&&!g(r)&&((s=r[l])&&(r[l]=null),b.event.triggered=m,t.isPropagationStopped()&&d.addEventListener(m,bt),r[m](),t.isPropagationStopped()&&d.removeEventListener(m,bt),b.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=b.extend(new b.Event,n,{type:e,isSimulated:!0});b.event.trigger(r,null,t)}}),b.fn.extend({trigger:function(e,t){return this.each((function(){b.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return b.event.trigger(e,t,n,!0)}}),d.focusin||b.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){var n=function(e){b.event.simulate(t,e.target,b.event.fix(e))};b.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=G.access(r,t);i||r.addEventListener(e,n,!0),G.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=G.access(r,t)-1;i?G.access(r,t,i):(r.removeEventListener(e,n,!0),G.remove(r,t))}}}));var wt=e.location,Tt={guid:Date.now()},Ct=/\\?/;b.parseXML=function(t){var n;if(!t||\"string\"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,\"text/xml\")}catch(e){n=void 0}return n&&!n.getElementsByTagName(\"parsererror\").length||b.error(\"Invalid XML: \"+t),n};var Et=/\\[\\]$/,St=/\\r?\\n/g,kt=/^(?:submit|button|image|reset|file)$/i,At=/^(?:input|select|textarea|keygen)/i;function Nt(e,t,n,r){var i;if(Array.isArray(t))b.each(t,(function(t,i){n||Et.test(e)?r(e,i):Nt(e+\"[\"+(\"object\"==typeof i&&null!=i?t:\"\")+\"]\",i,n,r)}));else if(n||\"object\"!==x(t))r(e,t);else for(i in t)Nt(e+\"[\"+i+\"]\",t[i],n,r)}b.param=function(e,t){var n,r=[],i=function(e,t){var n=h(t)?t():t;r[r.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(null==e)return\"\";if(Array.isArray(e)||e.jquery&&!b.isPlainObject(e))b.each(e,(function(){i(this.name,this.value)}));else for(n in e)Nt(n,e[n],t,i);return r.join(\"&\")},b.fn.extend({serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=b.prop(this,\"elements\");return e?b.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!b(this).is(\":disabled\")&&At.test(this.nodeName)&&!kt.test(e)&&(this.checked||!pe.test(e))})).map((function(e,t){var n=b(this).val();return null==n?null:Array.isArray(n)?b.map(n,(function(e){return{name:t.name,value:e.replace(St,\"\\r\\n\")}})):{name:t.name,value:n.replace(St,\"\\r\\n\")}})).get()}});var Dt=/%20/g,jt=/#.*$/,qt=/([?&])_=[^&]*/,Lt=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Ht=/^(?:GET|HEAD)$/,Ot=/^\\/\\//,Pt={},Rt={},Mt=\"*/\".concat(\"*\"),It=v.createElement(\"a\");function Wt(e){return function(t,n){\"string\"!=typeof t&&(n=t,t=\"*\");var r,i=0,o=t.toLowerCase().match(O)||[];if(h(n))for(;r=o[i++];)\"+\"===r[0]?(r=r.slice(1)||\"*\",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Ft(e,t,n,r){var i={},o=e===Rt;function a(s){var u;return i[s]=!0,b.each(e[s]||[],(function(e,s){var l=s(t,n,r);return\"string\"!=typeof l||o||i[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),a(l),!1)})),u}return a(t.dataTypes[0])||!i[\"*\"]&&a(\"*\")}function Bt(e,t){var n,r,i=b.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&b.extend(!0,e,r),e}It.href=wt.href,b.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:wt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(wt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":Mt,text:\"text/plain\",html:\"text/html\",xml:\"application/xml, text/xml\",json:\"application/json, text/javascript\"},contents:{xml:/\\bxml\\b/,html:/\\bhtml/,json:/\\bjson\\b/},responseFields:{xml:\"responseXML\",text:\"responseText\",json:\"responseJSON\"},converters:{\"* text\":String,\"text html\":!0,\"text json\":JSON.parse,\"text xml\":b.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Bt(Bt(e,b.ajaxSettings),t):Bt(b.ajaxSettings,e)},ajaxPrefilter:Wt(Pt),ajaxTransport:Wt(Rt),ajax:function(t,n){\"object\"==typeof t&&(n=t,t=void 0),n=n||{};var r,i,o,a,s,u,l,c,f,p,d=b.ajaxSetup({},n),h=d.context||d,g=d.context&&(h.nodeType||h.jquery)?b(h):b.event,y=b.Deferred(),m=b.Callbacks(\"once memory\"),x=d.statusCode||{},w={},T={},C=\"canceled\",E={readyState:0,getResponseHeader:function(e){var t;if(l){if(!a)for(a={};t=Lt.exec(o);)a[t[1].toLowerCase()+\" \"]=(a[t[1].toLowerCase()+\" \"]||[]).concat(t[2]);t=a[e.toLowerCase()+\" \"]}return null==t?null:t.join(\", \")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==l&&(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)E.always(e[E.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||C;return r&&r.abort(t),S(0,t),this}};if(y.promise(E),d.url=((t||d.url||wt.href)+\"\").replace(Ot,wt.protocol+\"//\"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=(d.dataType||\"*\").toLowerCase().match(O)||[\"\"],null==d.crossDomain){u=v.createElement(\"a\");try{u.href=d.url,u.href=u.href,d.crossDomain=It.protocol+\"//\"+It.host!=u.protocol+\"//\"+u.host}catch(e){d.crossDomain=!0}}if(d.data&&d.processData&&\"string\"!=typeof d.data&&(d.data=b.param(d.data,d.traditional)),Ft(Pt,d,n,E),l)return E;for(f in(c=b.event&&d.global)&&0==b.active++&&b.event.trigger(\"ajaxStart\"),d.type=d.type.toUpperCase(),d.hasContent=!Ht.test(d.type),i=d.url.replace(jt,\"\"),d.hasContent?d.data&&d.processData&&0===(d.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(d.data=d.data.replace(Dt,\"+\")):(p=d.url.slice(i.length),d.data&&(d.processData||\"string\"==typeof d.data)&&(i+=(Ct.test(i)?\"&\":\"?\")+d.data,delete d.data),!1===d.cache&&(i=i.replace(qt,\"$1\"),p=(Ct.test(i)?\"&\":\"?\")+\"_=\"+Tt.guid+++p),d.url=i+p),d.ifModified&&(b.lastModified[i]&&E.setRequestHeader(\"If-Modified-Since\",b.lastModified[i]),b.etag[i]&&E.setRequestHeader(\"If-None-Match\",b.etag[i])),(d.data&&d.hasContent&&!1!==d.contentType||n.contentType)&&E.setRequestHeader(\"Content-Type\",d.contentType),E.setRequestHeader(\"Accept\",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(\"*\"!==d.dataTypes[0]?\", \"+Mt+\"; q=0.01\":\"\"):d.accepts[\"*\"]),d.headers)E.setRequestHeader(f,d.headers[f]);if(d.beforeSend&&(!1===d.beforeSend.call(h,E,d)||l))return E.abort();if(C=\"abort\",m.add(d.complete),E.done(d.success),E.fail(d.error),r=Ft(Rt,d,n,E)){if(E.readyState=1,c&&g.trigger(\"ajaxSend\",[E,d]),l)return E;d.async&&d.timeout>0&&(s=e.setTimeout((function(){E.abort(\"timeout\")}),d.timeout));try{l=!1,r.send(w,S)}catch(e){if(l)throw e;S(-1,e)}}else S(-1,\"No Transport\");function S(t,n,a,u){var f,p,v,w,T,C=n;l||(l=!0,s&&e.clearTimeout(s),r=void 0,o=u||\"\",E.readyState=t>0?4:0,f=t>=200&&t<300||304===t,a&&(w=function(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;\"*\"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+\" \"+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(d,E,a)),!f&&b.inArray(\"script\",d.dataTypes)>-1&&(d.converters[\"text script\"]=function(){}),w=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if(\"*\"===o)o=u;else if(\"*\"!==u&&u!==o){if(!(a=l[u+\" \"+o]||l[\"* \"+o]))for(i in l)if((s=i.split(\" \"))[1]===o&&(a=l[u+\" \"+s[0]]||l[\"* \"+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:\"parsererror\",error:a?e:\"No conversion from \"+u+\" to \"+o}}}return{state:\"success\",data:t}}(d,w,E,f),f?(d.ifModified&&((T=E.getResponseHeader(\"Last-Modified\"))&&(b.lastModified[i]=T),(T=E.getResponseHeader(\"etag\"))&&(b.etag[i]=T)),204===t||\"HEAD\"===d.type?C=\"nocontent\":304===t?C=\"notmodified\":(C=w.state,p=w.data,f=!(v=w.error))):(v=C,!t&&C||(C=\"error\",t<0&&(t=0))),E.status=t,E.statusText=(n||C)+\"\",f?y.resolveWith(h,[p,C,E]):y.rejectWith(h,[E,C,v]),E.statusCode(x),x=void 0,c&&g.trigger(f?\"ajaxSuccess\":\"ajaxError\",[E,d,f?p:v]),m.fireWith(h,[E,C]),c&&(g.trigger(\"ajaxComplete\",[E,d]),--b.active||b.event.trigger(\"ajaxStop\")))}return E},getJSON:function(e,t,n){return b.get(e,t,n,\"json\")},getScript:function(e,t){return b.get(e,void 0,t,\"script\")}}),b.each([\"get\",\"post\"],(function(e,t){b[t]=function(e,n,r,i){return h(n)&&(i=i||r,r=n,n=void 0),b.ajax(b.extend({url:e,type:t,dataType:i,data:n,success:r},b.isPlainObject(e)&&e))}})),b.ajaxPrefilter((function(e){var t;for(t in e.headers)\"content-type\"===t.toLowerCase()&&(e.contentType=e.headers[t]||\"\")})),b._evalUrl=function(e,t,n){return b.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,converters:{\"text script\":function(){}},dataFilter:function(e){b.globalEval(e,t,n)}})},b.fn.extend({wrapAll:function(e){var t;return this[0]&&(h(e)&&(e=e.call(this[0])),t=b(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return h(e)?this.each((function(t){b(this).wrapInner(e.call(this,t))})):this.each((function(){var t=b(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=h(e);return this.each((function(n){b(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not(\"body\").each((function(){b(this).replaceWith(this.childNodes)})),this}}),b.expr.pseudos.hidden=function(e){return!b.expr.pseudos.visible(e)},b.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},b.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var $t={0:200,1223:204},_t=b.ajaxSettings.xhr();d.cors=!!_t&&\"withCredentials\"in _t,d.ajax=_t=!!_t,b.ajaxTransport((function(t){var n,r;if(d.cors||_t&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i[\"X-Requested-With\"]||(i[\"X-Requested-With\"]=\"XMLHttpRequest\"),i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,\"abort\"===e?s.abort():\"error\"===e?\"number\"!=typeof s.status?o(0,\"error\"):o(s.status,s.statusText):o($t[s.status]||s.status,s.statusText,\"text\"!==(s.responseType||\"text\")||\"string\"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n(\"error\"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout((function(){n&&r()}))},n=n(\"abort\");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}})),b.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),b.ajaxSetup({accepts:{script:\"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"},contents:{script:/\\b(?:java|ecma)script\\b/},converters:{\"text script\":function(e){return b.globalEval(e),e}}}),b.ajaxPrefilter(\"script\",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")})),b.ajaxTransport(\"script\",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=b(\"<script>\").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on(\"load error\",n=function(e){t.remove(),n=null,e&&i(\"error\"===e.type?404:200,e.type)}),v.head.appendChild(t[0])},abort:function(){n&&n()}}}));var zt,Ut=[],Xt=/(=)\\?(?=&|$)|\\?\\?/;b.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=Ut.pop()||b.expando+\"_\"+Tt.guid++;return this[e]=!0,e}}),b.ajaxPrefilter(\"json jsonp\",(function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(Xt.test(t.url)?\"url\":\"string\"==typeof t.data&&0===(t.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Xt.test(t.data)&&\"data\");if(s||\"jsonp\"===t.dataTypes[0])return i=t.jsonpCallback=h(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(Xt,\"$1\"+i):!1!==t.jsonp&&(t.url+=(Ct.test(t.url)?\"&\":\"?\")+t.jsonp+\"=\"+i),t.converters[\"script json\"]=function(){return a||b.error(i+\" was not called\"),a[0]},t.dataTypes[0]=\"json\",o=e[i],e[i]=function(){a=arguments},r.always((function(){void 0===o?b(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Ut.push(i)),a&&h(o)&&o(a[0]),a=o=void 0})),\"script\"})),d.createHTMLDocument=((zt=v.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===zt.childNodes.length),b.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(d.createHTMLDocument?((r=(t=v.implementation.createHTMLDocument(\"\")).createElement(\"base\")).href=v.location.href,t.head.appendChild(r)):t=v),o=!n&&[],(i=A.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&b(o).remove(),b.merge([],i.childNodes)));var r,i,o},b.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(\" \");return s>-1&&(r=gt(e.slice(s)),e=e.slice(0,s)),h(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(i=\"POST\"),a.length>0&&b.ajax({url:e,type:i||\"GET\",dataType:\"html\",data:t}).done((function(e){o=arguments,a.html(r?b(\"<div>\").append(b.parseHTML(e)).find(r):e)})).always(n&&function(e,t){a.each((function(){n.apply(this,o||[e.responseText,t,e])}))}),this},b.expr.pseudos.animated=function(e){return b.grep(b.timers,(function(t){return e===t.elem})).length},b.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=b.css(e,\"position\"),c=b(e),f={};\"static\"===l&&(e.style.position=\"relative\"),s=c.offset(),o=b.css(e,\"top\"),u=b.css(e,\"left\"),(\"absolute\"===l||\"fixed\"===l)&&(o+u).indexOf(\"auto\")>-1?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),h(t)&&(t=t.call(e,n,b.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),\"using\"in t?t.using.call(e,f):(\"number\"==typeof f.top&&(f.top+=\"px\"),\"number\"==typeof f.left&&(f.left+=\"px\"),c.css(f))}},b.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){b.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if(\"fixed\"===b.css(r,\"position\"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&\"static\"===b.css(e,\"position\");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=b(e).offset()).top+=b.css(e,\"borderTopWidth\",!0),i.left+=b.css(e,\"borderLeftWidth\",!0))}return{top:t.top-i.top-b.css(r,\"marginTop\",!0),left:t.left-i.left-b.css(r,\"marginLeft\",!0)}}},offsetParent:function(){return this.map((function(){for(var e=this.offsetParent;e&&\"static\"===b.css(e,\"position\");)e=e.offsetParent;return e||ne}))}}),b.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},(function(e,t){var n=\"pageYOffset\"===t;b.fn[e]=function(r){return B(this,(function(e,r,i){var o;if(g(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i}),e,r,arguments.length)}})),b.each([\"top\",\"left\"],(function(e,t){b.cssHooks[t]=_e(d.pixelPosition,(function(e,n){if(n)return n=$e(e,t),Ie.test(n)?b(e).position()[t]+\"px\":n}))})),b.each({Height:\"height\",Width:\"width\"},(function(e,t){b.each({padding:\"inner\"+e,content:t,\"\":\"outer\"+e},(function(n,r){b.fn[r]=function(i,o){var a=arguments.length&&(n||\"boolean\"!=typeof i),s=n||(!0===i||!0===o?\"margin\":\"border\");return B(this,(function(t,n,i){var o;return g(t)?0===r.indexOf(\"outer\")?t[\"inner\"+e]:t.document.documentElement[\"client\"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body[\"scroll\"+e],o[\"scroll\"+e],t.body[\"offset\"+e],o[\"offset\"+e],o[\"client\"+e])):void 0===i?b.css(t,n,s):b.style(t,n,i,s)}),t,a?i:void 0,a)}}))})),b.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],(function(e,t){b.fn[t]=function(e){return this.on(t,e)}})),b.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),b.each(\"blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu\".split(\" \"),(function(e,t){b.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var Vt=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g;b.proxy=function(e,t){var n,r,o;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),h(e))return r=i.call(arguments,2),(o=function(){return e.apply(t||this,r.concat(i.call(arguments)))}).guid=e.guid=e.guid||b.guid++,o},b.holdReady=function(e){e?b.readyWait++:b.ready(!0)},b.isArray=Array.isArray,b.parseJSON=JSON.parse,b.nodeName=k,b.isFunction=h,b.isWindow=g,b.camelCase=U,b.type=x,b.now=Date.now,b.isNumeric=function(e){var t=b.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},b.trim=function(e){return null==e?\"\":(e+\"\").replace(Vt,\"\")},\"function\"==typeof define&&define.amd&&define(\"jquery\",[],(function(){return b}));var Gt=e.jQuery,Yt=e.$;return b.noConflict=function(t){return e.$===b&&(e.$=Yt),t&&e.jQuery===b&&(e.jQuery=Gt),b},void 0===t&&(e.jQuery=e.$=b),b}))},\n      460: function _(t,n,i){var o=t(458);function e(){var t=!1,n=!1;this.stopPropagation=function(){t=!0},this.isPropagationStopped=function(){return t},this.stopImmediatePropagation=function(){n=!0},this.isImmediatePropagationStopped=function(){return n}}function r(){this.__nonDataRow=!0}function u(){this.__group=!0,this.level=0,this.count=0,this.value=null,this.title=null,this.collapsed=!1,this.selectChecked=!1,this.totals=null,this.rows=[],this.groups=null,this.groupingKey=null}function s(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function l(){var t=null;this.isActive=function(n){return n?t===n:null!==t},this.activate=function(n){if(n!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!n.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!n.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=n}},this.deactivate=function(n){if(t!==n)throw new Error(\"SlickGrid.EditorLock.deactivate: specified editController is not the currently active one\");t=null},this.commitCurrentEdit=function(){return!t||t.commitCurrentEdit()},this.cancelCurrentEdit=function(){return!t||t.cancelCurrentEdit()}}u.prototype=new r,u.prototype.equals=function(t){return this.value===t.value&&this.count===t.count&&this.collapsed===t.collapsed&&this.title===t.title},s.prototype=new r,n.exports={Event:function(){var t=[];this.subscribe=function(n){t.push(n)},this.unsubscribe=function(n){for(var i=t.length-1;i>=0;i--)t[i]===n&&t.splice(i,1)},this.notify=function(n,i,o){var r;i=i||new e,o=o||this;for(var u=0;u<t.length&&!i.isPropagationStopped()&&!i.isImmediatePropagationStopped();u++)r=t[u].call(o,i,n);return r}},EventData:e,EventHandler:function(){var t=[];this.subscribe=function(n,i){return t.push({event:n,handler:i}),n.subscribe(i),this},this.unsubscribe=function(n,i){for(var o=t.length;o--;)if(t[o].event===n&&t[o].handler===i)return t.splice(o,1),void n.unsubscribe(i);return this},this.unsubscribeAll=function(){for(var n=t.length;n--;)t[n].event.unsubscribe(t[n].handler);return t=[],this}},Range:function(t,n,i,o){void 0===i&&void 0===o&&(i=t,o=n),this.fromRow=Math.min(t,i),this.fromCell=Math.min(n,o),this.toRow=Math.max(t,i),this.toCell=Math.max(n,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(t,n){return t>=this.fromRow&&t<=this.toRow&&n>=this.fromCell&&n<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:r,Group:u,GroupTotals:s,EditorLock:l,GlobalEditorLock:new l,TreeColumns:function(t){var n={};function i(t,n){return t.filter((function(t){var o=n.call(t);return o&&t.columns&&(t.columns=i(t.columns,n)),o&&(!t.columns||t.columns.length)}))}function e(t){return void 0===t?-1:t}function r(t){var n=[];if(t.hasOwnProperty(\"length\"))for(var i=0;i<t.length;i++)n=n.concat(r(t[i]));else{if(!t.hasOwnProperty(\"columns\"))return t;n=n.concat(r(t.columns))}return n}function u(){return o.extend(!0,[],t)}!function t(i){i.forEach((function(i){n[i.id]=i,i.columns&&t(i.columns)}))}(t),this.hasDepth=function(){for(var n in t)if(t[n].hasOwnProperty(\"columns\"))return!0;return!1},this.getTreeColumns=function(){return t},this.extractColumns=function(){return this.hasDepth()?r(t):t},this.getDepth=function(){return function t(n){if(!n.length)return n.columns?1+t(n.columns):1;for(var i in n)return t(n[i])}(t)},this.getColumnsInDepth=function(n){return function t(n,i,o){var e=[];if(i==(o=o||0))return n.length&&n.forEach((function(t){t.columns&&(t.extractColumns=function(){return r(t)})})),n;for(var u in n)n[u].columns&&(e=e.concat(t(n[u].columns,i,o+1)));return e}(t,n)},this.getColumnsInGroup=function(t){return r(t)},this.visibleColumns=function(){return i(u(),(function(){return this.visible}))},this.filter=function(t){return i(u(),t)},this.reOrder=function(n){return function t(n,i){n.sort((function(t,n){return e(i.getColumnIndex(t.id))-e(i.getColumnIndex(n.id))})).forEach((function(n){n.columns&&t(n.columns,i)}))}(t,n)},this.getById=function(t){return n[t]},this.getInIds=function(t){return t.map((function(t){return n[t]}))}},keyCode:{SPACE:8,BACKSPACE:8,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,ESC:27,HOME:36,INSERT:45,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,RIGHT:39,TAB:9,UP:38,A:65,C:67,V:86},preClickClassName:\"slick-edit-preclick\",GridAutosizeColsMode:{None:\"NOA\",LegacyOff:\"LOF\",LegacyForceFit:\"LFF\",IgnoreViewport:\"IGV\",FitColsToViewport:\"FCV\",FitViewportToCols:\"FVC\"},ColAutosizeMode:{Locked:\"LCK\",Guide:\"GUI\",Content:\"CON\",ContentIntelligent:\"CTI\"},RowSelectionMode:{FirstRow:\"FS1\",FirstNRows:\"FSN\",AllRows:\"ALL\",LastRow:\"LS1\"},ValueFilterMode:{None:\"NONE\",DeDuplicate:\"DEDP\",GetGreatestAndSub:\"GR8T\",GetLongestTextAndSub:\"LNSB\",GetLongestText:\"LNSC\"},WidthEvalMode:{CanvasTextSize:\"CANV\",HTML:\"HTML\"}}},\n      461: function _(e,t,o){var l=e(458),n=e(460);t.exports={CheckboxSelectColumn:function(e){var t,o=null,i=k(),c=new n.EventHandler,r={},d=!1,a=l.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,hideSelectAllCheckbox:!1,toolTip:\"Select/Deselect All\",width:30,hideInColumnTitleRow:!1,hideInFilterHeaderRow:!0},e);function s(){t.updateColumnHeader(a.columnId,\"\",\"\")}function u(){l(\"#filter-checkbox-selectall-container\").hide()}function h(e,n){var c,s,u,h=t.getSelectedRows(),f={},p=0;if(\"function\"==typeof o)for(u=0;u<t.getDataLength();u++){C(s,t.getDataItem(u),t)||p++}var b=[];for(s=0;s<h.length;s++){c=h[s],C(s,t.getDataItem(c),t)?(f[c]=!0,f[c]!==r[c]&&(t.invalidateRow(c),delete r[c])):b.push(c)}for(s in r)t.invalidateRow(s);(r=f,t.render(),d=h.length&&h.length+p>=t.getDataLength(),a.hideInColumnTitleRow||a.hideSelectAllCheckbox||R(d),a.hideInFilterHeaderRow)||l(\"#header-filter-selector\"+i).prop(\"checked\",d);if(b.length>0){for(s=0;s<b.length;s++){var m=h.indexOf(b[s]);h.splice(m,1)}t.setSelectedRows(h)}}function f(e,o){32==e.which&&t.getColumns()[o.cell].id===a.columnId&&(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit()||b(o.row),e.preventDefault(),e.stopImmediatePropagation())}function p(e,o){if(t.getColumns()[o.cell].id===a.columnId&&l(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();b(o.row),e.stopPropagation(),e.stopImmediatePropagation()}}function b(e){var o=t.getDataItem(e);C(e,o,t)&&(r[e]?t.setSelectedRows(l.grep(t.getSelectedRows(),(function(t){return t!=e}))):t.setSelectedRows(t.getSelectedRows().concat(e)),t.setActiveCell(e,function(){if(null===g){g=0;for(var e=t.getColumns(),o=0;o<e.length;o++)e[o].id==a.columnId&&(g=o)}return g}()))}function m(e,o){if(o.column.id==a.columnId&&l(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(l(e.target).is(\":checked\")){for(var n=[],i=0;i<t.getDataLength();i++){C(i,t.getDataItem(i),t)&&n.push(i)}t.setSelectedRows(n)}else t.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}\"function\"==typeof a.selectableOverride&&v(a.selectableOverride);var g=null;function k(){return Math.round(1e7*Math.random())}function w(e,t,o,l,n,i){var c=k()+e;return n&&C(e,n,i)?r[e]?\"<input id='selector\"+c+\"' type='checkbox' checked='checked'><label for='selector\"+c+\"'></label>\":\"<input id='selector\"+c+\"' type='checkbox'><label for='selector\"+c+\"'></label>\":null}function C(e,t,l){return\"function\"!=typeof o||o(e,t,l)}function R(e){e?t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+i+\"' type='checkbox' checked='checked'><label for='header-selector\"+i+\"'></label>\",a.toolTip):t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+i+\"' type='checkbox'><label for='header-selector\"+i+\"'></label>\",a.toolTip)}function v(e){o=e}l.extend(this,{init:function(e){t=e,c.subscribe(t.onSelectedRowsChanged,h).subscribe(t.onClick,p).subscribe(t.onKeyDown,f),a.hideInFilterHeaderRow||function(e){e.onHeaderRowCellRendered.subscribe((function(e,t){\"sel\"===t.column.field&&(l(t.node).empty(),l(\"<span id='filter-checkbox-selectall-container'><input id='header-filter-selector\"+i+\"' type='checkbox'><label for='header-filter-selector\"+i+\"'></label></span>\").appendTo(t.node).on(\"click\",(function(e){m(e,t)})))}))}(e),a.hideInColumnTitleRow||c.subscribe(t.onHeaderClick,m)},destroy:function(){c.unsubscribeAll()},pluginName:\"CheckboxSelectColumn\",deSelectRows:function(e){var o,n=e.length,i=[];for(o=0;o<n;o++)r[e[o]]&&(i[i.length]=e[o]);t.setSelectedRows(l.grep(t.getSelectedRows(),(function(e){return i.indexOf(e)<0})))},selectRows:function(e){var o,l=e.length,n=[];for(o=0;o<l;o++)r[e[o]]||(n[n.length]=e[o]);t.setSelectedRows(t.getSelectedRows().concat(n))},getColumnDefinition:function(){return{id:a.columnId,name:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":\"<input id='header-selector\"+i+\"' type='checkbox'><label for='header-selector\"+i+\"'></label>\",toolTip:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,hideSelectAllCheckbox:a.hideSelectAllCheckbox,formatter:w}},getOptions:function(){return a},selectableOverride:v,setOptions:function(e){if((a=l.extend(!0,{},a,e)).hideSelectAllCheckbox)s(),u();else if(a.hideInColumnTitleRow?s():(R(d),c.subscribe(t.onHeaderClick,m)),a.hideInFilterHeaderRow)u();else{var o=l(\"#filter-checkbox-selectall-container\");o.show(),o.find('input[type=\"checkbox\"]').prop(\"checked\",d)}}})}}},\n      462: function _(e,t,o){var l=e(458),n=e(460),a=n.keyCode;t.exports={CellExternalCopyManager:function(e){var t,o,r=this,i=e||{},s=i.copiedCellStyleLayerKey||\"copy-manager\",u=i.copiedCellStyle||\"copied\",c=0,d=i.bodyElement||document.body,f=i.onCopyInit||null,h=i.onCopySuccess||null;function C(e){if(i.headerColumnValueExtractor){var t=i.headerColumnValueExtractor(e);if(t)return t}return e.name}function m(e,o,n){if(i.dataItemColumnValueExtractor){var a=i.dataItemColumnValueExtractor(e,o);if(a)return a}var r=\"\";if(o.editor){var s={container:l(\"<p>\"),column:o,position:{top:0,left:0},grid:t,event:n},u=new o.editor(s);u.loadValue(e),r=u.serializeValue(),u.destroy()}else r=e[o.field];return r}function g(e,o,n){if(o.denyPaste)return null;if(i.dataItemColumnValueSetter)return i.dataItemColumnValueSetter(e,o,n);if(o.editor){var a={container:l(\"body\"),column:o,position:{top:0,left:0},grid:t},r=new o.editor(a);r.loadValue(e),r.applyValue(e,n),r.destroy()}else e[o.field]=n}function p(e){var t=document.createElement(\"textarea\");return t.style.position=\"absolute\",t.style.left=\"-1000px\",t.style.top=document.body.scrollTop+\"px\",t.value=e,d.appendChild(t),t.select(),t}function y(e,l){var n;if(!t.getEditorLock().isActive()||t.getOptions().autoEdit){if(e.which==a.ESC&&o&&(e.preventDefault(),w(),r.onCopyCancelled.notify({ranges:o}),o=null),(e.which===a.C||e.which===a.INSERT)&&(e.ctrlKey||e.metaKey)&&!e.shiftKey&&(f&&f.call(),0!==(n=t.getSelectionModel().getSelectedRanges()).length)){o=n,v(n),r.onCopyCells.notify({ranges:n});for(var s=t.getColumns(),u=\"\",c=0;c<n.length;c++){for(var y=n[c],D=[],S=y.fromRow;S<y.toRow+1;S++){var R=[],x=t.getDataItem(S);if(0===D.length&&i.includeHeaderWhenCopying){for(var E=[],V=y.fromCell;V<y.toCell+1;V++)s[V].name.length>0&&E.push(C(s[V]));D.push(E.join(\"\\t\"))}for(V=y.fromCell;V<y.toCell+1;V++)R.push(m(x,s[V],e));D.push(R.join(\"\\t\"))}u+=D.join(\"\\r\\n\")+\"\\r\\n\"}if(window.clipboardData)return window.clipboardData.setData(\"Text\",u),!0;var b=document.activeElement;if((M=p(u)).focus(),setTimeout((function(){d.removeChild(M),b?b.focus():console.log(\"Not element to restore focus to after copy?\")}),100),h){var I=0;I=1===n.length?n[0].toRow+1-n[0].fromRow:n.length,h.call(this,I)}return!1}if(!i.readOnlyMode&&(e.which===a.V&&(e.ctrlKey||e.metaKey)&&!e.shiftKey||e.which===a.INSERT&&e.shiftKey&&!e.ctrlKey)){var M=p(\"\");return setTimeout((function(){!function(e,t){var o=e.getColumns(),l=t.value.split(/[\\n\\f\\r]/);\"\"===l[l.length-1]&&l.pop();var n=[],a=0;d.removeChild(t);for(var s=0;s<l.length;s++)\"\"!==l[s]?n[a++]=l[s].split(\"\\t\"):n[a++]=[\"\"];var u=e.getActiveCell(),c=e.getSelectionModel().getSelectedRanges(),f=c&&c.length?c[0]:null,h=null,C=null;if(f)h=f.fromRow,C=f.fromCell;else{if(!u)return;h=u.row,C=u.cell}var m=!1,p=n.length,y=n.length?n[0].length:0;1==n.length&&1==n[0].length&&f&&(m=!0,p=f.toRow-f.fromRow+1,y=f.toCell-f.fromCell+1);var w=e.getData().length-h,D=0;if(w<p&&i.newRowCreator){var S=e.getData();for(D=1;D<=p-w;D++)S.push({});e.setData(S),e.render()}var R=h+p>e.getDataLength();if(i.newRowCreator&&R){var x=h+p-e.getDataLength();i.newRowCreator(x)}var E={isClipboardCommand:!0,clippedRange:n,oldValues:[],cellExternalCopyManager:r,_options:i,setDataItemValueForColumn:g,markCopySelection:v,oneCellToMultiple:m,activeRow:h,activeCell:C,destH:p,destW:y,maxDestY:e.getDataLength(),maxDestX:e.getColumns().length,h:0,w:0,execute:function(){this.h=0;for(var t=0;t<this.destH;t++){this.oldValues[t]=[],this.w=0,this.h++;for(var l=0;l<this.destW;l++){this.w++;var a=h+t,r=C+l;if(a<this.maxDestY&&r<this.maxDestX){e.getCellNode(a,r);var i=e.getDataItem(a);this.oldValues[t][l]=i[o[r].field],m?this.setDataItemValueForColumn(i,o[r],n[0][0]):this.setDataItemValueForColumn(i,o[r],n[t]?n[t][l]:\"\"),e.updateCell(a,r),e.onCellChange.notify({row:a,cell:r,item:i,grid:e})}}}var s={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};this.markCopySelection([s]),e.getSelectionModel().setSelectedRanges([s]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[s]})},undo:function(){for(var t=0;t<this.destH;t++)for(var l=0;l<this.destW;l++){var n=h+t,a=C+l;if(n<this.maxDestY&&a<this.maxDestX){e.getCellNode(n,a);var r=e.getDataItem(n);m?this.setDataItemValueForColumn(r,o[a],this.oldValues[0][0]):this.setDataItemValueForColumn(r,o[a],this.oldValues[t][l]),e.updateCell(n,a),e.onCellChange.notify({row:n,cell:a,item:r,grid:e})}}var i={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};if(this.markCopySelection([i]),e.getSelectionModel().setSelectedRanges([i]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[i]}),D>1){for(var s=e.getData();D>1;D--)s.splice(s.length-1,1);e.setData(s),e.render()}}};i.clipboardCommandHandler?i.clipboardCommandHandler(E):E.execute()}(t,M)}),100),!1}}}function v(e){w();for(var o=t.getColumns(),l={},n=0;n<e.length;n++)for(var a=e[n].fromRow;a<=e[n].toRow;a++){l[a]={};for(var i=e[n].fromCell;i<=e[n].toCell&&i<o.length;i++)l[a][o[i].id]=u}t.setCellCssStyles(s,l),clearTimeout(c),c=setTimeout((function(){r.clearCopySelection()}),2e3)}function w(){t.removeCellCssStyles(s)}l.extend(this,{init:function(e){(t=e).onKeyDown.subscribe(y);var o=e.getSelectionModel();if(!o)throw new Error(\"Selection model is mandatory for this plugin. Please set a selection model on the grid before adding this plugin: grid.setSelectionModel(new Slick.CellSelectionModel())\");o.onSelectedRangesChanged.subscribe((function(e,o){t.focus()}))},destroy:function(){t.onKeyDown.unsubscribe(y)},pluginName:\"CellExternalCopyManager\",clearCopySelection:w,handleKeyDown:y,onCopyCells:new n.Event,onCopyCancelled:new n.Event,onPasteCells:new n.Event,setIncludeHeaderWhenCopying:function(e){i.includeHeaderWhenCopying=e}})}}},\n      463: function _(r,t,o){var _=r(1);_.__exportStar(r(460),t.exports),_.__exportStar(r(464),t.exports),_.__exportStar(r(467),t.exports),_.__exportStar(r(468),t.exports),_.__exportStar(r(469),t.exports),_.__exportStar(r(470),t.exports),_.__exportStar(r(471),t.exports)},\n      464: function _(require,module,exports){\n      /**\n           * @license\n           * (c) 2009-2016 Michael Leibman\n           * michael{dot}leibman{at}gmail{dot}com\n           * http://github.com/mleibman/slickgrid\n           *\n           * Distributed under MIT license.\n           * All rights reserved.\n           *\n           * SlickGrid v2.4\n           *\n           * NOTES:\n           *     Cell/row DOM manipulations are done directly bypassing jQuery's DOM manipulation methods.\n           *     This increases the speed dramatically, but can only be done safely because there are no event handlers\n           *     or data associated with any cell/row DOM nodes.  Cell editors must make sure they implement .destroy()\n           *     and do proper cleanup.\n           */\n      var $=require(458),Slick=require(460),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(465),$.fn.drop||require(466);var defaults={alwaysShowVerticalScroll:!1,alwaysAllowHorizontalScroll:!1,explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,suppressActiveCellChangeOnEdit:!1,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,showColumnHeader:!0,showHeaderRow:!1,headerRowHeight:25,createFooterRow:!1,showFooterRow:!1,footerRowHeight:25,createPreHeaderPanel:!1,showPreHeaderPanel:!1,preHeaderPanelHeight:25,showTopPanel:!1,topPanelHeight:25,formatterFactory:null,editorFactory:null,cellFlashingCssClass:\"flashing\",selectedCellCssClass:\"selected\",multiSelect:!0,enableTextSelectionOnCells:!1,dataItemColumnValueExtractor:null,frozenBottom:!1,frozenColumn:-1,frozenRow:-1,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,sortColNumberInSeparateSpan:!1,defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0,viewportClass:null,minRowBuffer:3,emulatePagingWhenScrolling:!0,editorCellNavOnLRKeys:!1,doPaging:!0,autosizeColsMode:Slick.GridAutosizeColsMode.LegacyOff,autosizeColPaddingPx:4,autosizeTextAvgToMWidthRatio:.75,viewportSwitchToScrollModeWidthPercent:void 0,viewportMinWidthPx:void 0,viewportMaxWidthPx:void 0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,maxWidth:void 0,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!0},columnAutosizeDefaults={ignoreHeaderText:!1,colValueArray:void 0,allowAddlPercent:void 0,formatterOverride:void 0,autosizeMode:Slick.ColAutosizeMode.ContentIntelligent,rowSelectionModeOnInit:void 0,rowSelectionMode:Slick.RowSelectionMode.FirstNRows,rowSelectionCount:100,valueFilterMode:Slick.ValueFilterMode.None,widthEvalMode:Slick.WidthEvalMode.CanvasTextSize,sizeToRemaining:void 0,widthPx:void 0,colDataTypeOf:void 0},th,h,ph,n,cj,page=0,offset=0,vScrollDir=1,initialized=!1,$container,uid=\"slickgrid_\"+Math.round(1e6*Math.random()),self=this,$focusSink,$focusSink2,$groupHeaders=$(),$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacerL,$headerRowSpacerR,$footerRow,$footerRowScroller,$footerRowSpacerL,$footerRowSpacerR,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$preHeaderPanelR,$preHeaderPanelScrollerR,$preHeaderPanelSpacerR,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,treeColumns,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,canvasWidthL,canvasWidthR,headersWidth,headersWidthL,headersWidthR,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,hasFrozenRows=!1,frozenRowsHeight=0,actualFrozenRow=-1,paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,topPanelH=0,headerRowH=0,footerRowH=0,tabbingDirection=1,$activeCanvasNode,$activeViewportNode,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows=0,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,scrollThrottle=ActionThrottle(render,50),h_editorLoader=null,h_render=null,h_postrender=null,h_postrenderCleanup=null,postProcessedRows={},postProcessToRow=null,postProcessFromRow=null,postProcessedCleanupQueue=[],postProcessgroupId=0,counter_rows_rendered=0,counter_rows_removed=0,rowNodeFromLastMouseWheelEvent,zombieRowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent,$paneHeaderL,$paneHeaderR,$paneTopL,$paneTopR,$paneBottomL,$paneBottomR,$headerScrollerL,$headerScrollerR,$headerL,$headerR,$groupHeadersL,$groupHeadersR,$headerRowScrollerL,$headerRowScrollerR,$footerRowScrollerL,$footerRowScrollerR,$headerRowL,$headerRowR,$footerRowL,$footerRowR,$topPanelScrollerL,$topPanelScrollerR,$topPanelL,$topPanelR,$viewportTopL,$viewportTopR,$viewportBottomL,$viewportBottomR,$canvasTopL,$canvasTopR,$canvasBottomL,$canvasBottomR,$viewportScrollContainerX,$viewportScrollContainerY,$headerScrollContainer,$headerRowScrollContainer,$footerRowScrollContainer,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[],columnResizeDragging=!1;function init(){if(($container=container instanceof $?container:$(container)).length<1)throw new Error(\"SlickGrid requires a valid container, \"+container+\" does not exist in the DOM.\");if(cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,treeColumns=new Slick.TreeColumns(columns),columns=treeColumns.extractColumns(),updateColumnProps(),options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");if(editController={commitCurrentEdit,cancelCurrentEdit},$container.empty().css(\"overflow\",\"hidden\").css(\"outline\",0).addClass(uid).addClass(\"ui-widget\"),/relative|absolute|fixed/.test($container.css(\"position\"))||$container.css(\"position\",\"relative\"),$focusSink=$(\"<div tabIndex='0' hideFocus style='position:fixed;width:0;height:0;top:0;left:0;outline:0;'></div>\").appendTo($container),$paneHeaderL=$(\"<div class='slick-pane slick-pane-header slick-pane-left' tabIndex='0' />\").appendTo($container),$paneHeaderR=$(\"<div class='slick-pane slick-pane-header slick-pane-right' tabIndex='0' />\").appendTo($container),$paneTopL=$(\"<div class='slick-pane slick-pane-top slick-pane-left' tabIndex='0' />\").appendTo($container),$paneTopR=$(\"<div class='slick-pane slick-pane-top slick-pane-right' tabIndex='0' />\").appendTo($container),$paneBottomL=$(\"<div class='slick-pane slick-pane-bottom slick-pane-left' tabIndex='0' />\").appendTo($container),$paneBottomR=$(\"<div class='slick-pane slick-pane-bottom slick-pane-right' tabIndex='0' />\").appendTo($container),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderL),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScroller),$preHeaderPanelScrollerR=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderR),$preHeaderPanelR=$(\"<div />\").appendTo($preHeaderPanelScrollerR),$preHeaderPanelSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScrollerR),options.showPreHeaderPanel||($preHeaderPanelScroller.hide(),$preHeaderPanelScrollerR.hide())),$headerScrollerL=$(\"<div class='slick-header ui-state-default slick-header-left' />\").appendTo($paneHeaderL),$headerScrollerR=$(\"<div class='slick-header ui-state-default slick-header-right' />\").appendTo($paneHeaderR),$headerScroller=$().add($headerScrollerL).add($headerScrollerR),treeColumns.hasDepth()){$groupHeadersL=[],$groupHeadersR=[];for(var e=0;e<treeColumns.getDepth()-1;e++)$groupHeadersL[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$groupHeadersR[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR);$groupHeaders=$().add($groupHeadersL).add($groupHeadersR)}$headerL=$(\"<div class='slick-header-columns slick-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$headerR=$(\"<div class='slick-header-columns slick-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR),$headers=$().add($headerL).add($headerR),$headerRowScrollerL=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopL),$headerRowScrollerR=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopR),$headerRowScroller=$().add($headerRowScrollerL).add($headerRowScrollerR),$headerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerL),$headerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerR),$headerRowL=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-left' />\").appendTo($headerRowScrollerL),$headerRowR=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-right' />\").appendTo($headerRowScrollerR),$headerRow=$().add($headerRowL).add($headerRowR),$topPanelScrollerL=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopL),$topPanelScrollerR=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopR),$topPanelScroller=$().add($topPanelScrollerL).add($topPanelScrollerR),$topPanelL=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerL),$topPanelR=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerR),$topPanel=$().add($topPanelL).add($topPanelR),options.showColumnHeader||$headerScroller.hide(),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),$viewportTopL=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneTopL),$viewportTopR=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneTopR),$viewportBottomL=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneBottomL),$viewportBottomR=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneBottomR),$viewport=$().add($viewportTopL).add($viewportTopR).add($viewportBottomL).add($viewportBottomR),$activeViewportNode=$viewportTopL,$canvasTopL=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportTopL),$canvasTopR=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportTopR),$canvasBottomL=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportBottomL),$canvasBottomR=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportBottomR),options.viewportClass&&$viewport.toggleClass(options.viewportClass,!0),$canvas=$().add($canvasTopL).add($canvasTopR).add($canvasBottomL).add($canvasBottomR),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),$activeCanvasNode=$canvasTopL,$preHeaderPanelSpacer&&$preHeaderPanelSpacer.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headers.width(getHeadersWidth()),$headerRowSpacerL.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headerRowSpacerR.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),options.createFooterRow&&($footerRowScrollerR=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopR),$footerRowScrollerL=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopL),$footerRowScroller=$().add($footerRowScrollerL).add($footerRowScrollerR),$footerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerL),$footerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerR),$footerRowL=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-left' />\").appendTo($footerRowScrollerL),$footerRowR=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-right' />\").appendTo($footerRowScrollerR),$footerRow=$().add($footerRowL).add($footerRowR),options.showFooterRow||$footerRowScroller.hide()),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,getViewportWidth(),getViewportHeight(),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",(function(e){return $(e.target).is(\"input,textarea\")})),setFrozenOptions(),setPaneVisibility(),setScroller(),setOverflow(),updateColumnCaches(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$.fn.mousewheel&&$viewport.on(\"mousewheel\",handleMouseWheel),$headerScroller.on(\"contextmenu\",handleHeaderContextMenu).on(\"click\",handleHeaderClick).on(\"mouseenter\",\".slick-header-column\",handleHeaderMouseEnter).on(\"mouseleave\",\".slick-header-column\",handleHeaderMouseLeave),$headerRowScroller.on(\"scroll\",handleHeaderRowScroll),options.createFooterRow&&($footerRow.on(\"contextmenu\",handleFooterContextMenu).on(\"click\",handleFooterClick),$footerRowScroller.on(\"scroll\",handleFooterRowScroll)),options.createPreHeaderPanel&&$preHeaderPanelScroller.on(\"scroll\",handlePreHeaderPanelScroll),$focusSink.add($focusSink2).on(\"keydown\",handleKeyDown),$canvas.on(\"keydown\",handleKeyDown).on(\"click\",handleClick).on(\"dblclick\",handleDblClick).on(\"contextmenu\",handleContextMenu).on(\"draginit\",handleDragInit).on(\"dragstart\",{distance:3},handleDragStart).on(\"drag\",handleDrag).on(\"dragend\",handleDragEnd).on(\"mouseenter\",\".slick-cell\",handleMouseEnter).on(\"mouseleave\",\".slick-cell\",handleMouseLeave),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each((function(){var e={};for(var o in cssShow)e[o]=this.style[o],this.style[o]=cssShow[o];oldProps.push(e)}))}function restoreCssFromHiddenInit(){$hiddenParents.each((function(e){var o=oldProps[e];for(var t in cssShow)this.style[t]=o[t]}))}function hasFrozenColumns(){return options.frozenColumn>-1}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var o=plugins.length;o>=0;o--)if(plugins[o]===e){plugins[o].destroy&&plugins[o].destroy(),plugins.splice(o,1);break}}function getPluginByName(e){for(var o=plugins.length-1;o>=0;o--)if(plugins[o].pluginName===e)return plugins[o]}function setSelectionModel(e){selectionModel&&(selectionModel.onSelectedRangesChanged.unsubscribe(handleSelectedRangesChanged),selectionModel.destroy&&selectionModel.destroy()),(selectionModel=e)&&(selectionModel.init(self),selectionModel.onSelectedRangesChanged.subscribe(handleSelectedRangesChanged))}function getSelectionModel(){return selectionModel}function getCanvasNode(e,o){e||(e=0),o||(o=0);var t=\"number\"==typeof e?e:getColumnIndex(e);return hasFrozenRows&&o>=actualFrozenRow+(options.frozenBottom?0:1)?hasFrozenColumns()&&t>options.frozenColumn?$canvasBottomR[0]:$canvasBottomL[0]:hasFrozenColumns()&&t>options.frozenColumn?$canvasTopR[0]:$canvasTopL[0]}function getActiveCanvasNode(e){return setActiveCanvasNode(e),$activeCanvasNode[0]}function getCanvases(){return $canvas}function setActiveCanvasNode(e){e&&($activeCanvasNode=$(e.target).closest(\".grid-canvas\"))}function getViewportNode(){return $viewport[0]}function getActiveViewportNode(e){return setActiveViewPortNode(e),$activeViewportNode[0]}function setActiveViewportNode(e){e&&($activeViewportNode=$(e.target).closest(\".slick-viewport\"))}function measureScrollbar(){var e=$('<div class=\"'+$viewport.className+'\" style=\"position:absolute; top:-10000px; left:-10000px; overflow:auto; width:100px; height:100px;\"></div>').appendTo(\"body\"),o=$('<div style=\"width:200px; height:200px; overflow:auto;\"></div>').appendTo(e),t={width:e[0].offsetWidth-e[0].clientWidth,height:e[0].offsetHeight-e[0].clientHeight};return o.remove(),e.remove(),t}function getHeadersWidth(){headersWidth=headersWidthL=headersWidthR=0;for(var e=!options.autoHeight,o=0,t=columns.length;o<t;o++){var n=columns[o].width;options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=n:headersWidthL+=n}return e&&(options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=scrollbarDimensions.width:headersWidthL+=scrollbarDimensions.width),hasFrozenColumns()?(headersWidthL+=1e3,headersWidthR=Math.max(headersWidthR,viewportW)+headersWidthL,headersWidthR+=scrollbarDimensions.width):(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidth=headersWidthL+headersWidthR,Math.max(headersWidth,viewportW)+1e3}function getHeadersWidthL(){return headersWidthL=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn||(headersWidthL+=e.width)})),hasFrozenColumns()?headersWidthL+=1e3:(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidthL}function getHeadersWidthR(){return headersWidthR=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn&&(headersWidthR+=e.width)})),hasFrozenColumns()&&(headersWidthR=Math.max(headersWidthR,viewportW)+getHeadersWidthL(),headersWidthR+=scrollbarDimensions.width),headersWidthR}function getCanvasWidth(){var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,o=columns.length;for(canvasWidthL=canvasWidthR=0;o--;)hasFrozenColumns()&&o>options.frozenColumn?canvasWidthR+=columns[o].width:canvasWidthL+=columns[o].width;var t=canvasWidthL+canvasWidthR;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var o,t=canvasWidth,n=canvasWidthL,l=canvasWidthR;((o=(canvasWidth=getCanvasWidth())!==t||canvasWidthL!==n||canvasWidthR!==l)||hasFrozenColumns()||hasFrozenRows)&&($canvasTopL.width(canvasWidthL),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),hasFrozenColumns()?($canvasTopR.width(canvasWidthR),$paneHeaderL.width(canvasWidthL),$paneHeaderR.css(\"left\",canvasWidthL),$paneHeaderR.css(\"width\",viewportW-canvasWidthL),$paneTopL.width(canvasWidthL),$paneTopR.css(\"left\",canvasWidthL),$paneTopR.css(\"width\",viewportW-canvasWidthL),$headerRowScrollerL.width(canvasWidthL),$headerRowScrollerR.width(viewportW-canvasWidthL),$headerRowL.width(canvasWidthL),$headerRowR.width(canvasWidthR),options.createFooterRow&&($footerRowScrollerL.width(canvasWidthL),$footerRowScrollerR.width(viewportW-canvasWidthL),$footerRowL.width(canvasWidthL),$footerRowR.width(canvasWidthR)),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$viewportTopL.width(canvasWidthL),$viewportTopR.width(viewportW-canvasWidthL),hasFrozenRows&&($paneBottomL.width(canvasWidthL),$paneBottomR.css(\"left\",canvasWidthL),$viewportBottomL.width(canvasWidthL),$viewportBottomR.width(viewportW-canvasWidthL),$canvasBottomL.width(canvasWidthL),$canvasBottomR.width(canvasWidthR))):($paneHeaderL.width(\"100%\"),$paneTopL.width(\"100%\"),$headerRowScrollerL.width(\"100%\"),$headerRowL.width(canvasWidth),options.createFooterRow&&($footerRowScrollerL.width(\"100%\"),$footerRowL.width(canvasWidth)),options.createPreHeaderPanel&&($preHeaderPanel.width(\"100%\"),$preHeaderPanel.width(canvasWidth)),$viewportTopL.width(\"100%\"),hasFrozenRows&&($viewportBottomL.width(\"100%\"),$canvasBottomL.width(canvasWidthL))),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width),$headerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$headerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),options.createFooterRow&&($footerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$footerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0))),(o||e)&&applyColumnWidths()}function disableSelection(e){e&&e.jquery&&e.attr(\"unselectable\",\"on\").css(\"MozUserSelect\",\"none\").on(\"selectstart.ui\",(function(){return!1}))}function getMaxSupportedCssHeight(){for(var e=1e6,o=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,t=$(\"<div style='display:none' />\").appendTo(document.body);;){var n=2*e;if(t.css(\"height\",n),n>o||t.height()!==n)break;e=n}return t.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=hasFrozenRows&&!options.frozenBottom?$canvasBottomL[0]:$canvasTopL[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewportTopL[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var o=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(o):o,o.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,o,t){if(initialized){var n=getColumnIndex(e);if(null!=n){var l=columns[n],r=$headers.children().eq(n);r&&(void 0!==o&&(columns[n].name=o),void 0!==t&&(columns[n].toolTip=t),trigger(self.onBeforeHeaderCellDestroy,{node:r[0],column:l,grid:self}),r.attr(\"title\",t||\"\").children().eq(0).html(o),trigger(self.onHeaderCellRendered,{node:r[0],column:l,grid:self}))}}}function getHeader(e){if(!e)return hasFrozenColumns()?$headers:$headerL;var o=getColumnIndex(e.id);return hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL}function getHeaderColumn(e){var o=\"number\"==typeof e?e:getColumnIndex(e),t=hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL,n=hasFrozenColumns()?o<=options.frozenColumn?o:o-options.frozenColumn-1:o,l=t.children().eq(n);return l&&l[0]}function getHeaderRow(){return hasFrozenColumns()?$headerRow:$headerRow[0]}function getFooterRow(){return hasFrozenColumns()?$footerRow:$footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getPreHeaderPanelRight(){return $preHeaderPanelR[0]}function getHeaderRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$headerRowL:(o=$headerRowR,t-=options.frozenColumn+1):o=$headerRowL;var n=o.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$footerRowL:(o=$footerRowR,t-=options.frozenColumn+1):o=$footerRowL;var n=o&&o.children().eq(t);return n&&n[0]}function createColumnFooter(){if(options.createFooterRow){$footerRow.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),$footerRowR.empty();for(var e=0;e<columns.length;e++){var o=columns[e],t=$(\"<div class='ui-state-default slick-footerrow-column l\"+e+\" r\"+e+\"'></div>\").data(\"column\",o).addClass(hasFrozenColumns()&&e<=options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e>options.frozenColumn?$footerRowR:$footerRowL);trigger(self.onFooterRowCellRendered,{node:t[0],column:o,grid:self})}}}function createColumnGroupHeaders(){var e=0,o=!1;if(treeColumns.hasDepth()){for(var t=0;t<$groupHeadersL.length;t++){$groupHeadersL[t].empty(),$groupHeadersR[t].empty();var n=treeColumns.getColumnsInDepth(t);for(var l in n){var r=n[l];e+=r.extractColumns().length,hasFrozenColumns()&&0===t&&e-1===options.frozenColumn&&(o=!0),$(\"<div class='ui-state-default slick-group-header-column' />\").html(\"<span class='slick-column-name'>\"+r.name+\"</span>\").attr(\"id\",\"\"+uid+r.id).attr(\"title\",r.toolTip||\"\").data(\"column\",r).addClass(r.headerCssClass||\"\").addClass(hasFrozenColumns()&&e-1>options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e-1>options.frozenColumn?$groupHeadersR[t]:$groupHeadersL[t])}if(hasFrozenColumns()&&0===t&&!o){$groupHeadersL[t].empty(),$groupHeadersR[t].empty(),alert(\"All columns of group should to be grouped!\");break}}applyColumnGroupHeaderWidths()}}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function o(){$(this).removeClass(\"ui-state-hover\")}$headers.find(\".slick-header-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderCellDestroy,{node:this,column:e,grid:self})})),$headerL.empty(),$headerR.empty(),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),$headerRow.find(\".slick-headerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})})),$headerRowL.empty(),$headerRowR.empty(),options.createFooterRow&&($footerRowL.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),hasFrozenColumns()&&($footerRowR.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowR.empty()));for(var t=0;t<columns.length;t++){var n=columns[t],l=hasFrozenColumns()?t<=options.frozenColumn?$headerL:$headerR:$headerL,r=hasFrozenColumns()?t<=options.frozenColumn?$headerRowL:$headerRowR:$headerRowL,i=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+n.name+\"</span>\").width(n.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+n.id).attr(\"title\",n.toolTip||\"\").data(\"column\",n).addClass(n.headerCssClass||\"\").addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(l);if((options.enableColumnReorder||n.sortable)&&i.on(\"mouseenter\",e).on(\"mouseleave\",o),n.hasOwnProperty(\"headerCellAttrs\")&&n.headerCellAttrs instanceof Object)for(var a in n.headerCellAttrs)n.headerCellAttrs.hasOwnProperty(a)&&i.attr(a,n.headerCellAttrs[a]);if(n.sortable&&(i.addClass(\"slick-header-sortable\"),i.append(\"<span class='slick-sort-indicator\"+(options.numberedMultiColumnSort&&!options.sortColNumberInSeparateSpan?\" slick-sort-indicator-numbered\":\"\")+\"' />\"),options.numberedMultiColumnSort&&options.sortColNumberInSeparateSpan&&i.append(\"<span class='slick-sort-indicator-numbered' />\")),trigger(self.onHeaderCellRendered,{node:i[0],column:n,grid:self}),options.showHeaderRow){var s=$(\"<div class='ui-state-default slick-headerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(r);trigger(self.onHeaderRowCellRendered,{node:s[0],column:n,grid:self})}if(options.createFooterRow&&options.showFooterRow){var d=$(\"<div class='ui-state-default slick-footerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:d[0],column:n,grid:self})}}setSortColumns(sortColumns),setupColumnResize(),options.enableColumnReorder&&(\"function\"==typeof options.enableColumnReorder?options.enableColumnReorder(self,$headers,headerColumnWidthDiff,setColumns,setupColumnResize,columns,getColumnIndex,uid,trigger):setupColumnReorder())}function setupColumnSort(){$headers.click((function(e){if(!columnResizeDragging&&(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\"))){var o=$(e.target).closest(\".slick-header-column\");if(o.length){var t=o.data(\"column\");if(t.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var n=null,l=0;l<sortColumns.length;l++)if(sortColumns[l].columnId==t.id){(n=sortColumns[l]).sortAsc=!n.sortAsc;break}var r=!!n;options.tristateMultiColumnSort?(n||(n={columnId:t.id,sortAsc:t.defaultSortAsc}),r&&n.sortAsc&&(sortColumns.splice(l,1),n=null),options.multiColumnSort||(sortColumns=[]),!n||r&&options.multiColumnSort||sortColumns.push(n)):e.metaKey&&options.multiColumnSort?n&&sortColumns.splice(l,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),n?0===sortColumns.length&&sortColumns.push(n):(n={columnId:t.id,sortAsc:t.defaultSortAsc},sortColumns.push(n))),setSortColumns(sortColumns),options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,(function(e){return{columnId:columns[getColumnIndex(e.columnId)].id,sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}))},e):trigger(self.onSort,{multiColumnSort:!1,columnId:sortColumns.length>0?t.id:null,sortCol:sortColumns.length>0?t:null,sortAsc:!(sortColumns.length>0)||sortColumns[0].sortAsc},e)}}}}))}function currentPositionInHeader(e){var o=0;return $headers.find(\".slick-header-column\").each((function(t){if(this.id==e)return o=t,!1})),o}function limitPositionInGroup(e){var o,t=0,n=0;return treeColumns.getColumnsInDepth($groupHeadersL.length-1).some((function(l){return t=n,n+=l.columns.length,l.columns.some((function(t){return t.id===e&&(o=l),o})),o})),n--,{start:t,end:n,group:o}}function remove(e,o){var t=e.lastIndexOf(o);t>-1&&(e.splice(t,1),remove(e,o))}function columnPositionValidInGroup(e){var o=currentPositionInHeader(e[0].id),t=limitPositionInGroup(e.data(\"column\").id),n=t.start<=o&&o<=t.end;return{limit:t,valid:n,message:n?\"\":'Column \"'.concat(e.text(),'\" can be reordered only within the \"',t.group.name,'\" group!')}}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\");var e,o=null;function t(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft+10}function n(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft-10}$headers.sortable({containment:\"parent\",distance:3,axis:\"x\",cursor:\"default\",tolerance:\"intersection\",helper:\"clone\",placeholder:\"slick-sortable-placeholder ui-state-default slick-header-column\",start:function(o,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),e=!hasFrozenColumns()||t.placeholder.offset().left+t.placeholder.width()>$viewportScrollContainerX.offset().left,$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,o){$(o.helper).removeClass(\"slick-header-column-active\")},sort:function(l,r){e&&l.originalEvent.pageX>$container[0].clientWidth?o||(o=setInterval(t,100)):e&&l.originalEvent.pageX<$viewportScrollContainerX.offset().left?o||(o=setInterval(n,100)):(clearInterval(o),o=null)},stop:function(e,t){var n=!1;clearInterval(o),o=null;var l=null;if(treeColumns.hasDepth()){var r=columnPositionValidInGroup(t.item);l=r.limit,(n=!r.valid)&&alert(r.message)}if(!n&&getEditorLock().commitCurrentEdit()){var i=$headerL.sortable(\"toArray\");i=i.concat($headerR.sortable(\"toArray\"));for(var a=[],s=0;s<i.length;s++)a.push(columns[getColumnIndex(i[s].replace(uid,\"\"))]);setColumns(a),trigger(self.onColumnsReordered,{impactedColumns:getImpactedColumns(l)}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function getImpactedColumns(e){var o=[];if(e)for(var t=e.start;t<=e.end;t++)o.push(columns[t]);else o=columns;return o}function setupColumnResize(){var e,o,t,n,l,r,i,a,s;(l=$headers.children()).find(\".slick-resizable-handle\").remove(),l.each((function(e,o){e>=columns.length||columns[e].resizable&&(void 0===a&&(a=e),s=e)})),void 0!==a&&l.each((function(d,c){d>=columns.length||d<a||options.forceFitColumns&&d>=s||($(c),$(\"<div class='slick-resizable-handle' />\").appendTo(c).on(\"dragstart\",(function(o,a){if(!getEditorLock().commitCurrentEdit())return!1;n=o.pageX,$(this).parent().addClass(\"slick-header-column-active\");var s=null,c=null;if(l.each((function(e,o){e>=columns.length||(columns[e].previousWidth=$(o).outerWidth())})),options.forceFitColumns)for(s=0,c=0,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(null!==c&&(t.maxWidth?c+=t.maxWidth-t.previousWidth:c=null),s+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));var u=0,h=0;for(e=0;e<=d;e++)(t=columns[e]).resizable&&(null!==h&&(t.maxWidth?h+=t.maxWidth-t.previousWidth:h=null),u+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));null===s&&(s=1e5),null===u&&(u=1e5),null===c&&(c=1e5),null===h&&(h=1e5),i=n+Math.min(s,h),r=n-Math.min(u,c)})).on(\"drag\",(function(l,a){columnResizeDragging=!0;var s,c,u=Math.min(i,Math.max(r,l.pageX))-n,h=0;if(u<0){for(c=u,e=d;e>=0;e--)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0))}else{for(c=u,h=0,0,e=d;e>=0;e--)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width}hasFrozenColumns()&&h!=canvasWidthL&&($headerL.width(h+1e3),$paneHeaderR.css(\"left\",h)),applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths(),trigger(self.onColumnsDrag,{triggeredByColumn:$(this).parent().attr(\"id\").replace(uid,\"\"),resizeHandle:$(this)})})).on(\"dragend\",(function(o,n){$(this).parent().removeClass(\"slick-header-column-active\");var r,i=$(this).parent().attr(\"id\").replace(uid,\"\");for(!0===trigger(self.onBeforeColumnsResize,{triggeredByColumn:i})&&(applyColumnHeaderWidths(),applyColumnGroupHeaderWidths()),e=0;e<columns.length;e++)t=columns[e],r=$(l[e]).outerWidth(),t.previousWidth!==r&&t.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{triggeredByColumn:i}),setTimeout((function(){columnResizeDragging=!1}),300)})))}))}function getVBoxDelta(e){var o=0;return e&&\"function\"==typeof e.css&&$.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],(function(t,n){o+=parseFloat(e.css(n))||0})),o}function setFrozenOptions(){if(options.frozenColumn=options.frozenColumn>=0&&options.frozenColumn<columns.length?parseInt(options.frozenColumn):-1,options.frozenRow>-1){hasFrozenRows=!0,frozenRowsHeight=options.frozenRow*options.rowHeight;var e=getDataLength();actualFrozenRow=options.frozenBottom?e-options.frozenRow:options.frozenRow}else hasFrozenRows=!1}function setPaneVisibility(){hasFrozenColumns()?($paneHeaderR.show(),$paneTopR.show(),hasFrozenRows?($paneBottomL.show(),$paneBottomR.show()):($paneBottomR.hide(),$paneBottomL.hide())):($paneHeaderR.hide(),$paneTopR.hide(),$paneBottomR.hide(),hasFrozenRows?$paneBottomL.show():($paneBottomR.hide(),$paneBottomL.hide()))}function setOverflow(){$viewportTopL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportTopR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),hasFrozenRows?\"scroll\":\"auto\")}),$viewportBottomL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportBottomR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),\"auto\")}),options.viewportClass&&($viewportTopL.toggleClass(options.viewportClass,!0),$viewportTopR.toggleClass(options.viewportClass,!0),$viewportBottomL.toggleClass(options.viewportClass,!0),$viewportBottomR.toggleClass(options.viewportClass,!0))}function setScroller(){hasFrozenColumns()?($headerScrollContainer=$headerScrollerR,$headerRowScrollContainer=$headerRowScrollerR,$footerRowScrollContainer=$footerRowScrollerR,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomR,$viewportScrollContainerY=$viewportTopR):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomR:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopR):($headerScrollContainer=$headerScrollerL,$headerRowScrollContainer=$headerRowScrollerL,$footerRowScrollContainer=$footerRowScrollerL,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomL,$viewportScrollContainerY=$viewportTopL):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomL:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopL)}function measureCellPaddingAndBorder(){var e,o=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],n=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==n[0]&&n[1]>=8||n[0]>=2,e=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){headerColumnWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){headerColumnHeightDiff+=parseFloat(e.css(t))||0}))),e.remove();var l=$(\"<div class='slick-row' />\").appendTo($canvas);e=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(l),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){cellWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){cellHeightDiff+=parseFloat(e.css(t))||0}))),l.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,o=[\".\"+uid+\" .slick-group-header-column { left: 1000px; }\",\".\"+uid+\" .slick-header-column { left: 1000px; }\",\".\"+uid+\" .slick-top-panel { height:\"+options.topPanelHeight+\"px; }\",\".\"+uid+\" .slick-preheader-panel { height:\"+options.preHeaderPanelHeight+\"px; }\",\".\"+uid+\" .slick-headerrow-columns { height:\"+options.headerRowHeight+\"px; }\",\".\"+uid+\" .slick-footerrow-columns { height:\"+options.footerRowHeight+\"px; }\",\".\"+uid+\" .slick-cell { height:\"+e+\"px; }\",\".\"+uid+\" .slick-row { height:\"+options.rowHeight+\"px; }\"],t=0;t<columns.length;t++)o.push(\".\"+uid+\" .l\"+t+\" { }\"),o.push(\".\"+uid+\" .r\"+t+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=o.join(\" \"):$style[0].appendChild(document.createTextNode(o.join(\" \")))}function getColumnCssRules(e){var o;if(!stylesheet){var t=document.styleSheets;for(o=0;o<t.length;o++)if((t[o].ownerNode||t[o].owningElement)==$style[0]){stylesheet=t[o];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var n,l,r=stylesheet.cssRules||stylesheet.rules;for(o=0;o<r.length;o++){var i=r[o].selectorText;(n=/\\.l\\d+/.exec(i))?(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesL[l]=r[o]):(n=/\\.r\\d+/.exec(i))&&(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesR[l]=r[o])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{});for(var e=plugins.length;e--;)unregisterPlugin(plugins[e]);options.enableColumnReorder&&$headers.filter(\":ui-sortable\").sortable(\"destroy\"),unbindAncestorScrollEvents(),$container.off(\".slickgrid\"),removeCssRules(),$canvas.off(\"draginit dragstart dragend drag\"),$container.empty().removeClass(uid)}var canvas=null,canvas_context=null;function autosizeColumn(e,o){var t=e;if(\"number\"==typeof e)t=columns[e];else if(\"string\"==typeof e)for(var n=0;n<columns.length;n++)columns[n].Id===e&&(t=columns[n]);getColAutosizeWidth(t,$(getCanvasNode(0,0)),o)}function autosizeColumns(e,o){if((e=e||options.autosizeColsMode)!==Slick.GridAutosizeColsMode.LegacyForceFit&&e!==Slick.GridAutosizeColsMode.LegacyOff){if(e!==Slick.GridAutosizeColsMode.None){(canvas=document.createElement(\"canvas\"))&&canvas.getContext&&(canvas_context=canvas.getContext(\"2d\"));var t,n,l,r,i=$(getCanvasNode(0,0)),a=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,s=0,d=0,c=0,u=0,h=0;for(t=0;t<columns.length;t++)getColAutosizeWidth(n=columns[t],i,o),h+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:0,u+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:n.minWidth,s+=n.autoSize.widthPx,d+=n.autoSize.sizeToRemaining?0:n.autoSize.widthPx,c+=n.autoSize.sizeToRemaining&&n.minWidth||0;var p=s-d;if(e===Slick.GridAutosizeColsMode.FitViewportToCols){var m=s+scrollbarDimensions.width;e=Slick.GridAutosizeColsMode.IgnoreViewport,options.viewportMaxWidthPx&&m>options.viewportMaxWidthPx?(m=options.viewportMaxWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport):options.viewportMinWidthPx&&m<options.viewportMinWidthPx&&(m=options.viewportMinWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport),$container.width(m)}if(e===Slick.GridAutosizeColsMode.FitColsToViewport)if(p>0&&d<a-c)for(t=0;t<columns.length;t++){var w=a-d;l=(n=columns[t]).autoSize.sizeToRemaining?w*n.autoSize.widthPx/p:n.autoSize.widthPx,n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}else if(options.viewportSwitchToScrollModeWidthPercent&&d+c>a*options.viewportSwitchToScrollModeWidthPercent/100||u>a)e=Slick.GridAutosizeColsMode.IgnoreViewport;else{var v=d-h,f=a-h-c;for(t=0;t<columns.length;t++)l=(n=columns[t]).width,n.autoSize.autosizeMode!==Slick.ColAutosizeMode.Locked&&(n.autoSize.sizeToRemaining?l=n.minWidth:((l=f/v*n.autoSize.widthPx)<n.minWidth&&(l=n.minWidth),v-=n.autoSize.widthPx,f-=l)),n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}if(e===Slick.GridAutosizeColsMode.IgnoreViewport)for(t=0;t<columns.length;t++)l=columns[t].autoSize.widthPx,columns[t].rerenderOnResize&&columns[t].width!=l&&(r=!0),columns[t].width=l;reRenderColumns(r)}}else legacyAutosizeColumns()}function LogColWidths(){for(var e=\"Col Widths:\",o=0;o<columns.length;o++)e+=\" \"+columns[o].width;console.log(e)}function getColAutosizeWidth(e,o,t){var n=e.autoSize;if(n.widthPx=e.width,n.autosizeMode!==Slick.ColAutosizeMode.Locked&&n.autosizeMode!==Slick.ColAutosizeMode.Guide){var l=getDataLength();if(n.autosizeMode===Slick.ColAutosizeMode.ContentIntelligent){var r,i=n.colDataTypeOf;if(l>0){var a=getDataItem(0);a&&\"object\"===(i=typeof(r=a[e.field]))&&(r instanceof Date&&(i=\"date\"),\"undefined\"!=typeof moment&&r instanceof moment&&(i=\"moment\"))}\"boolean\"===i&&(n.colValueArray=[!0,!1]),\"number\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetGreatestAndSub,n.rowSelectionMode=Slick.RowSelectionMode.AllRows),\"string\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetLongestText,n.rowSelectionMode=Slick.RowSelectionMode.AllRows,n.allowAddlPercent=5),\"date\"===i&&(n.colValueArray=[new Date(2009,8,30,12,20,20)]),\"moment\"===i&&\"undefined\"!=typeof moment&&(n.colValueArray=[moment([2009,8,30,12,20,20])])}var s=getColContentSize(e,o,t);s=s*(n.allowAddlPercent?1+n.allowAddlPercent/100:1)+options.autosizeColPaddingPx,e.minWidth&&s<e.minWidth&&(s=e.minWidth),e.maxWidth&&s>e.maxWidth&&(s=e.maxWidth),n.widthPx=s}}function getColContentSize(e,o,t){var n,l=e.autoSize,r=1,i=0,a=0;if(l.ignoreHeaderText||(a=getColHeaderWidth(e)),l.colValueArray)return i=getColWidth(e,o,l.colValueArray),Math.max(a,i);var s=getData();s.getItems&&(s=s.getItems());var d=(t?l.rowSelectionModeOnInit:void 0)||l.rowSelectionMode;if(d===Slick.RowSelectionMode.FirstRow&&(s=s.slice(0,1)),d===Slick.RowSelectionMode.LastRow&&(s=s.slice(s.length-1,s.length)),d===Slick.RowSelectionMode.FirstNRows&&(s=s.slice(0,l.rowSelectionCount)),l.valueFilterMode===Slick.ValueFilterMode.DeDuplicate){var c={};for(u=0,n=s.length;u<n;u++)c[s[u][e.field]]=!0;if(Object.keys)s=Object.keys(c);else for(var u in s=[],c)s.push(u)}if(l.valueFilterMode===Slick.ValueFilterMode.GetGreatestAndSub){var h,p=0;for(u=0,n=s.length;u<n;u++)w=s[u][e.field],Math.abs(w)>p&&(h=w,p=Math.abs(w));h=\"\"+h,s=[h=+(h=Array(h.length+1).join(\"9\"))]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestTextAndSub){var m=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length);w=Array(m+1).join(\"m\"),r=options.autosizeTextAvgToMWidthRatio,s=[w]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestText){m=0;var w,v=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length,v=u);s=[w=s[v][e.field]]}return i=getColWidth(e,o,s)*r,Math.max(a,i)}function getColWidth(e,o,t){var n=getColumnIndex(e.id),l=$('<div class=\"slick-row ui-widget-content\"></div>'),r=$('<div class=\"slick-cell\"></div>');r.css({position:\"absolute\",visibility:\"hidden\",\"text-overflow\":\"initial\",\"white-space\":\"nowrap\"}),l.append(r),o.append(l);var i,a,s,d,c=0;return canvas_context&&e.autoSize.widthEvalMode===Slick.WidthEvalMode.CanvasTextSize?(canvas_context.font=r.css(\"font-size\")+\" \"+r.css(\"font-family\"),$(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,(i=(a=\"\"+d)?canvas_context.measureText(a).width:0)>c&&(c=i,s=a)})),r.html(s),i=r.outerWidth(),l.remove(),i):($(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,applyFormatResultToCellNode(e.formatterOverride?e.formatterOverride(o,n,d,e,t):e.formatter?e.formatter(o,n,d,e,t):\"\"+d,r[0]),(i=r.outerWidth())>c&&(c=i)})),l.remove(),c)}function getColHeaderWidth(e){var o=0,t=getUID()+e.id,n=document.getElementById(t),l=t+\"_\";if(n){var r=n.cloneNode(!0);r.id=l,r.style.cssText=\"position: absolute; visibility: hidden;right: auto;text-overflow: initial;white-space: nowrap;\",n.parentNode.insertBefore(r,n),o=r.offsetWidth,r.parentNode.removeChild(r)}else{var i=getHeader(e);o=(n=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+e.name+\"</span>\").attr(\"id\",l).css({position:\"absolute\",visibility:\"hidden\",right:\"auto\",\"text-overflow:\":\"initial\",\"white-space\":\"nowrap\"}).addClass(e.headerCssClass||\"\").appendTo(i))[0].offsetWidth,i[0].removeChild(n[0])}return o}function legacyAutosizeColumns(){var e,o,t,n=[],l=0,r=0,i=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)o=columns[e],n.push(o.width),r+=o.width,o.resizable&&(l+=o.width-Math.max(o.minWidth,absoluteColumnMinWidth));for(t=r;r>i&&l;){var a=(r-i)/l;for(e=0;e<columns.length&&r>i;e++){o=columns[e];var s=n[e];if(!(!o.resizable||s<=o.minWidth||s<=absoluteColumnMinWidth)){var d=Math.max(o.minWidth,absoluteColumnMinWidth),c=Math.floor(a*(s-d))||1;r-=c=Math.min(c,s-d),l-=c,n[e]-=c}}if(t<=r)break;t=r}for(t=r;r<i;){var u=i/r;for(e=0;e<columns.length&&r<i;e++){o=columns[e];var h,p=n[e];r+=h=!o.resizable||o.maxWidth<=p?0:Math.min(Math.floor(u*p)-p,o.maxWidth-p||1e6)||1,n[e]+=r<=i?h:0}if(t>=r)break;t=r}var m=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=n[e]&&(m=!0),columns[e].width=n[e];reRenderColumns(m)}function reRenderColumns(e){applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),updateCanvasWidth(!0),trigger(self.onAutosizeColumns,{columns}),e&&(invalidateAllRows(),render())}function trigger(e,o,t){return t=t||new Slick.EventData,(o=o||{}).grid=self,e.notify(o,t,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function applyColumnGroupHeaderWidths(){if(treeColumns.hasDepth())for(var e=$groupHeadersL.length-1;e>=0;e--){treeColumns.getColumnsInDepth(e);$().add($groupHeadersL[e]).add($groupHeadersR[e]).each((function(e){var o=$(this),t=0;o.width(0===e?getHeadersWidthL():getHeadersWidthR()),o.children().each((function(){var e=$(this),n=$(this).data(\"column\");n.width=0,n.columns.forEach((function(){var e=o.next().children(\":eq(\"+t+++\")\");n.width+=e.outerWidth()})),e.width(n.width-headerColumnWidthDiff)}))}))}}function applyColumnHeaderWidths(){if(initialized){for(var e,o=0,t=$headers.children(),n=columns.length;o<n;o++)e=$(t[o]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[o].width&&e.outerWidth(columns[o].width):e.width()!==columns[o].width-headerColumnWidthDiff&&e.width(columns[o].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,o,t=0,n=0;n<columns.length;n++)e=columns[n].width,(o=getColumnCssRules(n)).left.style.left=t+\"px\",o.right.style.right=(-1!=options.frozenColumn&&n>options.frozenColumn?canvasWidthR:canvasWidthL)-t-e+\"px\",options.frozenColumn==n?t=0:t+=columns[n].width}function setSortColumn(e,o){setSortColumns([{columnId:e,sortAsc:o}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&sortColumns.length>1,t=$headers.children();t.removeClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\"),t.find(\".slick-sort-indicator-numbered\").text(\"\"),$.each(sortColumns,(function(e,n){null==n.sortAsc&&(n.sortAsc=!0);var l=getColumnIndex(n.columnId);null!=l&&(t.eq(l).addClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").addClass(n.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&t.eq(l).find(\".slick-sort-indicator-numbered\").text(e+1))}))}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,o){var t=selectedRows.slice(0);selectedRows=[];for(var n={},l=0;l<o.length;l++)for(var r=o[l].fromRow;r<=o[l].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=o[l].fromCell;i<=o[l].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),simpleArrayEquals(t,selectedRows)&&trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),previousSelectedRows:t},e)}function simpleArrayEquals(e,o){return Array.isArray(e)&&Array.isArray(o)&&o.sort().toString()!==e.sort().toString()}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,o=0,t=columns.length;o<t;o++)columnPosLeft[o]=e,columnPosRight[o]=e+columns[o].width,options.frozenColumn==o?e=0:e+=columns[o].width}function updateColumnProps(){columnsById={};for(var e=0;e<columns.length;e++){columns[e].width&&(columns[e].widthRequest=columns[e].width);var o=columns[e]=$.extend({},columnDefaults,columns[e]);o.autoSize=$.extend({},columnAutosizeDefaults,o.autoSize),columnsById[o.id]=e,o.minWidth&&o.width<o.minWidth&&(o.width=o.minWidth),o.maxWidth&&o.width>o.maxWidth&&(o.width=o.maxWidth),o.resizable}}function setColumns(e){var o=new Slick.TreeColumns(e);columns=o.hasDepth()?(treeColumns=o).extractColumns():e,updateColumnProps(),updateColumnCaches(),initialized&&(setPaneVisibility(),setOverflow(),invalidateAllRows(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),removeCssRules(),createCssRules(),resizeCanvas(),updateCanvasWidth(),applyColumnHeaderWidths(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,o){if(getEditorLock().commitCurrentEdit()){makeActiveCellNormal(),void 0!==e.showColumnHeader&&setColumnHeaderVisibility(e.showColumnHeader),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength());var t=$.extend(!0,{},options);options=$.extend(options,e),trigger(self.onSetOptions,{optionsBefore:t,optionsAfter:options}),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),o||render(),setFrozenOptions(),setScroller(),zombieRowNodeFromLastMouseWheelEvent=null,setColumns(treeColumns.extractColumns())}}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1),options.forceFitColumns&&(options.autosizeColsMode=Slick.GridAutosizeColsMode.LegacyForceFit,console.log(\"forceFitColumns option is deprecated - use autosizeColsMode\"))}function setData(e,o){data=e,invalidateAllRows(),updateRowCount(),o&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data&&data.length||0}function getDataLengthIncludingAddNew(){return getDataLength()+(options.enableAddRow&&(!pagingActive||pagingIsLastPage)?1:0)}function getDataItem(e){return data.getItem?data.getItem(e):data[e]}function getTopPanel(){return $topPanel[0]}function setTopPanelVisibility(e,o){var t=!1!==o;options.showTopPanel!=e&&(options.showTopPanel=e,e?t?$topPanelScroller.slideDown(\"fast\",resizeCanvas):($topPanelScroller.show(),resizeCanvas()):t?$topPanelScroller.slideUp(\"fast\",resizeCanvas):($topPanelScroller.hide(),resizeCanvas()))}function setHeaderRowVisibility(e,o){var t=!1!==o;options.showHeaderRow!=e&&(options.showHeaderRow=e,e?t?$headerRowScroller.slideDown(\"fast\",resizeCanvas):($headerRowScroller.show(),resizeCanvas()):t?$headerRowScroller.slideUp(\"fast\",resizeCanvas):($headerRowScroller.hide(),resizeCanvas()))}function setColumnHeaderVisibility(e,o){options.showColumnHeader!=e&&(options.showColumnHeader=e,e?o?$headerScroller.slideDown(\"fast\",resizeCanvas):($headerScroller.show(),resizeCanvas()):o?$headerScroller.slideUp(\"fast\",resizeCanvas):($headerScroller.hide(),resizeCanvas()))}function setFooterRowVisibility(e,o){var t=!1!==o;options.showFooterRow!=e&&(options.showFooterRow=e,e?t?$footerRowScroller.slideDown(\"fast\",resizeCanvas):($footerRowScroller.show(),resizeCanvas()):t?$footerRowScroller.slideUp(\"fast\",resizeCanvas):($footerRowScroller.hide(),resizeCanvas()))}function setPreHeaderPanelVisibility(e,o){var t=!1!==o;options.showPreHeaderPanel!=e&&(options.showPreHeaderPanel=e,e?t?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):($preHeaderPanelScroller.show(),resizeCanvas()):t?$preHeaderPanelScroller.slideUp(\"fast\",resizeCanvas):($preHeaderPanelScroller.hide(),resizeCanvas()))}function getContainerNode(){return $container.get(0)}function getRowTop(e){return options.rowHeight*e-offset}function getRowFromPosition(e){return Math.floor((e+offset)/options.rowHeight)}function scrollTo(e){e=Math.max(e,0),e=Math.min(e,th-$viewportScrollContainerY.height()+(viewportHasHScroll||hasFrozenColumns()?scrollbarDimensions.height:0));var o=offset;page=Math.min(n-1,Math.floor(e/ph));var t=e-(offset=Math.round(page*cj));offset!=o&&(cleanupRows(getVisibleRange(t)),updateRowPositions());prevScrollTop!=t&&(vScrollDir=prevScrollTop+o<t+offset?1:-1,lastRenderedScrollTop=scrollTop=prevScrollTop=t,hasFrozenColumns()&&($viewportTopL[0].scrollTop=t),hasFrozenRows&&($viewportBottomL[0].scrollTop=$viewportBottomR[0].scrollTop=t),$viewportScrollContainerY[0].scrollTop=t,trigger(self.onViewportChanged,{}))}function defaultFormatter(e,o,t,n,l,r){return null==t?\"\":(t+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function getFormatter(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e),n=t&&t.columns&&(t.columns[o.id]||t.columns[getColumnIndex(o.id)]);return n&&n.formatter||t&&t.formatter||o.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(o)||options.defaultFormatter}function callFormatter(e,o,t,n,l,r){var i,a=data.getItemMetadata&&data.getItemMetadata(e);if(a=a&&a.columns){var s=a[n.id]||a[o];i=getFormatter(e,n)(e,o,t,n,l,s)}else i=getFormatter(e,n)(e,o,t,n,l);return i}function getEditor(e,o){var t=columns[o],n=data.getItemMetadata&&data.getItemMetadata(e),l=n&&n.columns;return l&&l[t.id]&&void 0!==l[t.id].editor?l[t.id].editor:l&&l[o]&&void 0!==l[o].editor?l[o].editor:t.editor||options.editorFactory&&options.editorFactory.getEditor(t)}function getDataItemValueForColumn(e,o){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,o):e[o.field]}function appendRowHtml(e,o,t,n,l){var r=getDataItem(t),i=t<l&&!r,a=\"slick-row\"+(hasFrozenRows&&t<=options.frozenRow?\" frozen\":\"\")+(i?\" loading\":\"\")+(t===activeRow&&options.showCellSelection?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(a+=\" \"+options.addNewRowCssClass);var s=data.getItemMetadata&&data.getItemMetadata(t);s&&s.cssClasses&&(a+=\" \"+s.cssClasses);var d,c,u=getFrozenRowOffset(t),h=\"<div class='ui-widget-content \"+a+\"' style='top:\"+(getRowTop(t)-u)+\"px'>\";e.push(h),hasFrozenColumns()&&o.push(h);for(var p=0,m=columns.length;p<m;p++){if(c=columns[p],d=1,s&&s.columns){var w=s.columns[c.id]||s.columns[p];\"*\"===(d=w&&w.colspan||1)&&(d=m-p)}if(columnPosRight[Math.min(m-1,p+d-1)]>n.leftPx){if(!c.alwaysRenderColumn&&columnPosLeft[p]>n.rightPx)break;hasFrozenColumns()&&p>options.frozenColumn?appendCellHtml(o,t,p,d,r):appendCellHtml(e,t,p,d,r)}else(c.alwaysRenderColumn||hasFrozenColumns()&&p<=options.frozenColumn)&&appendCellHtml(e,t,p,d,r);d>1&&(p+=d-1)}e.push(\"</div>\"),hasFrozenColumns()&&o.push(\"</div>\")}function appendCellHtml(e,o,t,n,l){var r=columns[t],i=\"slick-cell l\"+t+\" r\"+Math.min(columns.length-1,t+n-1)+(r.cssClass?\" \"+r.cssClass:\"\");for(var a in hasFrozenColumns()&&t<=options.frozenColumn&&(i+=\" frozen\"),o===activeRow&&t===activeCell&&options.showCellSelection&&(i+=\" active\"),cellCssClasses)cellCssClasses[a][o]&&cellCssClasses[a][o][r.id]&&(i+=\" \"+cellCssClasses[a][o][r.id]);var s=null,d=\"\";l&&(s=getDataItemValueForColumn(l,r),null==(d=getFormatter(o,r)(o,t,s,r,l,self))&&(d=\"\"));var c=trigger(self.onBeforeAppendCell,{row:o,cell:t,value:s,dataContext:l})||\"\";c+=d&&d.addClasses?(c?\" \":\"\")+d.addClasses:\"\";var u=d&&d.toolTip?\"title='\"+d.toolTip+\"'\":\"\",h=\"\";if(r.hasOwnProperty(\"cellAttrs\")&&r.cellAttrs instanceof Object)for(var a in r.cellAttrs)r.cellAttrs.hasOwnProperty(a)&&(h+=\" \"+a+'=\"'+r.cellAttrs[a]+'\" ');e.push(\"<div class='\"+i+(c?\" \"+c:\"\")+\"' \"+u+h+\">\"),l&&e.push(\"[object Object]\"!==Object.prototype.toString.call(d)?d:d.text),e.push(\"</div>\"),rowsCache[o].cellRenderQueue.push(t),rowsCache[o].cellColSpans[t]=n}function cleanupRows(e){for(var o in rowsCache){var t=!0;hasFrozenRows&&(options.frozenBottom&&o>=actualFrozenRow||!options.frozenBottom&&o<=actualFrozenRow)&&(t=!1),(o=parseInt(o,10))!==activeRow&&(o<e.top||o>e.bottom)&&t&&removeRowFromCache(o)}options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function invalidate(){updateRowCount(),invalidateAllRows(),render()}function invalidateAllRows(){for(var e in currentEditor&&makeActiveCellNormal(),rowsCache)removeRowFromCache(e);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function queuePostProcessedRowForCleanup(e,o,t){for(var n in postProcessgroupId++,o)o.hasOwnProperty(n)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|n],columnIdx:0|n,rowIdx:t});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,o,t){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:o,rowIdx:t}),$(e).detach()}function removeRowFromCache(e){var o=rowsCache[e];o&&(rowNodeFromLastMouseWheelEvent==o.rowNode[0]||hasFrozenColumns()&&rowNodeFromLastMouseWheelEvent==o.rowNode[1]?(o.rowNode.hide(),zombieRowNodeFromLastMouseWheelEvent=o.rowNode):o.rowNode.each((function(){this.parentElement.removeChild(this)})),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var o,t;if(e&&e.length){for(vScrollDir=0,t=e.length,o=0;o<t;o++)currentEditor&&activeRow===e[o]&&makeActiveCellNormal(),rowsCache[e[o]]&&removeRowFromCache(e[o]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){(e||0===e)&&invalidateRows([e])}function applyFormatResultToCellNode(e,o,t){null==e&&(e=\"\"),\"[object Object]\"===Object.prototype.toString.call(e)?(o.innerHTML=e.text,e.removeClasses&&!t&&$(o).removeClass(e.removeClasses),e.addClasses&&$(o).addClass(e.addClasses),e.toolTip&&$(o).attr(\"title\",e.toolTip)):o.innerHTML=e}function updateCell(e,o){var t=getCellNode(e,o);if(t){var n=columns[o],l=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===o)currentEditor.loadValue(l);else applyFormatResultToCellNode(l?getFormatter(e,n)(e,o,getDataItemValueForColumn(l,n),n,l,self):\"\",t),invalidatePostProcessingResults(e)}}function updateRow(e){var o=rowsCache[e];if(o){ensureCellNodesInRowsCache(e);var t=getDataItem(e);for(var n in o.cellNodesByColumnIdx)if(o.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=o.cellNodesByColumnIdx[n][0];e===activeRow&&n===activeCell&&currentEditor?currentEditor.loadValue(t):t?applyFormatResultToCellNode(getFormatter(e,l)(e,n,getDataItemValueForColumn(t,l),l,t,self),r):r.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){if(options.autoHeight&&-1==options.frozenColumn||(topPanelH=options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0,headerRowH=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,footerRowH=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0),options.autoHeight){var e=$paneHeaderL.outerHeight();e+=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,e+=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0,e+=getCanvasWidth()>viewportW?scrollbarDimensions.height:0,viewportH=options.rowHeight*getDataLengthIncludingAddNew()+(-1==options.frozenColumn?e:0)}else{var o=options.showColumnHeader?parseFloat($.css($headerScroller[0],\"height\"))+getVBoxDelta($headerScroller):0,t=options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0;viewportH=parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-o-topPanelH-headerRowH-footerRowH-t}return numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportH}function getViewportWidth(){viewportW=parseFloat($container.width())}function resizeCanvas(){if(initialized){paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,getViewportWidth(),getViewportHeight(),hasFrozenRows?options.frozenBottom?(paneTopH=viewportH-frozenRowsHeight-scrollbarDimensions.height,paneBottomH=frozenRowsHeight+scrollbarDimensions.height):(paneTopH=frozenRowsHeight,paneBottomH=viewportH-frozenRowsHeight):paneTopH=viewportH,paneTopH+=topPanelH+headerRowH+footerRowH,hasFrozenColumns()&&options.autoHeight&&(paneTopH+=scrollbarDimensions.height),viewportTopH=paneTopH-topPanelH-headerRowH-footerRowH,options.autoHeight&&(hasFrozenColumns()&&$container.height(paneTopH+parseFloat($.css($headerScrollerL[0],\"height\"))),$paneTopL.css(\"position\",\"relative\")),$paneTopL.css({top:$paneHeaderL.height(),height:paneTopH});var e=$paneTopL.position().top+paneTopH;options.autoHeight||$viewportTopL.height(viewportTopH),hasFrozenColumns()?($paneTopR.css({top:$paneHeaderL.height(),height:paneTopH}),$viewportTopR.height(viewportTopH),hasFrozenRows&&($paneBottomL.css({top:e,height:paneBottomH}),$paneBottomR.css({top:e,height:paneBottomH}),$viewportBottomR.height(paneBottomH))):hasFrozenRows&&($paneBottomL.css({width:\"100%\",height:paneBottomH}),$paneBottomL.css(\"top\",e)),hasFrozenRows?($viewportBottomL.height(paneBottomH),options.frozenBottom?($canvasBottomL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasBottomR.height(frozenRowsHeight)):($canvasTopL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasTopR.height(frozenRowsHeight))):$viewportTopR.height(viewportTopH),scrollbarDimensions&&scrollbarDimensions.width||(scrollbarDimensions=measureScrollbar()),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&autosizeColumns(),updateRowCount(),handleScroll(),lastRenderedScrollLeft=-1,render()}}function updatePagingStatusFromView(e){pagingActive=0!==e.pageSize,pagingIsLastPage=e.pageNum==e.totalPages-1}function updateRowCount(){if(initialized){var e=getDataLength(),o=getDataLengthIncludingAddNew(),t=0,l=hasFrozenRows&&!options.frozenBottom?$canvasBottomL.height():$canvasTopL.height();if(hasFrozenRows)t=getDataLength()-options.frozenRow;else t=o+(options.leaveSpaceForNewRows?numVisibleRows-1:0);var r=$viewportScrollContainerY.height(),i=viewportHasVScroll;viewportHasVScroll=options.alwaysShowVerticalScroll||!options.autoHeight&&t*options.rowHeight>r,makeActiveCellNormal();var a=e-1;for(var s in rowsCache)s>a&&removeRowFromCache(s);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&activeRow>a&&resetActiveCell();l=h;options.autoHeight?h=options.rowHeight*t:(th=Math.max(options.rowHeight*t,r-scrollbarDimensions.height))<maxSupportedCssHeight?(h=ph=th,n=1,cj=0):(ph=(h=maxSupportedCssHeight)/100,n=Math.floor(th/ph),cj=(th-h)/(n-1)),h!==l&&(hasFrozenRows&&!options.frozenBottom?($canvasBottomL.css(\"height\",h),hasFrozenColumns()&&$canvasBottomR.css(\"height\",h)):($canvasTopL.css(\"height\",h),$canvasTopR.css(\"height\",h)),scrollTop=$viewportScrollContainerY[0].scrollTop);var d=scrollTop+offset<=th-r;0==th||0==scrollTop?page=offset=0:scrollTo(d?scrollTop+offset:th-r),h!=l&&options.autoHeight&&resizeCanvas(),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&i!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,o){return null==e&&(e=scrollTop),null==o&&(o=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:o,rightPx:o+viewportW}}function getRenderedRange(e,o){var t=getVisibleRange(e,o),n=Math.round(viewportH/options.rowHeight),l=options.minRowBuffer;return-1==vScrollDir?(t.top-=n,t.bottom+=l):1==vScrollDir?(t.top-=l,t.bottom+=n):(t.top-=l,t.bottom+=l),t.top=Math.max(0,t.top),t.bottom=Math.min(getDataLengthIncludingAddNew()-1,t.bottom),t.leftPx-=viewportW,t.rightPx+=viewportW,t.leftPx=Math.max(0,t.leftPx),t.rightPx=Math.min(canvasWidth,t.rightPx),t}function ensureCellNodesInRowsCache(e){var o=rowsCache[e];if(o&&o.cellRenderQueue.length)for(var t=o.rowNode.children().last();o.cellRenderQueue.length;){var n=o.cellRenderQueue.pop();o.cellNodesByColumnIdx[n]=t,0===(t=t.prev()).length&&(t=$(o.rowNode[0]).children().last())}}function cleanUpCells(e,o){if(!hasFrozenRows||!(options.frozenBottom&&o>actualFrozenRow||o<=actualFrozenRow)){var t,n=rowsCache[o],l=[];for(var r in n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(r)&&!((r|=0)<=options.frozenColumn||Array.isArray(columns)&&columns[r]&&columns[r].alwaysRenderColumn)){var i=n.cellColSpans[r];(columnPosLeft[r]>e.rightPx||columnPosRight[Math.min(columns.length-1,r+i-1)]<e.leftPx)&&(o==activeRow&&r==activeCell||l.push(r))}for(;null!=(t=l.pop());)n.cellNodesByColumnIdx[t][0].parentElement.removeChild(n.cellNodesByColumnIdx[t][0]),delete n.cellColSpans[t],delete n.cellNodesByColumnIdx[t],postProcessedRows[o]&&delete postProcessedRows[o][t]}}function cleanUpAndRenderCells(e){for(var o,t,n,l=[],r=[],i=e.top,a=e.bottom;i<=a;i++)if(o=rowsCache[i]){ensureCellNodesInRowsCache(i),cleanUpCells(e,i),t=0;var s=data.getItemMetadata&&data.getItemMetadata(i);s=s&&s.columns;for(var d=getDataItem(i),c=0,u=columns.length;c<u&&!(columnPosLeft[c]>e.rightPx);c++)if(null==(n=o.cellColSpans[c])){if(n=1,s){var h=s[columns[c].id]||s[c];\"*\"===(n=h&&h.colspan||1)&&(n=u-c)}columnPosRight[Math.min(u-1,c+n-1)]>e.leftPx&&(appendCellHtml(l,i,c,n,d),t++),c+=n>1?n-1:0}else c+=n>1?n-1:0;t&&(t,r.push(i))}if(l.length){var p,m,w=document.createElement(\"div\");for(w.innerHTML=l.join(\"\");null!=(p=r.pop());){var v;for(o=rowsCache[p];null!=(v=o.cellRenderQueue.pop());)m=w.lastChild,hasFrozenColumns()&&v>options.frozenColumn?o.rowNode[1].appendChild(m):o.rowNode[0].appendChild(m),o.cellNodesByColumnIdx[v]=$(m)}}}function renderRows(e){for(var o=[],t=[],n=[],l=!1,r=getDataLength(),i=e.top,a=e.bottom;i<=a;i++)rowsCache[i]||hasFrozenRows&&options.frozenBottom&&i==getDataLength()||(renderedRows++,n.push(i),rowsCache[i]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(o,t,i,e,r),activeCellNode&&activeRow===i&&(l=!0),counter_rows_rendered++);if(n.length){var s=document.createElement(\"div\"),d=document.createElement(\"div\");s.innerHTML=o.join(\"\"),d.innerHTML=t.join(\"\");for(i=0,a=n.length;i<a;i++)hasFrozenRows&&n[i]>=actualFrozenRow?hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)).add($(d.firstChild).appendTo($canvasBottomR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)):hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL)).add($(d.firstChild).appendTo($canvasTopR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL));l&&(activeCellNode=getCellNode(activeRow,activeCell))}}function startPostProcessing(){options.enableAsyncPostRender&&(clearTimeout(h_postrender),h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}function startPostProcessingCleanup(){options.enableAsyncPostRenderCleanup&&(clearTimeout(h_postrenderCleanup),h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay))}function invalidatePostProcessingResults(e){for(var o in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(o)&&(postProcessedRows[e][o]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache){var o=e?parseInt(e):0;rowsCache[o].rowNode[0].style.top=getRowTop(o)+\"px\"}}function render(){if(initialized){scrollThrottle.dequeue();var e=getVisibleRange(),o=getRenderedRange();if(cleanupRows(o),lastRenderedScrollLeft!=scrollLeft){if(hasFrozenRows){var t=$.extend(!0,{},o);options.frozenBottom?(t.top=actualFrozenRow,t.bottom=getDataLength()):(t.top=0,t.bottom=options.frozenRow),cleanUpAndRenderCells(t)}cleanUpAndRenderCells(o)}renderRows(o),hasFrozenRows&&(options.frozenBottom?renderRows({top:actualFrozenRow,bottom:getDataLength()-1,leftPx:o.leftPx,rightPx:o.rightPx}):renderRows({top:0,bottom:options.frozenRow-1,leftPx:o.leftPx,rightPx:o.rightPx})),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null,trigger(self.onRendered,{startRow:e.top,endRow:e.bottom,grid:self})}}function handleHeaderScroll(){handleElementScroll($headerScrollContainer[0])}function handleHeaderRowScroll(){var e=$headerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){handleElementScroll($preHeaderPanelScroller[0])}function handleElementScroll(e){var o=e.scrollLeft;o!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=o)}function handleScroll(){return scrollTop=$viewportScrollContainerY[0].scrollTop,scrollLeft=$viewportScrollContainerX[0].scrollLeft,_handleScroll(!1)}function _handleScroll(e){var o=$viewportScrollContainerY[0].scrollHeight-$viewportScrollContainerY[0].clientHeight,t=$viewportScrollContainerY[0].scrollWidth-$viewportScrollContainerY[0].clientWidth;o=Math.max(0,o),t=Math.max(0,t),scrollTop>o&&(scrollTop=o),scrollLeft>t&&(scrollLeft=t);var l=Math.abs(scrollTop-prevScrollTop),r=Math.abs(scrollLeft-prevScrollLeft);if(r&&(prevScrollLeft=scrollLeft,$viewportScrollContainerX[0].scrollLeft=scrollLeft,$headerScrollContainer[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScrollContainer[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScrollContainer[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&(hasFrozenColumns()?$preHeaderPanelScrollerR[0].scrollLeft=scrollLeft:$preHeaderPanelScroller[0].scrollLeft=scrollLeft),hasFrozenColumns()?hasFrozenRows&&($viewportTopR[0].scrollLeft=scrollLeft):hasFrozenRows&&($viewportTopL[0].scrollLeft=scrollLeft)),l)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e&&($viewportScrollContainerY[0].scrollTop=scrollTop),hasFrozenColumns()&&(hasFrozenRows&&!options.frozenBottom?$viewportBottomL[0].scrollTop=scrollTop:$viewportTopL[0].scrollTop=scrollTop),l<viewportH)scrollTo(scrollTop+offset);else{var i=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),i!=(offset=Math.round(page*cj))&&invalidateAllRows()}if(r||l){var a=Math.abs(lastRenderedScrollLeft-scrollLeft),s=Math.abs(lastRenderedScrollTop-scrollTop);(a>20||s>20)&&(options.forceSyncScrolling||s<viewportH&&a<viewportW?render():scrollThrottle.enqueue(),trigger(self.onViewportChanged,{}))}return trigger(self.onScroll,{scrollLeft,scrollTop}),!(!r&&!l)}function ActionThrottle(e,o){var t=!1,n=!1;function l(){n=!1}function r(){t=!0,setTimeout(i,o),e()}function i(){n?(l(),r()):t=!1}return{enqueue:function(){t?n=!0:r()},dequeue:l}}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var o=vScrollDir>=0?postProcessFromRow++:postProcessToRow--,t=rowsCache[o];if(t&&!(o>=e)){for(var n in postProcessedRows[o]||(postProcessedRows[o]={}),ensureCellNodesInRowsCache(o),t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=postProcessedRows[o][n];if(l.asyncPostRender&&\"R\"!==r){var i=t.cellNodesByColumnIdx[n];i&&l.asyncPostRender(i,o,getDataItem(o),l,\"C\"===r),postProcessedRows[o][n]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(postProcessedCleanupQueue.length>0){for(var e=postProcessedCleanupQueue[0].groupId;postProcessedCleanupQueue.length>0&&postProcessedCleanupQueue[0].groupId==e;){var o=postProcessedCleanupQueue.shift();if(\"R\"==o.actionType&&$(o.node).remove(),\"C\"==o.actionType){var t=columns[o.columnIdx];t.asyncPostRenderCleanup&&o.node&&t.asyncPostRenderCleanup(o.node,o.rowIdx,t)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,o){var t,n,l,r;for(var i in rowsCache){if(r=o&&o[i],l=e&&e[i],r)for(n in r)l&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).removeClass(r[n]);if(l)for(n in l)r&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).addClass(l[n])}}function addCellCssStyles(e,o){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,null),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function removeCellCssStyles(e){cellCssClasses[e]&&(updateCellCssStylesOnRenderedRows(null,cellCssClasses[e]),delete cellCssClasses[e],trigger(self.onCellCssStylesChanged,{key:e,hash:null,grid:self}))}function setCellCssStyles(e,o){var t=cellCssClasses[e];cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,t),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,o,t){(t=t||100,rowsCache[e])&&function e(o,n){n&&setTimeout((function(){o.queue((function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),e(o,n-1)}))}),t)}($(getCellNode(e,o)),4)}function handleMouseWheel(e,o,t,n){var l=$(e.target).closest(\".slick-row\"),r=l[0];if(r!=rowNodeFromLastMouseWheelEvent){var i=l.parents(\".grid-canvas\").hasClass(\"grid-canvas-left\");if(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent[i?0:1]!=r){var a=zombieRowNodeFromLastMouseWheelEvent[i||1==zombieRowNodeFromLastMouseWheelEvent.length?0:1];a.parentElement.removeChild(a),zombieRowNodeFromLastMouseWheelEvent=null}rowNodeFromLastMouseWheelEvent=r}scrollTop=Math.max(0,$viewportScrollContainerY[0].scrollTop-n*options.rowHeight),scrollLeft=$viewportScrollContainerX[0].scrollLeft+10*t,_handleScroll(!0)&&e.preventDefault()}function handleDragInit(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragInit,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDragStart(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragStart,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDrag(e,o){return trigger(self.onDrag,o,e)}function handleDragEnd(e,o){trigger(self.onDragEnd,o,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell},e);var o=e.isImmediatePropagationStopped(),t=Slick.keyCode;if(!o&&!e.shiftKey&&!e.altKey){if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&currentEditor.keyCaptureList.indexOf(e.which)>-1)return;e.which==t.HOME?o=e.ctrlKey?navigateTop():navigateRowStart():e.which==t.END&&(o=e.ctrlKey?navigateBottom():navigateRowEnd())}if(!o)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=t.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(o=navigatePrev());else{if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&currentEditor.keyCaptureList.indexOf(e.which)>-1)return;if(e.which==t.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==t.PAGE_DOWN?(navigatePageDown(),o=!0):e.which==t.PAGE_UP?(navigatePageUp(),o=!0):e.which==t.LEFT?o=navigateLeft():e.which==t.RIGHT?o=navigateRight():e.which==t.UP?o=navigateUp():e.which==t.DOWN?o=navigateDown():e.which==t.TAB?o=navigateNext():e.which==t.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable(void 0,void 0,e)),o=!0)}if(o){e.stopPropagation(),e.preventDefault();try{e.originalEvent.keyCode=0}catch(e){}}}function handleClick(e){currentEditor||(e.target!=document.activeElement||$(e.target).hasClass(\"slick-cell\"))&&setFocus();var o=getCellFromEvent(e);if(o&&(null===currentEditor||activeRow!=o.row||activeCell!=o.cell)&&(trigger(self.onClick,{row:o.row,cell:o.cell},e),!e.isImmediatePropagationStopped()&&canCellBeActive(o.row,o.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(o.row,!1);var t=e.target&&e.target.className===Slick.preClickClassName,n=columns[o.cell],l=!!(options.editable&&n&&n.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(getCellNode(o.row,o.cell),null,t,l,e)}}function handleContextMenu(e){var o=$(e.target).closest(\".slick-cell\",$canvas);0!==o.length&&(activeCellNode===o[0]&&null!==currentEditor||trigger(self.onContextMenu,{},e))}function handleDblClick(e){var o=getCellFromEvent(e);!o||null!==currentEditor&&activeRow==o.row&&activeCell==o.cell||(trigger(self.onDblClick,{row:o.row,cell:o.cell},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(o.row,o.cell,!0,e))}function handleHeaderMouseEnter(e){trigger(self.onHeaderMouseEnter,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderMouseLeave(e){trigger(self.onHeaderMouseLeave,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderContextMenu(e){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");trigger(self.onHeaderContextMenu,{column:t},e)}function handleHeaderClick(e){if(!columnResizeDragging){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");t&&trigger(self.onHeaderClick,{column:t},e)}}function handleFooterContextMenu(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterContextMenu,{column:t},e)}function handleFooterClick(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterClick,{column:t},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{},e)}function cellExists(e,o){return!(e<0||e>=getDataLength()||o<0||o>=columns.length)}function getCellFromPoint(e,o){for(var t=getRowFromPosition(o),n=0,l=0,r=0;r<columns.length&&l<e;r++)l+=columns[r].width,n++;return n<0&&(n=0),{row:t,cell:n-1}}function getCellFromNode(e){var o=/l\\d+/.exec(e.className);if(!o)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(o[0].substr(1,o[0].length-1),10)}function getRowFromNode(e){for(var o in rowsCache)for(var t in rowsCache[o].rowNode)if(rowsCache[o].rowNode[t]===e)return o?parseInt(o):0;return null}function getFrozenRowOffset(e){return hasFrozenRows?options.frozenBottom?e>=actualFrozenRow?h<viewportTopH?actualFrozenRow*options.rowHeight:h:0:e>=actualFrozenRow?frozenRowsHeight:0:0}function getCellFromEvent(e){var o,t,n=$(e.target).closest(\".slick-cell\",$canvas);if(!n.length)return null;if(o=getRowFromNode(n[0].parentNode),hasFrozenRows){var l=n.parents(\".grid-canvas\").offset(),r=0;n.parents(\".grid-canvas-bottom\").length&&(r=options.frozenBottom?$canvasTopL.height():frozenRowsHeight),o=getCellFromPoint(e.clientX-l.left,e.clientY-l.top+r+$(document).scrollTop()).row}return t=getCellFromNode(n[0]),null==o||null==t?null:{row:o,cell:t}}function getCellNodeBox(e,o){if(!cellExists(e,o))return null;for(var t=getFrozenRowOffset(e),n=getRowTop(e)-t,l=n+options.rowHeight-1,r=0,i=0;i<o;i++)r+=columns[i].width,options.frozenColumn==i&&(r=0);return{top:n,left:r,bottom:l,right:r+columns[o].width}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,o,t){if(scrollRowIntoView(e,t),!(o<=options.frozenColumn)){var n=getColspan(e,o);internalScrollColumnIntoView(columnPosLeft[o],columnPosRight[o+(n>1?n-1:0)])}}function internalScrollColumnIntoView(e,o){var t=scrollLeft+$viewportScrollContainerX.width();e<scrollLeft?($viewportScrollContainerX.scrollLeft(e),handleScroll(),render()):o>t&&($viewportScrollContainerX.scrollLeft(Math.min(e,o-$viewportScrollContainerX[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,o,t,n,l){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));if(null!=(activeCellNode=e)){var r=$(activeCellNode),i=r.offset(),a=Math.floor(r.parents(\".grid-canvas\").offset().top),s=r.parents(\".grid-canvas-bottom\").length;hasFrozenRows&&s&&(a-=options.frozenBottom?$canvasTopL.height():frozenRowsHeight);var d=getCellFromPoint(i.left,Math.ceil(i.top)-a);activeRow=d.row,activeCell=activePosX=activeCell=activePosX=getCellFromNode(activeCellNode),null==o&&(o=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&(r.addClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&o&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout((function(){makeActiveCellEditable(void 0,t,l)}),options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,t,l))}else activeRow=activeCell=null;n||trigger(self.onActiveCellChanged,getActiveCell())}function clearTextSelection(){if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}else if(window.getSelection){var e=window.getSelection();e&&e.removeAllRanges&&e.removeAllRanges()}}function isCellPotentiallyEditable(e,o){var t=getDataLength();return!(e<t&&!getDataItem(e))&&(!(columns[o].cannotTriggerInsert&&e>=t)&&!!getEditor(e,o))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var o=columns[activeCell];applyFormatResultToCellNode(getFormatter(activeRow,o)(activeRow,activeCell,getDataItemValueForColumn(e,o),o,e,self),activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,o,t){if(activeCellNode){if(!options.editable)throw new Error(\"Grid : makeActiveCellEditable : should never get called when options.editable is false\");if(clearTimeout(h_editorLoader),isCellPotentiallyEditable(activeRow,activeCell)){var n=columns[activeCell],l=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:l,column:n})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\");var i=data.getItemMetadata&&data.getItemMetadata(activeRow),a=(i=i&&i.columns)&&(i[n.id]||i[activeCell]);currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,columnMetaData:a,item:l||{},event:t,commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),l&&(currentEditor.loadValue(l),o&&currentEditor.preClick&&currentEditor.preClick()),serializedEditorValue=currentEditor.serializeValue(),currentEditor.position&&handleActiveCellPositionChange()}else setFocus()}}}function commitEditAndSetFocus(){getEditorLock().commitCurrentEdit()&&(setFocus(),options.autoEdit&&navigateDown())}function cancelEditAndSetFocus(){getEditorLock().cancelCurrentEdit()&&setFocus()}function absBox(e){var o={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};o.bottom=o.top+o.height,o.right=o.left+o.width;for(var t=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)o.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(o.visible=o.bottom>e.scrollTop&&o.top<e.scrollTop+e.clientHeight),o.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(o.visible=o.right>e.scrollLeft&&o.left<e.scrollLeft+e.clientWidth),o.left-=e.scrollLeft,o.top-=e.scrollTop,e===t&&(o.left+=e.offsetLeft,o.top+=e.offsetTop,t=e.offsetParent),o.bottom=o.top+o.height,o.right=o.left+o.width;return o}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&&currentEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&&currentEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,o){if(!hasFrozenRows||!options.frozenBottom&&e>actualFrozenRow-1||options.frozenBottom&&e<actualFrozenRow-1){var t=$viewportScrollContainerY.height(),n=hasFrozenRows&&!options.frozenBottom?e-options.frozenRow:e,l=n*options.rowHeight,r=(n+1)*options.rowHeight-t+(viewportHasHScroll?scrollbarDimensions.height:0);(n+1)*options.rowHeight>scrollTop+t+offset?(scrollTo(o?l:r),render()):n*options.rowHeight<scrollTop+offset&&(scrollTo(o?r:l),render())}}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var o=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop+options.rowHeight-1)+o)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var t=activeRow+o,n=getDataLengthIncludingAddNew();t>=n&&(t=n-1),t<0&&(t=0);for(var l=0,r=null,i=activePosX;l<=activePosX;)canCellBeActive(t,l)&&(r=l),l+=getColspan(t,l);null!==r?(setActiveCellInternal(getCellNode(t,r)),activePosX=i):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function navigateTop(){navigateToRow(0)}function navigateBottom(){navigateToRow(getDataLength()-1)}function navigateToRow(e){var o=getDataLength();if(!o)return!0;if(e<0?e=0:e>=o&&(e=o-1),scrollCellIntoView(e,0,!0),options.enableCellNavigation&&null!=activeRow){for(var t=0,n=null,l=activePosX;t<=activePosX;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);null!==n?(setActiveCellInternal(getCellNode(e,n)),activePosX=l):resetActiveCell()}return!0}function getColspan(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e);if(!t||!t.columns)return 1;var n=t.columns[columns[o].id]||t.columns[o],l=n&&n.colspan;return l=\"*\"===l?columns.length-o:l||1}function findFirstFocusableCell(e){for(var o=0;o<columns.length;){if(canCellBeActive(e,o))return o;o+=getColspan(e,o)}return null}function findLastFocusableCell(e){for(var o=0,t=null;o<columns.length;)canCellBeActive(e,o)&&(t=o),o+=getColspan(e,o);return t}function gotoRight(e,o,t){if(o>=columns.length)return null;do{o+=getColspan(e,o)}while(o<columns.length&&!canCellBeActive(e,o));return o<columns.length?{row:e,cell:o,posX:o}:null}function gotoLeft(e,o,t){if(o<=0)return null;var n=findFirstFocusableCell(e);if(null===n||n>=o)return null;for(var l,r={row:e,cell:n,posX:n};;){if(!(l=gotoRight(r.row,r.cell,r.posX)))return null;if(l.cell>=o)return r;r=l}}function gotoDown(e,o,t){for(var n,l=getDataLengthIncludingAddNew();;){if(++e>=l)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoUp(e,o,t){for(var n;;){if(--e<0)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoNext(e,o,t){if(null==e&&null==o&&canCellBeActive(e=o=t=0,o))return{row:e,cell:o,posX:o};var n=gotoRight(e,o,t);if(n)return n;var l=null,r=getDataLengthIncludingAddNew();for(e===r-1&&e--;++e<r;)if(null!==(l=findFirstFocusableCell(e)))return{row:e,cell:l,posX:l};return null}function gotoPrev(e,o,t){if(null==e&&null==o&&canCellBeActive(e=getDataLengthIncludingAddNew()-1,o=t=columns.length-1))return{row:e,cell:o,posX:o};for(var n,l;!n&&!(n=gotoLeft(e,o,t));){if(--e<0)return null;o=0,null!==(l=findLastFocusableCell(e))&&(n={row:e,cell:l,posX:l})}return n}function gotoRowStart(e,o,t){var n=findFirstFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function gotoRowEnd(e,o,t){var n=findLastFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function navigateRight(){return navigate(\"right\")}function navigateLeft(){return navigate(\"left\")}function navigateDown(){return navigate(\"down\")}function navigateUp(){return navigate(\"up\")}function navigateNext(){return navigate(\"next\")}function navigatePrev(){return navigate(\"prev\")}function navigateRowStart(){return navigate(\"home\")}function navigateRowEnd(){return navigate(\"end\")}function navigate(e){if(!options.enableCellNavigation)return!1;if(!activeCellNode&&\"prev\"!=e&&\"next\"!=e)return!1;if(!getEditorLock().commitCurrentEdit())return!0;setFocus();tabbingDirection={up:-1,down:1,left:-1,right:1,prev:-1,next:1,home:-1,end:1}[e];var o=(0,{up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext,home:gotoRowStart,end:gotoRowEnd}[e])(activeRow,activeCell,activePosX);if(o){if(hasFrozenRows&&options.frozenBottom&o.row==getDataLength())return;var t=o.row==getDataLength();return(!options.frozenBottom&&o.row>=actualFrozenRow||options.frozenBottom&&o.row<actualFrozenRow)&&scrollCellIntoView(o.row,o.cell,!t&&options.emulatePagingWhenScrolling),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,o){if(rowsCache[e]){ensureCellNodesInRowsCache(e);try{return rowsCache[e].cellNodesByColumnIdx.length>o?rowsCache[e].cellNodesByColumnIdx[o][0]:null}catch(t){return rowsCache[e].cellNodesByColumnIdx[o]}}return null}function setActiveCell(e,o,t,n,l){initialized&&(e>getDataLength()||e<0||o>=columns.length||o<0||options.enableCellNavigation&&(scrollCellIntoView(e,o,!1),setActiveCellInternal(getCellNode(e,o),t,n,l)))}function canCellBeActive(e,o){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.focusable)return!!t.focusable;var n=t&&t.columns;return n&&n[columns[o].id]&&void 0!==n[columns[o].id].focusable?!!n[columns[o].id].focusable:n&&n[o]&&void 0!==n[o].focusable?!!n[o].focusable:!!columns[o].focusable}function canCellBeSelected(e,o){if(e>=getDataLength()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.selectable)return!!t.selectable;var n=t&&t.columns&&(t.columns[columns[o].id]||t.columns[o]);return n&&void 0!==n.selectable?!!n.selectable:!!columns[o].selectable}function gotoCell(e,o,t,n){if(initialized&&canCellBeActive(e,o)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,o,!1);var l=getCellNode(e,o),r=columns[o],i=!!(options.editable&&r&&r.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(l,t||e===getDataLength()||options.autoEdit,null,i,n),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),o=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var t=currentEditor.validate();if(t.valid){if(activeRow<getDataLength()){var n={row:activeRow,cell:activeCell,editor:currentEditor,serializedValue:currentEditor.serializeValue(),prevSerializedValue:serializedEditorValue,execute:function(){this.editor.applyValue(e,this.serializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,o,n)):(n.execute(),makeActiveCellNormal())}else{var l={};currentEditor.applyValue(l,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:l,column:o})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:t,row:activeRow,cell:activeCell,column:o}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var o=[],t=columns.length-1,n=0;n<e.length;n++)o.push(new Slick.Range(e[n],0,e[n],t));return o}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows.slice(0)}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");self&&self.getEditorLock&&!self.getEditorLock().isActive()&&selectionModel.setSelectedRanges(rowsToRanges(e))}this.debug=function(){var e=\"\";e+=\"\\ncounter_rows_rendered:  \"+counter_rows_rendered,e+=\"\\ncounter_rows_removed:  \"+counter_rows_removed,e+=\"\\nrenderedRows:  \"+renderedRows,e+=\"\\nnumVisibleRows:  \"+numVisibleRows,e+=\"\\nmaxSupportedCssHeight:  \"+maxSupportedCssHeight,e+=\"\\nn(umber of pages):  \"+n,e+=\"\\n(current) page:  \"+page,e+=\"\\npage height (ph):  \"+ph,e+=\"\\nvScrollDir:  \"+vScrollDir,alert(e)},this.eval=function(expr){return eval(expr)},$.extend(this,{slickGridVersion:\"2.4.27\",onScroll:new Slick.Event,onSort:new Slick.Event,onHeaderMouseEnter:new Slick.Event,onHeaderMouseLeave:new Slick.Event,onHeaderContextMenu:new Slick.Event,onHeaderClick:new Slick.Event,onHeaderCellRendered:new Slick.Event,onBeforeHeaderCellDestroy:new Slick.Event,onHeaderRowCellRendered:new Slick.Event,onFooterRowCellRendered:new Slick.Event,onFooterContextMenu:new Slick.Event,onFooterClick:new Slick.Event,onBeforeHeaderRowCellDestroy:new Slick.Event,onBeforeFooterRowCellDestroy:new Slick.Event,onMouseEnter:new Slick.Event,onMouseLeave:new Slick.Event,onClick:new Slick.Event,onDblClick:new Slick.Event,onContextMenu:new Slick.Event,onKeyDown:new Slick.Event,onAddNewRow:new Slick.Event,onBeforeAppendCell:new Slick.Event,onValidationError:new Slick.Event,onViewportChanged:new Slick.Event,onColumnsReordered:new Slick.Event,onColumnsDrag:new Slick.Event,onColumnsResized:new Slick.Event,onBeforeColumnsResize:new Slick.Event,onCellChange:new Slick.Event,onBeforeEditCell:new Slick.Event,onBeforeCellEditorDestroy:new Slick.Event,onBeforeDestroy:new Slick.Event,onActiveCellChanged:new Slick.Event,onActiveCellPositionChanged:new Slick.Event,onDragInit:new Slick.Event,onDragStart:new Slick.Event,onDrag:new Slick.Event,onDragEnd:new Slick.Event,onSelectedRowsChanged:new Slick.Event,onCellCssStylesChanged:new Slick.Event,onAutosizeColumns:new Slick.Event,onRendered:new Slick.Event,onSetOptions:new Slick.Event,registerPlugin,unregisterPlugin,getPluginByName,getColumns,setColumns,getColumnIndex,updateColumnHeader,setSortColumn,setSortColumns,getSortColumns,autosizeColumns,autosizeColumn,getOptions,setOptions,getData,getDataLength,getDataItem,setData,getSelectionModel,setSelectionModel,getSelectedRows,setSelectedRows,getContainerNode,updatePagingStatusFromView,applyFormatResultToCellNode,render,invalidate,invalidateRow,invalidateRows,invalidateAllRows,updateCell,updateRow,getViewport:getVisibleRange,getRenderedRange,resizeCanvas,updateRowCount,scrollRowIntoView,scrollRowToTop,scrollCellIntoView,scrollColumnIntoView,getCanvasNode,getUID,getHeaderColumnWidthDiff,getScrollbarDimensions,getHeadersWidth,getCanvasWidth,getCanvases,getActiveCanvasNode,setActiveCanvasNode,getViewportNode,getActiveViewportNode,setActiveViewportNode,focus:setFocus,scrollTo,getCellFromPoint,getCellFromEvent,getActiveCell,setActiveCell,getActiveCellNode,getActiveCellPosition,resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor,getCellNode,getCellNodeBox,canCellBeSelected,canCellBeActive,navigatePrev,navigateNext,navigateUp,navigateDown,navigateLeft,navigateRight,navigatePageUp,navigatePageDown,navigateTop,navigateBottom,navigateRowStart,navigateRowEnd,gotoCell,getTopPanel,setTopPanelVisibility,getPreHeaderPanel,getPreHeaderPanelLeft:getPreHeaderPanel,getPreHeaderPanelRight,setPreHeaderPanelVisibility,getHeader,getHeaderColumn,setHeaderRowVisibility,getHeaderRow,getHeaderRowColumn,setFooterRowVisibility,getFooterRow,getFooterRowColumn,getGridPosition,flashCell,addCellCssStyles,setCellCssStyles,removeCellCssStyles,getCellCssStyles,getFrozenRowOffset,setColumnHeaderVisibility,init:finishInitialization,destroy,getEditorLock,getEditController}),init()}module.exports={Grid:SlickGrid}},\n      465: function _(t,e,a){\n      /*!\n           * jquery.event.drag - v 2.3.0\n           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n           * Open Source MIT License - http://threedubmedia.com/code/license\n           */\n      var n=t(458);n.fn.drag=function(t,e,a){var r=\"string\"==typeof t?t:\"\",o=n.isFunction(t)?t:n.isFunction(e)?e:null;return 0!==r.indexOf(\"drag\")&&(r=\"drag\"+r),a=(t==o?e:a)||{},o?this.on(r,a,o):this.trigger(r)};var r=n.event,o=r.special,i=o.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(t){var e=n.data(this,i.datakey),a=t.data||{};e.related+=1,n.each(i.defaults,(function(t,n){void 0!==a[t]&&(e[t]=a[t])}))},remove:function(){n.data(this,i.datakey).related-=1},setup:function(){if(!n.data(this,i.datakey)){var t=n.extend({related:0},i.defaults);n.data(this,i.datakey,t),r.add(this,\"touchstart mousedown\",i.init,t),this.attachEvent&&this.attachEvent(\"ondragstart\",i.dontstart)}},teardown:function(){(n.data(this,i.datakey)||{}).related||(n.removeData(this,i.datakey),r.remove(this,\"touchstart mousedown\",i.init),i.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",i.dontstart))},init:function(t){if(!i.touched){var e,a=t.data;if(!(0!=t.which&&a.which>0&&t.which!=a.which)){var d=n(t.target).attr(\"class\")||\"\";if(!n(t.target).is(a.not)&&d&&-1!==d.toString().indexOf(\"slick\")&&(!a.handle||n(t.target).closest(a.handle,t.currentTarget).length)&&(i.touched=\"touchstart\"==t.type?this:null,a.propagates=1,a.mousedown=this,a.interactions=[i.interaction(this,a)],a.target=t.target,a.pageX=t.pageX,a.pageY=t.pageY,a.dragging=null,e=i.hijack(t,\"draginit\",a),a.propagates))return(e=i.flatten(e))&&e.length&&(a.interactions=[],n.each(e,(function(){a.interactions.push(i.interaction(this,a))}))),a.propagates=a.interactions.length,!1!==a.drop&&o.drop&&o.drop.handler(t,a),i.textselect(!1),i.touched?r.add(i.touched,\"touchmove touchend\",i.handler,a):r.add(document,\"mousemove mouseup\",i.handler,a),!(!i.touched||a.live)&&void 0}}},interaction:function(t,e){var a=t&&t.ownerDocument&&n(t)[e.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:t,callback:new i.callback,droppable:[],offset:a}},handler:function(t){var e=t.data;switch(t.type){case!e.dragging&&\"touchmove\":t.preventDefault();case!e.dragging&&\"mousemove\":if(Math.pow(t.pageX-e.pageX,2)+Math.pow(t.pageY-e.pageY,2)<Math.pow(e.distance,2))break;t.target=e.target,i.hijack(t,\"dragstart\",e),e.propagates&&(e.dragging=!0);case\"touchmove\":t.preventDefault();case\"mousemove\":if(e.dragging){if(i.hijack(t,\"drag\",e),e.propagates){!1!==e.drop&&o.drop&&o.drop.handler(t,e);break}t.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:i.touched?r.remove(i.touched,\"touchmove touchend\",i.handler):r.remove(document,\"mousemove mouseup\",i.handler),e.dragging&&(!1!==e.drop&&o.drop&&o.drop.handler(t,e),i.hijack(t,\"dragend\",e)),i.textselect(!0),!1===e.click&&e.dragging&&n.data(e.mousedown,\"suppress.click\",(new Date).getTime()+5),e.dragging=i.touched=!1}},hijack:function(t,e,a,o,d){if(a){var s,c,l,p={event:t.originalEvent,type:t.type},u=e.indexOf(\"drop\")?\"drag\":\"drop\",g=o||0,h=isNaN(o)?a.interactions.length:o;t.type=e;var f=function(){};t.originalEvent=new n.Event(p.event,{preventDefault:f,stopPropagation:f,stopImmediatePropagation:f}),a.results=[];do{if(c=a.interactions[g]){if(\"dragend\"!==e&&c.cancelled)continue;l=i.properties(t,a,c),c.results=[],n(d||c[u]||a.droppable).each((function(o,d){if(l.target=d,t.isPropagationStopped=function(){return!1},!1===(s=d?r.dispatch.call(d,t,l):null)?(\"drag\"==u&&(c.cancelled=!0,a.propagates-=1),\"drop\"==e&&(c[u][o]=null)):\"dropinit\"==e&&c.droppable.push(i.element(s)||d),\"dragstart\"==e&&(c.proxy=n(i.element(s)||c.drag)[0]),c.results.push(s),delete t.result,\"dropinit\"!==e)return s})),a.results[g]=i.flatten(c.results),\"dropinit\"==e&&(c.droppable=i.flatten(c.droppable)),\"dragstart\"!=e||c.cancelled||l.update()}}while(++g<h);return t.type=p.type,t.originalEvent=p.event,i.flatten(a.results)}},properties:function(t,e,a){var n=a.callback;return n.drag=a.drag,n.proxy=a.proxy||a.drag,n.startX=e.pageX,n.startY=e.pageY,n.deltaX=t.pageX-e.pageX,n.deltaY=t.pageY-e.pageY,n.originalX=a.offset.left,n.originalY=a.offset.top,n.offsetX=n.originalX+n.deltaX,n.offsetY=n.originalY+n.deltaY,n.drop=i.flatten((a.drop||[]).slice()),n.available=i.flatten((a.droppable||[]).slice()),n},element:function(t){if(t&&(t.jquery||1==t.nodeType))return t},flatten:function(t){return n.map(t,(function(t){return t&&t.jquery?n.makeArray(t):t&&t.length?i.flatten(t):t}))},textselect:function(t){n(document)[t?\"off\":\"on\"](\"selectstart\",i.dontstart).css(\"MozUserSelect\",t?\"\":\"none\"),document.unselectable=t?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};i.callback.prototype={update:function(){o.drop&&this.available.length&&n.each(this.available,(function(t){o.drop.locate(this,t)}))}};var d=r.dispatch;r.dispatch=function(t){if(!(n.data(this,\"suppress.\"+t.type)-(new Date).getTime()>0))return d.apply(this,arguments);n.removeData(this,\"suppress.\"+t.type)},o.draginit=o.dragstart=o.dragend=i},\n      466: function _(t,e,a){\n      /*!\n           * jquery.event.drop - v 2.3.0\n           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n           * Open Source MIT License - http://threedubmedia.com/code/license\n           */\n      var n=t(458);n.fn.drop=function(t,e,a){var i=\"string\"==typeof t?t:\"\",o=n.isFunction(t)?t:n.isFunction(e)?e:null;return 0!==i.indexOf(\"drop\")&&(i=\"drop\"+i),a=(t==o?e:a)||{},o?this.on(i,a,o):this.trigger(i)},n.drop=function(t){t=t||{},o.multi=!0===t.multi?1/0:!1===t.multi?1:isNaN(t.multi)?o.multi:t.multi,o.delay=t.delay||o.delay,o.tolerance=n.isFunction(t.tolerance)?t.tolerance:null===t.tolerance?null:o.tolerance,o.mode=t.mode||o.mode||\"intersect\"};var i=n.event.special,o=n.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(t){n.data(this,o.datakey).related+=1},remove:function(){n.data(this,o.datakey).related-=1},setup:function(){if(!n.data(this,o.datakey)){n.data(this,o.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),o.targets.push(this)}},teardown:function(){if(!(n.data(this,o.datakey)||{}).related){n.removeData(this,o.datakey);var t=this;o.targets=n.grep(o.targets,(function(e){return e!==t}))}},handler:function(t,e){var a;if(e)switch(t.type){case\"mousedown\":case\"touchstart\":a=n(o.targets),\"string\"==typeof e.drop&&(a=a.filter(e.drop)),a.each((function(){var t=n.data(this,o.datakey);t.active=[],t.anyactive=0,t.winner=0})),e.droppable=a,i.drag.hijack(t,\"dropinit\",e);break;case\"mousemove\":case\"touchmove\":o.event=t,o.timer||o.tolerate(e);break;case\"mouseup\":case\"touchend\":o.timer=clearTimeout(o.timer),e.propagates&&(i.drag.hijack(t,\"drop\",e),i.drag.hijack(t,\"dropend\",e))}},locate:function(t,e){var a=n.data(t,o.datakey),i=n(t),r=i.length&&!i.is(document)?i.offset():{},d=i.outerHeight(),l=i.outerWidth(),c={elem:t,width:l,height:d,top:r.top,left:r.left,right:r.left+l,bottom:r.top+d};return a&&(a.location=c,a.index=e,a.elem=t),c},contains:function(t,e){return(e[0]||e.left)>=t.left&&(e[0]||e.right)<=t.right&&(e[1]||e.top)>=t.top&&(e[1]||e.bottom)<=t.bottom},modes:{intersect:function(t,e,a){return this.contains(a,[t.pageX,t.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(t,e,a){return Math.max(0,Math.min(a.bottom,e.bottom)-Math.max(a.top,e.top))*Math.max(0,Math.min(a.right,e.right)-Math.max(a.left,e.left))},fit:function(t,e,a){return this.contains(a,e)?1:0},middle:function(t,e,a){return this.contains(a,[e.left+.5*e.width,e.top+.5*e.height])?1:0}},sort:function(t,e){return e.winner-t.winner||t.index-e.index},tolerate:function(t){var e,a,r,d,l,c,s,u,p=0,h=t.interactions.length,m=[o.event.pageX,o.event.pageY],f=o.tolerance||o.modes[o.mode];do{if(u=t.interactions[p]){if(!u)return;u.drop=[],l=[],c=u.droppable.length,f&&(r=o.locate(u.proxy)),e=0;do{if(s=u.droppable[e]){if(!(a=(d=n.data(s,o.datakey)).location))continue;d.winner=f?f.call(o,o.event,r,a):o.contains(a,m)?1:0,l.push(d)}}while(++e<c);l.sort(o.sort),e=0;do{(d=l[e])&&(d.winner&&u.drop.length<o.multi?(d.active[p]||d.anyactive||(!1!==i.drag.hijack(o.event,\"dropstart\",t,p,d.elem)[0]?(d.active[p]=1,d.anyactive+=1):d.winner=0),d.winner&&u.drop.push(d.elem)):d.active[p]&&1==d.anyactive&&(i.drag.hijack(o.event,\"dropend\",t,p,d.elem),d.active[p]=0,d.anyactive-=1))}while(++e<c)}}while(++p<h);o.last&&m[0]==o.last.pageX&&m[1]==o.last.pageY?delete o.timer:o.timer=setTimeout((function(){o.tolerate(t)}),o.delay),o.last=o.event}};i.dropinit=i.dropstart=i.dropend=o},\n      467: function _(e,t,n){var r=e(458),o=e(460);var i={Avg:function(e){this.field_=e,this.init=function(){this.count_=0,this.nonNullCount_=0,this.sum_=0},this.accumulate=function(e){var t=e[this.field_];this.count_++,null==t||\"\"===t||isNaN(t)||(this.nonNullCount_++,this.sum_+=parseFloat(t))},this.storeResult=function(e){e.avg||(e.avg={}),0!==this.nonNullCount_&&(e.avg[this.field_]=this.sum_/this.nonNullCount_)}},Min:function(e){this.field_=e,this.init=function(){this.min_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.min_||t<this.min_)&&(this.min_=t)},this.storeResult=function(e){e.min||(e.min={}),e.min[this.field_]=this.min_}},Max:function(e){this.field_=e,this.init=function(){this.max_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.max_||t>this.max_)&&(this.max_=t)},this.storeResult=function(e){e.max||(e.max={}),e.max[this.field_]=this.max_}},Sum:function(e){this.field_=e,this.init=function(){this.sum_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(this.sum_+=parseFloat(t))},this.storeResult=function(e){e.sum||(e.sum={}),e.sum[this.field_]=this.sum_}},Count:function(e){this.field_=e,this.init=function(){},this.storeResult=function(e){e.count||(e.count={}),e.count[this.field_]=e.group.rows.length}}};t.exports={DataView:function(e){var t,n,i,l,a,u=this,s=\"id\",g=[],c=[],f={},p=null,h=null,d=null,m=!1,v=!0,_={},w={},y=[],$=[],C={getter:null,formatter:null,comparer:function(e,t){return e.value===t.value?0:e.value>t.value?1:-1},predefinedValues:[],aggregators:[],aggregateEmpty:!1,aggregateCollapsed:!1,aggregateChildGroups:!1,collapsed:!1,displayTotalsRow:!0,lazyTotalsCalculation:!1},I=[],R=[],x=[],E=0,M=0,F=0,S=new o.Event,b=new o.Event,A=new o.Event,N=new o.Event,G=new o.Event,T=new o.Event,O=new o.Event,P=new o.Event;function D(e){for(var t,n=e=e||0,r=g.length;n<r;n++){if(void 0===(t=g[n][s]))throw new Error(\"Each data element must implement a unique 'id' property\");f[t]=n}}function K(){var e=E?Math.max(1,Math.ceil(F/E)):1;return{pageSize:E,pageNum:M,totalRows:F,totalPages:e,dataView:u}}function j(e,r){v=r,n=e,t=null,!1===r&&g.reverse(),g.sort(e),!1===r&&g.reverse(),f={},D(),le()}function B(e,r){v=r,t=e,n=null;var o=Object.prototype.toString;Object.prototype.toString=\"function\"==typeof e?e:function(){return this[e]},!1===r&&g.reverse(),g.sort(),Object.prototype.toString=o,!1===r&&g.reverse(),f={},D(),le()}function z(t){e.groupItemMetadataProvider||(e.groupItemMetadataProvider=new o.Data.GroupItemMetadataProvider),R=[],x=[],I=(t=t||[])instanceof Array?t:[t];for(var n=0;n<I.length;n++){var i=I[n]=r.extend(!0,{},C,I[n]);i.getterIsAFn=\"function\"==typeof i.getter,i.compiledAccumulators=[];for(var l=i.aggregators.length;l--;)i.compiledAccumulators[l]=ee(i.aggregators[l]);x[n]={}}le()}function V(){if(!p){p={};for(var e=0,t=c.length;e<t;e++)p[c[e][s]]=e}}function q(e){return g[f[e]]}function U(e,t){if(void 0===f[e])throw new Error(\"Invalid id\");if(e!==t[s]){var n=t[s];if(null==n)throw new Error(\"Cannot update item to associate with a null id\");if(void 0!==f[n])throw new Error(\"Cannot update item to associate with a non-unique id\");f[n]=f[e],delete f[e],d&&d[e]&&delete d[e],e=n}g[f[e]]=t,d||(d={}),d[e]=!0,le()}function L(e,t){g.splice(e,0,t),D(e),le()}function k(e){var t=f[e];if(void 0===t)throw new Error(\"Invalid id\");delete f[e],g.splice(t,1),D(t),le()}function H(e){if(!n)throw new Error(\"sortedAddItem() requires a sort comparer, use sort()\");L(function(e){var t=0,r=g.length;for(;t<r;){var o=t+r>>>1;-1===n(g[o],e)?t=o+1:r=o}return t}(e),e)}function W(e,t){if(null==e)for(var n=0;n<I.length;n++)x[n]={},I[n].collapsed=t,!0===t?P.notify({level:n,groupingKey:null}):O.notify({level:n,groupingKey:null});else x[e]={},I[e].collapsed=t,!0===t?P.notify({level:e,groupingKey:null}):O.notify({level:e,groupingKey:null});le()}function J(e,t,n){x[e][t]=I[e].collapsed^n,le()}function Q(e,t){for(var n,r,i,l=[],a={},u=t?t.level+1:0,s=I[u],g=0,c=s.predefinedValues.length;g<c;g++)(n=a[r=s.predefinedValues[g]])||((n=new o.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+\":|:\":\"\")+r,l[l.length]=n,a[r]=n);for(g=0,c=e.length;g<c;g++)i=e[g],(n=a[r=s.getterIsAFn?s.getter(i):i[s.getter]])||((n=new o.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+\":|:\":\"\")+r,l[l.length]=n,a[r]=n),n.rows[n.count++]=i;if(u<I.length-1)for(g=0;g<l.length;g++)(n=l[g]).groups=Q(n.rows,n);return l.length&&function e(t,n){var r,o=I[n=n||0],i=o.collapsed,l=x[n],a=t.length;for(;a--;)(r=t[a]).collapsed&&!o.aggregateCollapsed||(r.groups&&e(r.groups,n+1),o.aggregators.length&&(o.aggregateEmpty||r.rows.length||r.groups&&r.groups.length)&&Y(r),r.collapsed=i^l[r.groupingKey],r.title=o.formatter?o.formatter(r):r.value)}(l,u),l.sort(I[u].comparer),l}function X(e){var t,n=e.group,r=I[n.level],o=n.level==I.length,i=r.aggregators.length;if(!o&&r.aggregateChildGroups)for(var l=n.groups.length;l--;)n.groups[l].totals.initialized||X(n.groups[l].totals);for(;i--;)(t=r.aggregators[i]).init(),!o&&r.aggregateChildGroups?r.compiledAccumulators[i].call(t,n.groups):r.compiledAccumulators[i].call(t,n.rows),t.storeResult(e);e.initialized=!0}function Y(e){var t=I[e.level],n=new o.GroupTotals;n.group=e,e.totals=n,t.lazyTotalsCalculation||X(n)}function Z(e){var t=e.toString().indexOf(\"function\")>=0?/^function[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/:/^[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/,n=e.toString().match(t);return{params:n[1].split(\",\"),body:n[2]}}function ee(e){if(e.accumulate){var t=Z(e.accumulate),n=new Function(\"_items\",\"for (var \"+t.params[0]+\", _i=0, _il=_items.length; _i<_il; _i++) {\"+t.params[0]+\" = _items[_i]; \"+t.body+\"}\"),r=\"compiledAccumulatorLoop\";return n.displayName=r,n.name=te(n,r),n}return function(){}}function te(e,t){try{Object.defineProperty(e,\"name\",{writable:!0,value:t})}catch(n){e.name=t}}function ne(e,t){for(var n=[],r=0,o=0,i=e.length;o<i;o++)h(e[o],t)&&(n[r++]=e[o]);return n}function re(e,t,n){for(var r,o=[],i=0,l=0,a=e.length;l<a;l++)r=e[l],n[l]?o[i++]=r:h(r,t)&&(o[i++]=r,n[l]=!0);return o}function oe(t){if(h){var n=e.inlineFilters?l:ne,r=e.inlineFilters?a:re;_.isFilterNarrowing?y=n(y,i):_.isFilterExpanding?y=r(t,i,$):_.isFilterUnchanged||(y=n(t,i))}else y=E?t:t.concat();var o;return E?(y.length<=M*E&&(M=0===y.length?0:Math.floor((y.length-1)/E)),o=y.slice(E*M,E*M+E)):o=y,{totalRows:y.length,rows:o}}function ie(e){p=null,_.isFilterNarrowing==w.isFilterNarrowing&&_.isFilterExpanding==w.isFilterExpanding||($=[]);var t=oe(e);F=t.totalRows;var n=t.rows;R=[],I.length&&(R=Q(n)).length&&(n=function e(t,n){for(var r,o,i=I[n=n||0],l=[],a=0,u=0,s=t.length;u<s;u++){if(o=t[u],l[a++]=o,!o.collapsed)for(var g=0,c=(r=o.groups?e(o.groups,n+1):o.rows).length;g<c;g++)l[a++]=r[g];o.totals&&i.displayTotalsRow&&(!o.collapsed||i.aggregateCollapsed)&&(l[a++]=o.totals)}return l}(R));var r=function(e,t){var n,r,o,i=[],l=0,a=Math.max(t.length,e.length);_&&_.ignoreDiffsBefore&&(l=Math.max(0,Math.min(t.length,_.ignoreDiffsBefore))),_&&_.ignoreDiffsAfter&&(a=Math.min(t.length,Math.max(0,_.ignoreDiffsAfter)));for(var u=l,g=e.length;u<a;u++)u>=g?i[i.length]=u:(n=t[u],r=e[u],(!n||I.length&&(o=n.__nonDataRow||r.__nonDataRow)&&n.__group!==r.__group||n.__group&&!n.equals(r)||o&&(n.__groupTotals||r.__groupTotals)||n[s]!=r[s]||d&&d[n[s]])&&(i[i.length]=u));return i}(c,n);return c=n,r}function le(){if(!m){var e=r.extend(!0,{},K()),t=c.length,n=F,o=ie(g);E&&F<M*E&&(M=Math.max(0,Math.ceil(F/E)-1),o=ie(g)),d=null,w=_,_={},n!==F&&(G.notify(e,null,u),T.notify(K(),null,u)),t!==c.length&&b.notify({previous:t,current:c.length,dataView:u,callingOnRowsChanged:o.length>0},null,u),o.length>0&&A.notify({rows:o,dataView:u,calledOnRowCountChanged:t!==c.length},null,u),(t!==c.length||o.length>0)&&N.notify({rowsDiff:o,previousRowCount:t,currentRowCount:c.length,rowCountChanged:t!==c.length,rowsChanged:o.length>0,dataView:u},null,u)}}e=r.extend(!0,{},{groupItemMetadataProvider:null,inlineFilters:!1},e),r.extend(this,{beginUpdate:function(){m=!0},endUpdate:function(){m=!1,le()},setPagingOptions:function(e){G.notify(K(),null,u),null!=e.pageSize&&(E=e.pageSize,M=E?Math.min(M,Math.max(0,Math.ceil(F/E)-1)):0),null!=e.pageNum&&(M=Math.min(e.pageNum,Math.max(0,Math.ceil(F/E)-1))),T.notify(K(),null,u),le()},getPagingInfo:K,getIdPropertyName:function(){return s},getItems:function(){return g},setItems:function(e,t){void 0!==t&&(s=t),g=y=e,f={},D(),function(){for(var e,t=0,n=g.length;t<n;t++)if(void 0===(e=g[t][s])||f[e]!==t)throw new Error(\"Each data element must implement a unique 'id' property\")}(),le(),S.notify({idProperty:t},null,u)},setFilter:function(t){h=t,e.inlineFilters&&(l=function(){var e=Z(h),t=\"{ _retval[_idx++] = $item$; continue _coreloop; }$1\",n=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return!1([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return true\\s*([;}]|\\}|$)/gi,t).replace(/return!0([;}]|\\}|$)/gi,t).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ($1) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),r=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");r=(r=(r=r.replace(/\\$filter\\$/gi,n)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var o=new Function(\"_items,_args\",r);return o.displayName=\"compiledFilter\",o.name=te(o,\"compiledFilter\"),o}(),a=function(){var e=Z(h),t=\"{ _cache[_i] = true;_retval[_idx++] = $item$; continue _coreloop; }$1\",n=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return!1([;}]|\\}|$)/gi,\"{ continue _coreloop; }$1\").replace(/return true\\s*([;}]|\\}|$)/gi,t).replace(/return!0([;}]|\\}|$)/gi,t).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ((_cache[_i] = $1)) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),r=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"if (_cache[_i]) { \",\"_retval[_idx++] = $item$; \",\"continue _coreloop; \",\"} \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");r=(r=(r=r.replace(/\\$filter\\$/gi,n)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var o=new Function(\"_items,_args,_cache\",r),i=\"compiledFilterWithCaching\";return o.displayName=i,o.name=te(o,i),o}()),le()},getFilter:function(){return h},getFilteredItems:function(){return y},sort:j,fastSort:B,reSort:function(){n?j(n,v):t&&B(t,v)},setGrouping:z,getGrouping:function(){return I},groupBy:function(e,t,n){z(null!=e?{getter:e,formatter:t,comparer:n}:[])},setAggregators:function(e,t){if(!I.length)throw new Error(\"At least one grouping must be specified before calling setAggregators().\");I[0].aggregators=e,I[0].aggregateCollapsed=t,z(I)},collapseAllGroups:function(e){W(e,!0)},expandAllGroups:function(e){W(e,!1)},collapseGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(\":|:\")?(t=o,n=o.split(\":|:\").length-1):(t=r.join(\":|:\"),n=r.length-1),J(n,t,!0),P.notify({level:n,groupingKey:t})},expandGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(\":|:\")?(n=o.split(\":|:\").length-1,t=o):(n=r.length-1,t=r.join(\":|:\")),J(n,t,!1),O.notify({level:n,groupingKey:t})},getGroups:function(){return R},getIdxById:function(e){return f[e]},getRowByItem:function(e){return V(),p[e[s]]},getRowById:function(e){return V(),p[e]},getItemById:q,getItemByIdx:function(e){return g[e]},mapItemsToRows:function(e){var t=[];V();for(var n=0,r=e.length;n<r;n++){var o=p[e[n][s]];null!=o&&(t[t.length]=o)}return t},mapRowsToIds:function(e){for(var t=[],n=0,r=e.length;n<r;n++)e[n]<c.length&&(t[t.length]=c[e[n]][s]);return t},mapIdsToRows:function(e){var t=[];V();for(var n=0,r=e.length;n<r;n++){var o=p[e[n]];null!=o&&(t[t.length]=o)}return t},setRefreshHints:function(e){_=e},setFilterArgs:function(e){i=e},refresh:le,updateItem:U,insertItem:L,addItem:function(e){g.push(e),D(g.length-1),le()},deleteItem:k,sortedAddItem:H,sortedUpdateItem:function(e,t){if(void 0===f[e]||e!==t[s])throw new Error(\"Invalid or non-matching id \"+f[e]);if(!n)throw new Error(\"sortedUpdateItem() requires a sort comparer, use sort()\");var r=q(e);0!==n(r,t)?(k(e),H(t)):U(e,t)},syncGridSelection:function(e,t,n){var i,l=this,a=l.mapRowsToIds(e.getSelectedRows()),u=new o.Event;function s(t){a.join(\",\")!=t.join(\",\")&&(a=t,u.notify({grid:e,ids:a,dataView:l},new o.EventData,l))}return e.onSelectedRowsChanged.subscribe((function(t,o){if(!i){var u=l.mapRowsToIds(e.getSelectedRows());if(n&&e.getOptions().multiSelect)s(r.grep(a,(function(e){return void 0===l.getRowById(e)})).concat(u));else s(u)}})),this.onRowsOrCountChanged.subscribe((function(){if(a.length>0){i=!0;var n=l.mapIdsToRows(a);t||s(l.mapRowsToIds(n)),e.setSelectedRows(n),i=!1}})),u},syncGridCellCssStyles:function(e,t){var n,r;function o(e){for(var t in n={},e){var r=c[t][s];n[r]=e[t]}}function i(){if(n){r=!0,V();var o={};for(var i in n){var l=p[i];null!=l&&(o[l]=n[i])}e.setCellCssStyles(t,o),r=!1}}o(e.getCellCssStyles(t)),e.onCellCssStylesChanged.subscribe((function(n,l){r||t==l.key&&(l.hash?o(l.hash):(e.onCellCssStylesChanged.unsubscribe(),u.onRowsOrCountChanged.unsubscribe(i)))})),this.onRowsOrCountChanged.subscribe(i)},getLength:function(){return c.length},getItem:function(e){var t=c[e];if(t&&t.__group&&t.totals&&!t.totals.initialized){var n=I[t.level];n.displayTotalsRow||(X(t.totals),t.title=n.formatter?n.formatter(t):t.value)}else t&&t.__groupTotals&&!t.initialized&&X(t);return t},getItemMetadata:function(t){var n=c[t];return void 0===n?null:n.__group?e.groupItemMetadataProvider.getGroupRowMetadata(n):n.__groupTotals?e.groupItemMetadataProvider.getTotalsRowMetadata(n):null},onSetItemsCalled:S,onRowCountChanged:b,onRowsChanged:A,onRowsOrCountChanged:N,onBeforePagingInfoChanged:G,onPagingInfoChanged:T,onGroupExpanded:O,onGroupCollapsed:P})},Aggregators:i,Data:{Aggregators:i}}},\n      468: function _(e,t,i){var n=e(458),o=e(460);function l(e){var t,i;function o(){var t=e.column.editorFixedDecimalPlaces;return void 0===t&&(t=l.DefaultDecimalPlaces),t||0===t?t:null}this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=n(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?a:s).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field];var l=o();null!==l&&(i||0===i)&&i.toFixed&&(i=i.toFixed(l)),t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){var e=parseFloat(t.val());l.AllowEmptyValue?e||0===e||(e=\"\"):e=e||0;var i=o();return null!==i&&(e||0===e)&&e.toFixed&&(e=parseFloat(e.toFixed(i))),e},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid number\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}function a(e){var t=this.selectionStart,i=this.value.length;(e.keyCode===o.keyCode.LEFT&&t>0||e.keyCode===o.keyCode.RIGHT&&t<i-1)&&e.stopImmediatePropagation()}function s(e){e.keyCode!==o.keyCode.LEFT&&e.keyCode!==o.keyCode.RIGHT||e.stopImmediatePropagation()}l.DefaultDecimalPlaces=null,l.AllowEmptyValue=!1,t.exports={Editors:{Text:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=n(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?a:s).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.getValue=function(){return t.val()},this.setValue=function(e){t.val(e)},this.loadValue=function(n){i=n[e.column.field]||\"\",t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Integer:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=n(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?a:s).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid integer\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Float:l,Date:function(e){var t,i,o=!1;this.init=function(){(t=n(\"<INPUT type=text class='editor-text' />\")).appendTo(e.container),t.focus().select(),t.datepicker({showOn:\"button\",buttonImageOnly:!0,beforeShow:function(){o=!0},onClose:function(){o=!1}}),t.width(t.width()-18)},this.destroy=function(){n.datepicker.dpDiv.stop(!0,!0),t.datepicker(\"hide\"),t.datepicker(\"destroy\"),t.remove()},this.show=function(){o&&n.datepicker.dpDiv.stop(!0,!0).show()},this.hide=function(){o&&n.datepicker.dpDiv.stop(!0,!0).hide()},this.position=function(e){o&&n.datepicker.dpDiv.css(\"top\",e.top+30).css(\"left\",e.left)},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},YesNoSelect:function(e){var t,i;this.init=function(){(t=n(\"<SELECT tabIndex='0' class='editor-yesno'><OPTION value='yes'>Yes</OPTION><OPTION value='no'>No</OPTION></SELECT>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){t.val((i=n[e.column.field])?\"yes\":\"no\"),t.select()},this.serializeValue=function(){return\"yes\"==t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return t.val()!=i},this.validate=function(){return{valid:!0,msg:null}},this.init()},Checkbox:function(e){var t,i;this.init=function(){(t=n(\"<INPUT type=checkbox value='true' class='editor-checkbox' hideFocus>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){(i=!!n[e.column.field])?t.prop(\"checked\",!0):t.prop(\"checked\",!1)},this.preClick=function(){t.prop(\"checked\",!t.prop(\"checked\"))},this.serializeValue=function(){return t.prop(\"checked\")},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return this.serializeValue()!==i},this.validate=function(){return{valid:!0,msg:null}},this.init()},PercentComplete:function(e){var t,i,o;this.init=function(){(t=n(\"<INPUT type=text class='editor-percentcomplete' />\")).width(n(e.container).innerWidth()-25),t.appendTo(e.container),(i=n(\"<div class='editor-percentcomplete-picker' />\").appendTo(e.container)).append(\"<div class='editor-percentcomplete-helper'><div class='editor-percentcomplete-wrapper'><div class='editor-percentcomplete-slider' /><div class='editor-percentcomplete-buttons' /></div></div>\"),i.find(\".editor-percentcomplete-buttons\").append(\"<button val=0>Not started</button><br/><button val=50>In Progress</button><br/><button val=100>Complete</button>\"),t.focus().select(),i.find(\".editor-percentcomplete-slider\").slider({orientation:\"vertical\",range:\"min\",value:o,slide:function(e,i){t.val(i.value)}}),i.find(\".editor-percentcomplete-buttons button\").on(\"click\",(function(e){t.val(n(this).attr(\"val\")),i.find(\".editor-percentcomplete-slider\").slider(\"value\",n(this).attr(\"val\"))}))},this.destroy=function(){t.remove(),i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(o=i[e.column.field]),t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==o)&&(parseInt(t.val(),10)||0)!=o},this.validate=function(){return isNaN(parseInt(t.val(),10))?{valid:!1,msg:\"Please enter a valid positive number\"}:{valid:!0,msg:null}},this.init()},LongText:function(e){var t,i,l,a=this;this.init=function(){var o=n(\"body\");e.grid.getOptions().editorCellNavOnLRKeys;i=n(\"<DIV style='z-index:10000;position:absolute;background:white;padding:5px;border:3px solid gray; -moz-border-radius:10px; border-radius:10px;'/>\").appendTo(o),t=n(\"<TEXTAREA hidefocus rows=5 style='background:white;width:250px;height:80px;border:0;outline:0'>\").appendTo(i),n(\"<DIV style='text-align:right'><BUTTON>Save</BUTTON><BUTTON>Cancel</BUTTON></DIV>\").appendTo(i),i.find(\"button:first\").on(\"click\",this.save),i.find(\"button:last\").on(\"click\",this.cancel),t.on(\"keydown\",this.handleKeyDown),a.position(e.position),t.focus().select()},this.handleKeyDown=function(t){if(t.which==o.keyCode.ENTER&&t.ctrlKey)a.save();else if(t.which==o.keyCode.ESCAPE)t.preventDefault(),a.cancel();else if(t.which==o.keyCode.TAB&&t.shiftKey)t.preventDefault(),e.grid.navigatePrev();else if(t.which==o.keyCode.TAB)t.preventDefault(),e.grid.navigateNext();else if((t.which==o.keyCode.LEFT||t.which==o.keyCode.RIGHT)&&e.grid.getOptions().editorCellNavOnLRKeys){var i=this.selectionStart,n=this.value.length;t.keyCode===o.keyCode.LEFT&&0===i&&e.grid.navigatePrev(),t.keyCode===o.keyCode.RIGHT&&i>=n-1&&e.grid.navigateNext()}},this.save=function(){e.commitChanges()},this.cancel=function(){t.val(l),e.cancelChanges()},this.hide=function(){i.hide()},this.show=function(){i.show()},this.position=function(e){i.css(\"top\",e.top-5).css(\"left\",e.left-5)},this.destroy=function(){i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(l=i[e.column.field]),t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==l)&&t.val()!=l},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}}}},\n      469: function _(e,n,r){e(460);n.exports={Formatters:{PercentComplete:function(e,n,r,t,c){return null==r||\"\"===r?\"-\":r<50?\"<span style='color:red;font-weight:bold;'>\"+r+\"%</span>\":\"<span style='color:green'>\"+r+\"%</span>\"},PercentCompleteBar:function(e,n,r,t,c){return null==r||\"\"===r?\"\":\"<span class='percent-complete-bar' style='background:\"+(r<30?\"red\":r<70?\"silver\":\"green\")+\";width:\"+r+\"%'></span>\"},YesNo:function(e,n,r,t,c){return r?\"Yes\":\"No\"},Checkmark:function(e,n,r,t,c){return r?\"<img src='../images/tick.png'>\":\"\"},Checkbox:function(e,n,r,t,c){return'<img class=\"slick-edit-preclick\" src=\"../images/'+(r?\"CheckboxY\":\"CheckboxN\")+'.png\">'}}}},\n      470: function _(t,o,r){var e=t(458),n=t(460);o.exports={RemoteModel:function(){var t={length:0},o=\"\",r=null,a=1,l=null,i=null,s=new n.Event,u=new n.Event;function f(){for(var o in t)delete t[o];t.length=0}function c(n,f){if(i){i.abort();for(var c=i.fromPage;c<=i.toPage;c++)t[50*c]=void 0}n<0&&(n=0),t.length>0&&(f=Math.min(f,t.length-1));for(var d=Math.floor(n/50),v=Math.floor(f/50);void 0!==t[50*d]&&d<v;)d++;for(;void 0!==t[50*v]&&d<v;)v--;if(d>v||d==v&&void 0!==t[50*d])u.notify({from:n,to:f});else{var m=\"http://octopart.com/api/v3/parts/search?apikey=68b25f31&include[]=short_description&show[]=uid&show[]=manufacturer&show[]=mpn&show[]=brand&show[]=octopart_url&show[]=short_description&q=\"+o+\"&start=\"+50*d+\"&limit=\"+(50*(v-d)+50);null!=r&&(m+=\"&sortby=\"+r+(a>0?\"+asc\":\"+desc\")),null!=l&&clearTimeout(l),l=setTimeout((function(){for(var o=d;o<=v;o++)t[50*o]=null;s.notify({from:n,to:f}),(i=e.jsonp({url:m,callbackParameter:\"callback\",cache:!0,success:h,error:function(){!function(t,o){alert(\"error loading pages \"+t+\" to \"+o)}(d,v)}})).fromPage=d,i.toPage=v}),50)}}function h(o){var r=o.request.start,e=r+o.results.length;t.length=Math.min(parseInt(o.hits),1e3);for(var n=0;n<o.results.length;n++){var a=o.results[n].item;t[r+n]=a,t[r+n].index=r+n}i=null,u.notify({from:r,to:e})}return{data:t,clear:f,isDataLoaded:function(o,r){for(var e=o;e<=r;e++)if(null==t[e]||null==t[e])return!1;return!0},ensureData:c,reloadData:function(o,r){for(var e=o;e<=r;e++)delete t[e];c(o,r)},setSort:function(t,o){r=t,a=o,f()},setSearch:function(t){o=t,f()},onDataLoading:s,onDataLoaded:u}}}},\n      471: function _(e,s,t){var o=e(458),l=e(460);s.exports={GroupItemMetadataProvider:function(e){var s,t={checkboxSelect:!1,checkboxSelectCssClass:\"slick-group-select-checkbox\",checkboxSelectPlugin:null,groupCssClass:\"slick-group\",groupTitleCssClass:\"slick-group-title\",totalsCssClass:\"slick-group-totals\",groupFocusable:!0,totalsFocusable:!1,toggleCssClass:\"slick-group-toggle\",toggleExpandedCssClass:\"expanded\",toggleCollapsedCssClass:\"collapsed\",enableExpandCollapse:!0,groupFormatter:function(e,s,t,o,l,r){if(!a.enableExpandCollapse)return l.title;var c=15*l.level+\"px\";return(a.checkboxSelect?'<span class=\"'+a.checkboxSelectCssClass+\" \"+(l.selectChecked?\"checked\":\"unchecked\")+'\"></span>':\"\")+\"<span class='\"+a.toggleCssClass+\" \"+(l.collapsed?a.toggleCollapsedCssClass:a.toggleExpandedCssClass)+\"' style='margin-left:\"+c+\"'></span><span class='\"+a.groupTitleCssClass+\"' level='\"+l.level+\"'>\"+l.title+\"</span>\"},totalsFormatter:function(e,s,t,o,l,a){return o.groupTotalsFormatter&&o.groupTotalsFormatter(l,o,a)||\"\"},includeHeaderTotals:!1},a=o.extend(!0,{},t,e);function r(e,t){var r=o(e.target),c=this.getDataItem(t.row);if(c&&c instanceof l.Group&&r.hasClass(a.toggleCssClass)){var n=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:n.top,ignoreDiffsAfter:n.bottom+1}),c.collapsed?this.getData().expandGroup(c.groupingKey):this.getData().collapseGroup(c.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}if(c&&c instanceof l.Group&&r.hasClass(a.checkboxSelectCssClass)){c.selectChecked=!c.selectChecked,r.removeClass(c.selectChecked?\"unchecked\":\"checked\"),r.addClass(c.selectChecked?\"checked\":\"unchecked\");var i=s.getData().mapItemsToRows(c.rows);(c.selectChecked?a.checkboxSelectPlugin.selectRows:a.checkboxSelectPlugin.deSelectRows)(i)}}function c(e,t){if(a.enableExpandCollapse&&e.which==l.keyCode.SPACE){var o=this.getActiveCell();if(o){var r=this.getDataItem(o.row);if(r&&r instanceof l.Group){var c=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:c.top,ignoreDiffsAfter:c.bottom+1}),r.collapsed?this.getData().expandGroup(r.groupingKey):this.getData().collapseGroup(r.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}}}}return{init:function(e){(s=e).onClick.subscribe(r),s.onKeyDown.subscribe(c)},destroy:function(){s&&(s.onClick.unsubscribe(r),s.onKeyDown.unsubscribe(c))},getGroupRowMetadata:function(e){var s=e&&e.level;return{selectable:!1,focusable:a.groupFocusable,cssClasses:a.groupCssClass+\" slick-group-level-\"+s,formatter:a.includeHeaderTotals&&a.totalsFormatter,columns:{0:{colspan:a.includeHeaderTotals?\"1\":\"*\",formatter:a.groupFormatter,editor:null}}}},getTotalsRowMetadata:function(e){var s=e&&e.group&&e.group.level;return{selectable:!1,focusable:a.totalsFocusable,cssClasses:a.totalsCssClass+\" slick-group-level-\"+s,formatter:a.totalsFormatter,editor:null}},getOptions:function(){return a},setOptions:function(e){o.extend(!0,a,e)}}}}},\n      472: function _(i,e,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=i(1),n=i(276),r=o.__importStar(i(18));class _ extends n.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}t.WidgetView=_,_.__name__=\"WidgetView\";class s extends n.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define({orientation:[r.Orientation,\"horizontal\"],default_size:[r.Number,300]}),this.override({margin:[5,5,5,5]})}}t.Widget=s,s.__name__=\"Widget\",s.init_Widget()},\n      473: function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(1),n=e(472),c=e(114),a=s.__importStar(e(18));class o extends n.Widget{constructor(e){super(e)}static init_TableWidget(){this.define({source:[a.Instance],view:[a.Instance,()=>new c.CDSView]})}initialize(){super.initialize(),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())}}t.TableWidget=o,o.__name__=\"TableWidget\",o.init_TableWidget()},\n      474: function _(t,e,i){Object.defineProperty(i,\"__esModule\",{value:!0});const r=t(1),o=t(475),n=t(455),l=r.__importStar(t(18)),a=t(29),d=t(81);class s extends d.Model{constructor(t){super(t)}static init_TableColumn(){this.define({field:[l.String],title:[l.String],width:[l.Number,300],formatter:[l.Instance,()=>new o.StringFormatter],editor:[l.Instance,()=>new n.StringEditor],sortable:[l.Boolean,!0],default_sort:[l.Sort,\"ascending\"]})}toColumn(){var t;return{id:a.uniqueId(),field:this.field,name:null!==(t=this.title)&&void 0!==t?t:this.field,width:this.width,formatter:null!=this.formatter?this.formatter.doFormat.bind(this.formatter):void 0,model:this.editor,editor:this.editor.default_view,sortable:this.sortable,defaultSortAsc:\"ascending\"==this.default_sort}}}i.TableColumn=s,s.__name__=\"TableColumn\",s.init_TableColumn()},\n      475: function _(t,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=t(1),i=n.__importDefault(t(186)),a=n.__importStar(t(188)),o=t(476),s=n.__importStar(t(18)),l=t(72),c=t(8),m=t(81);class _ extends m.Model{constructor(t){super(t)}doFormat(t,e,r,n,i){return null==r?\"\":(r+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}}r.CellFormatter=_,_.__name__=\"CellFormatter\";class u extends _{constructor(t){super(t)}static init_StringFormatter(){this.define({font_style:[s.FontStyle,\"normal\"],text_align:[s.TextAlign,\"left\"],text_color:[s.Color]})}doFormat(t,e,r,n,i){const{font_style:a,text_align:o,text_color:s}=this,c=l.div({},null==r?\"\":\"\"+r);switch(a){case\"bold\":c.style.fontWeight=\"bold\";break;case\"italic\":c.style.fontStyle=\"italic\"}return null!=o&&(c.style.textAlign=o),null!=s&&(c.style.color=s),c.outerHTML}}r.StringFormatter=u,u.__name__=\"StringFormatter\",u.init_StringFormatter();class F extends u{constructor(t){super(t)}static init_ScientificFormatter(){this.define({nan_format:[s.String],precision:[s.Number,10],power_limit_high:[s.Number,5],power_limit_low:[s.Number,-3]})}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}doFormat(t,e,r,n,i){const a=r<=this.scientific_limit_low||r>=this.scientific_limit_high;let o=this.precision;return o<1&&(o=1),r=null!=r&&!isNaN(r)||null==this.nan_format?a?r.toExponential(o):r.toFixed(o).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"):this.nan_format,super.doFormat(t,e,r,n,i)}}r.ScientificFormatter=F,F.__name__=\"ScientificFormatter\",F.init_ScientificFormatter();class d extends u{constructor(t){super(t)}static init_NumberFormatter(){this.define({format:[s.String,\"0,0\"],language:[s.String,\"en\"],rounding:[s.RoundingFunction,\"round\"],nan_format:[s.String]})}doFormat(t,e,r,n,i){const{format:o,language:s,nan_format:l}=this,c=(()=>{switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}})();return r=null!=r&&!isNaN(r)||null==l?a.format(r,o,s,c):l,super.doFormat(t,e,r,n,i)}}r.NumberFormatter=d,d.__name__=\"NumberFormatter\",d.init_NumberFormatter();class f extends _{constructor(t){super(t)}static init_BooleanFormatter(){this.define({icon:[s.String,\"check\"]})}doFormat(t,e,r,n,i){return r?l.i({class:this.icon}).outerHTML:\"\"}}r.BooleanFormatter=f,f.__name__=\"BooleanFormatter\",f.init_BooleanFormatter();class g extends u{constructor(t){super(t)}static init_DateFormatter(){this.define({format:[s.String,\"ISO-8601\"],nan_format:[s.String]})}getFormat(){switch(this.format){case\"ATOM\":case\"W3C\":case\"RFC-3339\":case\"ISO-8601\":return\"%Y-%m-%d\";case\"COOKIE\":return\"%a, %d %b %Y\";case\"RFC-850\":return\"%A, %d-%b-%y\";case\"RFC-1123\":case\"RFC-2822\":return\"%a, %e %b %Y\";case\"RSS\":case\"RFC-822\":case\"RFC-1036\":return\"%a, %e %b %y\";case\"TIMESTAMP\":return;default:return this.format}}doFormat(t,e,r,n,a){const{nan_format:o}=this;let s;return s=null!=(r=c.isString(r)?parseInt(r,10):r)&&!isNaN(r)&&-9223372036854776!==r||null==o?null==r?\"\":i.default(r,this.getFormat()):o,super.doFormat(t,e,s,n,a)}}r.DateFormatter=g,g.__name__=\"DateFormatter\",g.init_DateFormatter();class h extends _{constructor(t){super(t)}static init_HTMLTemplateFormatter(){this.define({template:[s.String,\"<%= value %>\"]})}doFormat(t,e,r,n,i){const{template:a}=this;if(null==r)return\"\";return o._.template(a)(Object.assign(Object.assign({},i),{value:r}))}}r.HTMLTemplateFormatter=h,h.__name__=\"HTMLTemplateFormatter\",h.init_HTMLTemplateFormatter()},\n      476: function _(e,n,t){var f=e(477),i=f.template;function o(e,n,t){return i(e,n,t)}o._=f,n.exports=o,\"function\"==typeof define&&define.amd?define((function(){return o})):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=o)},\n      477: function _(r,e,n){\n      //     (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n      //     Underscore may be freely distributed under the MIT license.\n      var t={},a=Array.prototype,u=Object.prototype,c=a.slice,o=u.toString,l=u.hasOwnProperty,i=a.forEach,f=Object.keys,s=Array.isArray,p=function(){},_=p.each=p.forEach=function(r,e,n){if(null!=r)if(i&&r.forEach===i)r.forEach(e,n);else if(r.length===+r.length){for(var a=0,u=r.length;a<u;a++)if(e.call(n,r[a],a,r)===t)return}else{var c=p.keys(r);for(a=0,u=c.length;a<u;a++)if(e.call(n,r[c[a]],c[a],r)===t)return}};p.keys=f||function(r){if(r!==Object(r))throw new TypeError(\"Invalid object\");var e=[];for(var n in r)p.has(r,n)&&e.push(n);return e},p.defaults=function(r){return _(c.call(arguments,1),(function(e){if(e)for(var n in e)void 0===r[n]&&(r[n]=e[n])})),r},p.isArray=s||function(r){return\"[object Array]\"===o.call(r)},p.has=function(r,e){if(!p.isArray(e))return null!=r&&l.call(r,e);for(var n=e.length,t=0;t<n;t++){var a=e[t];if(null==r||!l.call(r,a))return!1;r=r[a]}return!!n};var h={escape:{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\"}},v={escape:new RegExp(\"[\"+p.keys(h.escape).join(\"\")+\"]\",\"g\")};p.each([\"escape\"],(function(r){p[r]=function(e){return null==e?\"\":(\"\"+e).replace(v[r],(function(e){return h[r][e]}))}})),p.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var g=/(.)^/,y={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},j=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;p.template=function(r,e,n){var t;n=p.defaults({},n,p.templateSettings);var a=new RegExp([(n.escape||g).source,(n.interpolate||g).source,(n.evaluate||g).source].join(\"|\")+\"|$\",\"g\"),u=0,c=\"__p+='\";r.replace(a,(function(e,n,t,a,o){return c+=r.slice(u,o).replace(j,(function(r){return\"\\\\\"+y[r]})),n&&(c+=\"'+\\n((__t=(\"+n+\"))==null?'':_.escape(__t))+\\n'\"),t&&(c+=\"'+\\n((__t=(\"+t+\"))==null?'':__t)+\\n'\"),a&&(c+=\"';\\n\"+a+\"\\n__p+='\"),u=o+e.length,e})),c+=\"';\\n\",n.variable||(c=\"with(obj||{}){\\n\"+c+\"}\\n\"),c=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+c+\"return __p;\\n\";try{t=new Function(n.variable||\"obj\",\"_\",c)}catch(r){throw r.source=c,r}if(e)return t(e,p);var o=function(r){return t.call(this,r,p)};return o.source=\"function(\"+(n.variable||\"obj\")+\"){\\n\"+c+\"}\",o},e.exports=p},\n      478: function _(e,l,b){Object.defineProperty(b,\"__esModule\",{value:!0}),b.bk_data_table=\"bk-data-table\",b.bk_cell_index=\"bk-cell-index\",b.bk_header_index=\"bk-header-index\",b.bk_cell_editor=\"bk-cell-editor\",b.bk_cell_select=\"bk-cell-select\"},\n      479: function _(A,n,o){Object.defineProperty(o,\"__esModule\",{value:!0});o.default='\\n.bk-root {\\n  /*\\nIMPORTANT:\\nIn order to preserve the uniform grid appearance, all cell styles need to have padding, margin and border sizes.\\nNo built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS\\nclasses should alter those!\\n*/\\n  /*\\nIMPORTANT:\\nIn order to preserve the uniform grid appearance, all cell styles need to have padding, margin and border sizes.\\nNo built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS\\nclasses should alter those!\\n*/\\n  /* Menu button */\\n  /* Menu */\\n  /* Menu items */\\n  /* Disabled */\\n  /* Divider */\\n  /* Excluded item from Column Picker will be hidden */\\n}\\n.bk-root .slick-header.ui-state-default,\\n.bk-root .slick-headerrow.ui-state-default,\\n.bk-root .slick-footerrow.ui-state-default,\\n.bk-root .slick-top-panel-scroller.ui-state-default,\\n.bk-root .slick-group-header.ui-state-default {\\n  width: 100%;\\n  overflow: auto;\\n  position: relative;\\n  border-left: 0px !important;\\n}\\n.bk-root .slick-header.ui-state-default {\\n  overflow: inherit;\\n}\\n.bk-root .slick-header::-webkit-scrollbar,\\n.bk-root .slick-headerrow::-webkit-scrollbar,\\n.bk-root .slick-footerrow::-webkit-scrollbar {\\n  display: none;\\n}\\n.bk-root .slick-header-columns,\\n.bk-root .slick-headerrow-columns,\\n.bk-root .slick-footerrow-columns,\\n.bk-root .slick-group-header-columns {\\n  position: relative;\\n  white-space: nowrap;\\n  cursor: default;\\n  overflow: hidden;\\n}\\n.bk-root .slick-header-column.ui-state-default,\\n.bk-root .slick-group-header-column.ui-state-default {\\n  position: relative;\\n  display: inline-block;\\n  box-sizing: content-box !important;\\n  /* this here only for Firefox! */\\n  overflow: hidden;\\n  -o-text-overflow: ellipsis;\\n  text-overflow: ellipsis;\\n  height: 16px;\\n  line-height: 16px;\\n  margin: 0;\\n  padding: 4px;\\n  border-right: 1px solid silver;\\n  border-left: 0px !important;\\n  border-top: 0px !important;\\n  border-bottom: 0px !important;\\n  float: left;\\n}\\n.bk-root .slick-footerrow-column.ui-state-default {\\n  -o-text-overflow: ellipsis;\\n  text-overflow: ellipsis;\\n  margin: 0;\\n  padding: 4px;\\n  border-right: 1px solid silver;\\n  border-left: 0px;\\n  border-top: 0px;\\n  border-bottom: 0px;\\n  float: left;\\n  line-height: 20px;\\n  vertical-align: middle;\\n}\\n.bk-root .slick-headerrow-column.ui-state-default,\\n.bk-root .slick-footerrow-column.ui-state-default {\\n  padding: 4px;\\n}\\n.bk-root .slick-header-column-sorted {\\n  font-style: italic;\\n}\\n.bk-root .slick-sort-indicator {\\n  display: inline-block;\\n  width: 8px;\\n  height: 5px;\\n  margin-left: 4px;\\n  margin-top: 6px;\\n  float: left;\\n}\\n.bk-root .slick-sort-indicator-numbered {\\n  display: inline-block;\\n  width: 8px;\\n  height: 5px;\\n  margin-left: 4px;\\n  margin-top: 0;\\n  line-height: 20px;\\n  float: left;\\n  font-family: Arial;\\n  font-style: normal;\\n  font-weight: bold;\\n  color: #6190CD;\\n}\\n.bk-root .slick-sort-indicator-desc {\\n  background: url(images/sort-desc.gif);\\n}\\n.bk-root .slick-sort-indicator-asc {\\n  background: url(images/sort-asc.gif);\\n}\\n.bk-root .slick-resizable-handle {\\n  position: absolute;\\n  font-size: 0.1px;\\n  display: block;\\n  cursor: col-resize;\\n  width: 9px;\\n  right: -5px;\\n  top: 0;\\n  height: 100%;\\n  z-index: 1;\\n}\\n.bk-root .slick-sortable-placeholder {\\n  background: silver;\\n}\\n.bk-root .grid-canvas {\\n  position: relative;\\n  outline: 0;\\n}\\n.bk-root .slick-row.ui-widget-content,\\n.bk-root .slick-row.ui-state-active {\\n  position: absolute;\\n  border: 0px;\\n  width: 100%;\\n}\\n.bk-root .slick-cell,\\n.bk-root .slick-headerrow-column,\\n.bk-root .slick-footerrow-column {\\n  position: absolute;\\n  border: 1px solid transparent;\\n  border-right: 1px dotted silver;\\n  border-bottom-color: silver;\\n  overflow: hidden;\\n  -o-text-overflow: ellipsis;\\n  text-overflow: ellipsis;\\n  vertical-align: middle;\\n  z-index: 1;\\n  padding: 1px 2px 2px 1px;\\n  margin: 0;\\n  white-space: nowrap;\\n  cursor: default;\\n}\\n.bk-root .slick-cell,\\n.bk-root .slick-headerrow-column {\\n  border-bottom-color: silver;\\n}\\n.bk-root .slick-footerrow-column {\\n  border-top-color: silver;\\n}\\n.bk-root .slick-group-toggle {\\n  display: inline-block;\\n}\\n.bk-root .slick-cell.highlighted {\\n  background: lightskyblue;\\n  background: rgba(0, 0, 255, 0.2);\\n  -webkit-transition: all 0.5s;\\n  -moz-transition: all 0.5s;\\n  -o-transition: all 0.5s;\\n  transition: all 0.5s;\\n}\\n.bk-root .slick-cell.flashing {\\n  border: 1px solid red !important;\\n}\\n.bk-root .slick-cell.editable {\\n  z-index: 11;\\n  overflow: visible;\\n  background: white;\\n  border-color: black;\\n  border-style: solid;\\n}\\n.bk-root .slick-cell:focus {\\n  outline: none;\\n}\\n.bk-root .slick-reorder-proxy {\\n  display: inline-block;\\n  background: blue;\\n  opacity: 0.15;\\n  cursor: move;\\n}\\n.bk-root .slick-reorder-guide {\\n  display: inline-block;\\n  height: 2px;\\n  background: blue;\\n  opacity: 0.7;\\n}\\n.bk-root .slick-selection {\\n  z-index: 10;\\n  position: absolute;\\n  border: 2px dashed black;\\n}\\n.bk-root .slick-pane {\\n  position: absolute;\\n  outline: 0;\\n  overflow: hidden;\\n  width: 100%;\\n}\\n.bk-root .slick-pane-header {\\n  display: block;\\n}\\n.bk-root .slick-header {\\n  overflow: hidden;\\n  position: relative;\\n}\\n.bk-root .slick-headerrow {\\n  overflow: hidden;\\n  position: relative;\\n}\\n.bk-root .slick-top-panel-scroller {\\n  overflow: hidden;\\n  position: relative;\\n}\\n.bk-root .slick-top-panel {\\n  width: 10000px;\\n}\\n.bk-root .slick-viewport {\\n  position: relative;\\n  outline: 0;\\n  width: 100%;\\n}\\n.bk-root .slick-header-columns {\\n  background: url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;\\n  border-bottom: 1px solid silver;\\n}\\n.bk-root .slick-header-column {\\n  background: url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;\\n  border-right: 1px solid silver;\\n}\\n.bk-root .slick-header-column:hover,\\n.bk-root .slick-header-column-active {\\n  background: white url(\\'images/header-columns-over-bg.gif\\') repeat-x center bottom;\\n}\\n.bk-root .slick-headerrow {\\n  background: #fafafa;\\n}\\n.bk-root .slick-headerrow-column {\\n  background: #fafafa;\\n  border-bottom: 0;\\n  height: 100%;\\n}\\n.bk-root .slick-row.ui-state-active {\\n  background: #F5F7D7;\\n}\\n.bk-root .slick-row {\\n  position: absolute;\\n  background: white;\\n  border: 0px;\\n  line-height: 20px;\\n}\\n.bk-root .slick-row.selected {\\n  z-index: 10;\\n  background: #DFE8F6;\\n}\\n.bk-root .slick-cell {\\n  padding-left: 4px;\\n  padding-right: 4px;\\n}\\n.bk-root .slick-group {\\n  border-bottom: 2px solid silver;\\n}\\n.bk-root .slick-group-toggle {\\n  width: 9px;\\n  height: 9px;\\n  margin-right: 5px;\\n}\\n.bk-root .slick-group-toggle.expanded {\\n  background: url(images/collapse.gif) no-repeat center center;\\n}\\n.bk-root .slick-group-toggle.collapsed {\\n  background: url(images/expand.gif) no-repeat center center;\\n}\\n.bk-root .slick-group-totals {\\n  color: gray;\\n  background: white;\\n}\\n.bk-root .slick-group-select-checkbox {\\n  width: 13px;\\n  height: 13px;\\n  margin: 3px 10px 0 0;\\n  display: inline-block;\\n}\\n.bk-root .slick-group-select-checkbox.checked {\\n  background: url(images/GrpCheckboxY.png) no-repeat center center;\\n}\\n.bk-root .slick-group-select-checkbox.unchecked {\\n  background: url(images/GrpCheckboxN.png) no-repeat center center;\\n}\\n.bk-root .slick-cell.selected {\\n  background-color: beige;\\n}\\n.bk-root .slick-cell.active {\\n  border-color: gray;\\n  border-style: solid;\\n}\\n.bk-root .slick-sortable-placeholder {\\n  background: silver !important;\\n}\\n.bk-root .slick-row.odd {\\n  background: #fafafa;\\n}\\n.bk-root .slick-row.ui-state-active {\\n  background: #F5F7D7;\\n}\\n.bk-root .slick-row.loading {\\n  opacity: 0.5;\\n}\\n.bk-root .slick-cell.invalid {\\n  border-color: red;\\n  -moz-animation-duration: 0.2s;\\n  -webkit-animation-duration: 0.2s;\\n  -moz-animation-name: slickgrid-invalid-hilite;\\n  -webkit-animation-name: slickgrid-invalid-hilite;\\n}\\n@-moz-keyframes slickgrid-invalid-hilite {\\n  from {\\n    box-shadow: 0 0 6px red;\\n  }\\n  to {\\n    box-shadow: none;\\n  }\\n}\\n@-webkit-keyframes slickgrid-invalid-hilite {\\n  from {\\n    box-shadow: 0 0 6px red;\\n  }\\n  to {\\n    box-shadow: none;\\n  }\\n}\\n.bk-root .slick-column-name,\\n.bk-root .slick-sort-indicator {\\n  /**\\n   * This makes all \"float:right\" elements after it that spill over to the next line\\n   * display way below the lower boundary of the column thus hiding them.\\n   */\\n  display: inline-block;\\n  float: left;\\n  margin-bottom: 100px;\\n}\\n.bk-root .slick-header-button {\\n  display: inline-block;\\n  float: right;\\n  vertical-align: top;\\n  margin: 1px;\\n  /**\\n  * This makes all \"float:right\" elements after it that spill over to the next line\\n  * display way below the lower boundary of the column thus hiding them.\\n  */\\n  margin-bottom: 100px;\\n  height: 15px;\\n  width: 15px;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n  cursor: pointer;\\n}\\n.bk-root .slick-header-button-hidden {\\n  width: 0;\\n  -webkit-transition: 0.2s width;\\n  -ms-transition: 0.2s width;\\n  transition: 0.2s width;\\n}\\n.bk-root .slick-header-column:hover > .slick-header-button {\\n  width: 15px;\\n}\\n.bk-root .slick-header-menubutton {\\n  position: absolute;\\n  right: 0;\\n  top: 0;\\n  bottom: 0;\\n  width: 14px;\\n  background-repeat: no-repeat;\\n  background-position: left center;\\n  background-image: url(../images/down.gif);\\n  cursor: pointer;\\n  display: none;\\n  border-left: thin ridge silver;\\n}\\n.bk-root .slick-header-column:hover > .slick-header-menubutton,\\n.bk-root .slick-header-column-active .slick-header-menubutton {\\n  display: inline-block;\\n}\\n.bk-root .slick-header-menu {\\n  position: absolute;\\n  display: inline-block;\\n  margin: 0;\\n  padding: 2px;\\n  cursor: default;\\n}\\n.bk-root .slick-header-menuitem {\\n  list-style: none;\\n  margin: 0;\\n  padding: 0;\\n  cursor: pointer;\\n}\\n.bk-root .slick-header-menuicon {\\n  display: inline-block;\\n  width: 16px;\\n  height: 16px;\\n  vertical-align: middle;\\n  margin-right: 4px;\\n  background-repeat: no-repeat;\\n  background-position: center center;\\n}\\n.bk-root .slick-header-menucontent {\\n  display: inline-block;\\n  vertical-align: middle;\\n}\\n.bk-root .slick-header-menuitem-disabled {\\n  color: silver;\\n}\\n.bk-root .slick-header-menuitem.slick-header-menuitem-divider {\\n  cursor: default;\\n  border: none;\\n  overflow: hidden;\\n  padding: 0;\\n  height: 1px;\\n  margin: 8px 2px;\\n  background-color: #cecece;\\n}\\n.bk-root .slick-header-menuitem-divider.slick-header-menuitem:hover {\\n  background-color: #cecece;\\n}\\n.bk-root .slick-columnpicker {\\n  border: 1px solid #718BB7;\\n  background: #f0f0f0;\\n  padding: 6px;\\n  -moz-box-shadow: 2px 2px 2px silver;\\n  -webkit-box-shadow: 2px 2px 2px silver;\\n  box-shadow: 2px 2px 2px silver;\\n  min-width: 150px;\\n  cursor: default;\\n  position: absolute;\\n  z-index: 20;\\n  overflow: auto;\\n  resize: both;\\n}\\n.bk-root .slick-columnpicker > .close {\\n  float: right;\\n}\\n.bk-root .slick-columnpicker .title {\\n  font-size: 16px;\\n  width: 60%;\\n  border-bottom: solid 1px #d6d6d6;\\n  margin-bottom: 10px;\\n}\\n.bk-root .slick-columnpicker li {\\n  list-style: none;\\n  margin: 0;\\n  padding: 0;\\n  background: none;\\n}\\n.bk-root .slick-columnpicker input {\\n  margin: 4px;\\n}\\n.bk-root .slick-columnpicker li a {\\n  display: block;\\n  padding: 4px;\\n  font-weight: bold;\\n}\\n.bk-root .slick-columnpicker li a:hover {\\n  background: white;\\n}\\n.bk-root .slick-columnpicker-list li.hidden {\\n  display: none;\\n}\\n.bk-root .slick-pager {\\n  width: 100%;\\n  height: 26px;\\n  border: 1px solid gray;\\n  border-top: 0;\\n  background: url(\\'../images/header-columns-bg.gif\\') repeat-x center bottom;\\n  vertical-align: middle;\\n}\\n.bk-root .slick-pager .slick-pager-status {\\n  display: inline-block;\\n  padding: 6px;\\n}\\n.bk-root .slick-pager .ui-icon-container {\\n  display: inline-block;\\n  margin: 2px;\\n  border-color: gray;\\n}\\n.bk-root .slick-pager .slick-pager-nav {\\n  display: inline-block;\\n  float: left;\\n  padding: 2px;\\n}\\n.bk-root .slick-pager .slick-pager-settings {\\n  display: block;\\n  float: right;\\n  padding: 2px;\\n}\\n.bk-root .slick-pager .slick-pager-settings * {\\n  vertical-align: middle;\\n}\\n.bk-root .slick-pager .slick-pager-settings a {\\n  padding: 2px;\\n  text-decoration: underline;\\n  cursor: pointer;\\n}\\n.bk-root .slick-header-columns {\\n  border-bottom: 1px solid silver;\\n  background-image: none;\\n}\\n.bk-root .slick-header-column {\\n  border-right: 1px solid transparent;\\n  background-image: none;\\n}\\n.bk-root .slick-header-column:last-of-type {\\n  border-right-color: transparent;\\n}\\n.bk-root .slick-header-column:hover,\\n.bk-root .slick-header-column-active {\\n  background-color: #F0F8FF;\\n  background-image: none;\\n}\\n.bk-root .slick-group-toggle.expanded {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIMwADCBxIUIDBgwIEChgwwECBAgQUFjBAkaJCABgxGlB4AGHCAAIQiBypEEECkScJqgwQEAA7\");\\n}\\n.bk-root .slick-group-toggle.collapsed {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIOAADCBxIUIDBgwIEChgwAECBAgQUFjAAQIABAwoBaNSIMYCAAwIqGlSIAEHFkiQTIBCgkqDLAAEBADs=\");\\n}\\n.bk-root .slick-group-select-checkbox.checked {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAAEcSURBVChTjdI9S8NQFAbg/raQXVwCRRFE7GK7OXTwD+ikk066VF3a0ja0hQTyQdJrwNq0zrYSQRLEXMSWSlCIb8glqRcFD+9yz3nugXwU4n9XQqMoGjj36uBJsTwuaNo3EwBG4Yy7pe7Gv8YcvhJCGFVsjxsjxujj6OTSGlHv+U2WZUZbPWKOv1ZjT5a7pbIoiptbO5b73mwrjHa1B27l8VlTEIS1damlTnEE+EEN9/P8WrfH81qdAIGeXvTTmzltdCy46sEhxpKUINReZR9NnqZbr9puugxV3NjWh/k74WmmEdWhmUNy2jNmWRc6fZTVADCqao52u+DGWTACYNT3fRxwtatPufTNR4yCIGAUn5hS+vJHhWGY/ANx/A3tvdv+1tZmuwAAAABJRU5ErkJggg==\");\\n}\\n.bk-root .slick-group-select-checkbox.unchecked {\\n  background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACXSURBVChT1dIxC4MwEAXg/v8/VOhQVDBNakV0KA6pxS4JhWRSIYPEJxwdDi1de7wleR+3JIf486w0hKCKRpSvvOhZcCmvNQBRuKqdah03U7UjNNH81rOaBYDo8SQaPX8JANFEaLaGBeAPaaY61rGksiN6TmR5H1j9CSoAosYYHLA7vTxYMvVEZa0liif23r93xjm3/oEYF8PiDn/I2FHCAAAAAElFTkSuQmCC\");\\n}\\n.bk-root .slick-sort-indicator-desc {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgeAAUAGEgQgIAACBEKLHgwYcKFBh1KFNhQosOKEgMCADs=\");\\n}\\n.bk-root .slick-sort-indicator-asc {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgbAAMIDABgoEGDABIeRJhQ4cKGEA8KmEiRosGAADs=\");\\n}\\n.bk-root .slick-header-menubutton {\\n  background-image: url(\"data:image/gif;base64,R0lGODlhDgAOAIABADtKYwAAACH5BAEAAAEALAAAAAAOAA4AAAISjI+py+0PHZgUsGobhTn6DxoFADs=\");\\n}\\n.bk-root .slick-pager {\\n  background-image: none;\\n}\\n'},\n      480: function _(n,o,e){Object.defineProperty(e,\"__esModule\",{value:!0});e.default='\\n.bk-root .bk-data-table {\\n  box-sizing: content-box;\\n  font-size: 11px;\\n}\\n.bk-root .bk-data-table input[type=\"checkbox\"] {\\n  margin-left: 4px;\\n  margin-right: 4px;\\n}\\n.bk-root .bk-cell-special-defaults {\\n  border-right-color: silver;\\n  border-right-style: solid;\\n  background: #f5f5f5;\\n}\\n.bk-root .bk-cell-select {\\n  border-right-color: silver;\\n  border-right-style: solid;\\n  background: #f5f5f5;\\n}\\n.bk-root .slick-cell.bk-cell-index {\\n  border-right-color: silver;\\n  border-right-style: solid;\\n  background: #f5f5f5;\\n  text-align: right;\\n  background: #f0f0f0;\\n  color: #909090;\\n}\\n.bk-root .bk-header-index .slick-column-name {\\n  float: right;\\n}\\n.bk-root .slick-row.selected .bk-cell-index {\\n  background-color: transparent;\\n}\\n.bk-root .slick-row.odd {\\n  background: #f0f0f0;\\n}\\n.bk-root .slick-cell {\\n  padding-left: 4px;\\n  padding-right: 4px;\\n  border-right-color: transparent;\\n  border: 0.25px solid transparent;\\n}\\n.bk-root .slick-cell .bk {\\n  line-height: inherit;\\n}\\n.bk-root .slick-cell.active {\\n  border-style: dashed;\\n}\\n.bk-root .slick-cell.selected {\\n  background-color: #F0F8FF;\\n}\\n.bk-root .slick-cell.editable {\\n  padding-left: 0;\\n  padding-right: 0;\\n}\\n.bk-root .bk-cell-editor {\\n  display: contents;\\n}\\n.bk-root .bk-cell-editor input,\\n.bk-root .bk-cell-editor select {\\n  width: 100%;\\n  height: 100%;\\n  border: 0;\\n  margin: 0;\\n  padding: 0;\\n  outline: 0;\\n  background: transparent;\\n  vertical-align: baseline;\\n}\\n.bk-root .bk-cell-editor input {\\n  padding-left: 4px;\\n  padding-right: 4px;\\n}\\n.bk-root .bk-cell-editor-completion {\\n  font-size: 11px;\\n}\\n'},\n      481: function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const r=t(1),a=t(463),{Avg:i,Min:o,Max:g,Sum:n}=a.Data.Aggregators,u=r.__importStar(t(18)),c=t(81);class _ extends c.Model{constructor(t){super(t)}static init_RowAggregator(){this.define({field_:[u.String,\"\"]})}}s.RowAggregator=_,_.__name__=\"RowAggregator\",_.init_RowAggregator();const l=new i;class m extends _{constructor(){super(...arguments),this.key=\"avg\",this.init=l.init,this.accumulate=l.accumulate,this.storeResult=l.storeResult}}s.AvgAggregator=m,m.__name__=\"AvgAggregator\";const h=new o;class A extends _{constructor(){super(...arguments),this.key=\"min\",this.init=h.init,this.accumulate=h.accumulate,this.storeResult=h.storeResult}}s.MinAggregator=A,A.__name__=\"MinAggregator\";const R=new g;class d extends _{constructor(){super(...arguments),this.key=\"max\",this.init=R.init,this.accumulate=R.accumulate,this.storeResult=R.storeResult}}s.MaxAggregator=d,d.__name__=\"MaxAggregator\";const x=new n;class w extends _{constructor(){super(...arguments),this.key=\"sum\",this.init=x.init,this.accumulate=x.accumulate,this.storeResult=x.storeResult}}s.SumAggregator=w,w.__name__=\"SumAggregator\"},\n      482: function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=t(1).__importStar(t(18)),r=t(72),i=t(463),a=t(456),n=t(81);function l(t,e,s,o,i){const{collapsed:a,level:n,title:l}=i,u=r.span({class:\"slick-group-toggle \"+(a?\"collapsed\":\"expanded\"),style:{\"margin-left\":15*n+\"px\"}}),g=r.span({class:\"slick-group-title\",level:n},l);return`${u.outerHTML}${g.outerHTML}`}function u(t,e){const s=this.getDataItem(e.row);s instanceof i.Group&&t.target.classList.contains(\"slick-group-toggle\")&&(s.collapsed?this.getData().expandGroup(s.groupingKey):this.getData().collapseGroup(s.groupingKey),t.stopImmediatePropagation(),t.preventDefault(),this.invalidate(),this.render())}class g extends n.Model{constructor(t){super(t)}static init_GroupingInfo(){this.define({getter:[o.String,\"\"],aggregators:[o.Array,[]],collapsed:[o.Boolean,!1]})}get comparer(){return(t,e)=>t.value===e.value?0:t.value>e.value?1:-1}}s.GroupingInfo=g,g.__name__=\"GroupingInfo\",g.init_GroupingInfo();class c extends a.TableDataProvider{constructor(t,e,s,o){super(t,e),this.columns=s,this.groupingInfos=[],this.groupingDelimiter=\":|:\",this.target=o}setGrouping(t){this.groupingInfos=t,this.toggledGroupsByLevel=t.map(()=>({})),this.refresh()}extractGroups(t,e){const s=[],o=new Map,r=e?e.level+1:0,{comparer:a,getter:n}=this.groupingInfos[r];return t.forEach(t=>{const a=this.source.data[n][t];let l=o.get(a);if(!l){const t=e?`${e.groupingKey}${this.groupingDelimiter}${a}`:\"\"+a;l=Object.assign(new i.Group,{value:a,level:r,groupingKey:t}),s.push(l),o.set(a,l)}l.rows.push(t)}),r<this.groupingInfos.length-1&&s.forEach(t=>{t.groups=this.extractGroups(t.rows,t)}),s.sort(a),s}calculateTotals(t,e){const s={avg:{},max:{},min:{},sum:{}},{source:{data:o}}=this,r=Object.keys(o),i=t.rows.map(t=>r.reduce((e,s)=>Object.assign(Object.assign({},e),{[s]:o[s][t]}),{}));return e.forEach(t=>{t.init(),i.forEach(e=>t.accumulate(e)),t.storeResult(s)}),s}addTotals(t,e=0){const{aggregators:s,collapsed:o}=this.groupingInfos[e],r=this.toggledGroupsByLevel[e];t.forEach(t=>{t.groups&&this.addTotals(t.groups,e+1),s.length&&t.rows.length&&(t.totals=this.calculateTotals(t,s)),t.collapsed=o!==r[t.groupingKey],t.title=t.value?\"\"+t.value:\"\"})}flattenedGroupedRows(t,e=0){const s=[];return t.forEach(t=>{if(s.push(t),!t.collapsed){const o=t.groups?this.flattenedGroupedRows(t.groups,e+1):t.rows;s.push(...o)}}),s}refresh(){const t=this.extractGroups([...this.view.indices]),e=this.source.data[this.columns[0].field];t.length&&(this.addTotals(t),this.rows=this.flattenedGroupedRows(t),this.target.data={row_indices:this.rows.map(t=>t instanceof i.Group?t.rows:t),labels:this.rows.map(t=>t instanceof i.Group?t.title:e[t])})}getLength(){return this.rows.length}getItem(t){const e=this.rows[t],{source:{data:s}}=this;return e instanceof i.Group?e:Object.keys(s).reduce((t,o)=>Object.assign(Object.assign({},t),{[o]:s[o][e]}),{[a.DTINDEX_NAME]:e})}getItemMetadata(t){const e=this.rows[t],s=this.columns.slice(1),o=e instanceof i.Group?this.groupingInfos[e.level].aggregators:[];return e instanceof i.Group?{selectable:!1,focusable:!1,cssClasses:\"slick-group\",columns:[{formatter:l},...s.map((function(t){const{field:e,formatter:s}=t,r=o.find(({field_:t})=>t===e);if(r){const{key:t}=r;return{formatter:(o,r,i,a,n)=>s?s(o,r,n.totals[t][e],a,n):\"\"}}return{}}))]}:{}}collapseGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=!this.groupingInfos[e].collapsed,this.refresh()}expandGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=this.groupingInfos[e].collapsed,this.refresh()}}s.DataCubeProvider=c,c.__name__=\"DataCubeProvider\";class p extends a.DataTableView{render(){const t={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:!1,autosizeColsMode:this.autosize,multiColumnSort:!1,editable:this.model.editable,autoEdit:this.model.auto_edit,rowHeight:this.model.row_height},e=this.model.columns.map(t=>t.toColumn());var s,o;e[0].formatter=(s=e[0].formatter,o=this.model.grouping.length,(t,e,i,a,n)=>{const l=r.span({class:\"slick-group-toggle\",style:{\"margin-left\":15*(o||0)+\"px\"}}),u=s?s(t,e,i,a,n):\"\"+i;return`${l.outerHTML}${u&&u.replace(/^<div/,\"<span\").replace(/div>$/,\"span>\")}`}),delete e[0].editor,this.data=new c(this.model.source,this.model.view,e,this.model.target),this.data.setGrouping(this.model.grouping),this.el.style.width=this.model.width+\"px\",this.grid=new i.Grid(this.el,this.data,e,t),this.grid.onClick.subscribe(u)}}s.DataCubeView=p,p.__name__=\"DataCubeView\";class h extends a.DataTable{constructor(t){super(t)}static init_DataCube(){this.prototype.default_view=p,this.define({grouping:[o.Array,[]],target:[o.Instance]})}}s.DataCube=h,h.__name__=\"DataCube\",h.init_DataCube()},\n      }, 453, {\"models/widgets/tables/main\":453,\"models/widgets/tables/index\":454,\"models/widgets/tables/cell_editors\":455,\"models/widgets/tables/data_table\":456,\"models/widgets/widget\":472,\"models/widgets/tables/table_widget\":473,\"models/widgets/tables/table_column\":474,\"models/widgets/tables/cell_formatters\":475,\"styles/widgets/tables\":478,\"styles/widgets/slickgrid.css\":479,\"styles/widgets/tables.css\":480,\"models/widgets/tables/row_aggregators\":481,\"models/widgets/tables/data_cube\":482}, {});\n      })\n\n\n      /* END bokeh-tables.min.js */\n    },\n    \n    function(Bokeh) {\n      Bokeh.set_log_level(\"info\");\n    },\n    \n    function(Bokeh) {\n      /* BEGIN panel.min.js */\n      /*!\n       * Copyright (c) 2012 - 2020, Anaconda, Inc., and Bokeh Contributors\n       * All rights reserved.\n       * \n       * Redistribution and use in source and binary forms, with or without modification,\n       * are permitted provided that the following conditions are met:\n       * \n       * Redistributions of source code must retain the above copyright notice,\n       * this list of conditions and the following disclaimer.\n       * \n       * Redistributions in binary form must reproduce the above copyright notice,\n       * this list of conditions and the following disclaimer in the documentation\n       * and/or other materials provided with the distribution.\n       * \n       * Neither the name of Anaconda nor the names of any contributors\n       * may be used to endorse or promote products derived from this software\n       * without specific prior written permission.\n       * \n       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n       * THE POSSIBILITY OF SUCH DAMAGE.\n      */\n      (function(root, factory) {\n        factory(root[\"Bokeh\"], undefined);\n      })(this, function(Bokeh, version) {\n        var define;\n        return (function(modules, entry, aliases, externals) {\n          const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n          if (bokeh != null) {\n            return bokeh.register_plugin(modules, entry, aliases);\n          } else {\n            throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n          }\n        })\n      ({\n      \"4e90918c0a\": function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"22ae8fda70\"));o.Panel=s,e(\"@bokehjs/base\").register_models(s)},\n      \"22ae8fda70\": function _(a,e,r){Object.defineProperty(r,\"__esModule\",{value:!0});const o=a(\"tslib\");var t=a(\"3343056bd8\");r.AcePlot=t.AcePlot;var c=a(\"66d52165db\");r.Audio=c.Audio;var l=a(\"71a9759436\");r.CommManager=l.CommManager;var d=a(\"d0d2aafca0\");r.DeckGLPlot=d.DeckGLPlot;var v=a(\"ed08037ce5\");r.HTML=v.HTML;var b=a(\"284504a0cf\");r.JSON=b.JSON;var P=a(\"61c9ac7aac\");r.FileDownload=P.FileDownload;var f=a(\"7b859fb3cf\");r.KaTeX=f.KaTeX;var i=a(\"0c21036737\");r.MathJax=i.MathJax;var n=a(\"79c41bbf71\");r.Player=n.Player;var s=a(\"56da045fbd\");r.PlotlyPlot=s.PlotlyPlot;var M=a(\"76307e5afa\");r.Progress=M.Progress;var S=a(\"38b2bc9574\");r.State=S.State;var g=a(\"294adeb985\");r.VegaPlot=g.VegaPlot;var m=a(\"b0c3e9e9c2\");r.Video=m.Video;var V=a(\"3c7145a2fa\");r.VideoStream=V.VideoStream,o.__exportStar(a(\"ecfbb965eb\"),r)},\n      \"3343056bd8\": function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),n=e(\"@bokehjs/core/dom\"),a=e(\"7116a7a602\");class d extends a.PanelHTMLBoxView{initialize(){super.initialize(),this._ace=window.ace,this._container=n.div({id:\"_\"+Math.random().toString(36).substr(2,9),style:{width:\"100%\",height:\"100%\"}})}connect_signals(){super.connect_signals(),this.connect(this.model.properties.code.change,()=>this._update_code_from_model()),this.connect(this.model.properties.theme.change,()=>this._update_theme()),this.connect(this.model.properties.language.change,()=>this._update_language()),this.connect(this.model.properties.annotations.change,()=>this._add_annotations()),this.connect(this.model.properties.readonly.change,()=>{this._editor.setReadOnly(this.model.readonly)})}render(){super.render(),this._container!==this.el.childNodes[0]&&this.el.appendChild(this._container),this._container.textContent=this.model.code,this._editor=this._ace.edit(this._container.id),this._editor.setTheme(\"ace/theme/\"+this.model.theme),this._editor.session.setMode(\"ace/mode/\"+this.model.language),this._editor.setReadOnly(this.model.readonly),this._langTools=this._ace.require(\"ace/ext/language_tools\"),this._editor.setOptions({enableBasicAutocompletion:!0,enableSnippets:!0,fontFamily:\"monospace\"}),this._editor.on(\"change\",()=>this._update_code_from_editor())}_update_code_from_model(){this._editor&&this._editor.getValue()!=this.model.code&&this._editor.setValue(this.model.code)}_update_code_from_editor(){this._editor.getValue()!=this.model.code&&(this.model.code=this._editor.getValue())}_update_theme(){this._editor.setTheme(\"ace/theme/\"+this.model.theme)}_update_language(){this._editor.session.setMode(\"ace/mode/\"+this.model.language)}_add_annotations(){this._editor.session.setAnnotations(this.model.annotations)}after_layout(){super.after_layout(),this._editor.resize()}}o.AcePlotView=d,d.__name__=\"AcePlotView\";class h extends s.HTMLBox{constructor(e){super(e)}static init_AcePlot(){this.prototype.default_view=d,this.define({code:[i.String],language:[i.String,\"python\"],theme:[i.String,\"chrome\"],annotations:[i.Array,[]],readonly:[i.Boolean,!1]}),this.override({height:300,width:300})}}o.AcePlot=h,h.__name__=\"AcePlot\",h.__module__=\"panel.models.ace\",h.init_AcePlot()},\n      \"7116a7a602\": function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const s=e(\"@bokehjs/core/layout/html\"),h=e(\"@bokehjs/core/layout/types\"),o=e(\"@bokehjs/core/dom\"),n=e(\"@bokehjs/models/widgets/markup\"),_=e(\"@bokehjs/models/layouts/html_box\");function a(e,i){let t=null!=i.width?\"fixed\":\"fit\",s=null!=i.height?\"fixed\":\"fit\";const{sizing_mode:h}=i;if(null!=h)if(\"fixed\"==h)t=s=\"fixed\";else if(\"stretch_both\"==h)t=s=\"max\";else if(\"stretch_width\"==h)t=\"max\";else if(\"stretch_height\"==h)s=\"max\";else switch(h){case\"scale_width\":t=\"max\",s=\"min\";break;case\"scale_height\":t=\"min\",s=\"max\";break;case\"scale_both\":t=\"max\",s=\"max\";break;default:throw new Error(\"unreachable\")}\"fixed\"==t&&i.width?e.style.width=i.width+\"px\":\"max\"==t&&(e.style.width=\"100%\"),\"fixed\"==s&&i.height?e.style.height=i.height+\"px\":\"max\"==s&&(e.style.height=\"100%\")}t.set_size=a;class d extends s.VariadicBox{constructor(e,i,t){super(e),this.el=e,this.sizing_mode=i,this.changed=t,this._cache=new Map,this._cache_count=new Map}_measure(e){const i=[e.width,e.height,this.sizing_mode].toString(),t=this.changed&&\"fixed\"!=this.sizing_mode&&null!=this.sizing_mode?1:0,s=this._cache.get(i),n=this._cache_count.get(i);if(null!=s&&null!=n&&n>=t)return this._cache_count.set(i,n+1),s;const _=new h.Sizeable(e).bounded_to(this.sizing.size),a=o.sized(this.el,_,()=>{const e=new h.Sizeable(o.content_size(this.el)),{border:i,padding:t}=o.extents(this.el);return e.grow_by(i).grow_by(t).map(Math.ceil)});return this._cache.set(i,a),this._cache_count.set(i,0),a}invalidate_cache(){}}t.CachedVariadicBox=d,d.__name__=\"CachedVariadicBox\";class l extends n.MarkupView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new d(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),a(this.markup_el,this.model)}}t.PanelMarkupView=l,l.__name__=\"PanelMarkupView\";class c extends _.HTMLBoxView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new d(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),a(this.el,this.model)}}t.PanelHTMLBoxView=c,c.__name__=\"PanelHTMLBoxView\"},\n      \"66d52165db\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const o=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"7116a7a602\");class d extends l.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,()=>this.set_loop()),this.connect(this.model.properties.paused.change,()=>this.set_paused()),this.connect(this.model.properties.time.change,()=>this.set_time()),this.connect(this.model.properties.value.change,()=>this.set_value()),this.connect(this.model.properties.volume.change,()=>this.set_volume())}render(){super.render(),this.audioEl=document.createElement(\"audio\"),this.audioEl.controls=!0,this.audioEl.src=this.model.value,this.audioEl.currentTime=this.model.time,this.audioEl.loop=this.model.loop,null!=this.model.volume?this.audioEl.volume=this.model.volume/100:this.model.volume=100*this.audioEl.volume,this.audioEl.onpause=()=>this.model.paused=!0,this.audioEl.onplay=()=>this.model.paused=!1,this.audioEl.ontimeupdate=()=>this.update_time(this),this.audioEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.audioEl),this.model.paused||this.audioEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.audioEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.audioEl.volume)}set_loop(){this.audioEl.loop=this.model.loop}set_paused(){!this.audioEl.paused&&this.model.paused&&this.audioEl.pause(),this.audioEl.paused&&!this.model.paused&&this.audioEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.audioEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.audioEl.currentTime=this.model.time)}set_value(){this.audioEl.src=this.model.value}}i.AudioView=d,d.__name__=\"AudioView\";class u extends s.HTMLBox{constructor(e){super(e)}static init_Audio(){this.prototype.default_view=d,this.define({loop:[o.Boolean,!1],paused:[o.Boolean,!0],time:[o.Number,0],throttle:[o.Number,250],value:[o.Any,\"\"],volume:[o.Number,null]})}}i.Audio=u,u.__name__=\"Audio\",u.__module__=\"panel.models.widgets\",u.init_Audio()},\n      \"71a9759436\": function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const o=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),i=e(\"@bokehjs/document\"),s=e(\"@bokehjs/core/view\"),c=e(\"@bokehjs/model\"),_=e(\"@bokehjs/protocol/message\"),l=e(\"@bokehjs/protocol/receiver\");class r extends s.View{renderTo(){}}n.CommManagerView=r,r.__name__=\"CommManagerView\";class a extends c.Model{constructor(e){super(e),this._document_listener=e=>this._document_changed(e),this._receiver=new l.Receiver,this._event_buffer=[],this._blocked=!1,this._timeout=Date.now(),null!=window.PyViz&&window.PyViz.comm_manager?(this.ns=window.PyViz,this.ns.comm_manager.register_target(this.plot_id,this.comm_id,e=>this.msg_handler(e)),this._client_comm=this.ns.comm_manager.get_client_comm(this.plot_id,this.client_comm_id,e=>this.on_ack(e))):console.log(\"Could not find comm manager on window.PyViz, ensure the extension is loaded.\")}_doc_attached(){super._doc_attached(),null!=this.document&&this.document.on_change(this._document_listener)}_document_changed(e){e.setter_id!==this.id&&(e instanceof i.ModelChangedEvent&&!(e.attr in e.model.serializable_attributes())||(this._event_buffer.unshift(e),(!this._blocked||Date.now()>this._timeout)&&(setTimeout(()=>this.process_events(),this.debounce),this._blocked=!0,this._timeout=Date.now()+this.timeout)))}process_events(){if(null==this.document||null==this._client_comm)return;const e=_.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch(this._event_buffer));this._client_comm.send(e),this._event_buffer=[]}on_ack(e){const t=e.metadata;this._event_buffer.length?(this.process_events(),this._blocked=!0,this._timeout=Date.now()+this.timeout):this._blocked=!1,this._event_buffer=[],\"Ready\"==t.msg_type&&t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback)}msg_handler(e){const t=e.metadata,n=e.buffers,o=e.content.data,i=this.plot_id;if(\"Ready\"==t.msg_type)t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback);else if(null!=i){let e=null;if(i in this.ns.plot_index&&null!=this.ns.plot_index[i]?e=this.ns.plot_index[i]:void 0!==window.Bokeh&&i in window.Bokeh.index&&(e=window.Bokeh.index[i]),null==e)return;null!=n&&n.length>0?this._receiver.consume(n[0].buffer):this._receiver.consume(o);const t=this._receiver.message;null!=t&&Object.keys(t.content).length>0&&null!=this.document&&this.document.apply_json_patch(t.content,t.buffers,this.id)}}static init_CommManager(){this.prototype.default_view=r,this.define({plot_id:[o.String,null],comm_id:[o.String,null],client_comm_id:[o.String,null],timeout:[o.Number,5e3],debounce:[o.Number,50]})}}n.CommManager=a,a.__name__=\"CommManager\",a.__module__=\"panel.models.comm_manager\",a.init_CommManager()},\n      \"d0d2aafca0\": function _(e,t,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=e(\"tslib\"),n=e(\"@bokehjs/core/dom\"),a=i.__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),c=e(\"7116a7a602\"),r=e(\"064eac2866\"),d=i.__importDefault(e(\"093eb75864\"));function l(){const e={},t=window.deck,o=Object.keys(t).filter(e=>e.charAt(0)===e.charAt(0).toUpperCase());for(const i of o)e[i]=t[i];return e}class _ extends c.PanelHTMLBoxView{connect_signals(){super.connect_signals();const{data:e,mapbox_api_key:t,tooltip:o,layers:i,initialViewState:n,data_sources:a}=this.model.properties;this.on_change([t,o],()=>this.render()),this.on_change([e,n],()=>this.updateDeck()),this.on_change([i],()=>this._update_layers()),this.on_change([a],()=>this._connect_sources(!0)),this._layer_map={},this._connected=[],this._connect_sources()}_update_layers(){this._layer_map={},this._update_data(!0)}_connect_sources(e=!1){for(const e of this.model.data_sources)this._connected.indexOf(e)<0&&(this.connect(e.properties.data.change,()=>this._update_data(!0)),this._connected.push(e));this._update_data(e)}initialize(){if(super.initialize(),window.deck.JSONConverter){const{CSVLoader:e,Tile3DLoader:t}=window.loaders;window.loaders.registerLoaders([t,e]);const o={classes:l(),enumerations:{COORDINATE_SYSTEM:window.deck.COORDINATE_SYSTEM,GL:d.default},constants:{Tile3DLoader:t}};this.jsonConverter=new window.deck.JSONConverter({configuration:o})}}_update_data(e=!0){let t=0;for(const e of this.model.layers){let o;if(t+=1,t-1 in this._layer_map)o=this.model.data_sources[this._layer_map[t-1]];else{if(\"number\"!=typeof e.data)continue;this._layer_map[t-1]=e.data,o=this.model.data_sources[e.data]}const i=[],n=o.columns();for(let e=0;e<o.get_length();e++){const t={};for(const i of n){let n=o.get_array(i);const a=null==n[0].shape?null:n[0].shape;null!=a&&a.length>1&&\"number\"==typeof a[0]?t[i]=n.slice(e*a[1],e*a[1]+a[1]):t[i]=n[e]}i.push(t)}e.data=i}e&&this.updateDeck()}_on_click_event(e){const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.clickState=t}_on_hover_event(e){const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.hoverState=t}_on_viewState_event(e){this.model.viewState=e.viewState}getData(){return Object.assign(Object.assign({},this.model.data),{layers:this.model.layers,initialViewState:this.model.initialViewState,onViewStateChange:e=>this._on_viewState_event(e),onClick:e=>this._on_click_event(e),onHover:e=>this._on_hover_event(e)})}updateDeck(){if(!this.deckGL)return void this.render();const e=this.getData();if(window.deck.updateDeck)window.deck.updateDeck(e,this.deckGL);else{const t=this.jsonConverter.convert(e);this.deckGL.setProps(t)}}createDeck({mapboxApiKey:e,container:t,jsonInput:o,tooltip:i}){let n;try{const a=this.jsonConverter.convert(o),s=r.makeTooltip(i);n=new window.deck.DeckGL(Object.assign(Object.assign({},a),{map:window.mapboxgl,mapboxApiAccessToken:e,container:t,getTooltip:s}))}catch(e){console.error(e)}return n}render(){super.render();const e=n.div({class:\"deckgl\"});c.set_size(e,this.model);const t=this.model.mapbox_api_key,o=this.model.tooltip,i=this.getData();window.deck.createDeck?this.deckGL=window.deck.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}):this.deckGL=this.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}),this.el.appendChild(e)}}o.DeckGLPlotView=_,_.__name__=\"DeckGLPlotView\";class h extends s.HTMLBox{constructor(e){super(e)}static init_DeckGLPlot(){this.prototype.default_view=_,this.define({data:[a.Any],data_sources:[a.Array,[]],clickState:[a.Any],hoverState:[a.Any],initialViewState:[a.Any],layers:[a.Array,[]],mapbox_api_key:[a.String],tooltip:[a.Any],viewState:[a.Any]}),this.override({height:400,width:600})}}o.DeckGLPlot=h,h.__name__=\"DeckGLPlot\",h.__module__=\"panel.models.deckgl\",h.init_DeckGLPlot()},\n      \"064eac2866\": function _(e,t,n){\n      /*\n          This file was adapted from https://github.com/uber/deck.gl/ the LICENSE\n          below is preserved to comply with the original license.\n          \n          Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n          \n          Permission is hereby granted, free of charge, to any person obtaining a copy\n          of this software and associated documentation files (the \"Software\"), to deal\n          in the Software without restriction, including without limitation the rights\n          to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n          copies of the Software, and to permit persons to whom the Software is\n          furnished to do so, subject to the following conditions:\n          \n          The above copyright notice and this permission notice shall be included in\n          all copies or substantial portions of the Software.\n          \n          THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n          IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n          FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n          AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n          LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n          OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n          THE SOFTWARE.\n          */\n      let i,l;Object.defineProperty(n,\"__esModule\",{value:!0});const o={fontFamily:'\"Helvetica Neue\", Helvetica, Arial, sans-serif',display:\"flex\",flex:\"wrap\",maxWidth:\"500px\",flexDirection:\"column\",zIndex:2};function r(){return document.createElement(\"div\")}function s(e){if(!e.picked)return null;if(e.object===i)return l;const t={html:a(e.object),style:o};return l=t,i=e.object,t}n.getTooltipDefault=s;const c=new Set([\"position\",\"index\"]);function a(e){const t=r();for(const n in e){if(c.has(n))continue;const i=r();i.className=\"header\",i.textContent=n;const l=r();l.className=\"value\",l.textContent=u(e[n]);const o=r();f(o,i,l),o.appendChild(i),o.appendChild(l),t.appendChild(o)}return t.innerHTML}function f(e,t,n){Object.assign(t.style,{fontWeight:700,marginRight:\"10px\",flex:\"1 1 0%\"}),Object.assign(n.style,{flex:\"none\",maxWidth:\"250px\",overflow:\"hidden\",whiteSpace:\"nowrap\",textOverflow:\"ellipsis\"}),Object.assign(e.style,{display:\"flex\",flexDirection:\"row\",justifyContent:\"space-between\",alignItems:\"stretch\"})}function u(e){let t;if(Array.isArray(e)&&e.length>4)t=`Array<${e.length}>`;else if(\"string\"==typeof e)t=e;else if(\"number\"==typeof e)t=String(e);else try{t=JSON.stringify(e)}catch(e){t=\"<Non-Serializable Object>\"}return t.length>50&&(t=t.slice(0,50)),t}function p(e,t){let n=e;for(const e in t)n=n.replace(`{${e}}`,t[e]);return n}n.tabularize=a,n.toText=u,n.substituteIn=p,n.makeTooltip=function(e){return e?e.html||e.text?t=>{if(!t.picked)return null;const n={style:e.style||o};return e.html?n.html=p(e.html,t.object):n.text=p(e.text,t.object),n}:s:null}},\n      \"093eb75864\": function _(E,_,R){_.exports={DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,FUNC_ADD:32774,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,BLEND_COLOR:32773,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,VENDOR:7936,RENDERER:7937,VERSION:7938,IMPLEMENTATION_COLOR_READ_TYPE:35738,IMPLEMENTATION_COLOR_READ_FORMAT:35739,BROWSER_DEFAULT_WEBGL:37444,STATIC_DRAW:35044,STREAM_DRAW:35040,DYNAMIC_DRAW:35048,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,CULL_FACE:2884,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,BLEND:3042,DEPTH_TEST:2929,DITHER:3024,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,SCISSOR_TEST:3089,STENCIL_TEST:2960,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CONTEXT_LOST_WEBGL:37442,CW:2304,CCW:2305,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DOUBLE:5130,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,COMPILE_STATUS:35713,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_ATTRIBUTES:35721,ACTIVE_UNIFORMS:35718,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,ALWAYS:519,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,GEQUAL:518,NOTEQUAL:517,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,TEXTURE_WIDTH:4096,TEXTURE_HEIGHT:4097,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,READ_FRAMEBUFFER:36008,DRAW_FRAMEBUFFER:36009,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,READ_BUFFER:3074,UNPACK_ROW_LENGTH:3314,UNPACK_SKIP_ROWS:3315,UNPACK_SKIP_PIXELS:3316,PACK_ROW_LENGTH:3330,PACK_SKIP_ROWS:3331,PACK_SKIP_PIXELS:3332,TEXTURE_BINDING_3D:32874,UNPACK_SKIP_IMAGES:32877,UNPACK_IMAGE_HEIGHT:32878,MAX_3D_TEXTURE_SIZE:32883,MAX_ELEMENTS_VERTICES:33e3,MAX_ELEMENTS_INDICES:33001,MAX_TEXTURE_LOD_BIAS:34045,MAX_FRAGMENT_UNIFORM_COMPONENTS:35657,MAX_VERTEX_UNIFORM_COMPONENTS:35658,MAX_ARRAY_TEXTURE_LAYERS:35071,MIN_PROGRAM_TEXEL_OFFSET:35076,MAX_PROGRAM_TEXEL_OFFSET:35077,MAX_VARYING_COMPONENTS:35659,FRAGMENT_SHADER_DERIVATIVE_HINT:35723,RASTERIZER_DISCARD:35977,VERTEX_ARRAY_BINDING:34229,MAX_VERTEX_OUTPUT_COMPONENTS:37154,MAX_FRAGMENT_INPUT_COMPONENTS:37157,MAX_SERVER_WAIT_TIMEOUT:37137,MAX_ELEMENT_INDEX:36203,RED:6403,RGB8:32849,RGBA8:32856,RGB10_A2:32857,TEXTURE_3D:32879,TEXTURE_WRAP_R:32882,TEXTURE_MIN_LOD:33082,TEXTURE_MAX_LOD:33083,TEXTURE_BASE_LEVEL:33084,TEXTURE_MAX_LEVEL:33085,TEXTURE_COMPARE_MODE:34892,TEXTURE_COMPARE_FUNC:34893,SRGB:35904,SRGB8:35905,SRGB8_ALPHA8:35907,COMPARE_REF_TO_TEXTURE:34894,RGBA32F:34836,RGB32F:34837,RGBA16F:34842,RGB16F:34843,TEXTURE_2D_ARRAY:35866,TEXTURE_BINDING_2D_ARRAY:35869,R11F_G11F_B10F:35898,RGB9_E5:35901,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,RED_INTEGER:36244,RGB_INTEGER:36248,RGBA_INTEGER:36249,R8:33321,RG8:33323,R16F:33325,R32F:33326,RG16F:33327,RG32F:33328,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2UI:36975,TEXTURE_IMMUTABLE_FORMAT:37167,TEXTURE_IMMUTABLE_LEVELS:33503,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269,UNSIGNED_INT_24_8:34042,HALF_FLOAT:5131,RG:33319,RG_INTEGER:33320,INT_2_10_10_10_REV:36255,CURRENT_QUERY:34917,QUERY_RESULT:34918,QUERY_RESULT_AVAILABLE:34919,ANY_SAMPLES_PASSED:35887,ANY_SAMPLES_PASSED_CONSERVATIVE:36202,MAX_DRAW_BUFFERS:34852,DRAW_BUFFER0:34853,DRAW_BUFFER1:34854,DRAW_BUFFER2:34855,DRAW_BUFFER3:34856,DRAW_BUFFER4:34857,DRAW_BUFFER5:34858,DRAW_BUFFER6:34859,DRAW_BUFFER7:34860,DRAW_BUFFER8:34861,DRAW_BUFFER9:34862,DRAW_BUFFER10:34863,DRAW_BUFFER11:34864,DRAW_BUFFER12:34865,DRAW_BUFFER13:34866,DRAW_BUFFER14:34867,DRAW_BUFFER15:34868,MAX_COLOR_ATTACHMENTS:36063,COLOR_ATTACHMENT1:36065,COLOR_ATTACHMENT2:36066,COLOR_ATTACHMENT3:36067,COLOR_ATTACHMENT4:36068,COLOR_ATTACHMENT5:36069,COLOR_ATTACHMENT6:36070,COLOR_ATTACHMENT7:36071,COLOR_ATTACHMENT8:36072,COLOR_ATTACHMENT9:36073,COLOR_ATTACHMENT10:36074,COLOR_ATTACHMENT11:36075,COLOR_ATTACHMENT12:36076,COLOR_ATTACHMENT13:36077,COLOR_ATTACHMENT14:36078,COLOR_ATTACHMENT15:36079,SAMPLER_3D:35679,SAMPLER_2D_SHADOW:35682,SAMPLER_2D_ARRAY:36289,SAMPLER_2D_ARRAY_SHADOW:36292,SAMPLER_CUBE_SHADOW:36293,INT_SAMPLER_2D:36298,INT_SAMPLER_3D:36299,INT_SAMPLER_CUBE:36300,INT_SAMPLER_2D_ARRAY:36303,UNSIGNED_INT_SAMPLER_2D:36306,UNSIGNED_INT_SAMPLER_3D:36307,UNSIGNED_INT_SAMPLER_CUBE:36308,UNSIGNED_INT_SAMPLER_2D_ARRAY:36311,MAX_SAMPLES:36183,SAMPLER_BINDING:35097,PIXEL_PACK_BUFFER:35051,PIXEL_UNPACK_BUFFER:35052,PIXEL_PACK_BUFFER_BINDING:35053,PIXEL_UNPACK_BUFFER_BINDING:35055,COPY_READ_BUFFER:36662,COPY_WRITE_BUFFER:36663,COPY_READ_BUFFER_BINDING:36662,COPY_WRITE_BUFFER_BINDING:36663,FLOAT_MAT2x3:35685,FLOAT_MAT2x4:35686,FLOAT_MAT3x2:35687,FLOAT_MAT3x4:35688,FLOAT_MAT4x2:35689,FLOAT_MAT4x3:35690,UNSIGNED_INT_VEC2:36294,UNSIGNED_INT_VEC3:36295,UNSIGNED_INT_VEC4:36296,UNSIGNED_NORMALIZED:35863,SIGNED_NORMALIZED:36764,VERTEX_ATTRIB_ARRAY_INTEGER:35069,VERTEX_ATTRIB_ARRAY_DIVISOR:35070,TRANSFORM_FEEDBACK_BUFFER_MODE:35967,MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS:35968,TRANSFORM_FEEDBACK_VARYINGS:35971,TRANSFORM_FEEDBACK_BUFFER_START:35972,TRANSFORM_FEEDBACK_BUFFER_SIZE:35973,TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:35976,MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS:35978,MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS:35979,INTERLEAVED_ATTRIBS:35980,SEPARATE_ATTRIBS:35981,TRANSFORM_FEEDBACK_BUFFER:35982,TRANSFORM_FEEDBACK_BUFFER_BINDING:35983,TRANSFORM_FEEDBACK:36386,TRANSFORM_FEEDBACK_PAUSED:36387,TRANSFORM_FEEDBACK_ACTIVE:36388,TRANSFORM_FEEDBACK_BINDING:36389,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING:33296,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE:33297,FRAMEBUFFER_ATTACHMENT_RED_SIZE:33298,FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:33299,FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:33300,FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:33301,FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:33302,FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:33303,FRAMEBUFFER_DEFAULT:33304,DEPTH24_STENCIL8:35056,DRAW_FRAMEBUFFER_BINDING:36006,READ_FRAMEBUFFER_BINDING:36010,RENDERBUFFER_SAMPLES:36011,FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER:36052,FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:36182,UNIFORM_BUFFER:35345,UNIFORM_BUFFER_BINDING:35368,UNIFORM_BUFFER_START:35369,UNIFORM_BUFFER_SIZE:35370,MAX_VERTEX_UNIFORM_BLOCKS:35371,MAX_FRAGMENT_UNIFORM_BLOCKS:35373,MAX_COMBINED_UNIFORM_BLOCKS:35374,MAX_UNIFORM_BUFFER_BINDINGS:35375,MAX_UNIFORM_BLOCK_SIZE:35376,MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS:35377,MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS:35379,UNIFORM_BUFFER_OFFSET_ALIGNMENT:35380,ACTIVE_UNIFORM_BLOCKS:35382,UNIFORM_TYPE:35383,UNIFORM_SIZE:35384,UNIFORM_BLOCK_INDEX:35386,UNIFORM_OFFSET:35387,UNIFORM_ARRAY_STRIDE:35388,UNIFORM_MATRIX_STRIDE:35389,UNIFORM_IS_ROW_MAJOR:35390,UNIFORM_BLOCK_BINDING:35391,UNIFORM_BLOCK_DATA_SIZE:35392,UNIFORM_BLOCK_ACTIVE_UNIFORMS:35394,UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES:35395,UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER:35396,UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER:35398,OBJECT_TYPE:37138,SYNC_CONDITION:37139,SYNC_STATUS:37140,SYNC_FLAGS:37141,SYNC_FENCE:37142,SYNC_GPU_COMMANDS_COMPLETE:37143,UNSIGNALED:37144,SIGNALED:37145,ALREADY_SIGNALED:37146,TIMEOUT_EXPIRED:37147,CONDITION_SATISFIED:37148,WAIT_FAILED:37149,SYNC_FLUSH_COMMANDS_BIT:1,COLOR:6144,DEPTH:6145,STENCIL:6146,MIN:32775,MAX:32776,DEPTH_COMPONENT24:33190,STREAM_READ:35041,STREAM_COPY:35042,STATIC_READ:35045,STATIC_COPY:35046,DYNAMIC_READ:35049,DYNAMIC_COPY:35050,DEPTH_COMPONENT32F:36012,DEPTH32F_STENCIL8:36013,INVALID_INDEX:4294967295,TIMEOUT_IGNORED:-1,MAX_CLIENT_WAIT_TIMEOUT_WEBGL:37447,VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE:35070,UNMASKED_VENDOR_WEBGL:37445,UNMASKED_RENDERER_WEBGL:37446,MAX_TEXTURE_MAX_ANISOTROPY_EXT:34047,TEXTURE_MAX_ANISOTROPY_EXT:34046,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35986,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,UNSIGNED_INT_24_8_WEBGL:34042,HALF_FLOAT_OES:36193,RGBA32F_EXT:34836,RGB32F_EXT:34837,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863,MIN_EXT:32775,MAX_EXT:32776,SRGB_EXT:35904,SRGB_ALPHA_EXT:35906,SRGB8_ALPHA8_EXT:35907,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT:33296,FRAGMENT_SHADER_DERIVATIVE_HINT_OES:35723,COLOR_ATTACHMENT0_WEBGL:36064,COLOR_ATTACHMENT1_WEBGL:36065,COLOR_ATTACHMENT2_WEBGL:36066,COLOR_ATTACHMENT3_WEBGL:36067,COLOR_ATTACHMENT4_WEBGL:36068,COLOR_ATTACHMENT5_WEBGL:36069,COLOR_ATTACHMENT6_WEBGL:36070,COLOR_ATTACHMENT7_WEBGL:36071,COLOR_ATTACHMENT8_WEBGL:36072,COLOR_ATTACHMENT9_WEBGL:36073,COLOR_ATTACHMENT10_WEBGL:36074,COLOR_ATTACHMENT11_WEBGL:36075,COLOR_ATTACHMENT12_WEBGL:36076,COLOR_ATTACHMENT13_WEBGL:36077,COLOR_ATTACHMENT14_WEBGL:36078,COLOR_ATTACHMENT15_WEBGL:36079,DRAW_BUFFER0_WEBGL:34853,DRAW_BUFFER1_WEBGL:34854,DRAW_BUFFER2_WEBGL:34855,DRAW_BUFFER3_WEBGL:34856,DRAW_BUFFER4_WEBGL:34857,DRAW_BUFFER5_WEBGL:34858,DRAW_BUFFER6_WEBGL:34859,DRAW_BUFFER7_WEBGL:34860,DRAW_BUFFER8_WEBGL:34861,DRAW_BUFFER9_WEBGL:34862,DRAW_BUFFER10_WEBGL:34863,DRAW_BUFFER11_WEBGL:34864,DRAW_BUFFER12_WEBGL:34865,DRAW_BUFFER13_WEBGL:34866,DRAW_BUFFER14_WEBGL:34867,DRAW_BUFFER15_WEBGL:34868,MAX_COLOR_ATTACHMENTS_WEBGL:36063,MAX_DRAW_BUFFERS_WEBGL:34852,VERTEX_ARRAY_BINDING_OES:34229,QUERY_COUNTER_BITS_EXT:34916,CURRENT_QUERY_EXT:34917,QUERY_RESULT_EXT:34918,QUERY_RESULT_AVAILABLE_EXT:34919,TIME_ELAPSED_EXT:35007,TIMESTAMP_EXT:36392,GPU_DISJOINT_EXT:36795}},\n      \"ed08037ce5\": function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const n=e(\"@bokehjs/models/widgets/markup\"),a=e(\"7116a7a602\");function o(e){return(new DOMParser).parseFromString(e,\"text/html\").documentElement.textContent}r.htmlDecode=o;class s extends a.PanelMarkupView{render(){super.render();const e=o(this.model.text)||this.model.text;e?(this.markup_el.innerHTML=e,Array.from(this.markup_el.querySelectorAll(\"script\")).forEach(e=>{const t=document.createElement(\"script\");Array.from(e.attributes).forEach(e=>t.setAttribute(e.name,e.value)),t.appendChild(document.createTextNode(e.innerHTML)),e.parentNode&&e.parentNode.replaceChild(t,e)})):this.markup_el.innerHTML=\"\"}}r.HTMLView=s,s.__name__=\"HTMLView\";class i extends n.Markup{constructor(e){super(e)}static init_HTML(){this.prototype.default_view=s}}r.HTML=i,i.__name__=\"HTML\",i.__module__=\"panel.models.markup\",i.init_HTML()},\n      \"284504a0cf\": function _(e,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const s=e(\"tslib\"),n=s.__importStar(e(\"@bokehjs/core/properties\")),i=e(\"@bokehjs/models/widgets/markup\"),o=s.__importDefault(e(\"18bba7b7e1\")),d=e(\"7116a7a602\");class a extends d.PanelMarkupView{connect_signals(){super.connect_signals();const{depth:e,hover_preview:t,theme:r}=this.model.properties;this.on_change([e,t,r],()=>this.render())}render(){super.render();const e=this.model.text.replace(/(\\r\\n|\\n|\\r)/gm,\"\").replace(\"'\",'\"');let t;try{t=window.JSON.parse(e)}catch(e){return void(this.markup_el.innerHTML=\"<b>Invalid JSON:</b> \"+e.toString())}const r={hoverPreviewEnabled:this.model.hover_preview,theme:this.model.theme},s=null==this.model.depth?1/0:this.model.depth,n=new o.default(t,s,r).render();let i=\"border-radius: 5px; padding: 10px;\";\"dark\"==this.model.theme?n.style.cssText=\"background-color: rgb(30, 30, 30);\"+i:n.style.cssText=i,this.markup_el.append(n)}}r.JSONView=a,a.__name__=\"JSONView\";const l=[\"dark\",\"light\"];class p extends i.Markup{constructor(e){super(e)}static init_JSON(){this.prototype.default_view=a,this.define({depth:[n.Number,1],hover_preview:[n.Boolean,!1],theme:[n.Enum(l),\"dark\"]})}}r.JSON=p,p.__name__=\"JSON\",p.__module__=\"panel.models.markup\",p.init_JSON()},\n      \"18bba7b7e1\": function _(t,e,r){function n(t){return null===t?\"null\":typeof t}function o(t){return!!t&&\"object\"==typeof t}function i(t){if(void 0===t)return\"\";if(null===t)return\"Object\";if(\"object\"==typeof t&&!t.constructor)return\"Object\";var e=/function ([^(]*)/.exec(t.constructor.toString());return e&&e.length>1?e[1]:\"\"}function s(t,e,r){return\"null\"===t||\"undefined\"===t?t:(\"string\"!==t&&\"stringifiable\"!==t||(r='\"'+r.replace(/\"/g,'\\\\\"')+'\"'),\"function\"===t?e.toString().replace(/[\\r\\n]/g,\"\").replace(/\\{.*\\}/,\"\")+\"{…}\":r)}function a(t){var e=\"\";return o(t)?(e=i(t),Array.isArray(t)&&(e+=\"[\"+t.length+\"]\")):e=s(n(t),t,t),e}function f(t){return\"json-formatter-\"+t}function m(t,e,r){var n=document.createElement(t);return e&&n.classList.add(f(e)),void 0!==r&&(r instanceof Node?n.appendChild(r):n.appendChild(document.createTextNode(String(r)))),n}Object.defineProperty(r,\"__esModule\",{value:!0}),function(t){if(\"undefined\"!=typeof window){var e=document.createElement(\"style\");e.setAttribute(\"media\",\"screen\"),e.innerHTML=t,document.head.appendChild(e)}}('.json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n  color: black;\\n  text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \"No properties\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \"[]\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n  color: green;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n  color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n  color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n  color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n  color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n  background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: blue;\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n  color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n  color: #00008B;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \"►\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n  font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n  color: white;\\n  text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n  opacity: 0.5;\\n  margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n  content: \"No properties\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n  content: \"[]\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n  color: #31F031;\\n  white-space: pre;\\n  word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n  color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n  color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n  color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n  color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n  color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n  background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n  text-decoration: underline;\\n  color: #027BFF;\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n  color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n  color: #23A0DB;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n  cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n  line-height: 1.2rem;\\n  font-size: 0.7rem;\\n  vertical-align: middle;\\n  opacity: 0.6;\\n  cursor: pointer;\\n  padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n  display: inline-block;\\n  transition: transform 100ms ease-in;\\n  content: \"►\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n  opacity: 0;\\n  transition: opacity 0.15s ease-in;\\n  font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n  opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n  transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n  display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n  display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n  display: block;\\n}\\n');var l=/(^\\d{1,4}[\\.|\\\\/|-]\\d{1,2}[\\.|\\\\/|-]\\d{1,4})(\\s*(?:0?[1-9]:[0-5]|1(?=[012])\\d:[0-5])\\d\\s*[ap]m)?$/,d=/\\d{2}:\\d{2}:\\d{2} GMT-\\d{4}/,c=/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/,p=window.requestAnimationFrame||function(t){return t(),0},j={hoverPreviewEnabled:!1,hoverPreviewArrayCount:100,hoverPreviewFieldCount:5,animateOpen:!0,animateClose:!0,theme:null,useToJSON:!0,sortPropertiesBy:null},h=function(){function t(t,e,r,n){void 0===e&&(e=1),void 0===r&&(r=j),this.json=t,this.open=e,this.config=r,this.key=n,this._isOpen=null,void 0===this.config.hoverPreviewEnabled&&(this.config.hoverPreviewEnabled=j.hoverPreviewEnabled),void 0===this.config.hoverPreviewArrayCount&&(this.config.hoverPreviewArrayCount=j.hoverPreviewArrayCount),void 0===this.config.hoverPreviewFieldCount&&(this.config.hoverPreviewFieldCount=j.hoverPreviewFieldCount),void 0===this.config.useToJSON&&(this.config.useToJSON=j.useToJSON),\"\"===this.key&&(this.key='\"\"')}return Object.defineProperty(t.prototype,\"isOpen\",{get:function(){return null!==this._isOpen?this._isOpen:this.open>0},set:function(t){this._isOpen=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isDate\",{get:function(){return this.json instanceof Date||\"string\"===this.type&&(l.test(this.json)||c.test(this.json)||d.test(this.json))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isUrl\",{get:function(){return\"string\"===this.type&&0===this.json.indexOf(\"http\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isArray\",{get:function(){return Array.isArray(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isObject\",{get:function(){return o(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmptyObject\",{get:function(){return!this.keys.length&&!this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmpty\",{get:function(){return this.isEmptyObject||this.keys&&!this.keys.length&&this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"useToJSON\",{get:function(){return this.config.useToJSON&&\"stringifiable\"===this.type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"hasKey\",{get:function(){return void 0!==this.key},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constructorName\",{get:function(){return i(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"type\",{get:function(){return this.config.useToJSON&&this.json&&this.json.toJSON?\"stringifiable\":n(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"keys\",{get:function(){if(this.isObject){var t=Object.keys(this.json);return!this.isArray&&this.config.sortPropertiesBy?t.sort(this.config.sortPropertiesBy):t}return[]},enumerable:!0,configurable:!0}),t.prototype.toggleOpen=function(){this.isOpen=!this.isOpen,this.element&&(this.isOpen?this.appendChildren(this.config.animateOpen):this.removeChildren(this.config.animateClose),this.element.classList.toggle(f(\"open\")))},t.prototype.openAtDepth=function(t){void 0===t&&(t=1),t<0||(this.open=t,this.isOpen=0!==t,this.element&&(this.removeChildren(!1),0===t?this.element.classList.remove(f(\"open\")):(this.appendChildren(this.config.animateOpen),this.element.classList.add(f(\"open\")))))},t.prototype.getInlinepreview=function(){var t=this;if(this.isArray)return this.json.length>this.config.hoverPreviewArrayCount?\"Array[\"+this.json.length+\"]\":\"[\"+this.json.map(a).join(\", \")+\"]\";var e=this.keys,r=e.slice(0,this.config.hoverPreviewFieldCount).map((function(e){return e+\":\"+a(t.json[e])})),n=e.length>=this.config.hoverPreviewFieldCount?\"…\":\"\";return\"{\"+r.join(\", \")+n+\"}\"},t.prototype.render=function(){this.element=m(\"div\",\"row\");var t=this.isObject?m(\"a\",\"toggler-link\"):m(\"span\");if(this.isObject&&!this.useToJSON&&t.appendChild(m(\"span\",\"toggler\")),this.hasKey&&t.appendChild(m(\"span\",\"key\",this.key+\":\")),this.isObject&&!this.useToJSON){var e=m(\"span\",\"value\"),r=m(\"span\"),n=m(\"span\",\"constructor-name\",this.constructorName);if(r.appendChild(n),this.isArray){var o=m(\"span\");o.appendChild(m(\"span\",\"bracket\",\"[\")),o.appendChild(m(\"span\",\"number\",this.json.length)),o.appendChild(m(\"span\",\"bracket\",\"]\")),r.appendChild(o)}e.appendChild(r),t.appendChild(e)}else{(e=this.isUrl?m(\"a\"):m(\"span\")).classList.add(f(this.type)),this.isDate&&e.classList.add(f(\"date\")),this.isUrl&&(e.classList.add(f(\"url\")),e.setAttribute(\"href\",this.json));var i=s(this.type,this.json,this.useToJSON?this.json.toJSON():this.json);e.appendChild(document.createTextNode(i)),t.appendChild(e)}if(this.isObject&&this.config.hoverPreviewEnabled){var a=m(\"span\",\"preview-text\");a.appendChild(document.createTextNode(this.getInlinepreview())),t.appendChild(a)}var l=m(\"div\",\"children\");return this.isObject&&l.classList.add(f(\"object\")),this.isArray&&l.classList.add(f(\"array\")),this.isEmpty&&l.classList.add(f(\"empty\")),this.config&&this.config.theme&&this.element.classList.add(f(this.config.theme)),this.isOpen&&this.element.classList.add(f(\"open\")),this.element.appendChild(t),this.element.appendChild(l),this.isObject&&this.isOpen&&this.appendChildren(),this.isObject&&!this.useToJSON&&t.addEventListener(\"click\",this.toggleOpen.bind(this)),this.element},t.prototype.appendChildren=function(e){var r=this;void 0===e&&(e=!1);var n=this.element.querySelector(\"div.\"+f(\"children\"));if(n&&!this.isEmpty)if(e){var o=0,i=function(){var e=r.keys[o],s=new t(r.json[e],r.open-1,r.config,e);n.appendChild(s.render()),(o+=1)<r.keys.length&&(o>10?i():p(i))};p(i)}else this.keys.forEach((function(e){var o=new t(r.json[e],r.open-1,r.config,e);n.appendChild(o.render())}))},t.prototype.removeChildren=function(t){void 0===t&&(t=!1);var e=this.element.querySelector(\"div.\"+f(\"children\"));if(t){var r=0,n=function(){e&&e.children.length&&(e.removeChild(e.children[0]),(r+=1)>10?n():p(n))};p(n)}else e&&(e.innerHTML=\"\")},t}();r.default=h},\n      \"61c9ac7aac\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const l=e(\"tslib\"),s=e(\"@bokehjs/models/widgets/input_widget\"),o=e(\"@bokehjs/styles/buttons\"),n=l.__importStar(e(\"@bokehjs/core/properties\"));class a extends s.InputWidgetView{constructor(){super(...arguments),this._downloadable=!1,this._embed=!1,this._prev_href=\"\",this._prev_download=\"\"}initialize(){super.initialize(),this.model.data&&this.model.filename&&(this._embed=!0)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.button_type.change,()=>this._update_button_style()),this.connect(this.model.properties.filename.change,()=>this._update_download()),this.connect(this.model.properties._transfers.change,()=>this._handle_click()),this.connect(this.model.properties.label.change,()=>this._update_label())}render(){super.render(),this.group_el.style.display=\"flex\",this.group_el.style.alignItems=\"stretch\",this.anchor_el=document.createElement(\"a\"),this._update_button_style(),this._update_label(),this.model.disabled?(this.anchor_el.setAttribute(\"disabled\",\"\"),this._downloadable=!1):(this.anchor_el.removeAttribute(\"disabled\"),this._prev_download&&(this.anchor_el.download=this._prev_download),this._prev_href&&(this.anchor_el.href=this._prev_href),this.anchor_el.download&&this.anchor_el.download&&(this._downloadable=!0)),this._embed?this._make_link_downloadable():(this._click_listener=this._increment_clicks.bind(this),this.anchor_el.addEventListener(\"click\",this._click_listener)),this.group_el.appendChild(this.anchor_el)}_increment_clicks(){this.model.clicks=this.model.clicks+1}_handle_click(){!this.model.auto&&this._downloadable||(this._make_link_downloadable(),!this._embed&&this.model.auto&&(this.anchor_el.removeEventListener(\"click\",this._click_listener),this.anchor_el.click(),this.anchor_el.removeAttribute(\"href\"),this.anchor_el.removeAttribute(\"download\"),this.anchor_el.addEventListener(\"click\",this._click_listener)),this._prev_href=this.anchor_el.getAttribute(\"href\"),this._prev_download=this.anchor_el.getAttribute(\"download\"))}_make_link_downloadable(){this._update_href(),this._update_download(),this.anchor_el.download&&this.anchor_el.href&&(this._downloadable=!0)}_update_href(){if(this.model.data){const e=function(e){const t=atob(e.split(\",\")[1]),i=e.split(\",\")[0].split(\":\")[1].split(\";\")[0],l=new ArrayBuffer(t.length),s=new Uint8Array(l);for(let e=0;e<t.length;e++)s[e]=t.charCodeAt(e);return new Blob([l],{type:i})}(this.model.data);this.anchor_el.href=URL.createObjectURL(e)}}_update_download(){this.model.filename&&(this.anchor_el.download=this.model.filename)}_update_label(){this.anchor_el.textContent=this.model.label}_update_button_style(){if(this.anchor_el.hasAttribute(\"class\")){const e=this.anchor_el.classList.item(1);e&&this.anchor_el.classList.replace(e,o.bk_btn_type(this.model.button_type))}else this.anchor_el.classList.add(o.bk_btn),this.anchor_el.classList.add(o.bk_btn_type(this.model.button_type))}}i.FileDownloadView=a,a.__name__=\"FileDownloadView\";class h extends s.InputWidget{constructor(e){super(e)}static init_FileDownload(){this.prototype.default_view=a,this.define({auto:[n.Boolean,!1],clicks:[n.Number,0],data:[n.String,null],label:[n.String,\"Download\"],filename:[n.String,null],button_type:[n.ButtonType,\"default\"],_transfers:[n.Number,0]}),this.override({title:\"\"})}}i.FileDownload=h,h.__name__=\"FileDownload\",h.__module__=\"panel.models.widgets\",h.init_FileDownload()},\n      \"7b859fb3cf\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const a=e(\"@bokehjs/models/widgets/markup\"),n=e(\"7116a7a602\");class r extends n.PanelMarkupView{render(){super.render(),this.markup_el.innerHTML=this.model.text,window.renderMathInElement&&window.renderMathInElement(this.el,{delimiters:[{left:\"$$\",right:\"$$\",display:!0},{left:\"\\\\[\",right:\"\\\\]\",display:!0},{left:\"$\",right:\"$\",display:!1},{left:\"\\\\(\",right:\"\\\\)\",display:!1}]})}}i.KaTeXView=r,r.__name__=\"KaTeXView\";class s extends a.Markup{constructor(e){super(e)}static init_KaTeX(){this.prototype.default_view=r}}i.KaTeX=s,s.__name__=\"KaTeX\",s.__module__=\"panel.models.katex\",s.init_KaTeX()},\n      \"0c21036737\": function _(e,t,a){Object.defineProperty(a,\"__esModule\",{value:!0});const i=e(\"@bokehjs/models/widgets/markup\"),s=e(\"7116a7a602\");class _ extends s.PanelMarkupView{initialize(){super.initialize(),this._hub=window.MathJax.Hub,this._hub.Config({tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}})}render(){super.render(),this._hub&&(this.markup_el.innerHTML=this.model.text,this._hub.Queue([\"Typeset\",this._hub,this.markup_el]))}}a.MathJaxView=_,_.__name__=\"MathJaxView\";class h extends i.Markup{constructor(e){super(e)}static init_MathJax(){this.prototype.default_view=_}}a.MathJax=h,h.__name__=\"MathJax\",h.__module__=\"panel.models.mathjax\",h.init_MathJax()},\n      \"79c41bbf71\": function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/core/dom\"),l=e(\"@bokehjs/models/widgets/widget\");function n(e){e.forEach(e=>e.style.borderStyle=\"inset\")}function a(e){e.forEach(e=>e.style.borderStyle=\"outset\")}class r extends l.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,()=>this.render()),this.connect(this.model.properties.value.change,()=>this.render()),this.connect(this.model.properties.loop_policy.change,()=>this.set_loop_state(this.model.loop_policy)),this.connect(this.model.properties.show_loop_controls.change,()=>{this.model.show_loop_controls&&this.loop_state.parentNode!=this.groupEl?this.groupEl.appendChild(this.loop_state):this.model.show_loop_controls||this.loop_state.parentNode!=this.groupEl||this.el.removeChild(this.loop_state)})}get_height(){return 250}render(){if(null!=this.sliderEl)return this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),void(this.sliderEl.value=String(this.model.value));super.render(),this.groupEl=o.div(),this.groupEl.style.display=\"flex\",this.groupEl.style.flexDirection=\"column\",this.groupEl.style.alignItems=\"center\",this.sliderEl=document.createElement(\"input\"),this.sliderEl.style.width=\"100%\",this.sliderEl.setAttribute(\"type\",\"range\"),this.sliderEl.value=String(this.model.value),this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),this.sliderEl.onchange=e=>this.set_frame(parseInt(e.target.value));const e=o.div();e.style.cssText=\"margin: 0 auto; display: flex; padding: 5px; align-items: stretch; width: 100%;\";const t=\"text-align: center; min-width: 20px; flex-grow: 1; margin: 2px\",s=\"text-align: center; min-width: 40px; flex-grow: 2; margin: 2px\",i=document.createElement(\"button\");i.style.cssText=t,i.appendChild(document.createTextNode(\"–\")),i.onclick=()=>this.slower(),e.appendChild(i);const l=document.createElement(\"button\");l.style.cssText=s,l.appendChild(document.createTextNode(\"❚◀◀\")),l.onclick=()=>this.first_frame(),e.appendChild(l);const r=document.createElement(\"button\");r.style.cssText=s,r.appendChild(document.createTextNode(\"❚◀\")),r.onclick=()=>this.previous_frame(),e.appendChild(r);const d=document.createElement(\"button\");d.style.cssText=s,d.appendChild(document.createTextNode(\"◀\")),d.onclick=()=>this.reverse_animation(),e.appendChild(d);const h=document.createElement(\"button\");h.style.cssText=s,h.appendChild(document.createTextNode(\"❚❚\")),h.onclick=()=>this.pause_animation(),e.appendChild(h);const p=document.createElement(\"button\");p.style.cssText=s,p.appendChild(document.createTextNode(\"▶\")),p.onclick=()=>this.play_animation(),e.appendChild(p);const c=document.createElement(\"button\");c.style.cssText=s,c.appendChild(document.createTextNode(\"▶❚\")),c.onclick=()=>this.next_frame(),e.appendChild(c);const m=document.createElement(\"button\");m.style.cssText=s,m.appendChild(document.createTextNode(\"▶▶❚\")),m.onclick=()=>this.last_frame(),e.appendChild(m);const _=document.createElement(\"button\");_.style.cssText=t,_.appendChild(document.createTextNode(\"+\")),_.onclick=()=>this.faster(),e.appendChild(_),this._toggle_reverse=()=>{a([h,p]),n([d])},this._toogle_pause=()=>{a([d,p]),n([h])},this._toggle_play=()=>{a([d,h]),n([p])},this.loop_state=document.createElement(\"form\"),this.loop_state.style.cssText=\"margin: 0 auto; display: table\";const u=document.createElement(\"input\");u.type=\"radio\",u.value=\"once\",u.name=\"state\";const g=document.createElement(\"label\");g.innerHTML=\"Once\",g.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const f=document.createElement(\"input\");f.setAttribute(\"type\",\"radio\"),f.setAttribute(\"value\",\"loop\"),f.setAttribute(\"name\",\"state\");const v=document.createElement(\"label\");v.innerHTML=\"Loop\",v.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const y=document.createElement(\"input\");y.setAttribute(\"type\",\"radio\"),y.setAttribute(\"value\",\"reflect\"),y.setAttribute(\"name\",\"state\");const x=document.createElement(\"label\");x.innerHTML=\"Reflect\",x.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\",\"once\"==this.model.loop_policy?u.checked=!0:\"loop\"==this.model.loop_policy?f.checked=!0:y.checked=!0,this.loop_state.appendChild(u),this.loop_state.appendChild(g),this.loop_state.appendChild(f),this.loop_state.appendChild(v),this.loop_state.appendChild(y),this.loop_state.appendChild(x),this.groupEl.appendChild(this.sliderEl),this.groupEl.appendChild(e),this.model.show_loop_controls&&this.groupEl.appendChild(this.loop_state),this.el.appendChild(this.groupEl)}set_frame(e){this.model.value!=e&&(this.model.value=e),this.sliderEl.value!=String(e)&&(this.sliderEl.value=String(e))}get_loop_state(){for(var e=this.loop_state.state,t=0;t<e.length;t++){var s=e[t];if(s.checked)return s.value}return\"once\"}set_loop_state(e){for(var t=this.loop_state.state,s=0;s<t.length;s++){var i=t[s];i.value==e&&(i.checked=!0)}}next_frame(){this.set_frame(Math.min(this.model.end,this.model.value+this.model.step))}previous_frame(){this.set_frame(Math.max(this.model.start,this.model.value-this.model.step))}first_frame(){this.set_frame(this.model.start)}last_frame(){this.set_frame(this.model.end)}slower(){this.model.interval=Math.round(this.model.interval/.7),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}faster(){this.model.interval=Math.round(.7*this.model.interval),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}anim_step_forward(){if(this.model.value<this.model.end)this.next_frame();else{var e=this.get_loop_state();\"loop\"==e?this.first_frame():\"reflect\"==e?(this.last_frame(),this.reverse_animation()):(this.pause_animation(),this.last_frame())}}anim_step_reverse(){if(this.model.value>this.model.start)this.previous_frame();else{var e=this.get_loop_state();\"loop\"==e?this.last_frame():\"reflect\"==e?(this.first_frame(),this.play_animation()):(this.pause_animation(),this.first_frame())}}pause_animation(){this._toogle_pause(),this.model.direction=0,this.timer&&(clearInterval(this.timer),this.timer=null)}play_animation(){this.pause_animation(),this._toggle_play(),this.model.direction=1,this.timer||(this.timer=setInterval(()=>this.anim_step_forward(),this.model.interval))}reverse_animation(){this.pause_animation(),this._toggle_reverse(),this.model.direction=-1,this.timer||(this.timer=setInterval(()=>this.anim_step_reverse(),this.model.interval))}}s.PlayerView=r,r.__name__=\"PlayerView\";class d extends l.Widget{constructor(e){super(e)}static init_Player(){this.prototype.default_view=r,this.define({direction:[i.Number,0],interval:[i.Number,500],start:[i.Number],end:[i.Number],step:[i.Number,1],loop_policy:[i.Any,\"once\"],value:[i.Any,0],show_loop_controls:[i.Boolean,!0]}),this.override({width:400})}}s.Player=d,d.__name__=\"Player\",d.__module__=\"panel.models.widgets\",d.init_Player()},\n      \"56da045fbd\": function _(t,e,o){Object.defineProperty(o,\"__esModule\",{value:!0});const i=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),l=t(\"@bokehjs/core/util/object\"),r=t(\"@bokehjs/core/util/eq\"),s=t(\"@bokehjs/models/layouts/html_box\"),n=t(\"99a25e6992\"),a=t(\"990b5dd5c7\"),p=t(\"7116a7a602\"),h=(t,e,o)=>{let i=Array.isArray(e)?[]:{};if(\"click\"===o||\"hover\"===o||\"selected\"===o){const o=[];if(null==e)return null;const l=t.data;for(let t=0;t<e.points.length;t++){const i=e.points[t];let r={};for(let t in i){const e=i[t];!i.hasOwnProperty(t)||Array.isArray(e)||a.isPlainObject(e)||(r[t]=e)}null!=i&&(i.hasOwnProperty(\"curveNumber\")&&i.hasOwnProperty(\"pointNumber\")&&l[i.curveNumber].hasOwnProperty(\"customdata\")&&(r.customdata=l[i.curveNumber].customdata[i.pointNumber]),i.hasOwnProperty(\"pointNumbers\")&&(r.pointNumbers=i.pointNumbers)),o[t]=r}i.points=o}else if(\"relayout\"===o||\"restyle\"===o)for(let t in e)e.hasOwnProperty(t)&&(i[t]=e[t]);return e.hasOwnProperty(\"range\")&&(i.range=e.range),e.hasOwnProperty(\"lassoPoints\")&&(i.lassoPoints=e.lassoPoints),i};class _ extends p.PanelHTMLBoxView{constructor(){super(...arguments),this._settingViewport=!1,this._plotInitialized=!1,this._reacting=!1,this._relayouting=!1,this._end_relayouting=n.debounce(()=>{this._relayouting=!1},2e3,!1)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.viewport_update_policy.change,this._updateSetViewportFunction),this.connect(this.model.properties.viewport_update_throttle.change,this._updateSetViewportFunction),this.connect(this.model.properties._render_count.change,this.plot),this.connect(this.model.properties.viewport.change,this._updateViewportFromProperty)}render(){super.render(),window.Plotly&&this.plot()}plot(){if(!window.Plotly)return;const t=[];for(let e=0;e<this.model.data.length;e++)t.push(this._get_trace(e,!1));let e=a.deepCopy(this.model.layout);if(this._relayouting){const t=this.el.layout;Object.keys(t).reduce((t,o)=>{\"axis\"===o.slice(1,5)&&\"range\"in t&&(e[o].range=t.range)},{})}this._reacting=!0,window.Plotly.react(this.el,t,e,this.model.config).then(()=>{this._updateSetViewportFunction(),this._updateViewportProperty(),this._plotInitialized||(this.el.on(\"plotly_relayout\",t=>{!0!==t._update_from_property&&(this.model.relayout_data=h(this.el,t,\"relayout\"),this._updateViewportProperty(),this._end_relayouting())}),this.el.on(\"plotly_relayouting\",()=>{\"mouseup\"!==this.model.viewport_update_policy&&(this._relayouting=!0,this._updateViewportProperty())}),this.el.on(\"plotly_restyle\",t=>{this.model.restyle_data=h(this.el,t,\"restyle\"),this._updateViewportProperty()}),this.el.on(\"plotly_click\",t=>{this.model.click_data=h(this.el,t,\"click\")}),this.el.on(\"plotly_hover\",t=>{this.model.hover_data=h(this.el,t,\"hover\")}),this.el.on(\"plotly_selected\",t=>{this.model.selected_data=h(this.el,t,\"selected\")}),this.el.on(\"plotly_clickannotation\",t=>{delete t.event,delete t.fullAnnotation,this.model.clickannotation_data=t}),this.el.on(\"plotly_deselect\",()=>{this.model.selected_data=null}),this.el.on(\"plotly_unhover\",()=>{this.model.hover_data=null})),this._plotInitialized=!0,this._reacting=!1})}_get_trace(t,e){const o=l.clone(this.model.data[t]),i=this.model.data_sources[t];for(const t of i.columns()){let l=i.get_array(t)[0];if(null!=l.shape&&l.shape.length>1){const t=[],e=l.shape;for(let o=0;o<e[0];o++)t.push(l.slice(o*e[1],(o+1)*e[1]));l=t}let r=t.split(\".\"),s=r[r.length-1],n=o;for(let t of r.slice(0,-1))n=n[t];e&&1==r.length?n[s]=[l]:n[s]=l}return o}_updateViewportFromProperty(){if(!window.Plotly||this._settingViewport||this._reacting||!this.model.viewport)return;const t=this.el._fullLayout;Object.keys(this.model.viewport).reduce((e,o)=>{if(r.isEqual(a.get(t,o),e))return!0;{let t=a.deepCopy(this.model.viewport);return t._update_from_property=!0,window.Plotly.relayout(this.el,t),!1}},{})}_updateViewportProperty(){const t=this.el._fullLayout;let e={};for(let o in t){if(!t.hasOwnProperty(o))continue;let i=o.slice(0,5);\"xaxis\"!==i&&\"yaxis\"!==i||(e[o+\".range\"]=a.deepCopy(t[o].range))}r.isEqual(e,this.model.viewport)||this._setViewport(e)}_updateSetViewportFunction(){\"continuous\"===this.model.viewport_update_policy||\"mouseup\"===this.model.viewport_update_policy?this._setViewport=t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)}:this._setViewport=a.throttle(t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)},this.model.viewport_update_throttle)}}o.PlotlyPlotView=_,_.__name__=\"PlotlyPlotView\";class d extends s.HTMLBox{constructor(t){super(t)}static init_PlotlyPlot(){this.prototype.default_view=_,this.define({data:[i.Array,[]],layout:[i.Any,{}],config:[i.Any,{}],data_sources:[i.Array,[]],relayout_data:[i.Any,{}],restyle_data:[i.Array,[]],click_data:[i.Any,{}],hover_data:[i.Any,{}],clickannotation_data:[i.Any,{}],selected_data:[i.Any,{}],viewport:[i.Any,{}],viewport_update_policy:[i.String,\"mouseup\"],viewport_update_throttle:[i.Number,200],_render_count:[i.Number,0]})}}o.PlotlyPlot=d,d.__name__=\"PlotlyPlot\",d.__module__=\"panel.models.plotly\",d.init_PlotlyPlot()},\n      \"99a25e6992\": function _(n,l,u){function t(n,l,u){var t,e,o,a,r;function i(){var c=Date.now()-a;c<l&&c>=0?t=setTimeout(i,l-c):(t=null,u||(r=n.apply(o,e),o=e=null))}null==l&&(l=100);var c=function(){o=this,e=arguments,a=Date.now();var c=u&&!t;return t||(t=setTimeout(i,l)),c&&(r=n.apply(o,e),o=e=null),r};return c.clear=function(){t&&(clearTimeout(t),t=null)},c.flush=function(){t&&(r=n.apply(o,e),o=e=null,clearTimeout(t),t=null)},c}t.debounce=t,l.exports=t},\n      \"990b5dd5c7\": function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0}),n.get=(t,e,n)=>{const r=n=>String.prototype.split.call(e,n).filter(Boolean).reduce((t,e)=>null!=t?t[e]:t,t),o=r(/[,[\\]]+?/)||r(/[,[\\].]+?/);return void 0===o||o===t?n:o},n.throttle=function(t,e){var n=0;return function(){var r=Number(new Date);r-n>=e&&(t(),n=r)}},n.deepCopy=function t(e){var n;if(null==e||\"object\"!=typeof e)return e;if(e instanceof Array){n=[];for(var r=0,o=e.length;r<o;r++)n[r]=t(e[r]);return n}if(e instanceof Object){const n={};for(const r in e){const o=r;e.hasOwnProperty(o)&&(n[o]=t(e[o]))}return n}throw new Error(\"Unable to copy obj! Its type isn't supported.\")},n.isPlainObject=function(t){return\"[object Object]\"===Object.prototype.toString.call(t)}},\n      \"76307e5afa\": function _(e,s,t){Object.defineProperty(t,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/models/layouts/html_box\"),r=e(\"7116a7a602\");class l extends o.HTMLBoxView{connect_signals(){super.connect_signals();const e=()=>{this.render(),this.root.compute_layout()};this.connect(this.model.properties.height.change,e),this.connect(this.model.properties.width.change,e),this.connect(this.model.properties.height_policy.change,e),this.connect(this.model.properties.width_policy.change,e),this.connect(this.model.properties.sizing_mode.change,e),this.connect(this.model.properties.active.change,()=>this.setCSS()),this.connect(this.model.properties.bar_color.change,()=>this.setCSS()),this.connect(this.model.properties.css_classes.change,()=>this.setCSS()),this.connect(this.model.properties.value.change,()=>this.setValue()),this.connect(this.model.properties.max.change,()=>this.setMax())}render(){super.render();const e=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.progressEl=document.createElement(\"progress\"),this.setValue(),this.setMax(),r.set_size(this.progressEl,this.model),this.setCSS();for(const s in e)this.progressEl.style.setProperty(s,e[s]);this.el.appendChild(this.progressEl)}setCSS(){let e=this.model.css_classes.join(\" \")+\" \"+this.model.bar_color;this.model.active&&(e+=\" active\"),this.progressEl.className=e}setValue(){null!=this.model.value&&(this.progressEl.value=this.model.value)}setMax(){null!=this.model.max&&(this.progressEl.max=this.model.max)}_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new r.CachedVariadicBox(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}}t.ProgressView=l,l.__name__=\"ProgressView\";class h extends o.HTMLBox{constructor(e){super(e)}static init_Progress(){this.prototype.default_view=l,this.define({active:[i.Boolean,!0],bar_color:[i.String,\"primary\"],style:[i.Any,{}],max:[i.Number,100],value:[i.Number,null]})}}t.Progress=h,h.__name__=\"Progress\",h.__module__=\"panel.models.widgets\",h.init_Progress()},\n      \"38b2bc9574\": function _(e,t,s){Object.defineProperty(s,\"__esModule\",{value:!0});const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),a=e(\"@bokehjs/core/view\"),o=e(\"@bokehjs/core/util/array\"),c=e(\"@bokehjs/model\"),n=e(\"@bokehjs/protocol/receiver\");class r extends a.View{renderTo(){}}s.StateView=r,r.__name__=\"StateView\";class _ extends c.Model{constructor(e){super(e),this._receiver=new n.Receiver,this._cache={}}apply_state(e){this._receiver.consume(e.header),this._receiver.consume(e.metadata),this._receiver.consume(e.content),this._receiver.message&&this.document&&this.document.apply_json_patch(this._receiver.message.content)}_receive_json(e,t){const s=JSON.parse(e);this._cache[t]=s;let i=this.state;for(const e of this.values)i=i[e];i===t?this.apply_state(s):this._cache[i]&&this.apply_state(this._cache[i])}set_state(e,t){let s=o.copy(this.values);s[this.widgets[e.id]]=t;let i=this.state;for(const e of s)i=i[e];var a,c,n;this.values=s,this.json?this._cache[i]?this.apply_state(this._cache[i]):(a=i,c=e=>this._receive_json(e,i),(n=new XMLHttpRequest).overrideMimeType(\"application/json\"),n.open(\"GET\",a,!0),n.onreadystatechange=function(){4==n.readyState&&200==n.status&&c(n.responseText)},n.send(null)):this.apply_state(i)}static init_State(){this.prototype.default_view=r,this.define({json:[i.Boolean,!1],state:[i.Any,{}],widgets:[i.Any,{}],values:[i.Any,[]]})}}s.State=_,_.__name__=\"State\",_.__module__=\"panel.models.state\",_.init_State()},\n      \"294adeb985\": function _(t,e,s){Object.defineProperty(s,\"__esModule\",{value:!0});const o=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),a=t(\"@bokehjs/core/util/types\"),n=t(\"@bokehjs/models/layouts/html_box\");class c extends n.HTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,this._plot),this.connect(this.model.properties.data_sources.change,()=>this._connect_sources()),this._connected=[],this._connect_sources()}_connect_sources(){for(const t in this.model.data_sources){const e=this.model.data_sources[t];this._connected.indexOf(t)<0&&(this.connect(e.properties.data.change,this._plot),this._connected.push(t))}}_fetch_datasets(){const t={};for(const e in this.model.data_sources){const s=this.model.data_sources[e],o=[],a=s.columns();for(let t=0;t<s.get_length();t++){const e={};for(const o of a)e[o]=s.data[o][t];o.push(e)}t[e]=o}return t}render(){super.render(),this._plot()}_plot(){const t=this.model.data;if(null!=t&&window.vegaEmbed){if(this.model.data_sources&&Object.keys(this.model.data_sources).length>0){const e=this._fetch_datasets();if(\"data\"in e&&(t.data.values=e.data,delete e.data),null!=t.data){const s=a.isArray(t.data)?t.data:[t.data];for(const t of s)t.name in e&&(t.values=e[t.name],delete e[t.name])}this.model.data.datasets=e}window.vegaEmbed(this.el,this.model.data,{actions:!1})}}}s.VegaPlotView=c,c.__name__=\"VegaPlotView\";class i extends n.HTMLBox{constructor(t){super(t)}static init_VegaPlot(){this.prototype.default_view=c,this.define({data:[o.Any],data_sources:[o.Any]})}}s.VegaPlot=i,i.__name__=\"VegaPlot\",i.__module__=\"panel.models.vega\",i.init_VegaPlot()},\n      \"b0c3e9e9c2\": function _(e,i,t){Object.defineProperty(t,\"__esModule\",{value:!0});const o=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),s=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"7116a7a602\");class d extends l.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,()=>this.set_loop()),this.connect(this.model.properties.paused.change,()=>this.set_paused()),this.connect(this.model.properties.time.change,()=>this.set_time()),this.connect(this.model.properties.value.change,()=>this.set_value()),this.connect(this.model.properties.volume.change,()=>this.set_volume())}render(){super.render(),this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.videoEl.controls=!0,this.videoEl.src=this.model.value,this.videoEl.currentTime=this.model.time,this.videoEl.loop=this.model.loop,null!=this.model.volume?this.videoEl.volume=this.model.volume/100:this.model.volume=100*this.videoEl.volume,this.videoEl.onpause=()=>this.model.paused=!0,this.videoEl.onplay=()=>this.model.paused=!1,this.videoEl.ontimeupdate=()=>this.update_time(this),this.videoEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.videoEl),this.model.paused||this.videoEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.videoEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.videoEl.volume)}set_loop(){this.videoEl.loop=this.model.loop}set_paused(){!this.videoEl.paused&&this.model.paused&&this.videoEl.pause(),this.videoEl.paused&&!this.model.paused&&this.videoEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.videoEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.videoEl.currentTime=this.model.time)}set_value(){this.videoEl.src=this.model.value}}t.VideoView=d,d.__name__=\"VideoView\";class h extends s.HTMLBox{constructor(e){super(e)}static init_Video(){this.prototype.default_view=d,this.define({loop:[o.Boolean,!1],paused:[o.Boolean,!0],time:[o.Number,0],throttle:[o.Number,250],value:[o.Any,\"\"],volume:[o.Number,null]})}}t.Video=h,h.__name__=\"Video\",h.__module__=\"panel.models.widgets\",h.init_Video()},\n      \"3c7145a2fa\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/models/layouts/html_box\"),h=e(\"7116a7a602\");class a extends h.PanelHTMLBoxView{constructor(){super(...arguments),this.constraints={audio:!1,video:!0}}initialize(){super.initialize(),null!==this.model.timeout&&this.set_timeout()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.timeout.change,()=>this.set_timeout()),this.connect(this.model.properties.snapshot.change,()=>this.snapshot()),this.connect(this.model.properties.paused.change,()=>this.pause())}pause(){this.model.paused&&(null!=this.timer&&(clearInterval(this.timer),this.timer=null),this.videoEl.pause()),this.set_timeout()}set_timeout(){this.timer&&(clearInterval(this.timer),this.timer=null),this.model.timeout>0&&(this.timer=setInterval(()=>this.snapshot(),this.model.timeout))}snapshot(){this.canvasEl.width=this.videoEl.videoWidth,this.canvasEl.height=this.videoEl.videoHeight;const e=this.canvasEl.getContext(\"2d\");e&&e.drawImage(this.videoEl,0,0,this.canvasEl.width,this.canvasEl.height),this.model.value=this.canvasEl.toDataURL(\"image/\"+this.model.format,.95)}remove(){super.remove(),this.timer&&(clearInterval(this.timer),this.timer=null)}render(){super.render(),this.videoEl||(this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.canvasEl=document.createElement(\"canvas\"),this.el.appendChild(this.videoEl),navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia(this.constraints).then(e=>{this.videoEl.srcObject=e,this.model.paused||this.videoEl.play()}).catch(console.error))}}i.VideoStreamView=a,a.__name__=\"VideoStreamView\";class l extends o.HTMLBox{constructor(e){super(e)}static init_VideoStream(){this.prototype.default_view=a,this.define({format:[s.String,\"png\"],paused:[s.Boolean,!1],snapshot:[s.Boolean,!1],timeout:[s.Number,0],value:[s.Any]}),this.override({height:240,width:320})}}i.VideoStream=l,l.__name__=\"VideoStream\",l.__module__=\"panel.models.widgets\",l.init_VideoStream()},\n      \"ecfbb965eb\": function _(e,o,l){Object.defineProperty(l,\"__esModule\",{value:!0});var V=e(\"5b5e56e89a\");l.VTKPlot=V.VTKPlot;var t=e(\"729dd26c71\");l.VTKVolumePlot=t.VTKVolumePlot;var K=e(\"e23461e5d7\");l.VTKAxes=K.VTKAxes},\n      \"5b5e56e89a\": function _(e,t,n){Object.defineProperty(n,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),i=e(\"@bokehjs/core/dom\"),a=e(\"c704c63c0a\"),o=e(\"aaf560d219\");class r extends a.AbstractVTKView{constructor(){super(...arguments),this._axes_initialized=!1}connect_signals(){super.connect_signals(),this.connect(this.model.properties.axes.change,()=>{this._delete_axes(),this.model.axes&&this._set_axes(),this._vtk_renwin.getRenderWindow().render()}),this.el.addEventListener(\"mouseenter\",()=>{const e=this._vtk_renwin.getInteractor();this.model.enable_keybindings&&(document.querySelector(\"body\").addEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").addEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").addEventListener(\"keyup\",e.handleKeyUp))}),this.el.addEventListener(\"mouseleave\",()=>{const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)})}render(){super.render(),this._axes=null,this._axes_initialized=!1,this._plot()}after_layout(){this._axes_initialized||(this._render_axes_canvas(),this._axes_initialized=!0)}_render_axes_canvas(){const e=this._vtk_container.getElementsByTagName(\"canvas\");if(1!=e.length)throw Error(\"Error at initialization of the 3D scene, container should have one and only one canvas\");e[0].classList.add(\"scene3d-canvas\");const t=i.canvas({style:{position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"}});t.classList.add(\"axes-canvas\"),this._vtk_container.appendChild(t),this._vtk_renwin.setResizeCallback(()=>{const e=this._vtk_container.getBoundingClientRect(),n=Math.floor(e.width*window.devicePixelRatio),s=Math.floor(e.height*window.devicePixelRatio);t.setAttribute(\"width\",n.toFixed()),t.setAttribute(\"height\",s.toFixed())})}_delete_axes(){if(null==this._axes)return;Object.keys(this._axes).forEach(e=>this._vtk_renwin.getRenderer().removeActor(this._axes[e]));const e=this._vtk_renwin.getContainer().getElementsByClassName(\"axes-canvas\")[0],t=e.getContext(\"2d\");t&&t.clearRect(0,0,e.clientWidth*window.devicePixelRatio,e.clientHeight*window.devicePixelRatio),this._axes=null}_set_axes(){if(this.model.axes){const e=this._vtk_renwin.getContainer().getElementsByClassName(\"axes-canvas\")[0],{psActor:t,axesActor:n,gridActor:s}=this.model.axes.create_axes(e);this._axes={psActor:t,axesActor:n,gridActor:s},this._vtk_renwin.getRenderer().addActor(t),this._vtk_renwin.getRenderer().addActor(n),this._vtk_renwin.getRenderer().addActor(s)}}_plot(){if(!this.model.data)return void this._vtk_renwin.getRenderWindow().render();const e=o.vtkns.DataAccessHelper.get(\"zip\",{zipContent:atob(this.model.data),callback:t=>{const n=o.vtkns.HttpSceneLoader.newInstance({renderer:this._vtk_renwin.getRenderer(),dataAccessHelper:e}),s=o.vtk.macro.debounce(()=>{null==this._axes&&this.model.axes&&this._set_axes(),this.model.properties.camera.change.emit()},100);n.setUrl(\"index.json\"),n.onReady(s)}})}}n.VTKPlotView=r,r.__name__=\"VTKPlotView\";class d extends a.AbstractVTKPlot{constructor(e){super(e),this.outline=o.vtkns.OutlineFilter.newInstance();const t=o.vtkns.Mapper.newInstance();t.setInputConnection(this.outline.getOutputPort()),this.outline_actor=o.vtkns.Actor.newInstance(),this.outline_actor.setMapper(t)}static init_VTKPlot(){this.prototype.default_view=r,this.define({data:[s.String],axes:[s.Instance],enable_keybindings:[s.Boolean,!1]})}}n.VTKPlot=d,d.__name__=\"VTKPlot\",d.init_VTKPlot()},\n      \"c704c63c0a\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const n=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),r=e(\"@bokehjs/core/dom\"),s=e(\"@bokehjs/core/util/object\"),a=e(\"@bokehjs/models/layouts/html_box\"),o=e(\"7116a7a602\"),_=e(\"aaf560d219\");class d extends o.PanelHTMLBoxView{constructor(){super(...arguments),this._setting_camera=!1}connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,()=>{this.invalidate_render()}),this.connect(this.model.properties.orientation_widget.change,()=>{this._orientation_widget_visibility(this.model.orientation_widget)}),this.connect(this.model.properties.camera.change,()=>this._set_camera_state())}_orientation_widget_visibility(e){this._orientationWidget.setEnabled(e),e?this._widgetManager.enablePicking():this._widgetManager.disablePicking(),this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderWindow().render()}_create_orientation_widget(){const e=_.vtkns.AxesActor.newInstance(),t=_.vtkns.OrientationMarkerWidget.newInstance({actor:e,interactor:this._vtk_renwin.getInteractor()});t.setEnabled(!0),t.setViewportCorner(_.vtkns.OrientationMarkerWidget.Corners.BOTTOM_RIGHT),t.setViewportSize(.15),t.setMinPixelSize(100),t.setMaxPixelSize(300),this._orientationWidget=t;const i=_.vtkns.WidgetManager.newInstance();i.setRenderer(t.getRenderer());const n=_.vtkns.InteractiveOrientationWidget.newInstance();n.placeWidget(e.getBounds()),n.setBounds(e.getBounds()),n.setPlaceFactor(1);const r=i.addWidget(n);this._widgetManager=i,r.onOrientationChange(({direction:e})=>{const t=this._vtk_renwin.getRenderer().getActiveCamera(),i=t.getFocalPoint(),n=t.getPosition(),r=t.getViewUp(),s=Math.sqrt(Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2)+Math.pow(n[2]-i[2],2));t.setPosition(i[0]+e[0]*s,i[1]+e[1]*s,i[2]+e[2]*s),e[0]&&t.setViewUp(_.majorAxis(r,1,2)),e[1]&&t.setViewUp(_.majorAxis(r,0,2)),e[2]&&t.setViewUp(_.majorAxis(r,0,1)),this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_renwin.getRenderWindow().render()}),this._orientation_widget_visibility(this.model.orientation_widget)}_get_camera_state(){if(!this._setting_camera){this._setting_camera=!0;const e=s.clone(this._vtk_renwin.getRenderer().getActiveCamera().get());delete e.classHierarchy,delete e.vtkObject,delete e.vtkCamera,delete e.viewPlaneNormal,this.model.camera=e,this._setting_camera=!1}}_set_camera_state(){if(!this._setting_camera){this._setting_camera=!0;try{this.model.camera&&this._vtk_renwin.getRenderer().getActiveCamera().set(this.model.camera)}finally{this._setting_camera=!1}this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_renwin.getRenderWindow().render()}}render(){super.render(),this._orientationWidget=null,this._vtk_container=r.div(),o.set_size(this._vtk_container,this.model),this.el.appendChild(this._vtk_container),this._vtk_renwin=_.vtkns.FullScreenRenderWindow.newInstance({rootContainer:this.el,container:this._vtk_container}),this._remove_default_key_binding(),this._create_orientation_widget(),this._vtk_renwin.getRenderer().getActiveCamera().onModified(()=>this._get_camera_state()),this._set_camera_state(),this.model.renderer_el=this._vtk_renwin}after_layout(){super.after_layout(),this._vtk_renwin.resize()}_remove_default_key_binding(){const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)}}i.AbstractVTKView=d,d.__name__=\"AbstractVTKView\";class c extends a.HTMLBox{constructor(e){super(e)}getActors(){return this.renderer_el.getRenderer().getActors()}static init_AbstractVTKPlot(){this.define({orientation_widget:[n.Boolean,!1],camera:[n.Instance]}),this.override({height:300,width:300})}}i.AbstractVTKPlot=c,c.__name__=\"AbstractVTKPlot\",c.__module__=\"panel.models.vtk\",c.init_AbstractVTKPlot()},\n      \"aaf560d219\": function _(t,e,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"@bokehjs/core/util/array\");function a(t){const e=Math.min(Math.max(Math.round(t),0),255).toString(16);return 2==e.length?e:\"0\"+e}function o(t,e,n){return\"#\"+a(t)+a(e)+a(n)}function i(t){for(var e=new ArrayBuffer(t.length),n=new Uint8Array(e),r=0,a=t.length;r<a;r++)n[r]=t.charCodeAt(r);return e}n.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},n.vtk=window.vtk,n.vtkns={},n.vtk&&(n.vtkns.DataArray=n.vtk.Common.Core.vtkDataArray,n.vtkns.ImageData=n.vtk.Common.DataModel.vtkImageData,n.vtkns.OutlineFilter=n.vtk.Filters.General.vtkOutlineFilter,n.vtkns.CubeSource=n.vtk.Filters.Sources.vtkCubeSource,n.vtkns.LineSource=n.vtk.Filters.Sources.vtkLineSource,n.vtkns.PlaneSource=n.vtk.Filters.Sources.vtkPlaneSource,n.vtkns.PointSource=n.vtk.Filters.Sources.vtkPointSource,n.vtkns.OrientationMarkerWidget=n.vtk.Interaction.Widgets.vtkOrientationMarkerWidget,n.vtkns.DataAccessHelper=n.vtk.IO.Core.DataAccessHelper,n.vtkns.HttpSceneLoader=n.vtk.IO.Core.vtkHttpSceneLoader,n.vtkns.ImageSlice=n.vtk.Rendering.Core.vtkImageSlice,n.vtkns.Actor=n.vtk.Rendering.Core.vtkActor,n.vtkns.AxesActor=n.vtk.Rendering.Core.vtkAxesActor,n.vtkns.Mapper=n.vtk.Rendering.Core.vtkMapper,n.vtkns.ImageMapper=n.vtk.Rendering.Core.vtkImageMapper,n.vtkns.SphereMapper=n.vtk.Rendering.Core.vtkSphereMapper,n.vtkns.WidgetManager=n.vtk.Widgets.Core.vtkWidgetManager,n.vtkns.InteractiveOrientationWidget=n.vtk.Widgets.Widgets3D.vtkInteractiveOrientationWidget,n.vtkns.PixelSpaceCallbackMapper=n.vtk.Rendering.Core.vtkPixelSpaceCallbackMapper,n.vtkns.FullScreenRenderWindow=n.vtk.Rendering.Misc.vtkFullScreenRenderWindow,n.vtkns.VolumeController=n.vtk.Interaction.UI.vtkVolumeController,n.vtkns.Volume=n.vtk.Rendering.Core.vtkVolume,n.vtkns.VolumeMapper=n.vtk.Rendering.Core.vtkVolumeMapper,n.vtkns.ColorTransferFunction=n.vtk.Rendering.Core.vtkColorTransferFunction,n.vtkns.PiecewiseFunction=n.vtk.Common.DataModel.vtkPiecewiseFunction,n.vtkns.BoundingBox=n.vtk.Common.DataModel.vtkBoundingBox),n.hexToRGB=function(t){return[parseInt(t.slice(1,3),16)/255,parseInt(t.slice(3,5),16)/255,parseInt(t.slice(5,7),16)/255]},n.rgbToHex=o,n.vtkLutToMapper=function(t){const{scale:e,nodes:a}=t.get(\"scale\",\"nodes\");if(e!==n.vtkns.ColorTransferFunction.Scale.LINEAR)throw\"Error transfer function scale not handle\";const i=a.map(t=>t.x),s=Math.min(...i),k=Math.max(...i),v=r.linspace(s,k,255),c=[0,0,0];return{low:s,high:k,palette:v.map(e=>(t.getColor(e,c),o(255*c[0],255*c[1],255*c[2])))}},n.data2VTKImageData=function(t){const e=n.vtkns.ImageData.newInstance({spacing:t.spacing});e.setDimensions(t.dims),e.setOrigin(null!=t.origin?t.origin:t.dims.map(t=>t/2));const r=n.vtkns.DataArray.newInstance({name:\"scalars\",numberOfComponents:1,values:new n.ARRAY_TYPES[t.dtype](i(atob(t.buffer)))});return e.getPointData().setScalars(r),e},n.majorAxis=function(t,e,n){const r=[0,0,0],a=Math.abs(t[e])>Math.abs(t[n])?e:n,o=t[a]>0?1:-1;return r[a]=o,r},n.cartesian_product=function(...t){return t.reduce((t,e)=>t.flatMap(t=>e.map(e=>[].concat(t,e))))}},\n      \"729dd26c71\": function _(e,t,i){Object.defineProperty(i,\"__esModule\",{value:!0});const s=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),r=e(\"c704c63c0a\"),n=e(\"aaf560d219\");class o extends r.AbstractVTKView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.colormap.change,()=>{this.colormap_slector.value=this.model.colormap;const e=new Event(\"change\");this.colormap_slector.dispatchEvent(e)}),this.connect(this.model.properties.shadow.change,()=>{this.shadow_selector.value=this.model.shadow?\"1\":\"0\";const e=new Event(\"change\");this.shadow_selector.dispatchEvent(e)}),this.connect(this.model.properties.sampling.change,()=>{this.sampling_slider.value=this.model.sampling.toFixed(2);const e=new Event(\"input\");this.sampling_slider.dispatchEvent(e)}),this.connect(this.model.properties.edge_gradient.change,()=>{this.edge_gradient_slider.value=this.model.edge_gradient.toFixed(2);const e=new Event(\"input\");this.edge_gradient_slider.dispatchEvent(e)}),this.connect(this.model.properties.rescale.change,()=>{this._controllerWidget.setRescaleColorMap(this.model.rescale),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.ambient.change,()=>{this.volume.getProperty().setAmbient(this.model.ambient),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.diffuse.change,()=>{this.volume.getProperty().setDiffuse(this.model.diffuse),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.specular.change,()=>{this.volume.getProperty().setSpecular(this.model.specular),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.specular_power.change,()=>{this.volume.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.display_volume.change,()=>{this._set_volume_visibility(this.model.display_volume),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.display_slices.change,()=>{this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.slice_i.change,()=>{this.image_actor_i.getMapper().setISlice(this.model.slice_i),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.slice_j.change,()=>{this.image_actor_j.getMapper().setJSlice(this.model.slice_j),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.slice_k.change,()=>{this.image_actor_k.getMapper().setKSlice(this.model.slice_k),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.render_background.change,()=>{this._vtk_renwin.getRenderer().setBackground(...n.hexToRGB(this.model.render_background)),this._vtk_renwin.getRenderWindow().render()}),this.connect(this.model.properties.interpolation.change,()=>{this._set_interpolation(this.model.interpolation),this._vtk_renwin.getRenderWindow().render()})}get volume(){return this._controllerWidget.getActor()}get image_actor_i(){return this._vtk_renwin.getRenderer().getActors()[0]}get image_actor_j(){return this._vtk_renwin.getRenderer().getActors()[1]}get image_actor_k(){return this._vtk_renwin.getRenderer().getActors()[2]}get shadow_selector(){return this.el.querySelector(\".js-shadow\")}get edge_gradient_slider(){return this.el.querySelector(\".js-edge\")}get sampling_slider(){return this.el.querySelector(\".js-spacing\")}get colormap_slector(){return this.el.querySelector(\".js-color-preset\")}_set_interpolation(e){\"fast_linear\"==e?(this.volume.getProperty().setInterpolationTypeToFastLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):\"linear\"==e?(this.volume.getProperty().setInterpolationTypeToLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):(this.volume.getProperty().setInterpolationTypeToNearest(),this.image_actor_i.getProperty().setInterpolationTypeToNearest())}render(){super.render(),this._controllerWidget=n.vtkns.VolumeController.newInstance({size:[400,150],rescaleColorMap:this.model.rescale}),this._vtk_image_data=n.data2VTKImageData(this.model.data),this._controllerWidget.setContainer(this.el),this._vtk_renwin.getRenderWindow().getInteractor(),this._vtk_renwin.getRenderWindow().getInteractor().setDesiredUpdateRate(45),this._plot_volume(),this._connect_controls(),this._plot_slices(),this._set_volume_visibility(this.model.display_volume),this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderer().setBackground(...n.hexToRGB(this.model.render_background)),this._set_interpolation(this.model.interpolation),this._vtk_renwin.getRenderer().resetCamera()}_connect_controls(){this.colormap_slector.addEventListener(\"change\",()=>{this.model.colormap=this.colormap_slector.value}),this.model.colormap?this.model.properties.colormap.change.emit():this.model.colormap=this.colormap_slector.value,this.shadow_selector.addEventListener(\"change\",()=>{this.model.shadow=!!Number(this.shadow_selector.value)}),(this.model.shadow=!!Number(this.shadow_selector.value))&&this.model.properties.shadow.change.emit(),this.sampling_slider.addEventListener(\"input\",()=>{const e=Number(this.sampling_slider.value);Math.abs(this.model.sampling-e)>=.005&&(this.model.sampling=e)}),Math.abs(this.model.sampling-Number(this.shadow_selector.value))>=.005&&this.model.properties.sampling.change.emit(),this.edge_gradient_slider.addEventListener(\"input\",()=>{const e=Number(this.edge_gradient_slider.value);Math.abs(this.model.edge_gradient-e)>=.005&&(this.model.edge_gradient=e)}),Math.abs(this.model.edge_gradient-Number(this.edge_gradient_slider.value))>=.005&&this.model.properties.edge_gradient.change.emit()}_plot_volume(){const e=this._vtk_image_data,t=n.vtkns.Volume.newInstance(),i=n.vtkns.VolumeMapper.newInstance();t.setMapper(i),i.setInputData(e);const s=(e.getPointData().getScalars()||e.getPointData().getArrays()[0]).getRange(),r=n.vtkns.ColorTransferFunction.newInstance();r.onModified(()=>this.model.mapper=n.vtkLutToMapper(r));const o=n.vtkns.PiecewiseFunction.newInstance(),a=.7*Math.sqrt(e.getSpacing().map(e=>e*e).reduce((e,t)=>e+t,0));i.setSampleDistance(a),t.getProperty().setRGBTransferFunction(0,r),t.getProperty().setScalarOpacity(0,o),t.getProperty().setInterpolationTypeToFastLinear(),t.getProperty().setScalarOpacityUnitDistance(0,n.vtkns.BoundingBox.getDiagonalLength(e.getBounds())/Math.max(...e.getDimensions())),t.getProperty().setGradientOpacityMinimumValue(0,0),t.getProperty().setGradientOpacityMaximumValue(0,.05*(s[1]-s[0])),t.getProperty().setShade(this.model.shadow),t.getProperty().setUseGradientOpacity(0,!0),t.getProperty().setGradientOpacityMinimumOpacity(0,0),t.getProperty().setGradientOpacityMaximumOpacity(0,1),t.getProperty().setAmbient(this.model.ambient),t.getProperty().setDiffuse(this.model.diffuse),t.getProperty().setSpecular(this.model.specular),t.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderer().addVolume(t),this._controllerWidget.setupContent(this._vtk_renwin.getRenderWindow(),t,!0)}_plot_slices(){const e=this._vtk_image_data,t=n.vtkns.ImageSlice.newInstance(),i=n.vtkns.ImageSlice.newInstance(),s=n.vtkns.ImageSlice.newInstance(),r=n.vtkns.ImageMapper.newInstance(),o=n.vtkns.ImageMapper.newInstance(),a=n.vtkns.ImageMapper.newInstance();r.setInputData(e),r.setISlice(this.model.slice_i),t.setMapper(r),o.setInputData(e),o.setJSlice(this.model.slice_j),i.setMapper(o),a.setInputData(e),a.setKSlice(this.model.slice_k),s.setMapper(a);const l=n.vtkns.PiecewiseFunction.newInstance();l.removeAllPoints(),l.addPoint(0,1);const c=this.volume.getProperty().getRGBTransferFunction(0),d=t.getProperty();i.setProperty(d),s.setProperty(d),d.setRGBTransferFunction(c),d.setScalarOpacity(l);const h=this._vtk_renwin.getRenderer();h.addActor(t),h.addActor(i),h.addActor(s)}_set_volume_visibility(e){this.volume.setVisibility(e)}_set_slices_visibility(e){this._vtk_renwin.getRenderer().getActors().map(t=>t.setVisibility(e))}}i.VTKVolumePlotView=o,o.__name__=\"VTKVolumePlotView\";class a extends r.AbstractVTKPlot{constructor(e){super(e)}static init_VTKVolumePlot(){this.prototype.default_view=o,this.define({data:[s.Instance],shadow:[s.Boolean,!0],sampling:[s.Number,.4],edge_gradient:[s.Number,.2],colormap:[s.String],rescale:[s.Boolean,!1],ambient:[s.Number,.2],diffuse:[s.Number,.7],specular:[s.Number,.3],specular_power:[s.Number,8],slice_i:[s.Int,0],slice_j:[s.Int,0],slice_k:[s.Int,0],display_volume:[s.Boolean,!0],display_slices:[s.Boolean,!1],render_background:[s.String,\"#52576e\"],interpolation:[s.Any,\"fast_linear\"],mapper:[s.Instance]})}}i.VTKVolumePlot=a,a.__name__=\"VTKVolumePlot\",a.init_VTKVolumePlot()},\n      \"e23461e5d7\": function _(t,s,i){Object.defineProperty(i,\"__esModule\",{value:!0});const e=t(\"tslib\"),n=t(\"2f3fd5db07\"),a=t(\"@bokehjs/model\"),c=e.__importStar(t(\"@bokehjs/core/properties\")),r=t(\"aaf560d219\");class h extends a.Model{constructor(t){super(t)}static init_VTKAxes(){this.define({origin:[c.Array],xticker:[c.Instance],yticker:[c.Instance],zticker:[c.Instance],digits:[c.Number,1],show_grid:[c.Boolean,!0],grid_opacity:[c.Number,.1],axes_opacity:[c.Number,1],fontsize:[c.Number,12]})}get xticks(){return this.xticker.ticks}get yticks(){return this.yticker.ticks}get zticks(){return this.zticker.ticks}get xlabels(){return this.xticker.labels?this.xticker.labels:this.xticks.map(t=>t.toFixed(this.digits))}get ylabels(){return this.yticker.labels?this.yticker.labels:this.yticks.map(t=>t.toFixed(this.digits))}get zlabels(){return this.zticker.labels?this.zticker.labels:this.zticks.map(t=>t.toFixed(this.digits))}_make_grid_lines(t,s,i){const e=[];for(let n=0;n<t-1;n++)for(let t=0;t<s-1;t++){const a=n*s+t+i,c=[5,a,n*s+t+1+i,(n+1)*s+t+1+i,(n+1)*s+t+i,a];e.push(c)}return e}_create_grid_axes(){const t=[];t.push(r.cartesian_product(this.xticks,this.yticks,[this.origin[2]])),t.push(r.cartesian_product([this.origin[0]],this.yticks,this.zticks)),t.push(r.cartesian_product(this.xticks,[this.origin[1]],this.zticks));const s=[];let i=0;s.push(this._make_grid_lines(this.xticks.length,this.yticks.length,i)),i+=this.xticks.length*this.yticks.length,s.push(this._make_grid_lines(this.yticks.length,this.zticks.length,i)),i+=this.yticks.length*this.zticks.length,s.push(this._make_grid_lines(this.xticks.length,this.zticks.length,i));const e=r.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:t.flat(2)},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:s.flat(2)}}),n=r.vtkns.Mapper.newInstance(),a=r.vtkns.Actor.newInstance();return n.setInputData(e),a.setMapper(n),a.getProperty().setOpacity(this.grid_opacity),a.setVisibility(this.show_grid),a}create_axes(t){const s=[this.xticks,this.yticks,this.zticks].map((t,s)=>{let i=null;switch(s){case 0:i=r.cartesian_product(t,[this.origin[1]],[this.origin[2]]);break;case 1:i=r.cartesian_product([this.origin[0]],t,[this.origin[2]]);break;case 2:i=r.cartesian_product([this.origin[0]],[this.origin[1]],t)}return i}).flat(2),i=r.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:s},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:[2,0,this.xticks.length-1,2,this.xticks.length,this.xticks.length+this.yticks.length-1,2,this.xticks.length+this.yticks.length,this.xticks.length+this.yticks.length+this.zticks.length-1]}}),e=r.vtkns.PixelSpaceCallbackMapper.newInstance();e.setInputData(i),e.setUseZValues(!0),e.setCallback((s,i,a)=>{const c=t.getContext(\"2d\");if(c){const r={height:t.clientHeight*window.devicePixelRatio,width:t.clientWidth*window.devicePixelRatio},h=e.getInputData().getPoints(),l=i.getViewMatrix();n.mat4.transpose(l,l);const o=i.getProjectionMatrix(a,-1,1);n.mat4.transpose(o,o),c.clearRect(0,0,r.width,r.height),s.forEach((t,s)=>{const i=h.getPoint(s),e=n.vec3.fromValues(i[0],i[1],i[2]);if(n.vec3.transformMat4(e,e,l),e[2]+=.05,n.vec3.transformMat4(e,e,o),e[2]-.001<t[3]){let i;c.font=\"30px serif\",c.textAlign=\"center\",c.textBaseline=\"alphabetic\",c.fillText(\".\",t[0],r.height-t[1]+2),c.font=this.fontsize*window.devicePixelRatio+\"px serif\",c.textAlign=\"right\",c.textBaseline=\"top\",i=s<this.xticks.length?this.xlabels[s]:s>=this.xticks.length&&s<this.xticks.length+this.yticks.length?this.ylabels[s-this.xticks.length]:this.zlabels[s-(this.xticks.length+this.yticks.length)],c.fillText(\"\"+i,t[0],r.height-t[1])}})}});const a=r.vtkns.Actor.newInstance();a.setMapper(e);const c=r.vtkns.Mapper.newInstance();c.setInputData(i);const h=r.vtkns.Actor.newInstance();return h.setMapper(c),h.getProperty().setOpacity(this.axes_opacity),{psActor:a,axesActor:h,gridActor:this._create_grid_axes()}}}i.VTKAxes=h,h.__name__=\"VTKAxes\",h.__module__=\"panel.models.vtk\",h.init_VTKAxes()},\n      \"2f3fd5db07\": function _(t,c,a){Object.defineProperty(a,\"__esModule\",{value:!0});const o=t(\"tslib\"),r=o.__importStar(t(\"68ca94c15c\"));a.glMatrix=r;const _=o.__importStar(t(\"7c0b8e6048\"));a.mat2=_;const e=o.__importStar(t(\"dc03f0a621\"));a.mat2d=e;const i=o.__importStar(t(\"0285c50a7e\"));a.mat3=i;const m=o.__importStar(t(\"a427635f32\"));a.mat4=m;const n=o.__importStar(t(\"eb06fc032a\"));a.quat=n;const s=o.__importStar(t(\"277615c682\"));a.quat2=s;const p=o.__importStar(t(\"c56d9ff837\"));a.vec2=p;const S=o.__importStar(t(\"2c5eb22089\"));a.vec3=S;const f=o.__importStar(t(\"c1aa33d719\"));a.vec4=f},\n      \"68ca94c15c\": function _(t,a,r){Object.defineProperty(r,\"__esModule\",{value:!0}),r.EPSILON=1e-6,r.ARRAY_TYPE=\"undefined\"!=typeof Float32Array?Float32Array:Array,r.RANDOM=Math.random,r.setMatrixArrayType=function(t){r.ARRAY_TYPE=t};var n=Math.PI/180;r.toRadian=function(t){return t*n},r.equals=function(t,a){return Math.abs(t-a)<=r.EPSILON*Math.max(1,Math.abs(t),Math.abs(a))},Math.hypot||(Math.hypot=function(){for(var t=0,a=arguments.length;a--;)t+=arguments[a]*arguments[a];return Math.sqrt(t)})},\n      \"7c0b8e6048\": function _(t,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1],f=r[2],s=r[3];return t[0]=a*c+e*i,t[1]=u*c+o*i,t[2]=a*f+e*s,t[3]=u*f+o*s,t}function e(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}r.create=function(){var t=new a.ARRAY_TYPE(4);return a.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},r.clone=function(t){var n=new a.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},r.fromValues=function(t,n,r,u){var e=new a.ARRAY_TYPE(4);return e[0]=t,e[1]=n,e[2]=r,e[3]=u,e},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.transpose=function(t,n){if(t===n){var r=n[1];t[1]=n[2],t[2]=r}else t[0]=n[0],t[1]=n[2],t[2]=n[1],t[3]=n[3];return t},r.invert=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*e-u*a;return o?(o=1/o,t[0]=e*o,t[1]=-a*o,t[2]=-u*o,t[3]=r*o,t):null},r.adjoint=function(t,n){var r=n[0];return t[0]=n[3],t[1]=-n[1],t[2]=-n[2],t[3]=r,t},r.determinant=function(t){return t[0]*t[3]-t[2]*t[1]},r.multiply=u,r.rotate=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=Math.sin(r),i=Math.cos(r);return t[0]=a*i+e*c,t[1]=u*i+o*c,t[2]=a*-c+e*i,t[3]=u*-c+o*i,t},r.scale=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1];return t[0]=a*c,t[1]=u*c,t[2]=e*i,t[3]=o*i,t},r.fromRotation=function(t,n){var r=Math.sin(n),a=Math.cos(n);return t[0]=a,t[1]=r,t[2]=-r,t[3]=a,t},r.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t},r.str=function(t){return\"mat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3])},r.LDU=function(t,n,r,a){return t[2]=a[2]/a[0],r[0]=a[0],r[1]=a[1],r[3]=a[3]-t[2]*r[1],[t,n,r]},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=e,r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],u=t[1],e=t[2],o=t[3],c=n[0],i=n[1],f=n[2],s=n[3];return Math.abs(r-c)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(u-i)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(i))&&Math.abs(e-f)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(f))&&Math.abs(o-s)<=a.EPSILON*Math.max(1,Math.abs(o),Math.abs(s))},r.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.multiplyScalarAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.mul=u,r.sub=e},\n      \"dc03f0a621\": function _(t,n,a){Object.defineProperty(a,\"__esModule\",{value:!0});const r=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=a[0],f=a[1],h=a[2],M=a[3],b=a[4],l=a[5];return t[0]=r*s+e*f,t[1]=u*s+o*f,t[2]=r*h+e*M,t[3]=u*h+o*M,t[4]=r*b+e*l+c,t[5]=u*b+o*l+i,t}function e(t,n,a){return t[0]=n[0]-a[0],t[1]=n[1]-a[1],t[2]=n[2]-a[2],t[3]=n[3]-a[3],t[4]=n[4]-a[4],t[5]=n[5]-a[5],t}a.create=function(){var t=new r.ARRAY_TYPE(6);return r.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[4]=0,t[5]=0),t[0]=1,t[3]=1,t},a.clone=function(t){var n=new r.ARRAY_TYPE(6);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n},a.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t},a.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},a.fromValues=function(t,n,a,u,e,o){var c=new r.ARRAY_TYPE(6);return c[0]=t,c[1]=n,c[2]=a,c[3]=u,c[4]=e,c[5]=o,c},a.set=function(t,n,a,r,u,e,o){return t[0]=n,t[1]=a,t[2]=r,t[3]=u,t[4]=e,t[5]=o,t},a.invert=function(t,n){var a=n[0],r=n[1],u=n[2],e=n[3],o=n[4],c=n[5],i=a*e-r*u;return i?(i=1/i,t[0]=e*i,t[1]=-r*i,t[2]=-u*i,t[3]=a*i,t[4]=(u*c-e*o)*i,t[5]=(r*o-a*c)*i,t):null},a.determinant=function(t){return t[0]*t[3]-t[1]*t[2]},a.multiply=u,a.rotate=function(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=Math.sin(a),f=Math.cos(a);return t[0]=r*f+e*s,t[1]=u*f+o*s,t[2]=r*-s+e*f,t[3]=u*-s+o*f,t[4]=c,t[5]=i,t},a.scale=function(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=a[0],f=a[1];return t[0]=r*s,t[1]=u*s,t[2]=e*f,t[3]=o*f,t[4]=c,t[5]=i,t},a.translate=function(t,n,a){var r=n[0],u=n[1],e=n[2],o=n[3],c=n[4],i=n[5],s=a[0],f=a[1];return t[0]=r,t[1]=u,t[2]=e,t[3]=o,t[4]=r*s+e*f+c,t[5]=u*s+o*f+i,t},a.fromRotation=function(t,n){var a=Math.sin(n),r=Math.cos(n);return t[0]=r,t[1]=a,t[2]=-a,t[3]=r,t[4]=0,t[5]=0,t},a.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t[4]=0,t[5]=0,t},a.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=n[0],t[5]=n[1],t},a.str=function(t){return\"mat2d(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\")\"},a.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],1)},a.add=function(t,n,a){return t[0]=n[0]+a[0],t[1]=n[1]+a[1],t[2]=n[2]+a[2],t[3]=n[3]+a[3],t[4]=n[4]+a[4],t[5]=n[5]+a[5],t},a.subtract=e,a.multiplyScalar=function(t,n,a){return t[0]=n[0]*a,t[1]=n[1]*a,t[2]=n[2]*a,t[3]=n[3]*a,t[4]=n[4]*a,t[5]=n[5]*a,t},a.multiplyScalarAndAdd=function(t,n,a,r){return t[0]=n[0]+a[0]*r,t[1]=n[1]+a[1]*r,t[2]=n[2]+a[2]*r,t[3]=n[3]+a[3]*r,t[4]=n[4]+a[4]*r,t[5]=n[5]+a[5]*r,t},a.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]},a.equals=function(t,n){var a=t[0],u=t[1],e=t[2],o=t[3],c=t[4],i=t[5],s=n[0],f=n[1],h=n[2],M=n[3],b=n[4],l=n[5];return Math.abs(a-s)<=r.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(u-f)<=r.EPSILON*Math.max(1,Math.abs(u),Math.abs(f))&&Math.abs(e-h)<=r.EPSILON*Math.max(1,Math.abs(e),Math.abs(h))&&Math.abs(o-M)<=r.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))&&Math.abs(c-b)<=r.EPSILON*Math.max(1,Math.abs(c),Math.abs(b))&&Math.abs(i-l)<=r.EPSILON*Math.max(1,Math.abs(i),Math.abs(l))},a.mul=u,a.sub=e},\n      \"0285c50a7e\": function _(t,a,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1],l=n[2],m=n[3],v=n[4],E=n[5],P=n[6],S=n[7],d=n[8];return t[0]=f*r+b*e+l*s,t[1]=f*u+b*i+l*M,t[2]=f*o+b*c+l*h,t[3]=m*r+v*e+E*s,t[4]=m*u+v*i+E*M,t[5]=m*o+v*c+E*h,t[6]=P*r+S*e+d*s,t[7]=P*u+S*i+d*M,t[8]=P*o+S*c+d*h,t}function o(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t}n.create=function(){var t=new r.ARRAY_TYPE(9);return r.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},n.fromMat4=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[4],t[4]=a[5],t[5]=a[6],t[6]=a[8],t[7]=a[9],t[8]=a[10],t},n.clone=function(t){var a=new r.ARRAY_TYPE(9);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromValues=function(t,a,n,u,o,e,i,c,s){var M=new r.ARRAY_TYPE(9);return M[0]=t,M[1]=a,M[2]=n,M[3]=u,M[4]=o,M[5]=e,M[6]=i,M[7]=c,M[8]=s,M},n.set=function(t,a,n,r,u,o,e,i,c,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=u,t[4]=o,t[5]=e,t[6]=i,t[7]=c,t[8]=s,t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],u=a[5];t[1]=a[3],t[2]=a[6],t[3]=n,t[5]=a[7],t[6]=r,t[7]=u}else t[0]=a[0],t[1]=a[3],t[2]=a[6],t[3]=a[1],t[4]=a[4],t[5]=a[7],t[6]=a[2],t[7]=a[5],t[8]=a[8];return t},n.invert=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=M*e-i*s,f=-M*o+i*c,b=s*o-e*c,l=n*h+r*f+u*b;return l?(l=1/l,t[0]=h*l,t[1]=(-M*r+u*s)*l,t[2]=(i*r-u*e)*l,t[3]=f*l,t[4]=(M*n-u*c)*l,t[5]=(-i*n+u*o)*l,t[6]=b*l,t[7]=(-s*n+r*c)*l,t[8]=(e*n-r*o)*l,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8];return t[0]=e*M-i*s,t[1]=u*s-r*M,t[2]=r*i-u*e,t[3]=i*c-o*M,t[4]=n*M-u*c,t[5]=u*o-n*i,t[6]=o*s-e*c,t[7]=r*c-n*s,t[8]=n*e-r*o,t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],u=t[3],o=t[4],e=t[5],i=t[6],c=t[7],s=t[8];return a*(s*o-e*c)+n*(-s*u+e*i)+r*(c*u-o*i)},n.multiply=u,n.translate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1];return t[0]=r,t[1]=u,t[2]=o,t[3]=e,t[4]=i,t[5]=c,t[6]=f*r+b*e+s,t[7]=f*u+b*i+M,t[8]=f*o+b*c+h,t},n.rotate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=Math.sin(n),b=Math.cos(n);return t[0]=b*r+f*e,t[1]=b*u+f*i,t[2]=b*o+f*c,t[3]=b*e-f*r,t[4]=b*i-f*u,t[5]=b*c-f*o,t[6]=s,t[7]=M,t[8]=h,t},n.scale=function(t,a,n){var r=n[0],u=n[1];return t[0]=r*a[0],t[1]=r*a[1],t[2]=r*a[2],t[3]=u*a[3],t[4]=u*a[4],t[5]=u*a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=a[0],t[7]=a[1],t[8]=1,t},n.fromRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=-n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=a[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromMat2d=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=0,t[3]=a[2],t[4]=a[3],t[5]=0,t[6]=a[4],t[7]=a[5],t[8]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=n+n,i=r+r,c=u+u,s=n*e,M=r*e,h=r*i,f=u*e,b=u*i,l=u*c,m=o*e,v=o*i,E=o*c;return t[0]=1-h-l,t[3]=M-E,t[6]=f+v,t[1]=M+E,t[4]=1-s-l,t[7]=b-m,t[2]=f-v,t[5]=b+m,t[8]=1-s-h,t},n.normalFromMat4=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],E=a[15],P=n*i-r*e,S=n*c-u*e,d=n*s-o*e,A=r*c-u*i,x=r*s-o*i,O=u*s-o*c,p=M*m-h*l,I=M*v-f*l,L=M*E-b*l,N=h*v-f*m,R=h*E-b*m,_=f*E-b*v,y=P*_-S*R+d*N+A*L-x*I+O*p;return y?(y=1/y,t[0]=(i*_-c*R+s*N)*y,t[1]=(c*L-e*_-s*I)*y,t[2]=(e*R-i*L+s*p)*y,t[3]=(u*R-r*_-o*N)*y,t[4]=(n*_-u*L+o*I)*y,t[5]=(r*L-n*R-o*p)*y,t[6]=(m*O-v*x+E*A)*y,t[7]=(v*d-l*O-E*S)*y,t[8]=(l*x-m*d+E*P)*y,t):null},n.projection=function(t,a,n){return t[0]=2/a,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/n,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t},n.str=function(t){return\"mat3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t},n.subtract=o,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]},n.equals=function(t,a){var n=t[0],u=t[1],o=t[2],e=t[3],i=t[4],c=t[5],s=t[6],M=t[7],h=t[8],f=a[0],b=a[1],l=a[2],m=a[3],v=a[4],E=a[5],P=a[6],S=a[7],d=a[8];return Math.abs(n-f)<=r.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(u-b)<=r.EPSILON*Math.max(1,Math.abs(u),Math.abs(b))&&Math.abs(o-l)<=r.EPSILON*Math.max(1,Math.abs(o),Math.abs(l))&&Math.abs(e-m)<=r.EPSILON*Math.max(1,Math.abs(e),Math.abs(m))&&Math.abs(i-v)<=r.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(c-E)<=r.EPSILON*Math.max(1,Math.abs(c),Math.abs(E))&&Math.abs(s-P)<=r.EPSILON*Math.max(1,Math.abs(s),Math.abs(P))&&Math.abs(M-S)<=r.EPSILON*Math.max(1,Math.abs(M),Math.abs(S))&&Math.abs(h-d)<=r.EPSILON*Math.max(1,Math.abs(h),Math.abs(d))},n.mul=u,n.sub=o},\n      \"a427635f32\": function _(t,a,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function h(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function o(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],e=a[5],s=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],v=a[12],m=a[13],P=a[14],E=a[15],S=n[0],I=n[1],O=n[2],p=n[3];return t[0]=S*r+I*M+O*c+p*v,t[1]=S*h+I*e+O*f+p*m,t[2]=S*o+I*s+O*b+p*P,t[3]=S*u+I*i+O*l+p*E,S=n[4],I=n[5],O=n[6],p=n[7],t[4]=S*r+I*M+O*c+p*v,t[5]=S*h+I*e+O*f+p*m,t[6]=S*o+I*s+O*b+p*P,t[7]=S*u+I*i+O*l+p*E,S=n[8],I=n[9],O=n[10],p=n[11],t[8]=S*r+I*M+O*c+p*v,t[9]=S*h+I*e+O*f+p*m,t[10]=S*o+I*s+O*b+p*P,t[11]=S*u+I*i+O*l+p*E,S=n[12],I=n[13],O=n[14],p=n[15],t[12]=S*r+I*M+O*c+p*v,t[13]=S*h+I*e+O*f+p*m,t[14]=S*o+I*s+O*b+p*P,t[15]=S*u+I*i+O*l+p*E,t}function u(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=r+r,e=h+h,s=o+o,i=r*M,c=r*e,f=r*s,b=h*e,l=h*s,v=o*s,m=u*M,P=u*e,E=u*s;return t[0]=1-(b+v),t[1]=c+E,t[2]=f-P,t[3]=0,t[4]=c-E,t[5]=1-(i+v),t[6]=l+m,t[7]=0,t[8]=f+P,t[9]=l-m,t[10]=1-(i+b),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function M(t,a){var n=a[0],r=a[1],h=a[2],o=a[4],u=a[5],M=a[6],e=a[8],s=a[9],i=a[10];return t[0]=Math.hypot(n,r,h),t[1]=Math.hypot(o,u,M),t[2]=Math.hypot(e,s,i),t}function e(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t[9]=a[9]-n[9],t[10]=a[10]-n[10],t[11]=a[11]-n[11],t[12]=a[12]-n[12],t[13]=a[13]-n[13],t[14]=a[14]-n[14],t[15]=a[15]-n[15],t}n.create=function(){var t=new r.ARRAY_TYPE(16);return r.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},n.clone=function(t){var a=new r.ARRAY_TYPE(16);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a[9]=t[9],a[10]=t[10],a[11]=t[11],a[12]=t[12],a[13]=t[13],a[14]=t[14],a[15]=t[15],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.fromValues=function(t,a,n,h,o,u,M,e,s,i,c,f,b,l,v,m){var P=new r.ARRAY_TYPE(16);return P[0]=t,P[1]=a,P[2]=n,P[3]=h,P[4]=o,P[5]=u,P[6]=M,P[7]=e,P[8]=s,P[9]=i,P[10]=c,P[11]=f,P[12]=b,P[13]=l,P[14]=v,P[15]=m,P},n.set=function(t,a,n,r,h,o,u,M,e,s,i,c,f,b,l,v,m){return t[0]=a,t[1]=n,t[2]=r,t[3]=h,t[4]=o,t[5]=u,t[6]=M,t[7]=e,t[8]=s,t[9]=i,t[10]=c,t[11]=f,t[12]=b,t[13]=l,t[14]=v,t[15]=m,t},n.identity=h,n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],h=a[3],o=a[6],u=a[7],M=a[11];t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=n,t[6]=a[9],t[7]=a[13],t[8]=r,t[9]=o,t[11]=a[14],t[12]=h,t[13]=u,t[14]=M}else t[0]=a[0],t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=a[1],t[5]=a[5],t[6]=a[9],t[7]=a[13],t[8]=a[2],t[9]=a[6],t[10]=a[10],t[11]=a[14],t[12]=a[3],t[13]=a[7],t[14]=a[11],t[15]=a[15];return t},n.invert=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],e=a[6],s=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],v=a[13],m=a[14],P=a[15],E=n*M-r*u,S=n*e-h*u,I=n*s-o*u,O=r*e-h*M,p=r*s-o*M,L=h*s-o*e,N=i*v-c*l,R=i*m-f*l,x=i*P-b*l,y=c*m-f*v,A=c*P-b*v,Y=f*P-b*m,d=E*Y-S*A+I*y+O*x-p*R+L*N;return d?(d=1/d,t[0]=(M*Y-e*A+s*y)*d,t[1]=(h*A-r*Y-o*y)*d,t[2]=(v*L-m*p+P*O)*d,t[3]=(f*p-c*L-b*O)*d,t[4]=(e*x-u*Y-s*R)*d,t[5]=(n*Y-h*x+o*R)*d,t[6]=(m*I-l*L-P*S)*d,t[7]=(i*L-f*I+b*S)*d,t[8]=(u*A-M*x+s*N)*d,t[9]=(r*x-n*A-o*N)*d,t[10]=(l*p-v*I+P*E)*d,t[11]=(c*I-i*p-b*E)*d,t[12]=(M*R-u*y-e*N)*d,t[13]=(n*y-r*R+h*N)*d,t[14]=(v*S-l*O-m*E)*d,t[15]=(i*O-c*S+f*E)*d,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],e=a[6],s=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],v=a[13],m=a[14],P=a[15];return t[0]=M*(f*P-b*m)-c*(e*P-s*m)+v*(e*b-s*f),t[1]=-(r*(f*P-b*m)-c*(h*P-o*m)+v*(h*b-o*f)),t[2]=r*(e*P-s*m)-M*(h*P-o*m)+v*(h*s-o*e),t[3]=-(r*(e*b-s*f)-M*(h*b-o*f)+c*(h*s-o*e)),t[4]=-(u*(f*P-b*m)-i*(e*P-s*m)+l*(e*b-s*f)),t[5]=n*(f*P-b*m)-i*(h*P-o*m)+l*(h*b-o*f),t[6]=-(n*(e*P-s*m)-u*(h*P-o*m)+l*(h*s-o*e)),t[7]=n*(e*b-s*f)-u*(h*b-o*f)+i*(h*s-o*e),t[8]=u*(c*P-b*v)-i*(M*P-s*v)+l*(M*b-s*c),t[9]=-(n*(c*P-b*v)-i*(r*P-o*v)+l*(r*b-o*c)),t[10]=n*(M*P-s*v)-u*(r*P-o*v)+l*(r*s-o*M),t[11]=-(n*(M*b-s*c)-u*(r*b-o*c)+i*(r*s-o*M)),t[12]=-(u*(c*m-f*v)-i*(M*m-e*v)+l*(M*f-e*c)),t[13]=n*(c*m-f*v)-i*(r*m-h*v)+l*(r*f-h*c),t[14]=-(n*(M*m-e*v)-u*(r*m-h*v)+l*(r*e-h*M)),t[15]=n*(M*f-e*c)-u*(r*f-h*c)+i*(r*e-h*M),t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],h=t[3],o=t[4],u=t[5],M=t[6],e=t[7],s=t[8],i=t[9],c=t[10],f=t[11],b=t[12],l=t[13],v=t[14],m=t[15];return(a*u-n*o)*(c*m-f*v)-(a*M-r*o)*(i*m-f*l)+(a*e-h*o)*(i*v-c*l)+(n*M-r*u)*(s*m-f*b)-(n*e-h*u)*(s*v-c*b)+(r*e-h*M)*(s*l-i*b)},n.multiply=o,n.translate=function(t,a,n){var r,h,o,u,M,e,s,i,c,f,b,l,v=n[0],m=n[1],P=n[2];return a===t?(t[12]=a[0]*v+a[4]*m+a[8]*P+a[12],t[13]=a[1]*v+a[5]*m+a[9]*P+a[13],t[14]=a[2]*v+a[6]*m+a[10]*P+a[14],t[15]=a[3]*v+a[7]*m+a[11]*P+a[15]):(r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],e=a[5],s=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],t[0]=r,t[1]=h,t[2]=o,t[3]=u,t[4]=M,t[5]=e,t[6]=s,t[7]=i,t[8]=c,t[9]=f,t[10]=b,t[11]=l,t[12]=r*v+M*m+c*P+a[12],t[13]=h*v+e*m+f*P+a[13],t[14]=o*v+s*m+b*P+a[14],t[15]=u*v+i*m+l*P+a[15]),t},n.scale=function(t,a,n){var r=n[0],h=n[1],o=n[2];return t[0]=a[0]*r,t[1]=a[1]*r,t[2]=a[2]*r,t[3]=a[3]*r,t[4]=a[4]*h,t[5]=a[5]*h,t[6]=a[6]*h,t[7]=a[7]*h,t[8]=a[8]*o,t[9]=a[9]*o,t[10]=a[10]*o,t[11]=a[11]*o,t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.rotate=function(t,a,n,h){var o,u,M,e,s,i,c,f,b,l,v,m,P,E,S,I,O,p,L,N,R,x,y,A,Y=h[0],d=h[1],g=h[2],T=Math.hypot(Y,d,g);return T<r.EPSILON?null:(Y*=T=1/T,d*=T,g*=T,o=Math.sin(n),M=1-(u=Math.cos(n)),e=a[0],s=a[1],i=a[2],c=a[3],f=a[4],b=a[5],l=a[6],v=a[7],m=a[8],P=a[9],E=a[10],S=a[11],I=Y*Y*M+u,O=d*Y*M+g*o,p=g*Y*M-d*o,L=Y*d*M-g*o,N=d*d*M+u,R=g*d*M+Y*o,x=Y*g*M+d*o,y=d*g*M-Y*o,A=g*g*M+u,t[0]=e*I+f*O+m*p,t[1]=s*I+b*O+P*p,t[2]=i*I+l*O+E*p,t[3]=c*I+v*O+S*p,t[4]=e*L+f*N+m*R,t[5]=s*L+b*N+P*R,t[6]=i*L+l*N+E*R,t[7]=c*L+v*N+S*R,t[8]=e*x+f*y+m*A,t[9]=s*x+b*y+P*A,t[10]=i*x+l*y+E*A,t[11]=c*x+v*y+S*A,a!==t&&(t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t)},n.rotateX=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[4],u=a[5],M=a[6],e=a[7],s=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[4]=o*h+s*r,t[5]=u*h+i*r,t[6]=M*h+c*r,t[7]=e*h+f*r,t[8]=s*h-o*r,t[9]=i*h-u*r,t[10]=c*h-M*r,t[11]=f*h-e*r,t},n.rotateY=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],e=a[3],s=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h-s*r,t[1]=u*h-i*r,t[2]=M*h-c*r,t[3]=e*h-f*r,t[8]=o*r+s*h,t[9]=u*r+i*h,t[10]=M*r+c*h,t[11]=e*r+f*h,t},n.rotateZ=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],e=a[3],s=a[4],i=a[5],c=a[6],f=a[7];return a!==t&&(t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h+s*r,t[1]=u*h+i*r,t[2]=M*h+c*r,t[3]=e*h+f*r,t[4]=s*h-o*r,t[5]=i*h-u*r,t[6]=c*h-M*r,t[7]=f*h-e*r,t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=a[0],t[13]=a[1],t[14]=a[2],t[15]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=a[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotation=function(t,a,n){var h,o,u,M=n[0],e=n[1],s=n[2],i=Math.hypot(M,e,s);return i<r.EPSILON?null:(M*=i=1/i,e*=i,s*=i,h=Math.sin(a),u=1-(o=Math.cos(a)),t[0]=M*M*u+o,t[1]=e*M*u+s*h,t[2]=s*M*u-e*h,t[3]=0,t[4]=M*e*u-s*h,t[5]=e*e*u+o,t[6]=s*e*u+M*h,t[7]=0,t[8]=M*s*u+e*h,t[9]=e*s*u-M*h,t[10]=s*s*u+o,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)},n.fromXRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromYRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromZRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotationTranslation=u,n.fromQuat2=function(t,a){var n=new r.ARRAY_TYPE(3),h=-a[0],o=-a[1],M=-a[2],e=a[3],s=a[4],i=a[5],c=a[6],f=a[7],b=h*h+o*o+M*M+e*e;return b>0?(n[0]=2*(s*e+f*h+i*M-c*o)/b,n[1]=2*(i*e+f*o+c*h-s*M)/b,n[2]=2*(c*e+f*M+s*o-i*h)/b):(n[0]=2*(s*e+f*h+i*M-c*o),n[1]=2*(i*e+f*o+c*h-s*M),n[2]=2*(c*e+f*M+s*o-i*h)),u(t,a,n),t},n.getTranslation=function(t,a){return t[0]=a[12],t[1]=a[13],t[2]=a[14],t},n.getScaling=M,n.getRotation=function(t,a){var n=new r.ARRAY_TYPE(3);M(n,a);var h=1/n[0],o=1/n[1],u=1/n[2],e=a[0]*h,s=a[1]*o,i=a[2]*u,c=a[4]*h,f=a[5]*o,b=a[6]*u,l=a[8]*h,v=a[9]*o,m=a[10]*u,P=e+f+m,E=0;return P>0?(E=2*Math.sqrt(P+1),t[3]=.25*E,t[0]=(b-v)/E,t[1]=(l-i)/E,t[2]=(s-c)/E):e>f&&e>m?(E=2*Math.sqrt(1+e-f-m),t[3]=(b-v)/E,t[0]=.25*E,t[1]=(s+c)/E,t[2]=(l+i)/E):f>m?(E=2*Math.sqrt(1+f-e-m),t[3]=(l-i)/E,t[0]=(s+c)/E,t[1]=.25*E,t[2]=(b+v)/E):(E=2*Math.sqrt(1+m-e-f),t[3]=(s-c)/E,t[0]=(l+i)/E,t[1]=(b+v)/E,t[2]=.25*E),t},n.fromRotationTranslationScale=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=a[3],e=h+h,s=o+o,i=u+u,c=h*e,f=h*s,b=h*i,l=o*s,v=o*i,m=u*i,P=M*e,E=M*s,S=M*i,I=r[0],O=r[1],p=r[2];return t[0]=(1-(l+m))*I,t[1]=(f+S)*I,t[2]=(b-E)*I,t[3]=0,t[4]=(f-S)*O,t[5]=(1-(c+m))*O,t[6]=(v+P)*O,t[7]=0,t[8]=(b+E)*p,t[9]=(v-P)*p,t[10]=(1-(c+l))*p,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t},n.fromRotationTranslationScaleOrigin=function(t,a,n,r,h){var o=a[0],u=a[1],M=a[2],e=a[3],s=o+o,i=u+u,c=M+M,f=o*s,b=o*i,l=o*c,v=u*i,m=u*c,P=M*c,E=e*s,S=e*i,I=e*c,O=r[0],p=r[1],L=r[2],N=h[0],R=h[1],x=h[2],y=(1-(v+P))*O,A=(b+I)*O,Y=(l-S)*O,d=(b-I)*p,g=(1-(f+P))*p,T=(m+E)*p,_=(l+S)*L,q=(m-E)*L,w=(1-(f+v))*L;return t[0]=y,t[1]=A,t[2]=Y,t[3]=0,t[4]=d,t[5]=g,t[6]=T,t[7]=0,t[8]=_,t[9]=q,t[10]=w,t[11]=0,t[12]=n[0]+N-(y*N+d*R+_*x),t[13]=n[1]+R-(A*N+g*R+q*x),t[14]=n[2]+x-(Y*N+T*R+w*x),t[15]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=n+n,M=r+r,e=h+h,s=n*u,i=r*u,c=r*M,f=h*u,b=h*M,l=h*e,v=o*u,m=o*M,P=o*e;return t[0]=1-c-l,t[1]=i+P,t[2]=f-m,t[3]=0,t[4]=i-P,t[5]=1-s-l,t[6]=b+v,t[7]=0,t[8]=f+m,t[9]=b-v,t[10]=1-s-c,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.frustum=function(t,a,n,r,h,o,u){var M=1/(n-a),e=1/(h-r),s=1/(o-u);return t[0]=2*o*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*o*e,t[6]=0,t[7]=0,t[8]=(n+a)*M,t[9]=(h+r)*e,t[10]=(u+o)*s,t[11]=-1,t[12]=0,t[13]=0,t[14]=u*o*2*s,t[15]=0,t},n.perspective=function(t,a,n,r,h){var o,u=1/Math.tan(a/2);return t[0]=u/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=u,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=h&&h!==1/0?(o=1/(r-h),t[10]=(h+r)*o,t[14]=2*h*r*o):(t[10]=-1,t[14]=-2*r),t},n.perspectiveFromFieldOfView=function(t,a,n,r){var h=Math.tan(a.upDegrees*Math.PI/180),o=Math.tan(a.downDegrees*Math.PI/180),u=Math.tan(a.leftDegrees*Math.PI/180),M=Math.tan(a.rightDegrees*Math.PI/180),e=2/(u+M),s=2/(h+o);return t[0]=e,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=s,t[6]=0,t[7]=0,t[8]=-(u-M)*e*.5,t[9]=(h-o)*s*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t},n.ortho=function(t,a,n,r,h,o,u){var M=1/(a-n),e=1/(r-h),s=1/(o-u);return t[0]=-2*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*e,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*s,t[11]=0,t[12]=(a+n)*M,t[13]=(h+r)*e,t[14]=(u+o)*s,t[15]=1,t},n.lookAt=function(t,a,n,o){var u,M,e,s,i,c,f,b,l,v,m=a[0],P=a[1],E=a[2],S=o[0],I=o[1],O=o[2],p=n[0],L=n[1],N=n[2];return Math.abs(m-p)<r.EPSILON&&Math.abs(P-L)<r.EPSILON&&Math.abs(E-N)<r.EPSILON?h(t):(f=m-p,b=P-L,l=E-N,u=I*(l*=v=1/Math.hypot(f,b,l))-O*(b*=v),M=O*(f*=v)-S*l,e=S*b-I*f,(v=Math.hypot(u,M,e))?(u*=v=1/v,M*=v,e*=v):(u=0,M=0,e=0),s=b*e-l*M,i=l*u-f*e,c=f*M-b*u,(v=Math.hypot(s,i,c))?(s*=v=1/v,i*=v,c*=v):(s=0,i=0,c=0),t[0]=u,t[1]=s,t[2]=f,t[3]=0,t[4]=M,t[5]=i,t[6]=b,t[7]=0,t[8]=e,t[9]=c,t[10]=l,t[11]=0,t[12]=-(u*m+M*P+e*E),t[13]=-(s*m+i*P+c*E),t[14]=-(f*m+b*P+l*E),t[15]=1,t)},n.targetTo=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=r[0],e=r[1],s=r[2],i=h-n[0],c=o-n[1],f=u-n[2],b=i*i+c*c+f*f;b>0&&(i*=b=1/Math.sqrt(b),c*=b,f*=b);var l=e*f-s*c,v=s*i-M*f,m=M*c-e*i;return(b=l*l+v*v+m*m)>0&&(l*=b=1/Math.sqrt(b),v*=b,m*=b),t[0]=l,t[1]=v,t[2]=m,t[3]=0,t[4]=c*m-f*v,t[5]=f*l-i*m,t[6]=i*v-c*l,t[7]=0,t[8]=i,t[9]=c,t[10]=f,t[11]=0,t[12]=h,t[13]=o,t[14]=u,t[15]=1,t},n.str=function(t){return\"mat4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\", \"+t[9]+\", \"+t[10]+\", \"+t[11]+\", \"+t[12]+\", \"+t[13]+\", \"+t[14]+\", \"+t[15]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t[9]=a[9]+n[9],t[10]=a[10]+n[10],t[11]=a[11]+n[11],t[12]=a[12]+n[12],t[13]=a[13]+n[13],t[14]=a[14]+n[14],t[15]=a[15]+n[15],t},n.subtract=e,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t[9]=a[9]*n,t[10]=a[10]*n,t[11]=a[11]*n,t[12]=a[12]*n,t[13]=a[13]*n,t[14]=a[14]*n,t[15]=a[15]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t[9]=a[9]+n[9]*r,t[10]=a[10]+n[10]*r,t[11]=a[11]+n[11]*r,t[12]=a[12]+n[12]*r,t[13]=a[13]+n[13]*r,t[14]=a[14]+n[14]*r,t[15]=a[15]+n[15]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]&&t[9]===a[9]&&t[10]===a[10]&&t[11]===a[11]&&t[12]===a[12]&&t[13]===a[13]&&t[14]===a[14]&&t[15]===a[15]},n.equals=function(t,a){var n=t[0],h=t[1],o=t[2],u=t[3],M=t[4],e=t[5],s=t[6],i=t[7],c=t[8],f=t[9],b=t[10],l=t[11],v=t[12],m=t[13],P=t[14],E=t[15],S=a[0],I=a[1],O=a[2],p=a[3],L=a[4],N=a[5],R=a[6],x=a[7],y=a[8],A=a[9],Y=a[10],d=a[11],g=a[12],T=a[13],_=a[14],q=a[15];return Math.abs(n-S)<=r.EPSILON*Math.max(1,Math.abs(n),Math.abs(S))&&Math.abs(h-I)<=r.EPSILON*Math.max(1,Math.abs(h),Math.abs(I))&&Math.abs(o-O)<=r.EPSILON*Math.max(1,Math.abs(o),Math.abs(O))&&Math.abs(u-p)<=r.EPSILON*Math.max(1,Math.abs(u),Math.abs(p))&&Math.abs(M-L)<=r.EPSILON*Math.max(1,Math.abs(M),Math.abs(L))&&Math.abs(e-N)<=r.EPSILON*Math.max(1,Math.abs(e),Math.abs(N))&&Math.abs(s-R)<=r.EPSILON*Math.max(1,Math.abs(s),Math.abs(R))&&Math.abs(i-x)<=r.EPSILON*Math.max(1,Math.abs(i),Math.abs(x))&&Math.abs(c-y)<=r.EPSILON*Math.max(1,Math.abs(c),Math.abs(y))&&Math.abs(f-A)<=r.EPSILON*Math.max(1,Math.abs(f),Math.abs(A))&&Math.abs(b-Y)<=r.EPSILON*Math.max(1,Math.abs(b),Math.abs(Y))&&Math.abs(l-d)<=r.EPSILON*Math.max(1,Math.abs(l),Math.abs(d))&&Math.abs(v-g)<=r.EPSILON*Math.max(1,Math.abs(v),Math.abs(g))&&Math.abs(m-T)<=r.EPSILON*Math.max(1,Math.abs(m),Math.abs(T))&&Math.abs(P-_)<=r.EPSILON*Math.max(1,Math.abs(P),Math.abs(_))&&Math.abs(E-q)<=r.EPSILON*Math.max(1,Math.abs(E),Math.abs(q))},n.mul=o,n.sub=e},\n      \"eb06fc032a\": function _(t,r,a){Object.defineProperty(a,\"__esModule\",{value:!0});const n=t(\"tslib\"),e=n.__importStar(t(\"68ca94c15c\")),o=n.__importStar(t(\"0285c50a7e\")),s=n.__importStar(t(\"2c5eb22089\")),u=n.__importStar(t(\"c1aa33d719\"));function c(){var t=new e.ARRAY_TYPE(4);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function i(t,r,a){a*=.5;var n=Math.sin(a);return t[0]=n*r[0],t[1]=n*r[1],t[2]=n*r[2],t[3]=Math.cos(a),t}function h(t,r,a){var n=r[0],e=r[1],o=r[2],s=r[3],u=a[0],c=a[1],i=a[2],h=a[3];return t[0]=n*h+s*u+e*i-o*c,t[1]=e*h+s*c+o*u-n*i,t[2]=o*h+s*i+n*c-e*u,t[3]=s*h-n*u-e*c-o*i,t}function M(t,r){var a=r[0],n=r[1],e=r[2],o=r[3],s=Math.sqrt(a*a+n*n+e*e),u=Math.exp(o),c=s>0?u*Math.sin(s)/s:0;return t[0]=a*c,t[1]=n*c,t[2]=e*c,t[3]=u*Math.cos(s),t}function l(t,r){var a=r[0],n=r[1],e=r[2],o=r[3],s=Math.sqrt(a*a+n*n+e*e),u=s>0?Math.atan2(s,o)/s:0;return t[0]=a*u,t[1]=n*u,t[2]=e*u,t[3]=.5*Math.log(a*a+n*n+e*e+o*o),t}function f(t,r,a,n){var o,s,u,c,i,h=r[0],M=r[1],l=r[2],f=r[3],v=a[0],m=a[1],q=a[2],d=a[3];return(s=h*v+M*m+l*q+f*d)<0&&(s=-s,v=-v,m=-m,q=-q,d=-d),1-s>e.EPSILON?(o=Math.acos(s),u=Math.sin(o),c=Math.sin((1-n)*o)/u,i=Math.sin(n*o)/u):(c=1-n,i=n),t[0]=c*h+i*v,t[1]=c*M+i*m,t[2]=c*l+i*q,t[3]=c*f+i*d,t}function v(t,r){var a,n=r[0]+r[4]+r[8];if(n>0)a=Math.sqrt(n+1),t[3]=.5*a,a=.5/a,t[0]=(r[5]-r[7])*a,t[1]=(r[6]-r[2])*a,t[2]=(r[1]-r[3])*a;else{var e=0;r[4]>r[0]&&(e=1),r[8]>r[3*e+e]&&(e=2);var o=(e+1)%3,s=(e+2)%3;a=Math.sqrt(r[3*e+e]-r[3*o+o]-r[3*s+s]+1),t[e]=.5*a,a=.5/a,t[3]=(r[3*o+s]-r[3*s+o])*a,t[o]=(r[3*o+e]+r[3*e+o])*a,t[s]=(r[3*s+e]+r[3*e+s])*a}return t}var m,q,d,p,A,g;a.create=c,a.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},a.setAxisAngle=i,a.getAxisAngle=function(t,r){var a=2*Math.acos(r[3]),n=Math.sin(a/2);return n>e.EPSILON?(t[0]=r[0]/n,t[1]=r[1]/n,t[2]=r[2]/n):(t[0]=1,t[1]=0,t[2]=0),a},a.getAngle=function(t,r){var n=a.dot(t,r);return Math.acos(2*n*n-1)},a.multiply=h,a.rotateX=function(t,r,a){a*=.5;var n=r[0],e=r[1],o=r[2],s=r[3],u=Math.sin(a),c=Math.cos(a);return t[0]=n*c+s*u,t[1]=e*c+o*u,t[2]=o*c-e*u,t[3]=s*c-n*u,t},a.rotateY=function(t,r,a){a*=.5;var n=r[0],e=r[1],o=r[2],s=r[3],u=Math.sin(a),c=Math.cos(a);return t[0]=n*c-o*u,t[1]=e*c+s*u,t[2]=o*c+n*u,t[3]=s*c-e*u,t},a.rotateZ=function(t,r,a){a*=.5;var n=r[0],e=r[1],o=r[2],s=r[3],u=Math.sin(a),c=Math.cos(a);return t[0]=n*c+e*u,t[1]=e*c-n*u,t[2]=o*c+s*u,t[3]=s*c-o*u,t},a.calculateW=function(t,r){var a=r[0],n=r[1],e=r[2];return t[0]=a,t[1]=n,t[2]=e,t[3]=Math.sqrt(Math.abs(1-a*a-n*n-e*e)),t},a.exp=M,a.ln=l,a.pow=function(t,r,n){return l(t,r),a.scale(t,t,n),M(t,t),t},a.slerp=f,a.random=function(t){var r=e.RANDOM(),a=e.RANDOM(),n=e.RANDOM(),o=Math.sqrt(1-r),s=Math.sqrt(r);return t[0]=o*Math.sin(2*Math.PI*a),t[1]=o*Math.cos(2*Math.PI*a),t[2]=s*Math.sin(2*Math.PI*n),t[3]=s*Math.cos(2*Math.PI*n),t},a.invert=function(t,r){var a=r[0],n=r[1],e=r[2],o=r[3],s=a*a+n*n+e*e+o*o,u=s?1/s:0;return t[0]=-a*u,t[1]=-n*u,t[2]=-e*u,t[3]=o*u,t},a.conjugate=function(t,r){return t[0]=-r[0],t[1]=-r[1],t[2]=-r[2],t[3]=r[3],t},a.fromMat3=v,a.fromEuler=function(t,r,a,n){var e=.5*Math.PI/180;r*=e,a*=e,n*=e;var o=Math.sin(r),s=Math.cos(r),u=Math.sin(a),c=Math.cos(a),i=Math.sin(n),h=Math.cos(n);return t[0]=o*c*h-s*u*i,t[1]=s*u*h+o*c*i,t[2]=s*c*i-o*u*h,t[3]=s*c*h+o*u*i,t},a.str=function(t){return\"quat(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},a.clone=u.clone,a.fromValues=u.fromValues,a.copy=u.copy,a.set=u.set,a.add=u.add,a.mul=h,a.scale=u.scale,a.dot=u.dot,a.lerp=u.lerp,a.length=u.length,a.len=a.length,a.squaredLength=u.squaredLength,a.sqrLen=a.squaredLength,a.normalize=u.normalize,a.exactEquals=u.exactEquals,a.equals=u.equals,a.rotationTo=(m=s.create(),q=s.fromValues(1,0,0),d=s.fromValues(0,1,0),function(t,r,n){var e=s.dot(r,n);return e<-.999999?(s.cross(m,q,r),s.len(m)<1e-6&&s.cross(m,d,r),s.normalize(m,m),i(t,m,Math.PI),t):e>.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(s.cross(m,r,n),t[0]=m[0],t[1]=m[1],t[2]=m[2],t[3]=1+e,a.normalize(t,t))}),a.sqlerp=(p=c(),A=c(),function(t,r,a,n,e,o){return f(p,r,e,o),f(A,a,n,o),f(t,p,A,2*o*(1-o)),t}),a.setAxes=(g=o.create(),function(t,r,n,e){return g[0]=n[0],g[3]=n[1],g[6]=n[2],g[1]=e[0],g[4]=e[1],g[7]=e[2],g[2]=-r[0],g[5]=-r[1],g[8]=-r[2],a.normalize(t,v(t,g))})},\n      \"2c5eb22089\": function _(t,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(){var t=new a.ARRAY_TYPE(3);return a.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function e(t){var n=t[0],r=t[1],a=t[2];return Math.hypot(n,r,a)}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t}function i(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t}function c(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t}function h(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return Math.hypot(r,a,u)}function M(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return r*r+a*a+u*u}function s(t){var n=t[0],r=t[1],a=t[2];return n*n+r*r+a*a}function f(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}var l;r.create=u,r.clone=function(t){var n=new a.ARRAY_TYPE(3);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n},r.length=e,r.fromValues=function(t,n,r){var u=new a.ARRAY_TYPE(3);return u[0]=t,u[1]=n,u[2]=r,u},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t},r.set=function(t,n,r,a){return t[0]=n,t[1]=r,t[2]=a,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t},r.subtract=o,r.multiply=i,r.divide=c,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t},r.distance=h,r.squaredDistance=M,r.squaredLength=s,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=r*r+a*a+u*u;return e>0&&(e=1/Math.sqrt(e)),t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t},r.dot=f,r.cross=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2];return t[0]=u*c-e*i,t[1]=e*o-a*c,t[2]=a*i-u*o,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t},r.hermite=function(t,n,r,a,u,e){var o=e*e,i=o*(2*e-3)+1,c=o*(e-2)+e,h=o*(e-1),M=o*(3-2*e);return t[0]=n[0]*i+r[0]*c+a[0]*h+u[0]*M,t[1]=n[1]*i+r[1]*c+a[1]*h+u[1]*M,t[2]=n[2]*i+r[2]*c+a[2]*h+u[2]*M,t},r.bezier=function(t,n,r,a,u,e){var o=1-e,i=o*o,c=e*e,h=i*o,M=3*e*i,s=3*c*o,f=c*e;return t[0]=n[0]*h+r[0]*M+a[0]*s+u[0]*f,t[1]=n[1]*h+r[1]*M+a[1]*s+u[1]*f,t[2]=n[2]*h+r[2]*M+a[2]*s+u[2]*f,t},r.random=function(t,n){n=n||1;var r=2*a.RANDOM()*Math.PI,u=2*a.RANDOM()-1,e=Math.sqrt(1-u*u)*n;return t[0]=Math.cos(r)*e,t[1]=Math.sin(r)*e,t[2]=u*n,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[3]*a+r[7]*u+r[11]*e+r[15];return o=o||1,t[0]=(r[0]*a+r[4]*u+r[8]*e+r[12])/o,t[1]=(r[1]*a+r[5]*u+r[9]*e+r[13])/o,t[2]=(r[2]*a+r[6]*u+r[10]*e+r[14])/o,t},r.transformMat3=function(t,n,r){var a=n[0],u=n[1],e=n[2];return t[0]=a*r[0]+u*r[3]+e*r[6],t[1]=a*r[1]+u*r[4]+e*r[7],t[2]=a*r[2]+u*r[5]+e*r[8],t},r.transformQuat=function(t,n,r){var a=r[0],u=r[1],e=r[2],o=r[3],i=n[0],c=n[1],h=n[2],M=u*h-e*c,s=e*i-a*h,f=a*c-u*i,l=u*f-e*s,v=e*M-a*f,m=a*s-u*M,d=2*o;return M*=d,s*=d,f*=d,l*=2,v*=2,m*=2,t[0]=i+M+l,t[1]=c+s+v,t[2]=h+f+m,t},r.rotateX=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0],e[1]=u[1]*Math.cos(a)-u[2]*Math.sin(a),e[2]=u[1]*Math.sin(a)+u[2]*Math.cos(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateY=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[2]*Math.sin(a)+u[0]*Math.cos(a),e[1]=u[1],e[2]=u[2]*Math.cos(a)-u[0]*Math.sin(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateZ=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0]*Math.cos(a)-u[1]*Math.sin(a),e[1]=u[0]*Math.sin(a)+u[1]*Math.cos(a),e[2]=u[2],t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.angle=function(t,n){var r=t[0],a=t[1],u=t[2],e=n[0],o=n[1],i=n[2],c=Math.sqrt(r*r+a*a+u*u)*Math.sqrt(e*e+o*o+i*i),h=c&&f(t,n)/c;return Math.acos(Math.min(Math.max(h,-1),1))},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t},r.str=function(t){return\"vec3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]},r.equals=function(t,n){var r=t[0],u=t[1],e=t[2],o=n[0],i=n[1],c=n[2];return Math.abs(r-o)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(u-i)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(i))&&Math.abs(e-c)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(c))},r.sub=o,r.mul=i,r.div=c,r.dist=h,r.sqrDist=M,r.len=e,r.sqrLen=s,r.forEach=(l=u(),function(t,n,r,a,u,e){var o,i;for(n||(n=3),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)l[0]=t[o],l[1]=t[o+1],l[2]=t[o+2],u(l,l,e),t[o]=l[0],t[o+1]=l[1],t[o+2]=l[2];return t})},\n      \"c1aa33d719\": function _(t,n,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(){var t=new a.ARRAY_TYPE(4);return a.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function e(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}function o(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t[3]=n[3]*r[3],t}function i(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t[3]=n[3]/r[3],t}function c(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return Math.hypot(r,a,u,e)}function h(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return r*r+a*a+u*u+e*e}function M(t){var n=t[0],r=t[1],a=t[2],u=t[3];return Math.hypot(n,r,a,u)}function f(t){var n=t[0],r=t[1],a=t[2],u=t[3];return n*n+r*r+a*a+u*u}var s;r.create=u,r.clone=function(t){var n=new a.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.fromValues=function(t,n,r,u){var e=new a.ARRAY_TYPE(4);return e[0]=t,e[1]=n,e[2]=r,e[3]=u,e},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=e,r.multiply=o,r.divide=i,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t[3]=Math.ceil(n[3]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t[3]=Math.floor(n[3]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t[3]=Math.min(n[3],r[3]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t[3]=Math.max(n[3],r[3]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t[3]=Math.round(n[3]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.distance=c,r.squaredDistance=h,r.length=M,r.squaredLength=f,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=-n[3],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t[3]=1/n[3],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*r+a*a+u*u+e*e;return o>0&&(o=1/Math.sqrt(o)),t[0]=r*o,t[1]=a*o,t[2]=u*o,t[3]=e*o,t},r.dot=function(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]+t[3]*n[3]},r.cross=function(t,n,r,a){var u=r[0]*a[1]-r[1]*a[0],e=r[0]*a[2]-r[2]*a[0],o=r[0]*a[3]-r[3]*a[0],i=r[1]*a[2]-r[2]*a[1],c=r[1]*a[3]-r[3]*a[1],h=r[2]*a[3]-r[3]*a[2],M=n[0],f=n[1],s=n[2],l=n[3];return t[0]=f*h-s*c+l*i,t[1]=-M*h+s*o-l*e,t[2]=M*c-f*o+l*u,t[3]=-M*i+f*e-s*u,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2],i=n[3];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t[3]=i+a*(r[3]-i),t},r.random=function(t,n){var r,u,e,o,i,c;n=n||1;do{i=(r=2*a.RANDOM()-1)*r+(u=2*a.RANDOM()-1)*u}while(i>=1);do{c=(e=2*a.RANDOM()-1)*e+(o=2*a.RANDOM()-1)*o}while(c>=1);var h=Math.sqrt((1-i)/c);return t[0]=n*r,t[1]=n*u,t[2]=n*e*h,t[3]=n*o*h,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3];return t[0]=r[0]*a+r[4]*u+r[8]*e+r[12]*o,t[1]=r[1]*a+r[5]*u+r[9]*e+r[13]*o,t[2]=r[2]*a+r[6]*u+r[10]*e+r[14]*o,t[3]=r[3]*a+r[7]*u+r[11]*e+r[15]*o,t},r.transformQuat=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2],h=r[3],M=h*a+i*e-c*u,f=h*u+c*a-o*e,s=h*e+o*u-i*a,l=-o*a-i*u-c*e;return t[0]=M*h+l*-o+f*-c-s*-i,t[1]=f*h+l*-i+s*-o-M*-c,t[2]=s*h+l*-c+M*-i-f*-o,t[3]=n[3],t},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t},r.str=function(t){return\"vec4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],u=t[1],e=t[2],o=t[3],i=n[0],c=n[1],h=n[2],M=n[3];return Math.abs(r-i)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(u-c)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(c))&&Math.abs(e-h)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(h))&&Math.abs(o-M)<=a.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))},r.sub=e,r.mul=o,r.div=i,r.dist=c,r.sqrDist=h,r.len=M,r.sqrLen=f,r.forEach=(s=u(),function(t,n,r,a,u,e){var o,i;for(n||(n=4),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)s[0]=t[o],s[1]=t[o+1],s[2]=t[o+2],s[3]=t[o+3],u(s,s,e),t[o]=s[0],t[o+1]=s[1],t[o+2]=s[2],t[o+3]=s[3];return t})},\n      \"277615c682\": function _(t,a,n){Object.defineProperty(n,\"__esModule\",{value:!0});const r=t(\"tslib\"),e=r.__importStar(t(\"68ca94c15c\")),u=r.__importStar(t(\"eb06fc032a\")),o=r.__importStar(t(\"a427635f32\"));function i(t,a,n){var r=.5*n[0],e=.5*n[1],u=.5*n[2],o=a[0],i=a[1],s=a[2],c=a[3];return t[0]=o,t[1]=i,t[2]=s,t[3]=c,t[4]=r*c+e*s-u*i,t[5]=e*c+u*o-r*s,t[6]=u*c+r*i-e*o,t[7]=-r*o-e*i-u*s,t}function s(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t}function c(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[4],s=n[5],c=n[6],h=n[7],f=a[4],M=a[5],l=a[6],b=a[7],v=n[0],m=n[1],R=n[2],P=n[3];return t[0]=r*P+o*v+e*R-u*m,t[1]=e*P+o*m+u*v-r*R,t[2]=u*P+o*R+r*m-e*v,t[3]=o*P-r*v-e*m-u*R,t[4]=r*h+o*i+e*c-u*s+f*P+b*v+M*R-l*m,t[5]=e*h+o*s+u*i-r*c+M*P+b*m+l*v-f*R,t[6]=u*h+o*c+r*s-e*i+l*P+b*R+f*m-M*v,t[7]=o*h-r*i-e*s-u*c+b*P-f*v-M*m-l*R,t}n.create=function(){var t=new e.ARRAY_TYPE(8);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0),t[3]=1,t},n.clone=function(t){var a=new e.ARRAY_TYPE(8);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a},n.fromValues=function(t,a,n,r,u,o,i,s){var c=new e.ARRAY_TYPE(8);return c[0]=t,c[1]=a,c[2]=n,c[3]=r,c[4]=u,c[5]=o,c[6]=i,c[7]=s,c},n.fromRotationTranslationValues=function(t,a,n,r,u,o,i){var s=new e.ARRAY_TYPE(8);s[0]=t,s[1]=a,s[2]=n,s[3]=r;var c=.5*u,h=.5*o,f=.5*i;return s[4]=c*r+h*n-f*a,s[5]=h*r+f*t-c*n,s[6]=f*r+c*a-h*t,s[7]=-c*t-h*a-f*n,s},n.fromRotationTranslation=i,n.fromTranslation=function(t,a){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=.5*a[0],t[5]=.5*a[1],t[6]=.5*a[2],t[7]=0,t},n.fromRotation=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.fromMat4=function(t,a){var n=u.create();o.getRotation(n,a);var r=new e.ARRAY_TYPE(3);return o.getTranslation(r,a),i(t,n,r),t},n.copy=s,n.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.set=function(t,a,n,r,e,u,o,i,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=e,t[4]=u,t[5]=o,t[6]=i,t[7]=s,t},n.getReal=u.copy,n.getDual=function(t,a){return t[0]=a[4],t[1]=a[5],t[2]=a[6],t[3]=a[7],t},n.setReal=u.copy,n.setDual=function(t,a){return t[4]=a[0],t[5]=a[1],t[6]=a[2],t[7]=a[3],t},n.getTranslation=function(t,a){var n=a[4],r=a[5],e=a[6],u=a[7],o=-a[0],i=-a[1],s=-a[2],c=a[3];return t[0]=2*(n*c+u*o+r*s-e*i),t[1]=2*(r*c+u*i+e*o-n*s),t[2]=2*(e*c+u*s+n*i-r*o),t},n.translate=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=.5*n[0],s=.5*n[1],c=.5*n[2],h=a[4],f=a[5],M=a[6],l=a[7];return t[0]=r,t[1]=e,t[2]=u,t[3]=o,t[4]=o*i+e*c-u*s+h,t[5]=o*s+u*i-r*c+f,t[6]=o*c+r*s-e*i+M,t[7]=-r*i-e*s-u*c+l,t},n.rotateX=function(t,a,n){var r=-a[0],e=-a[1],o=-a[2],i=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*i+f*r+c*o-h*e,l=c*i+f*e+h*r-s*o,b=h*i+f*o+s*e-c*r,v=f*i-s*r-c*e-h*o;return u.rotateX(t,a,n),r=t[0],e=t[1],o=t[2],i=t[3],t[4]=M*i+v*r+l*o-b*e,t[5]=l*i+v*e+b*r-M*o,t[6]=b*i+v*o+M*e-l*r,t[7]=v*i-M*r-l*e-b*o,t},n.rotateY=function(t,a,n){var r=-a[0],e=-a[1],o=-a[2],i=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*i+f*r+c*o-h*e,l=c*i+f*e+h*r-s*o,b=h*i+f*o+s*e-c*r,v=f*i-s*r-c*e-h*o;return u.rotateY(t,a,n),r=t[0],e=t[1],o=t[2],i=t[3],t[4]=M*i+v*r+l*o-b*e,t[5]=l*i+v*e+b*r-M*o,t[6]=b*i+v*o+M*e-l*r,t[7]=v*i-M*r-l*e-b*o,t},n.rotateZ=function(t,a,n){var r=-a[0],e=-a[1],o=-a[2],i=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*i+f*r+c*o-h*e,l=c*i+f*e+h*r-s*o,b=h*i+f*o+s*e-c*r,v=f*i-s*r-c*e-h*o;return u.rotateZ(t,a,n),r=t[0],e=t[1],o=t[2],i=t[3],t[4]=M*i+v*r+l*o-b*e,t[5]=l*i+v*e+b*r-M*o,t[6]=b*i+v*o+M*e-l*r,t[7]=v*i-M*r-l*e-b*o,t},n.rotateByQuatAppend=function(t,a,n){var r=n[0],e=n[1],u=n[2],o=n[3],i=a[0],s=a[1],c=a[2],h=a[3];return t[0]=i*o+h*r+s*u-c*e,t[1]=s*o+h*e+c*r-i*u,t[2]=c*o+h*u+i*e-s*r,t[3]=h*o-i*r-s*e-c*u,i=a[4],s=a[5],c=a[6],h=a[7],t[4]=i*o+h*r+s*u-c*e,t[5]=s*o+h*e+c*r-i*u,t[6]=c*o+h*u+i*e-s*r,t[7]=h*o-i*r-s*e-c*u,t},n.rotateByQuatPrepend=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[0],s=n[1],c=n[2],h=n[3];return t[0]=r*h+o*i+e*c-u*s,t[1]=e*h+o*s+u*i-r*c,t[2]=u*h+o*c+r*s-e*i,t[3]=o*h-r*i-e*s-u*c,i=n[4],s=n[5],c=n[6],h=n[7],t[4]=r*h+o*i+e*c-u*s,t[5]=e*h+o*s+u*i-r*c,t[6]=u*h+o*c+r*s-e*i,t[7]=o*h-r*i-e*s-u*c,t},n.rotateAroundAxis=function(t,a,n,r){if(Math.abs(r)<e.EPSILON)return s(t,a);var u=Math.hypot(n[0],n[1],n[2]);r*=.5;var o=Math.sin(r),i=o*n[0]/u,c=o*n[1]/u,h=o*n[2]/u,f=Math.cos(r),M=a[0],l=a[1],b=a[2],v=a[3];t[0]=M*f+v*i+l*h-b*c,t[1]=l*f+v*c+b*i-M*h,t[2]=b*f+v*h+M*c-l*i,t[3]=v*f-M*i-l*c-b*h;var m=a[4],R=a[5],P=a[6],d=a[7];return t[4]=m*f+d*i+R*h-P*c,t[5]=R*f+d*c+P*i-m*h,t[6]=P*f+d*h+m*c-R*i,t[7]=d*f-m*i-R*c-P*h,t},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t},n.multiply=c,n.mul=c,n.scale=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t},n.dot=u.dot,n.lerp=function(t,a,r,e){var u=1-e;return n.dot(a,r)<0&&(e=-e),t[0]=a[0]*u+r[0]*e,t[1]=a[1]*u+r[1]*e,t[2]=a[2]*u+r[2]*e,t[3]=a[3]*u+r[3]*e,t[4]=a[4]*u+r[4]*e,t[5]=a[5]*u+r[5]*e,t[6]=a[6]*u+r[6]*e,t[7]=a[7]*u+r[7]*e,t},n.invert=function(t,a){var r=n.squaredLength(a);return t[0]=-a[0]/r,t[1]=-a[1]/r,t[2]=-a[2]/r,t[3]=a[3]/r,t[4]=-a[4]/r,t[5]=-a[5]/r,t[6]=-a[6]/r,t[7]=a[7]/r,t},n.conjugate=function(t,a){return t[0]=-a[0],t[1]=-a[1],t[2]=-a[2],t[3]=a[3],t[4]=-a[4],t[5]=-a[5],t[6]=-a[6],t[7]=a[7],t},n.length=u.length,n.len=n.length,n.squaredLength=u.squaredLength,n.sqrLen=n.squaredLength,n.normalize=function(t,a){var r=n.squaredLength(a);if(r>0){r=Math.sqrt(r);var e=a[0]/r,u=a[1]/r,o=a[2]/r,i=a[3]/r,s=a[4],c=a[5],h=a[6],f=a[7],M=e*s+u*c+o*h+i*f;t[0]=e,t[1]=u,t[2]=o,t[3]=i,t[4]=(s-e*M)/r,t[5]=(c-u*M)/r,t[6]=(h-o*M)/r,t[7]=(f-i*M)/r}return t},n.str=function(t){return\"quat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\")\"},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]},n.equals=function(t,a){var n=t[0],r=t[1],u=t[2],o=t[3],i=t[4],s=t[5],c=t[6],h=t[7],f=a[0],M=a[1],l=a[2],b=a[3],v=a[4],m=a[5],R=a[6],P=a[7];return Math.abs(n-f)<=e.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(r-M)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(M))&&Math.abs(u-l)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(l))&&Math.abs(o-b)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(b))&&Math.abs(i-v)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(s-m)<=e.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(c-R)<=e.EPSILON*Math.max(1,Math.abs(c),Math.abs(R))&&Math.abs(h-P)<=e.EPSILON*Math.max(1,Math.abs(h),Math.abs(P))}},\n      \"c56d9ff837\": function _(n,t,r){Object.defineProperty(r,\"__esModule\",{value:!0});const a=n(\"tslib\").__importStar(n(\"68ca94c15c\"));function u(){var n=new a.ARRAY_TYPE(2);return a.ARRAY_TYPE!=Float32Array&&(n[0]=0,n[1]=0),n}function e(n,t,r){return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n}function o(n,t,r){return n[0]=t[0]*r[0],n[1]=t[1]*r[1],n}function c(n,t,r){return n[0]=t[0]/r[0],n[1]=t[1]/r[1],n}function i(n,t){var r=t[0]-n[0],a=t[1]-n[1];return Math.hypot(r,a)}function f(n,t){var r=t[0]-n[0],a=t[1]-n[1];return r*r+a*a}function s(n){var t=n[0],r=n[1];return Math.hypot(t,r)}function h(n){var t=n[0],r=n[1];return t*t+r*r}var M;r.create=u,r.clone=function(n){var t=new a.ARRAY_TYPE(2);return t[0]=n[0],t[1]=n[1],t},r.fromValues=function(n,t){var r=new a.ARRAY_TYPE(2);return r[0]=n,r[1]=t,r},r.copy=function(n,t){return n[0]=t[0],n[1]=t[1],n},r.set=function(n,t,r){return n[0]=t,n[1]=r,n},r.add=function(n,t,r){return n[0]=t[0]+r[0],n[1]=t[1]+r[1],n},r.subtract=e,r.multiply=o,r.divide=c,r.ceil=function(n,t){return n[0]=Math.ceil(t[0]),n[1]=Math.ceil(t[1]),n},r.floor=function(n,t){return n[0]=Math.floor(t[0]),n[1]=Math.floor(t[1]),n},r.min=function(n,t,r){return n[0]=Math.min(t[0],r[0]),n[1]=Math.min(t[1],r[1]),n},r.max=function(n,t,r){return n[0]=Math.max(t[0],r[0]),n[1]=Math.max(t[1],r[1]),n},r.round=function(n,t){return n[0]=Math.round(t[0]),n[1]=Math.round(t[1]),n},r.scale=function(n,t,r){return n[0]=t[0]*r,n[1]=t[1]*r,n},r.scaleAndAdd=function(n,t,r,a){return n[0]=t[0]+r[0]*a,n[1]=t[1]+r[1]*a,n},r.distance=i,r.squaredDistance=f,r.length=s,r.squaredLength=h,r.negate=function(n,t){return n[0]=-t[0],n[1]=-t[1],n},r.inverse=function(n,t){return n[0]=1/t[0],n[1]=1/t[1],n},r.normalize=function(n,t){var r=t[0],a=t[1],u=r*r+a*a;return u>0&&(u=1/Math.sqrt(u)),n[0]=t[0]*u,n[1]=t[1]*u,n},r.dot=function(n,t){return n[0]*t[0]+n[1]*t[1]},r.cross=function(n,t,r){var a=t[0]*r[1]-t[1]*r[0];return n[0]=n[1]=0,n[2]=a,n},r.lerp=function(n,t,r,a){var u=t[0],e=t[1];return n[0]=u+a*(r[0]-u),n[1]=e+a*(r[1]-e),n},r.random=function(n,t){t=t||1;var r=2*a.RANDOM()*Math.PI;return n[0]=Math.cos(r)*t,n[1]=Math.sin(r)*t,n},r.transformMat2=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u,n[1]=r[1]*a+r[3]*u,n},r.transformMat2d=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u+r[4],n[1]=r[1]*a+r[3]*u+r[5],n},r.transformMat3=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[3]*u+r[6],n[1]=r[1]*a+r[4]*u+r[7],n},r.transformMat4=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[4]*u+r[12],n[1]=r[1]*a+r[5]*u+r[13],n},r.rotate=function(n,t,r,a){var u=t[0]-r[0],e=t[1]-r[1],o=Math.sin(a),c=Math.cos(a);return n[0]=u*c-e*o+r[0],n[1]=u*o+e*c+r[1],n},r.angle=function(n,t){var r=n[0],a=n[1],u=t[0],e=t[1],o=Math.sqrt(r*r+a*a)*Math.sqrt(u*u+e*e),c=o&&(r*u+a*e)/o;return Math.acos(Math.min(Math.max(c,-1),1))},r.zero=function(n){return n[0]=0,n[1]=0,n},r.str=function(n){return\"vec2(\"+n[0]+\", \"+n[1]+\")\"},r.exactEquals=function(n,t){return n[0]===t[0]&&n[1]===t[1]},r.equals=function(n,t){var r=n[0],u=n[1],e=t[0],o=t[1];return Math.abs(r-e)<=a.EPSILON*Math.max(1,Math.abs(r),Math.abs(e))&&Math.abs(u-o)<=a.EPSILON*Math.max(1,Math.abs(u),Math.abs(o))},r.len=s,r.sub=e,r.mul=o,r.div=c,r.dist=i,r.sqrDist=f,r.sqrLen=h,r.forEach=(M=u(),function(n,t,r,a,u,e){var o,c;for(t||(t=2),r||(r=0),c=a?Math.min(a*t+r,n.length):n.length,o=r;o<c;o+=t)M[0]=n[o],M[1]=n[o+1],u(M,M,e),n[o]=M[0],n[o+1]=M[1];return n})},\n      }, \"4e90918c0a\", {\"index\":\"4e90918c0a\",\"models/index\":\"22ae8fda70\",\"models/ace\":\"3343056bd8\",\"models/layout\":\"7116a7a602\",\"models/audio\":\"66d52165db\",\"models/comm_manager\":\"71a9759436\",\"models/deckgl\":\"d0d2aafca0\",\"models/tooltips\":\"064eac2866\",\"models/html\":\"ed08037ce5\",\"models/json\":\"284504a0cf\",\"models/file_download\":\"61c9ac7aac\",\"models/katex\":\"7b859fb3cf\",\"models/mathjax\":\"0c21036737\",\"models/player\":\"79c41bbf71\",\"models/plotly\":\"56da045fbd\",\"models/util\":\"990b5dd5c7\",\"models/progress\":\"76307e5afa\",\"models/state\":\"38b2bc9574\",\"models/vega\":\"294adeb985\",\"models/video\":\"b0c3e9e9c2\",\"models/videostream\":\"3c7145a2fa\",\"models/vtk/index\":\"ecfbb965eb\",\"models/vtk/vtk\":\"5b5e56e89a\",\"models/vtk/vtk_layout\":\"c704c63c0a\",\"models/vtk/vtk_utils\":\"aaf560d219\",\"models/vtk/vtkvolume\":\"729dd26c71\",\"models/vtk/vtkaxes\":\"e23461e5d7\"}, {});\n      })\n\n\n      /* END panel.min.js */\n    },\n    function(Bokeh) {} // ensure no trailing comma for IE\n  ];\n\n  function run_inline_js() {\n    if ((root.Bokeh !== undefined) || (force === true)) {\n      for (var i = 0; i < inline_js.length; i++) {\n        inline_js[i].call(root, root.Bokeh);\n      }} else if (Date.now() < root._bokeh_timeout) {\n      setTimeout(run_inline_js, 100);\n    } else if (!root._bokeh_failed_load) {\n      console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n      root._bokeh_failed_load = true;\n    }\n  }\n\n  if (root._bokeh_is_loading === 0) {\n    console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n    run_inline_js();\n  } else {\n    load_libs(css_urls, js_urls, function() {\n      console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n      run_inline_js();\n    });\n  }\n}(window));"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "if ((window.PyViz === undefined) || (window.PyViz instanceof HTMLElement)) {\n",
       "  window.PyViz = {comms: {}, comm_status:{}, kernels:{}, receivers: {}, plot_index: []}\n",
       "}\n",
       "\n",
       "\n",
       "    function JupyterCommManager() {\n",
       "    }\n",
       "\n",
       "    JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n",
       "      if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n",
       "        var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n",
       "        comm_manager.register_target(comm_id, function(comm) {\n",
       "          comm.on_msg(msg_handler);\n",
       "        });\n",
       "      } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n",
       "        window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n",
       "          comm.onMsg = msg_handler;\n",
       "        });\n",
       "      } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n",
       "        google.colab.kernel.comms.registerTarget(comm_id, (comm) => {\n",
       "          var messages = comm.messages[Symbol.asyncIterator]();\n",
       "          function processIteratorResult(result) {\n",
       "            var message = result.value;\n",
       "            console.log(message)\n",
       "            var content = {data: message.data, comm_id};\n",
       "            var buffers = []\n",
       "            for (var buffer of message.buffers || []) {\n",
       "              buffers.push(new DataView(buffer))\n",
       "            }\n",
       "            var metadata = message.metadata || {};\n",
       "            var msg = {content, buffers, metadata}\n",
       "            msg_handler(msg);\n",
       "            return messages.next().then(processIteratorResult);\n",
       "          }\n",
       "          return messages.next().then(processIteratorResult);\n",
       "        })\n",
       "      }\n",
       "    }\n",
       "\n",
       "    JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n",
       "      if (comm_id in window.PyViz.comms) {\n",
       "        return window.PyViz.comms[comm_id];\n",
       "      } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n",
       "        var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n",
       "        var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n",
       "        if (msg_handler) {\n",
       "          comm.on_msg(msg_handler);\n",
       "        }\n",
       "      } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n",
       "        var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n",
       "        comm.open();\n",
       "        if (msg_handler) {\n",
       "          comm.onMsg = msg_handler;\n",
       "        }\n",
       "      } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n",
       "        var comm_promise = google.colab.kernel.comms.open(comm_id)\n",
       "        comm_promise.then((comm) => {\n",
       "          window.PyViz.comms[comm_id] = comm;\n",
       "          if (msg_handler) {\n",
       "            var messages = comm.messages[Symbol.asyncIterator]();\n",
       "            function processIteratorResult(result) {\n",
       "              var message = result.value;\n",
       "              var content = {data: message.data};\n",
       "              var metadata = message.metadata || {comm_id};\n",
       "              var msg = {content, metadata}\n",
       "              msg_handler(msg);\n",
       "              return messages.next().then(processIteratorResult);\n",
       "            }\n",
       "            return messages.next().then(processIteratorResult);\n",
       "          }\n",
       "        }) \n",
       "        var sendClosure = (data, metadata, buffers, disposeOnDone) => {\n",
       "          return comm_promise.then((comm) => {\n",
       "            comm.send(data, metadata, buffers, disposeOnDone);\n",
       "          });\n",
       "        };\n",
       "        var comm = {\n",
       "          send: sendClosure\n",
       "        };\n",
       "      }\n",
       "      window.PyViz.comms[comm_id] = comm;\n",
       "      return comm;\n",
       "    }\n",
       "    window.PyViz.comm_manager = new JupyterCommManager();\n",
       "    \n",
       "\n",
       "\n",
       "var JS_MIME_TYPE = 'application/javascript';\n",
       "var HTML_MIME_TYPE = 'text/html';\n",
       "var EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\n",
       "var CLASS_NAME = 'output';\n",
       "\n",
       "/**\n",
       " * Render data to the DOM node\n",
       " */\n",
       "function render(props, node) {\n",
       "  var div = document.createElement(\"div\");\n",
       "  var script = document.createElement(\"script\");\n",
       "  node.appendChild(div);\n",
       "  node.appendChild(script);\n",
       "}\n",
       "\n",
       "/**\n",
       " * Handle when a new output is added\n",
       " */\n",
       "function handle_add_output(event, handle) {\n",
       "  var output_area = handle.output_area;\n",
       "  var output = handle.output;\n",
       "  if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n",
       "    return\n",
       "  }\n",
       "  var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n",
       "  var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n",
       "  if (id !== undefined) {\n",
       "    var nchildren = toinsert.length;\n",
       "    var html_node = toinsert[nchildren-1].children[0];\n",
       "    html_node.innerHTML = output.data[HTML_MIME_TYPE];\n",
       "    var scripts = [];\n",
       "    var nodelist = html_node.querySelectorAll(\"script\");\n",
       "    for (var i in nodelist) {\n",
       "      if (nodelist.hasOwnProperty(i)) {\n",
       "        scripts.push(nodelist[i])\n",
       "      }\n",
       "    }\n",
       "\n",
       "    scripts.forEach( function (oldScript) {\n",
       "      var newScript = document.createElement(\"script\");\n",
       "      var attrs = [];\n",
       "      var nodemap = oldScript.attributes;\n",
       "      for (var j in nodemap) {\n",
       "        if (nodemap.hasOwnProperty(j)) {\n",
       "          attrs.push(nodemap[j])\n",
       "        }\n",
       "      }\n",
       "      attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n",
       "      newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n",
       "      oldScript.parentNode.replaceChild(newScript, oldScript);\n",
       "    });\n",
       "    if (JS_MIME_TYPE in output.data) {\n",
       "      toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n",
       "    }\n",
       "    output_area._hv_plot_id = id;\n",
       "    if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n",
       "      window.PyViz.plot_index[id] = Bokeh.index[id];\n",
       "    } else {\n",
       "      window.PyViz.plot_index[id] = null;\n",
       "    }\n",
       "  } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n",
       "    var bk_div = document.createElement(\"div\");\n",
       "    bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n",
       "    var script_attrs = bk_div.children[0].attributes;\n",
       "    for (var i = 0; i < script_attrs.length; i++) {\n",
       "      toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\n",
       "    }\n",
       "    // store reference to server id on output_area\n",
       "    output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n",
       "  }\n",
       "}\n",
       "\n",
       "/**\n",
       " * Handle when an output is cleared or removed\n",
       " */\n",
       "function handle_clear_output(event, handle) {\n",
       "  var id = handle.cell.output_area._hv_plot_id;\n",
       "  var server_id = handle.cell.output_area._bokeh_server_id;\n",
       "  if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n",
       "  var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n",
       "  if (server_id !== null) {\n",
       "    comm.send({event_type: 'server_delete', 'id': server_id});\n",
       "    return;\n",
       "  } else if (comm !== null) {\n",
       "    comm.send({event_type: 'delete', 'id': id});\n",
       "  }\n",
       "  delete PyViz.plot_index[id];\n",
       "  if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n",
       "    var doc = window.Bokeh.index[id].model.document\n",
       "    doc.clear();\n",
       "    const i = window.Bokeh.documents.indexOf(doc);\n",
       "    if (i > -1) {\n",
       "      window.Bokeh.documents.splice(i, 1);\n",
       "    }\n",
       "  }\n",
       "}\n",
       "\n",
       "/**\n",
       " * Handle kernel restart event\n",
       " */\n",
       "function handle_kernel_cleanup(event, handle) {\n",
       "  delete PyViz.comms[\"hv-extension-comm\"];\n",
       "  window.PyViz.plot_index = {}\n",
       "}\n",
       "\n",
       "/**\n",
       " * Handle update_display_data messages\n",
       " */\n",
       "function handle_update_output(event, handle) {\n",
       "  handle_clear_output(event, {cell: {output_area: handle.output_area}})\n",
       "  handle_add_output(event, handle)\n",
       "}\n",
       "\n",
       "function register_renderer(events, OutputArea) {\n",
       "  function append_mime(data, metadata, element) {\n",
       "    // create a DOM node to render to\n",
       "    var toinsert = this.create_output_subarea(\n",
       "    metadata,\n",
       "    CLASS_NAME,\n",
       "    EXEC_MIME_TYPE\n",
       "    );\n",
       "    this.keyboard_manager.register_events(toinsert);\n",
       "    // Render to node\n",
       "    var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n",
       "    render(props, toinsert[0]);\n",
       "    element.append(toinsert);\n",
       "    return toinsert\n",
       "  }\n",
       "\n",
       "  events.on('output_added.OutputArea', handle_add_output);\n",
       "  events.on('output_updated.OutputArea', handle_update_output);\n",
       "  events.on('clear_output.CodeCell', handle_clear_output);\n",
       "  events.on('delete.Cell', handle_clear_output);\n",
       "  events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n",
       "\n",
       "  OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n",
       "    safe: true,\n",
       "    index: 0\n",
       "  });\n",
       "}\n",
       "\n",
       "if (window.Jupyter !== undefined) {\n",
       "  try {\n",
       "    var events = require('base/js/events');\n",
       "    var OutputArea = require('notebook/js/outputarea').OutputArea;\n",
       "    if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n",
       "      register_renderer(events, OutputArea);\n",
       "    }\n",
       "  } catch(err) {\n",
       "  }\n",
       "}\n"
      ],
      "application/vnd.holoviews_load.v0+json": "\nif ((window.PyViz === undefined) || (window.PyViz instanceof HTMLElement)) {\n  window.PyViz = {comms: {}, comm_status:{}, kernels:{}, receivers: {}, plot_index: []}\n}\n\n\n    function JupyterCommManager() {\n    }\n\n    JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n      if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n        var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n        comm_manager.register_target(comm_id, function(comm) {\n          comm.on_msg(msg_handler);\n        });\n      } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n        window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n          comm.onMsg = msg_handler;\n        });\n      } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n        google.colab.kernel.comms.registerTarget(comm_id, (comm) => {\n          var messages = comm.messages[Symbol.asyncIterator]();\n          function processIteratorResult(result) {\n            var message = result.value;\n            console.log(message)\n            var content = {data: message.data, comm_id};\n            var buffers = []\n            for (var buffer of message.buffers || []) {\n              buffers.push(new DataView(buffer))\n            }\n            var metadata = message.metadata || {};\n            var msg = {content, buffers, metadata}\n            msg_handler(msg);\n            return messages.next().then(processIteratorResult);\n          }\n          return messages.next().then(processIteratorResult);\n        })\n      }\n    }\n\n    JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n      if (comm_id in window.PyViz.comms) {\n        return window.PyViz.comms[comm_id];\n      } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n        var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n        var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n        if (msg_handler) {\n          comm.on_msg(msg_handler);\n        }\n      } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n        var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n        comm.open();\n        if (msg_handler) {\n          comm.onMsg = msg_handler;\n        }\n      } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n        var comm_promise = google.colab.kernel.comms.open(comm_id)\n        comm_promise.then((comm) => {\n          window.PyViz.comms[comm_id] = comm;\n          if (msg_handler) {\n            var messages = comm.messages[Symbol.asyncIterator]();\n            function processIteratorResult(result) {\n              var message = result.value;\n              var content = {data: message.data};\n              var metadata = message.metadata || {comm_id};\n              var msg = {content, metadata}\n              msg_handler(msg);\n              return messages.next().then(processIteratorResult);\n            }\n            return messages.next().then(processIteratorResult);\n          }\n        }) \n        var sendClosure = (data, metadata, buffers, disposeOnDone) => {\n          return comm_promise.then((comm) => {\n            comm.send(data, metadata, buffers, disposeOnDone);\n          });\n        };\n        var comm = {\n          send: sendClosure\n        };\n      }\n      window.PyViz.comms[comm_id] = comm;\n      return comm;\n    }\n    window.PyViz.comm_manager = new JupyterCommManager();\n    \n\n\nvar JS_MIME_TYPE = 'application/javascript';\nvar HTML_MIME_TYPE = 'text/html';\nvar EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\nvar CLASS_NAME = 'output';\n\n/**\n * Render data to the DOM node\n */\nfunction render(props, node) {\n  var div = document.createElement(\"div\");\n  var script = document.createElement(\"script\");\n  node.appendChild(div);\n  node.appendChild(script);\n}\n\n/**\n * Handle when a new output is added\n */\nfunction handle_add_output(event, handle) {\n  var output_area = handle.output_area;\n  var output = handle.output;\n  if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n    return\n  }\n  var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n  var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n  if (id !== undefined) {\n    var nchildren = toinsert.length;\n    var html_node = toinsert[nchildren-1].children[0];\n    html_node.innerHTML = output.data[HTML_MIME_TYPE];\n    var scripts = [];\n    var nodelist = html_node.querySelectorAll(\"script\");\n    for (var i in nodelist) {\n      if (nodelist.hasOwnProperty(i)) {\n        scripts.push(nodelist[i])\n      }\n    }\n\n    scripts.forEach( function (oldScript) {\n      var newScript = document.createElement(\"script\");\n      var attrs = [];\n      var nodemap = oldScript.attributes;\n      for (var j in nodemap) {\n        if (nodemap.hasOwnProperty(j)) {\n          attrs.push(nodemap[j])\n        }\n      }\n      attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n      newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n      oldScript.parentNode.replaceChild(newScript, oldScript);\n    });\n    if (JS_MIME_TYPE in output.data) {\n      toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n    }\n    output_area._hv_plot_id = id;\n    if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n      window.PyViz.plot_index[id] = Bokeh.index[id];\n    } else {\n      window.PyViz.plot_index[id] = null;\n    }\n  } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n    var bk_div = document.createElement(\"div\");\n    bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n    var script_attrs = bk_div.children[0].attributes;\n    for (var i = 0; i < script_attrs.length; i++) {\n      toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\n    }\n    // store reference to server id on output_area\n    output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n  }\n}\n\n/**\n * Handle when an output is cleared or removed\n */\nfunction handle_clear_output(event, handle) {\n  var id = handle.cell.output_area._hv_plot_id;\n  var server_id = handle.cell.output_area._bokeh_server_id;\n  if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n  var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n  if (server_id !== null) {\n    comm.send({event_type: 'server_delete', 'id': server_id});\n    return;\n  } else if (comm !== null) {\n    comm.send({event_type: 'delete', 'id': id});\n  }\n  delete PyViz.plot_index[id];\n  if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n    var doc = window.Bokeh.index[id].model.document\n    doc.clear();\n    const i = window.Bokeh.documents.indexOf(doc);\n    if (i > -1) {\n      window.Bokeh.documents.splice(i, 1);\n    }\n  }\n}\n\n/**\n * Handle kernel restart event\n */\nfunction handle_kernel_cleanup(event, handle) {\n  delete PyViz.comms[\"hv-extension-comm\"];\n  window.PyViz.plot_index = {}\n}\n\n/**\n * Handle update_display_data messages\n */\nfunction handle_update_output(event, handle) {\n  handle_clear_output(event, {cell: {output_area: handle.output_area}})\n  handle_add_output(event, handle)\n}\n\nfunction register_renderer(events, OutputArea) {\n  function append_mime(data, metadata, element) {\n    // create a DOM node to render to\n    var toinsert = this.create_output_subarea(\n    metadata,\n    CLASS_NAME,\n    EXEC_MIME_TYPE\n    );\n    this.keyboard_manager.register_events(toinsert);\n    // Render to node\n    var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n    render(props, toinsert[0]);\n    element.append(toinsert);\n    return toinsert\n  }\n\n  events.on('output_added.OutputArea', handle_add_output);\n  events.on('output_updated.OutputArea', handle_update_output);\n  events.on('clear_output.CodeCell', handle_clear_output);\n  events.on('delete.Cell', handle_clear_output);\n  events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n\n  OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n    safe: true,\n    index: 0\n  });\n}\n\nif (window.Jupyter !== undefined) {\n  try {\n    var events = require('base/js/events');\n    var OutputArea = require('notebook/js/outputarea').OutputArea;\n    if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n      register_renderer(events, OutputArea);\n    }\n  } catch(err) {\n  }\n}\n"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import csv\n",
    "from functools import reduce\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import panel as pn\n",
    "import plotly.express as px\n",
    "import statsmodels\n",
    "\n",
    "pn.extension()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true
   },
   "source": [
    "## Read in data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "The data in the file published_dataverses_datasets_in_hdv.tab was exported from a copy of the Harvard Dataverse database on November 7, 2020."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "hidden": true
   },
   "outputs": [],
   "source": [
    "publishedDepositsDF = pd.read_csv('published_dataverses_datasets_in_hdv.tab', sep='\\t', na_filter = False)\n",
    "\n",
    "# Create new user_account_type for builtin accounts whose email domain contains \".edu\"\n",
    "publishedDepositsDF.loc[\n",
    "    (publishedDepositsDF['user_account_type'] == 'builtin') &\n",
    "    (publishedDepositsDF['account_email_domain'].str.contains('.edu')),\n",
    "    'user_account_type'] = 'builtin (.edu)'\n",
    "publishedDepositsDF.loc[\n",
    "    (publishedDepositsDF['user_account_type'] == 'builtin'),\n",
    "    'user_account_type'] = 'builtin (not .edu)'\n",
    "\n",
    "# Make sure values in date columns are interpreted as dates\n",
    "dateColumns = ['deposit_createdate', 'deposit_publicationdate', 'user_account_createdate']\n",
    "publishedDepositsDF[dateColumns] = publishedDepositsDF[dateColumns].apply(pd.to_datetime)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(41610, 10)\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>deposit_id</th>\n",
       "      <th>deposit_type</th>\n",
       "      <th>deposit_createdate</th>\n",
       "      <th>deposit_publicationdate</th>\n",
       "      <th>deposit_parent_dataverse</th>\n",
       "      <th>user_account_id_of_deposit</th>\n",
       "      <th>user_account_createdate</th>\n",
       "      <th>user_account_type</th>\n",
       "      <th>affiliation</th>\n",
       "      <th>account_email_domain</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2839889</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>2016-06-08</td>\n",
       "      <td>2016-06-08</td>\n",
       "      <td>1</td>\n",
       "      <td>14473</td>\n",
       "      <td>2000-01-01</td>\n",
       "      <td>builtin (not .edu)</td>\n",
       "      <td>Stanford University</td>\n",
       "      <td>gmail.com</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2840637</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>2016-06-13</td>\n",
       "      <td>2017-06-14</td>\n",
       "      <td>1</td>\n",
       "      <td>14508</td>\n",
       "      <td>2000-01-01</td>\n",
       "      <td>builtin (not .edu)</td>\n",
       "      <td></td>\n",
       "      <td>gmail.com</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>644</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>2009-07-27</td>\n",
       "      <td>2011-06-15</td>\n",
       "      <td>1</td>\n",
       "      <td>1417</td>\n",
       "      <td>2000-01-01</td>\n",
       "      <td>builtin (not .edu)</td>\n",
       "      <td>International Christian University</td>\n",
       "      <td>icu.ac.jp</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2840679</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>2016-06-13</td>\n",
       "      <td>2017-06-23</td>\n",
       "      <td>1</td>\n",
       "      <td>14507</td>\n",
       "      <td>2000-01-01</td>\n",
       "      <td>builtin (.edu)</td>\n",
       "      <td></td>\n",
       "      <td>jhu.edu</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>646</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>2009-07-29</td>\n",
       "      <td>2009-07-29</td>\n",
       "      <td>1</td>\n",
       "      <td>1425</td>\n",
       "      <td>2000-01-01</td>\n",
       "      <td>builtin (.edu)</td>\n",
       "      <td>Harvard University</td>\n",
       "      <td>wjh.harvard.edu</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   deposit_id deposit_type deposit_createdate deposit_publicationdate  \\\n",
       "0     2839889    Dataverse         2016-06-08              2016-06-08   \n",
       "1     2840637    Dataverse         2016-06-13              2017-06-14   \n",
       "2         644    Dataverse         2009-07-27              2011-06-15   \n",
       "3     2840679    Dataverse         2016-06-13              2017-06-23   \n",
       "4         646    Dataverse         2009-07-29              2009-07-29   \n",
       "\n",
       "  deposit_parent_dataverse  user_account_id_of_deposit  \\\n",
       "0                        1                       14473   \n",
       "1                        1                       14508   \n",
       "2                        1                        1417   \n",
       "3                        1                       14507   \n",
       "4                        1                        1425   \n",
       "\n",
       "  user_account_createdate   user_account_type  \\\n",
       "0              2000-01-01  builtin (not .edu)   \n",
       "1              2000-01-01  builtin (not .edu)   \n",
       "2              2000-01-01  builtin (not .edu)   \n",
       "3              2000-01-01      builtin (.edu)   \n",
       "4              2000-01-01      builtin (.edu)   \n",
       "\n",
       "                          affiliation account_email_domain  \n",
       "0                 Stanford University            gmail.com  \n",
       "1                                                gmail.com  \n",
       "2  International Christian University            icu.ac.jp  \n",
       "3                                                  jhu.edu  \n",
       "4                  Harvard University      wjh.harvard.edu  "
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "print(publishedDepositsDF.shape)\n",
    "publishedDepositsDF.head(5)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Analysis"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true
   },
   "source": [
    "## Over the last two years, how many datasets and dataverses have been created in Harvard Dataverse's \"Root\" dataverse each day?"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "hidden": true
   },
   "source": [
    "### Create and check filtered dataframe"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "hidden": true
   },
   "outputs": [],
   "source": [
    "dailyCountbyDType = (\n",
    "    publishedDepositsDF.query(\n",
    "        'deposit_parent_dataverse == \"1\"\\\n",
    "        & deposit_createdate > \"2018-10-31\"\\\n",
    "        & deposit_createdate < \"2020-11-01\"')\n",
    "    \n",
    "    # Retain only these columns\n",
    "    [['deposit_id', 'deposit_createdate', 'deposit_type']]\n",
    "    \n",
    "    .groupby(['deposit_createdate', 'deposit_type']).count()\n",
    "    .sort_values(by=['deposit_createdate'], ascending=True)\n",
    "    .rename(columns={'deposit_id': 'count'})\n",
    ")\n",
    "\n",
    "# Reset dataframe index (so that values in deposit_createdate repeat)\n",
    "dailyCountbyDType.reset_index(drop=False, inplace=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>deposit_createdate</th>\n",
       "      <th>deposit_type</th>\n",
       "      <th>count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2018-11-01</td>\n",
       "      <td>Dataset</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2018-11-01</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>Dataset</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>Dataverse</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2018-11-03</td>\n",
       "      <td>Dataset</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  deposit_createdate deposit_type  count\n",
       "0         2018-11-01      Dataset      1\n",
       "1         2018-11-01    Dataverse      1\n",
       "2         2018-11-02      Dataset      6\n",
       "3         2018-11-02    Dataverse      1\n",
       "4         2018-11-03      Dataset      1"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dailyCountbyDType.head(5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "### Graph how many datasets and dataverses have been created each day over last two years"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "        <script type=\"text/javascript\">\n",
       "        window.PlotlyConfig = {MathJaxConfig: 'local'};\n",
       "        if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}\n",
       "        if (typeof require !== 'undefined') {\n",
       "        require.undef(\"plotly\");\n",
       "        define('plotly', function(require, exports, module) {\n",
       "            /**\n",
       "* plotly.js v1.56.0\n",
       "* Copyright 2012-2020, Plotly, Inc.\n",
       "* All rights reserved.\n",
       "* Licensed under the MIT license\n",
       "*/\n",
       "!function(t){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{(\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this).Plotly=t()}}((function(){return function t(e,r,n){function a(o,s){if(!r[o]){if(!e[o]){var l=\"function\"==typeof require&&require;if(!s&&l)return l(o,!0);if(i)return i(o,!0);var c=new Error(\"Cannot find module '\"+o+\"'\");throw c.code=\"MODULE_NOT_FOUND\",c}var u=r[o]={exports:{}};e[o][0].call(u.exports,(function(t){return a(e[o][1][t]||t)}),u,u.exports,t,e,r,n)}return r[o].exports}for(var i=\"function\"==typeof require&&require,o=0;o<n.length;o++)a(n[o]);return a}({1:[function(t,e,r){\"use strict\";var n=t(\"../src/lib\"),a={\"X,X div\":\"direction:ltr;font-family:'Open Sans', verdana, arial, sans-serif;margin:0;padding:0;\",\"X input,X button\":\"font-family:'Open Sans', verdana, arial, sans-serif;\",\"X input:focus,X button:focus\":\"outline:none;\",\"X a\":\"text-decoration:none;\",\"X a:hover\":\"text-decoration:none;\",\"X .crisp\":\"shape-rendering:crispEdges;\",\"X .user-select-none\":\"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;\",\"X svg\":\"overflow:hidden;\",\"X svg a\":\"fill:#447adb;\",\"X svg a:hover\":\"fill:#3c6dc5;\",\"X .main-svg\":\"position:absolute;top:0;left:0;pointer-events:none;\",\"X .main-svg .draglayer\":\"pointer-events:all;\",\"X .cursor-default\":\"cursor:default;\",\"X .cursor-pointer\":\"cursor:pointer;\",\"X .cursor-crosshair\":\"cursor:crosshair;\",\"X .cursor-move\":\"cursor:move;\",\"X .cursor-col-resize\":\"cursor:col-resize;\",\"X .cursor-row-resize\":\"cursor:row-resize;\",\"X .cursor-ns-resize\":\"cursor:ns-resize;\",\"X .cursor-ew-resize\":\"cursor:ew-resize;\",\"X .cursor-sw-resize\":\"cursor:sw-resize;\",\"X .cursor-s-resize\":\"cursor:s-resize;\",\"X .cursor-se-resize\":\"cursor:se-resize;\",\"X .cursor-w-resize\":\"cursor:w-resize;\",\"X .cursor-e-resize\":\"cursor:e-resize;\",\"X .cursor-nw-resize\":\"cursor:nw-resize;\",\"X .cursor-n-resize\":\"cursor:n-resize;\",\"X .cursor-ne-resize\":\"cursor:ne-resize;\",\"X .cursor-grab\":\"cursor:-webkit-grab;cursor:grab;\",\"X .modebar\":\"position:absolute;top:2px;right:2px;\",\"X .ease-bg\":\"-webkit-transition:background-color 0.3s ease 0s;-moz-transition:background-color 0.3s ease 0s;-ms-transition:background-color 0.3s ease 0s;-o-transition:background-color 0.3s ease 0s;transition:background-color 0.3s ease 0s;\",\"X .modebar--hover>:not(.watermark)\":\"opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;\",\"X:hover .modebar--hover .modebar-group\":\"opacity:1;\",\"X .modebar-group\":\"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;\",\"X .modebar-btn\":\"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;\",\"X .modebar-btn svg\":\"position:relative;top:2px;\",\"X .modebar.vertical\":\"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;\",\"X .modebar.vertical svg\":\"top:-1px;\",\"X .modebar.vertical .modebar-group\":\"display:block;float:none;padding-left:0px;padding-bottom:8px;\",\"X .modebar.vertical .modebar-group .modebar-btn\":\"display:block;text-align:center;\",\"X [data-title]:before,X [data-title]:after\":\"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;\",\"X [data-title]:hover:before,X [data-title]:hover:after\":\"display:block;opacity:1;\",\"X [data-title]:before\":\"content:'';position:absolute;background:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;\",\"X [data-title]:after\":\"content:attr(data-title);background:#69738a;color:white;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;\",\"X .vertical [data-title]:before,X .vertical [data-title]:after\":\"top:0%;right:200%;\",\"X .vertical [data-title]:before\":\"border:6px solid transparent;border-left-color:#69738a;margin-top:8px;margin-right:-30px;\",\"X .select-outline\":\"fill:none;stroke-width:1;shape-rendering:crispEdges;\",\"X .select-outline-1\":\"stroke:white;\",\"X .select-outline-2\":\"stroke:black;stroke-dasharray:2px 2px;\",Y:\"font-family:'Open Sans', verdana, arial, sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;\",\"Y p\":\"margin:0;\",\"Y .notifier-note\":\"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,0.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;\",\"Y .notifier-close\":\"color:#fff;opacity:0.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;\",\"Y .notifier-close:hover\":\"color:#444;text-decoration:none;cursor:pointer;\"};for(var i in a){var o=i.replace(/^,/,\" ,\").replace(/X/g,\".js-plotly-plot .plotly\").replace(/Y/g,\".plotly-notifier\");n.addStyleRule(o,a[i])}},{\"../src/lib\":749}],2:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/aggregate\")},{\"../src/transforms/aggregate\":1334}],3:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/bar\")},{\"../src/traces/bar\":899}],4:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/barpolar\")},{\"../src/traces/barpolar\":912}],5:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/box\")},{\"../src/traces/box\":922}],6:[function(t,e,r){\"use strict\";e.exports=t(\"../src/components/calendars\")},{\"../src/components/calendars\":613}],7:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/candlestick\")},{\"../src/traces/candlestick\":931}],8:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/carpet\")},{\"../src/traces/carpet\":950}],9:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/choropleth\")},{\"../src/traces/choropleth\":964}],10:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/choroplethmapbox\")},{\"../src/traces/choroplethmapbox\":971}],11:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/cone\")},{\"../src/traces/cone\":977}],12:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/contour\")},{\"../src/traces/contour\":992}],13:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/contourcarpet\")},{\"../src/traces/contourcarpet\":1003}],14:[function(t,e,r){\"use strict\";e.exports=t(\"../src/core\")},{\"../src/core\":726}],15:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/densitymapbox\")},{\"../src/traces/densitymapbox\":1011}],16:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/filter\")},{\"../src/transforms/filter\":1335}],17:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/funnel\")},{\"../src/traces/funnel\":1021}],18:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/funnelarea\")},{\"../src/traces/funnelarea\":1030}],19:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/groupby\")},{\"../src/transforms/groupby\":1336}],20:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/heatmap\")},{\"../src/traces/heatmap\":1043}],21:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/heatmapgl\")},{\"../src/traces/heatmapgl\":1053}],22:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/histogram\")},{\"../src/traces/histogram\":1065}],23:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/histogram2d\")},{\"../src/traces/histogram2d\":1071}],24:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/histogram2dcontour\")},{\"../src/traces/histogram2dcontour\":1075}],25:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/image\")},{\"../src/traces/image\":1082}],26:[function(t,e,r){\"use strict\";var n=t(\"./core\");n.register([t(\"./bar\"),t(\"./box\"),t(\"./heatmap\"),t(\"./histogram\"),t(\"./histogram2d\"),t(\"./histogram2dcontour\"),t(\"./contour\"),t(\"./scatterternary\"),t(\"./violin\"),t(\"./funnel\"),t(\"./waterfall\"),t(\"./image\"),t(\"./pie\"),t(\"./sunburst\"),t(\"./treemap\"),t(\"./funnelarea\"),t(\"./scatter3d\"),t(\"./surface\"),t(\"./isosurface\"),t(\"./volume\"),t(\"./mesh3d\"),t(\"./cone\"),t(\"./streamtube\"),t(\"./scattergeo\"),t(\"./choropleth\"),t(\"./scattergl\"),t(\"./splom\"),t(\"./pointcloud\"),t(\"./heatmapgl\"),t(\"./parcoords\"),t(\"./parcats\"),t(\"./scattermapbox\"),t(\"./choroplethmapbox\"),t(\"./densitymapbox\"),t(\"./sankey\"),t(\"./indicator\"),t(\"./table\"),t(\"./carpet\"),t(\"./scattercarpet\"),t(\"./contourcarpet\"),t(\"./ohlc\"),t(\"./candlestick\"),t(\"./scatterpolar\"),t(\"./scatterpolargl\"),t(\"./barpolar\")]),n.register([t(\"./aggregate\"),t(\"./filter\"),t(\"./groupby\"),t(\"./sort\")]),n.register([t(\"./calendars\")]),e.exports=n},{\"./aggregate\":2,\"./bar\":3,\"./barpolar\":4,\"./box\":5,\"./calendars\":6,\"./candlestick\":7,\"./carpet\":8,\"./choropleth\":9,\"./choroplethmapbox\":10,\"./cone\":11,\"./contour\":12,\"./contourcarpet\":13,\"./core\":14,\"./densitymapbox\":15,\"./filter\":16,\"./funnel\":17,\"./funnelarea\":18,\"./groupby\":19,\"./heatmap\":20,\"./heatmapgl\":21,\"./histogram\":22,\"./histogram2d\":23,\"./histogram2dcontour\":24,\"./image\":25,\"./indicator\":27,\"./isosurface\":28,\"./mesh3d\":29,\"./ohlc\":30,\"./parcats\":31,\"./parcoords\":32,\"./pie\":33,\"./pointcloud\":34,\"./sankey\":35,\"./scatter3d\":36,\"./scattercarpet\":37,\"./scattergeo\":38,\"./scattergl\":39,\"./scattermapbox\":40,\"./scatterpolar\":41,\"./scatterpolargl\":42,\"./scatterternary\":43,\"./sort\":44,\"./splom\":45,\"./streamtube\":46,\"./sunburst\":47,\"./surface\":48,\"./table\":49,\"./treemap\":50,\"./violin\":51,\"./volume\":52,\"./waterfall\":53}],27:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/indicator\")},{\"../src/traces/indicator\":1090}],28:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/isosurface\")},{\"../src/traces/isosurface\":1096}],29:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/mesh3d\")},{\"../src/traces/mesh3d\":1101}],30:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/ohlc\")},{\"../src/traces/ohlc\":1106}],31:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/parcats\")},{\"../src/traces/parcats\":1115}],32:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/parcoords\")},{\"../src/traces/parcoords\":1125}],33:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/pie\")},{\"../src/traces/pie\":1136}],34:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/pointcloud\")},{\"../src/traces/pointcloud\":1145}],35:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/sankey\")},{\"../src/traces/sankey\":1151}],36:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatter3d\")},{\"../src/traces/scatter3d\":1189}],37:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattercarpet\")},{\"../src/traces/scattercarpet\":1196}],38:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattergeo\")},{\"../src/traces/scattergeo\":1204}],39:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattergl\")},{\"../src/traces/scattergl\":1217}],40:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattermapbox\")},{\"../src/traces/scattermapbox\":1227}],41:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatterpolar\")},{\"../src/traces/scatterpolar\":1235}],42:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatterpolargl\")},{\"../src/traces/scatterpolargl\":1242}],43:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatterternary\")},{\"../src/traces/scatterternary\":1250}],44:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/sort\")},{\"../src/transforms/sort\":1338}],45:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/splom\")},{\"../src/traces/splom\":1259}],46:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/streamtube\")},{\"../src/traces/streamtube\":1267}],47:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/sunburst\")},{\"../src/traces/sunburst\":1275}],48:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/surface\")},{\"../src/traces/surface\":1284}],49:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/table\")},{\"../src/traces/table\":1292}],50:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/treemap\")},{\"../src/traces/treemap\":1301}],51:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/violin\")},{\"../src/traces/violin\":1313}],52:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/volume\")},{\"../src/traces/volume\":1321}],53:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/waterfall\")},{\"../src/traces/waterfall\":1329}],54:[function(t,e,r){\"use strict\";e.exports=function(t){var e=(t=t||{}).eye||[0,0,1],r=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,1/0],c=t.mode||\"turntable\",u=n(),h=a(),f=i();return u.setDistanceLimits(l[0],l[1]),u.lookAt(0,e,r,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,r,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,e,r,s),new o({turntable:u,orbit:h,matrix:f},c)};var n=t(\"turntable-camera-controller\"),a=t(\"orbit-camera-controller\"),i=t(\"matrix-camera-controller\");function o(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map((function(e){return t[e]})),this._mode=e,this._active=t[e],this._active||(this._mode=\"turntable\",this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=o.prototype;[[\"flush\",1],[\"idle\",1],[\"lookAt\",4],[\"rotate\",4],[\"pan\",4],[\"translate\",4],[\"setMatrix\",2],[\"setDistanceLimits\",2],[\"setDistance\",2]].forEach((function(t){for(var e=t[0],r=[],n=0;n<t[1];++n)r.push(\"a\"+n);var a=\"var cc=this._controllerList;for(var i=0;i<cc.length;++i){cc[i].\"+t[0]+\"(\"+r.join()+\")}\";s[e]=Function.apply(null,r.concat(a))})),s.recalcMatrix=function(t){this._active.recalcMatrix(t)},s.getDistance=function(t){return this._active.getDistance(t)},s.getDistanceLimits=function(t){return this._active.getDistanceLimits(t)},s.lastT=function(){return this._active.lastT()},s.setMode=function(t){if(t!==this._mode){var e=this._controllerNames.indexOf(t);if(!(e<0)){var r=this._active,n=this._controllerList[e],a=Math.max(r.lastT(),n.lastT());r.recalcMatrix(a),n.setMatrix(a,r.computedMatrix),this._active=n,this._mode=t,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}}},s.getMode=function(){return this._mode}},{\"matrix-camera-controller\":454,\"orbit-camera-controller\":475,\"turntable-camera-controller\":553}],55:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-array\"),t(\"d3-collection\"),t(\"d3-shape\"),t(\"elementary-circuits-directed-graph\")):a(n.d3=n.d3||{},n.d3,n.d3,n.d3,null)}(this,(function(t,e,r,n,a){\"use strict\";function i(t){return t.target.depth}function o(t,e){return t.sourceLinks.length?t.depth:e-1}function s(t){return function(){return t}}a=a&&a.hasOwnProperty(\"default\")?a.default:a;var l=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t};function c(t,e){return h(t.source,e.source)||t.index-e.index}function u(t,e){return h(t.target,e.target)||t.index-e.index}function h(t,e){return t.partOfCycle===e.partOfCycle?t.y0-e.y0:\"top\"===t.circularLinkType||\"bottom\"===e.circularLinkType?-1:1}function f(t){return t.value}function p(t){return(t.y0+t.y1)/2}function d(t){return p(t.source)}function g(t){return p(t.target)}function m(t){return t.index}function v(t){return t.nodes}function y(t){return t.links}function x(t,e){var r=t.get(e);if(!r)throw new Error(\"missing: \"+e);return r}function b(t,e){return e(t)}function _(t,e,r){var n=0;if(null===r){for(var i=[],o=0;o<t.links.length;o++){var s=t.links[o],l=s.source.index,c=s.target.index;i[l]||(i[l]=[]),i[c]||(i[c]=[]),-1===i[l].indexOf(c)&&i[l].push(c)}var u=a(i);u.sort((function(t,e){return t.length-e.length}));var h={};for(o=0;o<u.length;o++){var f=u[o].slice(-2);h[f[0]]||(h[f[0]]={}),h[f[0]][f[1]]=!0}t.links.forEach((function(t){var e=t.target.index,r=t.source.index;e===r||h[r]&&h[r][e]?(t.circular=!0,t.circularLinkID=n,n+=1):t.circular=!1}))}else t.links.forEach((function(t){t.source[r]<t.target[r]?t.circular=!1:(t.circular=!0,t.circularLinkID=n,n+=1)}))}function w(t,e){var r=0,n=0;t.links.forEach((function(a){a.circular&&(a.source.circularLinkType||a.target.circularLinkType?a.circularLinkType=a.source.circularLinkType?a.source.circularLinkType:a.target.circularLinkType:a.circularLinkType=r<n?\"top\":\"bottom\",\"top\"==a.circularLinkType?r+=1:n+=1,t.nodes.forEach((function(t){b(t,e)!=b(a.source,e)&&b(t,e)!=b(a.target,e)||(t.circularLinkType=a.circularLinkType)})))})),t.links.forEach((function(t){t.circular&&(t.source.circularLinkType==t.target.circularLinkType&&(t.circularLinkType=t.source.circularLinkType),H(t,e)&&(t.circularLinkType=t.source.circularLinkType))}))}function T(t){var e=Math.abs(t.y1-t.y0),r=Math.abs(t.target.x0-t.source.x1);return Math.atan(r/e)}function k(t,e){var r=0;t.sourceLinks.forEach((function(t){r=t.circular&&!H(t,e)?r+1:r}));var n=0;return t.targetLinks.forEach((function(t){n=t.circular&&!H(t,e)?n+1:n})),r+n}function M(t){var e=t.source.sourceLinks,r=0;e.forEach((function(t){r=t.circular?r+1:r}));var n=t.target.targetLinks,a=0;return n.forEach((function(t){a=t.circular?a+1:a})),!(r>1||a>1)}function A(t,e,r){return t.sort(E),t.forEach((function(n,a){var i,o,s=0;if(H(n,r)&&M(n))n.circularPathData.verticalBuffer=s+n.width/2;else{for(var l=0;l<a;l++)if(i=t[a],o=t[l],!(i.source.column<o.target.column||i.target.column>o.source.column)){var c=t[l].circularPathData.verticalBuffer+t[l].width/2+e;s=c>s?c:s}n.circularPathData.verticalBuffer=s+n.width/2}})),t}function S(t,r,a,i){var o=e.min(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),A(t.links.filter((function(t){return\"top\"==t.circularLinkType})),r,i),A(t.links.filter((function(t){return\"bottom\"==t.circularLinkType})),r,i),t.links.forEach((function(e){if(e.circular){if(e.circularPathData.arcRadius=e.width+10,e.circularPathData.leftNodeBuffer=5,e.circularPathData.rightNodeBuffer=5,e.circularPathData.sourceWidth=e.source.x1-e.source.x0,e.circularPathData.sourceX=e.source.x0+e.circularPathData.sourceWidth,e.circularPathData.targetX=e.target.x0,e.circularPathData.sourceY=e.y0,e.circularPathData.targetY=e.y1,H(e,i)&&M(e))e.circularPathData.leftSmallArcRadius=10+e.width/2,e.circularPathData.leftLargeArcRadius=10+e.width/2,e.circularPathData.rightSmallArcRadius=10+e.width/2,e.circularPathData.rightLargeArcRadius=10+e.width/2,\"bottom\"==e.circularLinkType?(e.circularPathData.verticalFullExtent=e.source.y1+25+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=e.source.y0-25-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius);else{var s=e.source.column,l=e.circularLinkType,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));\"bottom\"==e.circularLinkType?c.sort(L):c.sort(C);var u=0;c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.leftSmallArcRadius=10+e.width/2+u,e.circularPathData.leftLargeArcRadius=10+e.width/2+n*r+u),u+=t.width})),s=e.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),\"bottom\"==e.circularLinkType?c.sort(I):c.sort(P),u=0,c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.rightSmallArcRadius=10+e.width/2+u,e.circularPathData.rightLargeArcRadius=10+e.width/2+n*r+u),u+=t.width})),\"bottom\"==e.circularLinkType?(e.circularPathData.verticalFullExtent=Math.max(a,e.source.y1,e.target.y1)+25+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=o-25-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius)}e.circularPathData.leftInnerExtent=e.circularPathData.sourceX+e.circularPathData.leftNodeBuffer,e.circularPathData.rightInnerExtent=e.circularPathData.targetX-e.circularPathData.rightNodeBuffer,e.circularPathData.leftFullExtent=e.circularPathData.sourceX+e.circularPathData.leftLargeArcRadius+e.circularPathData.leftNodeBuffer,e.circularPathData.rightFullExtent=e.circularPathData.targetX-e.circularPathData.rightLargeArcRadius-e.circularPathData.rightNodeBuffer}if(e.circular)e.path=function(t){var e=\"\";e=\"top\"==t.circularLinkType?\"M\"+t.circularPathData.sourceX+\" \"+t.circularPathData.sourceY+\" L\"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.sourceY+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftSmallArcRadius+\" 0 0 0 \"+t.circularPathData.leftFullExtent+\" \"+(t.circularPathData.sourceY-t.circularPathData.leftSmallArcRadius)+\" L\"+t.circularPathData.leftFullExtent+\" \"+t.circularPathData.verticalLeftInnerExtent+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftLargeArcRadius+\" 0 0 0 \"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" L\"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightLargeArcRadius+\" 0 0 0 \"+t.circularPathData.rightFullExtent+\" \"+t.circularPathData.verticalRightInnerExtent+\" L\"+t.circularPathData.rightFullExtent+\" \"+(t.circularPathData.targetY-t.circularPathData.rightSmallArcRadius)+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightSmallArcRadius+\" 0 0 0 \"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.targetY+\" L\"+t.circularPathData.targetX+\" \"+t.circularPathData.targetY:\"M\"+t.circularPathData.sourceX+\" \"+t.circularPathData.sourceY+\" L\"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.sourceY+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftSmallArcRadius+\" 0 0 1 \"+t.circularPathData.leftFullExtent+\" \"+(t.circularPathData.sourceY+t.circularPathData.leftSmallArcRadius)+\" L\"+t.circularPathData.leftFullExtent+\" \"+t.circularPathData.verticalLeftInnerExtent+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftLargeArcRadius+\" 0 0 1 \"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" L\"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightLargeArcRadius+\" 0 0 1 \"+t.circularPathData.rightFullExtent+\" \"+t.circularPathData.verticalRightInnerExtent+\" L\"+t.circularPathData.rightFullExtent+\" \"+(t.circularPathData.targetY+t.circularPathData.rightSmallArcRadius)+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightSmallArcRadius+\" 0 0 1 \"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.targetY+\" L\"+t.circularPathData.targetX+\" \"+t.circularPathData.targetY;return e}(e);else{var h=n.linkHorizontal().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));e.path=h(e)}}))}function E(t,e){return z(t)==z(e)?\"bottom\"==t.circularLinkType?L(t,e):C(t,e):z(e)-z(t)}function C(t,e){return t.y0-e.y0}function L(t,e){return e.y0-t.y0}function P(t,e){return t.y1-e.y1}function I(t,e){return e.y1-t.y1}function z(t){return t.target.column-t.source.column}function O(t){return t.target.x0-t.source.x1}function D(t,e){var r=T(t),n=O(e)/Math.tan(r);return\"up\"==q(t)?t.y1+n:t.y1-n}function R(t,e){var r=T(t),n=O(e)/Math.tan(r);return\"up\"==q(t)?t.y1-n:t.y1+n}function F(t,e,r,n){t.links.forEach((function(a){if(!a.circular&&a.target.column-a.source.column>1){var i=a.source.column+1,o=a.target.column-1,s=1,l=o-i+1;for(s=1;i<=o;i++,s++)t.nodes.forEach((function(o){if(o.column==i){var c,u=s/(l+1),h=Math.pow(1-u,3),f=3*u*Math.pow(1-u,2),p=3*Math.pow(u,2)*(1-u),d=Math.pow(u,3),g=h*a.y0+f*a.y0+p*a.y1+d*a.y1,m=g-a.width/2,v=g+a.width/2;m>o.y0&&m<o.y1?(c=o.y1-m+10,c=\"bottom\"==o.circularLinkType?c:-c,o=N(o,c,e,r),t.nodes.forEach((function(t){b(t,n)!=b(o,n)&&t.column==o.column&&B(o,t)&&N(t,c,e,r)}))):(v>o.y0&&v<o.y1||m<o.y0&&v>o.y1)&&(c=v-o.y0+10,o=N(o,c,e,r),t.nodes.forEach((function(t){b(t,n)!=b(o,n)&&t.column==o.column&&t.y0<o.y1&&t.y1>o.y1&&N(t,c,e,r)})))}}))}}))}function B(t,e){return t.y0>e.y0&&t.y0<e.y1||(t.y1>e.y0&&t.y1<e.y1||t.y0<e.y0&&t.y1>e.y1)}function N(t,e,r,n){return t.y0+e>=r&&t.y1+e<=n&&(t.y0=t.y0+e,t.y1=t.y1+e,t.targetLinks.forEach((function(t){t.y1=t.y1+e})),t.sourceLinks.forEach((function(t){t.y0=t.y0+e}))),t}function j(t,e,r,n){t.nodes.forEach((function(a){n&&a.y+(a.y1-a.y0)>e&&(a.y=a.y-(a.y+(a.y1-a.y0)-e));var i=t.links.filter((function(t){return b(t.source,r)==b(a,r)})),o=i.length;o>1&&i.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!V(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var r=R(e,t);return t.y1-r}if(e.target.column>t.target.column)return R(t,e)-e.y1}return t.circular&&!e.circular?\"top\"==t.circularLinkType?-1:1:e.circular&&!t.circular?\"top\"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&\"top\"==t.circularLinkType?t.target.column===e.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:t.circularLinkType===e.circularLinkType&&\"bottom\"==t.circularLinkType?t.target.column===e.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:\"top\"==t.circularLinkType?-1:1:void 0}));var s=a.y0;i.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),i.forEach((function(t,e){if(\"bottom\"==t.circularLinkType){for(var r=e+1,n=0;r<o;r++)n+=i[r].width;t.y0=a.y1-n-t.width/2}}))}))}function U(t,e,r){t.nodes.forEach((function(e){var n=t.links.filter((function(t){return b(t.target,r)==b(e,r)})),a=n.length;a>1&&n.sort((function(t,e){if(!t.circular&&!e.circular){if(t.source.column==e.source.column)return t.y0-e.y0;if(!V(t,e))return t.y0-e.y0;if(e.source.column<t.source.column){var r=D(e,t);return t.y0-r}if(t.source.column<e.source.column)return D(t,e)-e.y0}return t.circular&&!e.circular?\"top\"==t.circularLinkType?-1:1:e.circular&&!t.circular?\"top\"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&\"top\"==t.circularLinkType?t.source.column===e.source.column?t.source.y1-e.source.y1:t.source.column-e.source.column:t.circularLinkType===e.circularLinkType&&\"bottom\"==t.circularLinkType?t.source.column===e.source.column?t.source.y1-e.source.y1:e.source.column-t.source.column:\"top\"==t.circularLinkType?-1:1:void 0}));var i=e.y0;n.forEach((function(t){t.y1=i+t.width/2,i+=t.width})),n.forEach((function(t,r){if(\"bottom\"==t.circularLinkType){for(var i=r+1,o=0;i<a;i++)o+=n[i].width;t.y1=e.y1-o-t.width/2}}))}))}function V(t,e){return q(t)==q(e)}function q(t){return t.y0-t.y1>0?\"up\":\"down\"}function H(t,e){return b(t.source,e)==b(t.target,e)}function G(t,r,n){var a=t.nodes,i=t.links,o=!1,s=!1;if(i.forEach((function(t){\"top\"==t.circularLinkType?o=!0:\"bottom\"==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=e.min(a,(function(t){return t.y0})),c=(n-r)/(e.max(a,(function(t){return t.y1}))-l);a.forEach((function(t){var e=(t.y1-t.y0)*c;t.y0=(t.y0-l)*c,t.y1=t.y0+e})),i.forEach((function(t){t.y0=(t.y0-l)*c,t.y1=(t.y1-l)*c,t.width=t.width*c}))}}t.sankeyCircular=function(){var t,n,a=0,i=0,b=1,T=1,M=24,A=m,E=o,C=v,L=y,P=32,I=2,z=null;function O(){var t={nodes:C.apply(null,arguments),links:L.apply(null,arguments)};D(t),_(t,A,z),R(t),B(t),w(t,A),N(t,P,A),V(t);for(var e=4,r=0;r<e;r++)j(t,T,A),U(t,T,A),F(t,i,T,A),j(t,T,A),U(t,T,A);return G(t,i,T),S(t,I,T,A),t}function D(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=r.map(t.nodes,A);return t.links.forEach((function(t,r){t.index=r;var n=t.source,a=t.target;\"object\"!==(\"undefined\"==typeof n?\"undefined\":l(n))&&(n=t.source=x(e,n)),\"object\"!==(\"undefined\"==typeof a?\"undefined\":l(a))&&(a=t.target=x(e,a)),n.sourceLinks.push(t),a.targetLinks.push(t)})),t}function R(t){t.nodes.forEach((function(t){t.partOfCycle=!1,t.value=Math.max(e.sum(t.sourceLinks,f),e.sum(t.targetLinks,f)),t.sourceLinks.forEach((function(e){e.circular&&(t.partOfCycle=!0,t.circularLinkType=e.circularLinkType)})),t.targetLinks.forEach((function(e){e.circular&&(t.partOfCycle=!0,t.circularLinkType=e.circularLinkType)}))}))}function B(t){var e,r,n;for(e=t.nodes,r=[],n=0;e.length;++n,e=r,r=[])e.forEach((function(t){t.depth=n,t.sourceLinks.forEach((function(t){r.indexOf(t.target)<0&&!t.circular&&r.push(t.target)}))}));for(e=t.nodes,r=[],n=0;e.length;++n,e=r,r=[])e.forEach((function(t){t.height=n,t.targetLinks.forEach((function(t){r.indexOf(t.source)<0&&!t.circular&&r.push(t.source)}))}));t.nodes.forEach((function(t){t.column=Math.floor(E.call(null,t,n))}))}function N(o,s,l){var c=r.nest().key((function(t){return t.column})).sortKeys(e.ascending).entries(o.nodes).map((function(t){return t.values}));!function(r){if(n){var s=1/0;c.forEach((function(t){var e=T*n/(t.length+1);s=e<s?e:s})),t=s}var l=e.min(c,(function(r){return(T-i-(r.length-1)*t)/e.sum(r,f)}));l*=.3,o.links.forEach((function(t){t.width=t.value*l}));var u=function(t){var r=0,n=0,a=0,i=0,o=e.max(t.nodes,(function(t){return t.column}));return t.links.forEach((function(t){t.circular&&(\"top\"==t.circularLinkType?r+=t.width:n+=t.width,0==t.target.column&&(i+=t.width),t.source.column==o&&(a+=t.width))})),{top:r=r>0?r+25+10:r,bottom:n=n>0?n+25+10:n,left:i=i>0?i+25+10:i,right:a=a>0?a+25+10:a}}(o),h=function(t,r){var n=e.max(t.nodes,(function(t){return t.column})),o=b-a,s=T-i,l=o/(o+r.right+r.left),c=s/(s+r.top+r.bottom);return a=a*l+r.left,b=0==r.right?b:b*l,i=i*c+r.top,T*=c,t.nodes.forEach((function(t){t.x0=a+t.column*((b-a-M)/n),t.x1=t.x0+M})),c}(o,u);l*=h,o.links.forEach((function(t){t.width=t.value*l})),c.forEach((function(t){var e=t.length;t.forEach((function(t,n){t.depth==c.length-1&&1==e||0==t.depth&&1==e?(t.y0=T/2-t.value*l,t.y1=t.y0+t.value*l):t.partOfCycle?0==k(t,r)?(t.y0=T/2+n,t.y1=t.y0+t.value*l):\"top\"==t.circularLinkType?(t.y0=i+n,t.y1=t.y0+t.value*l):(t.y0=T-t.value*l-n,t.y1=t.y0+t.value*l):0==u.top||0==u.bottom?(t.y0=(T-i)/e*n,t.y1=t.y0+t.value*l):(t.y0=(T-i)/2-e/2+n,t.y1=t.y0+t.value*l)}))}))}(l),y();for(var u=1,m=s;m>0;--m)v(u*=.99,l),y();function v(t,r){var n=c.length;c.forEach((function(a){var i=a.length,o=a[0].depth;a.forEach((function(a){var s;if(a.sourceLinks.length||a.targetLinks.length)if(a.partOfCycle&&k(a,r)>0);else if(0==o&&1==i)s=a.y1-a.y0,a.y0=T/2-s/2,a.y1=T/2+s/2;else if(o==n-1&&1==i)s=a.y1-a.y0,a.y0=T/2-s/2,a.y1=T/2+s/2;else{var l=e.mean(a.sourceLinks,g),c=e.mean(a.targetLinks,d),u=((l&&c?(l+c)/2:l||c)-p(a))*t;a.y0+=u,a.y1+=u}}))}))}function y(){c.forEach((function(e){var r,n,a,o=i,s=e.length;for(e.sort(h),a=0;a<s;++a)(n=o-(r=e[a]).y0)>0&&(r.y0+=n,r.y1+=n),o=r.y1+t;if((n=o-t-T)>0)for(o=r.y0-=n,r.y1-=n,a=s-2;a>=0;--a)(n=(r=e[a]).y1+t-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}function V(t){t.nodes.forEach((function(t){t.sourceLinks.sort(u),t.targetLinks.sort(c)})),t.nodes.forEach((function(t){var e=t.y0,r=e,n=t.y1,a=n;t.sourceLinks.forEach((function(t){t.circular?(t.y0=n-t.width/2,n-=t.width):(t.y0=e+t.width/2,e+=t.width)})),t.targetLinks.forEach((function(t){t.circular?(t.y1=a-t.width/2,a-=t.width):(t.y1=r+t.width/2,r+=t.width)}))}))}return O.nodeId=function(t){return arguments.length?(A=\"function\"==typeof t?t:s(t),O):A},O.nodeAlign=function(t){return arguments.length?(E=\"function\"==typeof t?t:s(t),O):E},O.nodeWidth=function(t){return arguments.length?(M=+t,O):M},O.nodePadding=function(e){return arguments.length?(t=+e,O):t},O.nodes=function(t){return arguments.length?(C=\"function\"==typeof t?t:s(t),O):C},O.links=function(t){return arguments.length?(L=\"function\"==typeof t?t:s(t),O):L},O.size=function(t){return arguments.length?(a=i=0,b=+t[0],T=+t[1],O):[b-a,T-i]},O.extent=function(t){return arguments.length?(a=+t[0][0],b=+t[1][0],i=+t[0][1],T=+t[1][1],O):[[a,i],[b,T]]},O.iterations=function(t){return arguments.length?(P=+t,O):P},O.circularLinkGap=function(t){return arguments.length?(I=+t,O):I},O.nodePaddingRatio=function(t){return arguments.length?(n=+t,O):n},O.sortNodes=function(t){return arguments.length?(z=t,O):z},O.update=function(t){return w(t,A),V(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y1<T?\"top\":\"bottom\",t.source.circularLinkType=t.circularLinkType,t.target.circularLinkType=t.circularLinkType)})),j(t,T,A,!1),U(t,T,A),S(t,I,T,A),t},O},t.sankeyCenter=function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?e.min(t.sourceLinks,i)-1:0},t.sankeyLeft=function(t){return t.depth},t.sankeyRight=function(t,e){return e-1-t.height},t.sankeyJustify=o,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-array\":156,\"d3-collection\":157,\"d3-shape\":165,\"elementary-circuits-directed-graph\":179}],56:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-array\"),t(\"d3-collection\"),t(\"d3-shape\")):a(n.d3=n.d3||{},n.d3,n.d3,n.d3)}(this,(function(t,e,r,n){\"use strict\";function a(t){return t.target.depth}function i(t,e){return t.sourceLinks.length?t.depth:e-1}function o(t){return function(){return t}}function s(t,e){return c(t.source,e.source)||t.index-e.index}function l(t,e){return c(t.target,e.target)||t.index-e.index}function c(t,e){return t.y0-e.y0}function u(t){return t.value}function h(t){return(t.y0+t.y1)/2}function f(t){return h(t.source)*t.value}function p(t){return h(t.target)*t.value}function d(t){return t.index}function g(t){return t.nodes}function m(t){return t.links}function v(t,e){var r=t.get(e);if(!r)throw new Error(\"missing: \"+e);return r}function y(t){return[t.source.x1,t.y0]}function x(t){return[t.target.x0,t.y1]}t.sankey=function(){var t=0,n=0,a=1,y=1,x=24,b=8,_=d,w=i,T=g,k=m,M=32;function A(){var t={nodes:T.apply(null,arguments),links:k.apply(null,arguments)};return S(t),E(t),C(t),L(t),P(t),t}function S(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=r.map(t.nodes,_);t.links.forEach((function(t,r){t.index=r;var n=t.source,a=t.target;\"object\"!=typeof n&&(n=t.source=v(e,n)),\"object\"!=typeof a&&(a=t.target=v(e,a)),n.sourceLinks.push(t),a.targetLinks.push(t)}))}function E(t){t.nodes.forEach((function(t){t.value=Math.max(e.sum(t.sourceLinks,u),e.sum(t.targetLinks,u))}))}function C(e){var r,n,i;for(r=e.nodes,n=[],i=0;r.length;++i,r=n,n=[])r.forEach((function(t){t.depth=i,t.sourceLinks.forEach((function(t){n.indexOf(t.target)<0&&n.push(t.target)}))}));for(r=e.nodes,n=[],i=0;r.length;++i,r=n,n=[])r.forEach((function(t){t.height=i,t.targetLinks.forEach((function(t){n.indexOf(t.source)<0&&n.push(t.source)}))}));var o=(a-t-x)/(i-1);e.nodes.forEach((function(e){e.x1=(e.x0=t+Math.max(0,Math.min(i-1,Math.floor(w.call(null,e,i))))*o)+x}))}function L(t){var a=r.nest().key((function(t){return t.x0})).sortKeys(e.ascending).entries(t.nodes).map((function(t){return t.values}));!function(){var r=e.max(a,(function(t){return t.length})),i=2/3*(y-n)/(r-1);b>i&&(b=i);var o=e.min(a,(function(t){return(y-n-(t.length-1)*b)/e.sum(t,u)}));a.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*o}))})),t.links.forEach((function(t){t.width=t.value*o}))}(),d();for(var i=1,o=M;o>0;--o)l(i*=.99),d(),s(i),d();function s(t){a.forEach((function(r){r.forEach((function(r){if(r.targetLinks.length){var n=(e.sum(r.targetLinks,f)/e.sum(r.targetLinks,u)-h(r))*t;r.y0+=n,r.y1+=n}}))}))}function l(t){a.slice().reverse().forEach((function(r){r.forEach((function(r){if(r.sourceLinks.length){var n=(e.sum(r.sourceLinks,p)/e.sum(r.sourceLinks,u)-h(r))*t;r.y0+=n,r.y1+=n}}))}))}function d(){a.forEach((function(t){var e,r,a,i=n,o=t.length;for(t.sort(c),a=0;a<o;++a)(r=i-(e=t[a]).y0)>0&&(e.y0+=r,e.y1+=r),i=e.y1+b;if((r=i-b-y)>0)for(i=e.y0-=r,e.y1-=r,a=o-2;a>=0;--a)(r=(e=t[a]).y1+b-i)>0&&(e.y0-=r,e.y1-=r),i=e.y0}))}}function P(t){t.nodes.forEach((function(t){t.sourceLinks.sort(l),t.targetLinks.sort(s)})),t.nodes.forEach((function(t){var e=t.y0,r=e;t.sourceLinks.forEach((function(t){t.y0=e+t.width/2,e+=t.width})),t.targetLinks.forEach((function(t){t.y1=r+t.width/2,r+=t.width}))}))}return A.update=function(t){return P(t),t},A.nodeId=function(t){return arguments.length?(_=\"function\"==typeof t?t:o(t),A):_},A.nodeAlign=function(t){return arguments.length?(w=\"function\"==typeof t?t:o(t),A):w},A.nodeWidth=function(t){return arguments.length?(x=+t,A):x},A.nodePadding=function(t){return arguments.length?(b=+t,A):b},A.nodes=function(t){return arguments.length?(T=\"function\"==typeof t?t:o(t),A):T},A.links=function(t){return arguments.length?(k=\"function\"==typeof t?t:o(t),A):k},A.size=function(e){return arguments.length?(t=n=0,a=+e[0],y=+e[1],A):[a-t,y-n]},A.extent=function(e){return arguments.length?(t=+e[0][0],a=+e[1][0],n=+e[0][1],y=+e[1][1],A):[[t,n],[a,y]]},A.iterations=function(t){return arguments.length?(M=+t,A):M},A},t.sankeyCenter=function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?e.min(t.sourceLinks,a)-1:0},t.sankeyLeft=function(t){return t.depth},t.sankeyRight=function(t,e){return e-1-t.height},t.sankeyJustify=i,t.sankeyLinkHorizontal=function(){return n.linkHorizontal().source(y).target(x)},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-array\":156,\"d3-collection\":157,\"d3-shape\":165}],57:[function(t,e,r){\"use strict\";e.exports=t(\"./quad\")},{\"./quad\":58}],58:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\"),a=t(\"clamp\"),i=t(\"parse-rect\"),o=t(\"array-bounds\"),s=t(\"pick-by-alias\"),l=t(\"defined\"),c=t(\"flatten-vertex-data\"),u=t(\"is-obj\"),h=t(\"dtype\"),f=t(\"math-log2\");function p(t,e){for(var r=e[0],n=e[1],i=1/(e[2]-r),o=1/(e[3]-n),s=new Array(t.length),l=0,c=t.length/2;l<c;l++)s[2*l]=a((t[2*l]-r)*i,0,1),s[2*l+1]=a((t[2*l+1]-n)*o,0,1);return s}e.exports=function(t,e){e||(e={}),t=c(t,\"float64\"),e=s(e,{bounds:\"range bounds dataBox databox\",maxDepth:\"depth maxDepth maxdepth level maxLevel maxlevel levels\",dtype:\"type dtype format out dst output destination\"});var r=l(e.maxDepth,255),a=l(e.bounds,o(t,2));a[0]===a[2]&&a[2]++,a[1]===a[3]&&a[3]++;var d,g=p(t,a),m=t.length>>>1;e.dtype||(e.dtype=\"array\"),\"string\"==typeof e.dtype?d=new(h(e.dtype))(m):e.dtype&&(d=e.dtype,Array.isArray(d)&&(d.length=m));for(var v=0;v<m;++v)d[v]=v;var y=[],x=[],b=[],_=[];!function t(e,n,a,i,o,s){if(!i.length)return null;var l=y[o]||(y[o]=[]),c=b[o]||(b[o]=[]),u=x[o]||(x[o]=[]),h=l.length;if(++o>r||s>1073741824){for(var f=0;f<i.length;f++)l.push(i[f]),c.push(s),u.push(null,null,null,null);return h}if(l.push(i[0]),c.push(s),i.length<=1)return u.push(null,null,null,null),h;for(var p=.5*a,d=e+p,m=n+p,v=[],_=[],w=[],T=[],k=1,M=i.length;k<M;k++){var A=i[k],S=g[2*A],E=g[2*A+1];S<d?E<m?v.push(A):_.push(A):E<m?w.push(A):T.push(A)}return s<<=2,u.push(t(e,n,p,v,o,s),t(e,m,p,_,o,s+1),t(d,n,p,w,o,s+2),t(d,m,p,T,o,s+3)),h}(0,0,1,d,0,1);for(var w=0,T=0;T<y.length;T++){var k=y[T];if(d.set)d.set(k,w);else for(var M=0,A=k.length;M<A;M++)d[M+w]=k[M];var S=w+y[T].length;_[T]=[w,S],w=S}return d.range=function(){var e,r=[],n=arguments.length;for(;n--;)r[n]=arguments[n];if(u(r[r.length-1])){var o=r.pop();r.length||null==o.x&&null==o.l&&null==o.left||(r=[o],e={}),e=s(o,{level:\"level maxLevel\",d:\"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize\",lod:\"lod details ranges offsets\"})}else e={};r.length||(r=a);var c=i.apply(void 0,r),h=[Math.min(c.x,c.x+c.width),Math.min(c.y,c.y+c.height),Math.max(c.x,c.x+c.width),Math.max(c.y,c.y+c.height)],d=h[0],g=h[1],m=h[2],v=h[3],b=p([d,g,m,v],a),_=b[0],w=b[1],T=b[2],k=b[3],M=l(e.level,y.length);if(null!=e.d){var A;\"number\"==typeof e.d?A=[e.d,e.d]:e.d.length&&(A=e.d),M=Math.min(Math.max(Math.ceil(-f(Math.abs(A[0])/(a[2]-a[0]))),Math.ceil(-f(Math.abs(A[1])/(a[3]-a[1])))),M)}if(M=Math.min(M,y.length),e.lod)return E(_,w,T,k,M);var S=[];function C(e,r,n,a,i,o){if(null!==i&&null!==o&&!(_>e+n||w>r+n||T<e||k<r||a>=M||i===o)){var s=y[a];void 0===o&&(o=s.length);for(var l=i;l<o;l++){var c=s[l],u=t[2*c],h=t[2*c+1];u>=d&&u<=m&&h>=g&&h<=v&&S.push(c)}var f=x[a],p=f[4*i+0],b=f[4*i+1],A=f[4*i+2],E=f[4*i+3],P=L(f,i+1),I=.5*n,z=a+1;C(e,r,I,z,p,b||A||E||P),C(e,r+I,I,z,b,A||E||P),C(e+I,r,I,z,A,E||P),C(e+I,r+I,I,z,E,P)}}function L(t,e){for(var r=null,n=0;null===r;)if(r=t[4*e+n],++n>t.length)return null;return r}return C(0,0,1,0,0,1),S},d;function E(t,e,r,a,i){for(var o=[],s=0;s<i;s++){var l=b[s],c=_[s][0],u=C(t,e,s),h=C(r,a,s),f=n.ge(l,u),p=n.gt(l,h,f,l.length-1);o[s]=[f+c,p+c]}return o}function C(t,e,r){for(var n=1,a=.5,i=.5,o=.5,s=0;s<r;s++)n<<=2,n+=t<a?e<i?0:1:e<i?2:3,o*=.5,a+=t<a?-o:o,i+=e<i?-o:o;return n}}},{\"array-bounds\":70,\"binary-search-bounds\":96,clamp:120,defined:170,dtype:175,\"flatten-vertex-data\":244,\"is-obj\":442,\"math-log2\":453,\"parse-rect\":478,\"pick-by-alias\":485}],59:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=t(\"@turf/meta\");function a(t){var e=0;if(t&&t.length>0){e+=Math.abs(i(t[0]));for(var r=1;r<t.length;r++)e-=Math.abs(i(t[r]))}return e}function i(t){var e,r,n,a,i,s,l=0,c=t.length;if(c>2){for(s=0;s<c;s++)s===c-2?(n=c-2,a=c-1,i=0):s===c-1?(n=c-1,a=0,i=1):(n=s,a=s+1,i=s+2),e=t[n],r=t[a],l+=(o(t[i][0])-o(e[0]))*Math.sin(o(r[1]));l=6378137*l*6378137/2}return l}function o(t){return t*Math.PI/180}r.default=function(t){return n.geomReduce(t,(function(t,e){return t+function(t){var e,r=0;switch(t.type){case\"Polygon\":return a(t.coordinates);case\"MultiPolygon\":for(e=0;e<t.coordinates.length;e++)r+=a(t.coordinates[e]);return r;case\"Point\":case\"MultiPoint\":case\"LineString\":case\"MultiLineString\":return 0}return 0}(e)}),0)}},{\"@turf/meta\":63}],60:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=t(\"@turf/meta\");r.default=function(t){var e=[1/0,1/0,-1/0,-1/0];return n.coordEach(t,(function(t){e[0]>t[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]<t[0]&&(e[2]=t[0]),e[3]<t[1]&&(e[3]=t[1])})),e}},{\"@turf/meta\":63}],61:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=t(\"@turf/meta\"),a=t(\"@turf/helpers\");r.default=function(t,e){void 0===e&&(e={});var r=0,i=0,o=0;return n.coordEach(t,(function(t){r+=t[0],i+=t[1],o++})),a.point([r/o,i/o],e.properties)}},{\"@turf/helpers\":62,\"@turf/meta\":63}],62:[function(t,e,r){\"use strict\";function n(t,e,r){void 0===r&&(r={});var n={type:\"Feature\"};return(0===r.id||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=e||{},n.geometry=t,n}function a(t,e,r){return void 0===r&&(r={}),n({type:\"Point\",coordinates:t},e,r)}function i(t,e,r){void 0===r&&(r={});for(var a=0,i=t;a<i.length;a++){var o=i[a];if(o.length<4)throw new Error(\"Each LinearRing of a Polygon must have 4 or more Positions.\");for(var s=0;s<o[o.length-1].length;s++)if(o[o.length-1][s]!==o[0][s])throw new Error(\"First and last Position are not equivalent.\")}return n({type:\"Polygon\",coordinates:t},e,r)}function o(t,e,r){if(void 0===r&&(r={}),t.length<2)throw new Error(\"coordinates must be an array of two or more positions\");return n({type:\"LineString\",coordinates:t},e,r)}function s(t,e){void 0===e&&(e={});var r={type:\"FeatureCollection\"};return e.id&&(r.id=e.id),e.bbox&&(r.bbox=e.bbox),r.features=t,r}function l(t,e,r){return void 0===r&&(r={}),n({type:\"MultiLineString\",coordinates:t},e,r)}function c(t,e,r){return void 0===r&&(r={}),n({type:\"MultiPoint\",coordinates:t},e,r)}function u(t,e,r){return void 0===r&&(r={}),n({type:\"MultiPolygon\",coordinates:t},e,r)}function h(t,e){void 0===e&&(e=\"kilometers\");var n=r.factors[e];if(!n)throw new Error(e+\" units is invalid\");return t*n}function f(t,e){void 0===e&&(e=\"kilometers\");var n=r.factors[e];if(!n)throw new Error(e+\" units is invalid\");return t/n}function p(t){return 180*(t%(2*Math.PI))/Math.PI}function d(t){return!isNaN(t)&&null!==t&&!Array.isArray(t)&&!/^\\s*$/.test(t)}Object.defineProperty(r,\"__esModule\",{value:!0}),r.earthRadius=6371008.8,r.factors={centimeters:100*r.earthRadius,centimetres:100*r.earthRadius,degrees:r.earthRadius/111325,feet:3.28084*r.earthRadius,inches:39.37*r.earthRadius,kilometers:r.earthRadius/1e3,kilometres:r.earthRadius/1e3,meters:r.earthRadius,metres:r.earthRadius,miles:r.earthRadius/1609.344,millimeters:1e3*r.earthRadius,millimetres:1e3*r.earthRadius,nauticalmiles:r.earthRadius/1852,radians:1,yards:r.earthRadius/1.0936},r.unitsFactors={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:.001,kilometres:.001,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/r.earthRadius,yards:1/1.0936},r.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046},r.feature=n,r.geometry=function(t,e,r){switch(void 0===r&&(r={}),t){case\"Point\":return a(e).geometry;case\"LineString\":return o(e).geometry;case\"Polygon\":return i(e).geometry;case\"MultiPoint\":return c(e).geometry;case\"MultiLineString\":return l(e).geometry;case\"MultiPolygon\":return u(e).geometry;default:throw new Error(t+\" is invalid\")}},r.point=a,r.points=function(t,e,r){return void 0===r&&(r={}),s(t.map((function(t){return a(t,e)})),r)},r.polygon=i,r.polygons=function(t,e,r){return void 0===r&&(r={}),s(t.map((function(t){return i(t,e)})),r)},r.lineString=o,r.lineStrings=function(t,e,r){return void 0===r&&(r={}),s(t.map((function(t){return o(t,e)})),r)},r.featureCollection=s,r.multiLineString=l,r.multiPoint=c,r.multiPolygon=u,r.geometryCollection=function(t,e,r){return void 0===r&&(r={}),n({type:\"GeometryCollection\",geometries:t},e,r)},r.round=function(t,e){if(void 0===e&&(e=0),e&&!(e>=0))throw new Error(\"precision must be a positive number\");var r=Math.pow(10,e||0);return Math.round(t*r)/r},r.radiansToLength=h,r.lengthToRadians=f,r.lengthToDegrees=function(t,e){return p(f(t,e))},r.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},r.radiansToDegrees=p,r.degreesToRadians=function(t){return t%360*Math.PI/180},r.convertLength=function(t,e,r){if(void 0===e&&(e=\"kilometers\"),void 0===r&&(r=\"kilometers\"),!(t>=0))throw new Error(\"length must be a positive number\");return h(f(t,e),r)},r.convertArea=function(t,e,n){if(void 0===e&&(e=\"meters\"),void 0===n&&(n=\"kilometers\"),!(t>=0))throw new Error(\"area must be a positive number\");var a=r.areaFactors[e];if(!a)throw new Error(\"invalid original units\");var i=r.areaFactors[n];if(!i)throw new Error(\"invalid final units\");return t/a*i},r.isNumber=d,r.isObject=function(t){return!!t&&t.constructor===Object},r.validateBBox=function(t){if(!t)throw new Error(\"bbox is required\");if(!Array.isArray(t))throw new Error(\"bbox must be an Array\");if(4!==t.length&&6!==t.length)throw new Error(\"bbox must be an Array of 4 or 6 numbers\");t.forEach((function(t){if(!d(t))throw new Error(\"bbox must only contain numbers\")}))},r.validateId=function(t){if(!t)throw new Error(\"id is required\");if(-1===[\"string\",\"number\"].indexOf(typeof t))throw new Error(\"id must be a number or a string\")},r.radians2degrees=function(){throw new Error(\"method has been renamed to `radiansToDegrees`\")},r.degrees2radians=function(){throw new Error(\"method has been renamed to `degreesToRadians`\")},r.distanceToDegrees=function(){throw new Error(\"method has been renamed to `lengthToDegrees`\")},r.distanceToRadians=function(){throw new Error(\"method has been renamed to `lengthToRadians`\")},r.radiansToDistance=function(){throw new Error(\"method has been renamed to `radiansToLength`\")},r.bearingToAngle=function(){throw new Error(\"method has been renamed to `bearingToAzimuth`\")},r.convertDistance=function(){throw new Error(\"method has been renamed to `convertLength`\")}},{}],63:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=t(\"@turf/helpers\");function a(t,e,r){if(null!==t)for(var n,i,o,s,l,c,u,h,f=0,p=0,d=t.type,g=\"FeatureCollection\"===d,m=\"Feature\"===d,v=g?t.features.length:1,y=0;y<v;y++){l=(h=!!(u=g?t.features[y].geometry:m?t.geometry:t)&&\"GeometryCollection\"===u.type)?u.geometries.length:1;for(var x=0;x<l;x++){var b=0,_=0;if(null!==(s=h?u.geometries[x]:u)){c=s.coordinates;var w=s.type;switch(f=!r||\"Polygon\"!==w&&\"MultiPolygon\"!==w?0:1,w){case null:break;case\"Point\":if(!1===e(c,p,y,b,_))return!1;p++,b++;break;case\"LineString\":case\"MultiPoint\":for(n=0;n<c.length;n++){if(!1===e(c[n],p,y,b,_))return!1;p++,\"MultiPoint\"===w&&b++}\"LineString\"===w&&b++;break;case\"Polygon\":case\"MultiLineString\":for(n=0;n<c.length;n++){for(i=0;i<c[n].length-f;i++){if(!1===e(c[n][i],p,y,b,_))return!1;p++}\"MultiLineString\"===w&&b++,\"Polygon\"===w&&_++}\"Polygon\"===w&&b++;break;case\"MultiPolygon\":for(n=0;n<c.length;n++){for(_=0,i=0;i<c[n].length;i++){for(o=0;o<c[n][i].length-f;o++){if(!1===e(c[n][i][o],p,y,b,_))return!1;p++}_++}b++}break;case\"GeometryCollection\":for(n=0;n<s.geometries.length;n++)if(!1===a(s.geometries[n],e,r))return!1;break;default:throw new Error(\"Unknown Geometry Type\")}}}}}function i(t,e){var r;switch(t.type){case\"FeatureCollection\":for(r=0;r<t.features.length&&!1!==e(t.features[r].properties,r);r++);break;case\"Feature\":e(t.properties,0)}}function o(t,e){if(\"Feature\"===t.type)e(t,0);else if(\"FeatureCollection\"===t.type)for(var r=0;r<t.features.length&&!1!==e(t.features[r],r);r++);}function s(t,e){var r,n,a,i,o,s,l,c,u,h,f=0,p=\"FeatureCollection\"===t.type,d=\"Feature\"===t.type,g=p?t.features.length:1;for(r=0;r<g;r++){for(s=p?t.features[r].geometry:d?t.geometry:t,c=p?t.features[r].properties:d?t.properties:{},u=p?t.features[r].bbox:d?t.bbox:void 0,h=p?t.features[r].id:d?t.id:void 0,o=(l=!!s&&\"GeometryCollection\"===s.type)?s.geometries.length:1,a=0;a<o;a++)if(null!==(i=l?s.geometries[a]:s))switch(i.type){case\"Point\":case\"LineString\":case\"MultiPoint\":case\"Polygon\":case\"MultiLineString\":case\"MultiPolygon\":if(!1===e(i,f,c,u,h))return!1;break;case\"GeometryCollection\":for(n=0;n<i.geometries.length;n++)if(!1===e(i.geometries[n],f,c,u,h))return!1;break;default:throw new Error(\"Unknown Geometry Type\")}else if(!1===e(null,f,c,u,h))return!1;f++}}function l(t,e){s(t,(function(t,r,a,i,o){var s,l=null===t?null:t.type;switch(l){case null:case\"Point\":case\"LineString\":case\"Polygon\":return!1!==e(n.feature(t,a,{bbox:i,id:o}),r,0)&&void 0}switch(l){case\"MultiPoint\":s=\"Point\";break;case\"MultiLineString\":s=\"LineString\";break;case\"MultiPolygon\":s=\"Polygon\"}for(var c=0;c<t.coordinates.length;c++){var u={type:s,coordinates:t.coordinates[c]};if(!1===e(n.feature(u,a),r,c))return!1}}))}function c(t,e){l(t,(function(t,r,i){var o=0;if(t.geometry){var s=t.geometry.type;if(\"Point\"!==s&&\"MultiPoint\"!==s){var l,c=0,u=0,h=0;return!1!==a(t,(function(a,s,f,p,d){if(void 0===l||r>c||p>u||d>h)return l=a,c=r,u=p,h=d,void(o=0);var g=n.lineString([l,a],t.properties);if(!1===e(g,r,i,d,o))return!1;o++,l=a}))&&void 0}}}))}function u(t,e){if(!t)throw new Error(\"geojson is required\");l(t,(function(t,r,a){if(null!==t.geometry){var i=t.geometry.type,o=t.geometry.coordinates;switch(i){case\"LineString\":if(!1===e(t,r,a,0,0))return!1;break;case\"Polygon\":for(var s=0;s<o.length;s++)if(!1===e(n.lineString(o[s],t.properties),r,a,s))return!1}}}))}r.coordEach=a,r.coordReduce=function(t,e,r,n){var i=r;return a(t,(function(t,n,a,o,s){i=0===n&&void 0===r?t:e(i,t,n,a,o,s)}),n),i},r.propEach=i,r.propReduce=function(t,e,r){var n=r;return i(t,(function(t,a){n=0===a&&void 0===r?t:e(n,t,a)})),n},r.featureEach=o,r.featureReduce=function(t,e,r){var n=r;return o(t,(function(t,a){n=0===a&&void 0===r?t:e(n,t,a)})),n},r.coordAll=function(t){var e=[];return a(t,(function(t){e.push(t)})),e},r.geomEach=s,r.geomReduce=function(t,e,r){var n=r;return s(t,(function(t,a,i,o,s){n=0===a&&void 0===r?t:e(n,t,a,i,o,s)})),n},r.flattenEach=l,r.flattenReduce=function(t,e,r){var n=r;return l(t,(function(t,a,i){n=0===a&&0===i&&void 0===r?t:e(n,t,a,i)})),n},r.segmentEach=c,r.segmentReduce=function(t,e,r){var n=r,a=!1;return c(t,(function(t,i,o,s,l){n=!1===a&&void 0===r?t:e(n,t,i,o,s,l),a=!0})),n},r.lineEach=u,r.lineReduce=function(t,e,r){var n=r;return u(t,(function(t,a,i,o){n=0===a&&void 0===r?t:e(n,t,a,i,o)})),n},r.findSegment=function(t,e){if(e=e||{},!n.isObject(e))throw new Error(\"options is invalid\");var r,a=e.featureIndex||0,i=e.multiFeatureIndex||0,o=e.geometryIndex||0,s=e.segmentIndex||0,l=e.properties;switch(t.type){case\"FeatureCollection\":a<0&&(a=t.features.length+a),l=l||t.features[a].properties,r=t.features[a].geometry;break;case\"Feature\":l=l||t.properties,r=t.geometry;break;case\"Point\":case\"MultiPoint\":return null;case\"LineString\":case\"Polygon\":case\"MultiLineString\":case\"MultiPolygon\":r=t;break;default:throw new Error(\"geojson is invalid\")}if(null===r)return null;var c=r.coordinates;switch(r.type){case\"Point\":case\"MultiPoint\":return null;case\"LineString\":return s<0&&(s=c.length+s-1),n.lineString([c[s],c[s+1]],l,e);case\"Polygon\":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s-1),n.lineString([c[o][s],c[o][s+1]],l,e);case\"MultiLineString\":return i<0&&(i=c.length+i),s<0&&(s=c[i].length+s-1),n.lineString([c[i][s],c[i][s+1]],l,e);case\"MultiPolygon\":return i<0&&(i=c.length+i),o<0&&(o=c[i].length+o),s<0&&(s=c[i][o].length-s-1),n.lineString([c[i][o][s],c[i][o][s+1]],l,e)}throw new Error(\"geojson is invalid\")},r.findPoint=function(t,e){if(e=e||{},!n.isObject(e))throw new Error(\"options is invalid\");var r,a=e.featureIndex||0,i=e.multiFeatureIndex||0,o=e.geometryIndex||0,s=e.coordIndex||0,l=e.properties;switch(t.type){case\"FeatureCollection\":a<0&&(a=t.features.length+a),l=l||t.features[a].properties,r=t.features[a].geometry;break;case\"Feature\":l=l||t.properties,r=t.geometry;break;case\"Point\":case\"MultiPoint\":return null;case\"LineString\":case\"Polygon\":case\"MultiLineString\":case\"MultiPolygon\":r=t;break;default:throw new Error(\"geojson is invalid\")}if(null===r)return null;var c=r.coordinates;switch(r.type){case\"Point\":return n.point(c,l,e);case\"MultiPoint\":return i<0&&(i=c.length+i),n.point(c[i],l,e);case\"LineString\":return s<0&&(s=c.length+s),n.point(c[s],l,e);case\"Polygon\":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s),n.point(c[o][s],l,e);case\"MultiLineString\":return i<0&&(i=c.length+i),s<0&&(s=c[i].length+s),n.point(c[i][s],l,e);case\"MultiPolygon\":return i<0&&(i=c.length+i),o<0&&(o=c[i].length+o),s<0&&(s=c[i][o].length-s),n.point(c[i][o][s],l,e)}throw new Error(\"geojson is invalid\")}},{\"@turf/helpers\":62}],64:[function(t,e,r){\"use strict\";var n=\"undefined\"==typeof WeakMap?t(\"weak-map\"):WeakMap,a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=new n;e.exports=function(t){var e=o.get(t),r=e&&(e._triangleBuffer.handle||e._triangleBuffer.buffer);if(!r||!t.isBuffer(r)){var n=a(t,new Float32Array([-1,-1,-1,4,4,-1]));(e=i(t,[{buffer:n,type:t.FLOAT,size:2}]))._triangleBuffer=n,o.set(t,e)}e.bind(),t.drawArrays(t.TRIANGLES,0,3),e.unbind()}},{\"gl-buffer\":258,\"gl-vao\":332,\"weak-map\":574}],65:[function(t,e,r){e.exports=function(t){var e=0,r=0,n=0,a=0;return t.map((function(t){var i=(t=t.slice())[0],o=i.toUpperCase();if(i!=o)switch(t[0]=o,i){case\"a\":t[6]+=n,t[7]+=a;break;case\"v\":t[1]+=a;break;case\"h\":t[1]+=n;break;default:for(var s=1;s<t.length;)t[s++]+=n,t[s++]+=a}switch(o){case\"Z\":n=e,a=r;break;case\"H\":n=t[1];break;case\"V\":a=t[1];break;case\"M\":n=e=t[1],a=r=t[2];break;default:n=t[t.length-2],a=t[t.length-1]}return t}))}},{}],66:[function(t,e,r){var n=t(\"pad-left\");e.exports=function(t,e,r){e=\"number\"==typeof e?e:1,r=r||\": \";var a=t.split(/\\r?\\n/),i=String(a.length+e-1).length;return a.map((function(t,a){var o=a+e,s=String(o).length;return n(o,i-s)+r+t})).join(\"\\n\")}},{\"pad-left\":476}],67:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.length;if(0===e)return[];if(1===e)return[0];for(var r=t[0].length,n=[t[0]],i=[0],o=1;o<e;++o)if(n.push(t[o]),a(n,r)){if(i.push(o),i.length===r+1)return i}else n.pop();return i};var n=t(\"robust-orientation\");function a(t,e){for(var r=new Array(e+1),a=0;a<t.length;++a)r[a]=t[a];for(a=0;a<=t.length;++a){for(var i=t.length;i<=e;++i){for(var o=new Array(e),s=0;s<e;++s)o[s]=Math.pow(i+1-a,s);r[i]=o}if(n.apply(void 0,r))return!0}return!1}},{\"robust-orientation\":520}],68:[function(t,e,r){\"use strict\";e.exports=function(t,e){return n(e).filter((function(r){for(var n=new Array(r.length),i=0;i<r.length;++i)n[i]=e[r[i]];return a(n)*t<1}))};var n=t(\"delaunay-triangulate\"),a=t(\"circumradius\")},{circumradius:119,\"delaunay-triangulate\":171}],69:[function(t,e,r){e.exports=function(t,e){return a(n(t,e))};var n=t(\"alpha-complex\"),a=t(\"simplicial-complex-boundary\")},{\"alpha-complex\":68,\"simplicial-complex-boundary\":527}],70:[function(t,e,r){\"use strict\";e.exports=function(t,e){if(!t||null==t.length)throw Error(\"Argument should be an array\");e=null==e?1:Math.floor(e);for(var r=Array(2*e),n=0;n<e;n++){for(var a=-1/0,i=1/0,o=n,s=t.length;o<s;o+=e)t[o]>a&&(a=t[o]),t[o]<i&&(i=t[o]);r[n]=i,r[e+n]=a}return r}},{}],71:[function(t,e,r){\"use strict\";var n=t(\"array-bounds\");e.exports=function(t,e,r){if(!t||null==t.length)throw Error(\"Argument should be an array\");null==e&&(e=1);null==r&&(r=n(t,e));for(var a=0;a<e;a++){var i=r[e+a],o=r[a],s=a,l=t.length;if(i===1/0&&o===-1/0)for(s=a;s<l;s+=e)t[s]=t[s]===i?1:t[s]===o?0:.5;else if(i===1/0)for(s=a;s<l;s+=e)t[s]=t[s]===i?1:0;else if(o===-1/0)for(s=a;s<l;s+=e)t[s]=t[s]===o?0:1;else{var c=i-o;for(s=a;s<l;s+=e)isNaN(t[s])||(t[s]=0===c?.5:(t[s]-o)/c)}}return t}},{\"array-bounds\":70}],72:[function(t,e,r){e.exports=function(t,e){var r=\"number\"==typeof t,n=\"number\"==typeof e;r&&!n?(e=t,t=0):r||n||(t=0,e=0);var a=(e|=0)-(t|=0);if(a<0)throw new Error(\"array length must be positive\");for(var i=new Array(a),o=0,s=t;o<a;o++,s++)i[o]=s;return i}},{}],73:[function(t,e,r){(function(r){\"use strict\";var n=t(\"object-assign\");\n",
       "/*!\n",
       " * The buffer module from node.js, for the browser.\n",
       " *\n",
       " * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n",
       " * @license  MIT\n",
       " */function a(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,a=0,i=Math.min(r,n);a<i;++a)if(t[a]!==e[a]){r=t[a],n=e[a];break}return r<n?-1:n<r?1:0}function i(t){return r.Buffer&&\"function\"==typeof r.Buffer.isBuffer?r.Buffer.isBuffer(t):!(null==t||!t._isBuffer)}var o=t(\"util/\"),s=Object.prototype.hasOwnProperty,l=Array.prototype.slice,c=\"foo\"===function(){}.name;function u(t){return Object.prototype.toString.call(t)}function h(t){return!i(t)&&(\"function\"==typeof r.ArrayBuffer&&(\"function\"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):!!t&&(t instanceof DataView||!!(t.buffer&&t.buffer instanceof ArrayBuffer))))}var f=e.exports=y,p=/\\s*function\\s+([^\\(\\s]*)\\s*/;function d(t){if(o.isFunction(t)){if(c)return t.name;var e=t.toString().match(p);return e&&e[1]}}function g(t,e){return\"string\"==typeof t?t.length<e?t:t.slice(0,e):t}function m(t){if(c||!o.isFunction(t))return o.inspect(t);var e=d(t);return\"[Function\"+(e?\": \"+e:\"\")+\"]\"}function v(t,e,r,n,a){throw new f.AssertionError({message:r,actual:t,expected:e,operator:n,stackStartFunction:a})}function y(t,e){t||v(t,!0,e,\"==\",f.ok)}function x(t,e,r,n){if(t===e)return!0;if(i(t)&&i(e))return 0===a(t,e);if(o.isDate(t)&&o.isDate(e))return t.getTime()===e.getTime();if(o.isRegExp(t)&&o.isRegExp(e))return t.source===e.source&&t.global===e.global&&t.multiline===e.multiline&&t.lastIndex===e.lastIndex&&t.ignoreCase===e.ignoreCase;if(null!==t&&\"object\"==typeof t||null!==e&&\"object\"==typeof e){if(h(t)&&h(e)&&u(t)===u(e)&&!(t instanceof Float32Array||t instanceof Float64Array))return 0===a(new Uint8Array(t.buffer),new Uint8Array(e.buffer));if(i(t)!==i(e))return!1;var s=(n=n||{actual:[],expected:[]}).actual.indexOf(t);return-1!==s&&s===n.expected.indexOf(e)||(n.actual.push(t),n.expected.push(e),function(t,e,r,n){if(null==t||null==e)return!1;if(o.isPrimitive(t)||o.isPrimitive(e))return t===e;if(r&&Object.getPrototypeOf(t)!==Object.getPrototypeOf(e))return!1;var a=b(t),i=b(e);if(a&&!i||!a&&i)return!1;if(a)return t=l.call(t),e=l.call(e),x(t,e,r);var s,c,u=T(t),h=T(e);if(u.length!==h.length)return!1;for(u.sort(),h.sort(),c=u.length-1;c>=0;c--)if(u[c]!==h[c])return!1;for(c=u.length-1;c>=0;c--)if(s=u[c],!x(t[s],e[s],r,n))return!1;return!0}(t,e,r,n))}return r?t===e:t==e}function b(t){return\"[object Arguments]\"==Object.prototype.toString.call(t)}function _(t,e){if(!t||!e)return!1;if(\"[object RegExp]\"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function w(t,e,r,n){var a;if(\"function\"!=typeof e)throw new TypeError('\"block\" argument must be a function');\"string\"==typeof r&&(n=r,r=null),a=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?\" (\"+r.name+\").\":\".\")+(n?\" \"+n:\".\"),t&&!a&&v(a,r,\"Missing expected exception\"+n);var i=\"string\"==typeof n,s=!t&&a&&!r;if((!t&&o.isError(a)&&i&&_(a,r)||s)&&v(a,r,\"Got unwanted exception\"+n),t&&a&&r&&!_(a,r)||!t&&a)throw a}f.AssertionError=function(t){this.name=\"AssertionError\",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=function(t){return g(m(t.actual),128)+\" \"+t.operator+\" \"+g(m(t.expected),128)}(this),this.generatedMessage=!0);var e=t.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var r=new Error;if(r.stack){var n=r.stack,a=d(e),i=n.indexOf(\"\\n\"+a);if(i>=0){var o=n.indexOf(\"\\n\",i+1);n=n.substring(o+1)}this.stack=n}}},o.inherits(f.AssertionError,Error),f.fail=v,f.ok=y,f.equal=function(t,e,r){t!=e&&v(t,e,r,\"==\",f.equal)},f.notEqual=function(t,e,r){t==e&&v(t,e,r,\"!=\",f.notEqual)},f.deepEqual=function(t,e,r){x(t,e,!1)||v(t,e,r,\"deepEqual\",f.deepEqual)},f.deepStrictEqual=function(t,e,r){x(t,e,!0)||v(t,e,r,\"deepStrictEqual\",f.deepStrictEqual)},f.notDeepEqual=function(t,e,r){x(t,e,!1)&&v(t,e,r,\"notDeepEqual\",f.notDeepEqual)},f.notDeepStrictEqual=function t(e,r,n){x(e,r,!0)&&v(e,r,n,\"notDeepStrictEqual\",t)},f.strictEqual=function(t,e,r){t!==e&&v(t,e,r,\"===\",f.strictEqual)},f.notStrictEqual=function(t,e,r){t===e&&v(t,e,r,\"!==\",f.notStrictEqual)},f.throws=function(t,e,r){w(!0,t,e,r)},f.doesNotThrow=function(t,e,r){w(!1,t,e,r)},f.ifError=function(t){if(t)throw t},f.strict=n((function t(e,r){e||v(e,!0,r,\"==\",t)}),f,{equal:f.strictEqual,deepEqual:f.deepStrictEqual,notEqual:f.notStrictEqual,notDeepEqual:f.notDeepStrictEqual}),f.strict.strict=f.strict;var T=Object.keys||function(t){var e=[];for(var r in t)s.call(t,r)&&e.push(r);return e}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"object-assign\":473,\"util/\":76}],74:[function(t,e,r){\"function\"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],75:[function(t,e,r){e.exports=function(t){return t&&\"object\"==typeof t&&\"function\"==typeof t.copy&&\"function\"==typeof t.fill&&\"function\"==typeof t.readUInt8}},{}],76:[function(t,e,r){(function(e,n){var a=/%[sdj%]/g;r.format=function(t){if(!v(t)){for(var e=[],r=0;r<arguments.length;r++)e.push(s(arguments[r]));return e.join(\" \")}r=1;for(var n=arguments,i=n.length,o=String(t).replace(a,(function(t){if(\"%%\"===t)return\"%\";if(r>=i)return t;switch(t){case\"%s\":return String(n[r++]);case\"%d\":return Number(n[r++]);case\"%j\":try{return JSON.stringify(n[r++])}catch(t){return\"[Circular]\"}default:return t}})),l=n[r];r<i;l=n[++r])g(l)||!b(l)?o+=\" \"+l:o+=\" \"+s(l);return o},r.deprecate=function(t,a){if(y(n.process))return function(){return r.deprecate(t,a).apply(this,arguments)};if(!0===e.noDeprecation)return t;var i=!1;return function(){if(!i){if(e.throwDeprecation)throw new Error(a);e.traceDeprecation?console.trace(a):console.error(a),i=!0}return t.apply(this,arguments)}};var i,o={};function s(t,e){var n={seen:[],stylize:c};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(e)?n.showHidden=e:e&&r._extend(n,e),y(n.showHidden)&&(n.showHidden=!1),y(n.depth)&&(n.depth=2),y(n.colors)&&(n.colors=!1),y(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=l),u(n,t,n.depth)}function l(t,e){var r=s.styles[e];return r?\"\\x1b[\"+s.colors[r][0]+\"m\"+t+\"\\x1b[\"+s.colors[r][1]+\"m\":t}function c(t,e){return t}function u(t,e,n){if(t.customInspect&&e&&T(e.inspect)&&e.inspect!==r.inspect&&(!e.constructor||e.constructor.prototype!==e)){var a=e.inspect(n,t);return v(a)||(a=u(t,a,n)),a}var i=function(t,e){if(y(e))return t.stylize(\"undefined\",\"undefined\");if(v(e)){var r=\"'\"+JSON.stringify(e).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return t.stylize(r,\"string\")}if(m(e))return t.stylize(\"\"+e,\"number\");if(d(e))return t.stylize(\"\"+e,\"boolean\");if(g(e))return t.stylize(\"null\",\"null\")}(t,e);if(i)return i;var o=Object.keys(e),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(e)),w(e)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return h(e);if(0===o.length){if(T(e)){var l=e.name?\": \"+e.name:\"\";return t.stylize(\"[Function\"+l+\"]\",\"special\")}if(x(e))return t.stylize(RegExp.prototype.toString.call(e),\"regexp\");if(_(e))return t.stylize(Date.prototype.toString.call(e),\"date\");if(w(e))return h(e)}var c,b=\"\",k=!1,M=[\"{\",\"}\"];(p(e)&&(k=!0,M=[\"[\",\"]\"]),T(e))&&(b=\" [Function\"+(e.name?\": \"+e.name:\"\")+\"]\");return x(e)&&(b=\" \"+RegExp.prototype.toString.call(e)),_(e)&&(b=\" \"+Date.prototype.toUTCString.call(e)),w(e)&&(b=\" \"+h(e)),0!==o.length||k&&0!=e.length?n<0?x(e)?t.stylize(RegExp.prototype.toString.call(e),\"regexp\"):t.stylize(\"[Object]\",\"special\"):(t.seen.push(e),c=k?function(t,e,r,n,a){for(var i=[],o=0,s=e.length;o<s;++o)E(e,String(o))?i.push(f(t,e,r,n,String(o),!0)):i.push(\"\");return a.forEach((function(a){a.match(/^\\d+$/)||i.push(f(t,e,r,n,a,!0))})),i}(t,e,n,s,o):o.map((function(r){return f(t,e,n,s,r,k)})),t.seen.pop(),function(t,e,r){if(t.reduce((function(t,e){return e.indexOf(\"\\n\")>=0&&0,t+e.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1}),0)>60)return r[0]+(\"\"===e?\"\":e+\"\\n \")+\" \"+t.join(\",\\n  \")+\" \"+r[1];return r[0]+e+\" \"+t.join(\", \")+\" \"+r[1]}(c,b,M)):M[0]+b+M[1]}function h(t){return\"[\"+Error.prototype.toString.call(t)+\"]\"}function f(t,e,r,n,a,i){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,a)||{value:e[a]}).get?s=l.set?t.stylize(\"[Getter/Setter]\",\"special\"):t.stylize(\"[Getter]\",\"special\"):l.set&&(s=t.stylize(\"[Setter]\",\"special\")),E(n,a)||(o=\"[\"+a+\"]\"),s||(t.seen.indexOf(l.value)<0?(s=g(r)?u(t,l.value,null):u(t,l.value,r-1)).indexOf(\"\\n\")>-1&&(s=i?s.split(\"\\n\").map((function(t){return\"  \"+t})).join(\"\\n\").substr(2):\"\\n\"+s.split(\"\\n\").map((function(t){return\"   \"+t})).join(\"\\n\")):s=t.stylize(\"[Circular]\",\"special\")),y(o)){if(i&&a.match(/^\\d+$/))return s;(o=JSON.stringify(\"\"+a)).match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(o=o.substr(1,o.length-2),o=t.stylize(o,\"name\")):(o=o.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),o=t.stylize(o,\"string\"))}return o+\": \"+s}function p(t){return Array.isArray(t)}function d(t){return\"boolean\"==typeof t}function g(t){return null===t}function m(t){return\"number\"==typeof t}function v(t){return\"string\"==typeof t}function y(t){return void 0===t}function x(t){return b(t)&&\"[object RegExp]\"===k(t)}function b(t){return\"object\"==typeof t&&null!==t}function _(t){return b(t)&&\"[object Date]\"===k(t)}function w(t){return b(t)&&(\"[object Error]\"===k(t)||t instanceof Error)}function T(t){return\"function\"==typeof t}function k(t){return Object.prototype.toString.call(t)}function M(t){return t<10?\"0\"+t.toString(10):t.toString(10)}r.debuglog=function(t){if(y(i)&&(i=e.env.NODE_DEBUG||\"\"),t=t.toUpperCase(),!o[t])if(new RegExp(\"\\\\b\"+t+\"\\\\b\",\"i\").test(i)){var n=e.pid;o[t]=function(){var e=r.format.apply(r,arguments);console.error(\"%s %d: %s\",t,n,e)}}else o[t]=function(){};return o[t]},r.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},r.isArray=p,r.isBoolean=d,r.isNull=g,r.isNullOrUndefined=function(t){return null==t},r.isNumber=m,r.isString=v,r.isSymbol=function(t){return\"symbol\"==typeof t},r.isUndefined=y,r.isRegExp=x,r.isObject=b,r.isDate=_,r.isError=w,r.isFunction=T,r.isPrimitive=function(t){return null===t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||\"symbol\"==typeof t||\"undefined\"==typeof t},r.isBuffer=t(\"./support/isBuffer\");var A=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];function S(){var t=new Date,e=[M(t.getHours()),M(t.getMinutes()),M(t.getSeconds())].join(\":\");return[t.getDate(),A[t.getMonth()],e].join(\" \")}function E(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.log=function(){console.log(\"%s - %s\",S(),r.format.apply(r,arguments))},r.inherits=t(\"inherits\"),r._extend=function(t,e){if(!e||!b(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}}).call(this,t(\"_process\"),\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"./support/isBuffer\":75,_process:500,inherits:74}],77:[function(t,e,r){e.exports=function(t){return atob(t)}},{}],78:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=e.length,i=new Array(r+1),o=0;o<r;++o){for(var s=new Array(r+1),l=0;l<=r;++l)s[l]=t[l][o];i[o]=s}i[r]=new Array(r+1);for(o=0;o<=r;++o)i[r][o]=1;var c=new Array(r+1);for(o=0;o<r;++o)c[o]=e[o];c[r]=1;var u=n(i,c),h=a(u[r+1]);0===h&&(h=1);var f=new Array(r+1);for(o=0;o<=r;++o)f[o]=a(u[o])/h;return f};var n=t(\"robust-linear-solve\");function a(t){for(var e=0,r=0;r<t.length;++r)e+=t[r];return e}},{\"robust-linear-solve\":519}],79:[function(t,e,r){\"use strict\";r.byteLength=function(t){var e=c(t),r=e[0],n=e[1];return 3*(r+n)/4-n},r.toByteArray=function(t){var e,r,n=c(t),o=n[0],s=n[1],l=new i(function(t,e,r){return 3*(e+r)/4-r}(0,o,s)),u=0,h=s>0?o-4:o;for(r=0;r<h;r+=4)e=a[t.charCodeAt(r)]<<18|a[t.charCodeAt(r+1)]<<12|a[t.charCodeAt(r+2)]<<6|a[t.charCodeAt(r+3)],l[u++]=e>>16&255,l[u++]=e>>8&255,l[u++]=255&e;2===s&&(e=a[t.charCodeAt(r)]<<2|a[t.charCodeAt(r+1)]>>4,l[u++]=255&e);1===s&&(e=a[t.charCodeAt(r)]<<10|a[t.charCodeAt(r+1)]<<4|a[t.charCodeAt(r+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e);return l},r.fromByteArray=function(t){for(var e,r=t.length,a=r%3,i=[],o=0,s=r-a;o<s;o+=16383)i.push(u(t,o,o+16383>s?s:o+16383));1===a?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+\"==\")):2===a&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+\"=\"));return i.join(\"\")};for(var n=[],a=[],i=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",s=0,l=o.length;s<l;++s)n[s]=o[s],a[o.charCodeAt(s)]=s;function c(t){var e=t.length;if(e%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var r=t.indexOf(\"=\");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function u(t,e,r){for(var a,i,o=[],s=e;s<r;s+=3)a=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),o.push(n[(i=a)>>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return o.join(\"\")}a[\"-\".charCodeAt(0)]=62,a[\"_\".charCodeAt(0)]=63},{}],80:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[1]).add(e[0].mul(t[1])),t[1].mul(e[1]))}},{\"./lib/rationalize\":90}],81:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t[0].mul(e[1]).cmp(e[0].mul(t[1]))}},{}],82:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[1]),t[1].mul(e[0]))}},{\"./lib/rationalize\":90}],83:[function(t,e,r){\"use strict\";var n=t(\"./is-rat\"),a=t(\"./lib/is-bn\"),i=t(\"./lib/num-to-bn\"),o=t(\"./lib/str-to-bn\"),s=t(\"./lib/rationalize\"),l=t(\"./div\");e.exports=function t(e,r){if(n(e))return r?l(e,t(r)):[e[0].clone(),e[1].clone()];var c,u,h=0;if(a(e))c=e.clone();else if(\"string\"==typeof e)c=o(e);else{if(0===e)return[i(0),i(1)];if(e===Math.floor(e))c=i(e);else{for(;e!==Math.floor(e);)e*=Math.pow(2,256),h-=256;c=i(e)}}if(n(r))c.mul(r[1]),u=r[0].clone();else if(a(r))u=r.clone();else if(\"string\"==typeof r)u=o(r);else if(r)if(r===Math.floor(r))u=i(r);else{for(;r!==Math.floor(r);)r*=Math.pow(2,256),h+=256;u=i(r)}else u=i(1);h>0?c=c.ushln(h):h<0&&(u=u.ushln(-h));return s(c,u)}},{\"./div\":82,\"./is-rat\":84,\"./lib/is-bn\":88,\"./lib/num-to-bn\":89,\"./lib/rationalize\":90,\"./lib/str-to-bn\":91}],84:[function(t,e,r){\"use strict\";var n=t(\"./lib/is-bn\");e.exports=function(t){return Array.isArray(t)&&2===t.length&&n(t[0])&&n(t[1])}},{\"./lib/is-bn\":88}],85:[function(t,e,r){\"use strict\";var n=t(\"bn.js\");e.exports=function(t){return t.cmp(new n(0))}},{\"bn.js\":99}],86:[function(t,e,r){\"use strict\";var n=t(\"./bn-sign\");e.exports=function(t){var e=t.length,r=t.words,a=0;if(1===e)a=r[0];else if(2===e)a=r[0]+67108864*r[1];else for(var i=0;i<e;i++){var o=r[i];a+=o*Math.pow(67108864,i)}return n(t)*a}},{\"./bn-sign\":85}],87:[function(t,e,r){\"use strict\";var n=t(\"double-bits\"),a=t(\"bit-twiddle\").countTrailingZeros;e.exports=function(t){var e=a(n.lo(t));if(e<32)return e;var r=a(n.hi(t));if(r>20)return 52;return r+32}},{\"bit-twiddle\":97,\"double-bits\":173}],88:[function(t,e,r){\"use strict\";t(\"bn.js\");e.exports=function(t){return t&&\"object\"==typeof t&&Boolean(t.words)}},{\"bn.js\":99}],89:[function(t,e,r){\"use strict\";var n=t(\"bn.js\"),a=t(\"double-bits\");e.exports=function(t){var e=a.exponent(t);return e<52?new n(t):new n(t*Math.pow(2,52-e)).ushln(e-52)}},{\"bn.js\":99,\"double-bits\":173}],90:[function(t,e,r){\"use strict\";var n=t(\"./num-to-bn\"),a=t(\"./bn-sign\");e.exports=function(t,e){var r=a(t),i=a(e);if(0===r)return[n(0),n(1)];if(0===i)return[n(0),n(0)];i<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);if(o.cmpn(1))return[t.div(o),e.div(o)];return[t,e]}},{\"./bn-sign\":85,\"./num-to-bn\":89}],91:[function(t,e,r){\"use strict\";var n=t(\"bn.js\");e.exports=function(t){return new n(t)}},{\"bn.js\":99}],92:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[0]),t[1].mul(e[1]))}},{\"./lib/rationalize\":90}],93:[function(t,e,r){\"use strict\";var n=t(\"./lib/bn-sign\");e.exports=function(t){return n(t[0])*n(t[1])}},{\"./lib/bn-sign\":85}],94:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},{\"./lib/rationalize\":90}],95:[function(t,e,r){\"use strict\";var n=t(\"./lib/bn-to-num\"),a=t(\"./lib/ctz\");e.exports=function(t){var e=t[0],r=t[1];if(0===e.cmpn(0))return 0;var i=e.abs().divmod(r.abs()),o=i.div,s=n(o),l=i.mod,c=e.negative!==r.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=a(s)+4,h=n(l.ushln(u).divRound(r));return c*(s+h*Math.pow(2,-u))}var f=r.bitLength()-l.bitLength()+53;h=n(l.ushln(f).divRound(r));return f<1023?c*h*Math.pow(2,-f):(h*=Math.pow(2,-1023),c*h*Math.pow(2,1023-f))}},{\"./lib/bn-to-num\":86,\"./lib/ctz\":87}],96:[function(t,e,r){\"use strict\";function n(t,e,r,n,a){var i=[\"function \",t,\"(a,l,h,\",n.join(\",\"),\"){\",a?\"\":\"var i=\",r?\"l-1\":\"h+1\",\";while(l<=h){var m=(l+h)>>>1,x=a[m]\"];return a?e.indexOf(\"c\")<0?i.push(\";if(x===y){return m}else if(x<=y){\"):i.push(\";var p=c(x,y);if(p===0){return m}else if(p<=0){\"):i.push(\";if(\",e,\"){i=m;\"),r?i.push(\"l=m+1}else{h=m-1}\"):i.push(\"h=m-1}else{l=m+1}\"),i.push(\"}\"),a?i.push(\"return -1};\"):i.push(\"return i};\"),i.join(\"\")}function a(t,e,r,a){return new Function([n(\"A\",\"x\"+t+\"y\",e,[\"y\"],a),n(\"P\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],a),\"function dispatchBsearch\",r,\"(a,y,c,l,h){if(typeof(c)==='function'){return P(a,(l===void 0)?0:l|0,(h===void 0)?a.length-1:h|0,y,c)}else{return A(a,(c===void 0)?0:c|0,(l===void 0)?a.length-1:l|0,y)}}return dispatchBsearch\",r].join(\"\"))()}e.exports={ge:a(\">=\",!1,\"GE\"),gt:a(\">\",!1,\"GT\"),lt:a(\"<\",!0,\"LT\"),le:a(\"<=\",!0,\"LE\"),eq:a(\"-\",!0,\"EQ\",!0)}},{}],97:[function(t,e,r){\"use strict\";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}r.INT_BITS=32,r.INT_MAX=2147483647,r.INT_MIN=-1<<31,r.sign=function(t){return(t>0)-(t<0)},r.abs=function(t){var e=t>>31;return(t^e)-e},r.min=function(t,e){return e^(t^e)&-(t<e)},r.max=function(t,e){return t^(t^e)&-(t<e)},r.isPow2=function(t){return!(t&t-1||!t)},r.log2=function(t){var e,r;return e=(t>65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},r.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},r.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},r.countTrailingZeros=n,r.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1},r.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},r.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var a=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,a=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--a;t[e]=n<<a&255}}(a),r.reverse=function(t){return a[255&t]<<24|a[t>>>8&255]<<16|a[t>>>16&255]<<8|a[t>>>24&255]},r.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},r.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},r.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},r.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},r.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},{}],98:[function(t,e,r){\"use strict\";var n=t(\"clamp\");e.exports=function(t,e){e||(e={});var r,o,s,l,c,u,h,f,p,d,g,m=null==e.cutoff?.25:e.cutoff,v=null==e.radius?8:e.radius,y=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error(\"For raw data width and height should be provided by options\");r=e.width,o=e.height,l=t,u=e.stride?e.stride:Math.floor(t.length/r/o)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(h=(f=t).getContext(\"2d\"),r=f.width,o=f.height,p=h.getImageData(0,0,r,o),l=p.data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(f=t.canvas,h=t,r=f.width,o=f.height,p=h.getImageData(0,0,r,o),l=p.data,u=4):window.ImageData&&t instanceof window.ImageData&&(p=t,r=t.width,o=t.height,l=p.data,u=4);if(s=Math.max(r,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(c=l,l=Array(r*o),d=0,g=c.length;d<g;d++)l[d]=c[d*u+y]/255;else if(1!==u)throw Error(\"Raw data can have only 1 value per pixel\");var x=Array(r*o),b=Array(r*o),_=Array(s),w=Array(s),T=Array(s+1),k=Array(s);for(d=0,g=r*o;d<g;d++){var M=l[d];x[d]=1===M?0:0===M?a:Math.pow(Math.max(0,.5-M),2),b[d]=1===M?a:0===M?0:Math.pow(Math.max(0,M-.5),2)}i(x,r,o,_,w,k,T),i(b,r,o,_,w,k,T);var A=window.Float32Array?new Float32Array(r*o):new Array(r*o);for(d=0,g=r*o;d<g;d++)A[d]=n(1-((x[d]-b[d])/v+m),0,1);return A};var a=1e20;function i(t,e,r,n,a,i,s){for(var l=0;l<e;l++){for(var c=0;c<r;c++)n[c]=t[c*e+l];for(o(n,a,i,s,r),c=0;c<r;c++)t[c*e+l]=a[c]}for(c=0;c<r;c++){for(l=0;l<e;l++)n[l]=t[c*e+l];for(o(n,a,i,s,e),l=0;l<e;l++)t[c*e+l]=Math.sqrt(a[l])}}function o(t,e,r,n,i){r[0]=0,n[0]=-a,n[1]=+a;for(var o=1,s=0;o<i;o++){for(var l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);l<=n[s];)s--,l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);r[++s]=o,n[s]=l,n[s+1]=+a}for(o=0,s=0;o<i;o++){for(;n[s+1]<o;)s++;e[o]=(o-r[s])*(o-r[s])+t[r[s]]}}},{clamp:120}],99:[function(t,e,r){!function(e,r){\"use strict\";function n(t,e){if(!t)throw new Error(e||\"Assertion failed\")}function a(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function i(t,e,r){if(i.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&(\"le\"!==e&&\"be\"!==e||(r=e,e=10),this._init(t||0,e||10,r||\"be\"))}var o;\"object\"==typeof e?e.exports=i:r.BN=i,i.BN=i,i.wordSize=26;try{o=t(\"buffer\").Buffer}catch(t){}function s(t,e,r){for(var n=0,a=Math.min(t.length,r),i=e;i<a;i++){var o=t.charCodeAt(i)-48;n<<=4,n|=o>=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return n}function l(t,e,r,n){for(var a=0,i=Math.min(t.length,r),o=e;o<i;o++){var s=t.charCodeAt(o)-48;a*=n,a+=s>=49?s-49+10:s>=17?s-17+10:s}return a}i.isBN=function(t){return t instanceof i||null!==t&&\"object\"==typeof t&&t.constructor.wordSize===i.wordSize&&Array.isArray(t.words)},i.max=function(t,e){return t.cmp(e)>0?t:e},i.min=function(t,e){return t.cmp(e)<0?t:e},i.prototype._init=function(t,e,r){if(\"number\"==typeof t)return this._initNumber(t,e,r);if(\"object\"==typeof t)return this._initArray(t,e,r);\"hex\"===e&&(e=16),n(e===(0|e)&&e>=2&&e<=36);var a=0;\"-\"===(t=t.toString().replace(/\\s+/g,\"\"))[0]&&a++,16===e?this._parseHex(t,a):this._parseBase(t,e,a),\"-\"===t[0]&&(this.negative=1),this.strip(),\"le\"===r&&this._initArray(this.toArray(),e,r)},i.prototype._initNumber=function(t,e,r){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(n(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),\"le\"===r&&this._initArray(this.toArray(),e,r)},i.prototype._initArray=function(t,e,r){if(n(\"number\"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var a=0;a<this.length;a++)this.words[a]=0;var i,o,s=0;if(\"be\"===r)for(a=t.length-1,i=0;a>=0;a-=3)o=t[a]|t[a-1]<<8|t[a-2]<<16,this.words[i]|=o<<s&67108863,this.words[i+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);else if(\"le\"===r)for(a=0,i=0;a<t.length;a+=3)o=t[a]|t[a+1]<<8|t[a+2]<<16,this.words[i]|=o<<s&67108863,this.words[i+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);return this.strip()},i.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var n,a,i=0;for(r=t.length-6,n=0;r>=e;r-=6)a=s(t,r,r+6),this.words[n]|=a<<i&67108863,this.words[n+1]|=a>>>26-i&4194303,(i+=24)>=26&&(i-=26,n++);r+6!==e&&(a=s(t,e,r+6),this.words[n]|=a<<i&67108863,this.words[n+1]|=a>>>26-i&4194303),this.strip()},i.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,a=1;a<=67108863;a*=e)n++;n--,a=a/e|0;for(var i=t.length-r,o=i%n,s=Math.min(i,i-o)+r,c=0,u=r;u<s;u+=n)c=l(t,u,u+n,e),this.imuln(a),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c);if(0!==o){var h=1;for(c=l(t,u,t.length,e),u=0;u<o;u++)h*=e;this.imuln(h),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}},i.prototype.copy=function(t){t.words=new Array(this.length);for(var e=0;e<this.length;e++)t.words[e]=this.words[e];t.length=this.length,t.negative=this.negative,t.red=this.red},i.prototype.clone=function(){var t=new i(null);return this.copy(t),t},i.prototype._expand=function(t){for(;this.length<t;)this.words[this.length++]=0;return this},i.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?\"<BN-R: \":\"<BN: \")+this.toString(16)+\">\"};var c=[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\",\"00000000\",\"000000000\",\"0000000000\",\"00000000000\",\"000000000000\",\"0000000000000\",\"00000000000000\",\"000000000000000\",\"0000000000000000\",\"00000000000000000\",\"000000000000000000\",\"0000000000000000000\",\"00000000000000000000\",\"000000000000000000000\",\"0000000000000000000000\",\"00000000000000000000000\",\"000000000000000000000000\",\"0000000000000000000000000\"],u=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var a=0|t.words[0],i=0|e.words[0],o=a*i,s=67108863&o,l=o/67108864|0;r.words[0]=s;for(var c=1;c<n;c++){for(var u=l>>>26,h=67108863&l,f=Math.min(c,e.length-1),p=Math.max(0,c-t.length+1);p<=f;p++){var d=c-p|0;u+=(o=(a=0|t.words[d])*(i=0|e.words[p])+h)/67108864|0,h=67108863&o}r.words[c]=0|h,l=0|u}return 0!==l?r.words[c]=0|l:r.length--,r.strip()}i.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||\"hex\"===t){r=\"\";for(var a=0,i=0,o=0;o<this.length;o++){var s=this.words[o],l=(16777215&(s<<a|i)).toString(16);r=0!==(i=s>>>24-a&16777215)||o!==this.length-1?c[6-l.length]+l+r:l+r,(a+=2)>=26&&(a-=26,o--)}for(0!==i&&(r=i.toString(16)+r);r.length%e!=0;)r=\"0\"+r;return 0!==this.negative&&(r=\"-\"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=u[t],p=h[t];r=\"\";var d=this.clone();for(d.negative=0;!d.isZero();){var g=d.modn(p).toString(t);r=(d=d.idivn(p)).isZero()?g+r:c[f-g.length]+g+r}for(this.isZero()&&(r=\"0\"+r);r.length%e!=0;)r=\"0\"+r;return 0!==this.negative&&(r=\"-\"+r),r}n(!1,\"Base should be between 2 and 36\")},i.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,\"Number can only safely store up to 53 bits\"),0!==this.negative?-t:t},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(t,e){return n(\"undefined\"!=typeof o),this.toArrayLike(o,t,e)},i.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},i.prototype.toArrayLike=function(t,e,r){var a=this.byteLength(),i=r||Math.max(1,a);n(a<=i,\"byte array longer than desired length\"),n(i>0,\"Requested array length <= 0\"),this.strip();var o,s,l=\"le\"===e,c=new t(i),u=this.clone();if(l){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s<i;s++)c[s]=0}else{for(s=0;s<i-a;s++)c[s]=0;for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[i-s-1]=o}return c},Math.clz32?i.prototype._countBits=function(t){return 32-Math.clz32(t)}:i.prototype._countBits=function(t){var e=t,r=0;return e>=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},i.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},i.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;e<this.length;e++){var r=this._zeroBits(this.words[e]);if(t+=r,26!==r)break}return t},i.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},i.prototype.toTwos=function(t){return 0!==this.negative?this.abs().inotn(t).iaddn(1):this.clone()},i.prototype.fromTwos=function(t){return this.testn(t-1)?this.notn(t).iaddn(1).ineg():this.clone()},i.prototype.isNeg=function(){return 0!==this.negative},i.prototype.neg=function(){return this.clone().ineg()},i.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},i.prototype.iuor=function(t){for(;this.length<t.length;)this.words[this.length++]=0;for(var e=0;e<t.length;e++)this.words[e]=this.words[e]|t.words[e];return this.strip()},i.prototype.ior=function(t){return n(0==(this.negative|t.negative)),this.iuor(t)},i.prototype.or=function(t){return this.length>t.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},i.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;r<e.length;r++)this.words[r]=this.words[r]&t.words[r];return this.length=e.length,this.strip()},i.prototype.iand=function(t){return n(0==(this.negative|t.negative)),this.iuand(t)},i.prototype.and=function(t){return this.length>t.length?this.clone().iand(t):t.clone().iand(this)},i.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},i.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;n<r.length;n++)this.words[n]=e.words[n]^r.words[n];if(this!==e)for(;n<e.length;n++)this.words[n]=e.words[n];return this.length=e.length,this.strip()},i.prototype.ixor=function(t){return n(0==(this.negative|t.negative)),this.iuxor(t)},i.prototype.xor=function(t){return this.length>t.length?this.clone().ixor(t):t.clone().ixor(this)},i.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},i.prototype.inotn=function(t){n(\"number\"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var a=0;a<e;a++)this.words[a]=67108863&~this.words[a];return r>0&&(this.words[a]=~this.words[a]&67108863>>26-r),this.strip()},i.prototype.notn=function(t){return this.clone().inotn(t)},i.prototype.setn=function(t,e){n(\"number\"==typeof t&&t>=0);var r=t/26|0,a=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<<a:this.words[r]&~(1<<a),this.strip()},i.prototype.iadd=function(t){var e,r,n;if(0!==this.negative&&0===t.negative)return this.negative=0,e=this.isub(t),this.negative^=1,this._normSign();if(0===this.negative&&0!==t.negative)return t.negative=0,e=this.isub(t),t.negative=1,e._normSign();this.length>t.length?(r=this,n=t):(r=t,n=this);for(var a=0,i=0;i<n.length;i++)e=(0|r.words[i])+(0|n.words[i])+a,this.words[i]=67108863&e,a=e>>>26;for(;0!==a&&i<r.length;i++)e=(0|r.words[i])+a,this.words[i]=67108863&e,a=e>>>26;if(this.length=r.length,0!==a)this.words[this.length]=a,this.length++;else if(r!==this)for(;i<r.length;i++)this.words[i]=r.words[i];return this},i.prototype.add=function(t){var e;return 0!==t.negative&&0===this.negative?(t.negative=0,e=this.sub(t),t.negative^=1,e):0===t.negative&&0!==this.negative?(this.negative=0,e=t.sub(this),this.negative=1,e):this.length>t.length?this.clone().iadd(t):t.clone().iadd(this)},i.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,a=this.cmp(t);if(0===a)return this.negative=0,this.length=1,this.words[0]=0,this;a>0?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o<n.length;o++)i=(e=(0|r.words[o])-(0|n.words[o])+i)>>26,this.words[o]=67108863&e;for(;0!==i&&o<r.length;o++)i=(e=(0|r.words[o])+i)>>26,this.words[o]=67108863&e;if(0===i&&o<r.length&&r!==this)for(;o<r.length;o++)this.words[o]=r.words[o];return this.length=Math.max(this.length,o),r!==this&&(this.negative=1),this.strip()},i.prototype.sub=function(t){return this.clone().isub(t)};var p=function(t,e,r){var n,a,i,o=t.words,s=e.words,l=r.words,c=0,u=0|o[0],h=8191&u,f=u>>>13,p=0|o[1],d=8191&p,g=p>>>13,m=0|o[2],v=8191&m,y=m>>>13,x=0|o[3],b=8191&x,_=x>>>13,w=0|o[4],T=8191&w,k=w>>>13,M=0|o[5],A=8191&M,S=M>>>13,E=0|o[6],C=8191&E,L=E>>>13,P=0|o[7],I=8191&P,z=P>>>13,O=0|o[8],D=8191&O,R=O>>>13,F=0|o[9],B=8191&F,N=F>>>13,j=0|s[0],U=8191&j,V=j>>>13,q=0|s[1],H=8191&q,G=q>>>13,Y=0|s[2],W=8191&Y,Z=Y>>>13,X=0|s[3],J=8191&X,K=X>>>13,Q=0|s[4],$=8191&Q,tt=Q>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,at=0|s[6],it=8191&at,ot=at>>>13,st=0|s[7],lt=8191&st,ct=st>>>13,ut=0|s[8],ht=8191&ut,ft=ut>>>13,pt=0|s[9],dt=8191&pt,gt=pt>>>13;r.negative=t.negative^e.negative,r.length=19;var mt=(c+(n=Math.imul(h,U))|0)+((8191&(a=(a=Math.imul(h,V))+Math.imul(f,U)|0))<<13)|0;c=((i=Math.imul(f,V))+(a>>>13)|0)+(mt>>>26)|0,mt&=67108863,n=Math.imul(d,U),a=(a=Math.imul(d,V))+Math.imul(g,U)|0,i=Math.imul(g,V);var vt=(c+(n=n+Math.imul(h,H)|0)|0)+((8191&(a=(a=a+Math.imul(h,G)|0)+Math.imul(f,H)|0))<<13)|0;c=((i=i+Math.imul(f,G)|0)+(a>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,U),a=(a=Math.imul(v,V))+Math.imul(y,U)|0,i=Math.imul(y,V),n=n+Math.imul(d,H)|0,a=(a=a+Math.imul(d,G)|0)+Math.imul(g,H)|0,i=i+Math.imul(g,G)|0;var yt=(c+(n=n+Math.imul(h,W)|0)|0)+((8191&(a=(a=a+Math.imul(h,Z)|0)+Math.imul(f,W)|0))<<13)|0;c=((i=i+Math.imul(f,Z)|0)+(a>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(b,U),a=(a=Math.imul(b,V))+Math.imul(_,U)|0,i=Math.imul(_,V),n=n+Math.imul(v,H)|0,a=(a=a+Math.imul(v,G)|0)+Math.imul(y,H)|0,i=i+Math.imul(y,G)|0,n=n+Math.imul(d,W)|0,a=(a=a+Math.imul(d,Z)|0)+Math.imul(g,W)|0,i=i+Math.imul(g,Z)|0;var xt=(c+(n=n+Math.imul(h,J)|0)|0)+((8191&(a=(a=a+Math.imul(h,K)|0)+Math.imul(f,J)|0))<<13)|0;c=((i=i+Math.imul(f,K)|0)+(a>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(T,U),a=(a=Math.imul(T,V))+Math.imul(k,U)|0,i=Math.imul(k,V),n=n+Math.imul(b,H)|0,a=(a=a+Math.imul(b,G)|0)+Math.imul(_,H)|0,i=i+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,a=(a=a+Math.imul(v,Z)|0)+Math.imul(y,W)|0,i=i+Math.imul(y,Z)|0,n=n+Math.imul(d,J)|0,a=(a=a+Math.imul(d,K)|0)+Math.imul(g,J)|0,i=i+Math.imul(g,K)|0;var bt=(c+(n=n+Math.imul(h,$)|0)|0)+((8191&(a=(a=a+Math.imul(h,tt)|0)+Math.imul(f,$)|0))<<13)|0;c=((i=i+Math.imul(f,tt)|0)+(a>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(A,U),a=(a=Math.imul(A,V))+Math.imul(S,U)|0,i=Math.imul(S,V),n=n+Math.imul(T,H)|0,a=(a=a+Math.imul(T,G)|0)+Math.imul(k,H)|0,i=i+Math.imul(k,G)|0,n=n+Math.imul(b,W)|0,a=(a=a+Math.imul(b,Z)|0)+Math.imul(_,W)|0,i=i+Math.imul(_,Z)|0,n=n+Math.imul(v,J)|0,a=(a=a+Math.imul(v,K)|0)+Math.imul(y,J)|0,i=i+Math.imul(y,K)|0,n=n+Math.imul(d,$)|0,a=(a=a+Math.imul(d,tt)|0)+Math.imul(g,$)|0,i=i+Math.imul(g,tt)|0;var _t=(c+(n=n+Math.imul(h,rt)|0)|0)+((8191&(a=(a=a+Math.imul(h,nt)|0)+Math.imul(f,rt)|0))<<13)|0;c=((i=i+Math.imul(f,nt)|0)+(a>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(C,U),a=(a=Math.imul(C,V))+Math.imul(L,U)|0,i=Math.imul(L,V),n=n+Math.imul(A,H)|0,a=(a=a+Math.imul(A,G)|0)+Math.imul(S,H)|0,i=i+Math.imul(S,G)|0,n=n+Math.imul(T,W)|0,a=(a=a+Math.imul(T,Z)|0)+Math.imul(k,W)|0,i=i+Math.imul(k,Z)|0,n=n+Math.imul(b,J)|0,a=(a=a+Math.imul(b,K)|0)+Math.imul(_,J)|0,i=i+Math.imul(_,K)|0,n=n+Math.imul(v,$)|0,a=(a=a+Math.imul(v,tt)|0)+Math.imul(y,$)|0,i=i+Math.imul(y,tt)|0,n=n+Math.imul(d,rt)|0,a=(a=a+Math.imul(d,nt)|0)+Math.imul(g,rt)|0,i=i+Math.imul(g,nt)|0;var wt=(c+(n=n+Math.imul(h,it)|0)|0)+((8191&(a=(a=a+Math.imul(h,ot)|0)+Math.imul(f,it)|0))<<13)|0;c=((i=i+Math.imul(f,ot)|0)+(a>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(I,U),a=(a=Math.imul(I,V))+Math.imul(z,U)|0,i=Math.imul(z,V),n=n+Math.imul(C,H)|0,a=(a=a+Math.imul(C,G)|0)+Math.imul(L,H)|0,i=i+Math.imul(L,G)|0,n=n+Math.imul(A,W)|0,a=(a=a+Math.imul(A,Z)|0)+Math.imul(S,W)|0,i=i+Math.imul(S,Z)|0,n=n+Math.imul(T,J)|0,a=(a=a+Math.imul(T,K)|0)+Math.imul(k,J)|0,i=i+Math.imul(k,K)|0,n=n+Math.imul(b,$)|0,a=(a=a+Math.imul(b,tt)|0)+Math.imul(_,$)|0,i=i+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,a=(a=a+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,i=i+Math.imul(y,nt)|0,n=n+Math.imul(d,it)|0,a=(a=a+Math.imul(d,ot)|0)+Math.imul(g,it)|0,i=i+Math.imul(g,ot)|0;var Tt=(c+(n=n+Math.imul(h,lt)|0)|0)+((8191&(a=(a=a+Math.imul(h,ct)|0)+Math.imul(f,lt)|0))<<13)|0;c=((i=i+Math.imul(f,ct)|0)+(a>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(D,U),a=(a=Math.imul(D,V))+Math.imul(R,U)|0,i=Math.imul(R,V),n=n+Math.imul(I,H)|0,a=(a=a+Math.imul(I,G)|0)+Math.imul(z,H)|0,i=i+Math.imul(z,G)|0,n=n+Math.imul(C,W)|0,a=(a=a+Math.imul(C,Z)|0)+Math.imul(L,W)|0,i=i+Math.imul(L,Z)|0,n=n+Math.imul(A,J)|0,a=(a=a+Math.imul(A,K)|0)+Math.imul(S,J)|0,i=i+Math.imul(S,K)|0,n=n+Math.imul(T,$)|0,a=(a=a+Math.imul(T,tt)|0)+Math.imul(k,$)|0,i=i+Math.imul(k,tt)|0,n=n+Math.imul(b,rt)|0,a=(a=a+Math.imul(b,nt)|0)+Math.imul(_,rt)|0,i=i+Math.imul(_,nt)|0,n=n+Math.imul(v,it)|0,a=(a=a+Math.imul(v,ot)|0)+Math.imul(y,it)|0,i=i+Math.imul(y,ot)|0,n=n+Math.imul(d,lt)|0,a=(a=a+Math.imul(d,ct)|0)+Math.imul(g,lt)|0,i=i+Math.imul(g,ct)|0;var kt=(c+(n=n+Math.imul(h,ht)|0)|0)+((8191&(a=(a=a+Math.imul(h,ft)|0)+Math.imul(f,ht)|0))<<13)|0;c=((i=i+Math.imul(f,ft)|0)+(a>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(B,U),a=(a=Math.imul(B,V))+Math.imul(N,U)|0,i=Math.imul(N,V),n=n+Math.imul(D,H)|0,a=(a=a+Math.imul(D,G)|0)+Math.imul(R,H)|0,i=i+Math.imul(R,G)|0,n=n+Math.imul(I,W)|0,a=(a=a+Math.imul(I,Z)|0)+Math.imul(z,W)|0,i=i+Math.imul(z,Z)|0,n=n+Math.imul(C,J)|0,a=(a=a+Math.imul(C,K)|0)+Math.imul(L,J)|0,i=i+Math.imul(L,K)|0,n=n+Math.imul(A,$)|0,a=(a=a+Math.imul(A,tt)|0)+Math.imul(S,$)|0,i=i+Math.imul(S,tt)|0,n=n+Math.imul(T,rt)|0,a=(a=a+Math.imul(T,nt)|0)+Math.imul(k,rt)|0,i=i+Math.imul(k,nt)|0,n=n+Math.imul(b,it)|0,a=(a=a+Math.imul(b,ot)|0)+Math.imul(_,it)|0,i=i+Math.imul(_,ot)|0,n=n+Math.imul(v,lt)|0,a=(a=a+Math.imul(v,ct)|0)+Math.imul(y,lt)|0,i=i+Math.imul(y,ct)|0,n=n+Math.imul(d,ht)|0,a=(a=a+Math.imul(d,ft)|0)+Math.imul(g,ht)|0,i=i+Math.imul(g,ft)|0;var Mt=(c+(n=n+Math.imul(h,dt)|0)|0)+((8191&(a=(a=a+Math.imul(h,gt)|0)+Math.imul(f,dt)|0))<<13)|0;c=((i=i+Math.imul(f,gt)|0)+(a>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(B,H),a=(a=Math.imul(B,G))+Math.imul(N,H)|0,i=Math.imul(N,G),n=n+Math.imul(D,W)|0,a=(a=a+Math.imul(D,Z)|0)+Math.imul(R,W)|0,i=i+Math.imul(R,Z)|0,n=n+Math.imul(I,J)|0,a=(a=a+Math.imul(I,K)|0)+Math.imul(z,J)|0,i=i+Math.imul(z,K)|0,n=n+Math.imul(C,$)|0,a=(a=a+Math.imul(C,tt)|0)+Math.imul(L,$)|0,i=i+Math.imul(L,tt)|0,n=n+Math.imul(A,rt)|0,a=(a=a+Math.imul(A,nt)|0)+Math.imul(S,rt)|0,i=i+Math.imul(S,nt)|0,n=n+Math.imul(T,it)|0,a=(a=a+Math.imul(T,ot)|0)+Math.imul(k,it)|0,i=i+Math.imul(k,ot)|0,n=n+Math.imul(b,lt)|0,a=(a=a+Math.imul(b,ct)|0)+Math.imul(_,lt)|0,i=i+Math.imul(_,ct)|0,n=n+Math.imul(v,ht)|0,a=(a=a+Math.imul(v,ft)|0)+Math.imul(y,ht)|0,i=i+Math.imul(y,ft)|0;var At=(c+(n=n+Math.imul(d,dt)|0)|0)+((8191&(a=(a=a+Math.imul(d,gt)|0)+Math.imul(g,dt)|0))<<13)|0;c=((i=i+Math.imul(g,gt)|0)+(a>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(B,W),a=(a=Math.imul(B,Z))+Math.imul(N,W)|0,i=Math.imul(N,Z),n=n+Math.imul(D,J)|0,a=(a=a+Math.imul(D,K)|0)+Math.imul(R,J)|0,i=i+Math.imul(R,K)|0,n=n+Math.imul(I,$)|0,a=(a=a+Math.imul(I,tt)|0)+Math.imul(z,$)|0,i=i+Math.imul(z,tt)|0,n=n+Math.imul(C,rt)|0,a=(a=a+Math.imul(C,nt)|0)+Math.imul(L,rt)|0,i=i+Math.imul(L,nt)|0,n=n+Math.imul(A,it)|0,a=(a=a+Math.imul(A,ot)|0)+Math.imul(S,it)|0,i=i+Math.imul(S,ot)|0,n=n+Math.imul(T,lt)|0,a=(a=a+Math.imul(T,ct)|0)+Math.imul(k,lt)|0,i=i+Math.imul(k,ct)|0,n=n+Math.imul(b,ht)|0,a=(a=a+Math.imul(b,ft)|0)+Math.imul(_,ht)|0,i=i+Math.imul(_,ft)|0;var St=(c+(n=n+Math.imul(v,dt)|0)|0)+((8191&(a=(a=a+Math.imul(v,gt)|0)+Math.imul(y,dt)|0))<<13)|0;c=((i=i+Math.imul(y,gt)|0)+(a>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(B,J),a=(a=Math.imul(B,K))+Math.imul(N,J)|0,i=Math.imul(N,K),n=n+Math.imul(D,$)|0,a=(a=a+Math.imul(D,tt)|0)+Math.imul(R,$)|0,i=i+Math.imul(R,tt)|0,n=n+Math.imul(I,rt)|0,a=(a=a+Math.imul(I,nt)|0)+Math.imul(z,rt)|0,i=i+Math.imul(z,nt)|0,n=n+Math.imul(C,it)|0,a=(a=a+Math.imul(C,ot)|0)+Math.imul(L,it)|0,i=i+Math.imul(L,ot)|0,n=n+Math.imul(A,lt)|0,a=(a=a+Math.imul(A,ct)|0)+Math.imul(S,lt)|0,i=i+Math.imul(S,ct)|0,n=n+Math.imul(T,ht)|0,a=(a=a+Math.imul(T,ft)|0)+Math.imul(k,ht)|0,i=i+Math.imul(k,ft)|0;var Et=(c+(n=n+Math.imul(b,dt)|0)|0)+((8191&(a=(a=a+Math.imul(b,gt)|0)+Math.imul(_,dt)|0))<<13)|0;c=((i=i+Math.imul(_,gt)|0)+(a>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(B,$),a=(a=Math.imul(B,tt))+Math.imul(N,$)|0,i=Math.imul(N,tt),n=n+Math.imul(D,rt)|0,a=(a=a+Math.imul(D,nt)|0)+Math.imul(R,rt)|0,i=i+Math.imul(R,nt)|0,n=n+Math.imul(I,it)|0,a=(a=a+Math.imul(I,ot)|0)+Math.imul(z,it)|0,i=i+Math.imul(z,ot)|0,n=n+Math.imul(C,lt)|0,a=(a=a+Math.imul(C,ct)|0)+Math.imul(L,lt)|0,i=i+Math.imul(L,ct)|0,n=n+Math.imul(A,ht)|0,a=(a=a+Math.imul(A,ft)|0)+Math.imul(S,ht)|0,i=i+Math.imul(S,ft)|0;var Ct=(c+(n=n+Math.imul(T,dt)|0)|0)+((8191&(a=(a=a+Math.imul(T,gt)|0)+Math.imul(k,dt)|0))<<13)|0;c=((i=i+Math.imul(k,gt)|0)+(a>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,n=Math.imul(B,rt),a=(a=Math.imul(B,nt))+Math.imul(N,rt)|0,i=Math.imul(N,nt),n=n+Math.imul(D,it)|0,a=(a=a+Math.imul(D,ot)|0)+Math.imul(R,it)|0,i=i+Math.imul(R,ot)|0,n=n+Math.imul(I,lt)|0,a=(a=a+Math.imul(I,ct)|0)+Math.imul(z,lt)|0,i=i+Math.imul(z,ct)|0,n=n+Math.imul(C,ht)|0,a=(a=a+Math.imul(C,ft)|0)+Math.imul(L,ht)|0,i=i+Math.imul(L,ft)|0;var Lt=(c+(n=n+Math.imul(A,dt)|0)|0)+((8191&(a=(a=a+Math.imul(A,gt)|0)+Math.imul(S,dt)|0))<<13)|0;c=((i=i+Math.imul(S,gt)|0)+(a>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,n=Math.imul(B,it),a=(a=Math.imul(B,ot))+Math.imul(N,it)|0,i=Math.imul(N,ot),n=n+Math.imul(D,lt)|0,a=(a=a+Math.imul(D,ct)|0)+Math.imul(R,lt)|0,i=i+Math.imul(R,ct)|0,n=n+Math.imul(I,ht)|0,a=(a=a+Math.imul(I,ft)|0)+Math.imul(z,ht)|0,i=i+Math.imul(z,ft)|0;var Pt=(c+(n=n+Math.imul(C,dt)|0)|0)+((8191&(a=(a=a+Math.imul(C,gt)|0)+Math.imul(L,dt)|0))<<13)|0;c=((i=i+Math.imul(L,gt)|0)+(a>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(B,lt),a=(a=Math.imul(B,ct))+Math.imul(N,lt)|0,i=Math.imul(N,ct),n=n+Math.imul(D,ht)|0,a=(a=a+Math.imul(D,ft)|0)+Math.imul(R,ht)|0,i=i+Math.imul(R,ft)|0;var It=(c+(n=n+Math.imul(I,dt)|0)|0)+((8191&(a=(a=a+Math.imul(I,gt)|0)+Math.imul(z,dt)|0))<<13)|0;c=((i=i+Math.imul(z,gt)|0)+(a>>>13)|0)+(It>>>26)|0,It&=67108863,n=Math.imul(B,ht),a=(a=Math.imul(B,ft))+Math.imul(N,ht)|0,i=Math.imul(N,ft);var zt=(c+(n=n+Math.imul(D,dt)|0)|0)+((8191&(a=(a=a+Math.imul(D,gt)|0)+Math.imul(R,dt)|0))<<13)|0;c=((i=i+Math.imul(R,gt)|0)+(a>>>13)|0)+(zt>>>26)|0,zt&=67108863;var Ot=(c+(n=Math.imul(B,dt))|0)+((8191&(a=(a=Math.imul(B,gt))+Math.imul(N,dt)|0))<<13)|0;return c=((i=Math.imul(N,gt))+(a>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,l[0]=mt,l[1]=vt,l[2]=yt,l[3]=xt,l[4]=bt,l[5]=_t,l[6]=wt,l[7]=Tt,l[8]=kt,l[9]=Mt,l[10]=At,l[11]=St,l[12]=Et,l[13]=Ct,l[14]=Lt,l[15]=Pt,l[16]=It,l[17]=zt,l[18]=Ot,0!==c&&(l[19]=c,r.length++),r};function d(t,e,r){return(new g).mulp(t,e,r)}function g(t,e){this.x=t,this.y=e}Math.imul||(p=f),i.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):r<63?f(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,a=0,i=0;i<r.length-1;i++){var o=a;a=0;for(var s=67108863&n,l=Math.min(i,e.length-1),c=Math.max(0,i-t.length+1);c<=l;c++){var u=i-c,h=(0|t.words[u])*(0|e.words[c]),f=67108863&h;s=67108863&(f=f+s|0),a+=(o=(o=o+(h/67108864|0)|0)+(f>>>26)|0)>>>26,o&=67108863}r.words[i]=s,n=o,o=a}return 0!==n?r.words[i]=n:r.length--,r.strip()}(this,t,e):d(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),r=i.prototype._countBits(t)-1,n=0;n<t;n++)e[n]=this.revBin(n,r,t);return e},g.prototype.revBin=function(t,e,r){if(0===t||t===r-1)return t;for(var n=0,a=0;a<e;a++)n|=(1&t)<<e-a-1,t>>=1;return n},g.prototype.permute=function(t,e,r,n,a,i){for(var o=0;o<i;o++)n[o]=e[t[o]],a[o]=r[t[o]]},g.prototype.transform=function(t,e,r,n,a,i){this.permute(i,t,e,r,n,a);for(var o=1;o<a;o<<=1)for(var s=o<<1,l=Math.cos(2*Math.PI/s),c=Math.sin(2*Math.PI/s),u=0;u<a;u+=s)for(var h=l,f=c,p=0;p<o;p++){var d=r[u+p],g=n[u+p],m=r[u+p+o],v=n[u+p+o],y=h*m-f*v;v=h*v+f*m,m=y,r[u+p]=d+m,n[u+p]=g+v,r[u+p+o]=d-m,n[u+p+o]=g-v,p!==s&&(y=l*h-c*f,f=l*f+c*h,h=y)}},g.prototype.guessLen13b=function(t,e){var r=1|Math.max(e,t),n=1&r,a=0;for(r=r/2|0;r;r>>>=1)a++;return 1<<a+1+n},g.prototype.conjugate=function(t,e,r){if(!(r<=1))for(var n=0;n<r/2;n++){var a=t[n];t[n]=t[r-n-1],t[r-n-1]=a,a=e[n],e[n]=-e[r-n-1],e[r-n-1]=-a}},g.prototype.normalize13b=function(t,e){for(var r=0,n=0;n<e/2;n++){var a=8192*Math.round(t[2*n+1]/e)+Math.round(t[2*n]/e)+r;t[n]=67108863&a,r=a<67108864?0:a/67108864|0}return t},g.prototype.convert13b=function(t,e,r,a){for(var i=0,o=0;o<e;o++)i+=0|t[o],r[2*o]=8191&i,i>>>=13,r[2*o+1]=8191&i,i>>>=13;for(o=2*e;o<a;++o)r[o]=0;n(0===i),n(0==(-8192&i))},g.prototype.stub=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=0;return e},g.prototype.mulp=function(t,e,r){var n=2*this.guessLen13b(t.length,e.length),a=this.makeRBT(n),i=this.stub(n),o=new Array(n),s=new Array(n),l=new Array(n),c=new Array(n),u=new Array(n),h=new Array(n),f=r.words;f.length=n,this.convert13b(t.words,t.length,o,n),this.convert13b(e.words,e.length,c,n),this.transform(o,i,s,l,n,a),this.transform(c,i,u,h,n,a);for(var p=0;p<n;p++){var d=s[p]*u[p]-l[p]*h[p];l[p]=s[p]*h[p]+l[p]*u[p],s[p]=d}return this.conjugate(s,l,n),this.transform(s,l,f,i,n,a),this.conjugate(f,i,n),this.normalize13b(f,n),r.negative=t.negative^e.negative,r.length=t.length+e.length,r.strip()},i.prototype.mul=function(t){var e=new i(null);return e.words=new Array(this.length+t.length),this.mulTo(t,e)},i.prototype.mulf=function(t){var e=new i(null);return e.words=new Array(this.length+t.length),d(this,t,e)},i.prototype.imul=function(t){return this.clone().mulTo(t,this)},i.prototype.imuln=function(t){n(\"number\"==typeof t),n(t<67108864);for(var e=0,r=0;r<this.length;r++){var a=(0|this.words[r])*t,i=(67108863&a)+(67108863&e);e>>=26,e+=a/67108864|0,e+=i>>>26,this.words[r]=67108863&i}return 0!==e&&(this.words[r]=e,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r<e.length;r++){var n=r/26|0,a=r%26;e[r]=(t.words[n]&1<<a)>>>a}return e}(t);if(0===e.length)return new i(1);for(var r=this,n=0;n<e.length&&0===e[n];n++,r=r.sqr());if(++n<e.length)for(var a=r.sqr();n<e.length;n++,a=a.sqr())0!==e[n]&&(r=r.mul(a));return r},i.prototype.iushln=function(t){n(\"number\"==typeof t&&t>=0);var e,r=t%26,a=(t-r)/26,i=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(e=0;e<this.length;e++){var s=this.words[e]&i,l=(0|this.words[e])-s<<r;this.words[e]=l|o,o=s>>>26-r}o&&(this.words[e]=o,this.length++)}if(0!==a){for(e=this.length-1;e>=0;e--)this.words[e+a]=this.words[e];for(e=0;e<a;e++)this.words[e]=0;this.length+=a}return this.strip()},i.prototype.ishln=function(t){return n(0===this.negative),this.iushln(t)},i.prototype.iushrn=function(t,e,r){var a;n(\"number\"==typeof t&&t>=0),a=e?(e-e%26)/26:0;var i=t%26,o=Math.min((t-i)/26,this.length),s=67108863^67108863>>>i<<i,l=r;if(a-=o,a=Math.max(0,a),l){for(var c=0;c<o;c++)l.words[c]=this.words[c];l.length=o}if(0===o);else if(this.length>o)for(this.length-=o,c=0;c<this.length;c++)this.words[c]=this.words[c+o];else this.words[0]=0,this.length=1;var u=0;for(c=this.length-1;c>=0&&(0!==u||c>=a);c--){var h=0|this.words[c];this.words[c]=u<<26-i|h>>>i,u=h&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(t,e,r){return n(0===this.negative),this.iushrn(t,e,r)},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.ushln=function(t){return this.clone().iushln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.ushrn=function(t){return this.clone().iushrn(t)},i.prototype.testn=function(t){n(\"number\"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,a=1<<e;return!(this.length<=r)&&!!(this.words[r]&a)},i.prototype.imaskn=function(t){n(\"number\"==typeof t&&t>=0);var e=t%26,r=(t-e)/26;if(n(0===this.negative,\"imaskn works only with positive numbers\"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var a=67108863^67108863>>>e<<e;this.words[this.length-1]&=a}return this.strip()},i.prototype.maskn=function(t){return this.clone().imaskn(t)},i.prototype.iaddn=function(t){return n(\"number\"==typeof t),n(t<67108864),t<0?this.isubn(-t):0!==this.negative?1===this.length&&(0|this.words[0])<t?(this.words[0]=t-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(t),this.negative=1,this):this._iaddn(t)},i.prototype._iaddn=function(t){this.words[0]+=t;for(var e=0;e<this.length&&this.words[e]>=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},i.prototype.isubn=function(t){if(n(\"number\"==typeof t),n(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e<this.length&&this.words[e]<0;e++)this.words[e]+=67108864,this.words[e+1]-=1;return this.strip()},i.prototype.addn=function(t){return this.clone().iaddn(t)},i.prototype.subn=function(t){return this.clone().isubn(t)},i.prototype.iabs=function(){return this.negative=0,this},i.prototype.abs=function(){return this.clone().iabs()},i.prototype._ishlnsubmul=function(t,e,r){var a,i,o=t.length+r;this._expand(o);var s=0;for(a=0;a<t.length;a++){i=(0|this.words[a+r])+s;var l=(0|t.words[a])*e;s=((i-=67108863&l)>>26)-(l/67108864|0),this.words[a+r]=67108863&i}for(;a<this.length-r;a++)s=(i=(0|this.words[a+r])+s)>>26,this.words[a+r]=67108863&i;if(0===s)return this.strip();for(n(-1===s),s=0,a=0;a<this.length;a++)s=(i=-(0|this.words[a])+s)>>26,this.words[a]=67108863&i;return this.negative=1,this.strip()},i.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),a=t,o=0|a.words[a.length-1];0!==(r=26-this._countBits(o))&&(a=a.ushln(r),n.iushln(r),o=0|a.words[a.length-1]);var s,l=n.length-a.length;if(\"mod\"!==e){(s=new i(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c<s.length;c++)s.words[c]=0}var u=n.clone()._ishlnsubmul(a,1,l);0===u.negative&&(n=u,s&&(s.words[l]=1));for(var h=l-1;h>=0;h--){var f=67108864*(0|n.words[a.length+h])+(0|n.words[a.length+h-1]);for(f=Math.min(f/o|0,67108863),n._ishlnsubmul(a,f,h);0!==n.negative;)f--,n.negative=0,n._ishlnsubmul(a,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=f)}return s&&s.strip(),n.strip(),\"div\"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},i.prototype.divmod=function(t,e,r){return n(!t.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),\"mod\"!==e&&(a=s.div.neg()),\"div\"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:a,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),\"mod\"!==e&&(a=s.div.neg()),{div:a,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),\"div\"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new i(0),mod:this}:1===t.length?\"div\"===e?{div:this.divn(t.words[0]),mod:null}:\"mod\"===e?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,e);var a,o,s},i.prototype.div=function(t){return this.divmod(t,\"div\",!1).div},i.prototype.mod=function(t){return this.divmod(t,\"mod\",!1).mod},i.prototype.umod=function(t){return this.divmod(t,\"mod\",!0).mod},i.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),a=t.andln(1),i=r.cmp(n);return i<0||1===a&&0===i?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},i.prototype.modn=function(t){n(t<=67108863);for(var e=(1<<26)%t,r=0,a=this.length-1;a>=0;a--)r=(e*r+(0|this.words[a]))%t;return r},i.prototype.idivn=function(t){n(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var a=(0|this.words[r])+67108864*e;this.words[r]=a/t|0,e=a%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.prototype.egcd=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var a=new i(1),o=new i(0),s=new i(0),l=new i(1),c=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++c;for(var u=r.clone(),h=e.clone();!e.isZero();){for(var f=0,p=1;0==(e.words[0]&p)&&f<26;++f,p<<=1);if(f>0)for(e.iushrn(f);f-- >0;)(a.isOdd()||o.isOdd())&&(a.iadd(u),o.isub(h)),a.iushrn(1),o.iushrn(1);for(var d=0,g=1;0==(r.words[0]&g)&&d<26;++d,g<<=1);if(d>0)for(r.iushrn(d);d-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(u),l.isub(h)),s.iushrn(1),l.iushrn(1);e.cmp(r)>=0?(e.isub(r),a.isub(s),o.isub(l)):(r.isub(e),s.isub(a),l.isub(o))}return{a:s,b:l,gcd:r.iushln(c)}},i.prototype._invmp=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var a,o=new i(1),s=new i(0),l=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var c=0,u=1;0==(e.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(e.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var h=0,f=1;0==(r.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(a=0===e.cmpn(1)?o:s).cmpn(0)<0&&a.iadd(t),a},i.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var a=e.cmp(r);if(a<0){var i=e;e=r,r=i}else if(0===a||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},i.prototype.invm=function(t){return this.egcd(t).a.umod(t)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){n(\"number\"==typeof t);var e=t%26,r=(t-e)/26,a=1<<e;if(this.length<=r)return this._expand(r+1),this.words[r]|=a,this;for(var i=a,o=r;0!==i&&o<this.length;o++){var s=0|this.words[o];i=(s+=i)>>>26,s&=67108863,this.words[o]=s}return 0!==i&&(this.words[o]=i,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),n(t<=67108863,\"Number is too big\");var a=0|this.words[0];e=a===t?0:a<t?-1:1}return 0!==this.negative?0|-e:e},i.prototype.cmp=function(t){if(0!==this.negative&&0===t.negative)return-1;if(0===this.negative&&0!==t.negative)return 1;var e=this.ucmp(t);return 0!==this.negative?0|-e:e},i.prototype.ucmp=function(t){if(this.length>t.length)return 1;if(this.length<t.length)return-1;for(var e=0,r=this.length-1;r>=0;r--){var n=0|this.words[r],a=0|t.words[r];if(n!==a){n<a?e=-1:n>a&&(e=1);break}}return e},i.prototype.gtn=function(t){return 1===this.cmpn(t)},i.prototype.gt=function(t){return 1===this.cmp(t)},i.prototype.gten=function(t){return this.cmpn(t)>=0},i.prototype.gte=function(t){return this.cmp(t)>=0},i.prototype.ltn=function(t){return-1===this.cmpn(t)},i.prototype.lt=function(t){return-1===this.cmp(t)},i.prototype.lten=function(t){return this.cmpn(t)<=0},i.prototype.lte=function(t){return this.cmp(t)<=0},i.prototype.eqn=function(t){return 0===this.cmpn(t)},i.prototype.eq=function(t){return 0===this.cmp(t)},i.red=function(t){return new w(t)},i.prototype.toRed=function(t){return n(!this.red,\"Already a number in reduction context\"),n(0===this.negative,\"red works only with positives\"),t.convertTo(this)._forceRed(t)},i.prototype.fromRed=function(){return n(this.red,\"fromRed works only with numbers in reduction context\"),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return n(!this.red,\"Already a number in reduction context\"),this._forceRed(t)},i.prototype.redAdd=function(t){return n(this.red,\"redAdd works only with red numbers\"),this.red.add(this,t)},i.prototype.redIAdd=function(t){return n(this.red,\"redIAdd works only with red numbers\"),this.red.iadd(this,t)},i.prototype.redSub=function(t){return n(this.red,\"redSub works only with red numbers\"),this.red.sub(this,t)},i.prototype.redISub=function(t){return n(this.red,\"redISub works only with red numbers\"),this.red.isub(this,t)},i.prototype.redShl=function(t){return n(this.red,\"redShl works only with red numbers\"),this.red.shl(this,t)},i.prototype.redMul=function(t){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.imul(this,t)},i.prototype.redSqr=function(){return n(this.red,\"redSqr works only with red numbers\"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,\"redISqr works only with red numbers\"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,\"redSqrt works only with red numbers\"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,\"redInvm works only with red numbers\"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,\"redNeg works only with red numbers\"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(t){return n(this.red&&!t.red,\"redPow(normalNum)\"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new i(e,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,\"k256\",\"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f\")}function x(){v.call(this,\"p224\",\"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001\")}function b(){v.call(this,\"p192\",\"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff\")}function _(){v.call(this,\"25519\",\"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed\")}function w(t){if(\"string\"==typeof t){var e=i._prime(t);this.m=e.p,this.prime=e}else n(t.gtn(1),\"modulus must be greater than 1\"),this.m=t,this.prime=null}function T(t){w.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var t=new i(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e<this.n?-1:r.ucmp(this.p);return 0===n?(r.words[0]=0,r.length=1):n>0?r.isub(this.p):r.strip(),r},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},a(y,v),y.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n<r;n++)e.words[n]=t.words[n];if(e.length=r,t.length<=9)return t.words[0]=0,void(t.length=1);var a=t.words[9];for(e.words[e.length++]=4194303&a,n=10;n<t.length;n++){var i=0|t.words[n];t.words[n-10]=(4194303&i)<<4|a>>>22,a=i}a>>>=22,t.words[n-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},y.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r<t.length;r++){var n=0|t.words[r];e+=977*n,t.words[r]=67108863&e,e=64*n+(e/67108864|0)}return 0===t.words[t.length-1]&&(t.length--,0===t.words[t.length-1]&&t.length--),t},a(x,v),a(b,v),a(_,v),_.prototype.imulK=function(t){for(var e=0,r=0;r<t.length;r++){var n=19*(0|t.words[r])+e,a=67108863&n;n>>>=26,t.words[r]=a,e=n}return 0!==e&&(t.words[t.length++]=e),t},i._prime=function(t){if(m[t])return m[t];var e;if(\"k256\"===t)e=new y;else if(\"p224\"===t)e=new x;else if(\"p192\"===t)e=new b;else{if(\"p25519\"!==t)throw new Error(\"Unknown prime \"+t);e=new _}return m[t]=e,e},w.prototype._verify1=function(t){n(0===t.negative,\"red works only with positives\"),n(t.red,\"red works only with red numbers\")},w.prototype._verify2=function(t,e){n(0==(t.negative|e.negative),\"red works only with positives\"),n(t.red&&t.red===e.red,\"red works only with red numbers\")},w.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},w.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},w.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},w.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},w.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},w.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},w.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},w.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},w.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},w.prototype.isqr=function(t){return this.imul(t,t.clone())},w.prototype.sqr=function(t){return this.mul(t,t)},w.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(n(e%2==1),3===e){var r=this.m.add(new i(1)).iushrn(2);return this.pow(t,r)}for(var a=this.m.subn(1),o=0;!a.isZero()&&0===a.andln(1);)o++,a.iushrn(1);n(!a.isZero());var s=new i(1).toRed(this),l=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new i(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var h=this.pow(u,a),f=this.pow(t,a.addn(1).iushrn(1)),p=this.pow(t,a),d=o;0!==p.cmp(s);){for(var g=p,m=0;0!==g.cmp(s);m++)g=g.redSqr();n(m<d);var v=this.pow(h,new i(1).iushln(d-m-1));f=f.redMul(v),h=v.redSqr(),p=p.redMul(h),d=m}return f},w.prototype.invm=function(t){var e=t._invmp(this.m);return 0!==e.negative?(e.negative=0,this.imod(e).redNeg()):this.imod(e)},w.prototype.pow=function(t,e){if(e.isZero())return new i(1).toRed(this);if(0===e.cmpn(1))return t.clone();var r=new Array(16);r[0]=new i(1).toRed(this),r[1]=t;for(var n=2;n<r.length;n++)r[n]=this.mul(r[n-1],t);var a=r[0],o=0,s=0,l=e.bitLength()%26;for(0===l&&(l=26),n=e.length-1;n>=0;n--){for(var c=e.words[n],u=l-1;u>=0;u--){var h=c>>u&1;a!==r[0]&&(a=this.sqr(a)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===u)&&(a=this.mul(a,r[o]),s=0,o=0)):s=0}l=26}return a},w.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},w.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},i.mont=function(t){return new T(t)},a(T,w),T.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},T.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},T.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),i=a;return a.cmp(this.m)>=0?i=a.isub(this.m):a.cmpn(0)<0&&(i=a.iadd(this.m)),i._forceRed(this)},T.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new i(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),o=a;return a.cmp(this.m)>=0?o=a.isub(this.m):a.cmpn(0)<0&&(o=a.iadd(this.m)),o._forceRed(this)},T.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(\"undefined\"==typeof e||e,this)},{buffer:108}],100:[function(t,e,r){\"use strict\";e.exports=function(t){var e,r,n,a=t.length,i=0;for(e=0;e<a;++e)i+=t[e].length;var o=new Array(i),s=0;for(e=0;e<a;++e){var l=t[e],c=l.length;for(r=0;r<c;++r){var u=o[s++]=new Array(c-1),h=0;for(n=0;n<c;++n)n!==r&&(u[h++]=l[n]);if(1&r){var f=u[1];u[1]=u[0],u[0]=f}}}return o}},{}],101:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){switch(arguments.length){case 1:return h(t);case 2:return\"function\"==typeof e?c(t,t,e,!0):f(t,e);case 3:return c(t,e,r,!1);default:throw new Error(\"box-intersect: Invalid arguments\")}};var n,a=t(\"typedarray-pool\"),i=t(\"./lib/sweep\"),o=t(\"./lib/intersect\");function s(t,e){for(var r=0;r<t;++r)if(!(e[r]<=e[r+t]))return!0;return!1}function l(t,e,r,n){for(var a=0,i=0,o=0,l=t.length;o<l;++o){var c=t[o];if(!s(e,c)){for(var u=0;u<2*e;++u)r[a++]=c[u];n[i++]=o}}return i}function c(t,e,r,n){var s=t.length,c=e.length;if(!(s<=0||c<=0)){var u=t[0].length>>>1;if(!(u<=0)){var h,f=a.mallocDouble(2*u*s),p=a.mallocInt32(s);if((s=l(t,u,f,p))>0){if(1===u&&n)i.init(s),h=i.sweepComplete(u,r,0,s,f,p,0,s,f,p);else{var d=a.mallocDouble(2*u*c),g=a.mallocInt32(c);(c=l(e,u,d,g))>0&&(i.init(s+c),h=1===u?i.sweepBipartite(u,r,0,s,f,p,0,c,d,g):o(u,r,n,s,f,p,c,d,g),a.free(d),a.free(g))}a.free(f),a.free(p)}return h}}}function u(t,e){n.push([t,e])}function h(t){return n=[],c(t,t,u,!0),n}function f(t,e){return n=[],c(t,e,u,!1),n}},{\"./lib/intersect\":103,\"./lib/sweep\":107,\"typedarray-pool\":567}],102:[function(t,e,r){\"use strict\";var n=[\"d\",\"ax\",\"vv\",\"rs\",\"re\",\"rb\",\"ri\",\"bs\",\"be\",\"bb\",\"bi\"];function a(t){var e=\"bruteForce\"+(t?\"Full\":\"Partial\"),r=[],a=n.slice();t||a.splice(3,0,\"fp\");var i=[\"function \"+e+\"(\"+a.join()+\"){\"];function o(e,a){var o=function(t,e,r){var a=\"bruteForce\"+(t?\"Red\":\"Blue\")+(e?\"Flip\":\"\")+(r?\"Full\":\"\"),i=[\"function \",a,\"(\",n.join(),\"){\",\"var \",\"es\",\"=2*\",\"d\",\";\"],o=\"for(var i=rs,rp=es*rs;i<re;++i,rp+=es){var x0=rb[ax+rp],x1=rb[ax+rp+d],xi=ri[i];\",s=\"for(var j=bs,bp=es*bs;j<be;++j,bp+=es){var y0=bb[ax+bp],\"+(r?\"y1=bb[ax+bp+d],\":\"\")+\"yi=bi[j];\";return t?i.push(o,\"Q\",\":\",s):i.push(s,\"Q\",\":\",o),r?i.push(\"if(y1<x0||x1<y0)continue;\"):e?i.push(\"if(y0<=x0||x1<y0)continue;\"):i.push(\"if(y0<x0||x1<y0)continue;\"),i.push(\"for(var k=ax+1;k<d;++k){var r0=rb[k+rp],r1=rb[k+d+rp],b0=bb[k+bp],b1=bb[k+d+bp];if(r1<b0||b1<r0)continue Q;}var rv=vv(\"),e?i.push(\"yi,xi\"):i.push(\"xi,yi\"),i.push(\");if(rv!==void 0)return rv;}}}\"),{name:a,code:i.join(\"\")}}(e,a,t);r.push(o.code),i.push(\"return \"+o.name+\"(\"+n.join()+\");\")}i.push(\"if(re-rs>be-bs){\"),t?(o(!0,!1),i.push(\"}else{\"),o(!1,!1)):(i.push(\"if(fp){\"),o(!0,!0),i.push(\"}else{\"),o(!0,!1),i.push(\"}}else{if(fp){\"),o(!1,!0),i.push(\"}else{\"),o(!1,!1),i.push(\"}\")),i.push(\"}}return \"+e);var s=r.join(\"\")+i.join(\"\");return new Function(s)()}r.partial=a(!1),r.full=a(!0)},{}],103:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,i,u,w,T,k,M){!function(t,e){var r=8*a.log2(e+1)*(t+1)|0,i=a.nextPow2(6*r);v.length<i&&(n.free(v),v=n.mallocInt32(i));var o=a.nextPow2(2*r);y.length<o&&(n.free(y),y=n.mallocDouble(o))}(t,i+T);var A,S=0,E=2*t;x(S++,0,0,i,0,T,r?16:0,-1/0,1/0),r||x(S++,0,0,T,0,i,1,-1/0,1/0);for(;S>0;){var C=6*(S-=1),L=v[C],P=v[C+1],I=v[C+2],z=v[C+3],O=v[C+4],D=v[C+5],R=2*S,F=y[R],B=y[R+1],N=1&D,j=!!(16&D),U=u,V=w,q=k,H=M;if(N&&(U=k,V=M,q=u,H=w),!(2&D&&(I=p(t,L,P,I,U,V,B),P>=I)||4&D&&(P=d(t,L,P,I,U,V,F))>=I)){var G=I-P,Y=O-z;if(j){if(t*G*(G+Y)<1<<22){if(void 0!==(A=l.scanComplete(t,L,e,P,I,U,V,z,O,q,H)))return A;continue}}else{if(t*Math.min(G,Y)<128){if(void 0!==(A=o(t,L,e,N,P,I,U,V,z,O,q,H)))return A;continue}if(t*G*Y<1<<22){if(void 0!==(A=l.scanBipartite(t,L,e,N,P,I,U,V,z,O,q,H)))return A;continue}}var W=h(t,L,P,I,U,V,F,B);if(P<W)if(t*(W-P)<128){if(void 0!==(A=s(t,L+1,e,P,W,U,V,z,O,q,H)))return A}else if(L===t-2){if(void 0!==(A=N?l.sweepBipartite(t,e,z,O,q,H,P,W,U,V):l.sweepBipartite(t,e,P,W,U,V,z,O,q,H)))return A}else x(S++,L+1,P,W,z,O,N,-1/0,1/0),x(S++,L+1,z,O,P,W,1^N,-1/0,1/0);if(W<I){var Z=c(t,L,z,O,q,H),X=q[E*Z+L],J=f(t,L,Z,O,q,H,X);if(J<O&&x(S++,L,W,I,J,O,(4|N)+(j?16:0),X,B),z<Z&&x(S++,L,W,I,z,Z,(2|N)+(j?16:0),F,X),Z+1===J){if(void 0!==(A=j?_(t,L,e,W,I,U,V,Z,q,H[Z]):b(t,L,e,N,W,I,U,V,Z,q,H[Z])))return A}else if(Z<J){var K;if(j){if(K=g(t,L,W,I,U,V,X),W<K){var Q=f(t,L,W,K,U,V,X);if(L===t-2){if(W<Q&&void 0!==(A=l.sweepComplete(t,e,W,Q,U,V,Z,J,q,H)))return A;if(Q<K&&void 0!==(A=l.sweepBipartite(t,e,Q,K,U,V,Z,J,q,H)))return A}else W<Q&&x(S++,L+1,W,Q,Z,J,16,-1/0,1/0),Q<K&&(x(S++,L+1,Q,K,Z,J,0,-1/0,1/0),x(S++,L+1,Z,J,Q,K,1,-1/0,1/0))}}else K=N?m(t,L,W,I,U,V,X):g(t,L,W,I,U,V,X),W<K&&(L===t-2?A=N?l.sweepBipartite(t,e,Z,J,q,H,W,K,U,V):l.sweepBipartite(t,e,W,K,U,V,Z,J,q,H):(x(S++,L+1,W,K,Z,J,N,-1/0,1/0),x(S++,L+1,Z,J,W,K,1^N,-1/0,1/0)))}}}}};var n=t(\"typedarray-pool\"),a=t(\"bit-twiddle\"),i=t(\"./brute\"),o=i.partial,s=i.full,l=t(\"./sweep\"),c=t(\"./median\"),u=t(\"./partition\"),h=u(\"!(lo>=p0)&&!(p1>=hi)\",[\"p0\",\"p1\"]),f=u(\"lo===p0\",[\"p0\"]),p=u(\"lo<p0\",[\"p0\"]),d=u(\"hi<=p0\",[\"p0\"]),g=u(\"lo<=p0&&p0<=hi\",[\"p0\"]),m=u(\"lo<p0&&p0<=hi\",[\"p0\"]),v=n.mallocInt32(1024),y=n.mallocDouble(1024);function x(t,e,r,n,a,i,o,s,l){var c=6*t;v[c]=e,v[c+1]=r,v[c+2]=n,v[c+3]=a,v[c+4]=i,v[c+5]=o;var u=2*t;y[u]=s,y[u+1]=l}function b(t,e,r,n,a,i,o,s,l,c,u){var h=2*t,f=l*h,p=c[f+e];t:for(var d=a,g=a*h;d<i;++d,g+=h){var m=o[g+e],v=o[g+e+t];if(!(p<m||v<p)&&(!n||p!==m)){for(var y,x=s[d],b=e+1;b<t;++b){m=o[g+b],v=o[g+b+t];var _=c[f+b],w=c[f+b+t];if(v<_||w<m)continue t}if(void 0!==(y=n?r(u,x):r(x,u)))return y}}}function _(t,e,r,n,a,i,o,s,l,c){var u=2*t,h=s*u,f=l[h+e];t:for(var p=n,d=n*u;p<a;++p,d+=u){var g=o[p];if(g!==c){var m=i[d+e],v=i[d+e+t];if(!(f<m||v<f)){for(var y=e+1;y<t;++y){m=i[d+y],v=i[d+y+t];var x=l[h+y],b=l[h+y+t];if(v<x||b<m)continue t}var _=r(g,c);if(void 0!==_)return _}}}}},{\"./brute\":102,\"./median\":104,\"./partition\":105,\"./sweep\":107,\"bit-twiddle\":97,\"typedarray-pool\":567}],104:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,i,o,s){if(i<=r+1)return r;var l=r,c=i,u=i+r>>>1,h=2*t,f=u,p=o[h*u+e];for(;l<c;){if(c-l<8){a(t,e,l,c,o,s),p=o[h*u+e];break}var d=c-l,g=Math.random()*d+l|0,m=o[h*g+e],v=Math.random()*d+l|0,y=o[h*v+e],x=Math.random()*d+l|0,b=o[h*x+e];m<=y?b>=y?(f=v,p=y):m>=b?(f=g,p=m):(f=x,p=b):y>=b?(f=v,p=y):b>=m?(f=g,p=m):(f=x,p=b);for(var _=h*(c-1),w=h*f,T=0;T<h;++T,++_,++w){var k=o[_];o[_]=o[w],o[w]=k}var M=s[c-1];s[c-1]=s[f],s[f]=M,f=n(t,e,l,c-1,o,s,p);for(_=h*(c-1),w=h*f,T=0;T<h;++T,++_,++w){k=o[_];o[_]=o[w],o[w]=k}M=s[c-1];if(s[c-1]=s[f],s[f]=M,u<f){for(c=f-1;l<c&&o[h*(c-1)+e]===p;)c-=1;c+=1}else{if(!(f<u))break;for(l=f+1;l<c&&o[h*l+e]===p;)l+=1}}return n(t,e,r,u,o,s,o[h*u+e])};var n=t(\"./partition\")(\"lo<p0\",[\"p0\"]);function a(t,e,r,n,a,i){for(var o=2*t,s=o*(r+1)+e,l=r+1;l<n;++l,s+=o)for(var c=a[s],u=l,h=o*(l-1);u>r&&a[h+e]>c;--u,h-=o){for(var f=h,p=h+o,d=0;d<o;++d,++f,++p){var g=a[f];a[f]=a[p],a[p]=g}var m=i[u];i[u]=i[u-1],i[u-1]=m}}},{\"./partition\":105}],105:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=\"abcdef\".split(\"\").concat(e),n=[];t.indexOf(\"lo\")>=0&&n.push(\"lo=e[k+n]\");t.indexOf(\"hi\")>=0&&n.push(\"hi=e[k+o]\");return r.push(\"for(var j=2*a,k=j*c,l=k,m=c,n=b,o=a+b,p=c;d>p;++p,k+=j){var _;if($)if(m===p)m+=1,l+=j;else{for(var s=0;j>s;++s){var t=e[k+s];e[k+s]=e[l],e[l++]=t}var u=f[p];f[p]=f[m],f[m++]=u}}return m\".replace(\"_\",n.join()).replace(\"$\",t)),Function.apply(void 0,r)}},{}],106:[function(t,e,r){\"use strict\";e.exports=function(t,e){e<=128?n(0,e-1,t):function t(e,r,u){var h=(r-e+1)/6|0,f=e+h,p=r-h,d=e+r>>1,g=d-h,m=d+h,v=f,y=g,x=d,b=m,_=p,w=e+1,T=r-1,k=0;l(v,y,u)&&(k=v,v=y,y=k);l(b,_,u)&&(k=b,b=_,_=k);l(v,x,u)&&(k=v,v=x,x=k);l(y,x,u)&&(k=y,y=x,x=k);l(v,b,u)&&(k=v,v=b,b=k);l(x,b,u)&&(k=x,x=b,b=k);l(y,_,u)&&(k=y,y=_,_=k);l(y,x,u)&&(k=y,y=x,x=k);l(b,_,u)&&(k=b,b=_,_=k);for(var M=u[2*y],A=u[2*y+1],S=u[2*b],E=u[2*b+1],C=2*v,L=2*x,P=2*_,I=2*f,z=2*d,O=2*p,D=0;D<2;++D){var R=u[C+D],F=u[L+D],B=u[P+D];u[I+D]=R,u[z+D]=F,u[O+D]=B}i(g,e,u),i(m,r,u);for(var N=w;N<=T;++N)if(c(N,M,A,u))N!==w&&a(N,w,u),++w;else if(!c(N,S,E,u))for(;;){if(c(T,S,E,u)){c(T,M,A,u)?(o(N,w,T,u),++w,--T):(a(N,T,u),--T);break}if(--T<N)break}s(e,w-1,M,A,u),s(r,T+1,S,E,u),w-2-e<=32?n(e,w-2,u):t(e,w-2,u);r-(T+2)<=32?n(T+2,r,u):t(T+2,r,u);T-w<=32?n(w,T,u):t(w,T,u)}(0,e-1,t)};function n(t,e,r){for(var n=2*(t+1),a=t+1;a<=e;++a){for(var i=r[n++],o=r[n++],s=a,l=n-2;s-- >t;){var c=r[l-2],u=r[l-1];if(c<i)break;if(c===i&&u<o)break;r[l]=c,r[l+1]=u,l-=2}r[l]=i,r[l+1]=o}}function a(t,e,r){e*=2;var n=r[t*=2],a=r[t+1];r[t]=r[e],r[t+1]=r[e+1],r[e]=n,r[e+1]=a}function i(t,e,r){e*=2,r[t*=2]=r[e],r[t+1]=r[e+1]}function o(t,e,r,n){e*=2,r*=2;var a=n[t*=2],i=n[t+1];n[t]=n[e],n[t+1]=n[e+1],n[e]=n[r],n[e+1]=n[r+1],n[r]=a,n[r+1]=i}function s(t,e,r,n,a){e*=2,a[t*=2]=a[e],a[e]=r,a[t+1]=a[e+1],a[e+1]=n}function l(t,e,r){e*=2;var n=r[t*=2],a=r[e];return!(n<a)&&(n!==a||r[t+1]>r[e+1])}function c(t,e,r,n){var a=n[t*=2];return a<e||a===e&&n[t+1]<r}},{}],107:[function(t,e,r){\"use strict\";e.exports={init:function(t){var e=a.nextPow2(t);o.length<e&&(n.free(o),o=n.mallocInt32(e));s.length<e&&(n.free(s),s=n.mallocInt32(e));l.length<e&&(n.free(l),l=n.mallocInt32(e));c.length<e&&(n.free(c),c=n.mallocInt32(e));u.length<e&&(n.free(u),u=n.mallocInt32(e));h.length<e&&(n.free(h),h=n.mallocInt32(e));var r=8*e;f.length<r&&(n.free(f),f=n.mallocDouble(r))},sweepBipartite:function(t,e,r,n,a,u,h,g,m,v){for(var y=0,x=2*t,b=t-1,_=x-1,w=r;w<n;++w){var T=u[w],k=x*w;f[y++]=a[k+b],f[y++]=-(T+1),f[y++]=a[k+_],f[y++]=T}for(w=h;w<g;++w){T=v[w]+(1<<28);var M=x*w;f[y++]=m[M+b],f[y++]=-T,f[y++]=m[M+_],f[y++]=T}var A=y>>>1;i(f,A);var S=0,E=0;for(w=0;w<A;++w){var C=0|f[2*w+1];if(C>=1<<28)p(l,c,E--,C=C-(1<<28)|0);else if(C>=0)p(o,s,S--,C);else if(C<=-(1<<28)){C=-C-(1<<28)|0;for(var L=0;L<S;++L){if(void 0!==(P=e(o[L],C)))return P}d(l,c,E++,C)}else{C=-C-1|0;for(L=0;L<E;++L){var P;if(void 0!==(P=e(C,l[L])))return P}d(o,s,S++,C)}}},sweepComplete:function(t,e,r,n,a,g,m,v,y,x){for(var b=0,_=2*t,w=t-1,T=_-1,k=r;k<n;++k){var M=g[k]+1<<1,A=_*k;f[b++]=a[A+w],f[b++]=-M,f[b++]=a[A+T],f[b++]=M}for(k=m;k<v;++k){M=x[k]+1<<1;var S=_*k;f[b++]=y[S+w],f[b++]=1|-M,f[b++]=y[S+T],f[b++]=1|M}var E=b>>>1;i(f,E);var C=0,L=0,P=0;for(k=0;k<E;++k){var I=0|f[2*k+1],z=1&I;if(k<E-1&&I>>1==f[2*k+3]>>1&&(z=2,k+=1),I<0){for(var O=-(I>>1)-1,D=0;D<P;++D){if(void 0!==(R=e(u[D],O)))return R}if(0!==z)for(D=0;D<C;++D){if(void 0!==(R=e(o[D],O)))return R}if(1!==z)for(D=0;D<L;++D){var R;if(void 0!==(R=e(l[D],O)))return R}0===z?d(o,s,C++,O):1===z?d(l,c,L++,O):2===z&&d(u,h,P++,O)}else{O=(I>>1)-1;0===z?p(o,s,C--,O):1===z?p(l,c,L--,O):2===z&&p(u,h,P--,O)}}},scanBipartite:function(t,e,r,n,a,l,c,u,h,g,m,v){var y=0,x=2*t,b=e,_=e+t,w=1,T=1;n?T=1<<28:w=1<<28;for(var k=a;k<l;++k){var M=k+w,A=x*k;f[y++]=c[A+b],f[y++]=-M,f[y++]=c[A+_],f[y++]=M}for(k=h;k<g;++k){M=k+T;var S=x*k;f[y++]=m[S+b],f[y++]=-M}var E=y>>>1;i(f,E);var C=0;for(k=0;k<E;++k){var L=0|f[2*k+1];if(L<0){var P=!1;if((M=-L)>=1<<28?(P=!n,M-=1<<28):(P=!!n,M-=1),P)d(o,s,C++,M);else{var I=v[M],z=x*M,O=m[z+e+1],D=m[z+e+1+t];t:for(var R=0;R<C;++R){var F=o[R],B=x*F;if(!(D<c[B+e+1]||c[B+e+1+t]<O)){for(var N=e+2;N<t;++N)if(m[z+N+t]<c[B+N]||c[B+N+t]<m[z+N])continue t;var j,U=u[F];if(void 0!==(j=n?r(I,U):r(U,I)))return j}}}}else p(o,s,C--,L-w)}},scanComplete:function(t,e,r,n,a,s,l,c,u,h,p){for(var d=0,g=2*t,m=e,v=e+t,y=n;y<a;++y){var x=y+(1<<28),b=g*y;f[d++]=s[b+m],f[d++]=-x,f[d++]=s[b+v],f[d++]=x}for(y=c;y<u;++y){x=y+1;var _=g*y;f[d++]=h[_+m],f[d++]=-x}var w=d>>>1;i(f,w);var T=0;for(y=0;y<w;++y){var k=0|f[2*y+1];if(k<0){if((x=-k)>=1<<28)o[T++]=x-(1<<28);else{var M=p[x-=1],A=g*x,S=h[A+e+1],E=h[A+e+1+t];t:for(var C=0;C<T;++C){var L=o[C],P=l[L];if(P===M)break;var I=g*L;if(!(E<s[I+e+1]||s[I+e+1+t]<S)){for(var z=e+2;z<t;++z)if(h[A+z+t]<s[I+z]||s[I+z+t]<h[A+z])continue t;var O=r(P,M);if(void 0!==O)return O}}}}else{for(x=k-(1<<28),C=T-1;C>=0;--C)if(o[C]===x){for(z=C+1;z<T;++z)o[z-1]=o[z];break}--T}}}};var n=t(\"typedarray-pool\"),a=t(\"bit-twiddle\"),i=t(\"./sort\"),o=n.mallocInt32(1024),s=n.mallocInt32(1024),l=n.mallocInt32(1024),c=n.mallocInt32(1024),u=n.mallocInt32(1024),h=n.mallocInt32(1024),f=n.mallocDouble(8192);function p(t,e,r,n){var a=e[n],i=t[r-1];t[a]=i,e[i]=a}function d(t,e,r,n){t[r]=n,e[n]=r}},{\"./sort\":106,\"bit-twiddle\":97,\"typedarray-pool\":567}],108:[function(t,e,r){},{}],109:[function(t,e,r){arguments[4][108][0].apply(r,arguments)},{dup:108}],110:[function(t,e,r){var n=Object.create||function(t){var e=function(){};return e.prototype=t,new e},a=Object.keys||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.push(r);return r},i=Function.prototype.bind||function(t){var e=this;return function(){return e.apply(t,arguments)}};function o(){this._events&&Object.prototype.hasOwnProperty.call(this,\"_events\")||(this._events=n(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}e.exports=o,o.EventEmitter=o,o.prototype._events=void 0,o.prototype._maxListeners=void 0;var s,l=10;try{var c={};Object.defineProperty&&Object.defineProperty(c,\"x\",{value:0}),s=0===c.x}catch(t){s=!1}function u(t){return void 0===t._maxListeners?o.defaultMaxListeners:t._maxListeners}function h(t,e,r){if(e)t.call(r);else for(var n=t.length,a=_(t,n),i=0;i<n;++i)a[i].call(r)}function f(t,e,r,n){if(e)t.call(r,n);else for(var a=t.length,i=_(t,a),o=0;o<a;++o)i[o].call(r,n)}function p(t,e,r,n,a){if(e)t.call(r,n,a);else for(var i=t.length,o=_(t,i),s=0;s<i;++s)o[s].call(r,n,a)}function d(t,e,r,n,a,i){if(e)t.call(r,n,a,i);else for(var o=t.length,s=_(t,o),l=0;l<o;++l)s[l].call(r,n,a,i)}function g(t,e,r,n){if(e)t.apply(r,n);else for(var a=t.length,i=_(t,a),o=0;o<a;++o)i[o].apply(r,n)}function m(t,e,r,a){var i,o,s;if(\"function\"!=typeof r)throw new TypeError('\"listener\" argument must be a function');if((o=t._events)?(o.newListener&&(t.emit(\"newListener\",e,r.listener?r.listener:r),o=t._events),s=o[e]):(o=t._events=n(null),t._eventsCount=0),s){if(\"function\"==typeof s?s=o[e]=a?[r,s]:[s,r]:a?s.unshift(r):s.push(r),!s.warned&&(i=u(t))&&i>0&&s.length>i){s.warned=!0;var l=new Error(\"Possible EventEmitter memory leak detected. \"+s.length+' \"'+String(e)+'\" listeners added. Use emitter.setMaxListeners() to increase limit.');l.name=\"MaxListenersExceededWarning\",l.emitter=t,l.type=e,l.count=s.length,\"object\"==typeof console&&console.warn&&console.warn(\"%s: %s\",l.name,l.message)}}else s=o[e]=r,++t._eventsCount;return t}function v(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var t=new Array(arguments.length),e=0;e<t.length;++e)t[e]=arguments[e];this.listener.apply(this.target,t)}}function y(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},a=i.call(v,n);return a.listener=r,n.wrapFn=a,a}function x(t,e,r){var n=t._events;if(!n)return[];var a=n[e];return a?\"function\"==typeof a?r?[a.listener||a]:[a]:r?function(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}(a):_(a,a.length):[]}function b(t){var e=this._events;if(e){var r=e[t];if(\"function\"==typeof r)return 1;if(r)return r.length}return 0}function _(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}s?Object.defineProperty(o,\"defaultMaxListeners\",{enumerable:!0,get:function(){return l},set:function(t){if(\"number\"!=typeof t||t<0||t!=t)throw new TypeError('\"defaultMaxListeners\" must be a positive number');l=t}}):o.defaultMaxListeners=l,o.prototype.setMaxListeners=function(t){if(\"number\"!=typeof t||t<0||isNaN(t))throw new TypeError('\"n\" argument must be a positive number');return this._maxListeners=t,this},o.prototype.getMaxListeners=function(){return u(this)},o.prototype.emit=function(t){var e,r,n,a,i,o,s=\"error\"===t;if(o=this._events)s=s&&null==o.error;else if(!s)return!1;if(s){if(arguments.length>1&&(e=arguments[1]),e instanceof Error)throw e;var l=new Error('Unhandled \"error\" event. ('+e+\")\");throw l.context=e,l}if(!(r=o[t]))return!1;var c=\"function\"==typeof r;switch(n=arguments.length){case 1:h(r,c,this);break;case 2:f(r,c,this,arguments[1]);break;case 3:p(r,c,this,arguments[1],arguments[2]);break;case 4:d(r,c,this,arguments[1],arguments[2],arguments[3]);break;default:for(a=new Array(n-1),i=1;i<n;i++)a[i-1]=arguments[i];g(r,c,this,a)}return!0},o.prototype.addListener=function(t,e){return m(this,t,e,!1)},o.prototype.on=o.prototype.addListener,o.prototype.prependListener=function(t,e){return m(this,t,e,!0)},o.prototype.once=function(t,e){if(\"function\"!=typeof e)throw new TypeError('\"listener\" argument must be a function');return this.on(t,y(this,t,e)),this},o.prototype.prependOnceListener=function(t,e){if(\"function\"!=typeof e)throw new TypeError('\"listener\" argument must be a function');return this.prependListener(t,y(this,t,e)),this},o.prototype.removeListener=function(t,e){var r,a,i,o,s;if(\"function\"!=typeof e)throw new TypeError('\"listener\" argument must be a function');if(!(a=this._events))return this;if(!(r=a[t]))return this;if(r===e||r.listener===e)0==--this._eventsCount?this._events=n(null):(delete a[t],a.removeListener&&this.emit(\"removeListener\",t,r.listener||e));else if(\"function\"!=typeof r){for(i=-1,o=r.length-1;o>=0;o--)if(r[o]===e||r[o].listener===e){s=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(t,e){for(var r=e,n=r+1,a=t.length;n<a;r+=1,n+=1)t[r]=t[n];t.pop()}(r,i),1===r.length&&(a[t]=r[0]),a.removeListener&&this.emit(\"removeListener\",t,s||e)}return this},o.prototype.removeAllListeners=function(t){var e,r,i;if(!(r=this._events))return this;if(!r.removeListener)return 0===arguments.length?(this._events=n(null),this._eventsCount=0):r[t]&&(0==--this._eventsCount?this._events=n(null):delete r[t]),this;if(0===arguments.length){var o,s=a(r);for(i=0;i<s.length;++i)\"removeListener\"!==(o=s[i])&&this.removeAllListeners(o);return this.removeAllListeners(\"removeListener\"),this._events=n(null),this._eventsCount=0,this}if(\"function\"==typeof(e=r[t]))this.removeListener(t,e);else if(e)for(i=e.length-1;i>=0;i--)this.removeListener(t,e[i]);return this},o.prototype.listeners=function(t){return x(this,t,!0)},o.prototype.rawListeners=function(t){return x(this,t,!1)},o.listenerCount=function(t,e){return\"function\"==typeof t.listenerCount?t.listenerCount(e):b.call(t,e)},o.prototype.listenerCount=b,o.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],111:[function(t,e,r){(function(e){\n",
       "/*!\n",
       " * The buffer module from node.js, for the browser.\n",
       " *\n",
       " * @author   Feross Aboukhadijeh <https://feross.org>\n",
       " * @license  MIT\n",
       " */\n",
       "\"use strict\";var n=t(\"base64-js\"),a=t(\"ieee754\");r.Buffer=e,r.SlowBuffer=function(t){+t!=t&&(t=0);return e.alloc(+t)},r.INSPECT_MAX_BYTES=50;function i(t){if(t>2147483647)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"');var r=new Uint8Array(t);return r.__proto__=e.prototype,r}function e(t,e,r){if(\"number\"==typeof t){if(\"string\"==typeof e)throw new TypeError('The \"string\" argument must be of type string. Received type number');return l(t)}return o(t,e,r)}function o(t,r,n){if(\"string\"==typeof t)return function(t,r){\"string\"==typeof r&&\"\"!==r||(r=\"utf8\");if(!e.isEncoding(r))throw new TypeError(\"Unknown encoding: \"+r);var n=0|h(t,r),a=i(n),o=a.write(t,r);o!==n&&(a=a.slice(0,o));return a}(t,r);if(ArrayBuffer.isView(t))return c(t);if(null==t)throw TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,r,n){if(r<0||t.byteLength<r)throw new RangeError('\"offset\" is outside of buffer bounds');if(t.byteLength<r+(n||0))throw new RangeError('\"length\" is outside of buffer bounds');var a;a=void 0===r&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,r):new Uint8Array(t,r,n);return a.__proto__=e.prototype,a}(t,r,n);if(\"number\"==typeof t)throw new TypeError('The \"value\" argument must not be of type number. Received type number');var a=t.valueOf&&t.valueOf();if(null!=a&&a!==t)return e.from(a,r,n);var o=function(t){if(e.isBuffer(t)){var r=0|u(t.length),n=i(r);return 0===n.length||t.copy(n,0,0,r),n}if(void 0!==t.length)return\"number\"!=typeof t.length||N(t.length)?i(0):c(t);if(\"Buffer\"===t.type&&Array.isArray(t.data))return c(t.data)}(t);if(o)return o;if(\"undefined\"!=typeof Symbol&&null!=Symbol.toPrimitive&&\"function\"==typeof t[Symbol.toPrimitive])return e.from(t[Symbol.toPrimitive](\"string\"),r,n);throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof t)}function s(t){if(\"number\"!=typeof t)throw new TypeError('\"size\" argument must be of type number');if(t<0)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"')}function l(t){return s(t),i(t<0?0:0|u(t))}function c(t){for(var e=t.length<0?0:0|u(t.length),r=i(e),n=0;n<e;n+=1)r[n]=255&t[n];return r}function u(t){if(t>=2147483647)throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+2147483647..toString(16)+\" bytes\");return 0|t}function h(t,r){if(e.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(t,ArrayBuffer))return t.byteLength;if(\"string\"!=typeof t)throw new TypeError('The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var n=t.length,a=arguments.length>2&&!0===arguments[2];if(!a&&0===n)return 0;for(var i=!1;;)switch(r){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":return D(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return R(t).length;default:if(i)return a?-1:D(t).length;r=(\"\"+r).toLowerCase(),i=!0}}function f(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return\"\";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return\"\";if((r>>>=0)<=(e>>>=0))return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return A(this,e,r);case\"utf8\":case\"utf-8\":return T(this,e,r);case\"ascii\":return k(this,e,r);case\"latin1\":case\"binary\":return M(this,e,r);case\"base64\":return w(this,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return S(this,e,r);default:if(n)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),n=!0}}function p(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function d(t,r,n,a,i){if(0===t.length)return-1;if(\"string\"==typeof n?(a=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),N(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if(\"string\"==typeof r&&(r=e.from(r,a)),e.isBuffer(r))return 0===r.length?-1:g(t,r,n,a,i);if(\"number\"==typeof r)return r&=255,\"function\"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,r,n):Uint8Array.prototype.lastIndexOf.call(t,r,n):g(t,[r],n,a,i);throw new TypeError(\"val must be string, number or Buffer\")}function g(t,e,r,n,a){var i,o=1,s=t.length,l=e.length;if(void 0!==n&&(\"ucs2\"===(n=String(n).toLowerCase())||\"ucs-2\"===n||\"utf16le\"===n||\"utf-16le\"===n)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,r/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(a){var u=-1;for(i=r;i<s;i++)if(c(t,i)===c(e,-1===u?0:i-u)){if(-1===u&&(u=i),i-u+1===l)return u*o}else-1!==u&&(i-=i-u),u=-1}else for(r+l>s&&(r=s-l),i=r;i>=0;i--){for(var h=!0,f=0;f<l;f++)if(c(t,i+f)!==c(e,f)){h=!1;break}if(h)return i}return-1}function m(t,e,r,n){r=Number(r)||0;var a=t.length-r;n?(n=Number(n))>a&&(n=a):n=a;var i=e.length;n>i/2&&(n=i/2);for(var o=0;o<n;++o){var s=parseInt(e.substr(2*o,2),16);if(N(s))return o;t[r+o]=s}return o}function v(t,e,r,n){return F(D(e,t.length-r),t,r,n)}function y(t,e,r,n){return F(function(t){for(var e=[],r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}(e),t,r,n)}function x(t,e,r,n){return y(t,e,r,n)}function b(t,e,r,n){return F(R(e),t,r,n)}function _(t,e,r,n){return F(function(t,e){for(var r,n,a,i=[],o=0;o<t.length&&!((e-=2)<0);++o)r=t.charCodeAt(o),n=r>>8,a=r%256,i.push(a),i.push(n);return i}(e,t.length-r),t,r,n)}function w(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function T(t,e,r){r=Math.min(t.length,r);for(var n=[],a=e;a<r;){var i,o,s,l,c=t[a],u=null,h=c>239?4:c>223?3:c>191?2:1;if(a+h<=r)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(i=t[a+1]))&&(l=(31&c)<<6|63&i)>127&&(u=l);break;case 3:i=t[a+1],o=t[a+2],128==(192&i)&&128==(192&o)&&(l=(15&c)<<12|(63&i)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:i=t[a+1],o=t[a+2],s=t[a+3],128==(192&i)&&128==(192&o)&&128==(192&s)&&(l=(15&c)<<18|(63&i)<<12|(63&o)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),a+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);var r=\"\",n=0;for(;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=4096));return r}(n)}r.kMaxLength=2147483647,e.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(t){return!1}}(),e.TYPED_ARRAY_SUPPORT||\"undefined\"==typeof console||\"function\"!=typeof console.error||console.error(\"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\"),Object.defineProperty(e.prototype,\"parent\",{enumerable:!0,get:function(){if(e.isBuffer(this))return this.buffer}}),Object.defineProperty(e.prototype,\"offset\",{enumerable:!0,get:function(){if(e.isBuffer(this))return this.byteOffset}}),\"undefined\"!=typeof Symbol&&null!=Symbol.species&&e[Symbol.species]===e&&Object.defineProperty(e,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),e.poolSize=8192,e.from=function(t,e,r){return o(t,e,r)},e.prototype.__proto__=Uint8Array.prototype,e.__proto__=Uint8Array,e.alloc=function(t,e,r){return function(t,e,r){return s(t),t<=0?i(t):void 0!==e?\"string\"==typeof r?i(t).fill(e,r):i(t).fill(e):i(t)}(t,e,r)},e.allocUnsafe=function(t){return l(t)},e.allocUnsafeSlow=function(t){return l(t)},e.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==e.prototype},e.compare=function(t,r){if(B(t,Uint8Array)&&(t=e.from(t,t.offset,t.byteLength)),B(r,Uint8Array)&&(r=e.from(r,r.offset,r.byteLength)),!e.isBuffer(t)||!e.isBuffer(r))throw new TypeError('The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;for(var n=t.length,a=r.length,i=0,o=Math.min(n,a);i<o;++i)if(t[i]!==r[i]){n=t[i],a=r[i];break}return n<a?-1:a<n?1:0},e.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},e.concat=function(t,r){if(!Array.isArray(t))throw new TypeError('\"list\" argument must be an Array of Buffers');if(0===t.length)return e.alloc(0);var n;if(void 0===r)for(r=0,n=0;n<t.length;++n)r+=t[n].length;var a=e.allocUnsafe(r),i=0;for(n=0;n<t.length;++n){var o=t[n];if(B(o,Uint8Array)&&(o=e.from(o)),!e.isBuffer(o))throw new TypeError('\"list\" argument must be an Array of Buffers');o.copy(a,i),i+=o.length}return a},e.byteLength=h,e.prototype._isBuffer=!0,e.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var e=0;e<t;e+=2)p(this,e,e+1);return this},e.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var e=0;e<t;e+=4)p(this,e,e+3),p(this,e+1,e+2);return this},e.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var e=0;e<t;e+=8)p(this,e,e+7),p(this,e+1,e+6),p(this,e+2,e+5),p(this,e+3,e+4);return this},e.prototype.toString=function(){var t=this.length;return 0===t?\"\":0===arguments.length?T(this,0,t):f.apply(this,arguments)},e.prototype.toLocaleString=e.prototype.toString,e.prototype.equals=function(t){if(!e.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t||0===e.compare(this,t)},e.prototype.inspect=function(){var t=\"\",e=r.INSPECT_MAX_BYTES;return t=this.toString(\"hex\",0,e).replace(/(.{2})/g,\"$1 \").trim(),this.length>e&&(t+=\" ... \"),\"<Buffer \"+t+\">\"},e.prototype.compare=function(t,r,n,a,i){if(B(t,Uint8Array)&&(t=e.from(t,t.offset,t.byteLength)),!e.isBuffer(t))throw new TypeError('The \"target\" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===r&&(r=0),void 0===n&&(n=t?t.length:0),void 0===a&&(a=0),void 0===i&&(i=this.length),r<0||n>t.length||a<0||i>this.length)throw new RangeError(\"out of range index\");if(a>=i&&r>=n)return 0;if(a>=i)return-1;if(r>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(a>>>=0),s=(n>>>=0)-(r>>>=0),l=Math.min(o,s),c=this.slice(a,i),u=t.slice(r,n),h=0;h<l;++h)if(c[h]!==u[h]){o=c[h],s=u[h];break}return o<s?-1:s<o?1:0},e.prototype.includes=function(t,e,r){return-1!==this.indexOf(t,e,r)},e.prototype.indexOf=function(t,e,r){return d(this,t,e,r,!0)},e.prototype.lastIndexOf=function(t,e,r){return d(this,t,e,r,!1)},e.prototype.write=function(t,e,r,n){if(void 0===e)n=\"utf8\",r=this.length,e=0;else if(void 0===r&&\"string\"==typeof e)n=e,r=this.length,e=0;else{if(!isFinite(e))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");e>>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n=\"utf8\")):(n=r,r=void 0)}var a=this.length-e;if((void 0===r||r>a)&&(r=a),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");n||(n=\"utf8\");for(var i=!1;;)switch(n){case\"hex\":return m(this,t,e,r);case\"utf8\":case\"utf-8\":return v(this,t,e,r);case\"ascii\":return y(this,t,e,r);case\"latin1\":case\"binary\":return x(this,t,e,r);case\"base64\":return b(this,t,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return _(this,t,e,r);default:if(i)throw new TypeError(\"Unknown encoding: \"+n);n=(\"\"+n).toLowerCase(),i=!0}},e.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};function k(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var a=e;a<r;++a)n+=String.fromCharCode(127&t[a]);return n}function M(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var a=e;a<r;++a)n+=String.fromCharCode(t[a]);return n}function A(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var a=\"\",i=e;i<r;++i)a+=O(t[i]);return a}function S(t,e,r){for(var n=t.slice(e,r),a=\"\",i=0;i<n.length;i+=2)a+=String.fromCharCode(n[i]+256*n[i+1]);return a}function E(t,e,r){if(t%1!=0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>r)throw new RangeError(\"Trying to access beyond buffer length\")}function C(t,r,n,a,i,o){if(!e.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(r>i||r<o)throw new RangeError('\"value\" argument is out of bounds');if(n+a>t.length)throw new RangeError(\"Index out of range\")}function L(t,e,r,n,a,i){if(r+n>t.length)throw new RangeError(\"Index out of range\");if(r<0)throw new RangeError(\"Index out of range\")}function P(t,e,r,n,i){return e=+e,r>>>=0,i||L(t,0,r,4),a.write(t,e,r,n,23,4),r+4}function I(t,e,r,n,i){return e=+e,r>>>=0,i||L(t,0,r,8),a.write(t,e,r,n,52,8),r+8}e.prototype.slice=function(t,r){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(r=void 0===r?n:~~r)<0?(r+=n)<0&&(r=0):r>n&&(r=n),r<t&&(r=t);var a=this.subarray(t,r);return a.__proto__=e.prototype,a},e.prototype.readUIntLE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t],a=1,i=0;++i<e&&(a*=256);)n+=this[t+i]*a;return n},e.prototype.readUIntBE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t+--e],a=1;e>0&&(a*=256);)n+=this[t+--e]*a;return n},e.prototype.readUInt8=function(t,e){return t>>>=0,e||E(t,1,this.length),this[t]},e.prototype.readUInt16LE=function(t,e){return t>>>=0,e||E(t,2,this.length),this[t]|this[t+1]<<8},e.prototype.readUInt16BE=function(t,e){return t>>>=0,e||E(t,2,this.length),this[t]<<8|this[t+1]},e.prototype.readUInt32LE=function(t,e){return t>>>=0,e||E(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},e.prototype.readUInt32BE=function(t,e){return t>>>=0,e||E(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},e.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t],a=1,i=0;++i<e&&(a*=256);)n+=this[t+i]*a;return n>=(a*=128)&&(n-=Math.pow(2,8*e)),n},e.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=e,a=1,i=this[t+--n];n>0&&(a*=256);)i+=this[t+--n]*a;return i>=(a*=128)&&(i-=Math.pow(2,8*e)),i},e.prototype.readInt8=function(t,e){return t>>>=0,e||E(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},e.prototype.readInt16LE=function(t,e){t>>>=0,e||E(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},e.prototype.readInt16BE=function(t,e){t>>>=0,e||E(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},e.prototype.readInt32LE=function(t,e){return t>>>=0,e||E(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},e.prototype.readInt32BE=function(t,e){return t>>>=0,e||E(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},e.prototype.readFloatLE=function(t,e){return t>>>=0,e||E(t,4,this.length),a.read(this,t,!0,23,4)},e.prototype.readFloatBE=function(t,e){return t>>>=0,e||E(t,4,this.length),a.read(this,t,!1,23,4)},e.prototype.readDoubleLE=function(t,e){return t>>>=0,e||E(t,8,this.length),a.read(this,t,!0,52,8)},e.prototype.readDoubleBE=function(t,e){return t>>>=0,e||E(t,8,this.length),a.read(this,t,!1,52,8)},e.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||C(this,t,e,r,Math.pow(2,8*r)-1,0);var a=1,i=0;for(this[e]=255&t;++i<r&&(a*=256);)this[e+i]=t/a&255;return e+r},e.prototype.writeUIntBE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||C(this,t,e,r,Math.pow(2,8*r)-1,0);var a=r-1,i=1;for(this[e+a]=255&t;--a>=0&&(i*=256);)this[e+a]=t/i&255;return e+r},e.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,1,255,0),this[e]=255&t,e+1},e.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},e.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},e.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},e.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},e.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var a=Math.pow(2,8*r-1);C(this,t,e,r,a-1,-a)}var i=0,o=1,s=0;for(this[e]=255&t;++i<r&&(o*=256);)t<0&&0===s&&0!==this[e+i-1]&&(s=1),this[e+i]=(t/o>>0)-s&255;return e+r},e.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var a=Math.pow(2,8*r-1);C(this,t,e,r,a-1,-a)}var i=r-1,o=1,s=0;for(this[e+i]=255&t;--i>=0&&(o*=256);)t<0&&0===s&&0!==this[e+i+1]&&(s=1),this[e+i]=(t/o>>0)-s&255;return e+r},e.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},e.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},e.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},e.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},e.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},e.prototype.writeFloatLE=function(t,e,r){return P(this,t,e,!0,r)},e.prototype.writeFloatBE=function(t,e,r){return P(this,t,e,!1,r)},e.prototype.writeDoubleLE=function(t,e,r){return I(this,t,e,!0,r)},e.prototype.writeDoubleBE=function(t,e,r){return I(this,t,e,!1,r)},e.prototype.copy=function(t,r,n,a){if(!e.isBuffer(t))throw new TypeError(\"argument should be a Buffer\");if(n||(n=0),a||0===a||(a=this.length),r>=t.length&&(r=t.length),r||(r=0),a>0&&a<n&&(a=n),a===n)return 0;if(0===t.length||0===this.length)return 0;if(r<0)throw new RangeError(\"targetStart out of bounds\");if(n<0||n>=this.length)throw new RangeError(\"Index out of range\");if(a<0)throw new RangeError(\"sourceEnd out of bounds\");a>this.length&&(a=this.length),t.length-r<a-n&&(a=t.length-r+n);var i=a-n;if(this===t&&\"function\"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(r,n,a);else if(this===t&&n<r&&r<a)for(var o=i-1;o>=0;--o)t[o+r]=this[o+n];else Uint8Array.prototype.set.call(t,this.subarray(n,a),r);return i},e.prototype.fill=function(t,r,n,a){if(\"string\"==typeof t){if(\"string\"==typeof r?(a=r,r=0,n=this.length):\"string\"==typeof n&&(a=n,n=this.length),void 0!==a&&\"string\"!=typeof a)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof a&&!e.isEncoding(a))throw new TypeError(\"Unknown encoding: \"+a);if(1===t.length){var i=t.charCodeAt(0);(\"utf8\"===a&&i<128||\"latin1\"===a)&&(t=i)}}else\"number\"==typeof t&&(t&=255);if(r<0||this.length<r||this.length<n)throw new RangeError(\"Out of range index\");if(n<=r)return this;var o;if(r>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),\"number\"==typeof t)for(o=r;o<n;++o)this[o]=t;else{var s=e.isBuffer(t)?t:e.from(t,a),l=s.length;if(0===l)throw new TypeError('The value \"'+t+'\" is invalid for argument \"value\"');for(o=0;o<n-r;++o)this[o+r]=s[o%l]}return this};var z=/[^+/0-9A-Za-z-_]/g;function O(t){return t<16?\"0\"+t.toString(16):t.toString(16)}function D(t,e){var r;e=e||1/0;for(var n=t.length,a=null,i=[],o=0;o<n;++o){if((r=t.charCodeAt(o))>55295&&r<57344){if(!a){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&i.push(239,191,189);continue}a=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),a=r;continue}r=65536+(a-55296<<10|r-56320)}else a&&(e-=3)>-1&&i.push(239,191,189);if(a=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error(\"Invalid code point\");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function R(t){return n.toByteArray(function(t){if((t=(t=t.split(\"=\")[0]).trim().replace(z,\"\")).length<2)return\"\";for(;t.length%4!=0;)t+=\"=\";return t}(t))}function F(t,e,r,n){for(var a=0;a<n&&!(a+r>=e.length||a>=t.length);++a)e[a+r]=t[a];return a}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function N(t){return t!=t}}).call(this,t(\"buffer\").Buffer)},{\"base64-js\":79,buffer:111,ieee754:416}],112:[function(t,e,r){\"use strict\";var n=t(\"./lib/monotone\"),a=t(\"./lib/triangulation\"),i=t(\"./lib/delaunay\"),o=t(\"./lib/filter\");function s(t){return[Math.min(t[0],t[1]),Math.max(t[0],t[1])]}function l(t,e){return t[0]-e[0]||t[1]-e[1]}function c(t,e,r){return e in t?t[e]:r}e.exports=function(t,e,r){Array.isArray(e)?(r=r||{},e=e||[]):(r=e||{},e=[]);var u=!!c(r,\"delaunay\",!0),h=!!c(r,\"interior\",!0),f=!!c(r,\"exterior\",!0),p=!!c(r,\"infinity\",!1);if(!h&&!f||0===t.length)return[];var d=n(t,e);if(u||h!==f||p){for(var g=a(t.length,function(t){return t.map(s).sort(l)}(e)),m=0;m<d.length;++m){var v=d[m];g.addTriangle(v[0],v[1],v[2])}return u&&i(t,g),f?h?p?o(g,0,p):g.cells():o(g,1,p):o(g,-1)}return d}},{\"./lib/delaunay\":113,\"./lib/filter\":114,\"./lib/monotone\":115,\"./lib/triangulation\":116}],113:[function(t,e,r){\"use strict\";var n=t(\"robust-in-sphere\")[4];t(\"binary-search-bounds\");function a(t,e,r,a,i,o){var s=e.opposite(a,i);if(!(s<0)){if(i<a){var l=a;a=i,i=l,l=o,o=s,s=l}e.isConstraint(a,i)||n(t[a],t[i],t[o],t[s])<0&&r.push(a,i)}}e.exports=function(t,e){for(var r=[],i=t.length,o=e.stars,s=0;s<i;++s)for(var l=o[s],c=1;c<l.length;c+=2){if(!((p=l[c])<s)&&!e.isConstraint(s,p)){for(var u=l[c-1],h=-1,f=1;f<l.length;f+=2)if(l[f-1]===p){h=l[f];break}h<0||n(t[s],t[p],t[u],t[h])<0&&r.push(s,p)}}for(;r.length>0;){for(var p=r.pop(),d=(s=r.pop(),u=-1,h=-1,l=o[s],1);d<l.length;d+=2){var g=l[d-1],m=l[d];g===p?h=m:m===p&&(u=g)}u<0||h<0||(n(t[s],t[p],t[u],t[h])>=0||(e.flip(s,p),a(t,e,r,u,s,h),a(t,e,r,s,h,u),a(t,e,r,h,p,u),a(t,e,r,p,u,h)))}}},{\"binary-search-bounds\":96,\"robust-in-sphere\":518}],114:[function(t,e,r){\"use strict\";var n,a=t(\"binary-search-bounds\");function i(t,e,r,n,a,i,o){this.cells=t,this.neighbor=e,this.flags=n,this.constraint=r,this.active=a,this.next=i,this.boundary=o}function o(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}e.exports=function(t,e,r){var n=function(t,e){for(var r=t.cells(),n=r.length,a=0;a<n;++a){var s=(v=r[a])[0],l=v[1],c=v[2];l<c?l<s&&(v[0]=l,v[1]=c,v[2]=s):c<s&&(v[0]=c,v[1]=s,v[2]=l)}r.sort(o);var u=new Array(n);for(a=0;a<u.length;++a)u[a]=0;var h=[],f=[],p=new Array(3*n),d=new Array(3*n),g=null;e&&(g=[]);var m=new i(r,p,d,u,h,f,g);for(a=0;a<n;++a)for(var v=r[a],y=0;y<3;++y){s=v[y],l=v[(y+1)%3];var x=p[3*a+y]=m.locate(l,s,t.opposite(l,s)),b=d[3*a+y]=t.isConstraint(s,l);x<0&&(b?f.push(a):(h.push(a),u[a]=1),e&&g.push([l,s,-1]))}return m}(t,r);if(0===e)return r?n.cells.concat(n.boundary):n.cells;var a=1,s=n.active,l=n.next,c=n.flags,u=n.cells,h=n.constraint,f=n.neighbor;for(;s.length>0||l.length>0;){for(;s.length>0;){var p=s.pop();if(c[p]!==-a){c[p]=a;u[p];for(var d=0;d<3;++d){var g=f[3*p+d];g>=0&&0===c[g]&&(h[3*p+d]?l.push(g):(s.push(g),c[g]=a))}}}var m=l;l=s,s=m,l.length=0,a=-a}var v=function(t,e,r){for(var n=0,a=0;a<t.length;++a)e[a]===r&&(t[n++]=t[a]);return t.length=n,t}(u,c,e);if(r)return v.concat(n.boundary);return v},i.prototype.locate=(n=[0,0,0],function(t,e,r){var i=t,s=e,l=r;return e<r?e<t&&(i=e,s=r,l=t):r<t&&(i=r,s=t,l=e),i<0?-1:(n[0]=i,n[1]=s,n[2]=l,a.eq(this.cells,n,o))})},{\"binary-search-bounds\":96}],115:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\"),a=t(\"robust-orientation\")[3];function i(t,e,r,n,a){this.a=t,this.b=e,this.idx=r,this.lowerIds=n,this.upperIds=a}function o(t,e,r,n){this.a=t,this.b=e,this.type=r,this.idx=n}function s(t,e){var r=t.a[0]-e.a[0]||t.a[1]-e.a[1]||t.type-e.type;return r||(0!==t.type&&(r=a(t.a,t.b,e.b))?r:t.idx-e.idx)}function l(t,e){return a(t.a,t.b,e)}function c(t,e,r,i,o){for(var s=n.lt(e,i,l),c=n.gt(e,i,l),u=s;u<c;++u){for(var h=e[u],f=h.lowerIds,p=f.length;p>1&&a(r[f[p-2]],r[f[p-1]],i)>0;)t.push([f[p-1],f[p-2],o]),p-=1;f.length=p,f.push(o);var d=h.upperIds;for(p=d.length;p>1&&a(r[d[p-2]],r[d[p-1]],i)<0;)t.push([d[p-2],d[p-1],o]),p-=1;d.length=p,d.push(o)}}function u(t,e){var r;return(r=t.a[0]<e.a[0]?a(t.a,t.b,e.a):a(e.b,e.a,t.a))?r:(r=e.b[0]<t.b[0]?a(t.a,t.b,e.b):a(e.b,e.a,t.b))||t.idx-e.idx}function h(t,e,r){var a=n.le(t,r,u),o=t[a],s=o.upperIds,l=s[s.length-1];o.upperIds=[l],t.splice(a+1,0,new i(r.a,r.b,r.idx,[l],s))}function f(t,e,r){var a=r.a;r.a=r.b,r.b=a;var i=n.eq(t,r,u),o=t[i];t[i-1].upperIds=o.upperIds,t.splice(i,1)}e.exports=function(t,e){for(var r=t.length,n=e.length,a=[],l=0;l<r;++l)a.push(new o(t[l],null,0,l));for(l=0;l<n;++l){var u=e[l],p=t[u[0]],d=t[u[1]];p[0]<d[0]?a.push(new o(p,d,2,l),new o(d,p,1,l)):p[0]>d[0]&&a.push(new o(d,p,2,l),new o(p,d,1,l))}a.sort(s);for(var g=a[0].a[0]-(1+Math.abs(a[0].a[0]))*Math.pow(2,-52),m=[new i([g,1],[g,0],-1,[],[],[],[])],v=[],y=(l=0,a.length);l<y;++l){var x=a[l],b=x.type;0===b?c(v,m,t,x.a,x.idx):2===b?h(m,t,x):f(m,t,x)}return v}},{\"binary-search-bounds\":96,\"robust-orientation\":520}],116:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\");function a(t,e){this.stars=t,this.edges=e}e.exports=function(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=[];return new a(r,e)};var i=a.prototype;function o(t,e,r){for(var n=1,a=t.length;n<a;n+=2)if(t[n-1]===e&&t[n]===r)return t[n-1]=t[a-2],t[n]=t[a-1],void(t.length=a-2)}i.isConstraint=function(){var t=[0,0];function e(t,e){return t[0]-e[0]||t[1]-e[1]}return function(r,a){return t[0]=Math.min(r,a),t[1]=Math.max(r,a),n.eq(this.edges,t,e)>=0}}(),i.removeTriangle=function(t,e,r){var n=this.stars;o(n[t],e,r),o(n[e],r,t),o(n[r],t,e)},i.addTriangle=function(t,e,r){var n=this.stars;n[t].push(e,r),n[e].push(r,t),n[r].push(t,e)},i.opposite=function(t,e){for(var r=this.stars[e],n=1,a=r.length;n<a;n+=2)if(r[n]===t)return r[n-1];return-1},i.flip=function(t,e){var r=this.opposite(t,e),n=this.opposite(e,t);this.removeTriangle(t,e,r),this.removeTriangle(e,t,n),this.addTriangle(t,n,r),this.addTriangle(e,r,n)},i.edges=function(){for(var t=this.stars,e=[],r=0,n=t.length;r<n;++r)for(var a=t[r],i=0,o=a.length;i<o;i+=2)e.push([a[i],a[i+1]]);return e},i.cells=function(){for(var t=this.stars,e=[],r=0,n=t.length;r<n;++r)for(var a=t[r],i=0,o=a.length;i<o;i+=2){var s=a[i],l=a[i+1];r<Math.min(s,l)&&e.push([r,s,l])}return e}},{\"binary-search-bounds\":96}],117:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=1,r=1;r<t.length;++r)for(var n=0;n<r;++n)if(t[r]<t[n])e=-e;else if(t[n]===t[r])return 0;return e}},{}],118:[function(t,e,r){\"use strict\";var n=t(\"dup\"),a=t(\"robust-linear-solve\");function i(t,e){for(var r=0,n=t.length,a=0;a<n;++a)r+=t[a]*e[a];return r}function o(t){var e=t.length;if(0===e)return[];t[0].length;var r=n([t.length+1,t.length+1],1),o=n([t.length+1],1);r[e][e]=0;for(var s=0;s<e;++s){for(var l=0;l<=s;++l)r[l][s]=r[s][l]=2*i(t[s],t[l]);o[s]=i(t[s],t[s])}var c=a(r,o),u=0,h=c[e+1];for(s=0;s<h.length;++s)u+=h[s];var f=new Array(e);for(s=0;s<e;++s){h=c[s];var p=0;for(l=0;l<h.length;++l)p+=h[l];f[s]=p/u}return f}function s(t){if(0===t.length)return[];for(var e=t[0].length,r=n([e]),a=o(t),i=0;i<t.length;++i)for(var s=0;s<e;++s)r[s]+=t[i][s]*a[i];return r}s.barycenetric=o,e.exports=s},{dup:176,\"robust-linear-solve\":519}],119:[function(t,e,r){e.exports=function(t){for(var e=n(t),r=0,a=0;a<t.length;++a)for(var i=t[a],o=0;o<e.length;++o)r+=Math.pow(i[o]-e[o],2);return Math.sqrt(r/t.length)};var n=t(\"circumcenter\")},{circumcenter:118}],120:[function(t,e,r){e.exports=function(t,e,r){return e<r?t<e?e:t>r?r:t:t<r?r:t>e?e:t}},{}],121:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var n;if(r){n=e;for(var a=new Array(e.length),i=0;i<e.length;++i){var o=e[i];a[i]=[o[0],o[1],r[i]]}e=a}var s=function(t,e,r){var n=d(t,[],p(t));return v(e,n,r),!!n}(t,e,!!r);for(;y(t,e,!!r);)s=!0;if(r&&s){n.length=0,r.length=0;for(i=0;i<e.length;++i){o=e[i];n.push([o[0],o[1]]),r.push(o[2])}}return s};var n=t(\"union-find\"),a=t(\"box-intersect\"),i=t(\"robust-segment-intersect\"),o=t(\"big-rat\"),s=t(\"big-rat/cmp\"),l=t(\"big-rat/to-float\"),c=t(\"rat-vec\"),u=t(\"nextafter\"),h=t(\"./lib/rat-seg-intersect\");function f(t){var e=l(t);return[u(e,-1/0),u(e,1/0)]}function p(t){for(var e=new Array(t.length),r=0;r<t.length;++r){var n=t[r];e[r]=[u(n[0],-1/0),u(n[1],-1/0),u(n[0],1/0),u(n[1],1/0)]}return e}function d(t,e,r){for(var i=e.length,o=new n(i),s=[],l=0;l<e.length;++l){var c=e[l],h=f(c[0]),p=f(c[1]);s.push([u(h[0],-1/0),u(p[0],-1/0),u(h[1],1/0),u(p[1],1/0)])}a(s,(function(t,e){o.link(t,e)}));var d=!0,g=new Array(i);for(l=0;l<i;++l){(v=o.find(l))!==l&&(d=!1,t[v]=[Math.min(t[l][0],t[v][0]),Math.min(t[l][1],t[v][1])])}if(d)return null;var m=0;for(l=0;l<i;++l){var v;(v=o.find(l))===l?(g[l]=m,t[m++]=t[l]):g[l]=-1}t.length=m;for(l=0;l<i;++l)g[l]<0&&(g[l]=g[o.find(l)]);return g}function g(t,e){return t[0]-e[0]||t[1]-e[1]}function m(t,e){var r=t[0]-e[0]||t[1]-e[1];return r||(t[2]<e[2]?-1:t[2]>e[2]?1:0)}function v(t,e,r){if(0!==t.length){if(e)for(var n=0;n<t.length;++n){var a=e[(o=t[n])[0]],i=e[o[1]];o[0]=Math.min(a,i),o[1]=Math.max(a,i)}else for(n=0;n<t.length;++n){var o;a=(o=t[n])[0],i=o[1];o[0]=Math.min(a,i),o[1]=Math.max(a,i)}r?t.sort(m):t.sort(g);var s=1;for(n=1;n<t.length;++n){var l=t[n-1],c=t[n];(c[0]!==l[0]||c[1]!==l[1]||r&&c[2]!==l[2])&&(t[s++]=c)}t.length=s}}function y(t,e,r){var n=function(t,e){for(var r=new Array(e.length),n=0;n<e.length;++n){var a=e[n],i=t[a[0]],o=t[a[1]];r[n]=[u(Math.min(i[0],o[0]),-1/0),u(Math.min(i[1],o[1]),-1/0),u(Math.max(i[0],o[0]),1/0),u(Math.max(i[1],o[1]),1/0)]}return r}(t,e),f=function(t,e,r){var n=[];return a(r,(function(r,a){var o=e[r],s=e[a];if(o[0]!==s[0]&&o[0]!==s[1]&&o[1]!==s[0]&&o[1]!==s[1]){var l=t[o[0]],c=t[o[1]],u=t[s[0]],h=t[s[1]];i(l,c,u,h)&&n.push([r,a])}})),n}(t,e,n),g=p(t),m=function(t,e,r,n){var o=[];return a(r,n,(function(r,n){var a=e[r];if(a[0]!==n&&a[1]!==n){var s=t[n],l=t[a[0]],c=t[a[1]];i(l,c,s,s)&&o.push([r,n])}})),o}(t,e,n,g),y=d(t,function(t,e,r,n,a){var i,u,f=t.map((function(t){return[o(t[0]),o(t[1])]}));for(i=0;i<r.length;++i){var p=r[i];u=p[0];var d=p[1],g=e[u],m=e[d],v=h(c(t[g[0]]),c(t[g[1]]),c(t[m[0]]),c(t[m[1]]));if(v){var y=t.length;t.push([l(v[0]),l(v[1])]),f.push(v),n.push([u,y],[d,y])}}for(n.sort((function(t,e){if(t[0]!==e[0])return t[0]-e[0];var r=f[t[1]],n=f[e[1]];return s(r[0],n[0])||s(r[1],n[1])})),i=n.length-1;i>=0;--i){var x=e[u=(S=n[i])[0]],b=x[0],_=x[1],w=t[b],T=t[_];if((w[0]-T[0]||w[1]-T[1])<0){var k=b;b=_,_=k}x[0]=b;var M,A=x[1]=S[1];for(a&&(M=x[2]);i>0&&n[i-1][0]===u;){var S,E=(S=n[--i])[1];a?e.push([A,E,M]):e.push([A,E]),A=E}a?e.push([A,_,M]):e.push([A,_])}return f}(t,e,f,m,r));return v(e,y,r),!!y||(f.length>0||m.length>0)}},{\"./lib/rat-seg-intersect\":122,\"big-rat\":83,\"big-rat/cmp\":81,\"big-rat/to-float\":95,\"box-intersect\":101,nextafter:470,\"rat-vec\":504,\"robust-segment-intersect\":523,\"union-find\":568}],122:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var i=s(e,t),h=s(n,r),f=u(i,h);if(0===o(f))return null;var p=s(t,r),d=u(h,p),g=a(d,f),m=c(i,g);return l(t,m)};var n=t(\"big-rat/mul\"),a=t(\"big-rat/div\"),i=t(\"big-rat/sub\"),o=t(\"big-rat/sign\"),s=t(\"rat-vec/sub\"),l=t(\"rat-vec/add\"),c=t(\"rat-vec/muls\");function u(t,e){return i(n(t[0],e[1]),n(t[1],e[0]))}},{\"big-rat/div\":82,\"big-rat/mul\":92,\"big-rat/sign\":93,\"big-rat/sub\":94,\"rat-vec/add\":503,\"rat-vec/muls\":505,\"rat-vec/sub\":506}],123:[function(t,e,r){\"use strict\";var n=t(\"clamp\");function a(t,e){null==e&&(e=!0);var r=t[0],a=t[1],i=t[2],o=t[3];return null==o&&(o=e?1:255),e&&(r*=255,a*=255,i*=255,o*=255),16777216*(r=255&n(r,0,255))+((a=255&n(a,0,255))<<16)+((i=255&n(i,0,255))<<8)+(o=255&n(o,0,255))}e.exports=a,e.exports.to=a,e.exports.from=function(t,e){var r=(t=+t)>>>24,n=(16711680&t)>>>16,a=(65280&t)>>>8,i=255&t;return!1===e?[r,n,a,i]:[r/255,n/255,a/255,i/255]}},{clamp:120}],124:[function(t,e,r){\"use strict\";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},{}],125:[function(t,e,r){\"use strict\";var n=t(\"color-rgba\"),a=t(\"dtype\");e.exports=function(t,e){\"float\"!==e&&e||(e=\"array\"),\"uint\"===e&&(e=\"uint8\"),\"uint_clamped\"===e&&(e=\"uint8_clamped\");var r=new(a(e))(4),i=\"uint8\"!==e&&\"uint8_clamped\"!==e;return t.length&&\"string\"!=typeof t||((t=n(t))[0]/=255,t[1]/=255,t[2]/=255),function(t){return t instanceof Uint8Array||t instanceof Uint8ClampedArray||!!(Array.isArray(t)&&(t[0]>1||0===t[0])&&(t[1]>1||0===t[1])&&(t[2]>1||0===t[2])&&(!t[3]||t[3]>1))}(t)?(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=null!=t[3]?t[3]:255,i&&(r[0]/=255,r[1]/=255,r[2]/=255,r[3]/=255),r):(i?(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=null!=t[3]?t[3]:1):(r[0]=Math.min(Math.max(Math.floor(255*t[0]),0),255),r[1]=Math.min(Math.max(Math.floor(255*t[1]),0),255),r[2]=Math.min(Math.max(Math.floor(255*t[2]),0),255),r[3]=null==t[3]?255:Math.min(Math.max(Math.floor(255*t[3]),0),255)),r)}},{\"color-rgba\":126,dtype:175}],126:[function(t,e,r){\"use strict\";var n=t(\"color-parse\"),a=t(\"color-space/hsl\");e.exports=function(t){var e;Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r=n(t);return r.space?((e=Array(3))[0]=Math.min(Math.max(r.values[0],0),255),e[1]=Math.min(Math.max(r.values[1],0),255),e[2]=Math.min(Math.max(r.values[2],0),255),\"h\"===r.space[0]&&(e=a.rgb(e)),e.push(Math.min(Math.max(r.alpha,0),1)),e):[]}},{\"color-parse\":127,\"color-space/hsl\":128}],127:[function(t,e,r){\"use strict\";var n=t(\"color-name\");e.exports=function(t){var e,r,i=[],o=1;if(\"string\"==typeof t)if(n[t])i=n[t].slice(),r=\"rgb\";else if(\"transparent\"===t)o=0,r=\"rgb\",i=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var s=(u=t.slice(1)).length;o=1,s<=4?(i=[parseInt(u[0]+u[0],16),parseInt(u[1]+u[1],16),parseInt(u[2]+u[2],16)],4===s&&(o=parseInt(u[3]+u[3],16)/255)):(i=[parseInt(u[0]+u[1],16),parseInt(u[2]+u[3],16),parseInt(u[4]+u[5],16)],8===s&&(o=parseInt(u[6]+u[7],16)/255)),i[0]||(i[0]=0),i[1]||(i[1]=0),i[2]||(i[2]=0),r=\"rgb\"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(t)){var l=e[1],c=\"rgb\"===l,u=l.replace(/a$/,\"\");r=u;s=\"cmyk\"===u?4:\"gray\"===u?1:3;i=e[2].trim().split(/\\s*[,\\/]\\s*|\\s+/).map((function(t,e){if(/%$/.test(t))return e===s?parseFloat(t)/100:\"rgb\"===u?255*parseFloat(t)/100:parseFloat(t);if(\"h\"===u[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==a[t])return a[t]}return parseFloat(t)})),l===u&&i.push(1),o=c||void 0===i[s]?1:i[s],i=i.slice(0,s)}else t.length>10&&/[0-9](?:\\s|\\/)/.test(t)&&(i=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),r=t.match(/([a-z])/gi).join(\"\").toLowerCase());else isNaN(t)?Array.isArray(t)||t.length?(i=[t[0],t[1],t[2]],r=\"rgb\",o=4===t.length?t[3]:1):t instanceof Object&&(null!=t.r||null!=t.red||null!=t.R?(r=\"rgb\",i=[t.r||t.red||t.R||0,t.g||t.green||t.G||0,t.b||t.blue||t.B||0]):(r=\"hsl\",i=[t.h||t.hue||t.H||0,t.s||t.saturation||t.S||0,t.l||t.lightness||t.L||t.b||t.brightness]),o=t.a||t.alpha||t.opacity||1,null!=t.opacity&&(o/=100)):(r=\"rgb\",i=[t>>>16,(65280&t)>>>8,255&t]);return{space:r,values:i,alpha:o}};var a={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},{\"color-name\":124}],128:[function(t,e,r){\"use strict\";var n=t(\"./rgb\");e.exports={name:\"hsl\",min:[0,0,0],max:[360,100,100],channel:[\"hue\",\"saturation\",\"lightness\"],alias:[\"HSL\"],rgb:function(t){var e,r,n,a,i,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[i=255*l,i,i];e=2*l-(r=l<.5?l*(1+s):l+s-l*s),a=[0,0,0];for(var c=0;c<3;c++)(n=o+1/3*-(c-1))<0?n++:n>1&&n--,i=6*n<1?e+6*(r-e)*n:2*n<1?r:3*n<2?e+(r-e)*(2/3-n)*6:e,a[c]=255*i;return a}},n.hsl=function(t){var e,r,n=t[0]/255,a=t[1]/255,i=t[2]/255,o=Math.min(n,a,i),s=Math.max(n,a,i),l=s-o;return s===o?e=0:n===s?e=(a-i)/l:a===s?e=2+(i-n)/l:i===s&&(e=4+(n-a)/l),(e=Math.min(60*e,360))<0&&(e+=360),r=(o+s)/2,[e,100*(s===o?0:r<=.5?l/(s+o):l/(2-s-o)),100*r]}},{\"./rgb\":129}],129:[function(t,e,r){\"use strict\";e.exports={name:\"rgb\",min:[0,0,0],max:[255,255,255],channel:[\"red\",\"green\",\"blue\"],alias:[\"RGB\"]}},{}],130:[function(t,e,r){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],cool:[{index:0,rgb:[0,255,255]},{index:1,rgb:[255,0,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],\"rainbow-soft\":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],\"freesurface-blue\":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],\"freesurface-red\":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],\"velocity-blue\":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],\"velocity-green\":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},{}],131:[function(t,e,r){\"use strict\";var n=t(\"./colorScale\"),a=t(\"lerp\");function i(t){return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function o(t){for(var e,r=\"#\",n=0;n<3;++n)r+=(\"00\"+(e=(e=t[n]).toString(16))).substr(e.length);return r}function s(t){return\"rgba(\"+t.join(\",\")+\")\"}e.exports=function(t){var e,r,l,c,u,h,f,p,d,g;t||(t={});p=(t.nshades||72)-1,f=t.format||\"hex\",(h=t.colormap)||(h=\"jet\");if(\"string\"==typeof h){if(h=h.toLowerCase(),!n[h])throw Error(h+\" not a supported colorscale\");u=n[h]}else{if(!Array.isArray(h))throw Error(\"unsupported colormap option\",h);u=h.slice()}if(u.length>p+1)throw new Error(h+\" map requires nshades to be at least size \"+u.length);d=Array.isArray(t.alpha)?2!==t.alpha.length?[1,1]:t.alpha.slice():\"number\"==typeof t.alpha?[t.alpha,t.alpha]:[1,1];e=u.map((function(t){return Math.round(t.index*p)})),d[0]=Math.min(Math.max(d[0],0),1),d[1]=Math.min(Math.max(d[1],0),1);var m=u.map((function(t,e){var r=u[e].index,n=u[e].rgb.slice();return 4===n.length&&n[3]>=0&&n[3]<=1||(n[3]=d[0]+(d[1]-d[0])*r),n})),v=[];for(g=0;g<e.length-1;++g){c=e[g+1]-e[g],r=m[g],l=m[g+1];for(var y=0;y<c;y++){var x=y/c;v.push([Math.round(a(r[0],l[0],x)),Math.round(a(r[1],l[1],x)),Math.round(a(r[2],l[2],x)),a(r[3],l[3],x)])}}v.push(u[u.length-1].rgb.concat(d[1])),\"hex\"===f?v=v.map(o):\"rgbaString\"===f?v=v.map(s):\"float\"===f&&(v=v.map(i));return v}},{\"./colorScale\":130,lerp:446}],132:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,i){var o=n(e,r,i);if(0===o){var s=a(n(t,e,r)),c=a(n(t,e,i));if(s===c){if(0===s){var u=l(t,e,r),h=l(t,e,i);return u===h?0:u?1:-1}return 0}return 0===c?s>0||l(t,e,i)?-1:1:0===s?c>0||l(t,e,r)?1:-1:a(c-s)}var f=n(t,e,r);return f>0?o>0&&n(t,e,i)>0?1:-1:f<0?o>0||n(t,e,i)>0?1:-1:n(t,e,i)>0||l(t,e,r)?1:-1};var n=t(\"robust-orientation\"),a=t(\"signum\"),i=t(\"two-sum\"),o=t(\"robust-product\"),s=t(\"robust-sum\");function l(t,e,r){var n=i(t[0],-e[0]),a=i(t[1],-e[1]),l=i(r[0],-e[0]),c=i(r[1],-e[1]),u=s(o(n,l),o(a,c));return u[u.length-1]>=0}},{\"robust-orientation\":520,\"robust-product\":521,\"robust-sum\":525,signum:526,\"two-sum\":555}],133:[function(t,e,r){e.exports=function(t,e){var r=t.length,i=t.length-e.length;if(i)return i;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:return t[0]+t[1]-e[0]-e[1]||n(t[0],t[1])-n(e[0],e[1]);case 3:var o=t[0]+t[1],s=e[0]+e[1];if(i=o+t[2]-(s+e[2]))return i;var l=n(t[0],t[1]),c=n(e[0],e[1]);return n(l,t[2])-n(c,e[2])||n(l+t[2],o)-n(c+e[2],s);case 4:var u=t[0],h=t[1],f=t[2],p=t[3],d=e[0],g=e[1],m=e[2],v=e[3];return u+h+f+p-(d+g+m+v)||n(u,h,f,p)-n(d,g,m,v,d)||n(u+h,u+f,u+p,h+f,h+p,f+p)-n(d+g,d+m,d+v,g+m,g+v,m+v)||n(u+h+f,u+h+p,u+f+p,h+f+p)-n(d+g+m,d+g+v,d+m+v,g+m+v);default:for(var y=t.slice().sort(a),x=e.slice().sort(a),b=0;b<r;++b)if(i=y[b]-x[b])return i;return 0}};var n=Math.min;function a(t,e){return t-e}},{}],134:[function(t,e,r){\"use strict\";var n=t(\"compare-cell\"),a=t(\"cell-orientation\");e.exports=function(t,e){return n(t,e)||a(t)-a(e)}},{\"cell-orientation\":117,\"compare-cell\":133}],135:[function(t,e,r){\"use strict\";var n=t(\"./lib/ch1d\"),a=t(\"./lib/ch2d\"),i=t(\"./lib/chnd\");e.exports=function(t){var e=t.length;if(0===e)return[];if(1===e)return[[0]];var r=t[0].length;if(0===r)return[];if(1===r)return n(t);if(2===r)return a(t);return i(t,r)}},{\"./lib/ch1d\":136,\"./lib/ch2d\":137,\"./lib/chnd\":138}],136:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=0,r=0,n=1;n<t.length;++n)t[n][0]<t[e][0]&&(e=n),t[n][0]>t[r][0]&&(r=n);return e<r?[[e],[r]]:e>r?[[r],[e]]:[[e]]}},{}],137:[function(t,e,r){\"use strict\";e.exports=function(t){var e=n(t),r=e.length;if(r<=2)return[];for(var a=new Array(r),i=e[r-1],o=0;o<r;++o){var s=e[o];a[o]=[i,s],i=s}return a};var n=t(\"monotone-convex-hull-2d\")},{\"monotone-convex-hull-2d\":456}],138:[function(t,e,r){\"use strict\";e.exports=function(t,e){try{return n(t,!0)}catch(o){var r=a(t);if(r.length<=e)return[];var i=function(t,e){for(var r=t.length,n=new Array(r),a=0;a<e.length;++a)n[a]=t[e[a]];var i=e.length;for(a=0;a<r;++a)e.indexOf(a)<0&&(n[i++]=t[a]);return n}(t,r);return function(t,e){for(var r=t.length,n=e.length,a=0;a<r;++a)for(var i=t[a],o=0;o<i.length;++o){var s=i[o];if(s<n)i[o]=e[s];else{s-=n;for(var l=0;l<n;++l)s>=e[l]&&(s+=1);i[o]=s}}return t}(n(i,!0),r)}};var n=t(\"incremental-convex-hull\"),a=t(\"affine-hull\")},{\"affine-hull\":67,\"incremental-convex-hull\":433}],139:[function(t,e,r){e.exports={AFG:\"afghan\",ALA:\"\\\\b\\\\wland\",ALB:\"albania\",DZA:\"algeria\",ASM:\"^(?=.*americ).*samoa\",AND:\"andorra\",AGO:\"angola\",AIA:\"anguill?a\",ATA:\"antarctica\",ATG:\"antigua\",ARG:\"argentin\",ARM:\"armenia\",ABW:\"^(?!.*bonaire).*\\\\baruba\",AUS:\"australia\",AUT:\"^(?!.*hungary).*austria|\\\\baustri.*\\\\bemp\",AZE:\"azerbaijan\",BHS:\"bahamas\",BHR:\"bahrain\",BGD:\"bangladesh|^(?=.*east).*paki?stan\",BRB:\"barbados\",BLR:\"belarus|byelo\",BEL:\"^(?!.*luxem).*belgium\",BLZ:\"belize|^(?=.*british).*honduras\",BEN:\"benin|dahome\",BMU:\"bermuda\",BTN:\"bhutan\",BOL:\"bolivia\",BES:\"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\\\bbes.?islands\",BIH:\"herzegovina|bosnia\",BWA:\"botswana|bechuana\",BVT:\"bouvet\",BRA:\"brazil\",IOT:\"british.?indian.?ocean\",BRN:\"brunei\",BGR:\"bulgaria\",BFA:\"burkina|\\\\bfaso|upper.?volta\",BDI:\"burundi\",CPV:\"verde\",KHM:\"cambodia|kampuchea|khmer\",CMR:\"cameroon\",CAN:\"canada\",CYM:\"cayman\",CAF:\"\\\\bcentral.african.republic\",TCD:\"\\\\bchad\",CHL:\"\\\\bchile\",CHN:\"^(?!.*\\\\bmac)(?!.*\\\\bhong)(?!.*\\\\btai)(?!.*\\\\brep).*china|^(?=.*peo)(?=.*rep).*china\",CXR:\"christmas\",CCK:\"\\\\bcocos|keeling\",COL:\"colombia\",COM:\"comoro\",COG:\"^(?!.*\\\\bdem)(?!.*\\\\bd[\\\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\\\bcongo\",COK:\"\\\\bcook\",CRI:\"costa.?rica\",CIV:\"ivoire|ivory\",HRV:\"croatia\",CUB:\"\\\\bcuba\",CUW:\"^(?!.*bonaire).*\\\\bcura(c|\\xe7)ao\",CYP:\"cyprus\",CSK:\"czechoslovakia\",CZE:\"^(?=.*rep).*czech|czechia|bohemia\",COD:\"\\\\bdem.*congo|congo.*\\\\bdem|congo.*\\\\bd[\\\\.]?r|\\\\bd[\\\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc\",DNK:\"denmark\",DJI:\"djibouti\",DMA:\"dominica(?!n)\",DOM:\"dominican.rep\",ECU:\"ecuador\",EGY:\"egypt\",SLV:\"el.?salvador\",GNQ:\"guine.*eq|eq.*guine|^(?=.*span).*guinea\",ERI:\"eritrea\",EST:\"estonia\",ETH:\"ethiopia|abyssinia\",FLK:\"falkland|malvinas\",FRO:\"faroe|faeroe\",FJI:\"fiji\",FIN:\"finland\",FRA:\"^(?!.*\\\\bdep)(?!.*martinique).*france|french.?republic|\\\\bgaul\",GUF:\"^(?=.*french).*guiana\",PYF:\"french.?polynesia|tahiti\",ATF:\"french.?southern\",GAB:\"gabon\",GMB:\"gambia\",GEO:\"^(?!.*south).*georgia\",DDR:\"german.?democratic.?republic|democratic.?republic.*germany|east.germany\",DEU:\"^(?!.*east).*germany|^(?=.*\\\\bfed.*\\\\brep).*german\",GHA:\"ghana|gold.?coast\",GIB:\"gibraltar\",GRC:\"greece|hellenic|hellas\",GRL:\"greenland\",GRD:\"grenada\",GLP:\"guadeloupe\",GUM:\"\\\\bguam\",GTM:\"guatemala\",GGY:\"guernsey\",GIN:\"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea\",GNB:\"bissau|^(?=.*portu).*guinea\",GUY:\"guyana|british.?guiana\",HTI:\"haiti\",HMD:\"heard.*mcdonald\",VAT:\"holy.?see|vatican|papal.?st\",HND:\"^(?!.*brit).*honduras\",HKG:\"hong.?kong\",HUN:\"^(?!.*austr).*hungary\",ISL:\"iceland\",IND:\"india(?!.*ocea)\",IDN:\"indonesia\",IRN:\"\\\\biran|persia\",IRQ:\"\\\\biraq|mesopotamia\",IRL:\"(^ireland)|(^republic.*ireland)\",IMN:\"^(?=.*isle).*\\\\bman\",ISR:\"israel\",ITA:\"italy\",JAM:\"jamaica\",JPN:\"japan\",JEY:\"jersey\",JOR:\"jordan\",KAZ:\"kazak\",KEN:\"kenya|british.?east.?africa|east.?africa.?prot\",KIR:\"kiribati\",PRK:\"^(?=.*democrat|people|north|d.*p.*.r).*\\\\bkorea|dprk|korea.*(d.*p.*r)\",KWT:\"kuwait\",KGZ:\"kyrgyz|kirghiz\",LAO:\"\\\\blaos?\\\\b\",LVA:\"latvia\",LBN:\"lebanon\",LSO:\"lesotho|basuto\",LBR:\"liberia\",LBY:\"libya\",LIE:\"liechtenstein\",LTU:\"lithuania\",LUX:\"^(?!.*belg).*luxem\",MAC:\"maca(o|u)\",MDG:\"madagascar|malagasy\",MWI:\"malawi|nyasa\",MYS:\"malaysia\",MDV:\"maldive\",MLI:\"\\\\bmali\\\\b\",MLT:\"\\\\bmalta\",MHL:\"marshall\",MTQ:\"martinique\",MRT:\"mauritania\",MUS:\"mauritius\",MYT:\"\\\\bmayotte\",MEX:\"\\\\bmexic\",FSM:\"fed.*micronesia|micronesia.*fed\",MCO:\"monaco\",MNG:\"mongolia\",MNE:\"^(?!.*serbia).*montenegro\",MSR:\"montserrat\",MAR:\"morocco|\\\\bmaroc\",MOZ:\"mozambique\",MMR:\"myanmar|burma\",NAM:\"namibia\",NRU:\"nauru\",NPL:\"nepal\",NLD:\"^(?!.*\\\\bant)(?!.*\\\\bcarib).*netherlands\",ANT:\"^(?=.*\\\\bant).*(nether|dutch)\",NCL:\"new.?caledonia\",NZL:\"new.?zealand\",NIC:\"nicaragua\",NER:\"\\\\bniger(?!ia)\",NGA:\"nigeria\",NIU:\"niue\",NFK:\"norfolk\",MNP:\"mariana\",NOR:\"norway\",OMN:\"\\\\boman|trucial\",PAK:\"^(?!.*east).*paki?stan\",PLW:\"palau\",PSE:\"palestin|\\\\bgaza|west.?bank\",PAN:\"panama\",PNG:\"papua|new.?guinea\",PRY:\"paraguay\",PER:\"peru\",PHL:\"philippines\",PCN:\"pitcairn\",POL:\"poland\",PRT:\"portugal\",PRI:\"puerto.?rico\",QAT:\"qatar\",KOR:\"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\\\bkorea(?!.*d.*p.*r)\",MDA:\"moldov|b(a|e)ssarabia\",REU:\"r(e|\\xe9)union\",ROU:\"r(o|u|ou)mania\",RUS:\"\\\\brussia|soviet.?union|u\\\\.?s\\\\.?s\\\\.?r|socialist.?republics\",RWA:\"rwanda\",BLM:\"barth(e|\\xe9)lemy\",SHN:\"helena\",KNA:\"kitts|\\\\bnevis\",LCA:\"\\\\blucia\",MAF:\"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)\",SPM:\"miquelon\",VCT:\"vincent\",WSM:\"^(?!.*amer).*samoa\",SMR:\"san.?marino\",STP:\"\\\\bs(a|\\xe3)o.?tom(e|\\xe9)\",SAU:\"\\\\bsa\\\\w*.?arabia\",SEN:\"senegal\",SRB:\"^(?!.*monte).*serbia\",SYC:\"seychell\",SLE:\"sierra\",SGP:\"singapore\",SXM:\"^(?!.*martin)(?!.*saba).*maarten\",SVK:\"^(?!.*cze).*slovak\",SVN:\"slovenia\",SLB:\"solomon\",SOM:\"somali\",ZAF:\"south.africa|s\\\\\\\\..?africa\",SGS:\"south.?georgia|sandwich\",SSD:\"\\\\bs\\\\w*.?sudan\",ESP:\"spain\",LKA:\"sri.?lanka|ceylon\",SDN:\"^(?!.*\\\\bs(?!u)).*sudan\",SUR:\"surinam|dutch.?guiana\",SJM:\"svalbard\",SWZ:\"swaziland\",SWE:\"sweden\",CHE:\"switz|swiss\",SYR:\"syria\",TWN:\"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china\",TJK:\"tajik\",THA:\"thailand|\\\\bsiam\",MKD:\"macedonia|fyrom\",TLS:\"^(?=.*leste).*timor|^(?=.*east).*timor\",TGO:\"togo\",TKL:\"tokelau\",TON:\"tonga\",TTO:\"trinidad|tobago\",TUN:\"tunisia\",TUR:\"turkey\",TKM:\"turkmen\",TCA:\"turks\",TUV:\"tuvalu\",UGA:\"uganda\",UKR:\"ukrain\",ARE:\"emirates|^u\\\\.?a\\\\.?e\\\\.?$|united.?arab.?em\",GBR:\"united.?kingdom|britain|^u\\\\.?k\\\\.?$\",TZA:\"tanzania\",USA:\"united.?states\\\\b(?!.*islands)|\\\\bu\\\\.?s\\\\.?a\\\\.?\\\\b|^\\\\s*u\\\\.?s\\\\.?\\\\b(?!.*islands)\",UMI:\"minor.?outlying.?is\",URY:\"uruguay\",UZB:\"uzbek\",VUT:\"vanuatu|new.?hebrides\",VEN:\"venezuela\",VNM:\"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam\",VGB:\"^(?=.*\\\\bu\\\\.?\\\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin\",VIR:\"^(?=.*\\\\bu\\\\.?\\\\s?s).*virgin|^(?=.*states).*virgin\",WLF:\"futuna|wallis\",ESH:\"western.sahara\",YEM:\"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\\\bp\\\\.?d\\\\.?r).*yemen\",YMD:\"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\\\bp\\\\.?d\\\\.?r).*yemen\",YUG:\"yugoslavia\",ZMB:\"zambia|northern.?rhodesia\",EAZ:\"zanzibar\",ZWE:\"zimbabwe|^(?!.*northern).*rhodesia\"}},{}],140:[function(t,e,r){e.exports=[\"xx-small\",\"x-small\",\"small\",\"medium\",\"large\",\"x-large\",\"xx-large\",\"larger\",\"smaller\"]},{}],141:[function(t,e,r){e.exports=[\"normal\",\"condensed\",\"semi-condensed\",\"extra-condensed\",\"ultra-condensed\",\"expanded\",\"semi-expanded\",\"extra-expanded\",\"ultra-expanded\"]},{}],142:[function(t,e,r){e.exports=[\"normal\",\"italic\",\"oblique\"]},{}],143:[function(t,e,r){e.exports=[\"normal\",\"bold\",\"bolder\",\"lighter\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"]},{}],144:[function(t,e,r){\"use strict\";e.exports={parse:t(\"./parse\"),stringify:t(\"./stringify\")}},{\"./parse\":146,\"./stringify\":147}],145:[function(t,e,r){\"use strict\";var n=t(\"css-font-size-keywords\");e.exports={isSize:function(t){return/^[\\d\\.]/.test(t)||-1!==t.indexOf(\"/\")||-1!==n.indexOf(t)}}},{\"css-font-size-keywords\":140}],146:[function(t,e,r){\"use strict\";var n=t(\"unquote\"),a=t(\"css-global-keywords\"),i=t(\"css-system-font-keywords\"),o=t(\"css-font-weight-keywords\"),s=t(\"css-font-style-keywords\"),l=t(\"css-font-stretch-keywords\"),c=t(\"string-split-by\"),u=t(\"./lib/util\").isSize;e.exports=f;var h=f.cache={};function f(t){if(\"string\"!=typeof t)throw new Error(\"Font argument must be a string.\");if(h[t])return h[t];if(\"\"===t)throw new Error(\"Cannot parse an empty string.\");if(-1!==i.indexOf(t))return h[t]={system:t};for(var e,r={style:\"normal\",variant:\"normal\",weight:\"normal\",stretch:\"normal\",lineHeight:\"normal\",size:\"1rem\",family:[\"serif\"]},f=c(t,/\\s+/);e=f.shift();){if(-1!==a.indexOf(e))return[\"style\",\"variant\",\"weight\",\"stretch\"].forEach((function(t){r[t]=e})),h[t]=r;if(-1===s.indexOf(e))if(\"normal\"!==e&&\"small-caps\"!==e)if(-1===l.indexOf(e)){if(-1===o.indexOf(e)){if(u(e)){var d=c(e,\"/\");if(r.size=d[0],null!=d[1]?r.lineHeight=p(d[1]):\"/\"===f[0]&&(f.shift(),r.lineHeight=p(f.shift())),!f.length)throw new Error(\"Missing required font-family.\");return r.family=c(f.join(\" \"),/\\s*,\\s*/).map(n),h[t]=r}throw new Error(\"Unknown or unsupported font token: \"+e)}r.weight=e}else r.stretch=e;else r.variant=e;else r.style=e}throw new Error(\"Missing required font-size.\")}function p(t){var e=parseFloat(t);return e.toString()===t?e:t}},{\"./lib/util\":145,\"css-font-stretch-keywords\":141,\"css-font-style-keywords\":142,\"css-font-weight-keywords\":143,\"css-global-keywords\":148,\"css-system-font-keywords\":149,\"string-split-by\":540,unquote:570}],147:[function(t,e,r){\"use strict\";var n=t(\"pick-by-alias\"),a=t(\"./lib/util\").isSize,i=g(t(\"css-global-keywords\")),o=g(t(\"css-system-font-keywords\")),s=g(t(\"css-font-weight-keywords\")),l=g(t(\"css-font-style-keywords\")),c=g(t(\"css-font-stretch-keywords\")),u={normal:1,\"small-caps\":1},h={serif:1,\"sans-serif\":1,monospace:1,cursive:1,fantasy:1,\"system-ui\":1},f=\"1rem\",p=\"serif\";function d(t,e){if(t&&!e[t]&&!i[t])throw Error(\"Unknown keyword `\"+t+\"`\");return t}function g(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=1;return e}e.exports=function(t){if((t=n(t,{style:\"style fontstyle fontStyle font-style slope distinction\",variant:\"variant font-variant fontVariant fontvariant var capitalization\",weight:\"weight w font-weight fontWeight fontweight\",stretch:\"stretch font-stretch fontStretch fontstretch width\",size:\"size s font-size fontSize fontsize height em emSize\",lineHeight:\"lh line-height lineHeight lineheight leading\",family:\"font family fontFamily font-family fontfamily type typeface face\",system:\"system reserved default global\"})).system)return t.system&&d(t.system,o),t.system;if(d(t.style,l),d(t.variant,u),d(t.weight,s),d(t.stretch,c),null==t.size&&(t.size=f),\"number\"==typeof t.size&&(t.size+=\"px\"),!a)throw Error(\"Bad size value `\"+t.size+\"`\");t.family||(t.family=p),Array.isArray(t.family)&&(t.family.length||(t.family=[p]),t.family=t.family.map((function(t){return h[t]?t:'\"'+t+'\"'})).join(\", \"));var e=[];return e.push(t.style),t.variant!==t.style&&e.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&e.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&e.push(t.stretch),e.push(t.size+(null==t.lineHeight||\"normal\"===t.lineHeight||t.lineHeight+\"\"==\"1\"?\"\":\"/\"+t.lineHeight)),e.push(t.family),e.filter(Boolean).join(\" \")}},{\"./lib/util\":145,\"css-font-stretch-keywords\":141,\"css-font-style-keywords\":142,\"css-font-weight-keywords\":143,\"css-global-keywords\":148,\"css-system-font-keywords\":149,\"pick-by-alias\":485}],148:[function(t,e,r){e.exports=[\"inherit\",\"initial\",\"unset\"]},{}],149:[function(t,e,r){e.exports=[\"caption\",\"icon\",\"menu\",\"message-box\",\"small-caption\",\"status-bar\"]},{}],150:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a,i){var o=a-1,s=a*a,l=o*o,c=(1+2*a)*l,u=a*l,h=s*(3-2*a),f=s*o;if(t.length){i||(i=new Array(t.length));for(var p=t.length-1;p>=0;--p)i[p]=c*t[p]+u*e[p]+h*r[p]+f*n[p];return i}return c*t+u*e+h*r+f*n},e.exports.derivative=function(t,e,r,n,a,i){var o=6*a*a-6*a,s=3*a*a-4*a+1,l=-6*a*a+6*a,c=3*a*a-2*a;if(t.length){i||(i=new Array(t.length));for(var u=t.length-1;u>=0;--u)i[u]=o*t[u]+s*e[u]+l*r[u]+c*n[u];return i}return o*t+s*e+l*r[u]+c*n}},{}],151:[function(t,e,r){\"use strict\";var n=t(\"./lib/thunk.js\");function a(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName=\"\",this.pre=null,this.body=null,this.post=null,this.debug=!1}e.exports=function(t){var e=new a;e.pre=t.pre,e.body=t.body,e.post=t.post;var r=t.args.slice(0);e.argTypes=r;for(var i=0;i<r.length;++i){var o=r[i];if(\"array\"===o||\"object\"==typeof o&&o.blockIndices){if(e.argTypes[i]=\"array\",e.arrayArgs.push(i),e.arrayBlockIndices.push(o.blockIndices?o.blockIndices:0),e.shimArgs.push(\"array\"+i),i<e.pre.args.length&&e.pre.args[i].count>0)throw new Error(\"cwise: pre() block may not reference array args\");if(i<e.post.args.length&&e.post.args[i].count>0)throw new Error(\"cwise: post() block may not reference array args\")}else if(\"scalar\"===o)e.scalarArgs.push(i),e.shimArgs.push(\"scalar\"+i);else if(\"index\"===o){if(e.indexArgs.push(i),i<e.pre.args.length&&e.pre.args[i].count>0)throw new Error(\"cwise: pre() block may not reference array index\");if(i<e.body.args.length&&e.body.args[i].lvalue)throw new Error(\"cwise: body() block may not write to array index\");if(i<e.post.args.length&&e.post.args[i].count>0)throw new Error(\"cwise: post() block may not reference array index\")}else if(\"shape\"===o){if(e.shapeArgs.push(i),i<e.pre.args.length&&e.pre.args[i].lvalue)throw new Error(\"cwise: pre() block may not write to array shape\");if(i<e.body.args.length&&e.body.args[i].lvalue)throw new Error(\"cwise: body() block may not write to array shape\");if(i<e.post.args.length&&e.post.args[i].lvalue)throw new Error(\"cwise: post() block may not write to array shape\")}else{if(\"object\"!=typeof o||!o.offset)throw new Error(\"cwise: Unknown argument type \"+r[i]);e.argTypes[i]=\"offset\",e.offsetArgs.push({array:o.array,offset:o.offset}),e.offsetArgIndex.push(i)}}if(e.arrayArgs.length<=0)throw new Error(\"cwise: No array arguments specified\");if(e.pre.args.length>r.length)throw new Error(\"cwise: Too many arguments in pre() block\");if(e.body.args.length>r.length)throw new Error(\"cwise: Too many arguments in body() block\");if(e.post.args.length>r.length)throw new Error(\"cwise: Too many arguments in post() block\");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||\"cwise\",e.blockSize=t.blockSize||64,n(e)}},{\"./lib/thunk.js\":153}],152:[function(t,e,r){\"use strict\";var n=t(\"uniq\");function a(t,e,r){var n,a,i=t.length,o=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],c=[],u=0,h=0;for(n=0;n<i;++n)c.push([\"i\",n,\"=0\"].join(\"\"));for(a=0;a<o;++a)for(n=0;n<i;++n)h=u,u=t[n],0===n?c.push([\"d\",a,\"s\",n,\"=t\",a,\"p\",u].join(\"\")):c.push([\"d\",a,\"s\",n,\"=(t\",a,\"p\",u,\"-s\",h,\"*t\",a,\"p\",h,\")\"].join(\"\"));for(c.length>0&&l.push(\"var \"+c.join(\",\")),n=i-1;n>=0;--n)u=t[n],l.push([\"for(i\",n,\"=0;i\",n,\"<s\",u,\";++i\",n,\"){\"].join(\"\"));for(l.push(r),n=0;n<i;++n){for(h=u,u=t[n],a=0;a<o;++a)l.push([\"p\",a,\"+=d\",a,\"s\",n].join(\"\"));s&&(n>0&&l.push([\"index[\",h,\"]-=s\",h].join(\"\")),l.push([\"++index[\",u,\"]\"].join(\"\"))),l.push(\"}\")}return l.join(\"\\n\")}function i(t,e,r){for(var n=t.body,a=[],i=[],o=0;o<t.args.length;++o){var s=t.args[o];if(!(s.count<=0)){var l=new RegExp(s.name,\"g\"),c=\"\",u=e.arrayArgs.indexOf(o);switch(e.argTypes[o]){case\"offset\":var h=e.offsetArgIndex.indexOf(o);u=e.offsetArgs[h].array,c=\"+q\"+h;case\"array\":c=\"p\"+u+c;var f=\"l\"+o,p=\"a\"+u;if(0===e.arrayBlockIndices[u])1===s.count?\"generic\"===r[u]?s.lvalue?(a.push([\"var \",f,\"=\",p,\".get(\",c,\")\"].join(\"\")),n=n.replace(l,f),i.push([p,\".set(\",c,\",\",f,\")\"].join(\"\"))):n=n.replace(l,[p,\".get(\",c,\")\"].join(\"\")):n=n.replace(l,[p,\"[\",c,\"]\"].join(\"\")):\"generic\"===r[u]?(a.push([\"var \",f,\"=\",p,\".get(\",c,\")\"].join(\"\")),n=n.replace(l,f),s.lvalue&&i.push([p,\".set(\",c,\",\",f,\")\"].join(\"\"))):(a.push([\"var \",f,\"=\",p,\"[\",c,\"]\"].join(\"\")),n=n.replace(l,f),s.lvalue&&i.push([p,\"[\",c,\"]=\",f].join(\"\")));else{for(var d=[s.name],g=[c],m=0;m<Math.abs(e.arrayBlockIndices[u]);m++)d.push(\"\\\\s*\\\\[([^\\\\]]+)\\\\]\"),g.push(\"$\"+(m+1)+\"*t\"+u+\"b\"+m);if(l=new RegExp(d.join(\"\"),\"g\"),c=g.join(\"+\"),\"generic\"===r[u])throw new Error(\"cwise: Generic arrays not supported in combination with blocks!\");n=n.replace(l,[p,\"[\",c,\"]\"].join(\"\"))}break;case\"scalar\":n=n.replace(l,\"Y\"+e.scalarArgs.indexOf(o));break;case\"index\":n=n.replace(l,\"index\");break;case\"shape\":n=n.replace(l,\"shape\")}}}return[a.join(\"\\n\"),n,i.join(\"\\n\")].join(\"\\n\").trim()}function o(t){for(var e=new Array(t.length),r=!0,n=0;n<t.length;++n){var a=t[n],i=a.match(/\\d+/);i=i?i[0]:\"\",0===a.charAt(0)?e[n]=\"u\"+a.charAt(1)+i:e[n]=a.charAt(0)+i,n>0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join(\"\")}e.exports=function(t,e){for(var r=e[1].length-Math.abs(t.arrayBlockIndices[0])|0,s=new Array(t.arrayArgs.length),l=new Array(t.arrayArgs.length),c=0;c<t.arrayArgs.length;++c)l[c]=e[2*c],s[c]=e[2*c+1];var u=[],h=[],f=[],p=[],d=[];for(c=0;c<t.arrayArgs.length;++c){t.arrayBlockIndices[c]<0?(f.push(0),p.push(r),u.push(r),h.push(r+t.arrayBlockIndices[c])):(f.push(t.arrayBlockIndices[c]),p.push(t.arrayBlockIndices[c]+r),u.push(0),h.push(t.arrayBlockIndices[c]));for(var g=[],m=0;m<s[c].length;m++)f[c]<=s[c][m]&&s[c][m]<p[c]&&g.push(s[c][m]-f[c]);d.push(g)}var v=[\"SS\"],y=[\"'use strict'\"],x=[];for(m=0;m<r;++m)x.push([\"s\",m,\"=SS[\",m,\"]\"].join(\"\"));for(c=0;c<t.arrayArgs.length;++c){v.push(\"a\"+c),v.push(\"t\"+c),v.push(\"p\"+c);for(m=0;m<r;++m)x.push([\"t\",c,\"p\",m,\"=t\",c,\"[\",f[c]+m,\"]\"].join(\"\"));for(m=0;m<Math.abs(t.arrayBlockIndices[c]);++m)x.push([\"t\",c,\"b\",m,\"=t\",c,\"[\",u[c]+m,\"]\"].join(\"\"))}for(c=0;c<t.scalarArgs.length;++c)v.push(\"Y\"+c);if(t.shapeArgs.length>0&&x.push(\"shape=SS.slice(0)\"),t.indexArgs.length>0){var b=new Array(r);for(c=0;c<r;++c)b[c]=\"0\";x.push([\"index=[\",b.join(\",\"),\"]\"].join(\"\"))}for(c=0;c<t.offsetArgs.length;++c){var _=t.offsetArgs[c],w=[];for(m=0;m<_.offset.length;++m)0!==_.offset[m]&&(1===_.offset[m]?w.push([\"t\",_.array,\"p\",m].join(\"\")):w.push([_.offset[m],\"*t\",_.array,\"p\",m].join(\"\")));0===w.length?x.push(\"q\"+c+\"=0\"):x.push([\"q\",c,\"=\",w.join(\"+\")].join(\"\"))}var T=n([].concat(t.pre.thisVars).concat(t.body.thisVars).concat(t.post.thisVars));for((x=x.concat(T)).length>0&&y.push(\"var \"+x.join(\",\")),c=0;c<t.arrayArgs.length;++c)y.push(\"p\"+c+\"|=0\");t.pre.body.length>3&&y.push(i(t.pre,t,l));var k=i(t.body,t,l),M=function(t){for(var e=0,r=t[0].length;e<r;){for(var n=1;n<t.length;++n)if(t[n][e]!==t[0][e])return e;++e}return e}(d);M<r?y.push(function(t,e,r,n){for(var i=e.length,o=r.arrayArgs.length,s=r.blockSize,l=r.indexArgs.length>0,c=[],u=0;u<o;++u)c.push([\"var offset\",u,\"=p\",u].join(\"\"));for(u=t;u<i;++u)c.push([\"for(var j\"+u+\"=SS[\",e[u],\"]|0;j\",u,\">0;){\"].join(\"\")),c.push([\"if(j\",u,\"<\",s,\"){\"].join(\"\")),c.push([\"s\",e[u],\"=j\",u].join(\"\")),c.push([\"j\",u,\"=0\"].join(\"\")),c.push([\"}else{s\",e[u],\"=\",s].join(\"\")),c.push([\"j\",u,\"-=\",s,\"}\"].join(\"\")),l&&c.push([\"index[\",e[u],\"]=j\",u].join(\"\"));for(u=0;u<o;++u){for(var h=[\"offset\"+u],f=t;f<i;++f)h.push([\"j\",f,\"*t\",u,\"p\",e[f]].join(\"\"));c.push([\"p\",u,\"=(\",h.join(\"+\"),\")\"].join(\"\"))}for(c.push(a(e,r,n)),u=t;u<i;++u)c.push(\"}\");return c.join(\"\\n\")}(M,d[0],t,k)):y.push(a(d[0],t,k)),t.post.body.length>3&&y.push(i(t.post,t,l)),t.debug&&console.log(\"-----Generated cwise routine for \",e,\":\\n\"+y.join(\"\\n\")+\"\\n----------\");var A=[t.funcName||\"unnamed\",\"_cwise_loop_\",s[0].join(\"s\"),\"m\",M,o(l)].join(\"\");return new Function([\"function \",A,\"(\",v.join(\",\"),\"){\",y.join(\"\\n\"),\"} return \",A].join(\"\"))()}},{uniq:569}],153:[function(t,e,r){\"use strict\";var n=t(\"./compile.js\");e.exports=function(t){var e=[\"'use strict'\",\"var CACHED={}\"],r=[],a=t.funcName+\"_cwise_thunk\";e.push([\"return function \",a,\"(\",t.shimArgs.join(\",\"),\"){\"].join(\"\"));for(var i=[],o=[],s=[[\"array\",t.arrayArgs[0],\".shape.slice(\",Math.max(0,t.arrayBlockIndices[0]),t.arrayBlockIndices[0]<0?\",\"+t.arrayBlockIndices[0]+\")\":\")\"].join(\"\")],l=[],c=[],u=0;u<t.arrayArgs.length;++u){var h=t.arrayArgs[u];r.push([\"t\",h,\"=array\",h,\".dtype,\",\"r\",h,\"=array\",h,\".order\"].join(\"\")),i.push(\"t\"+h),i.push(\"r\"+h),o.push(\"t\"+h),o.push(\"r\"+h+\".join()\"),s.push(\"array\"+h+\".data\"),s.push(\"array\"+h+\".stride\"),s.push(\"array\"+h+\".offset|0\"),u>0&&(l.push(\"array\"+t.arrayArgs[0]+\".shape.length===array\"+h+\".shape.length+\"+(Math.abs(t.arrayBlockIndices[0])-Math.abs(t.arrayBlockIndices[u]))),c.push(\"array\"+t.arrayArgs[0]+\".shape[shapeIndex+\"+Math.max(0,t.arrayBlockIndices[0])+\"]===array\"+h+\".shape[shapeIndex+\"+Math.max(0,t.arrayBlockIndices[u])+\"]\"))}for(t.arrayArgs.length>1&&(e.push(\"if (!(\"+l.join(\" && \")+\")) throw new Error('cwise: Arrays do not all have the same dimensionality!')\"),e.push(\"for(var shapeIndex=array\"+t.arrayArgs[0]+\".shape.length-\"+Math.abs(t.arrayBlockIndices[0])+\"; shapeIndex--\\x3e0;) {\"),e.push(\"if (!(\"+c.join(\" && \")+\")) throw new Error('cwise: Arrays do not all have the same shape!')\"),e.push(\"}\")),u=0;u<t.scalarArgs.length;++u)s.push(\"scalar\"+t.scalarArgs[u]);return r.push([\"type=[\",o.join(\",\"),\"].join()\"].join(\"\")),r.push(\"proc=CACHED[type]\"),e.push(\"var \"+r.join(\",\")),e.push([\"if(!proc){\",\"CACHED[type]=proc=compile([\",i.join(\",\"),\"])}\",\"return proc(\",s.join(\",\"),\")}\"].join(\"\")),t.debug&&console.log(\"-----Generated thunk:\\n\"+e.join(\"\\n\")+\"\\n----------\"),new Function(\"compile\",e.join(\"\\n\"))(n.bind(void 0,t))}},{\"./compile.js\":152}],154:[function(t,e,r){\"use strict\";var n,a=t(\"type/value/is\"),i=t(\"type/value/ensure\"),o=t(\"type/plain-function/ensure\"),s=t(\"es5-ext/object/copy\"),l=t(\"es5-ext/object/normalize-options\"),c=t(\"es5-ext/object/map\"),u=Function.prototype.bind,h=Object.defineProperty,f=Object.prototype.hasOwnProperty;n=function(t,e,r){var n,a=i(e)&&o(e.value);return delete(n=s(e)).writable,delete n.value,n.get=function(){return!r.overwriteDefinition&&f.call(this,t)?a:(e.value=u.call(a,r.resolveContext?r.resolveContext(this):this),h(this,t,e),this[t])},n},e.exports=function(t){var e=l(arguments[1]);return a(e.resolveContext)&&o(e.resolveContext),c(t,(function(t,r){return n(r,t,e)}))}},{\"es5-ext/object/copy\":196,\"es5-ext/object/map\":204,\"es5-ext/object/normalize-options\":205,\"type/plain-function/ensure\":561,\"type/value/ensure\":565,\"type/value/is\":566}],155:[function(t,e,r){\"use strict\";var n=t(\"type/value/is\"),a=t(\"type/plain-function/is\"),i=t(\"es5-ext/object/assign\"),o=t(\"es5-ext/object/normalize-options\"),s=t(\"es5-ext/string/#/contains\");(e.exports=function(t,e){var r,a,l,c,u;return arguments.length<2||\"string\"!=typeof t?(c=e,e=t,t=null):c=arguments[2],n(t)?(r=s.call(t,\"c\"),a=s.call(t,\"e\"),l=s.call(t,\"w\")):(r=l=!0,a=!1),u={value:e,configurable:r,enumerable:a,writable:l},c?i(o(c),u):u}).gs=function(t,e,r){var l,c,u,h;return\"string\"!=typeof t?(u=r,r=e,e=t,t=null):u=arguments[3],n(e)?a(e)?n(r)?a(r)||(u=r,r=void 0):r=void 0:(u=e,e=r=void 0):e=void 0,n(t)?(l=s.call(t,\"c\"),c=s.call(t,\"e\")):(l=!0,c=!1),h={get:e,set:r,configurable:l,enumerable:c},u?i(o(u),h):h}},{\"es5-ext/object/assign\":193,\"es5-ext/object/normalize-options\":205,\"es5-ext/string/#/contains\":212,\"type/plain-function/is\":562,\"type/value/is\":566}],156:[function(t,e,r){!function(t,n){n(\"object\"==typeof r&&\"undefined\"!=typeof e?r:t.d3=t.d3||{})}(this,(function(t){\"use strict\";function e(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function r(t){var r;return 1===t.length&&(r=t,t=function(t,n){return e(r(t),n)}),{left:function(e,r,n,a){for(null==n&&(n=0),null==a&&(a=e.length);n<a;){var i=n+a>>>1;t(e[i],r)<0?n=i+1:a=i}return n},right:function(e,r,n,a){for(null==n&&(n=0),null==a&&(a=e.length);n<a;){var i=n+a>>>1;t(e[i],r)>0?a=i:n=i+1}return n}}}var n=r(e),a=n.right,i=n.left;function o(t,e){return[t,e]}function s(t){return null===t?NaN:+t}function l(t,e){var r,n,a=t.length,i=0,o=-1,l=0,c=0;if(null==e)for(;++o<a;)isNaN(r=s(t[o]))||(c+=(n=r-l)*(r-(l+=n/++i)));else for(;++o<a;)isNaN(r=s(e(t[o],o,t)))||(c+=(n=r-l)*(r-(l+=n/++i)));if(i>1)return c/(i-1)}function c(t,e){var r=l(t,e);return r?Math.sqrt(r):r}function u(t,e){var r,n,a,i=t.length,o=-1;if(null==e){for(;++o<i;)if(null!=(r=t[o])&&r>=r)for(n=a=r;++o<i;)null!=(r=t[o])&&(n>r&&(n=r),a<r&&(a=r))}else for(;++o<i;)if(null!=(r=e(t[o],o,t))&&r>=r)for(n=a=r;++o<i;)null!=(r=e(t[o],o,t))&&(n>r&&(n=r),a<r&&(a=r));return[n,a]}var h=Array.prototype,f=h.slice,p=h.map;function d(t){return function(){return t}}function g(t){return t}function m(t,e,r){t=+t,e=+e,r=(a=arguments.length)<2?(e=t,t=0,1):a<3?1:+r;for(var n=-1,a=0|Math.max(0,Math.ceil((e-t)/r)),i=new Array(a);++n<a;)i[n]=t+n*r;return i}var v=Math.sqrt(50),y=Math.sqrt(10),x=Math.sqrt(2);function b(t,e,r){var n=(e-t)/Math.max(0,r),a=Math.floor(Math.log(n)/Math.LN10),i=n/Math.pow(10,a);return a>=0?(i>=v?10:i>=y?5:i>=x?2:1)*Math.pow(10,a):-Math.pow(10,-a)/(i>=v?10:i>=y?5:i>=x?2:1)}function _(t,e,r){var n=Math.abs(e-t)/Math.max(0,r),a=Math.pow(10,Math.floor(Math.log(n)/Math.LN10)),i=n/a;return i>=v?a*=10:i>=y?a*=5:i>=x&&(a*=2),e<t?-a:a}function w(t){return Math.ceil(Math.log(t.length)/Math.LN2)+1}function T(t,e,r){if(null==r&&(r=s),n=t.length){if((e=+e)<=0||n<2)return+r(t[0],0,t);if(e>=1)return+r(t[n-1],n-1,t);var n,a=(n-1)*e,i=Math.floor(a),o=+r(t[i],i,t);return o+(+r(t[i+1],i+1,t)-o)*(a-i)}}function k(t,e){var r,n,a=t.length,i=-1;if(null==e){for(;++i<a;)if(null!=(r=t[i])&&r>=r)for(n=r;++i<a;)null!=(r=t[i])&&n>r&&(n=r)}else for(;++i<a;)if(null!=(r=e(t[i],i,t))&&r>=r)for(n=r;++i<a;)null!=(r=e(t[i],i,t))&&n>r&&(n=r);return n}function M(t){if(!(a=t.length))return[];for(var e=-1,r=k(t,A),n=new Array(r);++e<r;)for(var a,i=-1,o=n[e]=new Array(a);++i<a;)o[i]=t[i][e];return n}function A(t){return t.length}t.bisect=a,t.bisectRight=a,t.bisectLeft=i,t.ascending=e,t.bisector=r,t.cross=function(t,e,r){var n,a,i,s,l=t.length,c=e.length,u=new Array(l*c);for(null==r&&(r=o),n=i=0;n<l;++n)for(s=t[n],a=0;a<c;++a,++i)u[i]=r(s,e[a]);return u},t.descending=function(t,e){return e<t?-1:e>t?1:e>=t?0:NaN},t.deviation=c,t.extent=u,t.histogram=function(){var t=g,e=u,r=w;function n(n){var i,o,s=n.length,l=new Array(s);for(i=0;i<s;++i)l[i]=t(n[i],i,n);var c=e(l),u=c[0],h=c[1],f=r(l,u,h);Array.isArray(f)||(f=_(u,h,f),f=m(Math.ceil(u/f)*f,h,f));for(var p=f.length;f[0]<=u;)f.shift(),--p;for(;f[p-1]>h;)f.pop(),--p;var d,g=new Array(p+1);for(i=0;i<=p;++i)(d=g[i]=[]).x0=i>0?f[i-1]:u,d.x1=i<p?f[i]:h;for(i=0;i<s;++i)u<=(o=l[i])&&o<=h&&g[a(f,o,0,p)].push(n[i]);return g}return n.value=function(e){return arguments.length?(t=\"function\"==typeof e?e:d(e),n):t},n.domain=function(t){return arguments.length?(e=\"function\"==typeof t?t:d([t[0],t[1]]),n):e},n.thresholds=function(t){return arguments.length?(r=\"function\"==typeof t?t:Array.isArray(t)?d(f.call(t)):d(t),n):r},n},t.thresholdFreedmanDiaconis=function(t,r,n){return t=p.call(t,s).sort(e),Math.ceil((n-r)/(2*(T(t,.75)-T(t,.25))*Math.pow(t.length,-1/3)))},t.thresholdScott=function(t,e,r){return Math.ceil((r-e)/(3.5*c(t)*Math.pow(t.length,-1/3)))},t.thresholdSturges=w,t.max=function(t,e){var r,n,a=t.length,i=-1;if(null==e){for(;++i<a;)if(null!=(r=t[i])&&r>=r)for(n=r;++i<a;)null!=(r=t[i])&&r>n&&(n=r)}else for(;++i<a;)if(null!=(r=e(t[i],i,t))&&r>=r)for(n=r;++i<a;)null!=(r=e(t[i],i,t))&&r>n&&(n=r);return n},t.mean=function(t,e){var r,n=t.length,a=n,i=-1,o=0;if(null==e)for(;++i<n;)isNaN(r=s(t[i]))?--a:o+=r;else for(;++i<n;)isNaN(r=s(e(t[i],i,t)))?--a:o+=r;if(a)return o/a},t.median=function(t,r){var n,a=t.length,i=-1,o=[];if(null==r)for(;++i<a;)isNaN(n=s(t[i]))||o.push(n);else for(;++i<a;)isNaN(n=s(r(t[i],i,t)))||o.push(n);return T(o.sort(e),.5)},t.merge=function(t){for(var e,r,n,a=t.length,i=-1,o=0;++i<a;)o+=t[i].length;for(r=new Array(o);--a>=0;)for(e=(n=t[a]).length;--e>=0;)r[--o]=n[e];return r},t.min=k,t.pairs=function(t,e){null==e&&(e=o);for(var r=0,n=t.length-1,a=t[0],i=new Array(n<0?0:n);r<n;)i[r]=e(a,a=t[++r]);return i},t.permute=function(t,e){for(var r=e.length,n=new Array(r);r--;)n[r]=t[e[r]];return n},t.quantile=T,t.range=m,t.scan=function(t,r){if(n=t.length){var n,a,i=0,o=0,s=t[o];for(null==r&&(r=e);++i<n;)(r(a=t[i],s)<0||0!==r(s,s))&&(s=a,o=i);return 0===r(s,s)?o:void 0}},t.shuffle=function(t,e,r){for(var n,a,i=(null==r?t.length:r)-(e=null==e?0:+e);i;)a=Math.random()*i--|0,n=t[i+e],t[i+e]=t[a+e],t[a+e]=n;return t},t.sum=function(t,e){var r,n=t.length,a=-1,i=0;if(null==e)for(;++a<n;)(r=+t[a])&&(i+=r);else for(;++a<n;)(r=+e(t[a],a,t))&&(i+=r);return i},t.ticks=function(t,e,r){var n,a,i,o,s=-1;if(r=+r,(t=+t)===(e=+e)&&r>0)return[t];if((n=e<t)&&(a=t,t=e,e=a),0===(o=b(t,e,r))||!isFinite(o))return[];if(o>0)for(t=Math.ceil(t/o),e=Math.floor(e/o),i=new Array(a=Math.ceil(e-t+1));++s<a;)i[s]=(t+s)*o;else for(t=Math.floor(t*o),e=Math.ceil(e*o),i=new Array(a=Math.ceil(t-e+1));++s<a;)i[s]=(t-s)/o;return n&&i.reverse(),i},t.tickIncrement=b,t.tickStep=_,t.transpose=M,t.variance=l,t.zip=function(){return M(arguments)},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],157:[function(t,e,r){!function(t,n){n(\"object\"==typeof r&&\"undefined\"!=typeof e?r:t.d3=t.d3||{})}(this,(function(t){\"use strict\";function e(){}function r(t,r){var n=new e;if(t instanceof e)t.each((function(t,e){n.set(e,t)}));else if(Array.isArray(t)){var a,i=-1,o=t.length;if(null==r)for(;++i<o;)n.set(i,t[i]);else for(;++i<o;)n.set(r(a=t[i],i,t),a)}else if(t)for(var s in t)n.set(s,t[s]);return n}function n(){return{}}function a(t,e,r){t[e]=r}function i(){return r()}function o(t,e,r){t.set(e,r)}function s(){}e.prototype=r.prototype={constructor:e,has:function(t){return\"$\"+t in this},get:function(t){return this[\"$\"+t]},set:function(t,e){return this[\"$\"+t]=e,this},remove:function(t){var e=\"$\"+t;return e in this&&delete this[e]},clear:function(){for(var t in this)\"$\"===t[0]&&delete this[t]},keys:function(){var t=[];for(var e in this)\"$\"===e[0]&&t.push(e.slice(1));return t},values:function(){var t=[];for(var e in this)\"$\"===e[0]&&t.push(this[e]);return t},entries:function(){var t=[];for(var e in this)\"$\"===e[0]&&t.push({key:e.slice(1),value:this[e]});return t},size:function(){var t=0;for(var e in this)\"$\"===e[0]&&++t;return t},empty:function(){for(var t in this)if(\"$\"===t[0])return!1;return!0},each:function(t){for(var e in this)\"$\"===e[0]&&t(this[e],e.slice(1),this)}};var l=r.prototype;function c(t,e){var r=new s;if(t instanceof s)t.each((function(t){r.add(t)}));else if(t){var n=-1,a=t.length;if(null==e)for(;++n<a;)r.add(t[n]);else for(;++n<a;)r.add(e(t[n],n,t))}return r}s.prototype=c.prototype={constructor:s,has:l.has,add:function(t){return this[\"$\"+(t+=\"\")]=t,this},remove:l.remove,clear:l.clear,values:l.keys,size:l.size,empty:l.empty,each:l.each},t.nest=function(){var t,e,s,l=[],c=[];function u(n,a,i,o){if(a>=l.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var s,c,h,f=-1,p=n.length,d=l[a++],g=r(),m=i();++f<p;)(h=g.get(s=d(c=n[f])+\"\"))?h.push(c):g.set(s,[c]);return g.each((function(t,e){o(m,e,u(t,a,i,o))})),m}return s={object:function(t){return u(t,0,n,a)},map:function(t){return u(t,0,i,o)},entries:function(t){return function t(r,n){if(++n>l.length)return r;var a,i=c[n-1];return null!=e&&n>=l.length?a=r.entries():(a=[],r.each((function(e,r){a.push({key:r,values:t(e,n)})}))),null!=i?a.sort((function(t,e){return i(t.key,e.key)})):a}(u(t,0,i,o),0)},key:function(t){return l.push(t),s},sortKeys:function(t){return c[l.length-1]=t,s},sortValues:function(e){return t=e,s},rollup:function(t){return e=t,s}}},t.set=c,t.map=r,t.keys=function(t){var e=[];for(var r in t)e.push(r);return e},t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.entries=function(t){var e=[];for(var r in t)e.push({key:r,value:t[r]});return e},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],158:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";function e(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function r(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function n(){}var a=\"\\\\s*([+-]?\\\\d+)\\\\s*\",i=\"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",o=\"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",s=/^#([0-9a-f]{3,8})$/,l=new RegExp(\"^rgb\\\\(\"+[a,a,a]+\"\\\\)$\"),c=new RegExp(\"^rgb\\\\(\"+[o,o,o]+\"\\\\)$\"),u=new RegExp(\"^rgba\\\\(\"+[a,a,a,i]+\"\\\\)$\"),h=new RegExp(\"^rgba\\\\(\"+[o,o,o,i]+\"\\\\)$\"),f=new RegExp(\"^hsl\\\\(\"+[i,o,o]+\"\\\\)$\"),p=new RegExp(\"^hsla\\\\(\"+[i,o,o,i]+\"\\\\)$\"),d={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function g(){return this.rgb().formatHex()}function m(){return this.rgb().formatRgb()}function v(t){var e,r;return t=(t+\"\").trim().toLowerCase(),(e=s.exec(t))?(r=e[1].length,e=parseInt(e[1],16),6===r?y(e):3===r?new w(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?x(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?x(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=l.exec(t))?new w(e[1],e[2],e[3],1):(e=c.exec(t))?new w(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=u.exec(t))?x(e[1],e[2],e[3],e[4]):(e=h.exec(t))?x(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=f.exec(t))?A(e[1],e[2]/100,e[3]/100,1):(e=p.exec(t))?A(e[1],e[2]/100,e[3]/100,e[4]):d.hasOwnProperty(t)?y(d[t]):\"transparent\"===t?new w(NaN,NaN,NaN,0):null}function y(t){return new w(t>>16&255,t>>8&255,255&t,1)}function x(t,e,r,n){return n<=0&&(t=e=r=NaN),new w(t,e,r,n)}function b(t){return t instanceof n||(t=v(t)),t?new w((t=t.rgb()).r,t.g,t.b,t.opacity):new w}function _(t,e,r,n){return 1===arguments.length?b(t):new w(t,e,r,null==n?1:n)}function w(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function T(){return\"#\"+M(this.r)+M(this.g)+M(this.b)}function k(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?\"rgb(\":\"rgba(\")+Math.max(0,Math.min(255,Math.round(this.r)||0))+\", \"+Math.max(0,Math.min(255,Math.round(this.g)||0))+\", \"+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?\")\":\", \"+t+\")\")}function M(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?\"0\":\"\")+t.toString(16)}function A(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new C(t,e,r,n)}function S(t){if(t instanceof C)return new C(t.h,t.s,t.l,t.opacity);if(t instanceof n||(t=v(t)),!t)return new C;if(t instanceof C)return t;var e=(t=t.rgb()).r/255,r=t.g/255,a=t.b/255,i=Math.min(e,r,a),o=Math.max(e,r,a),s=NaN,l=o-i,c=(o+i)/2;return l?(s=e===o?(r-a)/l+6*(r<a):r===o?(a-e)/l+2:(e-r)/l+4,l/=c<.5?o+i:2-o-i,s*=60):l=c>0&&c<1?0:s,new C(s,l,c,t.opacity)}function E(t,e,r,n){return 1===arguments.length?S(t):new C(t,e,r,null==n?1:n)}function C(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function L(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}e(n,v,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:g,formatHex:g,formatHsl:function(){return S(this).formatHsl()},formatRgb:m,toString:m}),e(w,_,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new w(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new w(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:T,formatHex:T,formatRgb:k,toString:k})),e(C,E,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new C(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new C(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,a=2*r-n;return new w(L(t>=240?t-240:t+120,a,n),L(t,a,n),L(t<120?t+240:t-120,a,n),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?\"hsl(\":\"hsla(\")+(this.h||0)+\", \"+100*(this.s||0)+\"%, \"+100*(this.l||0)+\"%\"+(1===t?\")\":\", \"+t+\")\")}}));var P=Math.PI/180,I=180/Math.PI,z=6/29,O=3*z*z;function D(t){if(t instanceof F)return new F(t.l,t.a,t.b,t.opacity);if(t instanceof H)return G(t);t instanceof w||(t=b(t));var e,r,n=U(t.r),a=U(t.g),i=U(t.b),o=B((.2225045*n+.7168786*a+.0606169*i)/1);return n===a&&a===i?e=r=o:(e=B((.4360747*n+.3850649*a+.1430804*i)/.96422),r=B((.0139322*n+.0971045*a+.7141733*i)/.82521)),new F(116*o-16,500*(e-o),200*(o-r),t.opacity)}function R(t,e,r,n){return 1===arguments.length?D(t):new F(t,e,r,null==n?1:n)}function F(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function B(t){return t>.008856451679035631?Math.pow(t,1/3):t/O+4/29}function N(t){return t>z?t*t*t:O*(t-4/29)}function j(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function U(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function V(t){if(t instanceof H)return new H(t.h,t.c,t.l,t.opacity);if(t instanceof F||(t=D(t)),0===t.a&&0===t.b)return new H(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*I;return new H(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function q(t,e,r,n){return 1===arguments.length?V(t):new H(t,e,r,null==n?1:n)}function H(t,e,r,n){this.h=+t,this.c=+e,this.l=+r,this.opacity=+n}function G(t){if(isNaN(t.h))return new F(t.l,0,0,t.opacity);var e=t.h*P;return new F(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}e(F,R,r(n,{brighter:function(t){return new F(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new F(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return new w(j(3.1338561*(e=.96422*N(e))-1.6168667*(t=1*N(t))-.4906146*(r=.82521*N(r))),j(-.9787684*e+1.9161415*t+.033454*r),j(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}})),e(H,q,r(n,{brighter:function(t){return new H(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker:function(t){return new H(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return G(this).rgb()}}));var Y=-.14861,W=1.78277,Z=-.29227,X=-.90649,J=1.97294,K=J*X,Q=J*W,$=W*Z-X*Y;function tt(t){if(t instanceof rt)return new rt(t.h,t.s,t.l,t.opacity);t instanceof w||(t=b(t));var e=t.r/255,r=t.g/255,n=t.b/255,a=($*n+K*e-Q*r)/($+K-Q),i=n-a,o=(J*(r-a)-Z*i)/X,s=Math.sqrt(o*o+i*i)/(J*a*(1-a)),l=s?Math.atan2(o,i)*I-120:NaN;return new rt(l<0?l+360:l,s,a,t.opacity)}function et(t,e,r,n){return 1===arguments.length?tt(t):new rt(t,e,r,null==n?1:n)}function rt(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}e(rt,et,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new rt(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new rt(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*P,e=+this.l,r=isNaN(this.s)?0:this.s*e*(1-e),n=Math.cos(t),a=Math.sin(t);return new w(255*(e+r*(Y*n+W*a)),255*(e+r*(Z*n+X*a)),255*(e+r*(J*n)),this.opacity)}})),t.color=v,t.cubehelix=et,t.gray=function(t,e){return new F(t,0,0,null==e?1:e)},t.hcl=q,t.hsl=E,t.lab=R,t.lch=function(t,e,r,n){return 1===arguments.length?V(t):new H(r,e,t,null==n?1:n)},t.rgb=_,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],159:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";var e={value:function(){}};function r(){for(var t,e=0,r=arguments.length,a={};e<r;++e){if(!(t=arguments[e]+\"\")||t in a||/[\\s.]/.test(t))throw new Error(\"illegal type: \"+t);a[t]=[]}return new n(a)}function n(t){this._=t}function a(t,e){return t.trim().split(/^|\\s+/).map((function(t){var r=\"\",n=t.indexOf(\".\");if(n>=0&&(r=t.slice(n+1),t=t.slice(0,n)),t&&!e.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);return{type:t,name:r}}))}function i(t,e){for(var r,n=0,a=t.length;n<a;++n)if((r=t[n]).name===e)return r.value}function o(t,r,n){for(var a=0,i=t.length;a<i;++a)if(t[a].name===r){t[a]=e,t=t.slice(0,a).concat(t.slice(a+1));break}return null!=n&&t.push({name:r,value:n}),t}n.prototype=r.prototype={constructor:n,on:function(t,e){var r,n=this._,s=a(t+\"\",n),l=-1,c=s.length;if(!(arguments.length<2)){if(null!=e&&\"function\"!=typeof e)throw new Error(\"invalid callback: \"+e);for(;++l<c;)if(r=(t=s[l]).type)n[r]=o(n[r],t.name,e);else if(null==e)for(r in n)n[r]=o(n[r],t.name,null);return this}for(;++l<c;)if((r=(t=s[l]).type)&&(r=i(n[r],t.name)))return r},copy:function(){var t={},e=this._;for(var r in e)t[r]=e[r].slice();return new n(t)},call:function(t,e){if((r=arguments.length-2)>0)for(var r,n,a=new Array(r),i=0;i<r;++i)a[i]=arguments[i+2];if(!this._.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);for(i=0,r=(n=this._[t]).length;i<r;++i)n[i].value.apply(e,a)},apply:function(t,e,r){if(!this._.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);for(var n=this._[t],a=0,i=n.length;a<i;++a)n[a].value.apply(e,r)}},t.dispatch=r,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],160:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-quadtree\"),t(\"d3-collection\"),t(\"d3-dispatch\"),t(\"d3-timer\")):a(n.d3=n.d3||{},n.d3,n.d3,n.d3,n.d3)}(this,(function(t,e,r,n,a){\"use strict\";function i(t){return function(){return t}}function o(){return 1e-6*(Math.random()-.5)}function s(t){return t.x+t.vx}function l(t){return t.y+t.vy}function c(t){return t.index}function u(t,e){var r=t.get(e);if(!r)throw new Error(\"missing: \"+e);return r}function h(t){return t.x}function f(t){return t.y}var p=Math.PI*(3-Math.sqrt(5));t.forceCenter=function(t,e){var r;function n(){var n,a,i=r.length,o=0,s=0;for(n=0;n<i;++n)o+=(a=r[n]).x,s+=a.y;for(o=o/i-t,s=s/i-e,n=0;n<i;++n)(a=r[n]).x-=o,a.y-=s}return null==t&&(t=0),null==e&&(e=0),n.initialize=function(t){r=t},n.x=function(e){return arguments.length?(t=+e,n):t},n.y=function(t){return arguments.length?(e=+t,n):e},n},t.forceCollide=function(t){var r,n,a=1,c=1;function u(){for(var t,i,u,f,p,d,g,m=r.length,v=0;v<c;++v)for(i=e.quadtree(r,s,l).visitAfter(h),t=0;t<m;++t)u=r[t],d=n[u.index],g=d*d,f=u.x+u.vx,p=u.y+u.vy,i.visit(y);function y(t,e,r,n,i){var s=t.data,l=t.r,c=d+l;if(!s)return e>f+c||n<f-c||r>p+c||i<p-c;if(s.index>u.index){var h=f-s.x-s.vx,m=p-s.y-s.vy,v=h*h+m*m;v<c*c&&(0===h&&(v+=(h=o())*h),0===m&&(v+=(m=o())*m),v=(c-(v=Math.sqrt(v)))/v*a,u.vx+=(h*=v)*(c=(l*=l)/(g+l)),u.vy+=(m*=v)*c,s.vx-=h*(c=1-c),s.vy-=m*c)}}}function h(t){if(t.data)return t.r=n[t.data.index];for(var e=t.r=0;e<4;++e)t[e]&&t[e].r>t.r&&(t.r=t[e].r)}function f(){if(r){var e,a,i=r.length;for(n=new Array(i),e=0;e<i;++e)a=r[e],n[a.index]=+t(a,e,r)}}return\"function\"!=typeof t&&(t=i(null==t?1:+t)),u.initialize=function(t){r=t,f()},u.iterations=function(t){return arguments.length?(c=+t,u):c},u.strength=function(t){return arguments.length?(a=+t,u):a},u.radius=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),f(),u):t},u},t.forceLink=function(t){var e,n,a,s,l,h=c,f=function(t){return 1/Math.min(s[t.source.index],s[t.target.index])},p=i(30),d=1;function g(r){for(var a=0,i=t.length;a<d;++a)for(var s,c,u,h,f,p,g,m=0;m<i;++m)c=(s=t[m]).source,h=(u=s.target).x+u.vx-c.x-c.vx||o(),f=u.y+u.vy-c.y-c.vy||o(),h*=p=((p=Math.sqrt(h*h+f*f))-n[m])/p*r*e[m],f*=p,u.vx-=h*(g=l[m]),u.vy-=f*g,c.vx+=h*(g=1-g),c.vy+=f*g}function m(){if(a){var i,o,c=a.length,f=t.length,p=r.map(a,h);for(i=0,s=new Array(c);i<f;++i)(o=t[i]).index=i,\"object\"!=typeof o.source&&(o.source=u(p,o.source)),\"object\"!=typeof o.target&&(o.target=u(p,o.target)),s[o.source.index]=(s[o.source.index]||0)+1,s[o.target.index]=(s[o.target.index]||0)+1;for(i=0,l=new Array(f);i<f;++i)o=t[i],l[i]=s[o.source.index]/(s[o.source.index]+s[o.target.index]);e=new Array(f),v(),n=new Array(f),y()}}function v(){if(a)for(var r=0,n=t.length;r<n;++r)e[r]=+f(t[r],r,t)}function y(){if(a)for(var e=0,r=t.length;e<r;++e)n[e]=+p(t[e],e,t)}return null==t&&(t=[]),g.initialize=function(t){a=t,m()},g.links=function(e){return arguments.length?(t=e,m(),g):t},g.id=function(t){return arguments.length?(h=t,g):h},g.iterations=function(t){return arguments.length?(d=+t,g):d},g.strength=function(t){return arguments.length?(f=\"function\"==typeof t?t:i(+t),v(),g):f},g.distance=function(t){return arguments.length?(p=\"function\"==typeof t?t:i(+t),y(),g):p},g},t.forceManyBody=function(){var t,r,n,a,s=i(-30),l=1,c=1/0,u=.81;function p(a){var i,o=t.length,s=e.quadtree(t,h,f).visitAfter(g);for(n=a,i=0;i<o;++i)r=t[i],s.visit(m)}function d(){if(t){var e,r,n=t.length;for(a=new Array(n),e=0;e<n;++e)r=t[e],a[r.index]=+s(r,e,t)}}function g(t){var e,r,n,i,o,s=0,l=0;if(t.length){for(n=i=o=0;o<4;++o)(e=t[o])&&(r=Math.abs(e.value))&&(s+=e.value,l+=r,n+=r*e.x,i+=r*e.y);t.x=n/l,t.y=i/l}else{(e=t).x=e.data.x,e.y=e.data.y;do{s+=a[e.data.index]}while(e=e.next)}t.value=s}function m(t,e,i,s){if(!t.value)return!0;var h=t.x-r.x,f=t.y-r.y,p=s-e,d=h*h+f*f;if(p*p/u<d)return d<c&&(0===h&&(d+=(h=o())*h),0===f&&(d+=(f=o())*f),d<l&&(d=Math.sqrt(l*d)),r.vx+=h*t.value*n/d,r.vy+=f*t.value*n/d),!0;if(!(t.length||d>=c)){(t.data!==r||t.next)&&(0===h&&(d+=(h=o())*h),0===f&&(d+=(f=o())*f),d<l&&(d=Math.sqrt(l*d)));do{t.data!==r&&(p=a[t.data.index]*n/d,r.vx+=h*p,r.vy+=f*p)}while(t=t.next)}}return p.initialize=function(e){t=e,d()},p.strength=function(t){return arguments.length?(s=\"function\"==typeof t?t:i(+t),d(),p):s},p.distanceMin=function(t){return arguments.length?(l=t*t,p):Math.sqrt(l)},p.distanceMax=function(t){return arguments.length?(c=t*t,p):Math.sqrt(c)},p.theta=function(t){return arguments.length?(u=t*t,p):Math.sqrt(u)},p},t.forceRadial=function(t,e,r){var n,a,o,s=i(.1);function l(t){for(var i=0,s=n.length;i<s;++i){var l=n[i],c=l.x-e||1e-6,u=l.y-r||1e-6,h=Math.sqrt(c*c+u*u),f=(o[i]-h)*a[i]*t/h;l.vx+=c*f,l.vy+=u*f}}function c(){if(n){var e,r=n.length;for(a=new Array(r),o=new Array(r),e=0;e<r;++e)o[e]=+t(n[e],e,n),a[e]=isNaN(o[e])?0:+s(n[e],e,n)}}return\"function\"!=typeof t&&(t=i(+t)),null==e&&(e=0),null==r&&(r=0),l.initialize=function(t){n=t,c()},l.strength=function(t){return arguments.length?(s=\"function\"==typeof t?t:i(+t),c(),l):s},l.radius=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),c(),l):t},l.x=function(t){return arguments.length?(e=+t,l):e},l.y=function(t){return arguments.length?(r=+t,l):r},l},t.forceSimulation=function(t){var e,i=1,o=.001,s=1-Math.pow(o,1/300),l=0,c=.6,u=r.map(),h=a.timer(d),f=n.dispatch(\"tick\",\"end\");function d(){g(),f.call(\"tick\",e),i<o&&(h.stop(),f.call(\"end\",e))}function g(r){var n,a,o=t.length;void 0===r&&(r=1);for(var h=0;h<r;++h)for(i+=(l-i)*s,u.each((function(t){t(i)})),n=0;n<o;++n)null==(a=t[n]).fx?a.x+=a.vx*=c:(a.x=a.fx,a.vx=0),null==a.fy?a.y+=a.vy*=c:(a.y=a.fy,a.vy=0);return e}function m(){for(var e,r=0,n=t.length;r<n;++r){if((e=t[r]).index=r,null!=e.fx&&(e.x=e.fx),null!=e.fy&&(e.y=e.fy),isNaN(e.x)||isNaN(e.y)){var a=10*Math.sqrt(r),i=r*p;e.x=a*Math.cos(i),e.y=a*Math.sin(i)}(isNaN(e.vx)||isNaN(e.vy))&&(e.vx=e.vy=0)}}function v(e){return e.initialize&&e.initialize(t),e}return null==t&&(t=[]),m(),e={tick:g,restart:function(){return h.restart(d),e},stop:function(){return h.stop(),e},nodes:function(r){return arguments.length?(t=r,m(),u.each(v),e):t},alpha:function(t){return arguments.length?(i=+t,e):i},alphaMin:function(t){return arguments.length?(o=+t,e):o},alphaDecay:function(t){return arguments.length?(s=+t,e):+s},alphaTarget:function(t){return arguments.length?(l=+t,e):l},velocityDecay:function(t){return arguments.length?(c=1-t,e):1-c},force:function(t,r){return arguments.length>1?(null==r?u.remove(t):u.set(t,v(r)),e):u.get(t)},find:function(e,r,n){var a,i,o,s,l,c=0,u=t.length;for(null==n?n=1/0:n*=n,c=0;c<u;++c)(o=(a=e-(s=t[c]).x)*a+(i=r-s.y)*i)<n&&(l=s,n=o);return l},on:function(t,r){return arguments.length>1?(f.on(t,r),e):f.on(t)}}},t.forceX=function(t){var e,r,n,a=i(.1);function o(t){for(var a,i=0,o=e.length;i<o;++i)(a=e[i]).vx+=(n[i]-a.x)*r[i]*t}function s(){if(e){var i,o=e.length;for(r=new Array(o),n=new Array(o),i=0;i<o;++i)r[i]=isNaN(n[i]=+t(e[i],i,e))?0:+a(e[i],i,e)}}return\"function\"!=typeof t&&(t=i(null==t?0:+t)),o.initialize=function(t){e=t,s()},o.strength=function(t){return arguments.length?(a=\"function\"==typeof t?t:i(+t),s(),o):a},o.x=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),s(),o):t},o},t.forceY=function(t){var e,r,n,a=i(.1);function o(t){for(var a,i=0,o=e.length;i<o;++i)(a=e[i]).vy+=(n[i]-a.y)*r[i]*t}function s(){if(e){var i,o=e.length;for(r=new Array(o),n=new Array(o),i=0;i<o;++i)r[i]=isNaN(n[i]=+t(e[i],i,e))?0:+a(e[i],i,e)}}return\"function\"!=typeof t&&(t=i(null==t?0:+t)),o.initialize=function(t){e=t,s()},o.strength=function(t){return arguments.length?(a=\"function\"==typeof t?t:i(+t),s(),o):a},o.y=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),s(),o):t},o},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-collection\":157,\"d3-dispatch\":159,\"d3-quadtree\":164,\"d3-timer\":168}],161:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";function e(t,e){return t.parent===e.parent?1:2}function r(t,e){return t+e.x}function n(t,e){return Math.max(t,e.y)}function a(t){var e=0,r=t.children,n=r&&r.length;if(n)for(;--n>=0;)e+=r[n].value;else e=1;t.value=e}function i(t,e){var r,n,a,i,s,u=new c(t),h=+t.value&&(u.value=t.value),f=[u];for(null==e&&(e=o);r=f.pop();)if(h&&(r.value=+r.data.value),(a=e(r.data))&&(s=a.length))for(r.children=new Array(s),i=s-1;i>=0;--i)f.push(n=r.children[i]=new c(a[i])),n.parent=r,n.depth=r.depth+1;return u.eachBefore(l)}function o(t){return t.children}function s(t){t.data=t.data.data}function l(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function c(t){this.data=t,this.depth=this.height=0,this.parent=null}c.prototype=i.prototype={constructor:c,count:function(){return this.eachAfter(a)},each:function(t){var e,r,n,a,i=this,o=[i];do{for(e=o.reverse(),o=[];i=e.pop();)if(t(i),r=i.children)for(n=0,a=r.length;n<a;++n)o.push(r[n])}while(o.length);return this},eachAfter:function(t){for(var e,r,n,a=this,i=[a],o=[];a=i.pop();)if(o.push(a),e=a.children)for(r=0,n=e.length;r<n;++r)i.push(e[r]);for(;a=o.pop();)t(a);return this},eachBefore:function(t){for(var e,r,n=this,a=[n];n=a.pop();)if(t(n),e=n.children)for(r=e.length-1;r>=0;--r)a.push(e[r]);return this},sum:function(t){return this.eachAfter((function(e){for(var r=+t(e.data)||0,n=e.children,a=n&&n.length;--a>=0;)r+=n[a].value;e.value=r}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,r=function(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),a=null;t=r.pop(),e=n.pop();for(;t===e;)a=t,t=r.pop(),e=n.pop();return a}(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var a=n.length;t!==r;)n.splice(a,0,t),t=t.parent;return n},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(r){r!==t&&e.push({source:r.parent,target:r})})),e},copy:function(){return i(this).eachBefore(s)}};var u=Array.prototype.slice;function h(t){for(var e,r,n=0,a=(t=function(t){for(var e,r,n=t.length;n;)r=Math.random()*n--|0,e=t[n],t[n]=t[r],t[r]=e;return t}(u.call(t))).length,i=[];n<a;)e=t[n],r&&d(r,e)?++n:(r=m(i=f(i,e)),n=0);return r}function f(t,e){var r,n;if(g(e,t))return[e];for(r=0;r<t.length;++r)if(p(e,t[r])&&g(v(t[r],e),t))return[t[r],e];for(r=0;r<t.length-1;++r)for(n=r+1;n<t.length;++n)if(p(v(t[r],t[n]),e)&&p(v(t[r],e),t[n])&&p(v(t[n],e),t[r])&&g(y(t[r],t[n],e),t))return[t[r],t[n],e];throw new Error}function p(t,e){var r=t.r-e.r,n=e.x-t.x,a=e.y-t.y;return r<0||r*r<n*n+a*a}function d(t,e){var r=t.r-e.r+1e-6,n=e.x-t.x,a=e.y-t.y;return r>0&&r*r>n*n+a*a}function g(t,e){for(var r=0;r<e.length;++r)if(!d(t,e[r]))return!1;return!0}function m(t){switch(t.length){case 1:return{x:(e=t[0]).x,y:e.y,r:e.r};case 2:return v(t[0],t[1]);case 3:return y(t[0],t[1],t[2])}var e}function v(t,e){var r=t.x,n=t.y,a=t.r,i=e.x,o=e.y,s=e.r,l=i-r,c=o-n,u=s-a,h=Math.sqrt(l*l+c*c);return{x:(r+i+l/h*u)/2,y:(n+o+c/h*u)/2,r:(h+a+s)/2}}function y(t,e,r){var n=t.x,a=t.y,i=t.r,o=e.x,s=e.y,l=e.r,c=r.x,u=r.y,h=r.r,f=n-o,p=n-c,d=a-s,g=a-u,m=l-i,v=h-i,y=n*n+a*a-i*i,x=y-o*o-s*s+l*l,b=y-c*c-u*u+h*h,_=p*d-f*g,w=(d*b-g*x)/(2*_)-n,T=(g*m-d*v)/_,k=(p*x-f*b)/(2*_)-a,M=(f*v-p*m)/_,A=T*T+M*M-1,S=2*(i+w*T+k*M),E=w*w+k*k-i*i,C=-(A?(S+Math.sqrt(S*S-4*A*E))/(2*A):E/S);return{x:n+w+T*C,y:a+k+M*C,r:C}}function x(t,e,r){var n,a,i,o,s=t.x-e.x,l=t.y-e.y,c=s*s+l*l;c?(a=e.r+r.r,a*=a,o=t.r+r.r,a>(o*=o)?(n=(c+o-a)/(2*c),i=Math.sqrt(Math.max(0,o/c-n*n)),r.x=t.x-n*s-i*l,r.y=t.y-n*l+i*s):(n=(c+a-o)/(2*c),i=Math.sqrt(Math.max(0,a/c-n*n)),r.x=e.x+n*s-i*l,r.y=e.y+n*l+i*s)):(r.x=e.x+r.r,r.y=e.y)}function b(t,e){var r=t.r+e.r-1e-6,n=e.x-t.x,a=e.y-t.y;return r>0&&r*r>n*n+a*a}function _(t){var e=t._,r=t.next._,n=e.r+r.r,a=(e.x*r.r+r.x*e.r)/n,i=(e.y*r.r+r.y*e.r)/n;return a*a+i*i}function w(t){this._=t,this.next=null,this.previous=null}function T(t){if(!(a=t.length))return 0;var e,r,n,a,i,o,s,l,c,u,f;if((e=t[0]).x=0,e.y=0,!(a>1))return e.r;if(r=t[1],e.x=-r.r,r.x=e.r,r.y=0,!(a>2))return e.r+r.r;x(r,e,n=t[2]),e=new w(e),r=new w(r),n=new w(n),e.next=n.previous=r,r.next=e.previous=n,n.next=r.previous=e;t:for(s=3;s<a;++s){x(e._,r._,n=t[s]),n=new w(n),l=r.next,c=e.previous,u=r._.r,f=e._.r;do{if(u<=f){if(b(l._,n._)){r=l,e.next=r,r.previous=e,--s;continue t}u+=l._.r,l=l.next}else{if(b(c._,n._)){(e=c).next=r,r.previous=e,--s;continue t}f+=c._.r,c=c.previous}}while(l!==c.next);for(n.previous=e,n.next=r,e.next=r.previous=r=n,i=_(e);(n=n.next)!==r;)(o=_(n))<i&&(e=n,i=o);r=e.next}for(e=[r._],n=r;(n=n.next)!==r;)e.push(n._);for(n=h(e),s=0;s<a;++s)(e=t[s]).x-=n.x,e.y-=n.y;return n.r}function k(t){return null==t?null:M(t)}function M(t){if(\"function\"!=typeof t)throw new Error;return t}function A(){return 0}function S(t){return function(){return t}}function E(t){return Math.sqrt(t.value)}function C(t){return function(e){e.children||(e.r=Math.max(0,+t(e)||0))}}function L(t,e){return function(r){if(n=r.children){var n,a,i,o=n.length,s=t(r)*e||0;if(s)for(a=0;a<o;++a)n[a].r+=s;if(i=T(n),s)for(a=0;a<o;++a)n[a].r-=s;r.r=i+s}}}function P(t){return function(e){var r=e.parent;e.r*=t,r&&(e.x=r.x+t*e.x,e.y=r.y+t*e.y)}}function I(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function z(t,e,r,n,a){for(var i,o=t.children,s=-1,l=o.length,c=t.value&&(n-e)/t.value;++s<l;)(i=o[s]).y0=r,i.y1=a,i.x0=e,i.x1=e+=i.value*c}var O={depth:-1},D={};function R(t){return t.id}function F(t){return t.parentId}function B(t,e){return t.parent===e.parent?1:2}function N(t){var e=t.children;return e?e[0]:t.t}function j(t){var e=t.children;return e?e[e.length-1]:t.t}function U(t,e,r){var n=r/(e.i-t.i);e.c-=n,e.s+=r,t.c+=n,e.z+=r,e.m+=r}function V(t,e,r){return t.a.parent===e.parent?t.a:r}function q(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}function H(t,e,r,n,a){for(var i,o=t.children,s=-1,l=o.length,c=t.value&&(a-r)/t.value;++s<l;)(i=o[s]).x0=e,i.x1=n,i.y0=r,i.y1=r+=i.value*c}q.prototype=Object.create(c.prototype);var G=(1+Math.sqrt(5))/2;function Y(t,e,r,n,a,i){for(var o,s,l,c,u,h,f,p,d,g,m,v=[],y=e.children,x=0,b=0,_=y.length,w=e.value;x<_;){l=a-r,c=i-n;do{u=y[b++].value}while(!u&&b<_);for(h=f=u,m=u*u*(g=Math.max(c/l,l/c)/(w*t)),d=Math.max(f/m,m/h);b<_;++b){if(u+=s=y[b].value,s<h&&(h=s),s>f&&(f=s),m=u*u*g,(p=Math.max(f/m,m/h))>d){u-=s;break}d=p}v.push(o={value:u,dice:l<c,children:y.slice(x,b)}),o.dice?z(o,r,n,a,w?n+=c*u/w:i):H(o,r,n,w?r+=l*u/w:a,i),w-=u,x=b}return v}var W=function t(e){function r(t,r,n,a,i){Y(e,t,r,n,a,i)}return r.ratio=function(e){return t((e=+e)>1?e:1)},r}(G);var Z=function t(e){function r(t,r,n,a,i){if((o=t._squarify)&&o.ratio===e)for(var o,s,l,c,u,h=-1,f=o.length,p=t.value;++h<f;){for(l=(s=o[h]).children,c=s.value=0,u=l.length;c<u;++c)s.value+=l[c].value;s.dice?z(s,r,n,a,n+=(i-n)*s.value/p):H(s,r,n,r+=(a-r)*s.value/p,i),p-=s.value}else t._squarify=o=Y(e,t,r,n,a,i),o.ratio=e}return r.ratio=function(e){return t((e=+e)>1?e:1)},r}(G);t.cluster=function(){var t=e,a=1,i=1,o=!1;function s(e){var s,l=0;e.eachAfter((function(e){var a=e.children;a?(e.x=function(t){return t.reduce(r,0)/t.length}(a),e.y=function(t){return 1+t.reduce(n,0)}(a)):(e.x=s?l+=t(e,s):0,e.y=0,s=e)}));var c=function(t){for(var e;e=t.children;)t=e[0];return t}(e),u=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(e),h=c.x-t(c,u)/2,f=u.x+t(u,c)/2;return e.eachAfter(o?function(t){t.x=(t.x-e.x)*a,t.y=(e.y-t.y)*i}:function(t){t.x=(t.x-h)/(f-h)*a,t.y=(1-(e.y?t.y/e.y:1))*i})}return s.separation=function(e){return arguments.length?(t=e,s):t},s.size=function(t){return arguments.length?(o=!1,a=+t[0],i=+t[1],s):o?null:[a,i]},s.nodeSize=function(t){return arguments.length?(o=!0,a=+t[0],i=+t[1],s):o?[a,i]:null},s},t.hierarchy=i,t.pack=function(){var t=null,e=1,r=1,n=A;function a(a){return a.x=e/2,a.y=r/2,t?a.eachBefore(C(t)).eachAfter(L(n,.5)).eachBefore(P(1)):a.eachBefore(C(E)).eachAfter(L(A,1)).eachAfter(L(n,a.r/Math.min(e,r))).eachBefore(P(Math.min(e,r)/(2*a.r))),a}return a.radius=function(e){return arguments.length?(t=k(e),a):t},a.size=function(t){return arguments.length?(e=+t[0],r=+t[1],a):[e,r]},a.padding=function(t){return arguments.length?(n=\"function\"==typeof t?t:S(+t),a):n},a},t.packEnclose=h,t.packSiblings=function(t){return T(t),t},t.partition=function(){var t=1,e=1,r=0,n=!1;function a(a){var i=a.height+1;return a.x0=a.y0=r,a.x1=t,a.y1=e/i,a.eachBefore(function(t,e){return function(n){n.children&&z(n,n.x0,t*(n.depth+1)/e,n.x1,t*(n.depth+2)/e);var a=n.x0,i=n.y0,o=n.x1-r,s=n.y1-r;o<a&&(a=o=(a+o)/2),s<i&&(i=s=(i+s)/2),n.x0=a,n.y0=i,n.x1=o,n.y1=s}}(e,i)),n&&a.eachBefore(I),a}return a.round=function(t){return arguments.length?(n=!!t,a):n},a.size=function(r){return arguments.length?(t=+r[0],e=+r[1],a):[t,e]},a.padding=function(t){return arguments.length?(r=+t,a):r},a},t.stratify=function(){var t=R,e=F;function r(r){var n,a,i,o,s,u,h,f=r.length,p=new Array(f),d={};for(a=0;a<f;++a)n=r[a],s=p[a]=new c(n),null!=(u=t(n,a,r))&&(u+=\"\")&&(d[h=\"$\"+(s.id=u)]=h in d?D:s);for(a=0;a<f;++a)if(s=p[a],null!=(u=e(r[a],a,r))&&(u+=\"\")){if(!(o=d[\"$\"+u]))throw new Error(\"missing: \"+u);if(o===D)throw new Error(\"ambiguous: \"+u);o.children?o.children.push(s):o.children=[s],s.parent=o}else{if(i)throw new Error(\"multiple roots\");i=s}if(!i)throw new Error(\"no root\");if(i.parent=O,i.eachBefore((function(t){t.depth=t.parent.depth+1,--f})).eachBefore(l),i.parent=null,f>0)throw new Error(\"cycle\");return i}return r.id=function(e){return arguments.length?(t=M(e),r):t},r.parentId=function(t){return arguments.length?(e=M(t),r):e},r},t.tree=function(){var t=B,e=1,r=1,n=null;function a(a){var l=function(t){for(var e,r,n,a,i,o=new q(t,0),s=[o];e=s.pop();)if(n=e._.children)for(e.children=new Array(i=n.length),a=i-1;a>=0;--a)s.push(r=e.children[a]=new q(n[a],a)),r.parent=e;return(o.parent=new q(null,0)).children=[o],o}(a);if(l.eachAfter(i),l.parent.m=-l.z,l.eachBefore(o),n)a.eachBefore(s);else{var c=a,u=a,h=a;a.eachBefore((function(t){t.x<c.x&&(c=t),t.x>u.x&&(u=t),t.depth>h.depth&&(h=t)}));var f=c===u?1:t(c,u)/2,p=f-c.x,d=e/(u.x+f+p),g=r/(h.depth||1);a.eachBefore((function(t){t.x=(t.x+p)*d,t.y=t.depth*g}))}return a}function i(e){var r=e.children,n=e.parent.children,a=e.i?n[e.i-1]:null;if(r){!function(t){for(var e,r=0,n=0,a=t.children,i=a.length;--i>=0;)(e=a[i]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(e);var i=(r[0].z+r[r.length-1].z)/2;a?(e.z=a.z+t(e._,a._),e.m=e.z-i):e.z=i}else a&&(e.z=a.z+t(e._,a._));e.parent.A=function(e,r,n){if(r){for(var a,i=e,o=e,s=r,l=i.parent.children[0],c=i.m,u=o.m,h=s.m,f=l.m;s=j(s),i=N(i),s&&i;)l=N(l),(o=j(o)).a=e,(a=s.z+h-i.z-c+t(s._,i._))>0&&(U(V(s,e,n),e,a),c+=a,u+=a),h+=s.m,c+=i.m,f+=l.m,u+=o.m;s&&!j(o)&&(o.t=s,o.m+=h-u),i&&!N(l)&&(l.t=i,l.m+=c-f,n=e)}return n}(e,a,e.parent.A||n[0])}function o(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*r}return a.separation=function(e){return arguments.length?(t=e,a):t},a.size=function(t){return arguments.length?(n=!1,e=+t[0],r=+t[1],a):n?null:[e,r]},a.nodeSize=function(t){return arguments.length?(n=!0,e=+t[0],r=+t[1],a):n?[e,r]:null},a},t.treemap=function(){var t=W,e=!1,r=1,n=1,a=[0],i=A,o=A,s=A,l=A,c=A;function u(t){return t.x0=t.y0=0,t.x1=r,t.y1=n,t.eachBefore(h),a=[0],e&&t.eachBefore(I),t}function h(e){var r=a[e.depth],n=e.x0+r,u=e.y0+r,h=e.x1-r,f=e.y1-r;h<n&&(n=h=(n+h)/2),f<u&&(u=f=(u+f)/2),e.x0=n,e.y0=u,e.x1=h,e.y1=f,e.children&&(r=a[e.depth+1]=i(e)/2,n+=c(e)-r,u+=o(e)-r,(h-=s(e)-r)<n&&(n=h=(n+h)/2),(f-=l(e)-r)<u&&(u=f=(u+f)/2),t(e,n,u,h,f))}return u.round=function(t){return arguments.length?(e=!!t,u):e},u.size=function(t){return arguments.length?(r=+t[0],n=+t[1],u):[r,n]},u.tile=function(e){return arguments.length?(t=M(e),u):t},u.padding=function(t){return arguments.length?u.paddingInner(t).paddingOuter(t):u.paddingInner()},u.paddingInner=function(t){return arguments.length?(i=\"function\"==typeof t?t:S(+t),u):i},u.paddingOuter=function(t){return arguments.length?u.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):u.paddingTop()},u.paddingTop=function(t){return arguments.length?(o=\"function\"==typeof t?t:S(+t),u):o},u.paddingRight=function(t){return arguments.length?(s=\"function\"==typeof t?t:S(+t),u):s},u.paddingBottom=function(t){return arguments.length?(l=\"function\"==typeof t?t:S(+t),u):l},u.paddingLeft=function(t){return arguments.length?(c=\"function\"==typeof t?t:S(+t),u):c},u},t.treemapBinary=function(t,e,r,n,a){var i,o,s=t.children,l=s.length,c=new Array(l+1);for(c[0]=o=i=0;i<l;++i)c[i+1]=o+=s[i].value;!function t(e,r,n,a,i,o,l){if(e>=r-1){var u=s[e];return u.x0=a,u.y0=i,u.x1=o,void(u.y1=l)}var h=c[e],f=n/2+h,p=e+1,d=r-1;for(;p<d;){var g=p+d>>>1;c[g]<f?p=g+1:d=g}f-c[p-1]<c[p]-f&&e+1<p&&--p;var m=c[p]-h,v=n-m;if(o-a>l-i){var y=(a*v+o*m)/n;t(e,p,m,a,i,y,l),t(p,r,v,y,i,o,l)}else{var x=(i*v+l*m)/n;t(e,p,m,a,i,o,x),t(p,r,v,a,x,o,l)}}(0,l,t.value,e,r,n,a)},t.treemapDice=z,t.treemapResquarify=Z,t.treemapSlice=H,t.treemapSliceDice=function(t,e,r,n,a){(1&t.depth?H:z)(t,e,r,n,a)},t.treemapSquarify=W,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],162:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-color\")):a((n=n||self).d3=n.d3||{},n.d3)}(this,(function(t,e){\"use strict\";function r(t,e,r,n,a){var i=t*t,o=i*t;return((1-3*t+3*i-o)*e+(4-6*i+3*o)*r+(1+3*t+3*i-3*o)*n+o*a)/6}function n(t){var e=t.length-1;return function(n){var a=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[a],o=t[a+1],s=a>0?t[a-1]:2*i-o,l=a<e-1?t[a+2]:2*o-i;return r((n-a/e)*e,s,i,o,l)}}function a(t){var e=t.length;return function(n){var a=Math.floor(((n%=1)<0?++n:n)*e),i=t[(a+e-1)%e],o=t[a%e],s=t[(a+1)%e],l=t[(a+2)%e];return r((n-a/e)*e,i,o,s,l)}}function i(t){return function(){return t}}function o(t,e){return function(r){return t+r*e}}function s(t,e){var r=e-t;return r?o(t,r>180||r<-180?r-360*Math.round(r/360):r):i(isNaN(t)?e:t)}function l(t){return 1==(t=+t)?c:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}(e,r,t):i(isNaN(e)?r:e)}}function c(t,e){var r=e-t;return r?o(t,r):i(isNaN(t)?e:t)}var u=function t(r){var n=l(r);function a(t,r){var a=n((t=e.rgb(t)).r,(r=e.rgb(r)).r),i=n(t.g,r.g),o=n(t.b,r.b),s=c(t.opacity,r.opacity);return function(e){return t.r=a(e),t.g=i(e),t.b=o(e),t.opacity=s(e),t+\"\"}}return a.gamma=t,a}(1);function h(t){return function(r){var n,a,i=r.length,o=new Array(i),s=new Array(i),l=new Array(i);for(n=0;n<i;++n)a=e.rgb(r[n]),o[n]=a.r||0,s[n]=a.g||0,l[n]=a.b||0;return o=t(o),s=t(s),l=t(l),a.opacity=1,function(t){return a.r=o(t),a.g=s(t),a.b=l(t),a+\"\"}}}var f=h(n),p=h(a);function d(t,e){e||(e=[]);var r,n=t?Math.min(e.length,t.length):0,a=e.slice();return function(i){for(r=0;r<n;++r)a[r]=t[r]*(1-i)+e[r]*i;return a}}function g(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function m(t,e){var r,n=e?e.length:0,a=t?Math.min(n,t.length):0,i=new Array(a),o=new Array(n);for(r=0;r<a;++r)i[r]=T(t[r],e[r]);for(;r<n;++r)o[r]=e[r];return function(t){for(r=0;r<a;++r)o[r]=i[r](t);return o}}function v(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}function y(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}function x(t,e){var r,n={},a={};for(r in null!==t&&\"object\"==typeof t||(t={}),null!==e&&\"object\"==typeof e||(e={}),e)r in t?n[r]=T(t[r],e[r]):a[r]=e[r];return function(t){for(r in n)a[r]=n[r](t);return a}}var b=/[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,_=new RegExp(b.source,\"g\");function w(t,e){var r,n,a,i=b.lastIndex=_.lastIndex=0,o=-1,s=[],l=[];for(t+=\"\",e+=\"\";(r=b.exec(t))&&(n=_.exec(e));)(a=n.index)>i&&(a=e.slice(i,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:y(r,n)})),i=_.lastIndex;return i<e.length&&(a=e.slice(i),s[o]?s[o]+=a:s[++o]=a),s.length<2?l[0]?function(t){return function(e){return t(e)+\"\"}}(l[0].x):function(t){return function(){return t}}(e):(e=l.length,function(t){for(var r,n=0;n<e;++n)s[(r=l[n]).i]=r.x(t);return s.join(\"\")})}function T(t,r){var n,a=typeof r;return null==r||\"boolean\"===a?i(r):(\"number\"===a?y:\"string\"===a?(n=e.color(r))?(r=n,u):w:r instanceof e.color?u:r instanceof Date?v:g(r)?d:Array.isArray(r)?m:\"function\"!=typeof r.valueOf&&\"function\"!=typeof r.toString||isNaN(r)?x:y)(t,r)}var k,M,A,S,E=180/Math.PI,C={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function L(t,e,r,n,a,i){var o,s,l;return(o=Math.sqrt(t*t+e*e))&&(t/=o,e/=o),(l=t*r+e*n)&&(r-=t*l,n-=e*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),t*n<e*r&&(t=-t,e=-e,l=-l,o=-o),{translateX:a,translateY:i,rotate:Math.atan2(e,t)*E,skewX:Math.atan(l)*E,scaleX:o,scaleY:s}}function P(t,e,r,n){function a(t){return t.length?t.pop()+\" \":\"\"}return function(i,o){var s=[],l=[];return i=t(i),o=t(o),function(t,n,a,i,o,s){if(t!==a||n!==i){var l=o.push(\"translate(\",null,e,null,r);s.push({i:l-4,x:y(t,a)},{i:l-2,x:y(n,i)})}else(a||i)&&o.push(\"translate(\"+a+e+i+r)}(i.translateX,i.translateY,o.translateX,o.translateY,s,l),function(t,e,r,i){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),i.push({i:r.push(a(r)+\"rotate(\",null,n)-2,x:y(t,e)})):e&&r.push(a(r)+\"rotate(\"+e+n)}(i.rotate,o.rotate,s,l),function(t,e,r,i){t!==e?i.push({i:r.push(a(r)+\"skewX(\",null,n)-2,x:y(t,e)}):e&&r.push(a(r)+\"skewX(\"+e+n)}(i.skewX,o.skewX,s,l),function(t,e,r,n,i,o){if(t!==r||e!==n){var s=i.push(a(i)+\"scale(\",null,\",\",null,\")\");o.push({i:s-4,x:y(t,r)},{i:s-2,x:y(e,n)})}else 1===r&&1===n||i.push(a(i)+\"scale(\"+r+\",\"+n+\")\")}(i.scaleX,i.scaleY,o.scaleX,o.scaleY,s,l),i=o=null,function(t){for(var e,r=-1,n=l.length;++r<n;)s[(e=l[r]).i]=e.x(t);return s.join(\"\")}}}var I=P((function(t){return\"none\"===t?C:(k||(k=document.createElement(\"DIV\"),M=document.documentElement,A=document.defaultView),k.style.transform=t,t=A.getComputedStyle(M.appendChild(k),null).getPropertyValue(\"transform\"),M.removeChild(k),L(+(t=t.slice(7,-1).split(\",\"))[0],+t[1],+t[2],+t[3],+t[4],+t[5]))}),\"px, \",\"px)\",\"deg)\"),z=P((function(t){return null==t?C:(S||(S=document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\")),S.setAttribute(\"transform\",t),(t=S.transform.baseVal.consolidate())?L((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):C)}),\", \",\")\",\")\"),O=Math.SQRT2;function D(t){return((t=Math.exp(t))+1/t)/2}function R(t){return function(r,n){var a=t((r=e.hsl(r)).h,(n=e.hsl(n)).h),i=c(r.s,n.s),o=c(r.l,n.l),s=c(r.opacity,n.opacity);return function(t){return r.h=a(t),r.s=i(t),r.l=o(t),r.opacity=s(t),r+\"\"}}}var F=R(s),B=R(c);function N(t){return function(r,n){var a=t((r=e.hcl(r)).h,(n=e.hcl(n)).h),i=c(r.c,n.c),o=c(r.l,n.l),s=c(r.opacity,n.opacity);return function(t){return r.h=a(t),r.c=i(t),r.l=o(t),r.opacity=s(t),r+\"\"}}}var j=N(s),U=N(c);function V(t){return function r(n){function a(r,a){var i=t((r=e.cubehelix(r)).h,(a=e.cubehelix(a)).h),o=c(r.s,a.s),s=c(r.l,a.l),l=c(r.opacity,a.opacity);return function(t){return r.h=i(t),r.s=o(t),r.l=s(Math.pow(t,n)),r.opacity=l(t),r+\"\"}}return n=+n,a.gamma=r,a}(1)}var q=V(s),H=V(c);t.interpolate=T,t.interpolateArray=function(t,e){return(g(e)?d:m)(t,e)},t.interpolateBasis=n,t.interpolateBasisClosed=a,t.interpolateCubehelix=q,t.interpolateCubehelixLong=H,t.interpolateDate=v,t.interpolateDiscrete=function(t){var e=t.length;return function(r){return t[Math.max(0,Math.min(e-1,Math.floor(r*e)))]}},t.interpolateHcl=j,t.interpolateHclLong=U,t.interpolateHsl=F,t.interpolateHslLong=B,t.interpolateHue=function(t,e){var r=s(+t,+e);return function(t){var e=r(t);return e-360*Math.floor(e/360)}},t.interpolateLab=function(t,r){var n=c((t=e.lab(t)).l,(r=e.lab(r)).l),a=c(t.a,r.a),i=c(t.b,r.b),o=c(t.opacity,r.opacity);return function(e){return t.l=n(e),t.a=a(e),t.b=i(e),t.opacity=o(e),t+\"\"}},t.interpolateNumber=y,t.interpolateNumberArray=d,t.interpolateObject=x,t.interpolateRgb=u,t.interpolateRgbBasis=f,t.interpolateRgbBasisClosed=p,t.interpolateRound=function(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}},t.interpolateString=w,t.interpolateTransformCss=I,t.interpolateTransformSvg=z,t.interpolateZoom=function(t,e){var r,n,a=t[0],i=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-a,h=l-i,f=u*u+h*h;if(f<1e-12)n=Math.log(c/o)/O,r=function(t){return[a+t*u,i+t*h,o*Math.exp(O*t*n)]};else{var p=Math.sqrt(f),d=(c*c-o*o+4*f)/(2*o*2*p),g=(c*c-o*o-4*f)/(2*c*2*p),m=Math.log(Math.sqrt(d*d+1)-d),v=Math.log(Math.sqrt(g*g+1)-g);n=(v-m)/O,r=function(t){var e,r=t*n,s=D(m),l=o/(2*p)*(s*(e=O*r+m,((e=Math.exp(2*e))-1)/(e+1))-function(t){return((t=Math.exp(t))-1/t)/2}(m));return[a+l*u,i+l*h,o*s/D(O*r+m)]}}return r.duration=1e3*n,r},t.piecewise=function(t,e){for(var r=0,n=e.length-1,a=e[0],i=new Array(n<0?0:n);r<n;)i[r]=t(a,a=e[++r]);return function(t){var e=Math.max(0,Math.min(n-1,Math.floor(t*=n)));return i[e](t-e)}},t.quantize=function(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t(n/(e-1));return r},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-color\":158}],163:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";var e=Math.PI,r=2*e,n=r-1e-6;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=\"\"}function i(){return new a}a.prototype=i.prototype={constructor:a,moveTo:function(t,e){this._+=\"M\"+(this._x0=this._x1=+t)+\",\"+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+=\"Z\")},lineTo:function(t,e){this._+=\"L\"+(this._x1=+t)+\",\"+(this._y1=+e)},quadraticCurveTo:function(t,e,r,n){this._+=\"Q\"+ +t+\",\"+ +e+\",\"+(this._x1=+r)+\",\"+(this._y1=+n)},bezierCurveTo:function(t,e,r,n,a,i){this._+=\"C\"+ +t+\",\"+ +e+\",\"+ +r+\",\"+ +n+\",\"+(this._x1=+a)+\",\"+(this._y1=+i)},arcTo:function(t,r,n,a,i){t=+t,r=+r,n=+n,a=+a,i=+i;var o=this._x1,s=this._y1,l=n-t,c=a-r,u=o-t,h=s-r,f=u*u+h*h;if(i<0)throw new Error(\"negative radius: \"+i);if(null===this._x1)this._+=\"M\"+(this._x1=t)+\",\"+(this._y1=r);else if(f>1e-6)if(Math.abs(h*l-c*u)>1e-6&&i){var p=n-o,d=a-s,g=l*l+c*c,m=p*p+d*d,v=Math.sqrt(g),y=Math.sqrt(f),x=i*Math.tan((e-Math.acos((g+f-m)/(2*v*y)))/2),b=x/y,_=x/v;Math.abs(b-1)>1e-6&&(this._+=\"L\"+(t+b*u)+\",\"+(r+b*h)),this._+=\"A\"+i+\",\"+i+\",0,0,\"+ +(h*p>u*d)+\",\"+(this._x1=t+_*l)+\",\"+(this._y1=r+_*c)}else this._+=\"L\"+(this._x1=t)+\",\"+(this._y1=r);else;},arc:function(t,a,i,o,s,l){t=+t,a=+a,l=!!l;var c=(i=+i)*Math.cos(o),u=i*Math.sin(o),h=t+c,f=a+u,p=1^l,d=l?o-s:s-o;if(i<0)throw new Error(\"negative radius: \"+i);null===this._x1?this._+=\"M\"+h+\",\"+f:(Math.abs(this._x1-h)>1e-6||Math.abs(this._y1-f)>1e-6)&&(this._+=\"L\"+h+\",\"+f),i&&(d<0&&(d=d%r+r),d>n?this._+=\"A\"+i+\",\"+i+\",0,1,\"+p+\",\"+(t-c)+\",\"+(a-u)+\"A\"+i+\",\"+i+\",0,1,\"+p+\",\"+(this._x1=h)+\",\"+(this._y1=f):d>1e-6&&(this._+=\"A\"+i+\",\"+i+\",0,\"+ +(d>=e)+\",\"+p+\",\"+(this._x1=t+i*Math.cos(s))+\",\"+(this._y1=a+i*Math.sin(s))))},rect:function(t,e,r,n){this._+=\"M\"+(this._x0=this._x1=+t)+\",\"+(this._y0=this._y1=+e)+\"h\"+ +r+\"v\"+ +n+\"h\"+-r+\"Z\"},toString:function(){return this._}},t.path=i,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],164:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";function e(t,e,r,n){if(isNaN(e)||isNaN(r))return t;var a,i,o,s,l,c,u,h,f,p=t._root,d={data:n},g=t._x0,m=t._y0,v=t._x1,y=t._y1;if(!p)return t._root=d,t;for(;p.length;)if((c=e>=(i=(g+v)/2))?g=i:v=i,(u=r>=(o=(m+y)/2))?m=o:y=o,a=p,!(p=p[h=u<<1|c]))return a[h]=d,t;if(s=+t._x.call(null,p.data),l=+t._y.call(null,p.data),e===s&&r===l)return d.next=p,a?a[h]=d:t._root=d,t;do{a=a?a[h]=new Array(4):t._root=new Array(4),(c=e>=(i=(g+v)/2))?g=i:v=i,(u=r>=(o=(m+y)/2))?m=o:y=o}while((h=u<<1|c)==(f=(l>=o)<<1|s>=i));return a[f]=p,a[h]=d,t}function r(t,e,r,n,a){this.node=t,this.x0=e,this.y0=r,this.x1=n,this.y1=a}function n(t){return t[0]}function a(t){return t[1]}function i(t,e,r){var i=new o(null==e?n:e,null==r?a:r,NaN,NaN,NaN,NaN);return null==t?i:i.addAll(t)}function o(t,e,r,n,a,i){this._x=t,this._y=e,this._x0=r,this._y0=n,this._x1=a,this._y1=i,this._root=void 0}function s(t){for(var e={data:t.data},r=e;t=t.next;)r=r.next={data:t.data};return e}var l=i.prototype=o.prototype;l.copy=function(){var t,e,r=new o(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root;if(!n)return r;if(!n.length)return r._root=s(n),r;for(t=[{source:n,target:r._root=new Array(4)}];n=t.pop();)for(var a=0;a<4;++a)(e=n.source[a])&&(e.length?t.push({source:e,target:n.target[a]=new Array(4)}):n.target[a]=s(e));return r},l.add=function(t){var r=+this._x.call(null,t),n=+this._y.call(null,t);return e(this.cover(r,n),r,n,t)},l.addAll=function(t){var r,n,a,i,o=t.length,s=new Array(o),l=new Array(o),c=1/0,u=1/0,h=-1/0,f=-1/0;for(n=0;n<o;++n)isNaN(a=+this._x.call(null,r=t[n]))||isNaN(i=+this._y.call(null,r))||(s[n]=a,l[n]=i,a<c&&(c=a),a>h&&(h=a),i<u&&(u=i),i>f&&(f=i));if(c>h||u>f)return this;for(this.cover(c,u).cover(h,f),n=0;n<o;++n)e(this,s[n],l[n],t[n]);return this},l.cover=function(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var r=this._x0,n=this._y0,a=this._x1,i=this._y1;if(isNaN(r))a=(r=Math.floor(t))+1,i=(n=Math.floor(e))+1;else{for(var o,s,l=a-r,c=this._root;r>t||t>=a||n>e||e>=i;)switch(s=(e<n)<<1|t<r,(o=new Array(4))[s]=c,c=o,l*=2,s){case 0:a=r+l,i=n+l;break;case 1:r=a-l,i=n+l;break;case 2:a=r+l,n=i-l;break;case 3:r=a-l,n=i-l}this._root&&this._root.length&&(this._root=c)}return this._x0=r,this._y0=n,this._x1=a,this._y1=i,this},l.data=function(){var t=[];return this.visit((function(e){if(!e.length)do{t.push(e.data)}while(e=e.next)})),t},l.extent=function(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},l.find=function(t,e,n){var a,i,o,s,l,c,u,h=this._x0,f=this._y0,p=this._x1,d=this._y1,g=[],m=this._root;for(m&&g.push(new r(m,h,f,p,d)),null==n?n=1/0:(h=t-n,f=e-n,p=t+n,d=e+n,n*=n);c=g.pop();)if(!(!(m=c.node)||(i=c.x0)>p||(o=c.y0)>d||(s=c.x1)<h||(l=c.y1)<f))if(m.length){var v=(i+s)/2,y=(o+l)/2;g.push(new r(m[3],v,y,s,l),new r(m[2],i,y,v,l),new r(m[1],v,o,s,y),new r(m[0],i,o,v,y)),(u=(e>=y)<<1|t>=v)&&(c=g[g.length-1],g[g.length-1]=g[g.length-1-u],g[g.length-1-u]=c)}else{var x=t-+this._x.call(null,m.data),b=e-+this._y.call(null,m.data),_=x*x+b*b;if(_<n){var w=Math.sqrt(n=_);h=t-w,f=e-w,p=t+w,d=e+w,a=m.data}}return a},l.remove=function(t){if(isNaN(i=+this._x.call(null,t))||isNaN(o=+this._y.call(null,t)))return this;var e,r,n,a,i,o,s,l,c,u,h,f,p=this._root,d=this._x0,g=this._y0,m=this._x1,v=this._y1;if(!p)return this;if(p.length)for(;;){if((c=i>=(s=(d+m)/2))?d=s:m=s,(u=o>=(l=(g+v)/2))?g=l:v=l,e=p,!(p=p[h=u<<1|c]))return this;if(!p.length)break;(e[h+1&3]||e[h+2&3]||e[h+3&3])&&(r=e,f=h)}for(;p.data!==t;)if(n=p,!(p=p.next))return this;return(a=p.next)&&delete p.next,n?(a?n.next=a:delete n.next,this):e?(a?e[h]=a:delete e[h],(p=e[0]||e[1]||e[2]||e[3])&&p===(e[3]||e[2]||e[1]||e[0])&&!p.length&&(r?r[f]=p:this._root=p),this):(this._root=a,this)},l.removeAll=function(t){for(var e=0,r=t.length;e<r;++e)this.remove(t[e]);return this},l.root=function(){return this._root},l.size=function(){var t=0;return this.visit((function(e){if(!e.length)do{++t}while(e=e.next)})),t},l.visit=function(t){var e,n,a,i,o,s,l=[],c=this._root;for(c&&l.push(new r(c,this._x0,this._y0,this._x1,this._y1));e=l.pop();)if(!t(c=e.node,a=e.x0,i=e.y0,o=e.x1,s=e.y1)&&c.length){var u=(a+o)/2,h=(i+s)/2;(n=c[3])&&l.push(new r(n,u,h,o,s)),(n=c[2])&&l.push(new r(n,a,h,u,s)),(n=c[1])&&l.push(new r(n,u,i,o,h)),(n=c[0])&&l.push(new r(n,a,i,u,h))}return this},l.visitAfter=function(t){var e,n=[],a=[];for(this._root&&n.push(new r(this._root,this._x0,this._y0,this._x1,this._y1));e=n.pop();){var i=e.node;if(i.length){var o,s=e.x0,l=e.y0,c=e.x1,u=e.y1,h=(s+c)/2,f=(l+u)/2;(o=i[0])&&n.push(new r(o,s,l,h,f)),(o=i[1])&&n.push(new r(o,h,l,c,f)),(o=i[2])&&n.push(new r(o,s,f,h,u)),(o=i[3])&&n.push(new r(o,h,f,c,u))}a.push(e)}for(;e=a.pop();)t(e.node,e.x0,e.y0,e.x1,e.y1);return this},l.x=function(t){return arguments.length?(this._x=t,this):this._x},l.y=function(t){return arguments.length?(this._y=t,this):this._y},t.quadtree=i,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],165:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-path\")):a((n=n||self).d3=n.d3||{},n.d3)}(this,(function(t,e){\"use strict\";function r(t){return function(){return t}}var n=Math.abs,a=Math.atan2,i=Math.cos,o=Math.max,s=Math.min,l=Math.sin,c=Math.sqrt,u=Math.PI,h=u/2,f=2*u;function p(t){return t>1?0:t<-1?u:Math.acos(t)}function d(t){return t>=1?h:t<=-1?-h:Math.asin(t)}function g(t){return t.innerRadius}function m(t){return t.outerRadius}function v(t){return t.startAngle}function y(t){return t.endAngle}function x(t){return t&&t.padAngle}function b(t,e,r,n,a,i,o,s){var l=r-t,c=n-e,u=o-a,h=s-i,f=h*l-u*c;if(!(f*f<1e-12))return[t+(f=(u*(e-i)-h*(t-a))/f)*l,e+f*c]}function _(t,e,r,n,a,i,s){var l=t-r,u=e-n,h=(s?i:-i)/c(l*l+u*u),f=h*u,p=-h*l,d=t+f,g=e+p,m=r+f,v=n+p,y=(d+m)/2,x=(g+v)/2,b=m-d,_=v-g,w=b*b+_*_,T=a-i,k=d*v-m*g,M=(_<0?-1:1)*c(o(0,T*T*w-k*k)),A=(k*_-b*M)/w,S=(-k*b-_*M)/w,E=(k*_+b*M)/w,C=(-k*b+_*M)/w,L=A-y,P=S-x,I=E-y,z=C-x;return L*L+P*P>I*I+z*z&&(A=E,S=C),{cx:A,cy:S,x01:-f,y01:-p,x11:A*(a/T-1),y11:S*(a/T-1)}}function w(t){this._context=t}function T(t){return new w(t)}function k(t){return t[0]}function M(t){return t[1]}function A(){var t=k,n=M,a=r(!0),i=null,o=T,s=null;function l(r){var l,c,u,h=r.length,f=!1;for(null==i&&(s=o(u=e.path())),l=0;l<=h;++l)!(l<h&&a(c=r[l],l,r))===f&&((f=!f)?s.lineStart():s.lineEnd()),f&&s.point(+t(c,l,r),+n(c,l,r));if(u)return s=null,u+\"\"||null}return l.x=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),l):t},l.y=function(t){return arguments.length?(n=\"function\"==typeof t?t:r(+t),l):n},l.defined=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(!!t),l):a},l.curve=function(t){return arguments.length?(o=t,null!=i&&(s=o(i)),l):o},l.context=function(t){return arguments.length?(null==t?i=s=null:s=o(i=t),l):i},l}function S(){var t=k,n=null,a=r(0),i=M,o=r(!0),s=null,l=T,c=null;function u(r){var u,h,f,p,d,g=r.length,m=!1,v=new Array(g),y=new Array(g);for(null==s&&(c=l(d=e.path())),u=0;u<=g;++u){if(!(u<g&&o(p=r[u],u,r))===m)if(m=!m)h=u,c.areaStart(),c.lineStart();else{for(c.lineEnd(),c.lineStart(),f=u-1;f>=h;--f)c.point(v[f],y[f]);c.lineEnd(),c.areaEnd()}m&&(v[u]=+t(p,u,r),y[u]=+a(p,u,r),c.point(n?+n(p,u,r):v[u],i?+i(p,u,r):y[u]))}if(d)return c=null,d+\"\"||null}function h(){return A().defined(o).curve(l).context(s)}return u.x=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),n=null,u):t},u.x0=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),u):t},u.x1=function(t){return arguments.length?(n=null==t?null:\"function\"==typeof t?t:r(+t),u):n},u.y=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),i=null,u):a},u.y0=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),u):a},u.y1=function(t){return arguments.length?(i=null==t?null:\"function\"==typeof t?t:r(+t),u):i},u.lineX0=u.lineY0=function(){return h().x(t).y(a)},u.lineY1=function(){return h().x(t).y(i)},u.lineX1=function(){return h().x(n).y(a)},u.defined=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(!!t),u):o},u.curve=function(t){return arguments.length?(l=t,null!=s&&(c=l(s)),u):l},u.context=function(t){return arguments.length?(null==t?s=c=null:c=l(s=t),u):s},u}function E(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function C(t){return t}w.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}};var L=I(T);function P(t){this._curve=t}function I(t){function e(e){return new P(t(e))}return e._curve=t,e}function z(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(I(t)):e()._curve},t}function O(){return z(A().curve(L))}function D(){var t=S().curve(L),e=t.curve,r=t.lineX0,n=t.lineX1,a=t.lineY0,i=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return z(r())},delete t.lineX0,t.lineEndAngle=function(){return z(n())},delete t.lineX1,t.lineInnerRadius=function(){return z(a())},delete t.lineY0,t.lineOuterRadius=function(){return z(i())},delete t.lineY1,t.curve=function(t){return arguments.length?e(I(t)):e()._curve},t}function R(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}P.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};var F=Array.prototype.slice;function B(t){return t.source}function N(t){return t.target}function j(t){var n=B,a=N,i=k,o=M,s=null;function l(){var r,l=F.call(arguments),c=n.apply(this,l),u=a.apply(this,l);if(s||(s=r=e.path()),t(s,+i.apply(this,(l[0]=c,l)),+o.apply(this,l),+i.apply(this,(l[0]=u,l)),+o.apply(this,l)),r)return s=null,r+\"\"||null}return l.source=function(t){return arguments.length?(n=t,l):n},l.target=function(t){return arguments.length?(a=t,l):a},l.x=function(t){return arguments.length?(i=\"function\"==typeof t?t:r(+t),l):i},l.y=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(+t),l):o},l.context=function(t){return arguments.length?(s=null==t?null:t,l):s},l}function U(t,e,r,n,a){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,a,n,a)}function V(t,e,r,n,a){t.moveTo(e,r),t.bezierCurveTo(e,r=(r+a)/2,n,r,n,a)}function q(t,e,r,n,a){var i=R(e,r),o=R(e,r=(r+a)/2),s=R(n,r),l=R(n,a);t.moveTo(i[0],i[1]),t.bezierCurveTo(o[0],o[1],s[0],s[1],l[0],l[1])}var H={draw:function(t,e){var r=Math.sqrt(e/u);t.moveTo(r,0),t.arc(0,0,r,0,f)}},G={draw:function(t,e){var r=Math.sqrt(e/5)/2;t.moveTo(-3*r,-r),t.lineTo(-r,-r),t.lineTo(-r,-3*r),t.lineTo(r,-3*r),t.lineTo(r,-r),t.lineTo(3*r,-r),t.lineTo(3*r,r),t.lineTo(r,r),t.lineTo(r,3*r),t.lineTo(-r,3*r),t.lineTo(-r,r),t.lineTo(-3*r,r),t.closePath()}},Y=Math.sqrt(1/3),W=2*Y,Z={draw:function(t,e){var r=Math.sqrt(e/W),n=r*Y;t.moveTo(0,-r),t.lineTo(n,0),t.lineTo(0,r),t.lineTo(-n,0),t.closePath()}},X=Math.sin(u/10)/Math.sin(7*u/10),J=Math.sin(f/10)*X,K=-Math.cos(f/10)*X,Q={draw:function(t,e){var r=Math.sqrt(.8908130915292852*e),n=J*r,a=K*r;t.moveTo(0,-r),t.lineTo(n,a);for(var i=1;i<5;++i){var o=f*i/5,s=Math.cos(o),l=Math.sin(o);t.lineTo(l*r,-s*r),t.lineTo(s*n-l*a,l*n+s*a)}t.closePath()}},$={draw:function(t,e){var r=Math.sqrt(e),n=-r/2;t.rect(n,n,r,r)}},tt=Math.sqrt(3),et={draw:function(t,e){var r=-Math.sqrt(e/(3*tt));t.moveTo(0,2*r),t.lineTo(-tt*r,-r),t.lineTo(tt*r,-r),t.closePath()}},rt=-.5,nt=Math.sqrt(3)/2,at=1/Math.sqrt(12),it=3*(at/2+1),ot={draw:function(t,e){var r=Math.sqrt(e/it),n=r/2,a=r*at,i=n,o=r*at+r,s=-i,l=o;t.moveTo(n,a),t.lineTo(i,o),t.lineTo(s,l),t.lineTo(rt*n-nt*a,nt*n+rt*a),t.lineTo(rt*i-nt*o,nt*i+rt*o),t.lineTo(rt*s-nt*l,nt*s+rt*l),t.lineTo(rt*n+nt*a,rt*a-nt*n),t.lineTo(rt*i+nt*o,rt*o-nt*i),t.lineTo(rt*s+nt*l,rt*l-nt*s),t.closePath()}},st=[H,G,Z,$,Q,et,ot];function lt(){}function ct(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function ut(t){this._context=t}function ht(t){this._context=t}function ft(t){this._context=t}function pt(t,e){this._basis=new ut(t),this._beta=e}ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ct(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ht.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ft.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},pt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n,a=t[0],i=e[0],o=t[r]-a,s=e[r]-i,l=-1;++l<=r;)n=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(a+n*o),this._beta*e[l]+(1-this._beta)*(i+n*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};var dt=function t(e){function r(t){return 1===e?new ut(t):new pt(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function gt(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function mt(t,e){this._context=t,this._k=(1-e)/6}mt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:gt(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var vt=function t(e){function r(t){return new mt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function yt(t,e){this._context=t,this._k=(1-e)/6}yt.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var xt=function t(e){function r(t){return new yt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function bt(t,e){this._context=t,this._k=(1-e)/6}bt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var _t=function t(e){function r(t){return new bt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function wt(t,e,r){var n=t._x1,a=t._y1,i=t._x2,o=t._y2;if(t._l01_a>1e-12){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,a=(a*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>1e-12){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,u=3*t._l23_a*(t._l23_a+t._l12_a);i=(i*c+t._x1*t._l23_2a-e*t._l12_2a)/u,o=(o*c+t._y1*t._l23_2a-r*t._l12_2a)/u}t._context.bezierCurveTo(n,a,i,o,t._x2,t._y2)}function Tt(t,e){this._context=t,this._alpha=e}Tt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:wt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var kt=function t(e){function r(t){return e?new Tt(t,e):new mt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Mt(t,e){this._context=t,this._alpha=e}Mt.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:wt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var At=function t(e){function r(t){return e?new Mt(t,e):new yt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function St(t,e){this._context=t,this._alpha=e}St.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:wt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Et=function t(e){function r(t){return e?new St(t,e):new bt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Ct(t){this._context=t}function Lt(t){return t<0?-1:1}function Pt(t,e,r){var n=t._x1-t._x0,a=e-t._x1,i=(t._y1-t._y0)/(n||a<0&&-0),o=(r-t._y1)/(a||n<0&&-0),s=(i*a+o*n)/(n+a);return(Lt(i)+Lt(o))*Math.min(Math.abs(i),Math.abs(o),.5*Math.abs(s))||0}function It(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function zt(t,e,r){var n=t._x0,a=t._y0,i=t._x1,o=t._y1,s=(i-n)/3;t._context.bezierCurveTo(n+s,a+s*e,i-s,o-s*r,i,o)}function Ot(t){this._context=t}function Dt(t){this._context=new Rt(t)}function Rt(t){this._context=t}function Ft(t){this._context=t}function Bt(t){var e,r,n=t.length-1,a=new Array(n),i=new Array(n),o=new Array(n);for(a[0]=0,i[0]=2,o[0]=t[0]+2*t[1],e=1;e<n-1;++e)a[e]=1,i[e]=4,o[e]=4*t[e]+2*t[e+1];for(a[n-1]=2,i[n-1]=7,o[n-1]=8*t[n-1]+t[n],e=1;e<n;++e)r=a[e]/i[e-1],i[e]-=r,o[e]-=r*o[e-1];for(a[n-1]=o[n-1]/i[n-1],e=n-2;e>=0;--e)a[e]=(o[e]-a[e+1])/i[e];for(i[n-1]=(t[n]+a[n-1])/2,e=0;e<n-1;++e)i[e]=2*t[e+1]-a[e+1];return[a,i]}function Nt(t,e){this._context=t,this._t=e}function jt(t,e){if((a=t.length)>1)for(var r,n,a,i=1,o=t[e[0]],s=o.length;i<a;++i)for(n=o,o=t[e[i]],r=0;r<s;++r)o[r][1]+=o[r][0]=isNaN(n[r][1])?n[r][0]:n[r][1]}function Ut(t){for(var e=t.length,r=new Array(e);--e>=0;)r[e]=e;return r}function Vt(t,e){return t[e]}function qt(t){var e=t.map(Ht);return Ut(t).sort((function(t,r){return e[t]-e[r]}))}function Ht(t){for(var e,r=-1,n=0,a=t.length,i=-1/0;++r<a;)(e=+t[r][1])>i&&(i=e,n=r);return n}function Gt(t){var e=t.map(Yt);return Ut(t).sort((function(t,r){return e[t]-e[r]}))}function Yt(t){for(var e,r=0,n=-1,a=t.length;++n<a;)(e=+t[n][1])&&(r+=e);return r}Ct.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}},Ot.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:zt(this,this._t0,It(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){var r=NaN;if(e=+e,(t=+t)!==this._x1||e!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,zt(this,It(this,r=Pt(this,t,e)),r);break;default:zt(this,this._t0,r=Pt(this,t,e))}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}}},(Dt.prototype=Object.create(Ot.prototype)).point=function(t,e){Ot.prototype.point.call(this,e,t)},Rt.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,r,n,a,i){this._context.bezierCurveTo(e,t,n,r,i,a)}},Ft.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),2===r)this._context.lineTo(t[1],e[1]);else for(var n=Bt(t),a=Bt(e),i=0,o=1;o<r;++i,++o)this._context.bezierCurveTo(n[0][i],a[0][i],n[1][i],a[1][i],t[o],e[o]);(this._line||0!==this._line&&1===r)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,e){this._x.push(+t),this._y.push(+e)}},Nt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this._y=e}},t.arc=function(){var t=g,o=m,w=r(0),T=null,k=v,M=y,A=x,S=null;function E(){var r,g,m=+t.apply(this,arguments),v=+o.apply(this,arguments),y=k.apply(this,arguments)-h,x=M.apply(this,arguments)-h,E=n(x-y),C=x>y;if(S||(S=r=e.path()),v<m&&(g=v,v=m,m=g),v>1e-12)if(E>f-1e-12)S.moveTo(v*i(y),v*l(y)),S.arc(0,0,v,y,x,!C),m>1e-12&&(S.moveTo(m*i(x),m*l(x)),S.arc(0,0,m,x,y,C));else{var L,P,I=y,z=x,O=y,D=x,R=E,F=E,B=A.apply(this,arguments)/2,N=B>1e-12&&(T?+T.apply(this,arguments):c(m*m+v*v)),j=s(n(v-m)/2,+w.apply(this,arguments)),U=j,V=j;if(N>1e-12){var q=d(N/m*l(B)),H=d(N/v*l(B));(R-=2*q)>1e-12?(O+=q*=C?1:-1,D-=q):(R=0,O=D=(y+x)/2),(F-=2*H)>1e-12?(I+=H*=C?1:-1,z-=H):(F=0,I=z=(y+x)/2)}var G=v*i(I),Y=v*l(I),W=m*i(D),Z=m*l(D);if(j>1e-12){var X,J=v*i(z),K=v*l(z),Q=m*i(O),$=m*l(O);if(E<u&&(X=b(G,Y,Q,$,J,K,W,Z))){var tt=G-X[0],et=Y-X[1],rt=J-X[0],nt=K-X[1],at=1/l(p((tt*rt+et*nt)/(c(tt*tt+et*et)*c(rt*rt+nt*nt)))/2),it=c(X[0]*X[0]+X[1]*X[1]);U=s(j,(m-it)/(at-1)),V=s(j,(v-it)/(at+1))}}F>1e-12?V>1e-12?(L=_(Q,$,G,Y,v,V,C),P=_(J,K,W,Z,v,V,C),S.moveTo(L.cx+L.x01,L.cy+L.y01),V<j?S.arc(L.cx,L.cy,V,a(L.y01,L.x01),a(P.y01,P.x01),!C):(S.arc(L.cx,L.cy,V,a(L.y01,L.x01),a(L.y11,L.x11),!C),S.arc(0,0,v,a(L.cy+L.y11,L.cx+L.x11),a(P.cy+P.y11,P.cx+P.x11),!C),S.arc(P.cx,P.cy,V,a(P.y11,P.x11),a(P.y01,P.x01),!C))):(S.moveTo(G,Y),S.arc(0,0,v,I,z,!C)):S.moveTo(G,Y),m>1e-12&&R>1e-12?U>1e-12?(L=_(W,Z,J,K,m,-U,C),P=_(G,Y,Q,$,m,-U,C),S.lineTo(L.cx+L.x01,L.cy+L.y01),U<j?S.arc(L.cx,L.cy,U,a(L.y01,L.x01),a(P.y01,P.x01),!C):(S.arc(L.cx,L.cy,U,a(L.y01,L.x01),a(L.y11,L.x11),!C),S.arc(0,0,m,a(L.cy+L.y11,L.cx+L.x11),a(P.cy+P.y11,P.cx+P.x11),C),S.arc(P.cx,P.cy,U,a(P.y11,P.x11),a(P.y01,P.x01),!C))):S.arc(0,0,m,D,O,C):S.lineTo(W,Z)}else S.moveTo(0,0);if(S.closePath(),r)return S=null,r+\"\"||null}return E.centroid=function(){var e=(+t.apply(this,arguments)+ +o.apply(this,arguments))/2,r=(+k.apply(this,arguments)+ +M.apply(this,arguments))/2-u/2;return[i(r)*e,l(r)*e]},E.innerRadius=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),E):t},E.outerRadius=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(+t),E):o},E.cornerRadius=function(t){return arguments.length?(w=\"function\"==typeof t?t:r(+t),E):w},E.padRadius=function(t){return arguments.length?(T=null==t?null:\"function\"==typeof t?t:r(+t),E):T},E.startAngle=function(t){return arguments.length?(k=\"function\"==typeof t?t:r(+t),E):k},E.endAngle=function(t){return arguments.length?(M=\"function\"==typeof t?t:r(+t),E):M},E.padAngle=function(t){return arguments.length?(A=\"function\"==typeof t?t:r(+t),E):A},E.context=function(t){return arguments.length?(S=null==t?null:t,E):S},E},t.area=S,t.areaRadial=D,t.curveBasis=function(t){return new ut(t)},t.curveBasisClosed=function(t){return new ht(t)},t.curveBasisOpen=function(t){return new ft(t)},t.curveBundle=dt,t.curveCardinal=vt,t.curveCardinalClosed=xt,t.curveCardinalOpen=_t,t.curveCatmullRom=kt,t.curveCatmullRomClosed=At,t.curveCatmullRomOpen=Et,t.curveLinear=T,t.curveLinearClosed=function(t){return new Ct(t)},t.curveMonotoneX=function(t){return new Ot(t)},t.curveMonotoneY=function(t){return new Dt(t)},t.curveNatural=function(t){return new Ft(t)},t.curveStep=function(t){return new Nt(t,.5)},t.curveStepAfter=function(t){return new Nt(t,1)},t.curveStepBefore=function(t){return new Nt(t,0)},t.line=A,t.lineRadial=O,t.linkHorizontal=function(){return j(U)},t.linkRadial=function(){var t=j(q);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t},t.linkVertical=function(){return j(V)},t.pie=function(){var t=C,e=E,n=null,a=r(0),i=r(f),o=r(0);function s(r){var s,l,c,u,h,p=r.length,d=0,g=new Array(p),m=new Array(p),v=+a.apply(this,arguments),y=Math.min(f,Math.max(-f,i.apply(this,arguments)-v)),x=Math.min(Math.abs(y)/p,o.apply(this,arguments)),b=x*(y<0?-1:1);for(s=0;s<p;++s)(h=m[g[s]=s]=+t(r[s],s,r))>0&&(d+=h);for(null!=e?g.sort((function(t,r){return e(m[t],m[r])})):null!=n&&g.sort((function(t,e){return n(r[t],r[e])})),s=0,c=d?(y-p*b)/d:0;s<p;++s,v=u)l=g[s],u=v+((h=m[l])>0?h*c:0)+b,m[l]={data:r[l],index:s,value:h,startAngle:v,endAngle:u,padAngle:x};return m}return s.value=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),s):t},s.sortValues=function(t){return arguments.length?(e=t,n=null,s):e},s.sort=function(t){return arguments.length?(n=t,e=null,s):n},s.startAngle=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),s):a},s.endAngle=function(t){return arguments.length?(i=\"function\"==typeof t?t:r(+t),s):i},s.padAngle=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(+t),s):o},s},t.pointRadial=R,t.radialArea=D,t.radialLine=O,t.stack=function(){var t=r([]),e=Ut,n=jt,a=Vt;function i(r){var i,o,s=t.apply(this,arguments),l=r.length,c=s.length,u=new Array(c);for(i=0;i<c;++i){for(var h,f=s[i],p=u[i]=new Array(l),d=0;d<l;++d)p[d]=h=[0,+a(r[d],f,d,r)],h.data=r[d];p.key=f}for(i=0,o=e(u);i<c;++i)u[o[i]].index=i;return n(u,o),u}return i.keys=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(F.call(e)),i):t},i.value=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),i):a},i.order=function(t){return arguments.length?(e=null==t?Ut:\"function\"==typeof t?t:r(F.call(t)),i):e},i.offset=function(t){return arguments.length?(n=null==t?jt:t,i):n},i},t.stackOffsetDiverging=function(t,e){if((s=t.length)>0)for(var r,n,a,i,o,s,l=0,c=t[e[0]].length;l<c;++l)for(i=o=0,r=0;r<s;++r)(a=(n=t[e[r]][l])[1]-n[0])>0?(n[0]=i,n[1]=i+=a):a<0?(n[1]=o,n[0]=o+=a):(n[0]=0,n[1]=a)},t.stackOffsetExpand=function(t,e){if((n=t.length)>0){for(var r,n,a,i=0,o=t[0].length;i<o;++i){for(a=r=0;r<n;++r)a+=t[r][i][1]||0;if(a)for(r=0;r<n;++r)t[r][i][1]/=a}jt(t,e)}},t.stackOffsetNone=jt,t.stackOffsetSilhouette=function(t,e){if((r=t.length)>0){for(var r,n=0,a=t[e[0]],i=a.length;n<i;++n){for(var o=0,s=0;o<r;++o)s+=t[o][n][1]||0;a[n][1]+=a[n][0]=-s/2}jt(t,e)}},t.stackOffsetWiggle=function(t,e){if((a=t.length)>0&&(n=(r=t[e[0]]).length)>0){for(var r,n,a,i=0,o=1;o<n;++o){for(var s=0,l=0,c=0;s<a;++s){for(var u=t[e[s]],h=u[o][1]||0,f=(h-(u[o-1][1]||0))/2,p=0;p<s;++p){var d=t[e[p]];f+=(d[o][1]||0)-(d[o-1][1]||0)}l+=h,c+=f*h}r[o-1][1]+=r[o-1][0]=i,l&&(i-=c/l)}r[o-1][1]+=r[o-1][0]=i,jt(t,e)}},t.stackOrderAppearance=qt,t.stackOrderAscending=Gt,t.stackOrderDescending=function(t){return Gt(t).reverse()},t.stackOrderInsideOut=function(t){var e,r,n=t.length,a=t.map(Yt),i=qt(t),o=0,s=0,l=[],c=[];for(e=0;e<n;++e)r=i[e],o<s?(o+=a[r],l.push(r)):(s+=a[r],c.push(r));return c.reverse().concat(l)},t.stackOrderNone=Ut,t.stackOrderReverse=function(t){return Ut(t).reverse()},t.symbol=function(){var t=r(H),n=r(64),a=null;function i(){var r;if(a||(a=r=e.path()),t.apply(this,arguments).draw(a,+n.apply(this,arguments)),r)return a=null,r+\"\"||null}return i.type=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(e),i):t},i.size=function(t){return arguments.length?(n=\"function\"==typeof t?t:r(+t),i):n},i.context=function(t){return arguments.length?(a=null==t?null:t,i):a},i},t.symbolCircle=H,t.symbolCross=G,t.symbolDiamond=Z,t.symbolSquare=$,t.symbolStar=Q,t.symbolTriangle=et,t.symbolWye=ot,t.symbols=st,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-path\":163}],166:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-time\")):a((n=n||self).d3=n.d3||{},n.d3)}(this,(function(t,e){\"use strict\";function r(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function n(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function a(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function i(t){var i=t.dateTime,o=t.date,l=t.time,c=t.periods,u=t.days,h=t.shortDays,f=t.months,yt=t.shortMonths,xt=p(c),bt=d(c),_t=p(u),wt=d(u),Tt=p(h),kt=d(h),Mt=p(f),At=d(f),St=p(yt),Et=d(yt),Ct={a:function(t){return h[t.getDay()]},A:function(t){return u[t.getDay()]},b:function(t){return yt[t.getMonth()]},B:function(t){return f[t.getMonth()]},c:null,d:D,e:D,f:j,H:R,I:F,j:B,L:N,m:U,M:V,p:function(t){return c[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:mt,s:vt,S:q,u:H,U:G,V:Y,w:W,W:Z,x:null,X:null,y:X,Y:J,Z:K,\"%\":gt},Lt={a:function(t){return h[t.getUTCDay()]},A:function(t){return u[t.getUTCDay()]},b:function(t){return yt[t.getUTCMonth()]},B:function(t){return f[t.getUTCMonth()]},c:null,d:Q,e:Q,f:nt,H:$,I:tt,j:et,L:rt,m:at,M:it,p:function(t){return c[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:mt,s:vt,S:ot,u:st,U:lt,V:ct,w:ut,W:ht,x:null,X:null,y:ft,Y:pt,Z:dt,\"%\":gt},Pt={a:function(t,e,r){var n=Tt.exec(e.slice(r));return n?(t.w=kt[n[0].toLowerCase()],r+n[0].length):-1},A:function(t,e,r){var n=_t.exec(e.slice(r));return n?(t.w=wt[n[0].toLowerCase()],r+n[0].length):-1},b:function(t,e,r){var n=St.exec(e.slice(r));return n?(t.m=Et[n[0].toLowerCase()],r+n[0].length):-1},B:function(t,e,r){var n=Mt.exec(e.slice(r));return n?(t.m=At[n[0].toLowerCase()],r+n[0].length):-1},c:function(t,e,r){return Ot(t,i,e,r)},d:M,e:M,f:P,H:S,I:S,j:A,L:L,m:k,M:E,p:function(t,e,r){var n=xt.exec(e.slice(r));return n?(t.p=bt[n[0].toLowerCase()],r+n[0].length):-1},q:T,Q:z,s:O,S:C,u:m,U:v,V:y,w:g,W:x,x:function(t,e,r){return Ot(t,o,e,r)},X:function(t,e,r){return Ot(t,l,e,r)},y:_,Y:b,Z:w,\"%\":I};function It(t,e){return function(r){var n,a,i,o=[],l=-1,c=0,u=t.length;for(r instanceof Date||(r=new Date(+r));++l<u;)37===t.charCodeAt(l)&&(o.push(t.slice(c,l)),null!=(a=s[n=t.charAt(++l)])?n=t.charAt(++l):a=\"e\"===n?\" \":\"0\",(i=e[n])&&(n=i(r,a)),o.push(n),c=l+1);return o.push(t.slice(c,l)),o.join(\"\")}}function zt(t,i){return function(o){var s,l,c=a(1900,void 0,1);if(Ot(c,t,o+=\"\",0)!=o.length)return null;if(\"Q\"in c)return new Date(c.Q);if(\"s\"in c)return new Date(1e3*c.s+(\"L\"in c?c.L:0));if(i&&!(\"Z\"in c)&&(c.Z=0),\"p\"in c&&(c.H=c.H%12+12*c.p),void 0===c.m&&(c.m=\"q\"in c?c.q:0),\"V\"in c){if(c.V<1||c.V>53)return null;\"w\"in c||(c.w=1),\"Z\"in c?(l=(s=n(a(c.y,0,1))).getUTCDay(),s=l>4||0===l?e.utcMonday.ceil(s):e.utcMonday(s),s=e.utcDay.offset(s,7*(c.V-1)),c.y=s.getUTCFullYear(),c.m=s.getUTCMonth(),c.d=s.getUTCDate()+(c.w+6)%7):(l=(s=r(a(c.y,0,1))).getDay(),s=l>4||0===l?e.timeMonday.ceil(s):e.timeMonday(s),s=e.timeDay.offset(s,7*(c.V-1)),c.y=s.getFullYear(),c.m=s.getMonth(),c.d=s.getDate()+(c.w+6)%7)}else(\"W\"in c||\"U\"in c)&&(\"w\"in c||(c.w=\"u\"in c?c.u%7:\"W\"in c?1:0),l=\"Z\"in c?n(a(c.y,0,1)).getUTCDay():r(a(c.y,0,1)).getDay(),c.m=0,c.d=\"W\"in c?(c.w+6)%7+7*c.W-(l+5)%7:c.w+7*c.U-(l+6)%7);return\"Z\"in c?(c.H+=c.Z/100|0,c.M+=c.Z%100,n(c)):r(c)}}function Ot(t,e,r,n){for(var a,i,o=0,l=e.length,c=r.length;o<l;){if(n>=c)return-1;if(37===(a=e.charCodeAt(o++))){if(a=e.charAt(o++),!(i=Pt[a in s?e.charAt(o++):a])||(n=i(t,r,n))<0)return-1}else if(a!=r.charCodeAt(n++))return-1}return n}return Ct.x=It(o,Ct),Ct.X=It(l,Ct),Ct.c=It(i,Ct),Lt.x=It(o,Lt),Lt.X=It(l,Lt),Lt.c=It(i,Lt),{format:function(t){var e=It(t+=\"\",Ct);return e.toString=function(){return t},e},parse:function(t){var e=zt(t+=\"\",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=It(t+=\"\",Lt);return e.toString=function(){return t},e},utcParse:function(t){var e=zt(t+=\"\",!0);return e.toString=function(){return t},e}}}var o,s={\"-\":\"\",_:\" \",0:\"0\"},l=/^\\s*\\d+/,c=/^%/,u=/[\\\\^$*+?|[\\]().{}]/g;function h(t,e,r){var n=t<0?\"-\":\"\",a=(n?-t:t)+\"\",i=a.length;return n+(i<r?new Array(r-i+1).join(e)+a:a)}function f(t){return t.replace(u,\"\\\\$&\")}function p(t){return new RegExp(\"^(?:\"+t.map(f).join(\"|\")+\")\",\"i\")}function d(t){for(var e={},r=-1,n=t.length;++r<n;)e[t[r].toLowerCase()]=r;return e}function g(t,e,r){var n=l.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function m(t,e,r){var n=l.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function v(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function y(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function x(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function b(t,e,r){var n=l.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function _(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function w(t,e,r){var n=/^(Z)|([+-]\\d\\d)(?::?(\\d\\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||\"00\")),r+n[0].length):-1}function T(t,e,r){var n=l.exec(e.slice(r,r+1));return n?(t.q=3*n[0]-3,r+n[0].length):-1}function k(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function M(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function A(t,e,r){var n=l.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function S(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function E(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function C(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function L(t,e,r){var n=l.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function P(t,e,r){var n=l.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function I(t,e,r){var n=c.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function z(t,e,r){var n=l.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function O(t,e,r){var n=l.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function D(t,e){return h(t.getDate(),e,2)}function R(t,e){return h(t.getHours(),e,2)}function F(t,e){return h(t.getHours()%12||12,e,2)}function B(t,r){return h(1+e.timeDay.count(e.timeYear(t),t),r,3)}function N(t,e){return h(t.getMilliseconds(),e,3)}function j(t,e){return N(t,e)+\"000\"}function U(t,e){return h(t.getMonth()+1,e,2)}function V(t,e){return h(t.getMinutes(),e,2)}function q(t,e){return h(t.getSeconds(),e,2)}function H(t){var e=t.getDay();return 0===e?7:e}function G(t,r){return h(e.timeSunday.count(e.timeYear(t)-1,t),r,2)}function Y(t,r){var n=t.getDay();return t=n>=4||0===n?e.timeThursday(t):e.timeThursday.ceil(t),h(e.timeThursday.count(e.timeYear(t),t)+(4===e.timeYear(t).getDay()),r,2)}function W(t){return t.getDay()}function Z(t,r){return h(e.timeMonday.count(e.timeYear(t)-1,t),r,2)}function X(t,e){return h(t.getFullYear()%100,e,2)}function J(t,e){return h(t.getFullYear()%1e4,e,4)}function K(t){var e=t.getTimezoneOffset();return(e>0?\"-\":(e*=-1,\"+\"))+h(e/60|0,\"0\",2)+h(e%60,\"0\",2)}function Q(t,e){return h(t.getUTCDate(),e,2)}function $(t,e){return h(t.getUTCHours(),e,2)}function tt(t,e){return h(t.getUTCHours()%12||12,e,2)}function et(t,r){return h(1+e.utcDay.count(e.utcYear(t),t),r,3)}function rt(t,e){return h(t.getUTCMilliseconds(),e,3)}function nt(t,e){return rt(t,e)+\"000\"}function at(t,e){return h(t.getUTCMonth()+1,e,2)}function it(t,e){return h(t.getUTCMinutes(),e,2)}function ot(t,e){return h(t.getUTCSeconds(),e,2)}function st(t){var e=t.getUTCDay();return 0===e?7:e}function lt(t,r){return h(e.utcSunday.count(e.utcYear(t)-1,t),r,2)}function ct(t,r){var n=t.getUTCDay();return t=n>=4||0===n?e.utcThursday(t):e.utcThursday.ceil(t),h(e.utcThursday.count(e.utcYear(t),t)+(4===e.utcYear(t).getUTCDay()),r,2)}function ut(t){return t.getUTCDay()}function ht(t,r){return h(e.utcMonday.count(e.utcYear(t)-1,t),r,2)}function ft(t,e){return h(t.getUTCFullYear()%100,e,2)}function pt(t,e){return h(t.getUTCFullYear()%1e4,e,4)}function dt(){return\"+0000\"}function gt(){return\"%\"}function mt(t){return+t}function vt(t){return Math.floor(+t/1e3)}function yt(e){return o=i(e),t.timeFormat=o.format,t.timeParse=o.parse,t.utcFormat=o.utcFormat,t.utcParse=o.utcParse,o}yt({dateTime:\"%x, %X\",date:\"%-m/%-d/%Y\",time:\"%-I:%M:%S %p\",periods:[\"AM\",\"PM\"],days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"]});var xt=Date.prototype.toISOString?function(t){return t.toISOString()}:t.utcFormat(\"%Y-%m-%dT%H:%M:%S.%LZ\");var bt=+new Date(\"2000-01-01T00:00:00.000Z\")?function(t){var e=new Date(t);return isNaN(e)?null:e}:t.utcParse(\"%Y-%m-%dT%H:%M:%S.%LZ\");t.isoFormat=xt,t.isoParse=bt,t.timeFormatDefaultLocale=yt,t.timeFormatLocale=i,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-time\":167}],167:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";var e=new Date,r=new Date;function n(t,a,i,o){function s(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return s.floor=function(e){return t(e=new Date(+e)),e},s.ceil=function(e){return t(e=new Date(e-1)),a(e,1),t(e),e},s.round=function(t){var e=s(t),r=s.ceil(t);return t-e<r-t?e:r},s.offset=function(t,e){return a(t=new Date(+t),null==e?1:Math.floor(e)),t},s.range=function(e,r,n){var i,o=[];if(e=s.ceil(e),n=null==n?1:Math.floor(n),!(e<r&&n>0))return o;do{o.push(i=new Date(+e)),a(e,n),t(e)}while(i<e&&e<r);return o},s.filter=function(e){return n((function(r){if(r>=r)for(;t(r),!e(r);)r.setTime(r-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;a(t,-1),!e(t););else for(;--r>=0;)for(;a(t,1),!e(t););}))},i&&(s.count=function(n,a){return e.setTime(+n),r.setTime(+a),t(e),t(r),Math.floor(i(e,r))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(o?function(e){return o(e)%t==0}:function(e){return s.count(0,e)%t==0}):s:null}),s}var a=n((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));a.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?n((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,r){e.setTime(+e+r*t)}),(function(e,r){return(r-e)/t})):a:null};var i=a.range,o=n((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+1e3*e)}),(function(t,e){return(e-t)/1e3}),(function(t){return t.getUTCSeconds()})),s=o.range,l=n((function(t){t.setTime(t-t.getMilliseconds()-1e3*t.getSeconds())}),(function(t,e){t.setTime(+t+6e4*e)}),(function(t,e){return(e-t)/6e4}),(function(t){return t.getMinutes()})),c=l.range,u=n((function(t){t.setTime(t-t.getMilliseconds()-1e3*t.getSeconds()-6e4*t.getMinutes())}),(function(t,e){t.setTime(+t+36e5*e)}),(function(t,e){return(e-t)/36e5}),(function(t){return t.getHours()})),h=u.range,f=n((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-6e4*(e.getTimezoneOffset()-t.getTimezoneOffset()))/864e5}),(function(t){return t.getDate()-1})),p=f.range;function d(t){return n((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-6e4*(e.getTimezoneOffset()-t.getTimezoneOffset()))/6048e5}))}var g=d(0),m=d(1),v=d(2),y=d(3),x=d(4),b=d(5),_=d(6),w=g.range,T=m.range,k=v.range,M=y.range,A=x.range,S=b.range,E=_.range,C=n((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),L=C.range,P=n((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));P.every=function(t){return isFinite(t=Math.floor(t))&&t>0?n((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,r){e.setFullYear(e.getFullYear()+r*t)})):null};var I=P.range,z=n((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+6e4*e)}),(function(t,e){return(e-t)/6e4}),(function(t){return t.getUTCMinutes()})),O=z.range,D=n((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+36e5*e)}),(function(t,e){return(e-t)/36e5}),(function(t){return t.getUTCHours()})),R=D.range,F=n((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/864e5}),(function(t){return t.getUTCDate()-1})),B=F.range;function N(t){return n((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/6048e5}))}var j=N(0),U=N(1),V=N(2),q=N(3),H=N(4),G=N(5),Y=N(6),W=j.range,Z=U.range,X=V.range,J=q.range,K=H.range,Q=G.range,$=Y.range,tt=n((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()})),et=tt.range,rt=n((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));rt.every=function(t){return isFinite(t=Math.floor(t))&&t>0?n((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,r){e.setUTCFullYear(e.getUTCFullYear()+r*t)})):null};var nt=rt.range;t.timeDay=f,t.timeDays=p,t.timeFriday=b,t.timeFridays=S,t.timeHour=u,t.timeHours=h,t.timeInterval=n,t.timeMillisecond=a,t.timeMilliseconds=i,t.timeMinute=l,t.timeMinutes=c,t.timeMonday=m,t.timeMondays=T,t.timeMonth=C,t.timeMonths=L,t.timeSaturday=_,t.timeSaturdays=E,t.timeSecond=o,t.timeSeconds=s,t.timeSunday=g,t.timeSundays=w,t.timeThursday=x,t.timeThursdays=A,t.timeTuesday=v,t.timeTuesdays=k,t.timeWednesday=y,t.timeWednesdays=M,t.timeWeek=g,t.timeWeeks=w,t.timeYear=P,t.timeYears=I,t.utcDay=F,t.utcDays=B,t.utcFriday=G,t.utcFridays=Q,t.utcHour=D,t.utcHours=R,t.utcMillisecond=a,t.utcMilliseconds=i,t.utcMinute=z,t.utcMinutes=O,t.utcMonday=U,t.utcMondays=Z,t.utcMonth=tt,t.utcMonths=et,t.utcSaturday=Y,t.utcSaturdays=$,t.utcSecond=o,t.utcSeconds=s,t.utcSunday=j,t.utcSundays=W,t.utcThursday=H,t.utcThursdays=K,t.utcTuesday=V,t.utcTuesdays=X,t.utcWednesday=q,t.utcWednesdays=J,t.utcWeek=j,t.utcWeeks=W,t.utcYear=rt,t.utcYears=nt,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],168:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";var e,r,n=0,a=0,i=0,o=0,s=0,l=0,c=\"object\"==typeof performance&&performance.now?performance:Date,u=\"object\"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function h(){return s||(u(f),s=c.now()+l)}function f(){s=0}function p(){this._call=this._time=this._next=null}function d(t,e,r){var n=new p;return n.restart(t,e,r),n}function g(){h(),++n;for(var t,r=e;r;)(t=s-r._time)>=0&&r._call.call(null,t),r=r._next;--n}function m(){s=(o=c.now())+l,n=a=0;try{g()}finally{n=0,function(){var t,n,a=e,i=1/0;for(;a;)a._call?(i>a._time&&(i=a._time),t=a,a=a._next):(n=a._next,a._next=null,a=t?t._next=n:e=n);r=t,y(i)}(),s=0}}function v(){var t=c.now(),e=t-o;e>1e3&&(l-=e,o=t)}function y(t){n||(a&&(a=clearTimeout(a)),t-s>24?(t<1/0&&(a=setTimeout(m,t-c.now()-l)),i&&(i=clearInterval(i))):(i||(o=c.now(),i=setInterval(v,1e3)),n=1,u(m)))}p.prototype=d.prototype={constructor:p,restart:function(t,n,a){if(\"function\"!=typeof t)throw new TypeError(\"callback is not a function\");a=(null==a?h():+a)+(null==n?0:+n),this._next||r===this||(r?r._next=this:e=this,r=this),this._call=t,this._time=a,y()},stop:function(){this._call&&(this._call=null,this._time=1/0,y())}},t.interval=function(t,e,r){var n=new p,a=e;return null==e?(n.restart(t,e,r),n):(e=+e,r=null==r?h():+r,n.restart((function i(o){o+=a,n.restart(i,a+=e,r),t(o)}),e,r),n)},t.now=h,t.timeout=function(t,e,r){var n=new p;return e=null==e?0:+e,n.restart((function(r){n.stop(),t(r+e)}),e,r),n},t.timer=d,t.timerFlush=g,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],169:[function(t,e,r){!function(){var t={version:\"3.5.17\"},r=[].slice,n=function(t){return r.call(t)},a=this.document;function i(t){return t&&(t.ownerDocument||t.document||t).documentElement}function o(t){return t&&(t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView)}if(a)try{n(a.documentElement.childNodes)[0].nodeType}catch(t){n=function(t){for(var e=t.length,r=new Array(e);e--;)r[e]=t[e];return r}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement(\"DIV\").style.setProperty(\"opacity\",0,\"\")}catch(t){var s=this.Element.prototype,l=s.setAttribute,c=s.setAttributeNS,u=this.CSSStyleDeclaration.prototype,h=u.setProperty;s.setAttribute=function(t,e){l.call(this,t,e+\"\")},s.setAttributeNS=function(t,e,r){c.call(this,t,e,r+\"\")},u.setProperty=function(t,e,r){h.call(this,t,e+\"\",r)}}function f(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function p(t){return null===t?NaN:+t}function d(t){return!isNaN(t)}function g(t){return{left:function(e,r,n,a){for(arguments.length<3&&(n=0),arguments.length<4&&(a=e.length);n<a;){var i=n+a>>>1;t(e[i],r)<0?n=i+1:a=i}return n},right:function(e,r,n,a){for(arguments.length<3&&(n=0),arguments.length<4&&(a=e.length);n<a;){var i=n+a>>>1;t(e[i],r)>0?a=i:n=i+1}return n}}}t.ascending=f,t.descending=function(t,e){return e<t?-1:e>t?1:e>=t?0:NaN},t.min=function(t,e){var r,n,a=-1,i=t.length;if(1===arguments.length){for(;++a<i;)if(null!=(n=t[a])&&n>=n){r=n;break}for(;++a<i;)null!=(n=t[a])&&r>n&&(r=n)}else{for(;++a<i;)if(null!=(n=e.call(t,t[a],a))&&n>=n){r=n;break}for(;++a<i;)null!=(n=e.call(t,t[a],a))&&r>n&&(r=n)}return r},t.max=function(t,e){var r,n,a=-1,i=t.length;if(1===arguments.length){for(;++a<i;)if(null!=(n=t[a])&&n>=n){r=n;break}for(;++a<i;)null!=(n=t[a])&&n>r&&(r=n)}else{for(;++a<i;)if(null!=(n=e.call(t,t[a],a))&&n>=n){r=n;break}for(;++a<i;)null!=(n=e.call(t,t[a],a))&&n>r&&(r=n)}return r},t.extent=function(t,e){var r,n,a,i=-1,o=t.length;if(1===arguments.length){for(;++i<o;)if(null!=(n=t[i])&&n>=n){r=a=n;break}for(;++i<o;)null!=(n=t[i])&&(r>n&&(r=n),a<n&&(a=n))}else{for(;++i<o;)if(null!=(n=e.call(t,t[i],i))&&n>=n){r=a=n;break}for(;++i<o;)null!=(n=e.call(t,t[i],i))&&(r>n&&(r=n),a<n&&(a=n))}return[r,a]},t.sum=function(t,e){var r,n=0,a=t.length,i=-1;if(1===arguments.length)for(;++i<a;)d(r=+t[i])&&(n+=r);else for(;++i<a;)d(r=+e.call(t,t[i],i))&&(n+=r);return n},t.mean=function(t,e){var r,n=0,a=t.length,i=-1,o=a;if(1===arguments.length)for(;++i<a;)d(r=p(t[i]))?n+=r:--o;else for(;++i<a;)d(r=p(e.call(t,t[i],i)))?n+=r:--o;if(o)return n/o},t.quantile=function(t,e){var r=(t.length-1)*e+1,n=Math.floor(r),a=+t[n-1],i=r-n;return i?a+i*(t[n]-a):a},t.median=function(e,r){var n,a=[],i=e.length,o=-1;if(1===arguments.length)for(;++o<i;)d(n=p(e[o]))&&a.push(n);else for(;++o<i;)d(n=p(r.call(e,e[o],o)))&&a.push(n);if(a.length)return t.quantile(a.sort(f),.5)},t.variance=function(t,e){var r,n,a=t.length,i=0,o=0,s=-1,l=0;if(1===arguments.length)for(;++s<a;)d(r=p(t[s]))&&(o+=(n=r-i)*(r-(i+=n/++l)));else for(;++s<a;)d(r=p(e.call(t,t[s],s)))&&(o+=(n=r-i)*(r-(i+=n/++l)));if(l>1)return o/(l-1)},t.deviation=function(){var e=t.variance.apply(this,arguments);return e?Math.sqrt(e):e};var m=g(f);function v(t){return t.length}t.bisectLeft=m.left,t.bisect=t.bisectRight=m.right,t.bisector=function(t){return g(1===t.length?function(e,r){return f(t(e),r)}:t)},t.shuffle=function(t,e,r){(i=arguments.length)<3&&(r=t.length,i<2&&(e=0));for(var n,a,i=r-e;i;)a=Math.random()*i--|0,n=t[i+e],t[i+e]=t[a+e],t[a+e]=n;return t},t.permute=function(t,e){for(var r=e.length,n=new Array(r);r--;)n[r]=t[e[r]];return n},t.pairs=function(t){for(var e=0,r=t.length-1,n=t[0],a=new Array(r<0?0:r);e<r;)a[e]=[n,n=t[++e]];return a},t.transpose=function(e){if(!(i=e.length))return[];for(var r=-1,n=t.min(e,v),a=new Array(n);++r<n;)for(var i,o=-1,s=a[r]=new Array(i);++o<i;)s[o]=e[o][r];return a},t.zip=function(){return t.transpose(arguments)},t.keys=function(t){var e=[];for(var r in t)e.push(r);return e},t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.entries=function(t){var e=[];for(var r in t)e.push({key:r,value:t[r]});return e},t.merge=function(t){for(var e,r,n,a=t.length,i=-1,o=0;++i<a;)o+=t[i].length;for(r=new Array(o);--a>=0;)for(e=(n=t[a]).length;--e>=0;)r[--o]=n[e];return r};var y=Math.abs;function x(t){for(var e=1;t*e%1;)e*=10;return e}function b(t,e){for(var r in e)Object.defineProperty(t.prototype,r,{value:e[r],enumerable:!1})}function _(){this._=Object.create(null)}t.range=function(t,e,r){if(arguments.length<3&&(r=1,arguments.length<2&&(e=t,t=0)),(e-t)/r==1/0)throw new Error(\"infinite range\");var n,a=[],i=x(y(r)),o=-1;if(t*=i,e*=i,(r*=i)<0)for(;(n=t+r*++o)>e;)a.push(n/i);else for(;(n=t+r*++o)<e;)a.push(n/i);return a},t.map=function(t,e){var r=new _;if(t instanceof _)t.forEach((function(t,e){r.set(t,e)}));else if(Array.isArray(t)){var n,a=-1,i=t.length;if(1===arguments.length)for(;++a<i;)r.set(a,t[a]);else for(;++a<i;)r.set(e.call(t,n=t[a],a),n)}else for(var o in t)r.set(o,t[o]);return r};function w(t){return\"__proto__\"==(t+=\"\")||\"\\0\"===t[0]?\"\\0\"+t:t}function T(t){return\"\\0\"===(t+=\"\")[0]?t.slice(1):t}function k(t){return w(t)in this._}function M(t){return(t=w(t))in this._&&delete this._[t]}function A(){var t=[];for(var e in this._)t.push(T(e));return t}function S(){var t=0;for(var e in this._)++t;return t}function E(){for(var t in this._)return!1;return!0}function C(){this._=Object.create(null)}function L(t){return t}function P(t,e,r){return function(){var n=r.apply(e,arguments);return n===e?t:n}}function I(t,e){if(e in t)return e;e=e.charAt(0).toUpperCase()+e.slice(1);for(var r=0,n=z.length;r<n;++r){var a=z[r]+e;if(a in t)return a}}b(_,{has:k,get:function(t){return this._[w(t)]},set:function(t,e){return this._[w(t)]=e},remove:M,keys:A,values:function(){var t=[];for(var e in this._)t.push(this._[e]);return t},entries:function(){var t=[];for(var e in this._)t.push({key:T(e),value:this._[e]});return t},size:S,empty:E,forEach:function(t){for(var e in this._)t.call(this,T(e),this._[e])}}),t.nest=function(){var e,r,n={},a=[],i=[];function o(t,i,s){if(s>=a.length)return r?r.call(n,i):e?i.sort(e):i;for(var l,c,u,h,f=-1,p=i.length,d=a[s++],g=new _;++f<p;)(h=g.get(l=d(c=i[f])))?h.push(c):g.set(l,[c]);return t?(c=t(),u=function(e,r){c.set(e,o(t,r,s))}):(c={},u=function(e,r){c[e]=o(t,r,s)}),g.forEach(u),c}return n.map=function(t,e){return o(e,t,0)},n.entries=function(e){return function t(e,r){if(r>=a.length)return e;var n=[],o=i[r++];return e.forEach((function(e,a){n.push({key:e,values:t(a,r)})})),o?n.sort((function(t,e){return o(t.key,e.key)})):n}(o(t.map,e,0),0)},n.key=function(t){return a.push(t),n},n.sortKeys=function(t){return i[a.length-1]=t,n},n.sortValues=function(t){return e=t,n},n.rollup=function(t){return r=t,n},n},t.set=function(t){var e=new C;if(t)for(var r=0,n=t.length;r<n;++r)e.add(t[r]);return e},b(C,{has:k,add:function(t){return this._[w(t+=\"\")]=!0,t},remove:M,values:A,size:S,empty:E,forEach:function(t){for(var e in this._)t.call(this,T(e))}}),t.behavior={},t.rebind=function(t,e){for(var r,n=1,a=arguments.length;++n<a;)t[r=arguments[n]]=P(t,e,e[r]);return t};var z=[\"webkit\",\"ms\",\"moz\",\"Moz\",\"o\",\"O\"];function O(){}function D(){}function R(t){var e=[],r=new _;function n(){for(var r,n=e,a=-1,i=n.length;++a<i;)(r=n[a].on)&&r.apply(this,arguments);return t}return n.on=function(n,a){var i,o=r.get(n);return arguments.length<2?o&&o.on:(o&&(o.on=null,e=e.slice(0,i=e.indexOf(o)).concat(e.slice(i+1)),r.remove(n)),a&&e.push(r.set(n,{on:a})),t)},n}function F(){t.event.preventDefault()}function B(){for(var e,r=t.event;e=r.sourceEvent;)r=e;return r}function N(e){for(var r=new D,n=0,a=arguments.length;++n<a;)r[arguments[n]]=R(r);return r.of=function(n,a){return function(i){try{var o=i.sourceEvent=t.event;i.target=e,t.event=i,r[i.type].apply(n,a)}finally{t.event=o}}},r}t.dispatch=function(){for(var t=new D,e=-1,r=arguments.length;++e<r;)t[arguments[e]]=R(t);return t},D.prototype.on=function(t,e){var r=t.indexOf(\".\"),n=\"\";if(r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),t)return arguments.length<2?this[t].on(n):this[t].on(n,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(n,null);return this}},t.event=null,t.requote=function(t){return t.replace(j,\"\\\\$&\")};var j=/[\\\\\\^\\$\\*\\+\\?\\|\\[\\]\\(\\)\\.\\{\\}]/g,U={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var r in e)t[r]=e[r]};function V(t){return U(t,Y),t}var q=function(t,e){return e.querySelector(t)},H=function(t,e){return e.querySelectorAll(t)},G=function(t,e){var r=t.matches||t[I(t,\"matchesSelector\")];return(G=function(t,e){return r.call(t,e)})(t,e)};\"function\"==typeof Sizzle&&(q=function(t,e){return Sizzle(t,e)[0]||null},H=Sizzle,G=Sizzle.matchesSelector),t.selection=function(){return t.select(a.documentElement)};var Y=t.selection.prototype=[];function W(t){return\"function\"==typeof t?t:function(){return q(t,this)}}function Z(t){return\"function\"==typeof t?t:function(){return H(t,this)}}Y.select=function(t){var e,r,n,a,i=[];t=W(t);for(var o=-1,s=this.length;++o<s;){i.push(e=[]),e.parentNode=(n=this[o]).parentNode;for(var l=-1,c=n.length;++l<c;)(a=n[l])?(e.push(r=t.call(a,a.__data__,l,o)),r&&\"__data__\"in a&&(r.__data__=a.__data__)):e.push(null)}return V(i)},Y.selectAll=function(t){var e,r,a=[];t=Z(t);for(var i=-1,o=this.length;++i<o;)for(var s=this[i],l=-1,c=s.length;++l<c;)(r=s[l])&&(a.push(e=n(t.call(r,r.__data__,l,i))),e.parentNode=r);return V(a)};var X=\"http://www.w3.org/1999/xhtml\",J={svg:\"http://www.w3.org/2000/svg\",xhtml:X,xlink:\"http://www.w3.org/1999/xlink\",xml:\"http://www.w3.org/XML/1998/namespace\",xmlns:\"http://www.w3.org/2000/xmlns/\"};function K(e,r){return e=t.ns.qualify(e),null==r?e.local?function(){this.removeAttributeNS(e.space,e.local)}:function(){this.removeAttribute(e)}:\"function\"==typeof r?e.local?function(){var t=r.apply(this,arguments);null==t?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,t)}:function(){var t=r.apply(this,arguments);null==t?this.removeAttribute(e):this.setAttribute(e,t)}:e.local?function(){this.setAttributeNS(e.space,e.local,r)}:function(){this.setAttribute(e,r)}}function Q(t){return t.trim().replace(/\\s+/g,\" \")}function $(e){return new RegExp(\"(?:^|\\\\s+)\"+t.requote(e)+\"(?:\\\\s+|$)\",\"g\")}function tt(t){return(t+\"\").trim().split(/^|\\s+/)}function et(t,e){var r=(t=tt(t).map(rt)).length;return\"function\"==typeof e?function(){for(var n=-1,a=e.apply(this,arguments);++n<r;)t[n](this,a)}:function(){for(var n=-1;++n<r;)t[n](this,e)}}function rt(t){var e=$(t);return function(r,n){if(a=r.classList)return n?a.add(t):a.remove(t);var a=r.getAttribute(\"class\")||\"\";n?(e.lastIndex=0,e.test(a)||r.setAttribute(\"class\",Q(a+\" \"+t))):r.setAttribute(\"class\",Q(a.replace(e,\" \")))}}function nt(t,e,r){return null==e?function(){this.style.removeProperty(t)}:\"function\"==typeof e?function(){var n=e.apply(this,arguments);null==n?this.style.removeProperty(t):this.style.setProperty(t,n,r)}:function(){this.style.setProperty(t,e,r)}}function at(t,e){return null==e?function(){delete this[t]}:\"function\"==typeof e?function(){var r=e.apply(this,arguments);null==r?delete this[t]:this[t]=r}:function(){this[t]=e}}function it(e){return\"function\"==typeof e?e:(e=t.ns.qualify(e)).local?function(){return this.ownerDocument.createElementNS(e.space,e.local)}:function(){var t=this.ownerDocument,r=this.namespaceURI;return r===X&&t.documentElement.namespaceURI===X?t.createElement(e):t.createElementNS(r,e)}}function ot(){var t=this.parentNode;t&&t.removeChild(this)}function st(t){return{__data__:t}}function lt(t){return function(){return G(this,t)}}function ct(t){return arguments.length||(t=f),function(e,r){return e&&r?t(e.__data__,r.__data__):!e-!r}}function ut(t,e){for(var r=0,n=t.length;r<n;r++)for(var a,i=t[r],o=0,s=i.length;o<s;o++)(a=i[o])&&e(a,o,r);return t}function ht(t){return U(t,ft),t}t.ns={prefix:J,qualify:function(t){var e=t.indexOf(\":\"),r=t;return e>=0&&\"xmlns\"!==(r=t.slice(0,e))&&(t=t.slice(e+1)),J.hasOwnProperty(r)?{space:J[r],local:t}:t}},Y.attr=function(e,r){if(arguments.length<2){if(\"string\"==typeof e){var n=this.node();return(e=t.ns.qualify(e)).local?n.getAttributeNS(e.space,e.local):n.getAttribute(e)}for(r in e)this.each(K(r,e[r]));return this}return this.each(K(e,r))},Y.classed=function(t,e){if(arguments.length<2){if(\"string\"==typeof t){var r=this.node(),n=(t=tt(t)).length,a=-1;if(e=r.classList){for(;++a<n;)if(!e.contains(t[a]))return!1}else for(e=r.getAttribute(\"class\");++a<n;)if(!$(t[a]).test(e))return!1;return!0}for(e in t)this.each(et(e,t[e]));return this}return this.each(et(t,e))},Y.style=function(t,e,r){var n=arguments.length;if(n<3){if(\"string\"!=typeof t){for(r in n<2&&(e=\"\"),t)this.each(nt(r,t[r],e));return this}if(n<2){var a=this.node();return o(a).getComputedStyle(a,null).getPropertyValue(t)}r=\"\"}return this.each(nt(t,e,r))},Y.property=function(t,e){if(arguments.length<2){if(\"string\"==typeof t)return this.node()[t];for(e in t)this.each(at(e,t[e]));return this}return this.each(at(t,e))},Y.text=function(t){return arguments.length?this.each(\"function\"==typeof t?function(){var e=t.apply(this,arguments);this.textContent=null==e?\"\":e}:null==t?function(){this.textContent=\"\"}:function(){this.textContent=t}):this.node().textContent},Y.html=function(t){return arguments.length?this.each(\"function\"==typeof t?function(){var e=t.apply(this,arguments);this.innerHTML=null==e?\"\":e}:null==t?function(){this.innerHTML=\"\"}:function(){this.innerHTML=t}):this.node().innerHTML},Y.append=function(t){return t=it(t),this.select((function(){return this.appendChild(t.apply(this,arguments))}))},Y.insert=function(t,e){return t=it(t),e=W(e),this.select((function(){return this.insertBefore(t.apply(this,arguments),e.apply(this,arguments)||null)}))},Y.remove=function(){return this.each(ot)},Y.data=function(t,e){var r,n,a=-1,i=this.length;if(!arguments.length){for(t=new Array(i=(r=this[0]).length);++a<i;)(n=r[a])&&(t[a]=n.__data__);return t}function o(t,r){var n,a,i,o=t.length,u=r.length,h=Math.min(o,u),f=new Array(u),p=new Array(u),d=new Array(o);if(e){var g,m=new _,v=new Array(o);for(n=-1;++n<o;)(a=t[n])&&(m.has(g=e.call(a,a.__data__,n))?d[n]=a:m.set(g,a),v[n]=g);for(n=-1;++n<u;)(a=m.get(g=e.call(r,i=r[n],n)))?!0!==a&&(f[n]=a,a.__data__=i):p[n]=st(i),m.set(g,!0);for(n=-1;++n<o;)n in v&&!0!==m.get(v[n])&&(d[n]=t[n])}else{for(n=-1;++n<h;)a=t[n],i=r[n],a?(a.__data__=i,f[n]=a):p[n]=st(i);for(;n<u;++n)p[n]=st(r[n]);for(;n<o;++n)d[n]=t[n]}p.update=f,p.parentNode=f.parentNode=d.parentNode=t.parentNode,s.push(p),l.push(f),c.push(d)}var s=ht([]),l=V([]),c=V([]);if(\"function\"==typeof t)for(;++a<i;)o(r=this[a],t.call(r,r.parentNode.__data__,a));else for(;++a<i;)o(r=this[a],t);return l.enter=function(){return s},l.exit=function(){return c},l},Y.datum=function(t){return arguments.length?this.property(\"__data__\",t):this.property(\"__data__\")},Y.filter=function(t){var e,r,n,a=[];\"function\"!=typeof t&&(t=lt(t));for(var i=0,o=this.length;i<o;i++){a.push(e=[]),e.parentNode=(r=this[i]).parentNode;for(var s=0,l=r.length;s<l;s++)(n=r[s])&&t.call(n,n.__data__,s,i)&&e.push(n)}return V(a)},Y.order=function(){for(var t=-1,e=this.length;++t<e;)for(var r,n=this[t],a=n.length-1,i=n[a];--a>=0;)(r=n[a])&&(i&&i!==r.nextSibling&&i.parentNode.insertBefore(r,i),i=r);return this},Y.sort=function(t){t=ct.apply(this,arguments);for(var e=-1,r=this.length;++e<r;)this[e].sort(t);return this.order()},Y.each=function(t){return ut(this,(function(e,r,n){t.call(e,e.__data__,r,n)}))},Y.call=function(t){var e=n(arguments);return t.apply(e[0]=this,e),this},Y.empty=function(){return!this.node()},Y.node=function(){for(var t=0,e=this.length;t<e;t++)for(var r=this[t],n=0,a=r.length;n<a;n++){var i=r[n];if(i)return i}return null},Y.size=function(){var t=0;return ut(this,(function(){++t})),t};var ft=[];function pt(t){var e,r;return function(n,a,i){var o,s=t[i].update,l=s.length;for(i!=r&&(r=i,e=0),a>=e&&(e=a+1);!(o=s[e])&&++e<l;);return o}}function dt(e,r,a){var i=\"__on\"+e,o=e.indexOf(\".\"),s=mt;o>0&&(e=e.slice(0,o));var l=gt.get(e);function c(){var t=this[i];t&&(this.removeEventListener(e,t,t.$),delete this[i])}return l&&(e=l,s=vt),o?r?function(){var t=s(r,n(arguments));c.call(this),this.addEventListener(e,this[i]=t,t.$=a),t._=r}:c:r?O:function(){var r,n=new RegExp(\"^__on([^.]+)\"+t.requote(e)+\"$\");for(var a in this)if(r=a.match(n)){var i=this[a];this.removeEventListener(r[1],i,i.$),delete this[a]}}}t.selection.enter=ht,t.selection.enter.prototype=ft,ft.append=Y.append,ft.empty=Y.empty,ft.node=Y.node,ft.call=Y.call,ft.size=Y.size,ft.select=function(t){for(var e,r,n,a,i,o=[],s=-1,l=this.length;++s<l;){n=(a=this[s]).update,o.push(e=[]),e.parentNode=a.parentNode;for(var c=-1,u=a.length;++c<u;)(i=a[c])?(e.push(n[c]=r=t.call(a.parentNode,i.__data__,c,s)),r.__data__=i.__data__):e.push(null)}return V(o)},ft.insert=function(t,e){return arguments.length<2&&(e=pt(this)),Y.insert.call(this,t,e)},t.select=function(t){var e;return\"string\"==typeof t?(e=[q(t,a)]).parentNode=a.documentElement:(e=[t]).parentNode=i(t),V([e])},t.selectAll=function(t){var e;return\"string\"==typeof t?(e=n(H(t,a))).parentNode=a.documentElement:(e=n(t)).parentNode=null,V([e])},Y.on=function(t,e,r){var n=arguments.length;if(n<3){if(\"string\"!=typeof t){for(r in n<2&&(e=!1),t)this.each(dt(r,t[r],e));return this}if(n<2)return(n=this.node()[\"__on\"+t])&&n._;r=!1}return this.each(dt(t,e,r))};var gt=t.map({mouseenter:\"mouseover\",mouseleave:\"mouseout\"});function mt(e,r){return function(n){var a=t.event;t.event=n,r[0]=this.__data__;try{e.apply(this,r)}finally{t.event=a}}}function vt(t,e){var r=mt(t,e);return function(t){var e=t.relatedTarget;e&&(e===this||8&e.compareDocumentPosition(this))||r.call(this,t)}}a&&gt.forEach((function(t){\"on\"+t in a&&gt.remove(t)}));var yt,xt=0;function bt(e){var r=\".dragsuppress-\"+ ++xt,n=\"click\"+r,a=t.select(o(e)).on(\"touchmove\"+r,F).on(\"dragstart\"+r,F).on(\"selectstart\"+r,F);if(null==yt&&(yt=!(\"onselectstart\"in e)&&I(e.style,\"userSelect\")),yt){var s=i(e).style,l=s[yt];s[yt]=\"none\"}return function(t){if(a.on(r,null),yt&&(s[yt]=l),t){var e=function(){a.on(n,null)};a.on(n,(function(){F(),e()}),!0),setTimeout(e,0)}}}t.mouse=function(t){return wt(t,B())};var _t=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function wt(e,r){r.changedTouches&&(r=r.changedTouches[0]);var n=e.ownerSVGElement||e;if(n.createSVGPoint){var a=n.createSVGPoint();if(_t<0){var i=o(e);if(i.scrollX||i.scrollY){var s=(n=t.select(\"body\").append(\"svg\").style({position:\"absolute\",top:0,left:0,margin:0,padding:0,border:\"none\"},\"important\"))[0][0].getScreenCTM();_t=!(s.f||s.e),n.remove()}}return _t?(a.x=r.pageX,a.y=r.pageY):(a.x=r.clientX,a.y=r.clientY),[(a=a.matrixTransform(e.getScreenCTM().inverse())).x,a.y]}var l=e.getBoundingClientRect();return[r.clientX-l.left-e.clientLeft,r.clientY-l.top-e.clientTop]}function Tt(){return t.event.changedTouches[0].identifier}t.touch=function(t,e,r){if(arguments.length<3&&(r=e,e=B().changedTouches),e)for(var n,a=0,i=e.length;a<i;++a)if((n=e[a]).identifier===r)return wt(t,n)},t.behavior.drag=function(){var e=N(i,\"drag\",\"dragstart\",\"dragend\"),r=null,n=s(O,t.mouse,o,\"mousemove\",\"mouseup\"),a=s(Tt,t.touch,L,\"touchmove\",\"touchend\");function i(){this.on(\"mousedown.drag\",n).on(\"touchstart.drag\",a)}function s(n,a,i,o,s){return function(){var l,c=this,u=t.event.target.correspondingElement||t.event.target,h=c.parentNode,f=e.of(c,arguments),p=0,d=n(),g=\".drag\"+(null==d?\"\":\"-\"+d),m=t.select(i(u)).on(o+g,x).on(s+g,b),v=bt(u),y=a(h,d);function x(){var t,e,r=a(h,d);r&&(t=r[0]-y[0],e=r[1]-y[1],p|=t|e,y=r,f({type:\"drag\",x:r[0]+l[0],y:r[1]+l[1],dx:t,dy:e}))}function b(){a(h,d)&&(m.on(o+g,null).on(s+g,null),v(p),f({type:\"dragend\"}))}l=r?[(l=r.apply(c,arguments)).x-y[0],l.y-y[1]]:[0,0],f({type:\"dragstart\"})}}return i.origin=function(t){return arguments.length?(r=t,i):r},t.rebind(i,e,\"on\")},t.touches=function(t,e){return arguments.length<2&&(e=B().touches),e?n(e).map((function(e){var r=wt(t,e);return r.identifier=e.identifier,r})):[]};var kt=1e-6,Mt=1e-12,At=Math.PI,St=2*At,Et=St-kt,Ct=At/2,Lt=At/180,Pt=180/At;function It(t){return t>0?1:t<0?-1:0}function zt(t,e,r){return(e[0]-t[0])*(r[1]-t[1])-(e[1]-t[1])*(r[0]-t[0])}function Ot(t){return t>1?0:t<-1?At:Math.acos(t)}function Dt(t){return t>1?Ct:t<-1?-Ct:Math.asin(t)}function Rt(t){return((t=Math.exp(t))+1/t)/2}function Ft(t){return(t=Math.sin(t/2))*t}var Bt=Math.SQRT2;t.interpolateZoom=function(t,e){var r,n,a=t[0],i=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-a,h=l-i,f=u*u+h*h;if(f<Mt)n=Math.log(c/o)/Bt,r=function(t){return[a+t*u,i+t*h,o*Math.exp(Bt*t*n)]};else{var p=Math.sqrt(f),d=(c*c-o*o+4*f)/(2*o*2*p),g=(c*c-o*o-4*f)/(2*c*2*p),m=Math.log(Math.sqrt(d*d+1)-d),v=Math.log(Math.sqrt(g*g+1)-g);n=(v-m)/Bt,r=function(t){var e,r=t*n,s=Rt(m),l=o/(2*p)*(s*(e=Bt*r+m,((e=Math.exp(2*e))-1)/(e+1))-function(t){return((t=Math.exp(t))-1/t)/2}(m));return[a+l*u,i+l*h,o*s/Rt(Bt*r+m)]}}return r.duration=1e3*n,r},t.behavior.zoom=function(){var e,r,n,i,s,l,c,u,h,f={x:0,y:0,k:1},p=[960,500],d=Ut,g=250,m=0,v=\"mousedown.zoom\",y=\"mousemove.zoom\",x=\"mouseup.zoom\",b=\"touchstart.zoom\",_=N(w,\"zoomstart\",\"zoom\",\"zoomend\");function w(t){t.on(v,P).on(jt+\".zoom\",z).on(\"dblclick.zoom\",O).on(b,I)}function T(t){return[(t[0]-f.x)/f.k,(t[1]-f.y)/f.k]}function k(t){f.k=Math.max(d[0],Math.min(d[1],t))}function M(t,e){e=function(t){return[t[0]*f.k+f.x,t[1]*f.k+f.y]}(e),f.x+=t[0]-e[0],f.y+=t[1]-e[1]}function A(e,n,a,i){e.__chart__={x:f.x,y:f.y,k:f.k},k(Math.pow(2,i)),M(r=n,a),e=t.select(e),g>0&&(e=e.transition().duration(g)),e.call(w.event)}function S(){c&&c.domain(l.range().map((function(t){return(t-f.x)/f.k})).map(l.invert)),h&&h.domain(u.range().map((function(t){return(t-f.y)/f.k})).map(u.invert))}function E(t){m++||t({type:\"zoomstart\"})}function C(t){S(),t({type:\"zoom\",scale:f.k,translate:[f.x,f.y]})}function L(t){--m||(t({type:\"zoomend\"}),r=null)}function P(){var e=this,r=_.of(e,arguments),n=0,a=t.select(o(e)).on(y,l).on(x,c),i=T(t.mouse(e)),s=bt(e);function l(){n=1,M(t.mouse(e),i),C(r)}function c(){a.on(y,null).on(x,null),s(n),L(r)}vs.call(e),E(r)}function I(){var e,r=this,n=_.of(r,arguments),a={},i=0,o=\".zoom-\"+t.event.changedTouches[0].identifier,l=\"touchmove\"+o,c=\"touchend\"+o,u=[],h=t.select(r),p=bt(r);function d(){var n=t.touches(r);return e=f.k,n.forEach((function(t){t.identifier in a&&(a[t.identifier]=T(t))})),n}function g(){var e=t.event.target;t.select(e).on(l,m).on(c,y),u.push(e);for(var n=t.event.changedTouches,o=0,h=n.length;o<h;++o)a[n[o].identifier]=null;var p=d(),g=Date.now();if(1===p.length){if(g-s<500){var v=p[0];A(r,v,a[v.identifier],Math.floor(Math.log(f.k)/Math.LN2)+1),F()}s=g}else if(p.length>1){v=p[0];var x=p[1],b=v[0]-x[0],_=v[1]-x[1];i=b*b+_*_}}function m(){var o,l,c,u,h=t.touches(r);vs.call(r);for(var f=0,p=h.length;f<p;++f,u=null)if(c=h[f],u=a[c.identifier]){if(l)break;o=c,l=u}if(u){var d=(d=c[0]-o[0])*d+(d=c[1]-o[1])*d,g=i&&Math.sqrt(d/i);o=[(o[0]+c[0])/2,(o[1]+c[1])/2],l=[(l[0]+u[0])/2,(l[1]+u[1])/2],k(g*e)}s=null,M(o,l),C(n)}function y(){if(t.event.touches.length){for(var e=t.event.changedTouches,r=0,i=e.length;r<i;++r)delete a[e[r].identifier];for(var s in a)return void d()}t.selectAll(u).on(o,null),h.on(v,P).on(b,I),p(),L(n)}g(),E(n),h.on(v,null).on(b,g)}function z(){var a=_.of(this,arguments);i?clearTimeout(i):(vs.call(this),e=T(r=n||t.mouse(this)),E(a)),i=setTimeout((function(){i=null,L(a)}),50),F(),k(Math.pow(2,.002*Nt())*f.k),M(r,e),C(a)}function O(){var e=t.mouse(this),r=Math.log(f.k)/Math.LN2;A(this,e,T(e),t.event.shiftKey?Math.ceil(r)-1:Math.floor(r)+1)}return jt||(jt=\"onwheel\"in a?(Nt=function(){return-t.event.deltaY*(t.event.deltaMode?120:1)},\"wheel\"):\"onmousewheel\"in a?(Nt=function(){return t.event.wheelDelta},\"mousewheel\"):(Nt=function(){return-t.event.detail},\"MozMousePixelScroll\")),w.event=function(e){e.each((function(){var e=_.of(this,arguments),n=f;bs?t.select(this).transition().each(\"start.zoom\",(function(){f=this.__chart__||{x:0,y:0,k:1},E(e)})).tween(\"zoom:zoom\",(function(){var a=p[0],i=p[1],o=r?r[0]:a/2,s=r?r[1]:i/2,l=t.interpolateZoom([(o-f.x)/f.k,(s-f.y)/f.k,a/f.k],[(o-n.x)/n.k,(s-n.y)/n.k,a/n.k]);return function(t){var r=l(t),n=a/r[2];this.__chart__=f={x:o-r[0]*n,y:s-r[1]*n,k:n},C(e)}})).each(\"interrupt.zoom\",(function(){L(e)})).each(\"end.zoom\",(function(){L(e)})):(this.__chart__=f,E(e),C(e),L(e))}))},w.translate=function(t){return arguments.length?(f={x:+t[0],y:+t[1],k:f.k},S(),w):[f.x,f.y]},w.scale=function(t){return arguments.length?(f={x:f.x,y:f.y,k:null},k(+t),S(),w):f.k},w.scaleExtent=function(t){return arguments.length?(d=null==t?Ut:[+t[0],+t[1]],w):d},w.center=function(t){return arguments.length?(n=t&&[+t[0],+t[1]],w):n},w.size=function(t){return arguments.length?(p=t&&[+t[0],+t[1]],w):p},w.duration=function(t){return arguments.length?(g=+t,w):g},w.x=function(t){return arguments.length?(c=t,l=t.copy(),f={x:0,y:0,k:1},w):c},w.y=function(t){return arguments.length?(h=t,u=t.copy(),f={x:0,y:0,k:1},w):h},t.rebind(w,_,\"on\")};var Nt,jt,Ut=[0,1/0];function Vt(){}function qt(t,e,r){return this instanceof qt?(this.h=+t,this.s=+e,void(this.l=+r)):arguments.length<2?t instanceof qt?new qt(t.h,t.s,t.l):le(\"\"+t,ce,qt):new qt(t,e,r)}t.color=Vt,Vt.prototype.toString=function(){return this.rgb()+\"\"},t.hsl=qt;var Ht=qt.prototype=new Vt;function Gt(t,e,r){var n,a;function i(t){return Math.round(255*function(t){return t>360?t-=360:t<0&&(t+=360),t<60?n+(a-n)*t/60:t<180?a:t<240?n+(a-n)*(240-t)/60:n}(t))}return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)||e<0?0:e>1?1:e,n=2*(r=r<0?0:r>1?1:r)-(a=r<=.5?r*(1+e):r+e-r*e),new ne(i(t+120),i(t),i(t-120))}function Yt(e,r,n){return this instanceof Yt?(this.h=+e,this.c=+r,void(this.l=+n)):arguments.length<2?e instanceof Yt?new Yt(e.h,e.c,e.l):$t(e instanceof Xt?e.l:(e=ue((e=t.rgb(e)).r,e.g,e.b)).l,e.a,e.b):new Yt(e,r,n)}Ht.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),new qt(this.h,this.s,this.l/t)},Ht.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),new qt(this.h,this.s,t*this.l)},Ht.rgb=function(){return Gt(this.h,this.s,this.l)},t.hcl=Yt;var Wt=Yt.prototype=new Vt;function Zt(t,e,r){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new Xt(r,Math.cos(t*=Lt)*e,Math.sin(t)*e)}function Xt(t,e,r){return this instanceof Xt?(this.l=+t,this.a=+e,void(this.b=+r)):arguments.length<2?t instanceof Xt?new Xt(t.l,t.a,t.b):t instanceof Yt?Zt(t.h,t.c,t.l):ue((t=ne(t)).r,t.g,t.b):new Xt(t,e,r)}Wt.brighter=function(t){return new Yt(this.h,this.c,Math.min(100,this.l+Jt*(arguments.length?t:1)))},Wt.darker=function(t){return new Yt(this.h,this.c,Math.max(0,this.l-Jt*(arguments.length?t:1)))},Wt.rgb=function(){return Zt(this.h,this.c,this.l).rgb()},t.lab=Xt;var Jt=18,Kt=Xt.prototype=new Vt;function Qt(t,e,r){var n=(t+16)/116,a=n+e/500,i=n-r/200;return new ne(re(3.2404542*(a=.95047*te(a))-1.5371385*(n=1*te(n))-.4985314*(i=1.08883*te(i))),re(-.969266*a+1.8760108*n+.041556*i),re(.0556434*a-.2040259*n+1.0572252*i))}function $t(t,e,r){return t>0?new Yt(Math.atan2(r,e)*Pt,Math.sqrt(e*e+r*r),t):new Yt(NaN,NaN,t)}function te(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function ee(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function re(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function ne(t,e,r){return this instanceof ne?(this.r=~~t,this.g=~~e,void(this.b=~~r)):arguments.length<2?t instanceof ne?new ne(t.r,t.g,t.b):le(\"\"+t,ne,Gt):new ne(t,e,r)}function ae(t){return new ne(t>>16,t>>8&255,255&t)}function ie(t){return ae(t)+\"\"}Kt.brighter=function(t){return new Xt(Math.min(100,this.l+Jt*(arguments.length?t:1)),this.a,this.b)},Kt.darker=function(t){return new Xt(Math.max(0,this.l-Jt*(arguments.length?t:1)),this.a,this.b)},Kt.rgb=function(){return Qt(this.l,this.a,this.b)},t.rgb=ne;var oe=ne.prototype=new Vt;function se(t){return t<16?\"0\"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function le(t,e,r){var n,a,i,o=0,s=0,l=0;if(n=/([a-z]+)\\((.*)\\)/.exec(t=t.toLowerCase()))switch(a=n[2].split(\",\"),n[1]){case\"hsl\":return r(parseFloat(a[0]),parseFloat(a[1])/100,parseFloat(a[2])/100);case\"rgb\":return e(fe(a[0]),fe(a[1]),fe(a[2]))}return(i=pe.get(t))?e(i.r,i.g,i.b):(null==t||\"#\"!==t.charAt(0)||isNaN(i=parseInt(t.slice(1),16))||(4===t.length?(o=(3840&i)>>4,o|=o>>4,s=240&i,s|=s>>4,l=15&i,l|=l<<4):7===t.length&&(o=(16711680&i)>>16,s=(65280&i)>>8,l=255&i)),e(o,s,l))}function ce(t,e,r){var n,a,i=Math.min(t/=255,e/=255,r/=255),o=Math.max(t,e,r),s=o-i,l=(o+i)/2;return s?(a=l<.5?s/(o+i):s/(2-o-i),n=t==o?(e-r)/s+(e<r?6:0):e==o?(r-t)/s+2:(t-e)/s+4,n*=60):(n=NaN,a=l>0&&l<1?0:n),new qt(n,a,l)}function ue(t,e,r){var n=ee((.4124564*(t=he(t))+.3575761*(e=he(e))+.1804375*(r=he(r)))/.95047),a=ee((.2126729*t+.7151522*e+.072175*r)/1);return Xt(116*a-16,500*(n-a),200*(a-ee((.0193339*t+.119192*e+.9503041*r)/1.08883)))}function he(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function fe(t){var e=parseFloat(t);return\"%\"===t.charAt(t.length-1)?Math.round(2.55*e):e}oe.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,r=this.g,n=this.b,a=30;return e||r||n?(e&&e<a&&(e=a),r&&r<a&&(r=a),n&&n<a&&(n=a),new ne(Math.min(255,e/t),Math.min(255,r/t),Math.min(255,n/t))):new ne(a,a,a)},oe.darker=function(t){return new ne((t=Math.pow(.7,arguments.length?t:1))*this.r,t*this.g,t*this.b)},oe.hsl=function(){return ce(this.r,this.g,this.b)},oe.toString=function(){return\"#\"+se(this.r)+se(this.g)+se(this.b)};var pe=t.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});function de(t){return\"function\"==typeof t?t:function(){return t}}function ge(t){return function(e,r,n){return 2===arguments.length&&\"function\"==typeof r&&(n=r,r=null),me(e,r,t,n)}}function me(e,r,a,i){var o={},s=t.dispatch(\"beforesend\",\"progress\",\"load\",\"error\"),l={},c=new XMLHttpRequest,u=null;function h(){var t,e=c.status;if(!e&&function(t){var e=t.responseType;return e&&\"text\"!==e?t.response:t.responseText}(c)||e>=200&&e<300||304===e){try{t=a.call(o,c)}catch(t){return void s.error.call(o,t)}s.load.call(o,t)}else s.error.call(o,c)}return this.XDomainRequest&&!(\"withCredentials\"in c)&&/^(http(s)?:)?\\/\\//.test(e)&&(c=new XDomainRequest),\"onload\"in c?c.onload=c.onerror=h:c.onreadystatechange=function(){c.readyState>3&&h()},c.onprogress=function(e){var r=t.event;t.event=e;try{s.progress.call(o,c)}finally{t.event=r}},o.header=function(t,e){return t=(t+\"\").toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+\"\",o)},o.mimeType=function(t){return arguments.length?(r=null==t?null:t+\"\",o):r},o.responseType=function(t){return arguments.length?(u=t,o):u},o.response=function(t){return a=t,o},[\"get\",\"post\"].forEach((function(t){o[t]=function(){return o.send.apply(o,[t].concat(n(arguments)))}})),o.send=function(t,n,a){if(2===arguments.length&&\"function\"==typeof n&&(a=n,n=null),c.open(t,e,!0),null==r||\"accept\"in l||(l.accept=r+\",*/*\"),c.setRequestHeader)for(var i in l)c.setRequestHeader(i,l[i]);return null!=r&&c.overrideMimeType&&c.overrideMimeType(r),null!=u&&(c.responseType=u),null!=a&&o.on(\"error\",a).on(\"load\",(function(t){a(null,t)})),s.beforesend.call(o,c),c.send(null==n?null:n),o},o.abort=function(){return c.abort(),o},t.rebind(o,s,\"on\"),null==i?o:o.get(function(t){return 1===t.length?function(e,r){t(null==e?r:null)}:t}(i))}pe.forEach((function(t,e){pe.set(t,ae(e))})),t.functor=de,t.xhr=ge(L),t.dsv=function(t,e){var r=new RegExp('[\"'+t+\"\\n]\"),n=t.charCodeAt(0);function a(t,r,n){arguments.length<3&&(n=r,r=null);var a=me(t,e,null==r?i:o(r),n);return a.row=function(t){return arguments.length?a.response(null==(r=t)?i:o(t)):r},a}function i(t){return a.parse(t.responseText)}function o(t){return function(e){return a.parse(e.responseText,t)}}function s(e){return e.map(l).join(t)}function l(t){return r.test(t)?'\"'+t.replace(/\\\"/g,'\"\"')+'\"':t}return a.parse=function(t,e){var r;return a.parseRows(t,(function(t,n){if(r)return r(t,n-1);var a=new Function(\"d\",\"return {\"+t.map((function(t,e){return JSON.stringify(t)+\": d[\"+e+\"]\"})).join(\",\")+\"}\");r=e?function(t,r){return e(a(t),r)}:a}))},a.parseRows=function(t,e){var r,a,i={},o={},s=[],l=t.length,c=0,u=0;function h(){if(c>=l)return o;if(a)return a=!1,i;var e=c;if(34===t.charCodeAt(e)){for(var r=e;r++<l;)if(34===t.charCodeAt(r)){if(34!==t.charCodeAt(r+1))break;++r}return c=r+2,13===(s=t.charCodeAt(r+1))?(a=!0,10===t.charCodeAt(r+2)&&++c):10===s&&(a=!0),t.slice(e+1,r).replace(/\"\"/g,'\"')}for(;c<l;){var s,u=1;if(10===(s=t.charCodeAt(c++)))a=!0;else if(13===s)a=!0,10===t.charCodeAt(c)&&(++c,++u);else if(s!==n)continue;return t.slice(e,c-u)}return t.slice(e)}for(;(r=h())!==o;){for(var f=[];r!==i&&r!==o;)f.push(r),r=h();e&&null==(f=e(f,u++))||s.push(f)}return s},a.format=function(e){if(Array.isArray(e[0]))return a.formatRows(e);var r=new C,n=[];return e.forEach((function(t){for(var e in t)r.has(e)||n.push(r.add(e))})),[n.map(l).join(t)].concat(e.map((function(e){return n.map((function(t){return l(e[t])})).join(t)}))).join(\"\\n\")},a.formatRows=function(t){return t.map(s).join(\"\\n\")},a},t.csv=t.dsv(\",\",\"text/csv\"),t.tsv=t.dsv(\"\\t\",\"text/tab-separated-values\");var ve,ye,xe,be,_e=this[I(this,\"requestAnimationFrame\")]||function(t){setTimeout(t,17)};function we(t,e,r){var n=arguments.length;n<2&&(e=0),n<3&&(r=Date.now());var a=r+e,i={c:t,t:a,n:null};return ye?ye.n=i:ve=i,ye=i,xe||(be=clearTimeout(be),xe=1,_e(Te)),i}function Te(){var t=ke(),e=Me()-t;e>24?(isFinite(e)&&(clearTimeout(be),be=setTimeout(Te,e)),xe=0):(xe=1,_e(Te))}function ke(){for(var t=Date.now(),e=ve;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function Me(){for(var t,e=ve,r=1/0;e;)e.c?(e.t<r&&(r=e.t),e=(t=e).n):e=t?t.n=e.n:ve=e.n;return ye=t,r}function Ae(t,e){return e-(t?Math.ceil(Math.log(t)/Math.LN10):1)}t.timer=function(){we.apply(this,arguments)},t.timer.flush=function(){ke(),Me()},t.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)};var Se=[\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"\\xb5\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"].map((function(t,e){var r=Math.pow(10,3*y(8-e));return{scale:e>8?function(t){return t/r}:function(t){return t*r},symbol:t}}));function Ee(e){var r=e.decimal,n=e.thousands,a=e.grouping,i=e.currency,o=a&&n?function(t,e){for(var r=t.length,i=[],o=0,s=a[0],l=0;r>0&&s>0&&(l+s+1>e&&(s=Math.max(1,e-l)),i.push(t.substring(r-=s,r+s)),!((l+=s+1)>e));)s=a[o=(o+1)%a.length];return i.reverse().join(n)}:L;return function(e){var n=Ce.exec(e),a=n[1]||\" \",s=n[2]||\">\",l=n[3]||\"-\",c=n[4]||\"\",u=n[5],h=+n[6],f=n[7],p=n[8],d=n[9],g=1,m=\"\",v=\"\",y=!1,x=!0;switch(p&&(p=+p.substring(1)),(u||\"0\"===a&&\"=\"===s)&&(u=a=\"0\",s=\"=\"),d){case\"n\":f=!0,d=\"g\";break;case\"%\":g=100,v=\"%\",d=\"f\";break;case\"p\":g=100,v=\"%\",d=\"r\";break;case\"b\":case\"o\":case\"x\":case\"X\":\"#\"===c&&(m=\"0\"+d.toLowerCase());case\"c\":x=!1;case\"d\":y=!0,p=0;break;case\"s\":g=-1,d=\"r\"}\"$\"===c&&(m=i[0],v=i[1]),\"r\"!=d||p||(d=\"g\"),null!=p&&(\"g\"==d?p=Math.max(1,Math.min(21,p)):\"e\"!=d&&\"f\"!=d||(p=Math.max(0,Math.min(20,p)))),d=Le.get(d)||Pe;var b=u&&f;return function(e){var n=v;if(y&&e%1)return\"\";var i=e<0||0===e&&1/e<0?(e=-e,\"-\"):\"-\"===l?\"\":l;if(g<0){var c=t.formatPrefix(e,p);e=c.scale(e),n=c.symbol+v}else e*=g;var _,w,T=(e=d(e,p)).lastIndexOf(\".\");if(T<0){var k=x?e.lastIndexOf(\"e\"):-1;k<0?(_=e,w=\"\"):(_=e.substring(0,k),w=e.substring(k))}else _=e.substring(0,T),w=r+e.substring(T+1);!u&&f&&(_=o(_,1/0));var M=m.length+_.length+w.length+(b?0:i.length),A=M<h?new Array(M=h-M+1).join(a):\"\";return b&&(_=o(A+_,A.length?h-w.length:1/0)),i+=m,e=_+w,(\"<\"===s?i+e+A:\">\"===s?A+i+e:\"^\"===s?A.substring(0,M>>=1)+i+e+A.substring(M):i+(b?e:A+e))+n}}}t.formatPrefix=function(e,r){var n=0;return(e=+e)&&(e<0&&(e*=-1),r&&(e=t.round(e,Ae(e,r))),n=1+Math.floor(1e-12+Math.log(e)/Math.LN10),n=Math.max(-24,Math.min(24,3*Math.floor((n-1)/3)))),Se[8+n/3]};var Ce=/(?:([^{])?([<>=^]))?([+\\- ])?([$#])?(0)?(\\d+)?(,)?(\\.-?\\d+)?([a-z%])?/i,Le=t.map({b:function(t){return t.toString(2)},c:function(t){return String.fromCharCode(t)},o:function(t){return t.toString(8)},x:function(t){return t.toString(16)},X:function(t){return t.toString(16).toUpperCase()},g:function(t,e){return t.toPrecision(e)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},r:function(e,r){return(e=t.round(e,Ae(e,r))).toFixed(Math.max(0,Math.min(20,Ae(e*(1+1e-15),r))))}});function Pe(t){return t+\"\"}var Ie=t.time={},ze=Date;function Oe(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}Oe.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){De.setUTCDate.apply(this._,arguments)},setDay:function(){De.setUTCDay.apply(this._,arguments)},setFullYear:function(){De.setUTCFullYear.apply(this._,arguments)},setHours:function(){De.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){De.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){De.setUTCMinutes.apply(this._,arguments)},setMonth:function(){De.setUTCMonth.apply(this._,arguments)},setSeconds:function(){De.setUTCSeconds.apply(this._,arguments)},setTime:function(){De.setTime.apply(this._,arguments)}};var De=Date.prototype;function Re(t,e,r){function n(e){var r=t(e),n=i(r,1);return e-r<n-e?r:n}function a(r){return e(r=t(new ze(r-1)),1),r}function i(t,r){return e(t=new ze(+t),r),t}function o(t,n,i){var o=a(t),s=[];if(i>1)for(;o<n;)r(o)%i||s.push(new Date(+o)),e(o,1);else for(;o<n;)s.push(new Date(+o)),e(o,1);return s}t.floor=t,t.round=n,t.ceil=a,t.offset=i,t.range=o;var s=t.utc=Fe(t);return s.floor=s,s.round=Fe(n),s.ceil=Fe(a),s.offset=Fe(i),s.range=function(t,e,r){try{ze=Oe;var n=new Oe;return n._=t,o(n,e,r)}finally{ze=Date}},t}function Fe(t){return function(e,r){try{ze=Oe;var n=new Oe;return n._=e,t(n,r)._}finally{ze=Date}}}function Be(e){var r=e.dateTime,n=e.date,a=e.time,i=e.periods,o=e.days,s=e.shortDays,l=e.months,c=e.shortMonths;function u(t){var e=t.length;function r(r){for(var n,a,i,o=[],s=-1,l=0;++s<e;)37===t.charCodeAt(s)&&(o.push(t.slice(l,s)),null!=(a=Ne[n=t.charAt(++s)])&&(n=t.charAt(++s)),(i=_[n])&&(n=i(r,null==a?\"e\"===n?\" \":\"0\":a)),o.push(n),l=s+1);return o.push(t.slice(l,s)),o.join(\"\")}return r.parse=function(e){var r={y:1900,m:0,d:1,H:0,M:0,S:0,L:0,Z:null};if(h(r,t,e,0)!=e.length)return null;\"p\"in r&&(r.H=r.H%12+12*r.p);var n=null!=r.Z&&ze!==Oe,a=new(n?Oe:ze);return\"j\"in r?a.setFullYear(r.y,0,r.j):\"W\"in r||\"U\"in r?(\"w\"in r||(r.w=\"W\"in r?1:0),a.setFullYear(r.y,0,1),a.setFullYear(r.y,0,\"W\"in r?(r.w+6)%7+7*r.W-(a.getDay()+5)%7:r.w+7*r.U-(a.getDay()+6)%7)):a.setFullYear(r.y,r.m,r.d),a.setHours(r.H+(r.Z/100|0),r.M+r.Z%100,r.S,r.L),n?a._:a},r.toString=function(){return t},r}function h(t,e,r,n){for(var a,i,o,s=0,l=e.length,c=r.length;s<l;){if(n>=c)return-1;if(37===(a=e.charCodeAt(s++))){if(o=e.charAt(s++),!(i=w[o in Ne?e.charAt(s++):o])||(n=i(t,r,n))<0)return-1}else if(a!=r.charCodeAt(n++))return-1}return n}u.utc=function(t){var e=u(t);function r(t){try{var r=new(ze=Oe);return r._=t,e(r)}finally{ze=Date}}return r.parse=function(t){try{ze=Oe;var r=e.parse(t);return r&&r._}finally{ze=Date}},r.toString=e.toString,r},u.multi=u.utc.multi=or;var f=t.map(),p=qe(o),d=He(o),g=qe(s),m=He(s),v=qe(l),y=He(l),x=qe(c),b=He(c);i.forEach((function(t,e){f.set(t.toLowerCase(),e)}));var _={a:function(t){return s[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return c[t.getMonth()]},B:function(t){return l[t.getMonth()]},c:u(r),d:function(t,e){return Ve(t.getDate(),e,2)},e:function(t,e){return Ve(t.getDate(),e,2)},H:function(t,e){return Ve(t.getHours(),e,2)},I:function(t,e){return Ve(t.getHours()%12||12,e,2)},j:function(t,e){return Ve(1+Ie.dayOfYear(t),e,3)},L:function(t,e){return Ve(t.getMilliseconds(),e,3)},m:function(t,e){return Ve(t.getMonth()+1,e,2)},M:function(t,e){return Ve(t.getMinutes(),e,2)},p:function(t){return i[+(t.getHours()>=12)]},S:function(t,e){return Ve(t.getSeconds(),e,2)},U:function(t,e){return Ve(Ie.sundayOfYear(t),e,2)},w:function(t){return t.getDay()},W:function(t,e){return Ve(Ie.mondayOfYear(t),e,2)},x:u(n),X:u(a),y:function(t,e){return Ve(t.getFullYear()%100,e,2)},Y:function(t,e){return Ve(t.getFullYear()%1e4,e,4)},Z:ar,\"%\":function(){return\"%\"}},w={a:function(t,e,r){g.lastIndex=0;var n=g.exec(e.slice(r));return n?(t.w=m.get(n[0].toLowerCase()),r+n[0].length):-1},A:function(t,e,r){p.lastIndex=0;var n=p.exec(e.slice(r));return n?(t.w=d.get(n[0].toLowerCase()),r+n[0].length):-1},b:function(t,e,r){x.lastIndex=0;var n=x.exec(e.slice(r));return n?(t.m=b.get(n[0].toLowerCase()),r+n[0].length):-1},B:function(t,e,r){v.lastIndex=0;var n=v.exec(e.slice(r));return n?(t.m=y.get(n[0].toLowerCase()),r+n[0].length):-1},c:function(t,e,r){return h(t,_.c.toString(),e,r)},d:Qe,e:Qe,H:tr,I:tr,j:$e,L:nr,m:Ke,M:er,p:function(t,e,r){var n=f.get(e.slice(r,r+=2).toLowerCase());return null==n?-1:(t.p=n,r)},S:rr,U:Ye,w:Ge,W:We,x:function(t,e,r){return h(t,_.x.toString(),e,r)},X:function(t,e,r){return h(t,_.X.toString(),e,r)},y:Xe,Y:Ze,Z:Je,\"%\":ir};return u}Ie.year=Re((function(t){return(t=Ie.day(t)).setMonth(0,1),t}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t){return t.getFullYear()})),Ie.years=Ie.year.range,Ie.years.utc=Ie.year.utc.range,Ie.day=Re((function(t){var e=new ze(2e3,0);return e.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),e}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t){return t.getDate()-1})),Ie.days=Ie.day.range,Ie.days.utc=Ie.day.utc.range,Ie.dayOfYear=function(t){var e=Ie.year(t);return Math.floor((t-e-6e4*(t.getTimezoneOffset()-e.getTimezoneOffset()))/864e5)},[\"sunday\",\"monday\",\"tuesday\",\"wednesday\",\"thursday\",\"friday\",\"saturday\"].forEach((function(t,e){e=7-e;var r=Ie[t]=Re((function(t){return(t=Ie.day(t)).setDate(t.getDate()-(t.getDay()+e)%7),t}),(function(t,e){t.setDate(t.getDate()+7*Math.floor(e))}),(function(t){var r=Ie.year(t).getDay();return Math.floor((Ie.dayOfYear(t)+(r+e)%7)/7)-(r!==e)}));Ie[t+\"s\"]=r.range,Ie[t+\"s\"].utc=r.utc.range,Ie[t+\"OfYear\"]=function(t){var r=Ie.year(t).getDay();return Math.floor((Ie.dayOfYear(t)+(r+e)%7)/7)}})),Ie.week=Ie.sunday,Ie.weeks=Ie.sunday.range,Ie.weeks.utc=Ie.sunday.utc.range,Ie.weekOfYear=Ie.sundayOfYear;var Ne={\"-\":\"\",_:\" \",0:\"0\"},je=/^\\s*\\d+/,Ue=/^%/;function Ve(t,e,r){var n=t<0?\"-\":\"\",a=(n?-t:t)+\"\",i=a.length;return n+(i<r?new Array(r-i+1).join(e)+a:a)}function qe(e){return new RegExp(\"^(?:\"+e.map(t.requote).join(\"|\")+\")\",\"i\")}function He(t){for(var e=new _,r=-1,n=t.length;++r<n;)e.set(t[r].toLowerCase(),r);return e}function Ge(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function Ye(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r));return n?(t.U=+n[0],r+n[0].length):-1}function We(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r));return n?(t.W=+n[0],r+n[0].length):-1}function Ze(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function Xe(t,e,r){je.lastIndex=0;var n,a=je.exec(e.slice(r,r+2));return a?(t.y=(n=+a[0])+(n>68?1900:2e3),r+a[0].length):-1}function Je(t,e,r){return/^[+-]\\d{4}$/.test(e=e.slice(r,r+5))?(t.Z=-e,r+5):-1}function Ke(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function Qe(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function $e(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+3));return n?(t.j=+n[0],r+n[0].length):-1}function tr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function er(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function rr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function nr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function ar(t){var e=t.getTimezoneOffset(),r=e>0?\"-\":\"+\",n=y(e)/60|0,a=y(e)%60;return r+Ve(n,\"0\",2)+Ve(a,\"0\",2)}function ir(t,e,r){Ue.lastIndex=0;var n=Ue.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function or(t){for(var e=t.length,r=-1;++r<e;)t[r][0]=this(t[r][0]);return function(e){for(var r=0,n=t[r];!n[1](e);)n=t[++r];return n[0](e)}}t.locale=function(t){return{numberFormat:Ee(t),timeFormat:Be(t)}};var sr=t.locale({decimal:\".\",thousands:\",\",grouping:[3],currency:[\"$\",\"\"],dateTime:\"%a %b %e %X %Y\",date:\"%m/%d/%Y\",time:\"%H:%M:%S\",periods:[\"AM\",\"PM\"],days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"]});function lr(){}t.format=sr.numberFormat,t.geo={},lr.prototype={s:0,t:0,add:function(t){ur(t,this.t,cr),ur(cr.s,this.s,this),this.s?this.t+=cr.t:this.s=cr.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};var cr=new lr;function ur(t,e,r){var n=r.s=t+e,a=n-t,i=n-a;r.t=t-i+(e-a)}function hr(t,e){t&&pr.hasOwnProperty(t.type)&&pr[t.type](t,e)}t.geo.stream=function(t,e){t&&fr.hasOwnProperty(t.type)?fr[t.type](t,e):hr(t,e)};var fr={Feature:function(t,e){hr(t.geometry,e)},FeatureCollection:function(t,e){for(var r=t.features,n=-1,a=r.length;++n<a;)hr(r[n].geometry,e)}},pr={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var r=t.coordinates,n=-1,a=r.length;++n<a;)t=r[n],e.point(t[0],t[1],t[2])},LineString:function(t,e){dr(t.coordinates,e,0)},MultiLineString:function(t,e){for(var r=t.coordinates,n=-1,a=r.length;++n<a;)dr(r[n],e,0)},Polygon:function(t,e){gr(t.coordinates,e)},MultiPolygon:function(t,e){for(var r=t.coordinates,n=-1,a=r.length;++n<a;)gr(r[n],e)},GeometryCollection:function(t,e){for(var r=t.geometries,n=-1,a=r.length;++n<a;)hr(r[n],e)}};function dr(t,e,r){var n,a=-1,i=t.length-r;for(e.lineStart();++a<i;)n=t[a],e.point(n[0],n[1],n[2]);e.lineEnd()}function gr(t,e){var r=-1,n=t.length;for(e.polygonStart();++r<n;)dr(t[r],e,1);e.polygonEnd()}t.geo.area=function(e){return mr=0,t.geo.stream(e,Cr),mr};var mr,vr,yr,xr,br,_r,wr,Tr,kr,Mr,Ar,Sr,Er=new lr,Cr={sphere:function(){mr+=4*At},point:O,lineStart:O,lineEnd:O,polygonStart:function(){Er.reset(),Cr.lineStart=Lr},polygonEnd:function(){var t=2*Er;mr+=t<0?4*At+t:t,Cr.lineStart=Cr.lineEnd=Cr.point=O}};function Lr(){var t,e,r,n,a;function i(t,e){e=e*Lt/2+At/4;var i=(t*=Lt)-r,o=i>=0?1:-1,s=o*i,l=Math.cos(e),c=Math.sin(e),u=a*c,h=n*l+u*Math.cos(s),f=u*o*Math.sin(s);Er.add(Math.atan2(f,h)),r=t,n=l,a=c}Cr.point=function(o,s){Cr.point=i,r=(t=o)*Lt,n=Math.cos(s=(e=s)*Lt/2+At/4),a=Math.sin(s)},Cr.lineEnd=function(){i(t,e)}}function Pr(t){var e=t[0],r=t[1],n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}function Ir(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function zr(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function Or(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function Dr(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function Rr(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}function Fr(t){return[Math.atan2(t[1],t[0]),Dt(t[2])]}function Br(t,e){return y(t[0]-e[0])<kt&&y(t[1]-e[1])<kt}t.geo.bounds=function(){var e,r,n,a,i,o,s,l,c,u,h,f={point:p,lineStart:g,lineEnd:m,polygonStart:function(){f.point=v,f.lineStart=x,f.lineEnd=b,c=0,Cr.polygonStart()},polygonEnd:function(){Cr.polygonEnd(),f.point=p,f.lineStart=g,f.lineEnd=m,Er<0?(e=-(n=180),r=-(a=90)):c>kt?a=90:c<-kt&&(r=-90),h[0]=e,h[1]=n}};function p(t,i){u.push(h=[e=t,n=t]),i<r&&(r=i),i>a&&(a=i)}function d(t,o){var s=Pr([t*Lt,o*Lt]);if(l){var c=zr(l,s),u=zr([c[1],-c[0],0],c);Rr(u),u=Fr(u);var h=t-i,f=h>0?1:-1,d=u[0]*Pt*f,g=y(h)>180;if(g^(f*i<d&&d<f*t))(m=u[1]*Pt)>a&&(a=m);else if(g^(f*i<(d=(d+360)%360-180)&&d<f*t)){var m;(m=-u[1]*Pt)<r&&(r=m)}else o<r&&(r=o),o>a&&(a=o);g?t<i?_(e,t)>_(e,n)&&(n=t):_(t,n)>_(e,n)&&(e=t):n>=e?(t<e&&(e=t),t>n&&(n=t)):t>i?_(e,t)>_(e,n)&&(n=t):_(t,n)>_(e,n)&&(e=t)}else p(t,o);l=s,i=t}function g(){f.point=d}function m(){h[0]=e,h[1]=n,f.point=p,l=null}function v(t,e){if(l){var r=t-i;c+=y(r)>180?r+(r>0?360:-360):r}else o=t,s=e;Cr.point(t,e),d(t,e)}function x(){Cr.lineStart()}function b(){v(o,s),Cr.lineEnd(),y(c)>kt&&(e=-(n=180)),h[0]=e,h[1]=n,l=null}function _(t,e){return(e-=t)<0?e+360:e}function w(t,e){return t[0]-e[0]}function T(t,e){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}return function(i){if(a=n=-(e=r=1/0),u=[],t.geo.stream(i,f),c=u.length){u.sort(w);for(var o=1,s=[g=u[0]];o<c;++o)T((p=u[o])[0],g)||T(p[1],g)?(_(g[0],p[1])>_(g[0],g[1])&&(g[1]=p[1]),_(p[0],g[1])>_(g[0],g[1])&&(g[0]=p[0])):s.push(g=p);for(var l,c,p,d=-1/0,g=(o=0,s[c=s.length-1]);o<=c;g=p,++o)p=s[o],(l=_(g[1],p[0]))>d&&(d=l,e=p[0],n=g[1])}return u=h=null,e===1/0||r===1/0?[[NaN,NaN],[NaN,NaN]]:[[e,r],[n,a]]}}(),t.geo.centroid=function(e){vr=yr=xr=br=_r=wr=Tr=kr=Mr=Ar=Sr=0,t.geo.stream(e,Nr);var r=Mr,n=Ar,a=Sr,i=r*r+n*n+a*a;return i<Mt&&(r=wr,n=Tr,a=kr,yr<kt&&(r=xr,n=br,a=_r),(i=r*r+n*n+a*a)<Mt)?[NaN,NaN]:[Math.atan2(n,r)*Pt,Dt(a/Math.sqrt(i))*Pt]};var Nr={sphere:O,point:jr,lineStart:Vr,lineEnd:qr,polygonStart:function(){Nr.lineStart=Hr},polygonEnd:function(){Nr.lineStart=Vr}};function jr(t,e){t*=Lt;var r=Math.cos(e*=Lt);Ur(r*Math.cos(t),r*Math.sin(t),Math.sin(e))}function Ur(t,e,r){++vr,xr+=(t-xr)/vr,br+=(e-br)/vr,_r+=(r-_r)/vr}function Vr(){var t,e,r;function n(n,a){n*=Lt;var i=Math.cos(a*=Lt),o=i*Math.cos(n),s=i*Math.sin(n),l=Math.sin(a),c=Math.atan2(Math.sqrt((c=e*l-r*s)*c+(c=r*o-t*l)*c+(c=t*s-e*o)*c),t*o+e*s+r*l);yr+=c,wr+=c*(t+(t=o)),Tr+=c*(e+(e=s)),kr+=c*(r+(r=l)),Ur(t,e,r)}Nr.point=function(a,i){a*=Lt;var o=Math.cos(i*=Lt);t=o*Math.cos(a),e=o*Math.sin(a),r=Math.sin(i),Nr.point=n,Ur(t,e,r)}}function qr(){Nr.point=jr}function Hr(){var t,e,r,n,a;function i(t,e){t*=Lt;var i=Math.cos(e*=Lt),o=i*Math.cos(t),s=i*Math.sin(t),l=Math.sin(e),c=n*l-a*s,u=a*o-r*l,h=r*s-n*o,f=Math.sqrt(c*c+u*u+h*h),p=r*o+n*s+a*l,d=f&&-Ot(p)/f,g=Math.atan2(f,p);Mr+=d*c,Ar+=d*u,Sr+=d*h,yr+=g,wr+=g*(r+(r=o)),Tr+=g*(n+(n=s)),kr+=g*(a+(a=l)),Ur(r,n,a)}Nr.point=function(o,s){t=o,e=s,Nr.point=i,o*=Lt;var l=Math.cos(s*=Lt);r=l*Math.cos(o),n=l*Math.sin(o),a=Math.sin(s),Ur(r,n,a)},Nr.lineEnd=function(){i(t,e),Nr.lineEnd=qr,Nr.point=jr}}function Gr(t,e){function r(r,n){return r=t(r,n),e(r[0],r[1])}return t.invert&&e.invert&&(r.invert=function(r,n){return(r=e.invert(r,n))&&t.invert(r[0],r[1])}),r}function Yr(){return!0}function Wr(t,e,r,n,a){var i=[],o=[];if(t.forEach((function(t){if(!((e=t.length-1)<=0)){var e,r=t[0],n=t[e];if(Br(r,n)){a.lineStart();for(var s=0;s<e;++s)a.point((r=t[s])[0],r[1]);a.lineEnd()}else{var l=new Xr(r,t,null,!0),c=new Xr(r,null,l,!1);l.o=c,i.push(l),o.push(c),l=new Xr(n,t,null,!1),c=new Xr(n,null,l,!0),l.o=c,i.push(l),o.push(c)}}})),o.sort(e),Zr(i),Zr(o),i.length){for(var s=0,l=r,c=o.length;s<c;++s)o[s].e=l=!l;for(var u,h,f=i[0];;){for(var p=f,d=!0;p.v;)if((p=p.n)===f)return;u=p.z,a.lineStart();do{if(p.v=p.o.v=!0,p.e){if(d)for(s=0,c=u.length;s<c;++s)a.point((h=u[s])[0],h[1]);else n(p.x,p.n.x,1,a);p=p.n}else{if(d)for(s=(u=p.p.z).length-1;s>=0;--s)a.point((h=u[s])[0],h[1]);else n(p.x,p.p.x,-1,a);p=p.p}u=(p=p.o).z,d=!d}while(!p.v);a.lineEnd()}}}function Zr(t){if(e=t.length){for(var e,r,n=0,a=t[0];++n<e;)a.n=r=t[n],r.p=a,a=r;a.n=r=t[0],r.p=a}}function Xr(t,e,r,n){this.x=t,this.z=e,this.o=r,this.e=n,this.v=!1,this.n=this.p=null}function Jr(e,r,n,a){return function(i,o){var s,l=r(o),c=i.invert(a[0],a[1]),u={point:h,lineStart:p,lineEnd:d,polygonStart:function(){u.point=b,u.lineStart=_,u.lineEnd=w,s=[],g=[]},polygonEnd:function(){u.point=h,u.lineStart=p,u.lineEnd=d,s=t.merge(s);var e=function(t,e){var r=t[0],n=t[1],a=[Math.sin(r),-Math.cos(r),0],i=0,o=0;Er.reset();for(var s=0,l=e.length;s<l;++s){var c=e[s],u=c.length;if(u)for(var h=c[0],f=h[0],p=h[1]/2+At/4,d=Math.sin(p),g=Math.cos(p),m=1;;){m===u&&(m=0);var v=(t=c[m])[0],y=t[1]/2+At/4,x=Math.sin(y),b=Math.cos(y),_=v-f,w=_>=0?1:-1,T=w*_,k=T>At,M=d*x;if(Er.add(Math.atan2(M*w*Math.sin(T),g*b+M*Math.cos(T))),i+=k?_+w*St:_,k^f>=r^v>=r){var A=zr(Pr(h),Pr(t));Rr(A);var S=zr(a,A);Rr(S);var E=(k^_>=0?-1:1)*Dt(S[2]);(n>E||n===E&&(A[0]||A[1]))&&(o+=k^_>=0?1:-1)}if(!m++)break;f=v,d=x,g=b,h=t}}return(i<-kt||i<kt&&Er<-kt)^1&o}(c,g);s.length?(x||(o.polygonStart(),x=!0),Wr(s,$r,e,n,o)):e&&(x||(o.polygonStart(),x=!0),o.lineStart(),n(null,null,1,o),o.lineEnd()),x&&(o.polygonEnd(),x=!1),s=g=null},sphere:function(){o.polygonStart(),o.lineStart(),n(null,null,1,o),o.lineEnd(),o.polygonEnd()}};function h(t,r){var n=i(t,r);e(t=n[0],r=n[1])&&o.point(t,r)}function f(t,e){var r=i(t,e);l.point(r[0],r[1])}function p(){u.point=f,l.lineStart()}function d(){u.point=h,l.lineEnd()}var g,m,v=Qr(),y=r(v),x=!1;function b(t,e){m.push([t,e]);var r=i(t,e);y.point(r[0],r[1])}function _(){y.lineStart(),m=[]}function w(){b(m[0][0],m[0][1]),y.lineEnd();var t,e=y.clean(),r=v.buffer(),n=r.length;if(m.pop(),g.push(m),m=null,n)if(1&e){var a,i=-1;if((n=(t=r[0]).length-1)>0){for(x||(o.polygonStart(),x=!0),o.lineStart();++i<n;)o.point((a=t[i])[0],a[1]);o.lineEnd()}}else n>1&&2&e&&r.push(r.pop().concat(r.shift())),s.push(r.filter(Kr))}return u}}function Kr(t){return t.length>1}function Qr(){var t,e=[];return{lineStart:function(){e.push(t=[])},point:function(e,r){t.push([e,r])},lineEnd:O,buffer:function(){var r=e;return e=[],t=null,r},rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))}}}function $r(t,e){return((t=t.x)[0]<0?t[1]-Ct-kt:Ct-t[1])-((e=e.x)[0]<0?e[1]-Ct-kt:Ct-e[1])}var tn=Jr(Yr,(function(t){var e,r=NaN,n=NaN,a=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(i,o){var s=i>0?At:-At,l=y(i-r);y(l-At)<kt?(t.point(r,n=(n+o)/2>0?Ct:-Ct),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(s,n),t.point(i,n),e=0):a!==s&&l>=At&&(y(r-a)<kt&&(r-=a*kt),y(i-s)<kt&&(i-=s*kt),n=function(t,e,r,n){var a,i,o=Math.sin(t-r);return y(o)>kt?Math.atan((Math.sin(e)*(i=Math.cos(n))*Math.sin(r)-Math.sin(n)*(a=Math.cos(e))*Math.sin(t))/(a*i*o)):(e+n)/2}(r,n,i,o),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(s,n),e=0),t.point(r=i,n=o),a=s},lineEnd:function(){t.lineEnd(),r=n=NaN},clean:function(){return 2-e}}}),(function(t,e,r,n){var a;if(null==t)a=r*Ct,n.point(-At,a),n.point(0,a),n.point(At,a),n.point(At,0),n.point(At,-a),n.point(0,-a),n.point(-At,-a),n.point(-At,0),n.point(-At,a);else if(y(t[0]-e[0])>kt){var i=t[0]<e[0]?At:-At;a=r*i/2,n.point(-i,a),n.point(0,a),n.point(i,a)}else n.point(e[0],e[1])}),[-At,-At/2]);function en(t){var e=Math.cos(t),r=e>0,n=y(e)>kt;return Jr(a,(function(t){var e,s,l,c,u;return{lineStart:function(){c=l=!1,u=1},point:function(h,f){var p,d=[h,f],g=a(h,f),m=r?g?0:o(h,f):g?o(h+(h<0?At:-At),f):0;if(!e&&(c=l=g)&&t.lineStart(),g!==l&&(p=i(e,d),(Br(e,p)||Br(d,p))&&(d[0]+=kt,d[1]+=kt,g=a(d[0],d[1]))),g!==l)u=0,g?(t.lineStart(),p=i(d,e),t.point(p[0],p[1])):(p=i(e,d),t.point(p[0],p[1]),t.lineEnd()),e=p;else if(n&&e&&r^g){var v;m&s||!(v=i(d,e,!0))||(u=0,r?(t.lineStart(),t.point(v[0][0],v[0][1]),t.point(v[1][0],v[1][1]),t.lineEnd()):(t.point(v[1][0],v[1][1]),t.lineEnd(),t.lineStart(),t.point(v[0][0],v[0][1])))}!g||e&&Br(e,d)||t.point(d[0],d[1]),e=d,l=g,s=m},lineEnd:function(){l&&t.lineEnd(),e=null},clean:function(){return u|(c&&l)<<1}}}),Bn(t,6*Lt),r?[0,-t]:[-At,t-At]);function a(t,r){return Math.cos(t)*Math.cos(r)>e}function i(t,r,n){var a=[1,0,0],i=zr(Pr(t),Pr(r)),o=Ir(i,i),s=i[0],l=o-s*s;if(!l)return!n&&t;var c=e*o/l,u=-e*s/l,h=zr(a,i),f=Dr(a,c);Or(f,Dr(i,u));var p=h,d=Ir(f,p),g=Ir(p,p),m=d*d-g*(Ir(f,f)-1);if(!(m<0)){var v=Math.sqrt(m),x=Dr(p,(-d-v)/g);if(Or(x,f),x=Fr(x),!n)return x;var b,_=t[0],w=r[0],T=t[1],k=r[1];w<_&&(b=_,_=w,w=b);var M=w-_,A=y(M-At)<kt;if(!A&&k<T&&(b=T,T=k,k=b),A||M<kt?A?T+k>0^x[1]<(y(x[0]-_)<kt?T:k):T<=x[1]&&x[1]<=k:M>At^(_<=x[0]&&x[0]<=w)){var S=Dr(p,(-d+v)/g);return Or(S,f),[x,Fr(S)]}}}function o(e,n){var a=r?t:At-t,i=0;return e<-a?i|=1:e>a&&(i|=2),n<-a?i|=4:n>a&&(i|=8),i}}function rn(t,e,r,n){return function(a){var i,o=a.a,s=a.b,l=o.x,c=o.y,u=0,h=1,f=s.x-l,p=s.y-c;if(i=t-l,f||!(i>0)){if(i/=f,f<0){if(i<u)return;i<h&&(h=i)}else if(f>0){if(i>h)return;i>u&&(u=i)}if(i=r-l,f||!(i<0)){if(i/=f,f<0){if(i>h)return;i>u&&(u=i)}else if(f>0){if(i<u)return;i<h&&(h=i)}if(i=e-c,p||!(i>0)){if(i/=p,p<0){if(i<u)return;i<h&&(h=i)}else if(p>0){if(i>h)return;i>u&&(u=i)}if(i=n-c,p||!(i<0)){if(i/=p,p<0){if(i>h)return;i>u&&(u=i)}else if(p>0){if(i<u)return;i<h&&(h=i)}return u>0&&(a.a={x:l+u*f,y:c+u*p}),h<1&&(a.b={x:l+h*f,y:c+h*p}),a}}}}}}function nn(e,r,n,a){return function(l){var c,u,h,f,p,d,g,m,v,y,x,b=l,_=Qr(),w=rn(e,r,n,a),T={point:A,lineStart:function(){T.point=S,u&&u.push(h=[]);y=!0,v=!1,g=m=NaN},lineEnd:function(){c&&(S(f,p),d&&v&&_.rejoin(),c.push(_.buffer()));T.point=A,v&&l.lineEnd()},polygonStart:function(){l=_,c=[],u=[],x=!0},polygonEnd:function(){l=b,c=t.merge(c);var r=function(t){for(var e=0,r=u.length,n=t[1],a=0;a<r;++a)for(var i,o=1,s=u[a],l=s.length,c=s[0];o<l;++o)i=s[o],c[1]<=n?i[1]>n&&zt(c,i,t)>0&&++e:i[1]<=n&&zt(c,i,t)<0&&--e,c=i;return 0!==e}([e,a]),n=x&&r,i=c.length;(n||i)&&(l.polygonStart(),n&&(l.lineStart(),k(null,null,1,l),l.lineEnd()),i&&Wr(c,o,r,k,l),l.polygonEnd()),c=u=h=null}};function k(t,o,l,c){var u=0,h=0;if(null==t||(u=i(t,l))!==(h=i(o,l))||s(t,o)<0^l>0)do{c.point(0===u||3===u?e:n,u>1?a:r)}while((u=(u+l+4)%4)!==h);else c.point(o[0],o[1])}function M(t,i){return e<=t&&t<=n&&r<=i&&i<=a}function A(t,e){M(t,e)&&l.point(t,e)}function S(t,e){var r=M(t=Math.max(-1e9,Math.min(1e9,t)),e=Math.max(-1e9,Math.min(1e9,e)));if(u&&h.push([t,e]),y)f=t,p=e,d=r,y=!1,r&&(l.lineStart(),l.point(t,e));else if(r&&v)l.point(t,e);else{var n={a:{x:g,y:m},b:{x:t,y:e}};w(n)?(v||(l.lineStart(),l.point(n.a.x,n.a.y)),l.point(n.b.x,n.b.y),r||l.lineEnd(),x=!1):r&&(l.lineStart(),l.point(t,e),x=!1)}g=t,m=e,v=r}return T};function i(t,a){return y(t[0]-e)<kt?a>0?0:3:y(t[0]-n)<kt?a>0?2:1:y(t[1]-r)<kt?a>0?1:0:a>0?3:2}function o(t,e){return s(t.x,e.x)}function s(t,e){var r=i(t,1),n=i(e,1);return r!==n?r-n:0===r?e[1]-t[1]:1===r?t[0]-e[0]:2===r?t[1]-e[1]:e[0]-t[0]}}function an(t){var e=0,r=At/3,n=Ln(t),a=n(e,r);return a.parallels=function(t){return arguments.length?n(e=t[0]*At/180,r=t[1]*At/180):[e/At*180,r/At*180]},a}function on(t,e){var r=Math.sin(t),n=(r+Math.sin(e))/2,a=1+r*(2*n-r),i=Math.sqrt(a)/n;function o(t,e){var r=Math.sqrt(a-2*n*Math.sin(e))/n;return[r*Math.sin(t*=n),i-r*Math.cos(t)]}return o.invert=function(t,e){var r=i-e;return[Math.atan2(t,r)/n,Dt((a-(t*t+r*r)*n*n)/(2*n))]},o}t.geo.clipExtent=function(){var t,e,r,n,a,i,o={stream:function(t){return a&&(a.valid=!1),(a=i(t)).valid=!0,a},extent:function(s){return arguments.length?(i=nn(t=+s[0][0],e=+s[0][1],r=+s[1][0],n=+s[1][1]),a&&(a.valid=!1,a=null),o):[[t,e],[r,n]]}};return o.extent([[0,0],[960,500]])},(t.geo.conicEqualArea=function(){return an(on)}).raw=on,t.geo.albers=function(){return t.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},t.geo.albersUsa=function(){var e,r,n,a,i=t.geo.albers(),o=t.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),s=t.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),l={point:function(t,r){e=[t,r]}};function c(t){var i=t[0],o=t[1];return e=null,r(i,o),e||(n(i,o),e)||a(i,o),e}return c.invert=function(t){var e=i.scale(),r=i.translate(),n=(t[0]-r[0])/e,a=(t[1]-r[1])/e;return(a>=.12&&a<.234&&n>=-.425&&n<-.214?o:a>=.166&&a<.234&&n>=-.214&&n<-.115?s:i).invert(t)},c.stream=function(t){var e=i.stream(t),r=o.stream(t),n=s.stream(t);return{point:function(t,a){e.point(t,a),r.point(t,a),n.point(t,a)},sphere:function(){e.sphere(),r.sphere(),n.sphere()},lineStart:function(){e.lineStart(),r.lineStart(),n.lineStart()},lineEnd:function(){e.lineEnd(),r.lineEnd(),n.lineEnd()},polygonStart:function(){e.polygonStart(),r.polygonStart(),n.polygonStart()},polygonEnd:function(){e.polygonEnd(),r.polygonEnd(),n.polygonEnd()}}},c.precision=function(t){return arguments.length?(i.precision(t),o.precision(t),s.precision(t),c):i.precision()},c.scale=function(t){return arguments.length?(i.scale(t),o.scale(.35*t),s.scale(t),c.translate(i.translate())):i.scale()},c.translate=function(t){if(!arguments.length)return i.translate();var e=i.scale(),u=+t[0],h=+t[1];return r=i.translate(t).clipExtent([[u-.455*e,h-.238*e],[u+.455*e,h+.238*e]]).stream(l).point,n=o.translate([u-.307*e,h+.201*e]).clipExtent([[u-.425*e+kt,h+.12*e+kt],[u-.214*e-kt,h+.234*e-kt]]).stream(l).point,a=s.translate([u-.205*e,h+.212*e]).clipExtent([[u-.214*e+kt,h+.166*e+kt],[u-.115*e-kt,h+.234*e-kt]]).stream(l).point,c},c.scale(1070)};var sn,ln,cn,un,hn,fn,pn={point:O,lineStart:O,lineEnd:O,polygonStart:function(){ln=0,pn.lineStart=dn},polygonEnd:function(){pn.lineStart=pn.lineEnd=pn.point=O,sn+=y(ln/2)}};function dn(){var t,e,r,n;function a(t,e){ln+=n*t-r*e,r=t,n=e}pn.point=function(i,o){pn.point=a,t=r=i,e=n=o},pn.lineEnd=function(){a(t,e)}}var gn={point:function(t,e){t<cn&&(cn=t);t>hn&&(hn=t);e<un&&(un=e);e>fn&&(fn=e)},lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O};function mn(){var t=vn(4.5),e=[],r={point:n,lineStart:function(){r.point=a},lineEnd:o,polygonStart:function(){r.lineEnd=s},polygonEnd:function(){r.lineEnd=o,r.point=n},pointRadius:function(e){return t=vn(e),r},result:function(){if(e.length){var t=e.join(\"\");return e=[],t}}};function n(r,n){e.push(\"M\",r,\",\",n,t)}function a(t,n){e.push(\"M\",t,\",\",n),r.point=i}function i(t,r){e.push(\"L\",t,\",\",r)}function o(){r.point=n}function s(){e.push(\"Z\")}return r}function vn(t){return\"m0,\"+t+\"a\"+t+\",\"+t+\" 0 1,1 0,\"+-2*t+\"a\"+t+\",\"+t+\" 0 1,1 0,\"+2*t+\"z\"}var yn,xn={point:bn,lineStart:_n,lineEnd:wn,polygonStart:function(){xn.lineStart=Tn},polygonEnd:function(){xn.point=bn,xn.lineStart=_n,xn.lineEnd=wn}};function bn(t,e){xr+=t,br+=e,++_r}function _n(){var t,e;function r(r,n){var a=r-t,i=n-e,o=Math.sqrt(a*a+i*i);wr+=o*(t+r)/2,Tr+=o*(e+n)/2,kr+=o,bn(t=r,e=n)}xn.point=function(n,a){xn.point=r,bn(t=n,e=a)}}function wn(){xn.point=bn}function Tn(){var t,e,r,n;function a(t,e){var a=t-r,i=e-n,o=Math.sqrt(a*a+i*i);wr+=o*(r+t)/2,Tr+=o*(n+e)/2,kr+=o,Mr+=(o=n*t-r*e)*(r+t),Ar+=o*(n+e),Sr+=3*o,bn(r=t,n=e)}xn.point=function(i,o){xn.point=a,bn(t=r=i,e=n=o)},xn.lineEnd=function(){a(t,e)}}function kn(t){var e=4.5,r={point:n,lineStart:function(){r.point=a},lineEnd:o,polygonStart:function(){r.lineEnd=s},polygonEnd:function(){r.lineEnd=o,r.point=n},pointRadius:function(t){return e=t,r},result:O};function n(r,n){t.moveTo(r+e,n),t.arc(r,n,e,0,St)}function a(e,n){t.moveTo(e,n),r.point=i}function i(e,r){t.lineTo(e,r)}function o(){r.point=n}function s(){t.closePath()}return r}function Mn(t){var e=.5,r=Math.cos(30*Lt),n=16;function a(t){return(n?o:i)(t)}function i(e){return En(e,(function(r,n){r=t(r,n),e.point(r[0],r[1])}))}function o(e){var r,a,i,o,l,c,u,h,f,p,d,g,m={point:v,lineStart:y,lineEnd:b,polygonStart:function(){e.polygonStart(),m.lineStart=_},polygonEnd:function(){e.polygonEnd(),m.lineStart=y}};function v(r,n){r=t(r,n),e.point(r[0],r[1])}function y(){h=NaN,m.point=x,e.lineStart()}function x(r,a){var i=Pr([r,a]),o=t(r,a);s(h,f,u,p,d,g,h=o[0],f=o[1],u=r,p=i[0],d=i[1],g=i[2],n,e),e.point(h,f)}function b(){m.point=v,e.lineEnd()}function _(){y(),m.point=w,m.lineEnd=T}function w(t,e){x(r=t,e),a=h,i=f,o=p,l=d,c=g,m.point=x}function T(){s(h,f,u,p,d,g,a,i,r,o,l,c,n,e),m.lineEnd=b,b()}return m}function s(n,a,i,o,l,c,u,h,f,p,d,g,m,v){var x=u-n,b=h-a,_=x*x+b*b;if(_>4*e&&m--){var w=o+p,T=l+d,k=c+g,M=Math.sqrt(w*w+T*T+k*k),A=Math.asin(k/=M),S=y(y(k)-1)<kt||y(i-f)<kt?(i+f)/2:Math.atan2(T,w),E=t(S,A),C=E[0],L=E[1],P=C-n,I=L-a,z=b*P-x*I;(z*z/_>e||y((x*P+b*I)/_-.5)>.3||o*p+l*d+c*g<r)&&(s(n,a,i,o,l,c,C,L,S,w/=M,T/=M,k,m,v),v.point(C,L),s(C,L,S,w,T,k,u,h,f,p,d,g,m,v))}}return a.precision=function(t){return arguments.length?(n=(e=t*t)>0&&16,a):Math.sqrt(e)},a}function An(t){var e=Mn((function(e,r){return t([e*Pt,r*Pt])}));return function(t){return Pn(e(t))}}function Sn(t){this.stream=t}function En(t,e){return{point:e,sphere:function(){t.sphere()},lineStart:function(){t.lineStart()},lineEnd:function(){t.lineEnd()},polygonStart:function(){t.polygonStart()},polygonEnd:function(){t.polygonEnd()}}}function Cn(t){return Ln((function(){return t}))()}function Ln(e){var r,n,a,i,o,s,l=Mn((function(t,e){return[(t=r(t,e))[0]*c+i,o-t[1]*c]})),c=150,u=480,h=250,f=0,p=0,d=0,g=0,m=0,v=tn,y=L,x=null,b=null;function _(t){return[(t=a(t[0]*Lt,t[1]*Lt))[0]*c+i,o-t[1]*c]}function w(t){return(t=a.invert((t[0]-i)/c,(o-t[1])/c))&&[t[0]*Pt,t[1]*Pt]}function T(){a=Gr(n=On(d,g,m),r);var t=r(f,p);return i=u-t[0]*c,o=h+t[1]*c,k()}function k(){return s&&(s.valid=!1,s=null),_}return _.stream=function(t){return s&&(s.valid=!1),(s=Pn(v(n,l(y(t))))).valid=!0,s},_.clipAngle=function(t){return arguments.length?(v=null==t?(x=t,tn):en((x=+t)*Lt),k()):x},_.clipExtent=function(t){return arguments.length?(b=t,y=t?nn(t[0][0],t[0][1],t[1][0],t[1][1]):L,k()):b},_.scale=function(t){return arguments.length?(c=+t,T()):c},_.translate=function(t){return arguments.length?(u=+t[0],h=+t[1],T()):[u,h]},_.center=function(t){return arguments.length?(f=t[0]%360*Lt,p=t[1]%360*Lt,T()):[f*Pt,p*Pt]},_.rotate=function(t){return arguments.length?(d=t[0]%360*Lt,g=t[1]%360*Lt,m=t.length>2?t[2]%360*Lt:0,T()):[d*Pt,g*Pt,m*Pt]},t.rebind(_,l,\"precision\"),function(){return r=e.apply(this,arguments),_.invert=r.invert&&w,T()}}function Pn(t){return En(t,(function(e,r){t.point(e*Lt,r*Lt)}))}function In(t,e){return[t,e]}function zn(t,e){return[t>At?t-St:t<-At?t+St:t,e]}function On(t,e,r){return t?e||r?Gr(Rn(t),Fn(e,r)):Rn(t):e||r?Fn(e,r):zn}function Dn(t){return function(e,r){return[(e+=t)>At?e-St:e<-At?e+St:e,r]}}function Rn(t){var e=Dn(t);return e.invert=Dn(-t),e}function Fn(t,e){var r=Math.cos(t),n=Math.sin(t),a=Math.cos(e),i=Math.sin(e);function o(t,e){var o=Math.cos(e),s=Math.cos(t)*o,l=Math.sin(t)*o,c=Math.sin(e),u=c*r+s*n;return[Math.atan2(l*a-u*i,s*r-c*n),Dt(u*a+l*i)]}return o.invert=function(t,e){var o=Math.cos(e),s=Math.cos(t)*o,l=Math.sin(t)*o,c=Math.sin(e),u=c*a-l*i;return[Math.atan2(l*a+c*i,s*r+u*n),Dt(u*r-s*n)]},o}function Bn(t,e){var r=Math.cos(t),n=Math.sin(t);return function(a,i,o,s){var l=o*e;null!=a?(a=Nn(r,a),i=Nn(r,i),(o>0?a<i:a>i)&&(a+=o*St)):(a=t+o*St,i=t-.5*l);for(var c,u=a;o>0?u>i:u<i;u-=l)s.point((c=Fr([r,-n*Math.cos(u),-n*Math.sin(u)]))[0],c[1])}}function Nn(t,e){var r=Pr(e);r[0]-=t,Rr(r);var n=Ot(-r[1]);return((-r[2]<0?-n:n)+2*Math.PI-kt)%(2*Math.PI)}function jn(e,r,n){var a=t.range(e,r-kt,n).concat(r);return function(t){return a.map((function(e){return[t,e]}))}}function Un(e,r,n){var a=t.range(e,r-kt,n).concat(r);return function(t){return a.map((function(e){return[e,t]}))}}function Vn(t){return t.source}function qn(t){return t.target}t.geo.path=function(){var e,r,n,a,i,o=4.5;function s(e){return e&&(\"function\"==typeof o&&a.pointRadius(+o.apply(this,arguments)),i&&i.valid||(i=n(a)),t.geo.stream(e,i)),a.result()}function l(){return i=null,s}return s.area=function(e){return sn=0,t.geo.stream(e,n(pn)),sn},s.centroid=function(e){return xr=br=_r=wr=Tr=kr=Mr=Ar=Sr=0,t.geo.stream(e,n(xn)),Sr?[Mr/Sr,Ar/Sr]:kr?[wr/kr,Tr/kr]:_r?[xr/_r,br/_r]:[NaN,NaN]},s.bounds=function(e){return hn=fn=-(cn=un=1/0),t.geo.stream(e,n(gn)),[[cn,un],[hn,fn]]},s.projection=function(t){return arguments.length?(n=(e=t)?t.stream||An(t):L,l()):e},s.context=function(t){return arguments.length?(a=null==(r=t)?new mn:new kn(t),\"function\"!=typeof o&&a.pointRadius(o),l()):r},s.pointRadius=function(t){return arguments.length?(o=\"function\"==typeof t?t:(a.pointRadius(+t),+t),s):o},s.projection(t.geo.albersUsa()).context(null)},t.geo.transform=function(t){return{stream:function(e){var r=new Sn(e);for(var n in t)r[n]=t[n];return r}}},Sn.prototype={point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}},t.geo.projection=Cn,t.geo.projectionMutator=Ln,(t.geo.equirectangular=function(){return Cn(In)}).raw=In.invert=In,t.geo.rotation=function(t){function e(e){return(e=t(e[0]*Lt,e[1]*Lt))[0]*=Pt,e[1]*=Pt,e}return t=On(t[0]%360*Lt,t[1]*Lt,t.length>2?t[2]*Lt:0),e.invert=function(e){return(e=t.invert(e[0]*Lt,e[1]*Lt))[0]*=Pt,e[1]*=Pt,e},e},zn.invert=In,t.geo.circle=function(){var t,e,r=[0,0],n=6;function a(){var t=\"function\"==typeof r?r.apply(this,arguments):r,n=On(-t[0]*Lt,-t[1]*Lt,0).invert,a=[];return e(null,null,1,{point:function(t,e){a.push(t=n(t,e)),t[0]*=Pt,t[1]*=Pt}}),{type:\"Polygon\",coordinates:[a]}}return a.origin=function(t){return arguments.length?(r=t,a):r},a.angle=function(r){return arguments.length?(e=Bn((t=+r)*Lt,n*Lt),a):t},a.precision=function(r){return arguments.length?(e=Bn(t*Lt,(n=+r)*Lt),a):n},a.angle(90)},t.geo.distance=function(t,e){var r,n=(e[0]-t[0])*Lt,a=t[1]*Lt,i=e[1]*Lt,o=Math.sin(n),s=Math.cos(n),l=Math.sin(a),c=Math.cos(a),u=Math.sin(i),h=Math.cos(i);return Math.atan2(Math.sqrt((r=h*o)*r+(r=c*u-l*h*s)*r),l*u+c*h*s)},t.geo.graticule=function(){var e,r,n,a,i,o,s,l,c,u,h,f,p=10,d=p,g=90,m=360,v=2.5;function x(){return{type:\"MultiLineString\",coordinates:b()}}function b(){return t.range(Math.ceil(a/g)*g,n,g).map(h).concat(t.range(Math.ceil(l/m)*m,s,m).map(f)).concat(t.range(Math.ceil(r/p)*p,e,p).filter((function(t){return y(t%g)>kt})).map(c)).concat(t.range(Math.ceil(o/d)*d,i,d).filter((function(t){return y(t%m)>kt})).map(u))}return x.lines=function(){return b().map((function(t){return{type:\"LineString\",coordinates:t}}))},x.outline=function(){return{type:\"Polygon\",coordinates:[h(a).concat(f(s).slice(1),h(n).reverse().slice(1),f(l).reverse().slice(1))]}},x.extent=function(t){return arguments.length?x.majorExtent(t).minorExtent(t):x.minorExtent()},x.majorExtent=function(t){return arguments.length?(a=+t[0][0],n=+t[1][0],l=+t[0][1],s=+t[1][1],a>n&&(t=a,a=n,n=t),l>s&&(t=l,l=s,s=t),x.precision(v)):[[a,l],[n,s]]},x.minorExtent=function(t){return arguments.length?(r=+t[0][0],e=+t[1][0],o=+t[0][1],i=+t[1][1],r>e&&(t=r,r=e,e=t),o>i&&(t=o,o=i,i=t),x.precision(v)):[[r,o],[e,i]]},x.step=function(t){return arguments.length?x.majorStep(t).minorStep(t):x.minorStep()},x.majorStep=function(t){return arguments.length?(g=+t[0],m=+t[1],x):[g,m]},x.minorStep=function(t){return arguments.length?(p=+t[0],d=+t[1],x):[p,d]},x.precision=function(t){return arguments.length?(v=+t,c=jn(o,i,90),u=Un(r,e,v),h=jn(l,s,90),f=Un(a,n,v),x):v},x.majorExtent([[-180,-90+kt],[180,90-kt]]).minorExtent([[-180,-80-kt],[180,80+kt]])},t.geo.greatArc=function(){var e,r,n=Vn,a=qn;function i(){return{type:\"LineString\",coordinates:[e||n.apply(this,arguments),r||a.apply(this,arguments)]}}return i.distance=function(){return t.geo.distance(e||n.apply(this,arguments),r||a.apply(this,arguments))},i.source=function(t){return arguments.length?(n=t,e=\"function\"==typeof t?null:t,i):n},i.target=function(t){return arguments.length?(a=t,r=\"function\"==typeof t?null:t,i):a},i.precision=function(){return arguments.length?i:0},i},t.geo.interpolate=function(t,e){return r=t[0]*Lt,n=t[1]*Lt,a=e[0]*Lt,i=e[1]*Lt,o=Math.cos(n),s=Math.sin(n),l=Math.cos(i),c=Math.sin(i),u=o*Math.cos(r),h=o*Math.sin(r),f=l*Math.cos(a),p=l*Math.sin(a),d=2*Math.asin(Math.sqrt(Ft(i-n)+o*l*Ft(a-r))),g=1/Math.sin(d),(m=d?function(t){var e=Math.sin(t*=d)*g,r=Math.sin(d-t)*g,n=r*u+e*f,a=r*h+e*p,i=r*s+e*c;return[Math.atan2(a,n)*Pt,Math.atan2(i,Math.sqrt(n*n+a*a))*Pt]}:function(){return[r*Pt,n*Pt]}).distance=d,m;var r,n,a,i,o,s,l,c,u,h,f,p,d,g,m},t.geo.length=function(e){return yn=0,t.geo.stream(e,Hn),yn};var Hn={sphere:O,point:O,lineStart:function(){var t,e,r;function n(n,a){var i=Math.sin(a*=Lt),o=Math.cos(a),s=y((n*=Lt)-t),l=Math.cos(s);yn+=Math.atan2(Math.sqrt((s=o*Math.sin(s))*s+(s=r*i-e*o*l)*s),e*i+r*o*l),t=n,e=i,r=o}Hn.point=function(a,i){t=a*Lt,e=Math.sin(i*=Lt),r=Math.cos(i),Hn.point=n},Hn.lineEnd=function(){Hn.point=Hn.lineEnd=O}},lineEnd:O,polygonStart:O,polygonEnd:O};function Gn(t,e){function r(e,r){var n=Math.cos(e),a=Math.cos(r),i=t(n*a);return[i*a*Math.sin(e),i*Math.sin(r)]}return r.invert=function(t,r){var n=Math.sqrt(t*t+r*r),a=e(n),i=Math.sin(a),o=Math.cos(a);return[Math.atan2(t*i,n*o),Math.asin(n&&r*i/n)]},r}var Yn=Gn((function(t){return Math.sqrt(2/(1+t))}),(function(t){return 2*Math.asin(t/2)}));(t.geo.azimuthalEqualArea=function(){return Cn(Yn)}).raw=Yn;var Wn=Gn((function(t){var e=Math.acos(t);return e&&e/Math.sin(e)}),L);function Zn(t,e){var r=Math.cos(t),n=function(t){return Math.tan(At/4+t/2)},a=t===e?Math.sin(t):Math.log(r/Math.cos(e))/Math.log(n(e)/n(t)),i=r*Math.pow(n(t),a)/a;if(!a)return Kn;function o(t,e){i>0?e<-Ct+kt&&(e=-Ct+kt):e>Ct-kt&&(e=Ct-kt);var r=i/Math.pow(n(e),a);return[r*Math.sin(a*t),i-r*Math.cos(a*t)]}return o.invert=function(t,e){var r=i-e,n=It(a)*Math.sqrt(t*t+r*r);return[Math.atan2(t,r)/a,2*Math.atan(Math.pow(i/n,1/a))-Ct]},o}function Xn(t,e){var r=Math.cos(t),n=t===e?Math.sin(t):(r-Math.cos(e))/(e-t),a=r/n+t;if(y(n)<kt)return In;function i(t,e){var r=a-e;return[r*Math.sin(n*t),a-r*Math.cos(n*t)]}return i.invert=function(t,e){var r=a-e;return[Math.atan2(t,r)/n,a-It(n)*Math.sqrt(t*t+r*r)]},i}(t.geo.azimuthalEquidistant=function(){return Cn(Wn)}).raw=Wn,(t.geo.conicConformal=function(){return an(Zn)}).raw=Zn,(t.geo.conicEquidistant=function(){return an(Xn)}).raw=Xn;var Jn=Gn((function(t){return 1/t}),Math.atan);function Kn(t,e){return[t,Math.log(Math.tan(At/4+e/2))]}function Qn(t){var e,r=Cn(t),n=r.scale,a=r.translate,i=r.clipExtent;return r.scale=function(){var t=n.apply(r,arguments);return t===r?e?r.clipExtent(null):r:t},r.translate=function(){var t=a.apply(r,arguments);return t===r?e?r.clipExtent(null):r:t},r.clipExtent=function(t){var o=i.apply(r,arguments);if(o===r){if(e=null==t){var s=At*n(),l=a();i([[l[0]-s,l[1]-s],[l[0]+s,l[1]+s]])}}else e&&(o=null);return o},r.clipExtent(null)}(t.geo.gnomonic=function(){return Cn(Jn)}).raw=Jn,Kn.invert=function(t,e){return[t,2*Math.atan(Math.exp(e))-Ct]},(t.geo.mercator=function(){return Qn(Kn)}).raw=Kn;var $n=Gn((function(){return 1}),Math.asin);(t.geo.orthographic=function(){return Cn($n)}).raw=$n;var ta=Gn((function(t){return 1/(1+t)}),(function(t){return 2*Math.atan(t)}));function ea(t,e){return[Math.log(Math.tan(At/4+e/2)),-t]}function ra(t){return t[0]}function na(t){return t[1]}function aa(t){for(var e=t.length,r=[0,1],n=2,a=2;a<e;a++){for(;n>1&&zt(t[r[n-2]],t[r[n-1]],t[a])<=0;)--n;r[n++]=a}return r.slice(0,n)}function ia(t,e){return t[0]-e[0]||t[1]-e[1]}(t.geo.stereographic=function(){return Cn(ta)}).raw=ta,ea.invert=function(t,e){return[-e,2*Math.atan(Math.exp(t))-Ct]},(t.geo.transverseMercator=function(){var t=Qn(ea),e=t.center,r=t.rotate;return t.center=function(t){return t?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return t?r([t[0],t[1],t.length>2?t[2]+90:90]):[(t=r())[0],t[1],t[2]-90]},r([0,0,90])}).raw=ea,t.geom={},t.geom.hull=function(t){var e=ra,r=na;if(arguments.length)return n(t);function n(t){if(t.length<3)return[];var n,a=de(e),i=de(r),o=t.length,s=[],l=[];for(n=0;n<o;n++)s.push([+a.call(this,t[n],n),+i.call(this,t[n],n),n]);for(s.sort(ia),n=0;n<o;n++)l.push([s[n][0],-s[n][1]]);var c=aa(s),u=aa(l),h=u[0]===c[0],f=u[u.length-1]===c[c.length-1],p=[];for(n=c.length-1;n>=0;--n)p.push(t[s[c[n]][2]]);for(n=+h;n<u.length-f;++n)p.push(t[s[u[n]][2]]);return p}return n.x=function(t){return arguments.length?(e=t,n):e},n.y=function(t){return arguments.length?(r=t,n):r},n},t.geom.polygon=function(t){return U(t,oa),t};var oa=t.geom.polygon.prototype=[];function sa(t,e,r){return(r[0]-e[0])*(t[1]-e[1])<(r[1]-e[1])*(t[0]-e[0])}function la(t,e,r,n){var a=t[0],i=r[0],o=e[0]-a,s=n[0]-i,l=t[1],c=r[1],u=e[1]-l,h=n[1]-c,f=(s*(l-c)-h*(a-i))/(h*o-s*u);return[a+f*o,l+f*u]}function ca(t){var e=t[0],r=t[t.length-1];return!(e[0]-r[0]||e[1]-r[1])}oa.area=function(){for(var t,e=-1,r=this.length,n=this[r-1],a=0;++e<r;)t=n,n=this[e],a+=t[1]*n[0]-t[0]*n[1];return.5*a},oa.centroid=function(t){var e,r,n=-1,a=this.length,i=0,o=0,s=this[a-1];for(arguments.length||(t=-1/(6*this.area()));++n<a;)e=s,s=this[n],r=e[0]*s[1]-s[0]*e[1],i+=(e[0]+s[0])*r,o+=(e[1]+s[1])*r;return[i*t,o*t]},oa.clip=function(t){for(var e,r,n,a,i,o,s=ca(t),l=-1,c=this.length-ca(this),u=this[c-1];++l<c;){for(e=t.slice(),t.length=0,a=this[l],i=e[(n=e.length-s)-1],r=-1;++r<n;)sa(o=e[r],u,a)?(sa(i,u,a)||t.push(la(i,o,u,a)),t.push(o)):sa(i,u,a)&&t.push(la(i,o,u,a)),i=o;s&&t.push(t[0]),u=a}return t};var ua,ha,fa,pa,da,ga=[],ma=[];function va(){Ra(this),this.edge=this.site=this.circle=null}function ya(t){var e=ga.pop()||new va;return e.site=t,e}function xa(t){Ea(t),fa.remove(t),ga.push(t),Ra(t)}function ba(t){var e=t.circle,r=e.x,n=e.cy,a={x:r,y:n},i=t.P,o=t.N,s=[t];xa(t);for(var l=i;l.circle&&y(r-l.circle.x)<kt&&y(n-l.circle.cy)<kt;)i=l.P,s.unshift(l),xa(l),l=i;s.unshift(l),Ea(l);for(var c=o;c.circle&&y(r-c.circle.x)<kt&&y(n-c.circle.cy)<kt;)o=c.N,s.push(c),xa(c),c=o;s.push(c),Ea(c);var u,h=s.length;for(u=1;u<h;++u)c=s[u],l=s[u-1],za(c.edge,l.site,c.site,a);l=s[0],(c=s[h-1]).edge=Pa(l.site,c.site,null,a),Sa(l),Sa(c)}function _a(t){for(var e,r,n,a,i=t.x,o=t.y,s=fa._;s;)if((n=wa(s,o)-i)>kt)s=s.L;else{if(!((a=i-Ta(s,o))>kt)){n>-kt?(e=s.P,r=s):a>-kt?(e=s,r=s.N):e=r=s;break}if(!s.R){e=s;break}s=s.R}var l=ya(t);if(fa.insert(e,l),e||r){if(e===r)return Ea(e),r=ya(e.site),fa.insert(l,r),l.edge=r.edge=Pa(e.site,l.site),Sa(e),void Sa(r);if(r){Ea(e),Ea(r);var c=e.site,u=c.x,h=c.y,f=t.x-u,p=t.y-h,d=r.site,g=d.x-u,m=d.y-h,v=2*(f*m-p*g),y=f*f+p*p,x=g*g+m*m,b={x:(m*y-p*x)/v+u,y:(f*x-g*y)/v+h};za(r.edge,c,d,b),l.edge=Pa(c,t,null,b),r.edge=Pa(t,d,null,b),Sa(e),Sa(r)}else l.edge=Pa(e.site,l.site)}}function wa(t,e){var r=t.site,n=r.x,a=r.y,i=a-e;if(!i)return n;var o=t.P;if(!o)return-1/0;var s=(r=o.site).x,l=r.y,c=l-e;if(!c)return s;var u=s-n,h=1/i-1/c,f=u/c;return h?(-f+Math.sqrt(f*f-2*h*(u*u/(-2*c)-l+c/2+a-i/2)))/h+n:(n+s)/2}function Ta(t,e){var r=t.N;if(r)return wa(r,e);var n=t.site;return n.y===e?n.x:1/0}function ka(t){this.site=t,this.edges=[]}function Ma(t,e){return e.angle-t.angle}function Aa(){Ra(this),this.x=this.y=this.arc=this.site=this.cy=null}function Sa(t){var e=t.P,r=t.N;if(e&&r){var n=e.site,a=t.site,i=r.site;if(n!==i){var o=a.x,s=a.y,l=n.x-o,c=n.y-s,u=i.x-o,h=2*(l*(m=i.y-s)-c*u);if(!(h>=-Mt)){var f=l*l+c*c,p=u*u+m*m,d=(m*f-c*p)/h,g=(l*p-u*f)/h,m=g+s,v=ma.pop()||new Aa;v.arc=t,v.site=a,v.x=d+o,v.y=m+Math.sqrt(d*d+g*g),v.cy=m,t.circle=v;for(var y=null,x=da._;x;)if(v.y<x.y||v.y===x.y&&v.x<=x.x){if(!x.L){y=x.P;break}x=x.L}else{if(!x.R){y=x;break}x=x.R}da.insert(y,v),y||(pa=v)}}}}function Ea(t){var e=t.circle;e&&(e.P||(pa=e.N),da.remove(e),ma.push(e),Ra(e),t.circle=null)}function Ca(t,e){var r=t.b;if(r)return!0;var n,a,i=t.a,o=e[0][0],s=e[1][0],l=e[0][1],c=e[1][1],u=t.l,h=t.r,f=u.x,p=u.y,d=h.x,g=h.y,m=(f+d)/2,v=(p+g)/2;if(g===p){if(m<o||m>=s)return;if(f>d){if(i){if(i.y>=c)return}else i={x:m,y:l};r={x:m,y:c}}else{if(i){if(i.y<l)return}else i={x:m,y:c};r={x:m,y:l}}}else if(a=v-(n=(f-d)/(g-p))*m,n<-1||n>1)if(f>d){if(i){if(i.y>=c)return}else i={x:(l-a)/n,y:l};r={x:(c-a)/n,y:c}}else{if(i){if(i.y<l)return}else i={x:(c-a)/n,y:c};r={x:(l-a)/n,y:l}}else if(p<g){if(i){if(i.x>=s)return}else i={x:o,y:n*o+a};r={x:s,y:n*s+a}}else{if(i){if(i.x<o)return}else i={x:s,y:n*s+a};r={x:o,y:n*o+a}}return t.a=i,t.b=r,!0}function La(t,e){this.l=t,this.r=e,this.a=this.b=null}function Pa(t,e,r,n){var a=new La(t,e);return ua.push(a),r&&za(a,t,e,r),n&&za(a,e,t,n),ha[t.i].edges.push(new Oa(a,t,e)),ha[e.i].edges.push(new Oa(a,e,t)),a}function Ia(t,e,r){var n=new La(t,null);return n.a=e,n.b=r,ua.push(n),n}function za(t,e,r,n){t.a||t.b?t.l===r?t.b=n:t.a=n:(t.a=n,t.l=e,t.r=r)}function Oa(t,e,r){var n=t.a,a=t.b;this.edge=t,this.site=e,this.angle=r?Math.atan2(r.y-e.y,r.x-e.x):t.l===e?Math.atan2(a.x-n.x,n.y-a.y):Math.atan2(n.x-a.x,a.y-n.y)}function Da(){this._=null}function Ra(t){t.U=t.C=t.L=t.R=t.P=t.N=null}function Fa(t,e){var r=e,n=e.R,a=r.U;a?a.L===r?a.L=n:a.R=n:t._=n,n.U=a,r.U=n,r.R=n.L,r.R&&(r.R.U=r),n.L=r}function Ba(t,e){var r=e,n=e.L,a=r.U;a?a.L===r?a.L=n:a.R=n:t._=n,n.U=a,r.U=n,r.L=n.R,r.L&&(r.L.U=r),n.R=r}function Na(t){for(;t.L;)t=t.L;return t}function ja(t,e){var r,n,a,i=t.sort(Ua).pop();for(ua=[],ha=new Array(t.length),fa=new Da,da=new Da;;)if(a=pa,i&&(!a||i.y<a.y||i.y===a.y&&i.x<a.x))i.x===r&&i.y===n||(ha[i.i]=new ka(i),_a(i),r=i.x,n=i.y),i=t.pop();else{if(!a)break;ba(a.arc)}e&&(function(t){for(var e,r=ua,n=rn(t[0][0],t[0][1],t[1][0],t[1][1]),a=r.length;a--;)(!Ca(e=r[a],t)||!n(e)||y(e.a.x-e.b.x)<kt&&y(e.a.y-e.b.y)<kt)&&(e.a=e.b=null,r.splice(a,1))}(e),function(t){for(var e,r,n,a,i,o,s,l,c,u,h=t[0][0],f=t[1][0],p=t[0][1],d=t[1][1],g=ha,m=g.length;m--;)if((i=g[m])&&i.prepare())for(l=(s=i.edges).length,o=0;o<l;)n=(u=s[o].end()).x,a=u.y,e=(c=s[++o%l].start()).x,r=c.y,(y(n-e)>kt||y(a-r)>kt)&&(s.splice(o,0,new Oa(Ia(i.site,u,y(n-h)<kt&&d-a>kt?{x:h,y:y(e-h)<kt?r:d}:y(a-d)<kt&&f-n>kt?{x:y(r-d)<kt?e:f,y:d}:y(n-f)<kt&&a-p>kt?{x:f,y:y(e-f)<kt?r:p}:y(a-p)<kt&&n-h>kt?{x:y(r-p)<kt?e:h,y:p}:null),i.site,null)),++l)}(e));var o={cells:ha,edges:ua};return fa=da=ua=ha=null,o}function Ua(t,e){return e.y-t.y||e.x-t.x}ka.prototype.prepare=function(){for(var t,e=this.edges,r=e.length;r--;)(t=e[r].edge).b&&t.a||e.splice(r,1);return e.sort(Ma),e.length},Oa.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}},Da.prototype={insert:function(t,e){var r,n,a;if(t){if(e.P=t,e.N=t.N,t.N&&(t.N.P=e),t.N=e,t.R){for(t=t.R;t.L;)t=t.L;t.L=e}else t.R=e;r=t}else this._?(t=Na(this._),e.P=null,e.N=t,t.P=t.L=e,r=t):(e.P=e.N=null,this._=e,r=null);for(e.L=e.R=null,e.U=r,e.C=!0,t=e;r&&r.C;)r===(n=r.U).L?(a=n.R)&&a.C?(r.C=a.C=!1,n.C=!0,t=n):(t===r.R&&(Fa(this,r),r=(t=r).U),r.C=!1,n.C=!0,Ba(this,n)):(a=n.L)&&a.C?(r.C=a.C=!1,n.C=!0,t=n):(t===r.L&&(Ba(this,r),r=(t=r).U),r.C=!1,n.C=!0,Fa(this,n)),r=t.U;this._.C=!1},remove:function(t){t.N&&(t.N.P=t.P),t.P&&(t.P.N=t.N),t.N=t.P=null;var e,r,n,a=t.U,i=t.L,o=t.R;if(r=i?o?Na(o):i:o,a?a.L===t?a.L=r:a.R=r:this._=r,i&&o?(n=r.C,r.C=t.C,r.L=i,i.U=r,r!==o?(a=r.U,r.U=t.U,t=r.R,a.L=t,r.R=o,o.U=r):(r.U=a,a=r,t=r.R)):(n=t.C,t=r),t&&(t.U=a),!n)if(t&&t.C)t.C=!1;else{do{if(t===this._)break;if(t===a.L){if((e=a.R).C&&(e.C=!1,a.C=!0,Fa(this,a),e=a.R),e.L&&e.L.C||e.R&&e.R.C){e.R&&e.R.C||(e.L.C=!1,e.C=!0,Ba(this,e),e=a.R),e.C=a.C,a.C=e.R.C=!1,Fa(this,a),t=this._;break}}else if((e=a.L).C&&(e.C=!1,a.C=!0,Ba(this,a),e=a.L),e.L&&e.L.C||e.R&&e.R.C){e.L&&e.L.C||(e.R.C=!1,e.C=!0,Fa(this,e),e=a.L),e.C=a.C,a.C=e.L.C=!1,Ba(this,a),t=this._;break}e.C=!0,t=a,a=a.U}while(!t.C);t&&(t.C=!1)}}},t.geom.voronoi=function(t){var e=ra,r=na,n=e,a=r,i=Va;if(t)return o(t);function o(t){var e=new Array(t.length),r=i[0][0],n=i[0][1],a=i[1][0],o=i[1][1];return ja(s(t),i).cells.forEach((function(i,s){var l=i.edges,c=i.site;(e[s]=l.length?l.map((function(t){var e=t.start();return[e.x,e.y]})):c.x>=r&&c.x<=a&&c.y>=n&&c.y<=o?[[r,o],[a,o],[a,n],[r,n]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(n(t,e)/kt)*kt,y:Math.round(a(t,e)/kt)*kt,i:e}}))}return o.links=function(t){return ja(s(t)).edges.filter((function(t){return t.l&&t.r})).map((function(e){return{source:t[e.l.i],target:t[e.r.i]}}))},o.triangles=function(t){var e=[];return ja(s(t)).cells.forEach((function(r,n){for(var a,i,o,s,l=r.site,c=r.edges.sort(Ma),u=-1,h=c.length,f=c[h-1].edge,p=f.l===l?f.r:f.l;++u<h;)f,a=p,p=(f=c[u].edge).l===l?f.r:f.l,n<a.i&&n<p.i&&(o=a,s=p,((i=l).x-s.x)*(o.y-i.y)-(i.x-o.x)*(s.y-i.y)<0)&&e.push([t[n],t[a.i],t[p.i]])})),e},o.x=function(t){return arguments.length?(n=de(e=t),o):e},o.y=function(t){return arguments.length?(a=de(r=t),o):r},o.clipExtent=function(t){return arguments.length?(i=null==t?Va:t,o):i===Va?null:i},o.size=function(t){return arguments.length?o.clipExtent(t&&[[0,0],t]):i===Va?null:i&&i[1]},o};var Va=[[-1e6,-1e6],[1e6,1e6]];function qa(t){return t.x}function Ha(t){return t.y}function Ga(t,e,r,n,a,i){if(!t(e,r,n,a,i)){var o=.5*(r+a),s=.5*(n+i),l=e.nodes;l[0]&&Ga(t,l[0],r,n,o,s),l[1]&&Ga(t,l[1],o,n,a,s),l[2]&&Ga(t,l[2],r,s,o,i),l[3]&&Ga(t,l[3],o,s,a,i)}}function Ya(t,e,r,n,a,i,o){var s,l=1/0;return function t(c,u,h,f,p){if(!(u>i||h>o||f<n||p<a)){if(d=c.point){var d,g=e-c.x,m=r-c.y,v=g*g+m*m;if(v<l){var y=Math.sqrt(l=v);n=e-y,a=r-y,i=e+y,o=r+y,s=d}}for(var x=c.nodes,b=.5*(u+f),_=.5*(h+p),w=(r>=_)<<1|e>=b,T=w+4;w<T;++w)if(c=x[3&w])switch(3&w){case 0:t(c,u,h,b,_);break;case 1:t(c,b,h,f,_);break;case 2:t(c,u,_,b,p);break;case 3:t(c,b,_,f,p)}}}(t,n,a,i,o),s}function Wa(e,r){e=t.rgb(e),r=t.rgb(r);var n=e.r,a=e.g,i=e.b,o=r.r-n,s=r.g-a,l=r.b-i;return function(t){return\"#\"+se(Math.round(n+o*t))+se(Math.round(a+s*t))+se(Math.round(i+l*t))}}function Za(t,e){var r,n={},a={};for(r in t)r in e?n[r]=$a(t[r],e[r]):a[r]=t[r];for(r in e)r in t||(a[r]=e[r]);return function(t){for(r in n)a[r]=n[r](t);return a}}function Xa(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}function Ja(t,e){var r,n,a,i=Ka.lastIndex=Qa.lastIndex=0,o=-1,s=[],l=[];for(t+=\"\",e+=\"\";(r=Ka.exec(t))&&(n=Qa.exec(e));)(a=n.index)>i&&(a=e.slice(i,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:Xa(r,n)})),i=Qa.lastIndex;return i<e.length&&(a=e.slice(i),s[o]?s[o]+=a:s[++o]=a),s.length<2?l[0]?(e=l[0].x,function(t){return e(t)+\"\"}):function(){return e}:(e=l.length,function(t){for(var r,n=0;n<e;++n)s[(r=l[n]).i]=r.x(t);return s.join(\"\")})}t.geom.delaunay=function(e){return t.geom.voronoi().triangles(e)},t.geom.quadtree=function(t,e,r,n,a){var i,o=ra,s=na;if(i=arguments.length)return o=qa,s=Ha,3===i&&(a=r,n=e,r=e=0),l(t);function l(t){var l,c,u,h,f,p,d,g,m,v=de(o),x=de(s);if(null!=e)p=e,d=r,g=n,m=a;else if(g=m=-(p=d=1/0),c=[],u=[],f=t.length,i)for(h=0;h<f;++h)(l=t[h]).x<p&&(p=l.x),l.y<d&&(d=l.y),l.x>g&&(g=l.x),l.y>m&&(m=l.y),c.push(l.x),u.push(l.y);else for(h=0;h<f;++h){var b=+v(l=t[h],h),_=+x(l,h);b<p&&(p=b),_<d&&(d=_),b>g&&(g=b),_>m&&(m=_),c.push(b),u.push(_)}var w=g-p,T=m-d;function k(t,e,r,n,a,i,o,s){if(!isNaN(r)&&!isNaN(n))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(y(l-r)+y(c-n)<.01)M(t,e,r,n,a,i,o,s);else{var u=t.point;t.x=t.y=t.point=null,M(t,u,l,c,a,i,o,s),M(t,e,r,n,a,i,o,s)}else t.x=r,t.y=n,t.point=e}else M(t,e,r,n,a,i,o,s)}function M(t,e,r,n,a,i,o,s){var l=.5*(a+o),c=.5*(i+s),u=r>=l,h=n>=c,f=h<<1|u;t.leaf=!1,u?a=l:o=l,h?i=c:s=c,k(t=t.nodes[f]||(t.nodes[f]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,r,n,a,i,o,s)}w>T?m=d+w:g=p+T;var A={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){k(A,t,+v(t,++h),+x(t,h),p,d,g,m)},visit:function(t){Ga(t,A,p,d,g,m)},find:function(t){return Ya(A,t[0],t[1],p,d,g,m)}};if(h=-1,null==e){for(;++h<f;)k(A,t[h],c[h],u[h],p,d,g,m);--h}else t.forEach(A.add);return c=u=t=l=null,A}return l.x=function(t){return arguments.length?(o=t,l):o},l.y=function(t){return arguments.length?(s=t,l):s},l.extent=function(t){return arguments.length?(null==t?e=r=n=a=null:(e=+t[0][0],r=+t[0][1],n=+t[1][0],a=+t[1][1]),l):null==e?null:[[e,r],[n,a]]},l.size=function(t){return arguments.length?(null==t?e=r=n=a=null:(e=r=0,n=+t[0],a=+t[1]),l):null==e?null:[n-e,a-r]},l},t.interpolateRgb=Wa,t.interpolateObject=Za,t.interpolateNumber=Xa,t.interpolateString=Ja;var Ka=/[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,Qa=new RegExp(Ka.source,\"g\");function $a(e,r){for(var n,a=t.interpolators.length;--a>=0&&!(n=t.interpolators[a](e,r)););return n}function ti(t,e){var r,n=[],a=[],i=t.length,o=e.length,s=Math.min(t.length,e.length);for(r=0;r<s;++r)n.push($a(t[r],e[r]));for(;r<i;++r)a[r]=t[r];for(;r<o;++r)a[r]=e[r];return function(t){for(r=0;r<s;++r)a[r]=n[r](t);return a}}t.interpolate=$a,t.interpolators=[function(t,e){var r=typeof e;return(\"string\"===r?pe.has(e.toLowerCase())||/^(#|rgb\\(|hsl\\()/i.test(e)?Wa:Ja:e instanceof Vt?Wa:Array.isArray(e)?ti:\"object\"===r&&isNaN(e)?Za:Xa)(t,e)}],t.interpolateArray=ti;var ei=function(){return L},ri=t.map({linear:ei,poly:function(t){return function(e){return Math.pow(e,t)}},quad:function(){return si},cubic:function(){return li},sin:function(){return ui},exp:function(){return hi},circle:function(){return fi},elastic:function(t,e){var r;arguments.length<2&&(e=.45);arguments.length?r=e/St*Math.asin(1/t):(t=1,r=e/4);return function(n){return 1+t*Math.pow(2,-10*n)*Math.sin((n-r)*St/e)}},back:function(t){t||(t=1.70158);return function(e){return e*e*((t+1)*e-t)}},bounce:function(){return pi}}),ni=t.map({in:L,out:ii,\"in-out\":oi,\"out-in\":function(t){return oi(ii(t))}});function ai(t){return function(e){return e<=0?0:e>=1?1:t(e)}}function ii(t){return function(e){return 1-t(1-e)}}function oi(t){return function(e){return.5*(e<.5?t(2*e):2-t(2-2*e))}}function si(t){return t*t}function li(t){return t*t*t}function ci(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}function ui(t){return 1-Math.cos(t*Ct)}function hi(t){return Math.pow(2,10*(t-1))}function fi(t){return 1-Math.sqrt(1-t*t)}function pi(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function di(t,e){return e-=t,function(r){return Math.round(t+e*r)}}function gi(t){var e,r,n,a=[t.a,t.b],i=[t.c,t.d],o=vi(a),s=mi(a,i),l=vi(((e=i)[0]+=(n=-s)*(r=a)[0],e[1]+=n*r[1],e))||0;a[0]*i[1]<i[0]*a[1]&&(a[0]*=-1,a[1]*=-1,o*=-1,s*=-1),this.rotate=(o?Math.atan2(a[1],a[0]):Math.atan2(-i[0],i[1]))*Pt,this.translate=[t.e,t.f],this.scale=[o,l],this.skew=l?Math.atan2(s,l)*Pt:0}function mi(t,e){return t[0]*e[0]+t[1]*e[1]}function vi(t){var e=Math.sqrt(mi(t,t));return e&&(t[0]/=e,t[1]/=e),e}t.ease=function(t){var e=t.indexOf(\"-\"),n=e>=0?t.slice(0,e):t,a=e>=0?t.slice(e+1):\"in\";return n=ri.get(n)||ei,ai((a=ni.get(a)||L)(n.apply(null,r.call(arguments,1))))},t.interpolateHcl=function(e,r){e=t.hcl(e),r=t.hcl(r);var n=e.h,a=e.c,i=e.l,o=r.h-n,s=r.c-a,l=r.l-i;isNaN(s)&&(s=0,a=isNaN(a)?r.c:a);isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360);return function(t){return Zt(n+o*t,a+s*t,i+l*t)+\"\"}},t.interpolateHsl=function(e,r){e=t.hsl(e),r=t.hsl(r);var n=e.h,a=e.s,i=e.l,o=r.h-n,s=r.s-a,l=r.l-i;isNaN(s)&&(s=0,a=isNaN(a)?r.s:a);isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360);return function(t){return Gt(n+o*t,a+s*t,i+l*t)+\"\"}},t.interpolateLab=function(e,r){e=t.lab(e),r=t.lab(r);var n=e.l,a=e.a,i=e.b,o=r.l-n,s=r.a-a,l=r.b-i;return function(t){return Qt(n+o*t,a+s*t,i+l*t)+\"\"}},t.interpolateRound=di,t.transform=function(e){var r=a.createElementNS(t.ns.prefix.svg,\"g\");return(t.transform=function(t){if(null!=t){r.setAttribute(\"transform\",t);var e=r.transform.baseVal.consolidate()}return new gi(e?e.matrix:yi)})(e)},gi.prototype.toString=function(){return\"translate(\"+this.translate+\")rotate(\"+this.rotate+\")skewX(\"+this.skew+\")scale(\"+this.scale+\")\"};var yi={a:1,b:0,c:0,d:1,e:0,f:0};function xi(t){return t.length?t.pop()+\",\":\"\"}function bi(e,r){var n=[],a=[];return e=t.transform(e),r=t.transform(r),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var a=r.push(\"translate(\",null,\",\",null,\")\");n.push({i:a-4,x:Xa(t[0],e[0])},{i:a-2,x:Xa(t[1],e[1])})}else(e[0]||e[1])&&r.push(\"translate(\"+e+\")\")}(e.translate,r.translate,n,a),function(t,e,r,n){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),n.push({i:r.push(xi(r)+\"rotate(\",null,\")\")-2,x:Xa(t,e)})):e&&r.push(xi(r)+\"rotate(\"+e+\")\")}(e.rotate,r.rotate,n,a),function(t,e,r,n){t!==e?n.push({i:r.push(xi(r)+\"skewX(\",null,\")\")-2,x:Xa(t,e)}):e&&r.push(xi(r)+\"skewX(\"+e+\")\")}(e.skew,r.skew,n,a),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var a=r.push(xi(r)+\"scale(\",null,\",\",null,\")\");n.push({i:a-4,x:Xa(t[0],e[0])},{i:a-2,x:Xa(t[1],e[1])})}else 1===e[0]&&1===e[1]||r.push(xi(r)+\"scale(\"+e+\")\")}(e.scale,r.scale,n,a),e=r=null,function(t){for(var e,r=-1,i=a.length;++r<i;)n[(e=a[r]).i]=e.x(t);return n.join(\"\")}}function _i(t,e){return e=(e-=t=+t)||1/e,function(r){return(r-t)/e}}function wi(t,e){return e=(e-=t=+t)||1/e,function(r){return Math.max(0,Math.min(1,(r-t)/e))}}function Ti(t){for(var e=t.source,r=t.target,n=function(t,e){if(t===e)return t;var r=ki(t),n=ki(e),a=r.pop(),i=n.pop(),o=null;for(;a===i;)o=a,a=r.pop(),i=n.pop();return o}(e,r),a=[e];e!==n;)e=e.parent,a.push(e);for(var i=a.length;r!==n;)a.splice(i,0,r),r=r.parent;return a}function ki(t){for(var e=[],r=t.parent;null!=r;)e.push(t),t=r,r=r.parent;return e.push(t),e}function Mi(t){t.fixed|=2}function Ai(t){t.fixed&=-7}function Si(t){t.fixed|=4,t.px=t.x,t.py=t.y}function Ei(t){t.fixed&=-5}t.interpolateTransform=bi,t.layout={},t.layout.bundle=function(){return function(t){for(var e=[],r=-1,n=t.length;++r<n;)e.push(Ti(t[r]));return e}},t.layout.chord=function(){var e,r,n,a,i,o,s,l={},c=0;function u(){var l,u,f,p,d,g={},m=[],v=t.range(a),y=[];for(e=[],r=[],l=0,p=-1;++p<a;){for(u=0,d=-1;++d<a;)u+=n[p][d];m.push(u),y.push(t.range(a)),l+=u}for(i&&v.sort((function(t,e){return i(m[t],m[e])})),o&&y.forEach((function(t,e){t.sort((function(t,r){return o(n[e][t],n[e][r])}))})),l=(St-c*a)/l,u=0,p=-1;++p<a;){for(f=u,d=-1;++d<a;){var x=v[p],b=y[x][d],_=n[x][b],w=u,T=u+=_*l;g[x+\"-\"+b]={index:x,subindex:b,startAngle:w,endAngle:T,value:_}}r[x]={index:x,startAngle:f,endAngle:u,value:m[x]},u+=c}for(p=-1;++p<a;)for(d=p-1;++d<a;){var k=g[p+\"-\"+d],M=g[d+\"-\"+p];(k.value||M.value)&&e.push(k.value<M.value?{source:M,target:k}:{source:k,target:M})}s&&h()}function h(){e.sort((function(t,e){return s((t.source.value+t.target.value)/2,(e.source.value+e.target.value)/2)}))}return l.matrix=function(t){return arguments.length?(a=(n=t)&&n.length,e=r=null,l):n},l.padding=function(t){return arguments.length?(c=t,e=r=null,l):c},l.sortGroups=function(t){return arguments.length?(i=t,e=r=null,l):i},l.sortSubgroups=function(t){return arguments.length?(o=t,e=null,l):o},l.sortChords=function(t){return arguments.length?(s=t,e&&h(),l):s},l.chords=function(){return e||u(),e},l.groups=function(){return r||u(),r},l},t.layout.force=function(){var e,r,n,a,i,o,s={},l=t.dispatch(\"start\",\"tick\",\"end\"),c=[1,1],u=.9,h=Ci,f=Li,p=-30,d=Pi,g=.1,m=.64,v=[],y=[];function x(t){return function(e,r,n,a){if(e.point!==t){var i=e.cx-t.x,o=e.cy-t.y,s=a-r,l=i*i+o*o;if(s*s/m<l){if(l<d){var c=e.charge/l;t.px-=i*c,t.py-=o*c}return!0}if(e.point&&l&&l<d){c=e.pointCharge/l;t.px-=i*c,t.py-=o*c}}return!e.charge}}function b(e){e.px=t.event.x,e.py=t.event.y,s.resume()}return s.tick=function(){if((n*=.99)<.005)return e=null,l.end({type:\"end\",alpha:n=0}),!0;var r,s,h,f,d,m,b,_,w,T=v.length,k=y.length;for(s=0;s<k;++s)f=(h=y[s]).source,(m=(_=(d=h.target).x-f.x)*_+(w=d.y-f.y)*w)&&(_*=m=n*i[s]*((m=Math.sqrt(m))-a[s])/m,w*=m,d.x-=_*(b=f.weight+d.weight?f.weight/(f.weight+d.weight):.5),d.y-=w*b,f.x+=_*(b=1-b),f.y+=w*b);if((b=n*g)&&(_=c[0]/2,w=c[1]/2,s=-1,b))for(;++s<T;)(h=v[s]).x+=(_-h.x)*b,h.y+=(w-h.y)*b;if(p)for(!function t(e,r,n){var a=0,i=0;if(e.charge=0,!e.leaf)for(var o,s=e.nodes,l=s.length,c=-1;++c<l;)null!=(o=s[c])&&(t(o,r,n),e.charge+=o.charge,a+=o.charge*o.cx,i+=o.charge*o.cy);if(e.point){e.leaf||(e.point.x+=Math.random()-.5,e.point.y+=Math.random()-.5);var u=r*n[e.point.index];e.charge+=e.pointCharge=u,a+=u*e.point.x,i+=u*e.point.y}e.cx=a/e.charge,e.cy=i/e.charge}(r=t.geom.quadtree(v),n,o),s=-1;++s<T;)(h=v[s]).fixed||r.visit(x(h));for(s=-1;++s<T;)(h=v[s]).fixed?(h.x=h.px,h.y=h.py):(h.x-=(h.px-(h.px=h.x))*u,h.y-=(h.py-(h.py=h.y))*u);l.tick({type:\"tick\",alpha:n})},s.nodes=function(t){return arguments.length?(v=t,s):v},s.links=function(t){return arguments.length?(y=t,s):y},s.size=function(t){return arguments.length?(c=t,s):c},s.linkDistance=function(t){return arguments.length?(h=\"function\"==typeof t?t:+t,s):h},s.distance=s.linkDistance,s.linkStrength=function(t){return arguments.length?(f=\"function\"==typeof t?t:+t,s):f},s.friction=function(t){return arguments.length?(u=+t,s):u},s.charge=function(t){return arguments.length?(p=\"function\"==typeof t?t:+t,s):p},s.chargeDistance=function(t){return arguments.length?(d=t*t,s):Math.sqrt(d)},s.gravity=function(t){return arguments.length?(g=+t,s):g},s.theta=function(t){return arguments.length?(m=t*t,s):Math.sqrt(m)},s.alpha=function(t){return arguments.length?(t=+t,n?t>0?n=t:(e.c=null,e.t=NaN,e=null,l.end({type:\"end\",alpha:n=0})):t>0&&(l.start({type:\"start\",alpha:n=t}),e=we(s.tick)),s):n},s.start=function(){var t,e,r,n=v.length,l=y.length,u=c[0],d=c[1];for(t=0;t<n;++t)(r=v[t]).index=t,r.weight=0;for(t=0;t<l;++t)\"number\"==typeof(r=y[t]).source&&(r.source=v[r.source]),\"number\"==typeof r.target&&(r.target=v[r.target]),++r.source.weight,++r.target.weight;for(t=0;t<n;++t)r=v[t],isNaN(r.x)&&(r.x=g(\"x\",u)),isNaN(r.y)&&(r.y=g(\"y\",d)),isNaN(r.px)&&(r.px=r.x),isNaN(r.py)&&(r.py=r.y);if(a=[],\"function\"==typeof h)for(t=0;t<l;++t)a[t]=+h.call(this,y[t],t);else for(t=0;t<l;++t)a[t]=h;if(i=[],\"function\"==typeof f)for(t=0;t<l;++t)i[t]=+f.call(this,y[t],t);else for(t=0;t<l;++t)i[t]=f;if(o=[],\"function\"==typeof p)for(t=0;t<n;++t)o[t]=+p.call(this,v[t],t);else for(t=0;t<n;++t)o[t]=p;function g(r,a){if(!e){for(e=new Array(n),c=0;c<n;++c)e[c]=[];for(c=0;c<l;++c){var i=y[c];e[i.source.index].push(i.target),e[i.target.index].push(i.source)}}for(var o,s=e[t],c=-1,u=s.length;++c<u;)if(!isNaN(o=s[c][r]))return o;return Math.random()*a}return s.resume()},s.resume=function(){return s.alpha(.1)},s.stop=function(){return s.alpha(0)},s.drag=function(){if(r||(r=t.behavior.drag().origin(L).on(\"dragstart.force\",Mi).on(\"drag.force\",b).on(\"dragend.force\",Ai)),!arguments.length)return r;this.on(\"mouseover.force\",Si).on(\"mouseout.force\",Ei).call(r)},t.rebind(s,l,\"on\")};var Ci=20,Li=1,Pi=1/0;function Ii(e,r){return t.rebind(e,r,\"sort\",\"children\",\"value\"),e.nodes=e,e.links=Bi,e}function zi(t,e){for(var r=[t];null!=(t=r.pop());)if(e(t),(a=t.children)&&(n=a.length))for(var n,a;--n>=0;)r.push(a[n])}function Oi(t,e){for(var r=[t],n=[];null!=(t=r.pop());)if(n.push(t),(i=t.children)&&(a=i.length))for(var a,i,o=-1;++o<a;)r.push(i[o]);for(;null!=(t=n.pop());)e(t)}function Di(t){return t.children}function Ri(t){return t.value}function Fi(t,e){return e.value-t.value}function Bi(e){return t.merge(e.map((function(t){return(t.children||[]).map((function(e){return{source:t,target:e}}))})))}t.layout.hierarchy=function(){var t=Fi,e=Di,r=Ri;function n(a){var i,o=[a],s=[];for(a.depth=0;null!=(i=o.pop());)if(s.push(i),(c=e.call(n,i,i.depth))&&(l=c.length)){for(var l,c,u;--l>=0;)o.push(u=c[l]),u.parent=i,u.depth=i.depth+1;r&&(i.value=0),i.children=c}else r&&(i.value=+r.call(n,i,i.depth)||0),delete i.children;return Oi(a,(function(e){var n,a;t&&(n=e.children)&&n.sort(t),r&&(a=e.parent)&&(a.value+=e.value)})),s}return n.sort=function(e){return arguments.length?(t=e,n):t},n.children=function(t){return arguments.length?(e=t,n):e},n.value=function(t){return arguments.length?(r=t,n):r},n.revalue=function(t){return r&&(zi(t,(function(t){t.children&&(t.value=0)})),Oi(t,(function(t){var e;t.children||(t.value=+r.call(n,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)}))),t},n},t.layout.partition=function(){var e=t.layout.hierarchy(),r=[1,1];function n(t,n){var a=e.call(this,t,n);return function t(e,r,n,a){var i=e.children;if(e.x=r,e.y=e.depth*a,e.dx=n,e.dy=a,i&&(o=i.length)){var o,s,l,c=-1;for(n=e.value?n/e.value:0;++c<o;)t(s=i[c],r,l=s.value*n,a),r+=l}}(a[0],0,r[0],r[1]/function t(e){var r=e.children,n=0;if(r&&(a=r.length))for(var a,i=-1;++i<a;)n=Math.max(n,t(r[i]));return 1+n}(a[0])),a}return n.size=function(t){return arguments.length?(r=t,n):r},Ii(n,e)},t.layout.pie=function(){var e=Number,r=Ni,n=0,a=St,i=0;function o(s){var l,c=s.length,u=s.map((function(t,r){return+e.call(o,t,r)})),h=+(\"function\"==typeof n?n.apply(this,arguments):n),f=(\"function\"==typeof a?a.apply(this,arguments):a)-h,p=Math.min(Math.abs(f)/c,+(\"function\"==typeof i?i.apply(this,arguments):i)),d=p*(f<0?-1:1),g=t.sum(u),m=g?(f-c*d)/g:0,v=t.range(c),y=[];return null!=r&&v.sort(r===Ni?function(t,e){return u[e]-u[t]}:function(t,e){return r(s[t],s[e])}),v.forEach((function(t){y[t]={data:s[t],value:l=u[t],startAngle:h,endAngle:h+=l*m+d,padAngle:p}})),y}return o.value=function(t){return arguments.length?(e=t,o):e},o.sort=function(t){return arguments.length?(r=t,o):r},o.startAngle=function(t){return arguments.length?(n=t,o):n},o.endAngle=function(t){return arguments.length?(a=t,o):a},o.padAngle=function(t){return arguments.length?(i=t,o):i},o};var Ni={};function ji(t){return t.x}function Ui(t){return t.y}function Vi(t,e,r){t.y0=e,t.y=r}t.layout.stack=function(){var e=L,r=Gi,n=Yi,a=Vi,i=ji,o=Ui;function s(l,c){if(!(p=l.length))return l;var u=l.map((function(t,r){return e.call(s,t,r)})),h=u.map((function(t){return t.map((function(t,e){return[i.call(s,t,e),o.call(s,t,e)]}))})),f=r.call(s,h,c);u=t.permute(u,f),h=t.permute(h,f);var p,d,g,m,v=n.call(s,h,c),y=u[0].length;for(g=0;g<y;++g)for(a.call(s,u[0][g],m=v[g],h[0][g][1]),d=1;d<p;++d)a.call(s,u[d][g],m+=h[d-1][g][1],h[d][g][1]);return l}return s.values=function(t){return arguments.length?(e=t,s):e},s.order=function(t){return arguments.length?(r=\"function\"==typeof t?t:qi.get(t)||Gi,s):r},s.offset=function(t){return arguments.length?(n=\"function\"==typeof t?t:Hi.get(t)||Yi,s):n},s.x=function(t){return arguments.length?(i=t,s):i},s.y=function(t){return arguments.length?(o=t,s):o},s.out=function(t){return arguments.length?(a=t,s):a},s};var qi=t.map({\"inside-out\":function(e){var r,n,a=e.length,i=e.map(Wi),o=e.map(Zi),s=t.range(a).sort((function(t,e){return i[t]-i[e]})),l=0,c=0,u=[],h=[];for(r=0;r<a;++r)n=s[r],l<c?(l+=o[n],u.push(n)):(c+=o[n],h.push(n));return h.reverse().concat(u)},reverse:function(e){return t.range(e.length).reverse()},default:Gi}),Hi=t.map({silhouette:function(t){var e,r,n,a=t.length,i=t[0].length,o=[],s=0,l=[];for(r=0;r<i;++r){for(e=0,n=0;e<a;e++)n+=t[e][r][1];n>s&&(s=n),o.push(n)}for(r=0;r<i;++r)l[r]=(s-o[r])/2;return l},wiggle:function(t){var e,r,n,a,i,o,s,l,c,u=t.length,h=t[0],f=h.length,p=[];for(p[0]=l=c=0,r=1;r<f;++r){for(e=0,a=0;e<u;++e)a+=t[e][r][1];for(e=0,i=0,s=h[r][0]-h[r-1][0];e<u;++e){for(n=0,o=(t[e][r][1]-t[e][r-1][1])/(2*s);n<e;++n)o+=(t[n][r][1]-t[n][r-1][1])/s;i+=o*t[e][r][1]}p[r]=l-=a?i/a*s:0,l<c&&(c=l)}for(r=0;r<f;++r)p[r]-=c;return p},expand:function(t){var e,r,n,a=t.length,i=t[0].length,o=1/a,s=[];for(r=0;r<i;++r){for(e=0,n=0;e<a;e++)n+=t[e][r][1];if(n)for(e=0;e<a;e++)t[e][r][1]/=n;else for(e=0;e<a;e++)t[e][r][1]=o}for(r=0;r<i;++r)s[r]=0;return s},zero:Yi});function Gi(e){return t.range(e.length)}function Yi(t){for(var e=-1,r=t[0].length,n=[];++e<r;)n[e]=0;return n}function Wi(t){for(var e,r=1,n=0,a=t[0][1],i=t.length;r<i;++r)(e=t[r][1])>a&&(n=r,a=e);return n}function Zi(t){return t.reduce(Xi,0)}function Xi(t,e){return t+e[1]}function Ji(t,e){return Ki(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function Ki(t,e){for(var r=-1,n=+t[0],a=(t[1]-n)/e,i=[];++r<=e;)i[r]=a*r+n;return i}function Qi(e){return[t.min(e),t.max(e)]}function $i(t,e){return t.value-e.value}function to(t,e){var r=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=r,r._pack_prev=e}function eo(t,e){t._pack_next=e,e._pack_prev=t}function ro(t,e){var r=e.x-t.x,n=e.y-t.y,a=t.r+e.r;return.999*a*a>r*r+n*n}function no(t){if((e=t.children)&&(l=e.length)){var e,r,n,a,i,o,s,l,c=1/0,u=-1/0,h=1/0,f=-1/0;if(e.forEach(ao),(r=e[0]).x=-r.r,r.y=0,x(r),l>1&&((n=e[1]).x=n.r,n.y=0,x(n),l>2))for(oo(r,n,a=e[2]),x(a),to(r,a),r._pack_prev=a,to(a,n),n=r._pack_next,i=3;i<l;i++){oo(r,n,a=e[i]);var p=0,d=1,g=1;for(o=n._pack_next;o!==n;o=o._pack_next,d++)if(ro(o,a)){p=1;break}if(1==p)for(s=r._pack_prev;s!==o._pack_prev&&!ro(s,a);s=s._pack_prev,g++);p?(d<g||d==g&&n.r<r.r?eo(r,n=o):eo(r=s,n),i--):(to(r,a),n=a,x(a))}var m=(c+u)/2,v=(h+f)/2,y=0;for(i=0;i<l;i++)(a=e[i]).x-=m,a.y-=v,y=Math.max(y,a.r+Math.sqrt(a.x*a.x+a.y*a.y));t.r=y,e.forEach(io)}function x(t){c=Math.min(t.x-t.r,c),u=Math.max(t.x+t.r,u),h=Math.min(t.y-t.r,h),f=Math.max(t.y+t.r,f)}}function ao(t){t._pack_next=t._pack_prev=t}function io(t){delete t._pack_next,delete t._pack_prev}function oo(t,e,r){var n=t.r+r.r,a=e.x-t.x,i=e.y-t.y;if(n&&(a||i)){var o=e.r+r.r,s=a*a+i*i,l=.5+((n*=n)-(o*=o))/(2*s),c=Math.sqrt(Math.max(0,2*o*(n+s)-(n-=s)*n-o*o))/(2*s);r.x=t.x+l*a+c*i,r.y=t.y+l*i-c*a}else r.x=t.x+n,r.y=t.y}function so(t,e){return t.parent==e.parent?1:2}function lo(t){var e=t.children;return e.length?e[0]:t.t}function co(t){var e,r=t.children;return(e=r.length)?r[e-1]:t.t}function uo(t,e,r){var n=r/(e.i-t.i);e.c-=n,e.s+=r,t.c+=n,e.z+=r,e.m+=r}function ho(t,e,r){return t.a.parent===e.parent?t.a:r}function fo(t){return{x:t.x,y:t.y,dx:t.dx,dy:t.dy}}function po(t,e){var r=t.x+e[3],n=t.y+e[0],a=t.dx-e[1]-e[3],i=t.dy-e[0]-e[2];return a<0&&(r+=a/2,a=0),i<0&&(n+=i/2,i=0),{x:r,y:n,dx:a,dy:i}}function go(t){var e=t[0],r=t[t.length-1];return e<r?[e,r]:[r,e]}function mo(t){return t.rangeExtent?t.rangeExtent():go(t.range())}function vo(t,e,r,n){var a=r(t[0],t[1]),i=n(e[0],e[1]);return function(t){return i(a(t))}}function yo(t,e){var r,n=0,a=t.length-1,i=t[n],o=t[a];return o<i&&(r=n,n=a,a=r,r=i,i=o,o=r),t[n]=e.floor(i),t[a]=e.ceil(o),t}function xo(t){return t?{floor:function(e){return Math.floor(e/t)*t},ceil:function(e){return Math.ceil(e/t)*t}}:bo}t.layout.histogram=function(){var e=!0,r=Number,n=Qi,a=Ji;function i(i,o){for(var s,l,c=[],u=i.map(r,this),h=n.call(this,u,o),f=a.call(this,h,u,o),p=(o=-1,u.length),d=f.length-1,g=e?1:1/p;++o<d;)(s=c[o]=[]).dx=f[o+1]-(s.x=f[o]),s.y=0;if(d>0)for(o=-1;++o<p;)(l=u[o])>=h[0]&&l<=h[1]&&((s=c[t.bisect(f,l,1,d)-1]).y+=g,s.push(i[o]));return c}return i.value=function(t){return arguments.length?(r=t,i):r},i.range=function(t){return arguments.length?(n=de(t),i):n},i.bins=function(t){return arguments.length?(a=\"number\"==typeof t?function(e){return Ki(e,t)}:de(t),i):a},i.frequency=function(t){return arguments.length?(e=!!t,i):e},i},t.layout.pack=function(){var e,r=t.layout.hierarchy().sort($i),n=0,a=[1,1];function i(t,i){var o=r.call(this,t,i),s=o[0],l=a[0],c=a[1],u=null==e?Math.sqrt:\"function\"==typeof e?e:function(){return e};if(s.x=s.y=0,Oi(s,(function(t){t.r=+u(t.value)})),Oi(s,no),n){var h=n*(e?1:Math.max(2*s.r/l,2*s.r/c))/2;Oi(s,(function(t){t.r+=h})),Oi(s,no),Oi(s,(function(t){t.r-=h}))}return function t(e,r,n,a){var i=e.children;if(e.x=r+=a*e.x,e.y=n+=a*e.y,e.r*=a,i)for(var o=-1,s=i.length;++o<s;)t(i[o],r,n,a)}(s,l/2,c/2,e?1:1/Math.max(2*s.r/l,2*s.r/c)),o}return i.size=function(t){return arguments.length?(a=t,i):a},i.radius=function(t){return arguments.length?(e=null==t||\"function\"==typeof t?t:+t,i):e},i.padding=function(t){return arguments.length?(n=+t,i):n},Ii(i,r)},t.layout.tree=function(){var e=t.layout.hierarchy().sort(null).value(null),r=so,n=[1,1],a=null;function i(t,i){var c=e.call(this,t,i),u=c[0],h=function(t){var e,r={A:null,children:[t]},n=[r];for(;null!=(e=n.pop());)for(var a,i=e.children,o=0,s=i.length;o<s;++o)n.push((i[o]=a={_:i[o],parent:e,children:(a=i[o].children)&&a.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:o}).a=a);return r.children[0]}(u);if(Oi(h,o),h.parent.m=-h.z,zi(h,s),a)zi(u,l);else{var f=u,p=u,d=u;zi(u,(function(t){t.x<f.x&&(f=t),t.x>p.x&&(p=t),t.depth>d.depth&&(d=t)}));var g=r(f,p)/2-f.x,m=n[0]/(p.x+r(p,f)/2+g),v=n[1]/(d.depth||1);zi(u,(function(t){t.x=(t.x+g)*m,t.y=t.depth*v}))}return c}function o(t){var e=t.children,n=t.parent.children,a=t.i?n[t.i-1]:null;if(e.length){!function(t){var e,r=0,n=0,a=t.children,i=a.length;for(;--i>=0;)(e=a[i]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(t);var i=(e[0].z+e[e.length-1].z)/2;a?(t.z=a.z+r(t._,a._),t.m=t.z-i):t.z=i}else a&&(t.z=a.z+r(t._,a._));t.parent.A=function(t,e,n){if(e){for(var a,i=t,o=t,s=e,l=i.parent.children[0],c=i.m,u=o.m,h=s.m,f=l.m;s=co(s),i=lo(i),s&&i;)l=lo(l),(o=co(o)).a=t,(a=s.z+h-i.z-c+r(s._,i._))>0&&(uo(ho(s,t,n),t,a),c+=a,u+=a),h+=s.m,c+=i.m,f+=l.m,u+=o.m;s&&!co(o)&&(o.t=s,o.m+=h-u),i&&!lo(l)&&(l.t=i,l.m+=c-f,n=t)}return n}(t,a,t.parent.A||n[0])}function s(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function l(t){t.x*=n[0],t.y=t.depth*n[1]}return i.separation=function(t){return arguments.length?(r=t,i):r},i.size=function(t){return arguments.length?(a=null==(n=t)?l:null,i):a?null:n},i.nodeSize=function(t){return arguments.length?(a=null==(n=t)?null:l,i):a?n:null},Ii(i,e)},t.layout.cluster=function(){var e=t.layout.hierarchy().sort(null).value(null),r=so,n=[1,1],a=!1;function i(i,o){var s,l=e.call(this,i,o),c=l[0],u=0;Oi(c,(function(e){var n=e.children;n&&n.length?(e.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(n),e.y=function(e){return 1+t.max(e,(function(t){return t.y}))}(n)):(e.x=s?u+=r(e,s):0,e.y=0,s=e)}));var h=function t(e){var r=e.children;return r&&r.length?t(r[0]):e}(c),f=function t(e){var r,n=e.children;return n&&(r=n.length)?t(n[r-1]):e}(c),p=h.x-r(h,f)/2,d=f.x+r(f,h)/2;return Oi(c,a?function(t){t.x=(t.x-c.x)*n[0],t.y=(c.y-t.y)*n[1]}:function(t){t.x=(t.x-p)/(d-p)*n[0],t.y=(1-(c.y?t.y/c.y:1))*n[1]}),l}return i.separation=function(t){return arguments.length?(r=t,i):r},i.size=function(t){return arguments.length?(a=null==(n=t),i):a?null:n},i.nodeSize=function(t){return arguments.length?(a=null!=(n=t),i):a?n:null},Ii(i,e)},t.layout.treemap=function(){var e,r=t.layout.hierarchy(),n=Math.round,a=[1,1],i=null,o=fo,s=!1,l=\"squarify\",c=.5*(1+Math.sqrt(5));function u(t,e){for(var r,n,a=-1,i=t.length;++a<i;)n=(r=t[a]).value*(e<0?0:e),r.area=isNaN(n)||n<=0?0:n}function h(t){var e=t.children;if(e&&e.length){var r,n,a,i=o(t),s=[],c=e.slice(),f=1/0,g=\"slice\"===l?i.dx:\"dice\"===l?i.dy:\"slice-dice\"===l?1&t.depth?i.dy:i.dx:Math.min(i.dx,i.dy);for(u(c,i.dx*i.dy/t.value),s.area=0;(a=c.length)>0;)s.push(r=c[a-1]),s.area+=r.area,\"squarify\"!==l||(n=p(s,g))<=f?(c.pop(),f=n):(s.area-=s.pop().area,d(s,g,i,!1),g=Math.min(i.dx,i.dy),s.length=s.area=0,f=1/0);s.length&&(d(s,g,i,!0),s.length=s.area=0),e.forEach(h)}}function f(t){var e=t.children;if(e&&e.length){var r,n=o(t),a=e.slice(),i=[];for(u(a,n.dx*n.dy/t.value),i.area=0;r=a.pop();)i.push(r),i.area+=r.area,null!=r.z&&(d(i,r.z?n.dx:n.dy,n,!a.length),i.length=i.area=0);e.forEach(f)}}function p(t,e){for(var r,n=t.area,a=0,i=1/0,o=-1,s=t.length;++o<s;)(r=t[o].area)&&(r<i&&(i=r),r>a&&(a=r));return e*=e,(n*=n)?Math.max(e*a*c/n,n/(e*i*c)):1/0}function d(t,e,r,a){var i,o=-1,s=t.length,l=r.x,c=r.y,u=e?n(t.area/e):0;if(e==r.dx){for((a||u>r.dy)&&(u=r.dy);++o<s;)(i=t[o]).x=l,i.y=c,i.dy=u,l+=i.dx=Math.min(r.x+r.dx-l,u?n(i.area/u):0);i.z=!0,i.dx+=r.x+r.dx-l,r.y+=u,r.dy-=u}else{for((a||u>r.dx)&&(u=r.dx);++o<s;)(i=t[o]).x=l,i.y=c,i.dx=u,c+=i.dy=Math.min(r.y+r.dy-c,u?n(i.area/u):0);i.z=!1,i.dy+=r.y+r.dy-c,r.x+=u,r.dx-=u}}function g(t){var n=e||r(t),i=n[0];return i.x=i.y=0,i.value?(i.dx=a[0],i.dy=a[1]):i.dx=i.dy=0,e&&r.revalue(i),u([i],i.dx*i.dy/i.value),(e?f:h)(i),s&&(e=n),n}return g.size=function(t){return arguments.length?(a=t,g):a},g.padding=function(t){if(!arguments.length)return i;function e(e){var r=t.call(g,e,e.depth);return null==r?fo(e):po(e,\"number\"==typeof r?[r,r,r,r]:r)}function r(e){return po(e,t)}var n;return o=null==(i=t)?fo:\"function\"==(n=typeof t)?e:\"number\"===n?(t=[t,t,t,t],r):r,g},g.round=function(t){return arguments.length?(n=t?Math.round:Number,g):n!=Number},g.sticky=function(t){return arguments.length?(s=t,e=null,g):s},g.ratio=function(t){return arguments.length?(c=t,g):c},g.mode=function(t){return arguments.length?(l=t+\"\",g):l},Ii(g,r)},t.random={normal:function(t,e){var r=arguments.length;return r<2&&(e=1),r<1&&(t=0),function(){var r,n,a;do{a=(r=2*Math.random()-1)*r+(n=2*Math.random()-1)*n}while(!a||a>1);return t+e*r*Math.sqrt(-2*Math.log(a)/a)}},logNormal:function(){var e=t.random.normal.apply(t,arguments);return function(){return Math.exp(e())}},bates:function(e){var r=t.random.irwinHall(e);return function(){return r()/e}},irwinHall:function(t){return function(){for(var e=0,r=0;r<t;r++)e+=Math.random();return e}}},t.scale={};var bo={floor:L,ceil:L};function _o(e,r,n,a){var i=[],o=[],s=0,l=Math.min(e.length,r.length)-1;for(e[l]<e[0]&&(e=e.slice().reverse(),r=r.slice().reverse());++s<=l;)i.push(n(e[s-1],e[s])),o.push(a(r[s-1],r[s]));return function(r){var n=t.bisect(e,r,1,l)-1;return o[n](i[n](r))}}function wo(e,r){return t.rebind(e,r,\"range\",\"rangeRound\",\"interpolate\",\"clamp\")}function To(t,e){return yo(t,xo(ko(t,e)[2])),yo(t,xo(ko(t,e)[2])),t}function ko(t,e){null==e&&(e=10);var r=go(t),n=r[1]-r[0],a=Math.pow(10,Math.floor(Math.log(n/e)/Math.LN10)),i=e/n*a;return i<=.15?a*=10:i<=.35?a*=5:i<=.75&&(a*=2),r[0]=Math.ceil(r[0]/a)*a,r[1]=Math.floor(r[1]/a)*a+.5*a,r[2]=a,r}function Mo(e,r){return t.range.apply(t,ko(e,r))}function Ao(e,r,n){var a=ko(e,r);if(n){var i=Ce.exec(n);if(i.shift(),\"s\"===i[8]){var o=t.formatPrefix(Math.max(y(a[0]),y(a[1])));return i[7]||(i[7]=\".\"+Eo(o.scale(a[2]))),i[8]=\"f\",n=t.format(i.join(\"\")),function(t){return n(o.scale(t))+o.symbol}}i[7]||(i[7]=\".\"+function(t,e){var r=Eo(e[2]);return t in So?Math.abs(r-Eo(Math.max(y(e[0]),y(e[1]))))+ +(\"e\"!==t):r-2*(\"%\"===t)}(i[8],a)),n=i.join(\"\")}else n=\",.\"+Eo(a[2])+\"f\";return t.format(n)}t.scale.linear=function(){return function t(e,r,n,a){var i,o;function s(){var t=Math.min(e.length,r.length)>2?_o:vo,s=a?wi:_i;return i=t(e,r,s,n),o=t(r,e,s,$a),l}function l(t){return i(t)}return l.invert=function(t){return o(t)},l.domain=function(t){return arguments.length?(e=t.map(Number),s()):e},l.range=function(t){return arguments.length?(r=t,s()):r},l.rangeRound=function(t){return l.range(t).interpolate(di)},l.clamp=function(t){return arguments.length?(a=t,s()):a},l.interpolate=function(t){return arguments.length?(n=t,s()):n},l.ticks=function(t){return Mo(e,t)},l.tickFormat=function(t,r){return Ao(e,t,r)},l.nice=function(t){return To(e,t),s()},l.copy=function(){return t(e,r,n,a)},s()}([0,1],[0,1],$a,!1)};var So={s:1,g:1,p:1,r:1,e:1};function Eo(t){return-Math.floor(Math.log(t)/Math.LN10+.01)}t.scale.log=function(){return function e(r,n,a,i){function o(t){return(a?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(n)}function s(t){return a?Math.pow(n,t):-Math.pow(n,-t)}function l(t){return r(o(t))}return l.invert=function(t){return s(r.invert(t))},l.domain=function(t){return arguments.length?(a=t[0]>=0,r.domain((i=t.map(Number)).map(o)),l):i},l.base=function(t){return arguments.length?(n=+t,r.domain(i.map(o)),l):n},l.nice=function(){var t=yo(i.map(o),a?Math:Lo);return r.domain(t),i=t.map(s),l},l.ticks=function(){var t=go(i),e=[],r=t[0],l=t[1],c=Math.floor(o(r)),u=Math.ceil(o(l)),h=n%1?2:n;if(isFinite(u-c)){if(a){for(;c<u;c++)for(var f=1;f<h;f++)e.push(s(c)*f);e.push(s(c))}else for(e.push(s(c));c++<u;)for(f=h-1;f>0;f--)e.push(s(c)*f);for(c=0;e[c]<r;c++);for(u=e.length;e[u-1]>l;u--);e=e.slice(c,u)}return e},l.tickFormat=function(e,r){if(!arguments.length)return Co;arguments.length<2?r=Co:\"function\"!=typeof r&&(r=t.format(r));var a=Math.max(1,n*e/l.ticks().length);return function(t){var e=t/s(Math.round(o(t)));return e*n<n-.5&&(e*=n),e<=a?r(t):\"\"}},l.copy=function(){return e(r.copy(),n,a,i)},wo(l,r)}(t.scale.linear().domain([0,1]),10,!0,[1,10])};var Co=t.format(\".0e\"),Lo={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};function Po(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}t.scale.pow=function(){return function t(e,r,n){var a=Po(r),i=Po(1/r);function o(t){return e(a(t))}return o.invert=function(t){return i(e.invert(t))},o.domain=function(t){return arguments.length?(e.domain((n=t.map(Number)).map(a)),o):n},o.ticks=function(t){return Mo(n,t)},o.tickFormat=function(t,e){return Ao(n,t,e)},o.nice=function(t){return o.domain(To(n,t))},o.exponent=function(t){return arguments.length?(a=Po(r=t),i=Po(1/r),e.domain(n.map(a)),o):r},o.copy=function(){return t(e.copy(),r,n)},wo(o,e)}(t.scale.linear(),1,[0,1])},t.scale.sqrt=function(){return t.scale.pow().exponent(.5)},t.scale.ordinal=function(){return function e(r,n){var a,i,o;function s(t){return i[((a.get(t)||(\"range\"===n.t?a.set(t,r.push(t)):NaN))-1)%i.length]}function l(e,n){return t.range(r.length).map((function(t){return e+n*t}))}return s.domain=function(t){if(!arguments.length)return r;r=[],a=new _;for(var e,i=-1,o=t.length;++i<o;)a.has(e=t[i])||a.set(e,r.push(e));return s[n.t].apply(s,n.a)},s.range=function(t){return arguments.length?(i=t,o=0,n={t:\"range\",a:arguments},s):i},s.rangePoints=function(t,e){arguments.length<2&&(e=0);var a=t[0],c=t[1],u=r.length<2?(a=(a+c)/2,0):(c-a)/(r.length-1+e);return i=l(a+u*e/2,u),o=0,n={t:\"rangePoints\",a:arguments},s},s.rangeRoundPoints=function(t,e){arguments.length<2&&(e=0);var a=t[0],c=t[1],u=r.length<2?(a=c=Math.round((a+c)/2),0):(c-a)/(r.length-1+e)|0;return i=l(a+Math.round(u*e/2+(c-a-(r.length-1+e)*u)/2),u),o=0,n={t:\"rangeRoundPoints\",a:arguments},s},s.rangeBands=function(t,e,a){arguments.length<2&&(e=0),arguments.length<3&&(a=e);var c=t[1]<t[0],u=t[c-0],h=t[1-c],f=(h-u)/(r.length-e+2*a);return i=l(u+f*a,f),c&&i.reverse(),o=f*(1-e),n={t:\"rangeBands\",a:arguments},s},s.rangeRoundBands=function(t,e,a){arguments.length<2&&(e=0),arguments.length<3&&(a=e);var c=t[1]<t[0],u=t[c-0],h=t[1-c],f=Math.floor((h-u)/(r.length-e+2*a));return i=l(u+Math.round((h-u-(r.length-e)*f)/2),f),c&&i.reverse(),o=Math.round(f*(1-e)),n={t:\"rangeRoundBands\",a:arguments},s},s.rangeBand=function(){return o},s.rangeExtent=function(){return go(n.a[0])},s.copy=function(){return e(r,n)},s.domain(r)}([],{t:\"range\",a:[[]]})},t.scale.category10=function(){return t.scale.ordinal().range(Io)},t.scale.category20=function(){return t.scale.ordinal().range(zo)},t.scale.category20b=function(){return t.scale.ordinal().range(Oo)},t.scale.category20c=function(){return t.scale.ordinal().range(Do)};var Io=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(ie),zo=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(ie),Oo=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(ie),Do=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(ie);function Ro(){return 0}t.scale.quantile=function(){return function e(r,n){var a;function i(){var e=0,i=n.length;for(a=[];++e<i;)a[e-1]=t.quantile(r,e/i);return o}function o(e){if(!isNaN(e=+e))return n[t.bisect(a,e)]}return o.domain=function(t){return arguments.length?(r=t.map(p).filter(d).sort(f),i()):r},o.range=function(t){return arguments.length?(n=t,i()):n},o.quantiles=function(){return a},o.invertExtent=function(t){return(t=n.indexOf(t))<0?[NaN,NaN]:[t>0?a[t-1]:r[0],t<a.length?a[t]:r[r.length-1]]},o.copy=function(){return e(r,n)},i()}([],[])},t.scale.quantize=function(){return function t(e,r,n){var a,i;function o(t){return n[Math.max(0,Math.min(i,Math.floor(a*(t-e))))]}function s(){return a=n.length/(r-e),i=n.length-1,o}return o.domain=function(t){return arguments.length?(e=+t[0],r=+t[t.length-1],s()):[e,r]},o.range=function(t){return arguments.length?(n=t,s()):n},o.invertExtent=function(t){return[t=(t=n.indexOf(t))<0?NaN:t/a+e,t+1/a]},o.copy=function(){return t(e,r,n)},s()}(0,1,[0,1])},t.scale.threshold=function(){return function e(r,n){function a(e){if(e<=e)return n[t.bisect(r,e)]}return a.domain=function(t){return arguments.length?(r=t,a):r},a.range=function(t){return arguments.length?(n=t,a):n},a.invertExtent=function(t){return t=n.indexOf(t),[r[t-1],r[t]]},a.copy=function(){return e(r,n)},a}([.5],[0,1])},t.scale.identity=function(){return function t(e){function r(t){return+t}return r.invert=r,r.domain=r.range=function(t){return arguments.length?(e=t.map(r),r):e},r.ticks=function(t){return Mo(e,t)},r.tickFormat=function(t,r){return Ao(e,t,r)},r.copy=function(){return t(e)},r}([0,1])},t.svg={},t.svg.arc=function(){var t=Bo,e=No,r=Ro,n=Fo,a=jo,i=Uo,o=Vo;function s(){var s=Math.max(0,+t.apply(this,arguments)),c=Math.max(0,+e.apply(this,arguments)),u=a.apply(this,arguments)-Ct,h=i.apply(this,arguments)-Ct,f=Math.abs(h-u),p=u>h?0:1;if(c<s&&(d=c,c=s,s=d),f>=Et)return l(c,p)+(s?l(s,1-p):\"\")+\"Z\";var d,g,m,v,y,x,b,_,w,T,k,M,A=0,S=0,E=[];if((v=(+o.apply(this,arguments)||0)/2)&&(m=n===Fo?Math.sqrt(s*s+c*c):+n.apply(this,arguments),p||(S*=-1),c&&(S=Dt(m/c*Math.sin(v))),s&&(A=Dt(m/s*Math.sin(v)))),c){y=c*Math.cos(u+S),x=c*Math.sin(u+S),b=c*Math.cos(h-S),_=c*Math.sin(h-S);var C=Math.abs(h-u-2*S)<=At?0:1;if(S&&qo(y,x,b,_)===p^C){var L=(u+h)/2;y=c*Math.cos(L),x=c*Math.sin(L),b=_=null}}else y=x=0;if(s){w=s*Math.cos(h-A),T=s*Math.sin(h-A),k=s*Math.cos(u+A),M=s*Math.sin(u+A);var P=Math.abs(u-h+2*A)<=At?0:1;if(A&&qo(w,T,k,M)===1-p^P){var I=(u+h)/2;w=s*Math.cos(I),T=s*Math.sin(I),k=M=null}}else w=T=0;if(f>kt&&(d=Math.min(Math.abs(c-s)/2,+r.apply(this,arguments)))>.001){g=s<c^p?0:1;var z=d,O=d;if(f<At){var D=null==k?[w,T]:null==b?[y,x]:la([y,x],[k,M],[b,_],[w,T]),R=y-D[0],F=x-D[1],B=b-D[0],N=_-D[1],j=1/Math.sin(Math.acos((R*B+F*N)/(Math.sqrt(R*R+F*F)*Math.sqrt(B*B+N*N)))/2),U=Math.sqrt(D[0]*D[0]+D[1]*D[1]);O=Math.min(d,(s-U)/(j-1)),z=Math.min(d,(c-U)/(j+1))}if(null!=b){var V=Ho(null==k?[w,T]:[k,M],[y,x],c,z,p),q=Ho([b,_],[w,T],c,z,p);d===z?E.push(\"M\",V[0],\"A\",z,\",\",z,\" 0 0,\",g,\" \",V[1],\"A\",c,\",\",c,\" 0 \",1-p^qo(V[1][0],V[1][1],q[1][0],q[1][1]),\",\",p,\" \",q[1],\"A\",z,\",\",z,\" 0 0,\",g,\" \",q[0]):E.push(\"M\",V[0],\"A\",z,\",\",z,\" 0 1,\",g,\" \",q[0])}else E.push(\"M\",y,\",\",x);if(null!=k){var H=Ho([y,x],[k,M],s,-O,p),G=Ho([w,T],null==b?[y,x]:[b,_],s,-O,p);d===O?E.push(\"L\",G[0],\"A\",O,\",\",O,\" 0 0,\",g,\" \",G[1],\"A\",s,\",\",s,\" 0 \",p^qo(G[1][0],G[1][1],H[1][0],H[1][1]),\",\",1-p,\" \",H[1],\"A\",O,\",\",O,\" 0 0,\",g,\" \",H[0]):E.push(\"L\",G[0],\"A\",O,\",\",O,\" 0 0,\",g,\" \",H[0])}else E.push(\"L\",w,\",\",T)}else E.push(\"M\",y,\",\",x),null!=b&&E.push(\"A\",c,\",\",c,\" 0 \",C,\",\",p,\" \",b,\",\",_),E.push(\"L\",w,\",\",T),null!=k&&E.push(\"A\",s,\",\",s,\" 0 \",P,\",\",1-p,\" \",k,\",\",M);return E.push(\"Z\"),E.join(\"\")}function l(t,e){return\"M0,\"+t+\"A\"+t+\",\"+t+\" 0 1,\"+e+\" 0,\"+-t+\"A\"+t+\",\"+t+\" 0 1,\"+e+\" 0,\"+t}return s.innerRadius=function(e){return arguments.length?(t=de(e),s):t},s.outerRadius=function(t){return arguments.length?(e=de(t),s):e},s.cornerRadius=function(t){return arguments.length?(r=de(t),s):r},s.padRadius=function(t){return arguments.length?(n=t==Fo?Fo:de(t),s):n},s.startAngle=function(t){return arguments.length?(a=de(t),s):a},s.endAngle=function(t){return arguments.length?(i=de(t),s):i},s.padAngle=function(t){return arguments.length?(o=de(t),s):o},s.centroid=function(){var r=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,n=(+a.apply(this,arguments)+ +i.apply(this,arguments))/2-Ct;return[Math.cos(n)*r,Math.sin(n)*r]},s};var Fo=\"auto\";function Bo(t){return t.innerRadius}function No(t){return t.outerRadius}function jo(t){return t.startAngle}function Uo(t){return t.endAngle}function Vo(t){return t&&t.padAngle}function qo(t,e,r,n){return(t-r)*e-(e-n)*t>0?0:1}function Ho(t,e,r,n,a){var i=t[0]-e[0],o=t[1]-e[1],s=(a?n:-n)/Math.sqrt(i*i+o*o),l=s*o,c=-s*i,u=t[0]+l,h=t[1]+c,f=e[0]+l,p=e[1]+c,d=(u+f)/2,g=(h+p)/2,m=f-u,v=p-h,y=m*m+v*v,x=r-n,b=u*p-f*h,_=(v<0?-1:1)*Math.sqrt(Math.max(0,x*x*y-b*b)),w=(b*v-m*_)/y,T=(-b*m-v*_)/y,k=(b*v+m*_)/y,M=(-b*m+v*_)/y,A=w-d,S=T-g,E=k-d,C=M-g;return A*A+S*S>E*E+C*C&&(w=k,T=M),[[w-l,T-c],[w*r/x,T*r/x]]}function Go(t){var e=ra,r=na,n=Yr,a=Wo,i=a.key,o=.7;function s(i){var s,l=[],c=[],u=-1,h=i.length,f=de(e),p=de(r);function d(){l.push(\"M\",a(t(c),o))}for(;++u<h;)n.call(this,s=i[u],u)?c.push([+f.call(this,s,u),+p.call(this,s,u)]):c.length&&(d(),c=[]);return c.length&&d(),l.length?l.join(\"\"):null}return s.x=function(t){return arguments.length?(e=t,s):e},s.y=function(t){return arguments.length?(r=t,s):r},s.defined=function(t){return arguments.length?(n=t,s):n},s.interpolate=function(t){return arguments.length?(i=\"function\"==typeof t?a=t:(a=Yo.get(t)||Wo).key,s):i},s.tension=function(t){return arguments.length?(o=t,s):o},s}t.svg.line=function(){return Go(L)};var Yo=t.map({linear:Wo,\"linear-closed\":Zo,step:function(t){var e=0,r=t.length,n=t[0],a=[n[0],\",\",n[1]];for(;++e<r;)a.push(\"H\",(n[0]+(n=t[e])[0])/2,\"V\",n[1]);r>1&&a.push(\"H\",n[0]);return a.join(\"\")},\"step-before\":Xo,\"step-after\":Jo,basis:$o,\"basis-open\":function(t){if(t.length<4)return Wo(t);var e,r=[],n=-1,a=t.length,i=[0],o=[0];for(;++n<3;)e=t[n],i.push(e[0]),o.push(e[1]);r.push(ts(ns,i)+\",\"+ts(ns,o)),--n;for(;++n<a;)e=t[n],i.shift(),i.push(e[0]),o.shift(),o.push(e[1]),as(r,i,o);return r.join(\"\")},\"basis-closed\":function(t){var e,r,n=-1,a=t.length,i=a+4,o=[],s=[];for(;++n<4;)r=t[n%a],o.push(r[0]),s.push(r[1]);e=[ts(ns,o),\",\",ts(ns,s)],--n;for(;++n<i;)r=t[n%a],o.shift(),o.push(r[0]),s.shift(),s.push(r[1]),as(e,o,s);return e.join(\"\")},bundle:function(t,e){var r=t.length-1;if(r)for(var n,a,i=t[0][0],o=t[0][1],s=t[r][0]-i,l=t[r][1]-o,c=-1;++c<=r;)n=t[c],a=c/r,n[0]=e*n[0]+(1-e)*(i+a*s),n[1]=e*n[1]+(1-e)*(o+a*l);return $o(t)},cardinal:function(t,e){return t.length<3?Wo(t):t[0]+Ko(t,Qo(t,e))},\"cardinal-open\":function(t,e){return t.length<4?Wo(t):t[1]+Ko(t.slice(1,-1),Qo(t,e))},\"cardinal-closed\":function(t,e){return t.length<3?Zo(t):t[0]+Ko((t.push(t[0]),t),Qo([t[t.length-2]].concat(t,[t[1]]),e))},monotone:function(t){return t.length<3?Wo(t):t[0]+Ko(t,function(t){var e,r,n,a,i=[],o=function(t){var e=0,r=t.length-1,n=[],a=t[0],i=t[1],o=n[0]=is(a,i);for(;++e<r;)n[e]=(o+(o=is(a=i,i=t[e+1])))/2;return n[e]=o,n}(t),s=-1,l=t.length-1;for(;++s<l;)e=is(t[s],t[s+1]),y(e)<kt?o[s]=o[s+1]=0:(r=o[s]/e,n=o[s+1]/e,(a=r*r+n*n)>9&&(a=3*e/Math.sqrt(a),o[s]=a*r,o[s+1]=a*n));s=-1;for(;++s<=l;)a=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),i.push([a||0,o[s]*a||0]);return i}(t))}});function Wo(t){return t.length>1?t.join(\"L\"):t+\"Z\"}function Zo(t){return t.join(\"L\")+\"Z\"}function Xo(t){for(var e=0,r=t.length,n=t[0],a=[n[0],\",\",n[1]];++e<r;)a.push(\"V\",(n=t[e])[1],\"H\",n[0]);return a.join(\"\")}function Jo(t){for(var e=0,r=t.length,n=t[0],a=[n[0],\",\",n[1]];++e<r;)a.push(\"H\",(n=t[e])[0],\"V\",n[1]);return a.join(\"\")}function Ko(t,e){if(e.length<1||t.length!=e.length&&t.length!=e.length+2)return Wo(t);var r=t.length!=e.length,n=\"\",a=t[0],i=t[1],o=e[0],s=o,l=1;if(r&&(n+=\"Q\"+(i[0]-2*o[0]/3)+\",\"+(i[1]-2*o[1]/3)+\",\"+i[0]+\",\"+i[1],a=t[1],l=2),e.length>1){s=e[1],i=t[l],l++,n+=\"C\"+(a[0]+o[0])+\",\"+(a[1]+o[1])+\",\"+(i[0]-s[0])+\",\"+(i[1]-s[1])+\",\"+i[0]+\",\"+i[1];for(var c=2;c<e.length;c++,l++)i=t[l],s=e[c],n+=\"S\"+(i[0]-s[0])+\",\"+(i[1]-s[1])+\",\"+i[0]+\",\"+i[1]}if(r){var u=t[l];n+=\"Q\"+(i[0]+2*s[0]/3)+\",\"+(i[1]+2*s[1]/3)+\",\"+u[0]+\",\"+u[1]}return n}function Qo(t,e){for(var r,n=[],a=(1-e)/2,i=t[0],o=t[1],s=1,l=t.length;++s<l;)r=i,i=o,o=t[s],n.push([a*(o[0]-r[0]),a*(o[1]-r[1])]);return n}function $o(t){if(t.length<3)return Wo(t);var e=1,r=t.length,n=t[0],a=n[0],i=n[1],o=[a,a,a,(n=t[1])[0]],s=[i,i,i,n[1]],l=[a,\",\",i,\"L\",ts(ns,o),\",\",ts(ns,s)];for(t.push(t[r-1]);++e<=r;)n=t[e],o.shift(),o.push(n[0]),s.shift(),s.push(n[1]),as(l,o,s);return t.pop(),l.push(\"L\",n),l.join(\"\")}function ts(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}Yo.forEach((function(t,e){e.key=t,e.closed=/-closed$/.test(t)}));var es=[0,2/3,1/3,0],rs=[0,1/3,2/3,0],ns=[0,1/6,2/3,1/6];function as(t,e,r){t.push(\"C\",ts(es,e),\",\",ts(es,r),\",\",ts(rs,e),\",\",ts(rs,r),\",\",ts(ns,e),\",\",ts(ns,r))}function is(t,e){return(e[1]-t[1])/(e[0]-t[0])}function os(t){for(var e,r,n,a=-1,i=t.length;++a<i;)r=(e=t[a])[0],n=e[1]-Ct,e[0]=r*Math.cos(n),e[1]=r*Math.sin(n);return t}function ss(t){var e=ra,r=ra,n=0,a=na,i=Yr,o=Wo,s=o.key,l=o,c=\"L\",u=.7;function h(s){var h,f,p,d=[],g=[],m=[],v=-1,y=s.length,x=de(e),b=de(n),_=e===r?function(){return f}:de(r),w=n===a?function(){return p}:de(a);function T(){d.push(\"M\",o(t(m),u),c,l(t(g.reverse()),u),\"Z\")}for(;++v<y;)i.call(this,h=s[v],v)?(g.push([f=+x.call(this,h,v),p=+b.call(this,h,v)]),m.push([+_.call(this,h,v),+w.call(this,h,v)])):g.length&&(T(),g=[],m=[]);return g.length&&T(),d.length?d.join(\"\"):null}return h.x=function(t){return arguments.length?(e=r=t,h):r},h.x0=function(t){return arguments.length?(e=t,h):e},h.x1=function(t){return arguments.length?(r=t,h):r},h.y=function(t){return arguments.length?(n=a=t,h):a},h.y0=function(t){return arguments.length?(n=t,h):n},h.y1=function(t){return arguments.length?(a=t,h):a},h.defined=function(t){return arguments.length?(i=t,h):i},h.interpolate=function(t){return arguments.length?(s=\"function\"==typeof t?o=t:(o=Yo.get(t)||Wo).key,l=o.reverse||o,c=o.closed?\"M\":\"L\",h):s},h.tension=function(t){return arguments.length?(u=t,h):u},h}function ls(t){return t.radius}function cs(t){return[t.x,t.y]}function us(t){return function(){var e=t.apply(this,arguments),r=e[0],n=e[1]-Ct;return[r*Math.cos(n),r*Math.sin(n)]}}function hs(){return 64}function fs(){return\"circle\"}function ps(t){var e=Math.sqrt(t/At);return\"M0,\"+e+\"A\"+e+\",\"+e+\" 0 1,1 0,\"+-e+\"A\"+e+\",\"+e+\" 0 1,1 0,\"+e+\"Z\"}t.svg.line.radial=function(){var t=Go(os);return t.radius=t.x,delete t.x,t.angle=t.y,delete t.y,t},Xo.reverse=Jo,Jo.reverse=Xo,t.svg.area=function(){return ss(L)},t.svg.area.radial=function(){var t=ss(os);return t.radius=t.x,delete t.x,t.innerRadius=t.x0,delete t.x0,t.outerRadius=t.x1,delete t.x1,t.angle=t.y,delete t.y,t.startAngle=t.y0,delete t.y0,t.endAngle=t.y1,delete t.y1,t},t.svg.chord=function(){var t=Vn,e=qn,r=ls,n=jo,a=Uo;function i(r,n){var a,i,c=o(this,t,r,n),u=o(this,e,r,n);return\"M\"+c.p0+s(c.r,c.p1,c.a1-c.a0)+(i=u,((a=c).a0==i.a0&&a.a1==i.a1?l(c.r,c.p1,c.r,c.p0):l(c.r,c.p1,u.r,u.p0)+s(u.r,u.p1,u.a1-u.a0)+l(u.r,u.p1,c.r,c.p0))+\"Z\")}function o(t,e,i,o){var s=e.call(t,i,o),l=r.call(t,s,o),c=n.call(t,s,o)-Ct,u=a.call(t,s,o)-Ct;return{r:l,a0:c,a1:u,p0:[l*Math.cos(c),l*Math.sin(c)],p1:[l*Math.cos(u),l*Math.sin(u)]}}function s(t,e,r){return\"A\"+t+\",\"+t+\" 0 \"+ +(r>At)+\",1 \"+e}function l(t,e,r,n){return\"Q 0,0 \"+n}return i.radius=function(t){return arguments.length?(r=de(t),i):r},i.source=function(e){return arguments.length?(t=de(e),i):t},i.target=function(t){return arguments.length?(e=de(t),i):e},i.startAngle=function(t){return arguments.length?(n=de(t),i):n},i.endAngle=function(t){return arguments.length?(a=de(t),i):a},i},t.svg.diagonal=function(){var t=Vn,e=qn,r=cs;function n(n,a){var i=t.call(this,n,a),o=e.call(this,n,a),s=(i.y+o.y)/2,l=[i,{x:i.x,y:s},{x:o.x,y:s},o];return\"M\"+(l=l.map(r))[0]+\"C\"+l[1]+\" \"+l[2]+\" \"+l[3]}return n.source=function(e){return arguments.length?(t=de(e),n):t},n.target=function(t){return arguments.length?(e=de(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},t.svg.diagonal.radial=function(){var e=t.svg.diagonal(),r=cs,n=e.projection;return e.projection=function(t){return arguments.length?n(us(r=t)):r},e},t.svg.symbol=function(){var t=fs,e=hs;function r(r,n){return(ds.get(t.call(this,r,n))||ps)(e.call(this,r,n))}return r.type=function(e){return arguments.length?(t=de(e),r):t},r.size=function(t){return arguments.length?(e=de(t),r):e},r};var ds=t.map({circle:ps,cross:function(t){var e=Math.sqrt(t/5)/2;return\"M\"+-3*e+\",\"+-e+\"H\"+-e+\"V\"+-3*e+\"H\"+e+\"V\"+-e+\"H\"+3*e+\"V\"+e+\"H\"+e+\"V\"+3*e+\"H\"+-e+\"V\"+e+\"H\"+-3*e+\"Z\"},diamond:function(t){var e=Math.sqrt(t/(2*ms)),r=e*ms;return\"M0,\"+-e+\"L\"+r+\",0 0,\"+e+\" \"+-r+\",0Z\"},square:function(t){var e=Math.sqrt(t)/2;return\"M\"+-e+\",\"+-e+\"L\"+e+\",\"+-e+\" \"+e+\",\"+e+\" \"+-e+\",\"+e+\"Z\"},\"triangle-down\":function(t){var e=Math.sqrt(t/gs),r=e*gs/2;return\"M0,\"+r+\"L\"+e+\",\"+-r+\" \"+-e+\",\"+-r+\"Z\"},\"triangle-up\":function(t){var e=Math.sqrt(t/gs),r=e*gs/2;return\"M0,\"+-r+\"L\"+e+\",\"+r+\" \"+-e+\",\"+r+\"Z\"}});t.svg.symbolTypes=ds.keys();var gs=Math.sqrt(3),ms=Math.tan(30*Lt);Y.transition=function(t){for(var e,r,n=bs||++Ts,a=As(t),i=[],o=_s||{time:Date.now(),ease:ci,delay:0,duration:250},s=-1,l=this.length;++s<l;){i.push(e=[]);for(var c=this[s],u=-1,h=c.length;++u<h;)(r=c[u])&&Ss(r,u,a,n,o),e.push(r)}return xs(i,a,n)},Y.interrupt=function(t){return this.each(null==t?vs:ys(As(t)))};var vs=ys(As());function ys(t){return function(){var e,r,n;(e=this[t])&&(n=e[r=e.active])&&(n.timer.c=null,n.timer.t=NaN,--e.count?delete e[r]:delete this[t],e.active+=.5,n.event&&n.event.interrupt.call(this,this.__data__,n.index))}}function xs(t,e,r){return U(t,ws),t.namespace=e,t.id=r,t}var bs,_s,ws=[],Ts=0;function ks(t,e,r,n){var a=t.id,i=t.namespace;return ut(t,\"function\"==typeof r?function(t,o,s){t[i][a].tween.set(e,n(r.call(t,t.__data__,o,s)))}:(r=n(r),function(t){t[i][a].tween.set(e,r)}))}function Ms(t){return null==t&&(t=\"\"),function(){this.textContent=t}}function As(t){return null==t?\"__transition__\":\"__transition_\"+t+\"__\"}function Ss(t,e,r,n,a){var i,o,s,l,c,u=t[r]||(t[r]={active:0,count:0}),h=u[n];function f(r){var a=u.active,f=u[a];for(var d in f&&(f.timer.c=null,f.timer.t=NaN,--u.count,delete u[a],f.event&&f.event.interrupt.call(t,t.__data__,f.index)),u)if(+d<n){var g=u[d];g.timer.c=null,g.timer.t=NaN,--u.count,delete u[d]}o.c=p,we((function(){return o.c&&p(r||1)&&(o.c=null,o.t=NaN),1}),0,i),u.active=n,h.event&&h.event.start.call(t,t.__data__,e),c=[],h.tween.forEach((function(r,n){(n=n.call(t,t.__data__,e))&&c.push(n)})),l=h.ease,s=h.duration}function p(a){for(var i=a/s,o=l(i),f=c.length;f>0;)c[--f].call(t,o);if(i>=1)return h.event&&h.event.end.call(t,t.__data__,e),--u.count?delete u[n]:delete t[r],1}h||(i=a.time,o=we((function(t){var e=h.delay;if(o.t=e+i,e<=t)return f(t-e);o.c=f}),0,i),h=u[n]={tween:new _,time:i,timer:o,delay:a.delay,duration:a.duration,ease:a.ease,index:e},a=null,++u.count)}ws.call=Y.call,ws.empty=Y.empty,ws.node=Y.node,ws.size=Y.size,t.transition=function(e,r){return e&&e.transition?bs?e.transition(r):e:t.selection().transition(e)},t.transition.prototype=ws,ws.select=function(t){var e,r,n,a=this.id,i=this.namespace,o=[];t=W(t);for(var s=-1,l=this.length;++s<l;){o.push(e=[]);for(var c=this[s],u=-1,h=c.length;++u<h;)(n=c[u])&&(r=t.call(n,n.__data__,u,s))?(\"__data__\"in n&&(r.__data__=n.__data__),Ss(r,u,i,a,n[i][a]),e.push(r)):e.push(null)}return xs(o,i,a)},ws.selectAll=function(t){var e,r,n,a,i,o=this.id,s=this.namespace,l=[];t=Z(t);for(var c=-1,u=this.length;++c<u;)for(var h=this[c],f=-1,p=h.length;++f<p;)if(n=h[f]){i=n[s][o],r=t.call(n,n.__data__,f,c),l.push(e=[]);for(var d=-1,g=r.length;++d<g;)(a=r[d])&&Ss(a,d,s,o,i),e.push(a)}return xs(l,s,o)},ws.filter=function(t){var e,r,n=[];\"function\"!=typeof t&&(t=lt(t));for(var a=0,i=this.length;a<i;a++){n.push(e=[]);for(var o,s=0,l=(o=this[a]).length;s<l;s++)(r=o[s])&&t.call(r,r.__data__,s,a)&&e.push(r)}return xs(n,this.namespace,this.id)},ws.tween=function(t,e){var r=this.id,n=this.namespace;return arguments.length<2?this.node()[n][r].tween.get(t):ut(this,null==e?function(e){e[n][r].tween.remove(t)}:function(a){a[n][r].tween.set(t,e)})},ws.attr=function(e,r){if(arguments.length<2){for(r in e)this.attr(r,e[r]);return this}var n=\"transform\"==e?bi:$a,a=t.ns.qualify(e);function i(){this.removeAttribute(a)}function o(){this.removeAttributeNS(a.space,a.local)}function s(t){return null==t?i:(t+=\"\",function(){var e,r=this.getAttribute(a);return r!==t&&(e=n(r,t),function(t){this.setAttribute(a,e(t))})})}function l(t){return null==t?o:(t+=\"\",function(){var e,r=this.getAttributeNS(a.space,a.local);return r!==t&&(e=n(r,t),function(t){this.setAttributeNS(a.space,a.local,e(t))})})}return ks(this,\"attr.\"+e,r,a.local?l:s)},ws.attrTween=function(e,r){var n=t.ns.qualify(e);return this.tween(\"attr.\"+e,n.local?function(t,e){var a=r.call(this,t,e,this.getAttributeNS(n.space,n.local));return a&&function(t){this.setAttributeNS(n.space,n.local,a(t))}}:function(t,e){var a=r.call(this,t,e,this.getAttribute(n));return a&&function(t){this.setAttribute(n,a(t))}})},ws.style=function(t,e,r){var n=arguments.length;if(n<3){if(\"string\"!=typeof t){for(r in n<2&&(e=\"\"),t)this.style(r,t[r],e);return this}r=\"\"}function a(){this.style.removeProperty(t)}function i(e){return null==e?a:(e+=\"\",function(){var n,a=o(this).getComputedStyle(this,null).getPropertyValue(t);return a!==e&&(n=$a(a,e),function(e){this.style.setProperty(t,n(e),r)})})}return ks(this,\"style.\"+t,e,i)},ws.styleTween=function(t,e,r){function n(n,a){var i=e.call(this,n,a,o(this).getComputedStyle(this,null).getPropertyValue(t));return i&&function(e){this.style.setProperty(t,i(e),r)}}return arguments.length<3&&(r=\"\"),this.tween(\"style.\"+t,n)},ws.text=function(t){return ks(this,\"text\",t,Ms)},ws.remove=function(){var t=this.namespace;return this.each(\"end.transition\",(function(){var e;this[t].count<2&&(e=this.parentNode)&&e.removeChild(this)}))},ws.ease=function(e){var r=this.id,n=this.namespace;return arguments.length<1?this.node()[n][r].ease:(\"function\"!=typeof e&&(e=t.ease.apply(t,arguments)),ut(this,(function(t){t[n][r].ease=e})))},ws.delay=function(t){var e=this.id,r=this.namespace;return arguments.length<1?this.node()[r][e].delay:ut(this,\"function\"==typeof t?function(n,a,i){n[r][e].delay=+t.call(n,n.__data__,a,i)}:(t=+t,function(n){n[r][e].delay=t}))},ws.duration=function(t){var e=this.id,r=this.namespace;return arguments.length<1?this.node()[r][e].duration:ut(this,\"function\"==typeof t?function(n,a,i){n[r][e].duration=Math.max(1,t.call(n,n.__data__,a,i))}:(t=Math.max(1,t),function(n){n[r][e].duration=t}))},ws.each=function(e,r){var n=this.id,a=this.namespace;if(arguments.length<2){var i=_s,o=bs;try{bs=n,ut(this,(function(t,r,i){_s=t[a][n],e.call(t,t.__data__,r,i)}))}finally{_s=i,bs=o}}else ut(this,(function(i){var o=i[a][n];(o.event||(o.event=t.dispatch(\"start\",\"end\",\"interrupt\"))).on(e,r)}));return this},ws.transition=function(){for(var t,e,r,n=this.id,a=++Ts,i=this.namespace,o=[],s=0,l=this.length;s<l;s++){o.push(t=[]);for(var c,u=0,h=(c=this[s]).length;u<h;u++)(e=c[u])&&Ss(e,u,i,a,{time:(r=e[i][n]).time,ease:r.ease,delay:r.delay+r.duration,duration:r.duration}),t.push(e)}return xs(o,i,a)},t.svg.axis=function(){var e,r=t.scale.linear(),a=Es,i=6,o=6,s=3,l=[10],c=null;function u(n){n.each((function(){var n,u=t.select(this),h=this.__chart__||r,f=this.__chart__=r.copy(),p=null==c?f.ticks?f.ticks.apply(f,l):f.domain():c,d=null==e?f.tickFormat?f.tickFormat.apply(f,l):L:e,g=u.selectAll(\".tick\").data(p,f),m=g.enter().insert(\"g\",\".domain\").attr(\"class\",\"tick\").style(\"opacity\",kt),v=t.transition(g.exit()).style(\"opacity\",kt).remove(),y=t.transition(g.order()).style(\"opacity\",1),x=Math.max(i,0)+s,b=mo(f),_=u.selectAll(\".domain\").data([0]),w=(_.enter().append(\"path\").attr(\"class\",\"domain\"),t.transition(_));m.append(\"line\"),m.append(\"text\");var T,k,M,A,S=m.select(\"line\"),E=y.select(\"line\"),C=g.select(\"text\").text(d),P=m.select(\"text\"),I=y.select(\"text\"),z=\"top\"===a||\"left\"===a?-1:1;if(\"bottom\"===a||\"top\"===a?(n=Ls,T=\"x\",M=\"y\",k=\"x2\",A=\"y2\",C.attr(\"dy\",z<0?\"0em\":\".71em\").style(\"text-anchor\",\"middle\"),w.attr(\"d\",\"M\"+b[0]+\",\"+z*o+\"V0H\"+b[1]+\"V\"+z*o)):(n=Ps,T=\"y\",M=\"x\",k=\"y2\",A=\"x2\",C.attr(\"dy\",\".32em\").style(\"text-anchor\",z<0?\"end\":\"start\"),w.attr(\"d\",\"M\"+z*o+\",\"+b[0]+\"H0V\"+b[1]+\"H\"+z*o)),S.attr(A,z*i),P.attr(M,z*x),E.attr(k,0).attr(A,z*i),I.attr(T,0).attr(M,z*x),f.rangeBand){var O=f,D=O.rangeBand()/2;h=f=function(t){return O(t)+D}}else h.rangeBand?h=f:v.call(n,f,h);m.call(n,h,f),y.call(n,f,f)}))}return u.scale=function(t){return arguments.length?(r=t,u):r},u.orient=function(t){return arguments.length?(a=t in Cs?t+\"\":Es,u):a},u.ticks=function(){return arguments.length?(l=n(arguments),u):l},u.tickValues=function(t){return arguments.length?(c=t,u):c},u.tickFormat=function(t){return arguments.length?(e=t,u):e},u.tickSize=function(t){var e=arguments.length;return e?(i=+t,o=+arguments[e-1],u):i},u.innerTickSize=function(t){return arguments.length?(i=+t,u):i},u.outerTickSize=function(t){return arguments.length?(o=+t,u):o},u.tickPadding=function(t){return arguments.length?(s=+t,u):s},u.tickSubdivide=function(){return arguments.length&&u},u};var Es=\"bottom\",Cs={top:1,right:1,bottom:1,left:1};function Ls(t,e,r){t.attr(\"transform\",(function(t){var n=e(t);return\"translate(\"+(isFinite(n)?n:r(t))+\",0)\"}))}function Ps(t,e,r){t.attr(\"transform\",(function(t){var n=e(t);return\"translate(0,\"+(isFinite(n)?n:r(t))+\")\"}))}t.svg.brush=function(){var e,r,n=N(f,\"brushstart\",\"brush\",\"brushend\"),a=null,i=null,s=[0,0],l=[0,0],c=!0,u=!0,h=zs[0];function f(e){e.each((function(){var e=t.select(this).style(\"pointer-events\",\"all\").style(\"-webkit-tap-highlight-color\",\"rgba(0,0,0,0)\").on(\"mousedown.brush\",m).on(\"touchstart.brush\",m),r=e.selectAll(\".background\").data([0]);r.enter().append(\"rect\").attr(\"class\",\"background\").style(\"visibility\",\"hidden\").style(\"cursor\",\"crosshair\"),e.selectAll(\".extent\").data([0]).enter().append(\"rect\").attr(\"class\",\"extent\").style(\"cursor\",\"move\");var n=e.selectAll(\".resize\").data(h,L);n.exit().remove(),n.enter().append(\"g\").attr(\"class\",(function(t){return\"resize \"+t})).style(\"cursor\",(function(t){return Is[t]})).append(\"rect\").attr(\"x\",(function(t){return/[ew]$/.test(t)?-3:null})).attr(\"y\",(function(t){return/^[ns]/.test(t)?-3:null})).attr(\"width\",6).attr(\"height\",6).style(\"visibility\",\"hidden\"),n.style(\"display\",f.empty()?\"none\":null);var o,s=t.transition(e),l=t.transition(r);a&&(o=mo(a),l.attr(\"x\",o[0]).attr(\"width\",o[1]-o[0]),d(s)),i&&(o=mo(i),l.attr(\"y\",o[0]).attr(\"height\",o[1]-o[0]),g(s)),p(s)}))}function p(t){t.selectAll(\".resize\").attr(\"transform\",(function(t){return\"translate(\"+s[+/e$/.test(t)]+\",\"+l[+/^s/.test(t)]+\")\"}))}function d(t){t.select(\".extent\").attr(\"x\",s[0]),t.selectAll(\".extent,.n>rect,.s>rect\").attr(\"width\",s[1]-s[0])}function g(t){t.select(\".extent\").attr(\"y\",l[0]),t.selectAll(\".extent,.e>rect,.w>rect\").attr(\"height\",l[1]-l[0])}function m(){var h,m,v=this,y=t.select(t.event.target),x=n.of(v,arguments),b=t.select(v),_=y.datum(),w=!/^(n|s)$/.test(_)&&a,T=!/^(e|w)$/.test(_)&&i,k=y.classed(\"extent\"),M=bt(v),A=t.mouse(v),S=t.select(o(v)).on(\"keydown.brush\",L).on(\"keyup.brush\",P);if(t.event.changedTouches?S.on(\"touchmove.brush\",I).on(\"touchend.brush\",O):S.on(\"mousemove.brush\",I).on(\"mouseup.brush\",O),b.interrupt().selectAll(\"*\").interrupt(),k)A[0]=s[0]-A[0],A[1]=l[0]-A[1];else if(_){var E=+/w$/.test(_),C=+/^n/.test(_);m=[s[1-E]-A[0],l[1-C]-A[1]],A[0]=s[E],A[1]=l[C]}else t.event.altKey&&(h=A.slice());function L(){32==t.event.keyCode&&(k||(h=null,A[0]-=s[1],A[1]-=l[1],k=2),F())}function P(){32==t.event.keyCode&&2==k&&(A[0]+=s[1],A[1]+=l[1],k=0,F())}function I(){var e=t.mouse(v),r=!1;m&&(e[0]+=m[0],e[1]+=m[1]),k||(t.event.altKey?(h||(h=[(s[0]+s[1])/2,(l[0]+l[1])/2]),A[0]=s[+(e[0]<h[0])],A[1]=l[+(e[1]<h[1])]):h=null),w&&z(e,a,0)&&(d(b),r=!0),T&&z(e,i,1)&&(g(b),r=!0),r&&(p(b),x({type:\"brush\",mode:k?\"move\":\"resize\"}))}function z(t,n,a){var i,o,f=mo(n),p=f[0],d=f[1],g=A[a],m=a?l:s,v=m[1]-m[0];if(k&&(p-=g,d-=v+g),i=(a?u:c)?Math.max(p,Math.min(d,t[a])):t[a],k?o=(i+=g)+v:(h&&(g=Math.max(p,Math.min(d,2*h[a]-i))),g<i?(o=i,i=g):o=g),m[0]!=i||m[1]!=o)return a?r=null:e=null,m[0]=i,m[1]=o,!0}function O(){I(),b.style(\"pointer-events\",\"all\").selectAll(\".resize\").style(\"display\",f.empty()?\"none\":null),t.select(\"body\").style(\"cursor\",null),S.on(\"mousemove.brush\",null).on(\"mouseup.brush\",null).on(\"touchmove.brush\",null).on(\"touchend.brush\",null).on(\"keydown.brush\",null).on(\"keyup.brush\",null),M(),x({type:\"brushend\"})}b.style(\"pointer-events\",\"none\").selectAll(\".resize\").style(\"display\",null),t.select(\"body\").style(\"cursor\",y.style(\"cursor\")),x({type:\"brushstart\"}),I()}return f.event=function(a){a.each((function(){var a=n.of(this,arguments),i={x:s,y:l,i:e,j:r},o=this.__chart__||i;this.__chart__=i,bs?t.select(this).transition().each(\"start.brush\",(function(){e=o.i,r=o.j,s=o.x,l=o.y,a({type:\"brushstart\"})})).tween(\"brush:brush\",(function(){var t=ti(s,i.x),n=ti(l,i.y);return e=r=null,function(e){s=i.x=t(e),l=i.y=n(e),a({type:\"brush\",mode:\"resize\"})}})).each(\"end.brush\",(function(){e=i.i,r=i.j,a({type:\"brush\",mode:\"resize\"}),a({type:\"brushend\"})})):(a({type:\"brushstart\"}),a({type:\"brush\",mode:\"resize\"}),a({type:\"brushend\"}))}))},f.x=function(t){return arguments.length?(h=zs[!(a=t)<<1|!i],f):a},f.y=function(t){return arguments.length?(h=zs[!a<<1|!(i=t)],f):i},f.clamp=function(t){return arguments.length?(a&&i?(c=!!t[0],u=!!t[1]):a?c=!!t:i&&(u=!!t),f):a&&i?[c,u]:a?c:i?u:null},f.extent=function(t){var n,o,c,u,h;return arguments.length?(a&&(n=t[0],o=t[1],i&&(n=n[0],o=o[0]),e=[n,o],a.invert&&(n=a(n),o=a(o)),o<n&&(h=n,n=o,o=h),n==s[0]&&o==s[1]||(s=[n,o])),i&&(c=t[0],u=t[1],a&&(c=c[1],u=u[1]),r=[c,u],i.invert&&(c=i(c),u=i(u)),u<c&&(h=c,c=u,u=h),c==l[0]&&u==l[1]||(l=[c,u])),f):(a&&(e?(n=e[0],o=e[1]):(n=s[0],o=s[1],a.invert&&(n=a.invert(n),o=a.invert(o)),o<n&&(h=n,n=o,o=h))),i&&(r?(c=r[0],u=r[1]):(c=l[0],u=l[1],i.invert&&(c=i.invert(c),u=i.invert(u)),u<c&&(h=c,c=u,u=h))),a&&i?[[n,c],[o,u]]:a?[n,o]:i&&[c,u])},f.clear=function(){return f.empty()||(s=[0,0],l=[0,0],e=r=null),f},f.empty=function(){return!!a&&s[0]==s[1]||!!i&&l[0]==l[1]},t.rebind(f,n,\"on\")};var Is={n:\"ns-resize\",e:\"ew-resize\",s:\"ns-resize\",w:\"ew-resize\",nw:\"nwse-resize\",ne:\"nesw-resize\",se:\"nwse-resize\",sw:\"nesw-resize\"},zs=[[\"n\",\"e\",\"s\",\"w\",\"nw\",\"ne\",\"se\",\"sw\"],[\"e\",\"w\"],[\"n\",\"s\"],[]],Os=Ie.format=sr.timeFormat,Ds=Os.utc,Rs=Ds(\"%Y-%m-%dT%H:%M:%S.%LZ\");function Fs(t){return t.toISOString()}function Bs(e,r,n){function a(t){return e(t)}function i(e,n){var a=(e[1]-e[0])/n,i=t.bisect(js,a);return i==js.length?[r.year,ko(e.map((function(t){return t/31536e6})),n)[2]]:i?r[a/js[i-1]<js[i]/a?i-1:i]:[qs,ko(e,n)[2]]}return a.invert=function(t){return Ns(e.invert(t))},a.domain=function(t){return arguments.length?(e.domain(t),a):e.domain().map(Ns)},a.nice=function(t,e){var r=a.domain(),n=go(r),o=null==t?i(n,10):\"number\"==typeof t&&i(n,t);function s(r){return!isNaN(r)&&!t.range(r,Ns(+r+1),e).length}return o&&(t=o[0],e=o[1]),a.domain(yo(r,e>1?{floor:function(e){for(;s(e=t.floor(e));)e=Ns(e-1);return e},ceil:function(e){for(;s(e=t.ceil(e));)e=Ns(+e+1);return e}}:t))},a.ticks=function(t,e){var r=go(a.domain()),n=null==t?i(r,10):\"number\"==typeof t?i(r,t):!t.range&&[{range:t},e];return n&&(t=n[0],e=n[1]),t.range(r[0],Ns(+r[1]+1),e<1?1:e)},a.tickFormat=function(){return n},a.copy=function(){return Bs(e.copy(),r,n)},wo(a,e)}function Ns(t){return new Date(t)}Os.iso=Date.prototype.toISOString&&+new Date(\"2000-01-01T00:00:00.000Z\")?Fs:Rs,Fs.parse=function(t){var e=new Date(t);return isNaN(e)?null:e},Fs.toString=Rs.toString,Ie.second=Re((function(t){return new ze(1e3*Math.floor(t/1e3))}),(function(t,e){t.setTime(t.getTime()+1e3*Math.floor(e))}),(function(t){return t.getSeconds()})),Ie.seconds=Ie.second.range,Ie.seconds.utc=Ie.second.utc.range,Ie.minute=Re((function(t){return new ze(6e4*Math.floor(t/6e4))}),(function(t,e){t.setTime(t.getTime()+6e4*Math.floor(e))}),(function(t){return t.getMinutes()})),Ie.minutes=Ie.minute.range,Ie.minutes.utc=Ie.minute.utc.range,Ie.hour=Re((function(t){var e=t.getTimezoneOffset()/60;return new ze(36e5*(Math.floor(t/36e5-e)+e))}),(function(t,e){t.setTime(t.getTime()+36e5*Math.floor(e))}),(function(t){return t.getHours()})),Ie.hours=Ie.hour.range,Ie.hours.utc=Ie.hour.utc.range,Ie.month=Re((function(t){return(t=Ie.day(t)).setDate(1),t}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t){return t.getMonth()})),Ie.months=Ie.month.range,Ie.months.utc=Ie.month.utc.range;var js=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Us=[[Ie.second,1],[Ie.second,5],[Ie.second,15],[Ie.second,30],[Ie.minute,1],[Ie.minute,5],[Ie.minute,15],[Ie.minute,30],[Ie.hour,1],[Ie.hour,3],[Ie.hour,6],[Ie.hour,12],[Ie.day,1],[Ie.day,2],[Ie.week,1],[Ie.month,1],[Ie.month,3],[Ie.year,1]],Vs=Os.multi([[\".%L\",function(t){return t.getMilliseconds()}],[\":%S\",function(t){return t.getSeconds()}],[\"%I:%M\",function(t){return t.getMinutes()}],[\"%I %p\",function(t){return t.getHours()}],[\"%a %d\",function(t){return t.getDay()&&1!=t.getDate()}],[\"%b %d\",function(t){return 1!=t.getDate()}],[\"%B\",function(t){return t.getMonth()}],[\"%Y\",Yr]]),qs={range:function(e,r,n){return t.range(Math.ceil(e/n)*n,+r,n).map(Ns)},floor:L,ceil:L};Us.year=Ie.year,Ie.scale=function(){return Bs(t.scale.linear(),Us,Vs)};var Hs=Us.map((function(t){return[t[0].utc,t[1]]})),Gs=Ds.multi([[\".%L\",function(t){return t.getUTCMilliseconds()}],[\":%S\",function(t){return t.getUTCSeconds()}],[\"%I:%M\",function(t){return t.getUTCMinutes()}],[\"%I %p\",function(t){return t.getUTCHours()}],[\"%a %d\",function(t){return t.getUTCDay()&&1!=t.getUTCDate()}],[\"%b %d\",function(t){return 1!=t.getUTCDate()}],[\"%B\",function(t){return t.getUTCMonth()}],[\"%Y\",Yr]]);function Ys(t){return JSON.parse(t.responseText)}function Ws(t){var e=a.createRange();return e.selectNode(a.body),e.createContextualFragment(t.responseText)}Hs.year=Ie.year.utc,Ie.scale.utc=function(){return Bs(t.scale.linear(),Hs,Gs)},t.text=ge((function(t){return t.responseText})),t.json=function(t,e){return me(t,\"application/json\",Ys,e)},t.html=function(t,e){return me(t,\"text/html\",Ws,e)},t.xml=ge((function(t){return t.responseXML})),\"object\"==typeof e&&e.exports?e.exports=t:this.d3=t}()},{}],170:[function(t,e,r){e.exports=function(){for(var t=0;t<arguments.length;t++)if(void 0!==arguments[t])return arguments[t]}},{}],171:[function(t,e,r){\"use strict\";var n=t(\"incremental-convex-hull\"),a=t(\"uniq\");function i(t,e){this.point=t,this.index=e}function o(t,e){for(var r=t.point,n=e.point,a=r.length,i=0;i<a;++i){var o=n[i]-r[i];if(o)return o}return 0}e.exports=function(t,e){var r=t.length;if(0===r)return[];var s=t[0].length;if(s<1)return[];if(1===s)return function(t,e,r){if(1===t)return r?[[-1,0]]:[];var n=e.map((function(t,e){return[t[0],e]}));n.sort((function(t,e){return t[0]-e[0]}));for(var a=new Array(t-1),i=1;i<t;++i){var o=n[i-1],s=n[i];a[i-1]=[o[1],s[1]]}r&&a.push([-1,a[0][1]],[a[t-1][1],-1]);return a}(r,t,e);for(var l=new Array(r),c=1,u=0;u<r;++u){for(var h=t[u],f=new Array(s+1),p=0,d=0;d<s;++d){var g=h[d];f[d]=g,p+=g*g}f[s]=p,l[u]=new i(f,u),c=Math.max(p,c)}a(l,o),r=l.length;var m=new Array(r+s+1),v=new Array(r+s+1),y=(s+1)*(s+1)*c,x=new Array(s+1);for(u=0;u<=s;++u)x[u]=0;x[s]=y,m[0]=x.slice(),v[0]=-1;for(u=0;u<=s;++u){(f=x.slice())[u]=1,m[u+1]=f,v[u+1]=-1}for(u=0;u<r;++u){var b=l[u];m[u+s+1]=b.point,v[u+s+1]=b.index}var _=n(m,!1);_=e?_.filter((function(t){for(var e=0,r=0;r<=s;++r){var n=v[t[r]];if(n<0&&++e>=2)return!1;t[r]=n}return!0})):_.filter((function(t){for(var e=0;e<=s;++e){var r=v[t[e]];if(r<0)return!1;t[e]=r}return!0}));if(1&s)for(u=0;u<_.length;++u){f=(b=_[u])[0];b[0]=b[1],b[1]=f}return _}},{\"incremental-convex-hull\":433,uniq:569}],172:[function(t,e,r){\"use strict\";e.exports=i;var n=(i.canvas=document.createElement(\"canvas\")).getContext(\"2d\"),a=o([32,126]);function i(t,e){Array.isArray(t)&&(t=t.join(\", \"));var r,i={},s=16,l=.05;e&&(2===e.length&&\"number\"==typeof e[0]?r=o(e):Array.isArray(e)?r=e:(e.o?r=o(e.o):e.pairs&&(r=e.pairs),e.fontSize&&(s=e.fontSize),null!=e.threshold&&(l=e.threshold))),r||(r=a),n.font=s+\"px \"+t;for(var c=0;c<r.length;c++){var u=r[c],h=n.measureText(u[0]).width+n.measureText(u[1]).width,f=n.measureText(u).width;if(Math.abs(h-f)>s*l){var p=(f-h)/s;i[u]=1e3*p}}return i}function o(t){for(var e=[],r=t[0];r<=t[1];r++)for(var n=String.fromCharCode(r),a=t[0];a<t[1];a++){var i=n+String.fromCharCode(a);e.push(i)}return e}i.createPairs=o,i.ascii=a},{}],173:[function(t,e,r){(function(t){var r=!1;if(\"undefined\"!=typeof Float64Array){var n=new Float64Array(1),a=new Uint32Array(n.buffer);if(n[0]=1,r=!0,1072693248===a[1]){e.exports=function(t){return n[0]=t,[a[0],a[1]]},e.exports.pack=function(t,e){return a[0]=t,a[1]=e,n[0]},e.exports.lo=function(t){return n[0]=t,a[0]},e.exports.hi=function(t){return n[0]=t,a[1]}}else if(1072693248===a[0]){e.exports=function(t){return n[0]=t,[a[1],a[0]]},e.exports.pack=function(t,e){return a[1]=t,a[0]=e,n[0]},e.exports.lo=function(t){return n[0]=t,a[1]},e.exports.hi=function(t){return n[0]=t,a[0]}}else r=!1}if(!r){var i=new t(8);e.exports=function(t){return i.writeDoubleLE(t,0,!0),[i.readUInt32LE(0,!0),i.readUInt32LE(4,!0)]},e.exports.pack=function(t,e){return i.writeUInt32LE(t,0,!0),i.writeUInt32LE(e,4,!0),i.readDoubleLE(0,!0)},e.exports.lo=function(t){return i.writeDoubleLE(t,0,!0),i.readUInt32LE(0,!0)},e.exports.hi=function(t){return i.writeDoubleLE(t,0,!0),i.readUInt32LE(4,!0)}}e.exports.sign=function(t){return e.exports.hi(t)>>>31},e.exports.exponent=function(t){return(e.exports.hi(t)<<1>>>21)-1023},e.exports.fraction=function(t){var r=e.exports.lo(t),n=e.exports.hi(t),a=1048575&n;return 2146435072&n&&(a+=1<<20),[r,a]},e.exports.denormalized=function(t){return!(2146435072&e.exports.hi(t))}}).call(this,t(\"buffer\").Buffer)},{buffer:111}],174:[function(t,e,r){var n=t(\"abs-svg-path\"),a=t(\"normalize-svg-path\"),i={M:\"moveTo\",C:\"bezierCurveTo\"};e.exports=function(t,e){t.beginPath(),a(n(e)).forEach((function(e){var r=e[0],n=e.slice(1);t[i[r]].apply(t,n)})),t.closePath()}},{\"abs-svg-path\":65,\"normalize-svg-path\":471}],175:[function(t,e,r){e.exports=function(t){switch(t){case\"int8\":return Int8Array;case\"int16\":return Int16Array;case\"int32\":return Int32Array;case\"uint8\":return Uint8Array;case\"uint16\":return Uint16Array;case\"uint32\":return Uint32Array;case\"float32\":return Float32Array;case\"float64\":return Float64Array;case\"array\":return Array;case\"uint8_clamped\":return Uint8ClampedArray}}},{}],176:[function(t,e,r){\"use strict\";e.exports=function(t,e){switch(\"undefined\"==typeof e&&(e=0),typeof t){case\"number\":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n<t;++n)r[n]=e;return r}(0|t,e);break;case\"object\":if(\"number\"==typeof t.length)return function t(e,r,n){var a=0|e[n];if(a<=0)return[];var i,o=new Array(a);if(n===e.length-1)for(i=0;i<a;++i)o[i]=r;else for(i=0;i<a;++i)o[i]=t(e,r,n+1);return o}(t,e,0)}return[]}},{}],177:[function(t,e,r){\"use strict\";function n(t,e,r){r=r||2;var n,s,l,c,u,p,d,m=e&&e.length,v=m?e[0]*r:t.length,y=a(t,0,v,r,!0),x=[];if(!y||y.next===y.prev)return x;if(m&&(y=function(t,e,r,n){var o,s,l,c,u,p=[];for(o=0,s=e.length;o<s;o++)l=e[o]*n,c=o<s-1?e[o+1]*n:t.length,(u=a(t,l,c,n,!1))===u.next&&(u.steiner=!0),p.push(g(u));for(p.sort(h),o=0;o<p.length;o++)f(p[o],r),r=i(r,r.next);return r}(t,e,y,r)),t.length>80*r){n=l=t[0],s=c=t[1];for(var b=r;b<v;b+=r)(u=t[b])<n&&(n=u),(p=t[b+1])<s&&(s=p),u>l&&(l=u),p>c&&(c=p);d=0!==(d=Math.max(l-n,c-s))?1/d:0}return o(y,x,r,n,s,d),x}function a(t,e,r,n,a){var i,o;if(a===E(t,e,r,n)>0)for(i=e;i<r;i+=n)o=M(i,t[i],t[i+1],o);else for(i=r-n;i>=e;i-=n)o=M(i,t[i],t[i+1],o);return o&&x(o,o.next)&&(A(o),o=o.next),o}function i(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!x(n,n.next)&&0!==y(n.prev,n,n.next))n=n.next;else{if(A(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function o(t,e,r,n,a,h,f){if(t){!f&&h&&function(t,e,r,n){var a=t;do{null===a.z&&(a.z=d(a.x,a.y,e,r,n)),a.prevZ=a.prev,a.nextZ=a.next,a=a.next}while(a!==t);a.prevZ.nextZ=null,a.prevZ=null,function(t){var e,r,n,a,i,o,s,l,c=1;do{for(r=t,t=null,i=null,o=0;r;){for(o++,n=r,s=0,e=0;e<c&&(s++,n=n.nextZ);e++);for(l=c;s>0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(a=r,r=r.nextZ,s--):(a=n,n=n.nextZ,l--),i?i.nextZ=a:t=a,a.prevZ=i,i=a;r=n}i.nextZ=null,c*=2}while(o>1)}(a)}(t,n,a,h);for(var p,g,m=t;t.prev!==t.next;)if(p=t.prev,g=t.next,h?l(t,n,a,h):s(t))e.push(p.i/r),e.push(t.i/r),e.push(g.i/r),A(t),t=g.next,m=g.next;else if((t=g)===m){f?1===f?o(t=c(i(t),e,r),e,r,n,a,h,2):2===f&&u(t,e,r,n,a,h):o(i(t),e,r,n,a,h,1);break}}}function s(t){var e=t.prev,r=t,n=t.next;if(y(e,r,n)>=0)return!1;for(var a=t.next.next;a!==t.prev;){if(m(e.x,e.y,r.x,r.y,n.x,n.y,a.x,a.y)&&y(a.prev,a,a.next)>=0)return!1;a=a.next}return!0}function l(t,e,r,n){var a=t.prev,i=t,o=t.next;if(y(a,i,o)>=0)return!1;for(var s=a.x<i.x?a.x<o.x?a.x:o.x:i.x<o.x?i.x:o.x,l=a.y<i.y?a.y<o.y?a.y:o.y:i.y<o.y?i.y:o.y,c=a.x>i.x?a.x>o.x?a.x:o.x:i.x>o.x?i.x:o.x,u=a.y>i.y?a.y>o.y?a.y:o.y:i.y>o.y?i.y:o.y,h=d(s,l,e,r,n),f=d(c,u,e,r,n),p=t.prevZ,g=t.nextZ;p&&p.z>=h&&g&&g.z<=f;){if(p!==t.prev&&p!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,p.x,p.y)&&y(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,g!==t.prev&&g!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,g.x,g.y)&&y(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;p&&p.z>=h;){if(p!==t.prev&&p!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,p.x,p.y)&&y(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;g&&g.z<=f;){if(g!==t.prev&&g!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,g.x,g.y)&&y(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function c(t,e,r){var n=t;do{var a=n.prev,o=n.next.next;!x(a,o)&&b(a,n,n.next,o)&&T(a,o)&&T(o,a)&&(e.push(a.i/r),e.push(n.i/r),e.push(o.i/r),A(n),A(n.next),n=t=o),n=n.next}while(n!==t);return i(n)}function u(t,e,r,n,a,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&v(l,c)){var u=k(l,c);return l=i(l,l.next),u=i(u,u.next),o(l,e,r,n,a,s),void o(u,e,r,n,a,s)}c=c.next}l=l.next}while(l!==t)}function h(t,e){return t.x-e.x}function f(t,e){if(e=function(t,e){var r,n=e,a=t.x,i=t.y,o=-1/0;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=a&&s>o){if(o=s,s===a){if(i===n.y)return n;if(i===n.next.y)return n.next}r=n.x<n.next.x?n:n.next}}n=n.next}while(n!==e);if(!r)return null;if(a===o)return r;var l,c=r,u=r.x,h=r.y,f=1/0;n=r;do{a>=n.x&&n.x>=u&&a!==n.x&&m(i<h?a:o,i,u,h,i<h?o:a,i,n.x,n.y)&&(l=Math.abs(i-n.y)/(a-n.x),T(n,t)&&(l<f||l===f&&(n.x>r.x||n.x===r.x&&p(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=k(e,t);i(e,e.next),i(r,r.next)}}function p(t,e){return y(t.prev,t,e.prev)<0&&y(e.next,t,t.next)<0}function d(t,e,r,n,a){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*a)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*a)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function g(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function m(t,e,r,n,a,i,o,s){return(a-o)*(e-s)-(t-o)*(i-s)>=0&&(t-o)*(n-s)-(r-o)*(e-s)>=0&&(r-o)*(i-s)-(a-o)*(n-s)>=0}function v(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&b(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(T(t,e)&&T(e,t)&&function(t,e){var r=t,n=!1,a=(t.x+e.x)/2,i=(t.y+e.y)/2;do{r.y>i!=r.next.y>i&&r.next.y!==r.y&&a<(r.next.x-r.x)*(i-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(y(t.prev,t,e.prev)||y(t,e.prev,e))||x(t,e)&&y(t.prev,t,t.next)>0&&y(e.prev,e,e.next)>0)}function y(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function x(t,e){return t.x===e.x&&t.y===e.y}function b(t,e,r,n){var a=w(y(t,e,r)),i=w(y(t,e,n)),o=w(y(r,n,t)),s=w(y(r,n,e));return a!==i&&o!==s||(!(0!==a||!_(t,r,e))||(!(0!==i||!_(t,n,e))||(!(0!==o||!_(r,t,n))||!(0!==s||!_(r,e,n)))))}function _(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function w(t){return t>0?1:t<0?-1:0}function T(t,e){return y(t.prev,t,t.next)<0?y(t,e,t.next)>=0&&y(t,t.prev,e)>=0:y(t,e,t.prev)<0||y(t,t.next,e)<0}function k(t,e){var r=new S(t.i,t.x,t.y),n=new S(e.i,e.x,e.y),a=t.next,i=e.prev;return t.next=e,e.prev=t,r.next=a,a.prev=r,n.next=r,r.prev=n,i.next=n,n.prev=i,n}function M(t,e,r,n){var a=new S(t,e,r);return n?(a.next=n.next,a.prev=n,n.next.prev=a,n.next=a):(a.prev=a,a.next=a),a}function A(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function S(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function E(t,e,r,n){for(var a=0,i=e,o=r-n;i<r;i+=n)a+=(t[o]-t[i])*(t[i+1]+t[o+1]),o=i;return a}e.exports=n,e.exports.default=n,n.deviation=function(t,e,r,n){var a=e&&e.length,i=a?e[0]*r:t.length,o=Math.abs(E(t,0,i,r));if(a)for(var s=0,l=e.length;s<l;s++){var c=e[s]*r,u=s<l-1?e[s+1]*r:t.length;o-=Math.abs(E(t,c,u,r))}var h=0;for(s=0;s<n.length;s+=3){var f=n[s]*r,p=n[s+1]*r,d=n[s+2]*r;h+=Math.abs((t[f]-t[d])*(t[p+1]-t[f+1])-(t[f]-t[p])*(t[d+1]-t[f+1]))}return 0===o&&0===h?0:Math.abs((h-o)/o)},n.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},n=0,a=0;a<t.length;a++){for(var i=0;i<t[a].length;i++)for(var o=0;o<e;o++)r.vertices.push(t[a][i][o]);a>0&&(n+=t[a-1].length,r.holes.push(n))}return r}},{}],178:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=t.length;if(\"number\"!=typeof e){e=0;for(var a=0;a<r;++a){var i=t[a];e=Math.max(e,i[0],i[1])}e=1+(0|e)}e|=0;var o=new Array(e);for(a=0;a<e;++a)o[a]=[];for(a=0;a<r;++a){i=t[a];o[i[0]].push(i[1]),o[i[1]].push(i[0])}for(var s=0;s<e;++s)n(o[s],(function(t,e){return t-e}));return o};var n=t(\"uniq\")},{uniq:569}],179:[function(t,e,r){var n=t(\"strongly-connected-components\");e.exports=function(t,e){var r,a=[],i=[],o=[],s={},l=[];function c(t){var e,n,a=!1;for(i.push(t),o[t]=!0,e=0;e<l[t].length;e++)(n=l[t][e])===r?(u(r,i),a=!0):o[n]||(a=c(n));if(a)!function t(e){o[e]=!1,s.hasOwnProperty(e)&&Object.keys(s[e]).forEach((function(r){delete s[e][r],o[r]&&t(r)}))}(t);else for(e=0;e<l[t].length;e++){n=l[t][e];var h=s[n];h||(h={},s[n]=h),h[n]=!0}return i.pop(),a}function u(t,r){var n=[].concat(r).concat(t);e?e(c):a.push(n)}function h(e){!function(e){for(var r=0;r<t.length;r++)r<e&&(t[r]=[]),t[r]=t[r].filter((function(t){return t>=e}))}(e);for(var r,a=n(t).components.filter((function(t){return t.length>1})),i=1/0,o=0;o<a.length;o++)for(var s=0;s<a[o].length;s++)a[o][s]<i&&(i=a[o][s],r=o);var l=a[r];return!!l&&{leastVertex:i,adjList:t.map((function(t,e){return-1===l.indexOf(e)?[]:t.filter((function(t){return-1!==l.indexOf(t)}))}))}}r=0;for(var f=t.length;r<f;){var p=h(r);if(r=p.leastVertex,l=p.adjList){for(var d=0;d<l.length;d++)for(var g=0;g<l[d].length;g++){var m=l[d][g];o[+m]=!1,s[m]={}}c(r),r+=1}else r=f}return e?void 0:a}},{\"strongly-connected-components\":541}],180:[function(t,e,r){\"use strict\";var n=t(\"../../object/valid-value\");e.exports=function(){return n(this).length=0,this}},{\"../../object/valid-value\":211}],181:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?Array.from:t(\"./shim\")},{\"./is-implemented\":182,\"./shim\":183}],182:[function(t,e,r){\"use strict\";e.exports=function(){var t,e,r=Array.from;return\"function\"==typeof r&&(e=r(t=[\"raz\",\"dwa\"]),Boolean(e&&e!==t&&\"dwa\"===e[1]))}},{}],183:[function(t,e,r){\"use strict\";var n=t(\"es6-symbol\").iterator,a=t(\"../../function/is-arguments\"),i=t(\"../../function/is-function\"),o=t(\"../../number/to-pos-integer\"),s=t(\"../../object/valid-callable\"),l=t(\"../../object/valid-value\"),c=t(\"../../object/is-value\"),u=t(\"../../string/is-string\"),h=Array.isArray,f=Function.prototype.call,p={configurable:!0,enumerable:!0,writable:!0,value:null},d=Object.defineProperty;e.exports=function(t){var e,r,g,m,v,y,x,b,_,w,T=arguments[1],k=arguments[2];if(t=Object(l(t)),c(T)&&s(T),this&&this!==Array&&i(this))e=this;else{if(!T){if(a(t))return 1!==(v=t.length)?Array.apply(null,t):((m=new Array(1))[0]=t[0],m);if(h(t)){for(m=new Array(v=t.length),r=0;r<v;++r)m[r]=t[r];return m}}m=[]}if(!h(t))if(void 0!==(_=t[n])){for(x=s(_).call(t),e&&(m=new e),b=x.next(),r=0;!b.done;)w=T?f.call(T,k,b.value,r):b.value,e?(p.value=w,d(m,r,p)):m[r]=w,b=x.next(),++r;v=r}else if(u(t)){for(v=t.length,e&&(m=new e),r=0,g=0;r<v;++r)w=t[r],r+1<v&&(y=w.charCodeAt(0))>=55296&&y<=56319&&(w+=t[++r]),w=T?f.call(T,k,w,g):w,e?(p.value=w,d(m,g,p)):m[g]=w,++g;v=g}if(void 0===v)for(v=o(t.length),e&&(m=new e(v)),r=0;r<v;++r)w=T?f.call(T,k,t[r],r):t[r],e?(p.value=w,d(m,r,p)):m[r]=w;return e&&(p.value=null,m.length=v),m}},{\"../../function/is-arguments\":184,\"../../function/is-function\":185,\"../../number/to-pos-integer\":191,\"../../object/is-value\":200,\"../../object/valid-callable\":209,\"../../object/valid-value\":211,\"../../string/is-string\":215,\"es6-symbol\":225}],184:[function(t,e,r){\"use strict\";var n=Object.prototype.toString,a=n.call(function(){return arguments}());e.exports=function(t){return n.call(t)===a}},{}],185:[function(t,e,r){\"use strict\";var n=Object.prototype.toString,a=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);e.exports=function(t){return\"function\"==typeof t&&a(n.call(t))}},{}],186:[function(t,e,r){\"use strict\";e.exports=function(){}},{}],187:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?Math.sign:t(\"./shim\")},{\"./is-implemented\":188,\"./shim\":189}],188:[function(t,e,r){\"use strict\";e.exports=function(){var t=Math.sign;return\"function\"==typeof t&&(1===t(10)&&-1===t(-20))}},{}],189:[function(t,e,r){\"use strict\";e.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:t>0?1:-1}},{}],190:[function(t,e,r){\"use strict\";var n=t(\"../math/sign\"),a=Math.abs,i=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*i(a(t)):t}},{\"../math/sign\":187}],191:[function(t,e,r){\"use strict\";var n=t(\"./to-integer\"),a=Math.max;e.exports=function(t){return a(0,n(t))}},{\"./to-integer\":190}],192:[function(t,e,r){\"use strict\";var n=t(\"./valid-callable\"),a=t(\"./valid-value\"),i=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;e.exports=function(t,e){return function(r,c){var u,h=arguments[2],f=arguments[3];return r=Object(a(r)),n(c),u=s(r),f&&u.sort(\"function\"==typeof f?i.call(f,r):void 0),\"function\"!=typeof t&&(t=u[t]),o.call(t,u,(function(t,n){return l.call(r,t)?o.call(c,h,r[t],t,r,n):e}))}}},{\"./valid-callable\":209,\"./valid-value\":211}],193:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?Object.assign:t(\"./shim\")},{\"./is-implemented\":194,\"./shim\":195}],194:[function(t,e,r){\"use strict\";e.exports=function(){var t,e=Object.assign;return\"function\"==typeof e&&(e(t={foo:\"raz\"},{bar:\"dwa\"},{trzy:\"trzy\"}),t.foo+t.bar+t.trzy===\"razdwatrzy\")}},{}],195:[function(t,e,r){\"use strict\";var n=t(\"../keys\"),a=t(\"../valid-value\"),i=Math.max;e.exports=function(t,e){var r,o,s,l=i(arguments.length,2);for(t=Object(a(t)),s=function(n){try{t[n]=e[n]}catch(t){r||(r=t)}},o=1;o<l;++o)n(e=arguments[o]).forEach(s);if(void 0!==r)throw r;return t}},{\"../keys\":201,\"../valid-value\":211}],196:[function(t,e,r){\"use strict\";var n=t(\"../array/from\"),a=t(\"./assign\"),i=t(\"./valid-value\");e.exports=function(t){var e=Object(i(t)),r=arguments[1],o=Object(arguments[2]);if(e!==t&&!r)return e;var s={};return r?n(r,(function(e){(o.ensure||e in t)&&(s[e]=t[e])})):a(s,t),s}},{\"../array/from\":181,\"./assign\":193,\"./valid-value\":211}],197:[function(t,e,r){\"use strict\";var n,a,i,o,s=Object.create;t(\"./set-prototype-of/is-implemented\")()||(n=t(\"./set-prototype-of/shim\")),e.exports=n?1!==n.level?s:(a={},i={},o={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach((function(t){i[t]=\"__proto__\"!==t?o:{configurable:!0,enumerable:!1,writable:!0,value:void 0}})),Object.defineProperties(a,i),Object.defineProperty(n,\"nullPolyfill\",{configurable:!1,enumerable:!1,writable:!1,value:a}),function(t,e){return s(null===t?a:t,e)}):s},{\"./set-prototype-of/is-implemented\":207,\"./set-prototype-of/shim\":208}],198:[function(t,e,r){\"use strict\";e.exports=t(\"./_iterate\")(\"forEach\")},{\"./_iterate\":192}],199:[function(t,e,r){\"use strict\";var n=t(\"./is-value\"),a={function:!0,object:!0};e.exports=function(t){return n(t)&&a[typeof t]||!1}},{\"./is-value\":200}],200:[function(t,e,r){\"use strict\";var n=t(\"../function/noop\")();e.exports=function(t){return t!==n&&null!==t}},{\"../function/noop\":186}],201:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?Object.keys:t(\"./shim\")},{\"./is-implemented\":202,\"./shim\":203}],202:[function(t,e,r){\"use strict\";e.exports=function(){try{return Object.keys(\"primitive\"),!0}catch(t){return!1}}},{}],203:[function(t,e,r){\"use strict\";var n=t(\"../is-value\"),a=Object.keys;e.exports=function(t){return a(n(t)?Object(t):t)}},{\"../is-value\":200}],204:[function(t,e,r){\"use strict\";var n=t(\"./valid-callable\"),a=t(\"./for-each\"),i=Function.prototype.call;e.exports=function(t,e){var r={},o=arguments[2];return n(e),a(t,(function(t,n,a,s){r[n]=i.call(e,o,t,n,a,s)})),r}},{\"./for-each\":198,\"./valid-callable\":209}],205:[function(t,e,r){\"use strict\";var n=t(\"./is-value\"),a=Array.prototype.forEach,i=Object.create,o=function(t,e){var r;for(r in t)e[r]=t[r]};e.exports=function(t){var e=i(null);return a.call(arguments,(function(t){n(t)&&o(Object(t),e)})),e}},{\"./is-value\":200}],206:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?Object.setPrototypeOf:t(\"./shim\")},{\"./is-implemented\":207,\"./shim\":208}],207:[function(t,e,r){\"use strict\";var n=Object.create,a=Object.getPrototypeOf,i={};e.exports=function(){var t=Object.setPrototypeOf,e=arguments[0]||n;return\"function\"==typeof t&&a(t(e(null),i))===i}},{}],208:[function(t,e,r){\"use strict\";var n,a=t(\"../is-object\"),i=t(\"../valid-value\"),o=Object.prototype.isPrototypeOf,s=Object.defineProperty,l={configurable:!0,enumerable:!1,writable:!0,value:void 0};n=function(t,e){if(i(t),null===e||a(e))return t;throw new TypeError(\"Prototype must be null or an object\")},e.exports=function(t){var e,r;return t?(2===t.level?t.set?(r=t.set,e=function(t,e){return r.call(n(t,e),e),t}):e=function(t,e){return n(t,e).__proto__=e,t}:e=function t(e,r){var a;return n(e,r),(a=o.call(t.nullPolyfill,e))&&delete t.nullPolyfill.__proto__,null===r&&(r=t.nullPolyfill),e.__proto__=r,a&&s(t.nullPolyfill,\"__proto__\",l),e},Object.defineProperty(e,\"level\",{configurable:!1,enumerable:!1,writable:!1,value:t.level})):null}(function(){var t,e=Object.create(null),r={},n=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\");if(n){try{(t=n.set).call(e,r)}catch(t){}if(Object.getPrototypeOf(e)===r)return{set:t,level:2}}return e.__proto__=r,Object.getPrototypeOf(e)===r?{level:2}:((e={}).__proto__=r,Object.getPrototypeOf(e)===r&&{level:1})}()),t(\"../create\")},{\"../create\":197,\"../is-object\":199,\"../valid-value\":211}],209:[function(t,e,r){\"use strict\";e.exports=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\" is not a function\");return t}},{}],210:[function(t,e,r){\"use strict\";var n=t(\"./is-object\");e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not an Object\");return t}},{\"./is-object\":199}],211:[function(t,e,r){\"use strict\";var n=t(\"./is-value\");e.exports=function(t){if(!n(t))throw new TypeError(\"Cannot use null or undefined\");return t}},{\"./is-value\":200}],212:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?String.prototype.contains:t(\"./shim\")},{\"./is-implemented\":213,\"./shim\":214}],213:[function(t,e,r){\"use strict\";var n=\"razdwatrzy\";e.exports=function(){return\"function\"==typeof n.contains&&(!0===n.contains(\"dwa\")&&!1===n.contains(\"foo\"))}},{}],214:[function(t,e,r){\"use strict\";var n=String.prototype.indexOf;e.exports=function(t){return n.call(this,t,arguments[1])>-1}},{}],215:[function(t,e,r){\"use strict\";var n=Object.prototype.toString,a=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===a)||!1}},{}],216:[function(t,e,r){\"use strict\";var n=Object.create(null),a=Math.random;e.exports=function(){var t;do{t=a().toString(36).slice(2)}while(n[t]);return t}},{}],217:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/object/set-prototype-of\"),i=t(\"es5-ext/string/#/contains\"),o=t(\"d\"),s=t(\"es6-symbol\"),l=t(\"./\"),c=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?i.call(e,\"key+value\")?\"key+value\":i.call(e,\"key\")?\"key\":\"value\":\"value\",c(this,\"__kind__\",o(\"\",e))},a&&a(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:o((function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t}))}),c(n.prototype,s.toStringTag,o(\"c\",\"Array Iterator\"))},{\"./\":220,d:155,\"es5-ext/object/set-prototype-of\":206,\"es5-ext/string/#/contains\":212,\"es6-symbol\":225}],218:[function(t,e,r){\"use strict\";var n=t(\"es5-ext/function/is-arguments\"),a=t(\"es5-ext/object/valid-callable\"),i=t(\"es5-ext/string/is-string\"),o=t(\"./get\"),s=Array.isArray,l=Function.prototype.call,c=Array.prototype.some;e.exports=function(t,e){var r,u,h,f,p,d,g,m,v=arguments[2];if(s(t)||n(t)?r=\"array\":i(t)?r=\"string\":t=o(t),a(e),h=function(){f=!0},\"array\"!==r)if(\"string\"!==r)for(u=t.next();!u.done;){if(l.call(e,v,u.value,h),f)return;u=t.next()}else for(d=t.length,p=0;p<d&&(g=t[p],p+1<d&&(m=g.charCodeAt(0))>=55296&&m<=56319&&(g+=t[++p]),l.call(e,v,g,h),!f);++p);else c.call(t,(function(t){return l.call(e,v,t,h),f}))}},{\"./get\":219,\"es5-ext/function/is-arguments\":184,\"es5-ext/object/valid-callable\":209,\"es5-ext/string/is-string\":215}],219:[function(t,e,r){\"use strict\";var n=t(\"es5-ext/function/is-arguments\"),a=t(\"es5-ext/string/is-string\"),i=t(\"./array\"),o=t(\"./string\"),s=t(\"./valid-iterable\"),l=t(\"es6-symbol\").iterator;e.exports=function(t){return\"function\"==typeof s(t)[l]?t[l]():n(t)?new i(t):a(t)?new o(t):new i(t)}},{\"./array\":217,\"./string\":222,\"./valid-iterable\":223,\"es5-ext/function/is-arguments\":184,\"es5-ext/string/is-string\":215,\"es6-symbol\":225}],220:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/array/#/clear\"),i=t(\"es5-ext/object/assign\"),o=t(\"es5-ext/object/valid-callable\"),s=t(\"es5-ext/object/valid-value\"),l=t(\"d\"),c=t(\"d/auto-bind\"),u=t(\"es6-symbol\"),h=Object.defineProperty,f=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");f(this,{__list__:l(\"w\",s(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(o(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,f(n.prototype,i({_next:l((function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()})),next:l((function(){return this._createResult(this._next())})),_createResult:l((function(t){return void 0===t?{done:!0,value:void 0}:{done:!1,value:this._resolve(t)}})),_resolve:l((function(t){return this.__list__[t]})),_unBind:l((function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off(\"_add\",this._onAdd),this.__context__.off(\"_delete\",this._onDelete),this.__context__.off(\"_clear\",this._onClear),this.__context__=null)})),toString:l((function(){return\"[object \"+(this[u.toStringTag]||\"Object\")+\"]\"}))},c({_onAdd:l((function(t){t>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach((function(e,r){e>=t&&(this.__redo__[r]=++e)}),this),this.__redo__.push(t)):h(this,\"__redo__\",l(\"c\",[t])))})),_onDelete:l((function(t){var e;t>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(e=this.__redo__.indexOf(t))&&this.__redo__.splice(e,1),this.__redo__.forEach((function(e,r){e>t&&(this.__redo__[r]=--e)}),this)))})),_onClear:l((function(){this.__redo__&&a.call(this.__redo__),this.__nextIndex__=0}))}))),h(n.prototype,u.iterator,l((function(){return this})))},{d:155,\"d/auto-bind\":154,\"es5-ext/array/#/clear\":180,\"es5-ext/object/assign\":193,\"es5-ext/object/valid-callable\":209,\"es5-ext/object/valid-value\":211,\"es6-symbol\":225}],221:[function(t,e,r){\"use strict\";var n=t(\"es5-ext/function/is-arguments\"),a=t(\"es5-ext/object/is-value\"),i=t(\"es5-ext/string/is-string\"),o=t(\"es6-symbol\").iterator,s=Array.isArray;e.exports=function(t){return!!a(t)&&(!!s(t)||(!!i(t)||(!!n(t)||\"function\"==typeof t[o])))}},{\"es5-ext/function/is-arguments\":184,\"es5-ext/object/is-value\":200,\"es5-ext/string/is-string\":215,\"es6-symbol\":225}],222:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/object/set-prototype-of\"),i=t(\"d\"),o=t(\"es6-symbol\"),s=t(\"./\"),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),s.call(this,t),l(this,\"__length__\",i(\"\",t.length))},a&&a(n,s),delete n.prototype.constructor,n.prototype=Object.create(s.prototype,{_next:i((function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()})),_resolve:i((function(t){var e,r=this.__list__[t];return this.__nextIndex__===this.__length__?r:(e=r.charCodeAt(0))>=55296&&e<=56319?r+this.__list__[this.__nextIndex__++]:r}))}),l(n.prototype,o.toStringTag,i(\"c\",\"String Iterator\"))},{\"./\":220,d:155,\"es5-ext/object/set-prototype-of\":206,\"es6-symbol\":225}],223:[function(t,e,r){\"use strict\";var n=t(\"./is-iterable\");e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},{\"./is-iterable\":221}],224:[function(t,e,r){(function(n,a){\n",
       "/*!\n",
       " * @overview es6-promise - a tiny implementation of Promises/A+.\n",
       " * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n",
       " * @license   Licensed under MIT license\n",
       " *            See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\n",
       " * @version   v4.2.8+1e68dce6\n",
       " */\n",
       "!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?e.exports=n():t.ES6Promise=n()}(this,(function(){\"use strict\";function e(t){return\"function\"==typeof t}var r=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},i=0,o=void 0,s=void 0,l=function(t,e){g[i]=t,g[i+1]=e,2===(i+=2)&&(s?s(m):_())};var c=\"undefined\"!=typeof window?window:void 0,u=c||{},h=u.MutationObserver||u.WebKitMutationObserver,f=\"undefined\"==typeof self&&\"undefined\"!=typeof n&&\"[object process]\"==={}.toString.call(n),p=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function d(){var t=setTimeout;return function(){return t(m,1)}}var g=new Array(1e3);function m(){for(var t=0;t<i;t+=2){(0,g[t])(g[t+1]),g[t]=void 0,g[t+1]=void 0}i=0}var v,y,x,b,_=void 0;function w(t,e){var r=this,n=new this.constructor(M);void 0===n[k]&&D(n);var a=r._state;if(a){var i=arguments[a-1];l((function(){return z(a,n,i,r._result)}))}else P(r,n,t,e);return n}function T(t){if(t&&\"object\"==typeof t&&t.constructor===this)return t;var e=new this(M);return S(e,t),e}f?_=function(){return n.nextTick(m)}:h?(y=0,x=new h(m),b=document.createTextNode(\"\"),x.observe(b,{characterData:!0}),_=function(){b.data=y=++y%2}):p?((v=new MessageChannel).port1.onmessage=m,_=function(){return v.port2.postMessage(0)}):_=void 0===c&&\"function\"==typeof t?function(){try{var t=Function(\"return this\")().require(\"vertx\");return\"undefined\"!=typeof(o=t.runOnLoop||t.runOnContext)?function(){o(m)}:d()}catch(t){return d()}}():d();var k=Math.random().toString(36).substring(2);function M(){}function A(t,r,n){r.constructor===t.constructor&&n===w&&r.constructor.resolve===T?function(t,e){1===e._state?C(t,e._result):2===e._state?L(t,e._result):P(e,void 0,(function(e){return S(t,e)}),(function(e){return L(t,e)}))}(t,r):void 0===n?C(t,r):e(n)?function(t,e,r){l((function(t){var n=!1,a=function(t,e,r,n){try{t.call(e,r,n)}catch(t){return t}}(r,e,(function(r){n||(n=!0,e!==r?S(t,r):C(t,r))}),(function(e){n||(n=!0,L(t,e))}),t._label);!n&&a&&(n=!0,L(t,a))}),t)}(t,r,n):C(t,r)}function S(t,e){if(t===e)L(t,new TypeError(\"You cannot resolve a promise with itself\"));else if(a=typeof(n=e),null===n||\"object\"!==a&&\"function\"!==a)C(t,e);else{var r=void 0;try{r=e.then}catch(e){return void L(t,e)}A(t,e,r)}var n,a}function E(t){t._onerror&&t._onerror(t._result),I(t)}function C(t,e){void 0===t._state&&(t._result=e,t._state=1,0!==t._subscribers.length&&l(I,t))}function L(t,e){void 0===t._state&&(t._state=2,t._result=e,l(E,t))}function P(t,e,r,n){var a=t._subscribers,i=a.length;t._onerror=null,a[i]=e,a[i+1]=r,a[i+2]=n,0===i&&t._state&&l(I,t)}function I(t){var e=t._subscribers,r=t._state;if(0!==e.length){for(var n=void 0,a=void 0,i=t._result,o=0;o<e.length;o+=3)n=e[o],a=e[o+r],n?z(r,n,a,i):a(i);t._subscribers.length=0}}function z(t,r,n,a){var i=e(n),o=void 0,s=void 0,l=!0;if(i){try{o=n(a)}catch(t){l=!1,s=t}if(r===o)return void L(r,new TypeError(\"A promises callback cannot return that same promise.\"))}else o=a;void 0!==r._state||(i&&l?S(r,o):!1===l?L(r,s):1===t?C(r,o):2===t&&L(r,o))}var O=0;function D(t){t[k]=O++,t._state=void 0,t._result=void 0,t._subscribers=[]}var R=function(){function t(t,e){this._instanceConstructor=t,this.promise=new t(M),this.promise[k]||D(this.promise),r(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?C(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&C(this.promise,this._result))):L(this.promise,new Error(\"Array Methods must be provided an Array\"))}return t.prototype._enumerate=function(t){for(var e=0;void 0===this._state&&e<t.length;e++)this._eachEntry(t[e],e)},t.prototype._eachEntry=function(t,e){var r=this._instanceConstructor,n=r.resolve;if(n===T){var a=void 0,i=void 0,o=!1;try{a=t.then}catch(t){o=!0,i=t}if(a===w&&void 0!==t._state)this._settledAt(t._state,e,t._result);else if(\"function\"!=typeof a)this._remaining--,this._result[e]=t;else if(r===F){var s=new r(M);o?L(s,i):A(s,t,a),this._willSettleAt(s,e)}else this._willSettleAt(new r((function(e){return e(t)})),e)}else this._willSettleAt(n(t),e)},t.prototype._settledAt=function(t,e,r){var n=this.promise;void 0===n._state&&(this._remaining--,2===t?L(n,r):this._result[e]=r),0===this._remaining&&C(n,this._result)},t.prototype._willSettleAt=function(t,e){var r=this;P(t,void 0,(function(t){return r._settledAt(1,e,t)}),(function(t){return r._settledAt(2,e,t)}))},t}();var F=function(){function t(e){this[k]=O++,this._result=this._state=void 0,this._subscribers=[],M!==e&&(\"function\"!=typeof e&&function(){throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\")}(),this instanceof t?function(t,e){try{e((function(e){S(t,e)}),(function(e){L(t,e)}))}catch(e){L(t,e)}}(this,e):function(){throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\")}())}return t.prototype.catch=function(t){return this.then(null,t)},t.prototype.finally=function(t){var r=this.constructor;return e(t)?this.then((function(e){return r.resolve(t()).then((function(){return e}))}),(function(e){return r.resolve(t()).then((function(){throw e}))})):this.then(t,t)},t}();return F.prototype.then=w,F.all=function(t){return new R(this,t).promise},F.race=function(t){var e=this;return r(t)?new e((function(r,n){for(var a=t.length,i=0;i<a;i++)e.resolve(t[i]).then(r,n)})):new e((function(t,e){return e(new TypeError(\"You must pass an array to race.\"))}))},F.resolve=T,F.reject=function(t){var e=new this(M);return L(e,t),e},F._setScheduler=function(t){s=t},F._setAsap=function(t){l=t},F._asap=l,F.polyfill=function(){var t=void 0;if(\"undefined\"!=typeof a)t=a;else if(\"undefined\"!=typeof self)t=self;else try{t=Function(\"return this\")()}catch(t){throw new Error(\"polyfill failed because global object is unavailable in this environment\")}var e=t.Promise;if(e){var r=null;try{r=Object.prototype.toString.call(e.resolve())}catch(t){}if(\"[object Promise]\"===r&&!e.cast)return}t.Promise=F},F.Promise=F,F}))}).call(this,t(\"_process\"),\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{_process:500}],225:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?t(\"ext/global-this\").Symbol:t(\"./polyfill\")},{\"./is-implemented\":226,\"./polyfill\":231,\"ext/global-this\":238}],226:[function(t,e,r){\"use strict\";var n=t(\"ext/global-this\"),a={object:!0,symbol:!0};e.exports=function(){var t,e=n.Symbol;if(\"function\"!=typeof e)return!1;t=e(\"test symbol\");try{String(t)}catch(t){return!1}return!!a[typeof e.iterator]&&(!!a[typeof e.toPrimitive]&&!!a[typeof e.toStringTag])}},{\"ext/global-this\":238}],227:[function(t,e,r){\"use strict\";e.exports=function(t){return!!t&&(\"symbol\"==typeof t||!!t.constructor&&(\"Symbol\"===t.constructor.name&&\"Symbol\"===t[t.constructor.toStringTag]))}},{}],228:[function(t,e,r){\"use strict\";var n=t(\"d\"),a=Object.create,i=Object.defineProperty,o=Object.prototype,s=a(null);e.exports=function(t){for(var e,r,a=0;s[t+(a||\"\")];)++a;return s[t+=a||\"\"]=!0,i(o,e=\"@@\"+t,n.gs(null,(function(t){r||(r=!0,i(this,e,n(t)),r=!1)}))),e}},{d:155}],229:[function(t,e,r){\"use strict\";var n=t(\"d\"),a=t(\"ext/global-this\").Symbol;e.exports=function(t){return Object.defineProperties(t,{hasInstance:n(\"\",a&&a.hasInstance||t(\"hasInstance\")),isConcatSpreadable:n(\"\",a&&a.isConcatSpreadable||t(\"isConcatSpreadable\")),iterator:n(\"\",a&&a.iterator||t(\"iterator\")),match:n(\"\",a&&a.match||t(\"match\")),replace:n(\"\",a&&a.replace||t(\"replace\")),search:n(\"\",a&&a.search||t(\"search\")),species:n(\"\",a&&a.species||t(\"species\")),split:n(\"\",a&&a.split||t(\"split\")),toPrimitive:n(\"\",a&&a.toPrimitive||t(\"toPrimitive\")),toStringTag:n(\"\",a&&a.toStringTag||t(\"toStringTag\")),unscopables:n(\"\",a&&a.unscopables||t(\"unscopables\"))})}},{d:155,\"ext/global-this\":238}],230:[function(t,e,r){\"use strict\";var n=t(\"d\"),a=t(\"../../../validate-symbol\"),i=Object.create(null);e.exports=function(t){return Object.defineProperties(t,{for:n((function(e){return i[e]?i[e]:i[e]=t(String(e))})),keyFor:n((function(t){var e;for(e in a(t),i)if(i[e]===t)return e}))})}},{\"../../../validate-symbol\":232,d:155}],231:[function(t,e,r){\"use strict\";var n,a,i,o=t(\"d\"),s=t(\"./validate-symbol\"),l=t(\"ext/global-this\").Symbol,c=t(\"./lib/private/generate-name\"),u=t(\"./lib/private/setup/standard-symbols\"),h=t(\"./lib/private/setup/symbol-registry\"),f=Object.create,p=Object.defineProperties,d=Object.defineProperty;if(\"function\"==typeof l)try{String(l()),i=!0}catch(t){}else l=null;a=function(t){if(this instanceof a)throw new TypeError(\"Symbol is not a constructor\");return n(t)},e.exports=n=function t(e){var r;if(this instanceof t)throw new TypeError(\"Symbol is not a constructor\");return i?l(e):(r=f(a.prototype),e=void 0===e?\"\":String(e),p(r,{__description__:o(\"\",e),__name__:o(\"\",c(e))}))},u(n),h(n),p(a.prototype,{constructor:o(n),toString:o(\"\",(function(){return this.__name__}))}),p(n.prototype,{toString:o((function(){return\"Symbol (\"+s(this).__description__+\")\"})),valueOf:o((function(){return s(this)}))}),d(n.prototype,n.toPrimitive,o(\"\",(function(){var t=s(this);return\"symbol\"==typeof t?t:t.toString()}))),d(n.prototype,n.toStringTag,o(\"c\",\"Symbol\")),d(a.prototype,n.toStringTag,o(\"c\",n.prototype[n.toStringTag])),d(a.prototype,n.toPrimitive,o(\"c\",n.prototype[n.toPrimitive]))},{\"./lib/private/generate-name\":228,\"./lib/private/setup/standard-symbols\":229,\"./lib/private/setup/symbol-registry\":230,\"./validate-symbol\":232,d:155,\"ext/global-this\":238}],232:[function(t,e,r){\"use strict\";var n=t(\"./is-symbol\");e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not a symbol\");return t}},{\"./is-symbol\":227}],233:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?WeakMap:t(\"./polyfill\")},{\"./is-implemented\":234,\"./polyfill\":236}],234:[function(t,e,r){\"use strict\";e.exports=function(){var t,e;if(\"function\"!=typeof WeakMap)return!1;try{t=new WeakMap([[e={},\"one\"],[{},\"two\"],[{},\"three\"]])}catch(t){return!1}return\"[object WeakMap]\"===String(t)&&(\"function\"==typeof t.set&&(t.set({},1)===t&&(\"function\"==typeof t.delete&&(\"function\"==typeof t.has&&\"one\"===t.get(e)))))}},{}],235:[function(t,e,r){\"use strict\";e.exports=\"function\"==typeof WeakMap&&\"[object WeakMap]\"===Object.prototype.toString.call(new WeakMap)},{}],236:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/object/is-value\"),i=t(\"es5-ext/object/set-prototype-of\"),o=t(\"es5-ext/object/valid-object\"),s=t(\"es5-ext/object/valid-value\"),l=t(\"es5-ext/string/random-uniq\"),c=t(\"d\"),u=t(\"es6-iterator/get\"),h=t(\"es6-iterator/for-of\"),f=t(\"es6-symbol\").toStringTag,p=t(\"./is-native-implemented\"),d=Array.isArray,g=Object.defineProperty,m=Object.prototype.hasOwnProperty,v=Object.getPrototypeOf;e.exports=n=function(){var t,e=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return t=p&&i&&WeakMap!==n?i(new WeakMap,v(this)):this,a(e)&&(d(e)||(e=u(e))),g(t,\"__weakMapData__\",c(\"c\",\"$weakMap$\"+l())),e?(h(e,(function(e){s(e),t.set(e[0],e[1])})),t):t},p&&(i&&i(n,WeakMap),n.prototype=Object.create(WeakMap.prototype,{constructor:c(n)})),Object.defineProperties(n.prototype,{delete:c((function(t){return!!m.call(o(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)})),get:c((function(t){if(m.call(o(t),this.__weakMapData__))return t[this.__weakMapData__]})),has:c((function(t){return m.call(o(t),this.__weakMapData__)})),set:c((function(t,e){return g(o(t),this.__weakMapData__,c(\"c\",e)),this})),toString:c((function(){return\"[object WeakMap]\"}))}),g(n.prototype,f,c(\"c\",\"WeakMap\"))},{\"./is-native-implemented\":235,d:155,\"es5-ext/object/is-value\":200,\"es5-ext/object/set-prototype-of\":206,\"es5-ext/object/valid-object\":210,\"es5-ext/object/valid-value\":211,\"es5-ext/string/random-uniq\":216,\"es6-iterator/for-of\":218,\"es6-iterator/get\":219,\"es6-symbol\":225}],237:[function(t,e,r){var n=function(){if(\"object\"==typeof self&&self)return self;if(\"object\"==typeof window&&window)return window;throw new Error(\"Unable to resolve global `this`\")};e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,\"__global__\",{get:function(){return this},configurable:!0})}catch(t){return n()}try{return __global__||n()}finally{delete Object.prototype.__global__}}()},{}],238:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?globalThis:t(\"./implementation\")},{\"./implementation\":237,\"./is-implemented\":239}],239:[function(t,e,r){\"use strict\";e.exports=function(){return\"object\"==typeof globalThis&&(!!globalThis&&globalThis.Array===Array)}},{}],240:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var n=e||0,a=r||1;return[[t[12]+t[0],t[13]+t[1],t[14]+t[2],t[15]+t[3]],[t[12]-t[0],t[13]-t[1],t[14]-t[2],t[15]-t[3]],[t[12]+t[4],t[13]+t[5],t[14]+t[6],t[15]+t[7]],[t[12]-t[4],t[13]-t[5],t[14]-t[6],t[15]-t[7]],[n*t[12]+t[8],n*t[13]+t[9],n*t[14]+t[10],n*t[15]+t[11]],[a*t[12]-t[8],a*t[13]-t[9],a*t[14]-t[10],a*t[15]-t[11]]]}},{}],241:[function(t,e,r){\"use strict\";var n=t(\"is-string-blank\");e.exports=function(t){var e=typeof t;if(\"string\"===e){var r=t;if(0===(t=+t)&&n(r))return!1}else if(\"number\"!==e)return!1;return t-t<1}},{\"is-string-blank\":444}],242:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){switch(arguments.length){case 0:return new o([0],[0],0);case 1:return\"number\"==typeof t?new o(n=l(t),n,0):new o(t,l(t.length),0);case 2:if(\"number\"==typeof e){var n=l(t.length);return new o(t,n,+e)}r=0;case 3:if(t.length!==e.length)throw new Error(\"state and velocity lengths must match\");return new o(t,e,r)}};var n=t(\"cubic-hermite\"),a=t(\"binary-search-bounds\");function i(t,e,r){return Math.min(e,Math.max(t,r))}function o(t,e,r){this.dimension=t.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var n=0;n<this.dimension;++n)this.bounds[0][n]=-1/0,this.bounds[1][n]=1/0;this._state=t.slice().reverse(),this._velocity=e.slice().reverse(),this._time=[r],this._scratch=[t.slice(),t.slice(),t.slice(),t.slice(),t.slice()]}var s=o.prototype;function l(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=0;return e}s.flush=function(t){var e=a.gt(this._time,t)-1;e<=0||(this._time.splice(0,e),this._state.splice(0,e*this.dimension),this._velocity.splice(0,e*this.dimension))},s.curve=function(t){var e=this._time,r=e.length,o=a.le(e,t),s=this._scratch[0],l=this._state,c=this._velocity,u=this.dimension,h=this.bounds;if(o<0)for(var f=u-1,p=0;p<u;++p,--f)s[p]=l[f];else if(o>=r-1){f=l.length-1;var d=t-e[r-1];for(p=0;p<u;++p,--f)s[p]=l[f]+d*c[f]}else{f=u*(o+1)-1;var g=e[o],m=e[o+1]-g||1,v=this._scratch[1],y=this._scratch[2],x=this._scratch[3],b=this._scratch[4],_=!0;for(p=0;p<u;++p,--f)v[p]=l[f],x[p]=c[f]*m,y[p]=l[f+u],b[p]=c[f+u]*m,_=_&&v[p]===y[p]&&x[p]===b[p]&&0===x[p];if(_)for(p=0;p<u;++p)s[p]=v[p];else n(v,x,y,b,(t-g)/m,s)}var w=h[0],T=h[1];for(p=0;p<u;++p)s[p]=i(w[p],T[p],s[p]);return s},s.dcurve=function(t){var e=this._time,r=e.length,i=a.le(e,t),o=this._scratch[0],s=this._state,l=this._velocity,c=this.dimension;if(i>=r-1)for(var u=s.length-1,h=(e[r-1],0);h<c;++h,--u)o[h]=l[u];else{u=c*(i+1)-1;var f=e[i],p=e[i+1]-f||1,d=this._scratch[1],g=this._scratch[2],m=this._scratch[3],v=this._scratch[4],y=!0;for(h=0;h<c;++h,--u)d[h]=s[u],m[h]=l[u]*p,g[h]=s[u+c],v[h]=l[u+c]*p,y=y&&d[h]===g[h]&&m[h]===v[h]&&0===m[h];if(y)for(h=0;h<c;++h)o[h]=0;else{n.derivative(d,m,g,v,(t-f)/p,o);for(h=0;h<c;++h)o[h]/=p}}return o},s.lastT=function(){var t=this._time;return t[t.length-1]},s.stable=function(){for(var t=this._velocity,e=t.length,r=this.dimension-1;r>=0;--r)if(t[--e])return!1;return!0},s.jump=function(t){var e=this.lastT(),r=this.dimension;if(!(t<e||arguments.length!==r+1)){var n=this._state,a=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],c=s[1];this._time.push(e,t);for(var u=0;u<2;++u)for(var h=0;h<r;++h)n.push(n[o++]),a.push(0);this._time.push(t);for(h=r;h>0;--h)n.push(i(l[h-1],c[h-1],arguments[h])),a.push(0)}},s.push=function(t){var e=this.lastT(),r=this.dimension;if(!(t<e||arguments.length!==r+1)){var n=this._state,a=this._velocity,o=n.length-this.dimension,s=t-e,l=this.bounds,c=l[0],u=l[1],h=s>1e-6?1/s:0;this._time.push(t);for(var f=r;f>0;--f){var p=i(c[f-1],u[f-1],arguments[f]);n.push(p),a.push((p-n[o++])*h)}}},s.set=function(t){var e=this.dimension;if(!(t<this.lastT()||arguments.length!==e+1)){var r=this._state,n=this._velocity,a=this.bounds,o=a[0],s=a[1];this._time.push(t);for(var l=e;l>0;--l)r.push(i(o[l-1],s[l-1],arguments[l])),n.push(0)}},s.move=function(t){var e=this.lastT(),r=this.dimension;if(!(t<=e||arguments.length!==r+1)){var n=this._state,a=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],c=s[1],u=t-e,h=u>1e-6?1/u:0;this._time.push(t);for(var f=r;f>0;--f){var p=arguments[f];n.push(i(l[f-1],c[f-1],n[o++]+p)),a.push(p*h)}}},s.idle=function(t){var e=this.lastT();if(!(t<e)){var r=this.dimension,n=this._state,a=this._velocity,o=n.length-r,s=this.bounds,l=s[0],c=s[1],u=t-e;this._time.push(t);for(var h=r-1;h>=0;--h)n.push(i(l[h],c[h],n[o]+u*a[o])),a.push(0),o+=1}}},{\"binary-search-bounds\":243,\"cubic-hermite\":150}],243:[function(t,e,r){\"use strict\";function n(t,e,r,n,a,i){var o=[\"function \",t,\"(a,l,h,\",n.join(\",\"),\"){\",i?\"\":\"var i=\",r?\"l-1\":\"h+1\",\";while(l<=h){var m=(l+h)>>>1,x=a\",a?\".get(m)\":\"[m]\"];return i?e.indexOf(\"c\")<0?o.push(\";if(x===y){return m}else if(x<=y){\"):o.push(\";var p=c(x,y);if(p===0){return m}else if(p<=0){\"):o.push(\";if(\",e,\"){i=m;\"),r?o.push(\"l=m+1}else{h=m-1}\"):o.push(\"h=m-1}else{l=m+1}\"),o.push(\"}\"),i?o.push(\"return -1};\"):o.push(\"return i};\"),o.join(\"\")}function a(t,e,r,a){return new Function([n(\"A\",\"x\"+t+\"y\",e,[\"y\"],!1,a),n(\"B\",\"x\"+t+\"y\",e,[\"y\"],!0,a),n(\"P\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],!1,a),n(\"Q\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],!0,a),\"function dispatchBsearch\",r,\"(a,y,c,l,h){if(a.shape){if(typeof(c)==='function'){return Q(a,(l===undefined)?0:l|0,(h===undefined)?a.shape[0]-1:h|0,y,c)}else{return B(a,(c===undefined)?0:c|0,(l===undefined)?a.shape[0]-1:l|0,y)}}else{if(typeof(c)==='function'){return P(a,(l===undefined)?0:l|0,(h===undefined)?a.length-1:h|0,y,c)}else{return A(a,(c===undefined)?0:c|0,(l===undefined)?a.length-1:l|0,y)}}}return dispatchBsearch\",r].join(\"\"))()}e.exports={ge:a(\">=\",!1,\"GE\"),gt:a(\">\",!1,\"GT\"),lt:a(\"<\",!0,\"LT\"),le:a(\"<=\",!0,\"LE\"),eq:a(\"-\",!0,\"EQ\",!0)}},{}],244:[function(t,e,r){var n=t(\"dtype\");e.exports=function(t,e,r){if(!t)throw new TypeError(\"must specify data as first parameter\");if(r=0|+(r||0),Array.isArray(t)&&t[0]&&\"number\"==typeof t[0][0]){var a,i,o,s,l=t[0].length,c=t.length*l;e&&\"string\"!=typeof e||(e=new(n(e||\"float32\"))(c+r));var u=e.length-r;if(c!==u)throw new Error(\"source length \"+c+\" (\"+l+\"x\"+t.length+\") does not match destination length \"+u);for(a=0,o=r;a<t.length;a++)for(i=0;i<l;i++)e[o++]=null===t[a][i]?NaN:t[a][i]}else if(e&&\"string\"!=typeof e)e.set(t,r);else{var h=n(e||\"float32\");if(Array.isArray(t)||\"array\"===e)for(e=new h(t.length+r),a=0,o=r,s=e.length;o<s;o++,a++)e[o]=null===t[a]?NaN:t[a];else 0===r?e=new h(t):(e=new h(t.length+r)).set(t,r)}return e}},{dtype:175}],245:[function(t,e,r){\"use strict\";var n=t(\"css-font/stringify\"),a=[32,126];e.exports=function(t){var e=(t=t||{}).shape?t.shape:t.canvas?[t.canvas.width,t.canvas.height]:[512,512],r=t.canvas||document.createElement(\"canvas\"),i=t.font,o=\"number\"==typeof t.step?[t.step,t.step]:t.step||[32,32],s=t.chars||a;i&&\"string\"!=typeof i&&(i=n(i));if(Array.isArray(s)){if(2===s.length&&\"number\"==typeof s[0]&&\"number\"==typeof s[1]){for(var l=[],c=s[0],u=0;c<=s[1];c++)l[u++]=String.fromCharCode(c);s=l}}else s=String(s).split(\"\");e=e.slice(),r.width=e[0],r.height=e[1];var h=r.getContext(\"2d\");h.fillStyle=\"#000\",h.fillRect(0,0,r.width,r.height),h.font=i,h.textAlign=\"center\",h.textBaseline=\"middle\",h.fillStyle=\"#fff\";var f=o[0]/2,p=o[1]/2;for(c=0;c<s.length;c++)h.fillText(s[c],f,p),(f+=o[0])>e[0]-o[0]/2&&(f=o[0]/2,p+=o[1]);return r}},{\"css-font/stringify\":147}],246:[function(t,e,r){\"use strict\";function n(t,e){e||(e={}),(\"string\"==typeof t||Array.isArray(t))&&(e.family=t);var r=Array.isArray(e.family)?e.family.join(\", \"):e.family;if(!r)throw Error(\"`family` must be defined\");var s=e.size||e.fontSize||e.em||48,l=e.weight||e.fontWeight||\"\",c=(t=[e.style||e.fontStyle||\"\",l,s].join(\" \")+\"px \"+r,e.origin||\"top\");if(n.cache[r]&&s<=n.cache[r].em)return a(n.cache[r],c);var u=e.canvas||n.canvas,h=u.getContext(\"2d\"),f={upper:void 0!==e.upper?e.upper:\"H\",lower:void 0!==e.lower?e.lower:\"x\",descent:void 0!==e.descent?e.descent:\"p\",ascent:void 0!==e.ascent?e.ascent:\"h\",tittle:void 0!==e.tittle?e.tittle:\"i\",overshoot:void 0!==e.overshoot?e.overshoot:\"O\"},p=Math.ceil(1.5*s);u.height=p,u.width=.5*p,h.font=t;var d={top:0};h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillStyle=\"black\",h.fillText(\"H\",0,0);var g=i(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline=\"bottom\",h.fillText(\"H\",0,p);var m=i(h.getImageData(0,0,p,p));d.lineHeight=d.bottom=p-m+g,h.clearRect(0,0,p,p),h.textBaseline=\"alphabetic\",h.fillText(\"H\",0,p);var v=p-i(h.getImageData(0,0,p,p))-1+g;d.baseline=d.alphabetic=v,h.clearRect(0,0,p,p),h.textBaseline=\"middle\",h.fillText(\"H\",0,.5*p);var y=i(h.getImageData(0,0,p,p));d.median=d.middle=p-y-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=\"hanging\",h.fillText(\"H\",0,.5*p);var x=i(h.getImageData(0,0,p,p));d.hanging=p-x-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=\"ideographic\",h.fillText(\"H\",0,p);var b=i(h.getImageData(0,0,p,p));if(d.ideographic=p-b-1+g,f.upper&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.upper,0,0),d.upper=i(h.getImageData(0,0,p,p)),d.capHeight=d.baseline-d.upper),f.lower&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.lower,0,0),d.lower=i(h.getImageData(0,0,p,p)),d.xHeight=d.baseline-d.lower),f.tittle&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.tittle,0,0),d.tittle=i(h.getImageData(0,0,p,p))),f.ascent&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.ascent,0,0),d.ascent=i(h.getImageData(0,0,p,p))),f.descent&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.descent,0,0),d.descent=o(h.getImageData(0,0,p,p))),f.overshoot){h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.overshoot,0,0);var _=o(h.getImageData(0,0,p,p));d.overshoot=_-v}for(var w in d)d[w]/=s;return d.em=s,n.cache[r]=d,a(d,c)}function a(t,e){var r={};for(var n in\"string\"==typeof e&&(e=t[e]),t)\"em\"!==n&&(r[n]=t[n]-e);return r}function i(t){for(var e=t.height,r=t.data,n=3;n<r.length;n+=4)if(0!==r[n])return Math.floor(.25*(n-3)/e)}function o(t){for(var e=t.height,r=t.data,n=r.length-1;n>0;n-=4)if(0!==r[n])return Math.floor(.25*(n-3)/e)}e.exports=n,n.canvas=document.createElement(\"canvas\"),n.cache={}},{}],247:[function(t,e,r){\"use strict\";e.exports=function(t){return new s(t||g,null)};function n(t,e,r,n,a,i){this._color=t,this.key=e,this.value=r,this.left=n,this.right=a,this._count=i}function a(t){return new n(t._color,t.key,t.value,t.left,t.right,t._count)}function i(t,e){return new n(t,e.key,e.value,e.left,e.right,e._count)}function o(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function s(t,e){this._compare=t,this.root=e}var l=s.prototype;function c(t,e){var r;if(e.left&&(r=c(t,e.left)))return r;return(r=t(e.key,e.value))||(e.right?c(t,e.right):void 0)}function u(t,e,r,n){if(e(t,n.key)<=0){var a;if(n.left)if(a=u(t,e,r,n.left))return a;if(a=r(n.key,n.value))return a}if(n.right)return u(t,e,r,n.right)}function h(t,e,r,n,a){var i,o=r(t,a.key),s=r(e,a.key);if(o<=0){if(a.left&&(i=h(t,e,r,n,a.left)))return i;if(s>0&&(i=n(a.key,a.value)))return i}if(s>0&&a.right)return h(t,e,r,n,a.right)}function f(t,e){this.tree=t,this._stack=e}Object.defineProperty(l,\"keys\",{get:function(){var t=[];return this.forEach((function(e,r){t.push(e)})),t}}),Object.defineProperty(l,\"values\",{get:function(){var t=[];return this.forEach((function(e,r){t.push(r)})),t}}),Object.defineProperty(l,\"length\",{get:function(){return this.root?this.root._count:0}}),l.insert=function(t,e){for(var r=this._compare,a=this.root,l=[],c=[];a;){var u=r(t,a.key);l.push(a),c.push(u),a=u<=0?a.left:a.right}l.push(new n(0,t,e,null,null,1));for(var h=l.length-2;h>=0;--h){a=l[h];c[h]<=0?l[h]=new n(a._color,a.key,a.value,l[h+1],a.right,a._count+1):l[h]=new n(a._color,a.key,a.value,a.left,l[h+1],a._count+1)}for(h=l.length-1;h>1;--h){var f=l[h-1];a=l[h];if(1===f._color||1===a._color)break;var p=l[h-2];if(p.left===f)if(f.left===a){if(!(d=p.right)||0!==d._color){if(p._color=0,p.left=f.right,f._color=1,f.right=p,l[h-2]=f,l[h-1]=a,o(p),o(f),h>=3)(g=l[h-3]).left===p?g.left=f:g.right=f;break}f._color=1,p.right=i(1,d),p._color=0,h-=1}else{if(!(d=p.right)||0!==d._color){if(f.right=a.left,p._color=0,p.left=a.right,a._color=1,a.left=f,a.right=p,l[h-2]=a,l[h-1]=f,o(p),o(f),o(a),h>=3)(g=l[h-3]).left===p?g.left=a:g.right=a;break}f._color=1,p.right=i(1,d),p._color=0,h-=1}else if(f.right===a){if(!(d=p.left)||0!==d._color){if(p._color=0,p.right=f.left,f._color=1,f.left=p,l[h-2]=f,l[h-1]=a,o(p),o(f),h>=3)(g=l[h-3]).right===p?g.right=f:g.left=f;break}f._color=1,p.left=i(1,d),p._color=0,h-=1}else{var d;if(!(d=p.left)||0!==d._color){var g;if(f.left=a.right,p._color=0,p.right=a.left,a._color=1,a.right=f,a.left=p,l[h-2]=a,l[h-1]=f,o(p),o(f),o(a),h>=3)(g=l[h-3]).right===p?g.right=a:g.left=a;break}f._color=1,p.left=i(1,d),p._color=0,h-=1}}return l[0]._color=1,new s(r,l[0])},l.forEach=function(t,e,r){if(this.root)switch(arguments.length){case 1:return c(t,this.root);case 2:return u(e,this._compare,t,this.root);case 3:if(this._compare(e,r)>=0)return;return h(e,r,this._compare,t,this.root)}},Object.defineProperty(l,\"begin\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new f(this,t)}}),Object.defineProperty(l,\"end\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new f(this,t)}}),l.at=function(t){if(t<0)return new f(this,[]);for(var e=this.root,r=[];;){if(r.push(e),e.left){if(t<e.left._count){e=e.left;continue}t-=e.left._count}if(!t)return new f(this,r);if(t-=1,!e.right)break;if(t>=e.right._count)break;e=e.right}return new f(this,[])},l.ge=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i<=0&&(a=n.length),r=i<=0?r.left:r.right}return n.length=a,new f(this,n)},l.gt=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i<0&&(a=n.length),r=i<0?r.left:r.right}return n.length=a,new f(this,n)},l.lt=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i>0&&(a=n.length),r=i<=0?r.left:r.right}return n.length=a,new f(this,n)},l.le=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i>=0&&(a=n.length),r=i<0?r.left:r.right}return n.length=a,new f(this,n)},l.find=function(t){for(var e=this._compare,r=this.root,n=[];r;){var a=e(t,r.key);if(n.push(r),0===a)return new f(this,n);r=a<=0?r.left:r.right}return new f(this,[])},l.remove=function(t){var e=this.find(t);return e?e.remove():this},l.get=function(t){for(var e=this._compare,r=this.root;r;){var n=e(t,r.key);if(0===n)return r.value;r=n<=0?r.left:r.right}};var p=f.prototype;function d(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function g(t,e){return t<e?-1:t>e?1:0}Object.defineProperty(p,\"valid\",{get:function(){return this._stack.length>0}}),Object.defineProperty(p,\"node\",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),p.clone=function(){return new f(this.tree,this._stack.slice())},p.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var e=new Array(t.length),r=t[t.length-1];e[e.length-1]=new n(r._color,r.key,r.value,r.left,r.right,r._count);for(var l=t.length-2;l>=0;--l){(r=t[l]).left===t[l+1]?e[l]=new n(r._color,r.key,r.value,e[l+1],r.right,r._count):e[l]=new n(r._color,r.key,r.value,r.left,e[l+1],r._count)}if((r=e[e.length-1]).left&&r.right){var c=e.length;for(r=r.left;r.right;)e.push(r),r=r.right;var u=e[c-1];e.push(new n(r._color,u.key,u.value,r.left,r.right,r._count)),e[c-1].key=r.key,e[c-1].value=r.value;for(l=e.length-2;l>=c;--l)r=e[l],e[l]=new n(r._color,r.key,r.value,r.left,e[l+1],r._count);e[c-1].left=e[c]}if(0===(r=e[e.length-1])._color){var h=e[e.length-2];h.left===r?h.left=null:h.right===r&&(h.right=null),e.pop();for(l=0;l<e.length;++l)e[l]._count--;return new s(this.tree._compare,e[0])}if(r.left||r.right){r.left?d(r,r.left):r.right&&d(r,r.right),r._color=1;for(l=0;l<e.length-1;++l)e[l]._count--;return new s(this.tree._compare,e[0])}if(1===e.length)return new s(this.tree._compare,null);for(l=0;l<e.length;++l)e[l]._count--;var f=e[e.length-2];return function(t){for(var e,r,n,s,l=t.length-1;l>=0;--l){if(e=t[l],0===l)return void(e._color=1);if((r=t[l-1]).left===e){if((n=r.right).right&&0===n.right._color){if(s=(n=r.right=a(n)).right=a(n.right),r.right=n.left,n.left=r,n.right=s,n._color=r._color,e._color=1,r._color=1,s._color=1,o(r),o(n),l>1)(c=t[l-2]).left===r?c.left=n:c.right=n;return void(t[l-1]=n)}if(n.left&&0===n.left._color){if(s=(n=r.right=a(n)).left=a(n.left),r.right=s.left,n.left=s.right,s.left=r,s.right=n,s._color=r._color,r._color=1,n._color=1,e._color=1,o(r),o(n),o(s),l>1)(c=t[l-2]).left===r?c.left=s:c.right=s;return void(t[l-1]=s)}if(1===n._color){if(0===r._color)return r._color=1,void(r.right=i(0,n));r.right=i(0,n);continue}n=a(n),r.right=n.left,n.left=r,n._color=r._color,r._color=0,o(r),o(n),l>1&&((c=t[l-2]).left===r?c.left=n:c.right=n),t[l-1]=n,t[l]=r,l+1<t.length?t[l+1]=e:t.push(e),l+=2}else{if((n=r.left).left&&0===n.left._color){if(s=(n=r.left=a(n)).left=a(n.left),r.left=n.right,n.right=r,n.left=s,n._color=r._color,e._color=1,r._color=1,s._color=1,o(r),o(n),l>1)(c=t[l-2]).right===r?c.right=n:c.left=n;return void(t[l-1]=n)}if(n.right&&0===n.right._color){if(s=(n=r.left=a(n)).right=a(n.right),r.left=s.right,n.right=s.left,s.right=r,s.left=n,s._color=r._color,r._color=1,n._color=1,e._color=1,o(r),o(n),o(s),l>1)(c=t[l-2]).right===r?c.right=s:c.left=s;return void(t[l-1]=s)}if(1===n._color){if(0===r._color)return r._color=1,void(r.left=i(0,n));r.left=i(0,n);continue}var c;n=a(n),r.left=n.right,n.right=r,n._color=r._color,r._color=0,o(r),o(n),l>1&&((c=t[l-2]).right===r?c.right=n:c.left=n),t[l-1]=n,t[l]=r,l+1<t.length?t[l+1]=e:t.push(e),l+=2}}}(e),f.left===r?f.left=null:f.right=null,new s(this.tree._compare,e[0])},Object.defineProperty(p,\"key\",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(p,\"value\",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(p,\"index\",{get:function(){var t=0,e=this._stack;if(0===e.length){var r=this.tree.root;return r?r._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var n=e.length-2;n>=0;--n)e[n+1]===e[n].right&&(++t,e[n].left&&(t+=e[n].left._count));return t},enumerable:!0}),p.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(p,\"hasNext\",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].left===t[e])return!0;return!1}}),p.update=function(t){var e=this._stack;if(0===e.length)throw new Error(\"Can't update empty node!\");var r=new Array(e.length),a=e[e.length-1];r[r.length-1]=new n(a._color,a.key,t,a.left,a.right,a._count);for(var i=e.length-2;i>=0;--i)(a=e[i]).left===e[i+1]?r[i]=new n(a._color,a.key,a.value,r[i+1],a.right,a._count):r[i]=new n(a._color,a.key,a.value,a.left,r[i+1],a._count);return new s(this.tree._compare,r[0])},p.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(p,\"hasPrev\",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].right===t[e])return!0;return!1}})},{}],248:[function(t,e,r){var n=[.9999999999998099,676.5203681218851,-1259.1392167224028,771.3234287776531,-176.6150291621406,12.507343278686905,-.13857109526572012,9984369578019572e-21,1.5056327351493116e-7],a=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22];function i(t){if(t<0)return Number(\"0/0\");for(var e=a[0],r=a.length-1;r>0;--r)e+=a[r]/(t+r);var n=t+607/128+.5;return.5*Math.log(2*Math.PI)+(t+.5)*Math.log(n)-n+Math.log(e)-Math.log(t)}e.exports=function t(e){if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*t(1-e));if(e>100)return Math.exp(i(e));e-=1;for(var r=n[0],a=1;a<9;a++)r+=n[a]/(e+a);var o=e+7+.5;return Math.sqrt(2*Math.PI)*Math.pow(o,e+.5)*Math.exp(-o)*r},e.exports.log=i},{}],249:[function(t,e,r){e.exports=function(t,e){if(\"string\"!=typeof t)throw new TypeError(\"must specify type string\");if(e=e||{},\"undefined\"==typeof document&&!e.canvas)return null;var r=e.canvas||document.createElement(\"canvas\");\"number\"==typeof e.width&&(r.width=e.width);\"number\"==typeof e.height&&(r.height=e.height);var n,a=e;try{var i=[t];0===t.indexOf(\"webgl\")&&i.push(\"experimental-\"+t);for(var o=0;o<i.length;o++)if(n=r.getContext(i[o],a))return n}catch(t){n=null}return n||null}},{}],250:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=new u(t);return r.update(e),r};var n=t(\"./lib/text.js\"),a=t(\"./lib/lines.js\"),i=t(\"./lib/background.js\"),o=t(\"./lib/cube.js\"),s=t(\"./lib/ticks.js\"),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function c(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u(t){this.gl=t,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=[\"auto\",\"auto\",\"auto\"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=[\"x\",\"y\",\"z\"],this.labelEnable=[!0,!0,!0],this.labelFont=\"sans-serif\",this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=[\"auto\",\"auto\",\"auto\"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=i(t)}var h=u.prototype;function f(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}h.update=function(t){function e(e,r,n){if(n in t){var a,i=t[n],o=this[n];(e?Array.isArray(i)&&Array.isArray(i[0]):Array.isArray(i))?this[n]=a=[r(i[0]),r(i[1]),r(i[2])]:this[n]=a=[r(i),r(i),r(i)];for(var s=0;s<3;++s)if(a[s]!==o[s])return!0}return!1}t=t||{};var r,i=e.bind(this,!1,Number),o=e.bind(this,!1,Boolean),l=e.bind(this,!1,String),c=e.bind(this,!0,(function(t){if(Array.isArray(t)){if(3===t.length)return[+t[0],+t[1],+t[2],1];if(4===t.length)return[+t[0],+t[1],+t[2],+t[3]]}return[0,0,0,1]})),u=!1,h=!1;if(\"bounds\"in t)for(var f=t.bounds,p=0;p<2;++p)for(var d=0;d<3;++d)f[p][d]!==this.bounds[p][d]&&(h=!0),this.bounds[p][d]=f[p][d];if(\"ticks\"in t){r=t.ticks,u=!0,this.autoTicks=!1;for(p=0;p<3;++p)this.tickSpacing[p]=0}else i(\"tickSpacing\")&&(this.autoTicks=!0,h=!0);if(this._firstInit&&(\"ticks\"in t||\"tickSpacing\"in t||(this.autoTicks=!0),h=!0,u=!0,this._firstInit=!1),h&&this.autoTicks&&(r=s.create(this.bounds,this.tickSpacing),u=!0),u){for(p=0;p<3;++p)r[p].sort((function(t,e){return t.x-e.x}));s.equal(r,this.ticks)?u=!1:this.ticks=r}o(\"tickEnable\"),l(\"tickFont\")&&(u=!0),i(\"tickSize\"),i(\"tickAngle\"),i(\"tickPad\"),c(\"tickColor\");var g=l(\"labels\");l(\"labelFont\")&&(g=!0),o(\"labelEnable\"),i(\"labelSize\"),i(\"labelPad\"),c(\"labelColor\"),o(\"lineEnable\"),o(\"lineMirror\"),i(\"lineWidth\"),c(\"lineColor\"),o(\"lineTickEnable\"),o(\"lineTickMirror\"),i(\"lineTickLength\"),i(\"lineTickWidth\"),c(\"lineTickColor\"),o(\"gridEnable\"),i(\"gridWidth\"),c(\"gridColor\"),o(\"zeroEnable\"),c(\"zeroLineColor\"),i(\"zeroLineWidth\"),o(\"backgroundEnable\"),c(\"backgroundColor\"),this._text?this._text&&(g||u)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=n(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&u&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=a(this.gl,this.bounds,this.ticks))};var p=[new f,new f,new f];function d(t,e,r,n,a){for(var i=t.primalOffset,o=t.primalMinor,s=t.mirrorOffset,l=t.mirrorMinor,c=n[e],u=0;u<3;++u)if(e!==u){var h=i,f=s,p=o,d=l;c&1<<u&&(h=s,f=i,p=l,d=o),h[u]=r[0][u],f[u]=r[1][u],a[u]>0?(p[u]=-1,d[u]=0):(p[u]=0,d[u]=1)}}var g=[0,0,0],m={model:l,view:l,projection:l,_ortho:!1};h.isOpaque=function(){return!0},h.isTransparent=function(){return!1},h.drawTransparent=function(t){};var v=[0,0,0],y=[0,0,0],x=[0,0,0];h.draw=function(t){t=t||m;for(var e=this.gl,r=t.model||l,n=t.view||l,a=t.projection||l,i=this.bounds,s=t._ortho||!1,u=o(r,n,a,i,s),h=u.cubeEdges,f=u.axis,b=n[12],_=n[13],w=n[14],T=n[15],k=(s?2:1)*this.pixelRatio*(a[3]*b+a[7]*_+a[11]*w+a[15]*T)/e.drawingBufferHeight,M=0;M<3;++M)this.lastCubeProps.cubeEdges[M]=h[M],this.lastCubeProps.axis[M]=f[M];var A=p;for(M=0;M<3;++M)d(p[M],M,this.bounds,h,f);e=this.gl;var S,E=g;for(M=0;M<3;++M)this.backgroundEnable[M]?E[M]=f[M]:E[M]=0;this._background.draw(r,n,a,i,E,this.backgroundColor),this._lines.bind(r,n,a,this);for(M=0;M<3;++M){var C=[0,0,0];f[M]>0?C[M]=i[1][M]:C[M]=i[0][M];for(var L=0;L<2;++L){var P=(M+1+L)%3,I=(M+1+(1^L))%3;this.gridEnable[P]&&this._lines.drawGrid(P,I,this.bounds,C,this.gridColor[P],this.gridWidth[P]*this.pixelRatio)}for(L=0;L<2;++L){P=(M+1+L)%3,I=(M+1+(1^L))%3;this.zeroEnable[I]&&Math.min(i[0][I],i[1][I])<=0&&Math.max(i[0][I],i[1][I])>=0&&this._lines.drawZero(P,I,this.bounds,C,this.zeroLineColor[I],this.zeroLineWidth[I]*this.pixelRatio)}}for(M=0;M<3;++M){this.lineEnable[M]&&this._lines.drawAxisLine(M,this.bounds,A[M].primalOffset,this.lineColor[M],this.lineWidth[M]*this.pixelRatio),this.lineMirror[M]&&this._lines.drawAxisLine(M,this.bounds,A[M].mirrorOffset,this.lineColor[M],this.lineWidth[M]*this.pixelRatio);var z=c(v,A[M].primalMinor),O=c(y,A[M].mirrorMinor),D=this.lineTickLength;for(L=0;L<3;++L){var R=k/r[5*L];z[L]*=D[L]*R,O[L]*=D[L]*R}this.lineTickEnable[M]&&this._lines.drawAxisTicks(M,A[M].primalOffset,z,this.lineTickColor[M],this.lineTickWidth[M]*this.pixelRatio),this.lineTickMirror[M]&&this._lines.drawAxisTicks(M,A[M].mirrorOffset,O,this.lineTickColor[M],this.lineTickWidth[M]*this.pixelRatio)}this._lines.unbind(),this._text.bind(r,n,a,this.pixelRatio);var F,B;function N(t){(B=[0,0,0])[t]=1}function j(t,e,r){var n=(t+1)%3,a=(t+2)%3,i=e[n],o=e[a],s=r[n],l=r[a];i>0&&l>0||i>0&&l<0||i<0&&l>0||i<0&&l<0?N(n):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&N(a)}for(M=0;M<3;++M){var U=A[M].primalMinor,V=A[M].mirrorMinor,q=c(x,A[M].primalOffset);for(L=0;L<3;++L)this.lineTickEnable[M]&&(q[L]+=k*U[L]*Math.max(this.lineTickLength[L],0)/r[5*L]);var H=[0,0,0];if(H[M]=1,this.tickEnable[M]){-3600===this.tickAngle[M]?(this.tickAngle[M]=0,this.tickAlign[M]=\"auto\"):this.tickAlign[M]=-1,F=1,\"auto\"===(S=[this.tickAlign[M],.5,F])[0]?S[0]=0:S[0]=parseInt(\"\"+S[0]),B=[0,0,0],j(M,U,V);for(L=0;L<3;++L)q[L]+=k*U[L]*this.tickPad[L]/r[5*L];this._text.drawTicks(M,this.tickSize[M],this.tickAngle[M],q,this.tickColor[M],H,B,S)}if(this.labelEnable[M]){F=0,B=[0,0,0],this.labels[M].length>4&&(N(M),F=1),\"auto\"===(S=[this.labelAlign[M],.5,F])[0]?S[0]=0:S[0]=parseInt(\"\"+S[0]);for(L=0;L<3;++L)q[L]+=k*U[L]*this.labelPad[L]/r[5*L];q[M]+=.5*(i[0][M]+i[1][M]),this._text.drawLabel(M,this.labelSize[M],this.labelAngle[M],q,this.labelColor[M],[0,0,0],B,S)}}this._text.unbind()},h.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},{\"./lib/background.js\":251,\"./lib/cube.js\":252,\"./lib/lines.js\":253,\"./lib/text.js\":255,\"./lib/ticks.js\":256}],251:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=[],r=[],s=0,l=0;l<3;++l)for(var c=(l+1)%3,u=(l+2)%3,h=[0,0,0],f=[0,0,0],p=-1;p<=1;p+=2){r.push(s,s+2,s+1,s+1,s+2,s+3),h[l]=p,f[l]=p;for(var d=-1;d<=1;d+=2){h[c]=d;for(var g=-1;g<=1;g+=2)h[u]=g,e.push(h[0],h[1],h[2],f[0],f[1],f[2]),s+=1}var m=c;c=u,u=m}var v=n(t,new Float32Array(e)),y=n(t,new Uint16Array(r),t.ELEMENT_ARRAY_BUFFER),x=a(t,[{buffer:v,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:v,type:t.FLOAT,size:3,offset:12,stride:24}],y),b=i(t);return b.attributes.position.location=0,b.attributes.normal.location=1,new o(t,v,x,b)};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"./shaders\").bg;function o(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n}var s=o.prototype;s.draw=function(t,e,r,n,a,i){for(var o=!1,s=0;s<3;++s)o=o||a[s];if(o){var l=this.gl;l.enable(l.POLYGON_OFFSET_FILL),l.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:t,view:e,projection:r,bounds:n,enable:a,colors:i},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),l.disable(l.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},{\"./shaders\":254,\"gl-buffer\":258,\"gl-vao\":332}],252:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,i,p){a(s,e,t),a(s,r,s);for(var y=0,x=0;x<2;++x){u[2]=i[x][2];for(var b=0;b<2;++b){u[1]=i[b][1];for(var _=0;_<2;++_)u[0]=i[_][0],f(l[y],u,s),y+=1}}var w=-1;for(x=0;x<8;++x){for(var T=l[x][3],k=0;k<3;++k)c[x][k]=l[x][k]/T;p&&(c[x][2]*=-1),T<0&&(w<0||c[x][2]<c[w][2])&&(w=x)}if(w<0){w=0;for(var M=0;M<3;++M){for(var A=(M+2)%3,S=(M+1)%3,E=-1,C=-1,L=0;L<2;++L){var P=(z=L<<M)+(L<<A)+(1-L<<S),I=z+(1-L<<A)+(L<<S);o(c[z],c[P],c[I],h)<0||(L?E=1:C=1)}if(E<0||C<0)C>E&&(w|=1<<M);else{for(L=0;L<2;++L){P=(z=L<<M)+(L<<A)+(1-L<<S),I=z+(1-L<<A)+(L<<S);var z,O=d([l[z],l[P],l[I],l[z+(1<<A)+(1<<S)]]);L?E=O:C=O}C>E&&(w|=1<<M)}}}var D=7^w,R=-1;for(x=0;x<8;++x)x!==w&&x!==D&&(R<0||c[R][1]>c[x][1])&&(R=x);var F=-1;for(x=0;x<3;++x){if((N=R^1<<x)!==w&&N!==D)F<0&&(F=N),(S=c[N])[0]<c[F][0]&&(F=N)}var B=-1;for(x=0;x<3;++x){var N;if((N=R^1<<x)!==w&&N!==D&&N!==F)B<0&&(B=N),(S=c[N])[0]>c[B][0]&&(B=N)}var j=g;j[0]=j[1]=j[2]=0,j[n.log2(F^R)]=R&F,j[n.log2(R^B)]=R&B;var U=7^B;U===w||U===D?(U=7^F,j[n.log2(B^U)]=U&B):j[n.log2(F^U)]=U&F;var V=m,q=w;for(M=0;M<3;++M)V[M]=q&1<<M?-1:1;return v};var n=t(\"bit-twiddle\"),a=t(\"gl-mat4/multiply\"),i=t(\"split-polygon\"),o=t(\"robust-orientation\"),s=new Array(16),l=new Array(8),c=new Array(8),u=new Array(3),h=[0,0,0];function f(t,e,r){for(var n=0;n<4;++n){t[n]=r[12+n];for(var a=0;a<3;++a)t[n]+=e[a]*r[4*a+n]}}!function(){for(var t=0;t<8;++t)l[t]=[1,1,1,1],c[t]=[1,1,1]}();var p=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function d(t){for(var e=0;e<p.length;++e)if((t=i.positive(t,p[e])).length<3)return 0;var r=t[0],n=r[0]/r[3],a=r[1]/r[3],o=0;for(e=1;e+1<t.length;++e){var s=t[e],l=t[e+1],c=s[0]/s[3]-n,u=s[1]/s[3]-a,h=l[0]/l[3]-n,f=l[1]/l[3]-a;o+=Math.abs(c*f-u*h)}return o}var g=[1,1,1],m=[0,0,0],v={cubeEdges:g,axis:m}},{\"bit-twiddle\":97,\"gl-mat4/multiply\":280,\"robust-orientation\":520,\"split-polygon\":538}],253:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var o=[],s=[0,0,0],l=[0,0,0],c=[0,0,0],u=[0,0,0];o.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var h=0;h<3;++h){for(var f=o.length/3|0,d=0;d<r[h].length;++d){var g=+r[h][d].x;o.push(g,0,1,g,1,1,g,0,-1,g,0,-1,g,1,1,g,1,-1)}var m=o.length/3|0;s[h]=f,l[h]=m-f;f=o.length/3|0;for(var v=0;v<r[h].length;++v){g=+r[h][v].x;o.push(g,0,1,g,1,1,g,0,-1,g,0,-1,g,1,1,g,1,-1)}m=o.length/3|0;c[h]=f,u[h]=m-f}var y=n(t,new Float32Array(o)),x=a(t,[{buffer:y,type:t.FLOAT,size:3,stride:0,offset:0}]),b=i(t);return b.attributes.position.location=0,new p(t,y,x,b,l,s,u,c)};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"./shaders\").line,o=[0,0,0],s=[0,0,0],l=[0,0,0],c=[0,0,0],u=[1,1];function h(t){return t[0]=t[1]=t[2]=0,t}function f(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function p(t,e,r,n,a,i,o,s){this.gl=t,this.vertBuffer=e,this.vao=r,this.shader=n,this.tickCount=a,this.tickOffset=i,this.gridCount=o,this.gridOffset=s}var d=p.prototype;d.bind=function(t,e,r){this.shader.bind(),this.shader.uniforms.model=t,this.shader.uniforms.view=e,this.shader.uniforms.projection=r,u[0]=this.gl.drawingBufferWidth,u[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=u,this.vao.bind()},d.unbind=function(){this.vao.unbind()},d.drawAxisLine=function(t,e,r,n,a){var i=h(s);this.shader.uniforms.majorAxis=s,i[t]=e[1][t]-e[0][t],this.shader.uniforms.minorAxis=i;var o,u=f(c,r);u[t]+=e[0][t],this.shader.uniforms.offset=u,this.shader.uniforms.lineWidth=a,this.shader.uniforms.color=n,(o=h(l))[(t+2)%3]=1,this.shader.uniforms.screenAxis=o,this.vao.draw(this.gl.TRIANGLES,6),(o=h(l))[(t+1)%3]=1,this.shader.uniforms.screenAxis=o,this.vao.draw(this.gl.TRIANGLES,6)},d.drawAxisTicks=function(t,e,r,n,a){if(this.tickCount[t]){var i=h(o);i[t]=1,this.shader.uniforms.majorAxis=i,this.shader.uniforms.offset=e,this.shader.uniforms.minorAxis=r,this.shader.uniforms.color=n,this.shader.uniforms.lineWidth=a;var s=h(l);s[t]=1,this.shader.uniforms.screenAxis=s,this.vao.draw(this.gl.TRIANGLES,this.tickCount[t],this.tickOffset[t])}},d.drawGrid=function(t,e,r,n,a,i){if(this.gridCount[t]){var u=h(s);u[e]=r[1][e]-r[0][e],this.shader.uniforms.minorAxis=u;var p=f(c,n);p[e]+=r[0][e],this.shader.uniforms.offset=p;var d=h(o);d[t]=1,this.shader.uniforms.majorAxis=d;var g=h(l);g[t]=1,this.shader.uniforms.screenAxis=g,this.shader.uniforms.lineWidth=i,this.shader.uniforms.color=a,this.vao.draw(this.gl.TRIANGLES,this.gridCount[t],this.gridOffset[t])}},d.drawZero=function(t,e,r,n,a,i){var o=h(s);this.shader.uniforms.majorAxis=o,o[t]=r[1][t]-r[0][t],this.shader.uniforms.minorAxis=o;var u=f(c,n);u[t]+=r[0][t],this.shader.uniforms.offset=u;var p=h(l);p[e]=1,this.shader.uniforms.screenAxis=p,this.shader.uniforms.lineWidth=i,this.shader.uniforms.color=a,this.vao.draw(this.gl.TRIANGLES,6)},d.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()}},{\"./shaders\":254,\"gl-buffer\":258,\"gl-vao\":332}],254:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 offset, majorAxis, minorAxis, screenAxis;\\nuniform float lineWidth;\\nuniform vec2 screenShape;\\n\\nvec3 project(vec3 p) {\\n  vec4 pp = projection * view * model * vec4(p, 1.0);\\n  return pp.xyz / max(pp.w, 0.0001);\\n}\\n\\nvoid main() {\\n  vec3 major = position.x * majorAxis;\\n  vec3 minor = position.y * minorAxis;\\n\\n  vec3 vPosition = major + minor + offset;\\n  vec3 pPosition = project(vPosition);\\n  vec3 offset = project(vPosition + screenAxis * position.z);\\n\\n  vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;\\n\\n  gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);\\n}\\n\"]),o=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\nvoid main() {\\n  gl_FragColor = color;\\n}\"]);r.line=function(t){return a(t,i,o,null,[{name:\"position\",type:\"vec3\"}])};var s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 offset, axis, alignDir, alignOpt;\\nuniform float scale, angle, pixelScale;\\nuniform vec2 resolution;\\n\\nvec3 project(vec3 p) {\\n  vec4 pp = projection * view * model * vec4(p, 1.0);\\n  return pp.xyz / max(pp.w, 0.0001);\\n}\\n\\nfloat computeViewAngle(vec3 a, vec3 b) {\\n  vec3 A = project(a);\\n  vec3 B = project(b);\\n\\n  return atan(\\n    (B.y - A.y) * resolution.y,\\n    (B.x - A.x) * resolution.x\\n  );\\n}\\n\\nconst float PI = 3.141592;\\nconst float TWO_PI = 2.0 * PI;\\nconst float HALF_PI = 0.5 * PI;\\nconst float ONE_AND_HALF_PI = 1.5 * PI;\\n\\nint option = int(floor(alignOpt.x + 0.001));\\nfloat hv_ratio =       alignOpt.y;\\nbool enableAlign =    (alignOpt.z != 0.0);\\n\\nfloat mod_angle(float a) {\\n  return mod(a, PI);\\n}\\n\\nfloat positive_angle(float a) {\\n  return mod_angle((a < 0.0) ?\\n    a + TWO_PI :\\n    a\\n  );\\n}\\n\\nfloat look_upwards(float a) {\\n  float b = positive_angle(a);\\n  return ((b > HALF_PI) && (b <= ONE_AND_HALF_PI)) ?\\n    b - PI :\\n    b;\\n}\\n\\nfloat look_horizontal_or_vertical(float a, float ratio) {\\n  // ratio controls the ratio between being horizontal to (vertical + horizontal)\\n  // if ratio is set to 0.5 then it is 50%, 50%.\\n  // when using a higher ratio e.g. 0.75 the result would\\n  // likely be more horizontal than vertical.\\n\\n  float b = positive_angle(a);\\n\\n  return\\n    (b < (      ratio) * HALF_PI) ? 0.0 :\\n    (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :\\n    (b < (2.0 + ratio) * HALF_PI) ? 0.0 :\\n    (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :\\n                                    0.0;\\n}\\n\\nfloat roundTo(float a, float b) {\\n  return float(b * floor((a + 0.5 * b) / b));\\n}\\n\\nfloat look_round_n_directions(float a, int n) {\\n  float b = positive_angle(a);\\n  float div = TWO_PI / float(n);\\n  float c = roundTo(b, div);\\n  return look_upwards(c);\\n}\\n\\nfloat applyAlignOption(float rawAngle, float delta) {\\n  return\\n    (option >  2) ? look_round_n_directions(rawAngle + delta, option) :       // option 3-n: round to n directions\\n    (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical\\n    (option == 1) ? rawAngle + delta :       // use free angle, and flip to align with one direction of the axis\\n    (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards\\n    (option ==-1) ? 0.0 :                    // useful for backward compatibility, all texts remains horizontal\\n                    rawAngle;                // otherwise return back raw input angle\\n}\\n\\nbool isAxisTitle = (axis.x == 0.0) &&\\n                   (axis.y == 0.0) &&\\n                   (axis.z == 0.0);\\n\\nvoid main() {\\n  //Compute world offset\\n  float axisDistance = position.z;\\n  vec3 dataPosition = axisDistance * axis + offset;\\n\\n  float beta = angle; // i.e. user defined attributes for each tick\\n\\n  float axisAngle;\\n  float clipAngle;\\n  float flip;\\n\\n  if (enableAlign) {\\n    axisAngle = (isAxisTitle) ? HALF_PI :\\n                      computeViewAngle(dataPosition, dataPosition + axis);\\n    clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);\\n\\n    axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;\\n    clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;\\n\\n    flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),\\n                vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;\\n\\n    beta += applyAlignOption(clipAngle, flip * PI);\\n  }\\n\\n  //Compute plane offset\\n  vec2 planeCoord = position.xy * pixelScale;\\n\\n  mat2 planeXform = scale * mat2(\\n     cos(beta), sin(beta),\\n    -sin(beta), cos(beta)\\n  );\\n\\n  vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;\\n\\n  //Compute clip position\\n  vec3 clipPosition = project(dataPosition);\\n\\n  //Apply text offset in clip coordinates\\n  clipPosition += vec3(viewOffset, 0.0);\\n\\n  //Done\\n  gl_Position = vec4(clipPosition, 1.0);\\n}\"]),l=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\nvoid main() {\\n  gl_FragColor = color;\\n}\"]);r.text=function(t){return a(t,s,l,null,[{name:\"position\",type:\"vec3\"}])};var c=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\nattribute vec3 normal;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 enable;\\nuniform vec3 bounds[2];\\n\\nvarying vec3 colorChannel;\\n\\nvoid main() {\\n\\n  vec3 signAxis = sign(bounds[1] - bounds[0]);\\n\\n  vec3 realNormal = signAxis * normal;\\n\\n  if(dot(realNormal, enable) > 0.0) {\\n    vec3 minRange = min(bounds[0], bounds[1]);\\n    vec3 maxRange = max(bounds[0], bounds[1]);\\n    vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));\\n    gl_Position = projection * view * model * vec4(nPosition, 1.0);\\n  } else {\\n    gl_Position = vec4(0,0,0,0);\\n  }\\n\\n  colorChannel = abs(realNormal);\\n}\"]),u=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec4 colors[3];\\n\\nvarying vec3 colorChannel;\\n\\nvoid main() {\\n  gl_FragColor = colorChannel.x * colors[0] +\\n                 colorChannel.y * colors[1] +\\n                 colorChannel.z * colors[2];\\n}\"]);r.bg=function(t){return a(t,c,u,null,[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}])}},{\"gl-shader\":312,glslify:413}],255:[function(t,e,r){(function(r){\"use strict\";e.exports=function(t,e,r,i,s,l){var u=n(t),h=a(t,[{buffer:u,size:3}]),f=o(t);f.attributes.position.location=0;var p=new c(t,f,u,h);return p.update(e,r,i,s,l),p};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"vectorize-text\"),o=t(\"./shaders\").text,s=window||r.global||{},l=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};function c(t,e,r,n){this.gl=t,this.shader=e,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var u=c.prototype,h=[0,0];u.bind=function(t,e,r,n){this.vao.bind(),this.shader.bind();var a=this.shader.uniforms;a.model=t,a.view=e,a.projection=r,a.pixelScale=n,h[0]=this.gl.drawingBufferWidth,h[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=h},u.unbind=function(){this.vao.unbind()},u.update=function(t,e,r,n,a){var o=[];function s(t,e,r,n,a,s){var c=l[r];c||(c=l[r]={});var u=c[e];u||(u=c[e]=function(t,e){try{return i(t,e)}catch(e){return console.warn('error vectorizing text:\"'+t+'\" error:',e),{cells:[],positions:[]}}}(e,{triangles:!0,font:r,textAlign:\"center\",textBaseline:\"middle\",lineSpacing:a,styletags:s}));for(var h=(n||12)/12,f=u.positions,p=u.cells,d=0,g=p.length;d<g;++d)for(var m=p[d],v=2;v>=0;--v){var y=f[m[v]];o.push(h*y[0],-h*y[1],t)}}for(var c=[0,0,0],u=[0,0,0],h=[0,0,0],f=[0,0,0],p={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},d=0;d<3;++d){h[d]=o.length/3|0,s(.5*(t[0][d]+t[1][d]),e[d],r[d],12,1.25,p),f[d]=(o.length/3|0)-h[d],c[d]=o.length/3|0;for(var g=0;g<n[d].length;++g)n[d][g].text&&s(n[d][g].x,n[d][g].text,n[d][g].font||a,n[d][g].fontSize||12,1.25,p);u[d]=(o.length/3|0)-c[d]}this.buffer.update(o),this.tickOffset=c,this.tickCount=u,this.labelOffset=h,this.labelCount=f},u.drawTicks=function(t,e,r,n,a,i,o,s){this.tickCount[t]&&(this.shader.uniforms.axis=i,this.shader.uniforms.color=a,this.shader.uniforms.angle=r,this.shader.uniforms.scale=e,this.shader.uniforms.offset=n,this.shader.uniforms.alignDir=o,this.shader.uniforms.alignOpt=s,this.vao.draw(this.gl.TRIANGLES,this.tickCount[t],this.tickOffset[t]))},u.drawLabel=function(t,e,r,n,a,i,o,s){this.labelCount[t]&&(this.shader.uniforms.axis=i,this.shader.uniforms.color=a,this.shader.uniforms.angle=r,this.shader.uniforms.scale=e,this.shader.uniforms.offset=n,this.shader.uniforms.alignDir=o,this.shader.uniforms.alignOpt=s,this.vao.draw(this.gl.TRIANGLES,this.labelCount[t],this.labelOffset[t]))},u.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()}}).call(this,t(\"_process\"))},{\"./shaders\":254,_process:500,\"gl-buffer\":258,\"gl-vao\":332,\"vectorize-text\":572}],256:[function(t,e,r){\"use strict\";function n(t,e){var r=t+\"\",n=r.indexOf(\".\"),a=0;n>=0&&(a=r.length-n-1);var i=Math.pow(10,a),o=Math.round(t*e*i),s=o+\"\";if(s.indexOf(\"e\")>=0)return s;var l=o/i,c=o%i;o<0?(l=0|-Math.ceil(l),c=0|-c):(l=0|Math.floor(l),c|=0);var u=\"\"+l;if(o<0&&(u=\"-\"+u),a){for(var h=\"\"+c;h.length<a;)h=\"0\"+h;return u+\".\"+h}return u}r.create=function(t,e){for(var r=[],a=0;a<3;++a){for(var i=[],o=(t[0][a],t[1][a],0);o*e[a]<=t[1][a];++o)i.push({x:o*e[a],text:n(e[a],o)});for(o=-1;o*e[a]>=t[0][a];--o)i.push({x:o*e[a],text:n(e[a],o)});r.push(i)}return r},r.equal=function(t,e){for(var r=0;r<3;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;n<t[r].length;++n){var a=t[r][n],i=e[r][n];if(a.x!==i.x||a.text!==i.text||a.font!==i.font||a.fontColor!==i.fontColor||a.fontSize!==i.fontSize||a.dx!==i.dx||a.dy!==i.dy)return!1}}return!0}},{}],257:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,l,h){var f=e.model||c,p=e.view||c,v=e.projection||c,y=e._ortho||!1,x=t.bounds,b=(h=h||i(f,p,v,x,y)).axis;o(u,p,f),o(u,v,u);for(var _=g,w=0;w<3;++w)_[w].lo=1/0,_[w].hi=-1/0,_[w].pixelsPerDataUnit=1/0;var T=n(s(u,u));s(u,u);for(var k=0;k<3;++k){var M=(k+1)%3,A=(k+2)%3,S=m;t:for(w=0;w<2;++w){var E=[];if(b[k]<0!=!!w){S[k]=x[w][k];for(var C=0;C<2;++C){S[M]=x[C^w][M];for(var L=0;L<2;++L)S[A]=x[L^C^w][A],E.push(S.slice())}var P=y?5:4;for(C=P;C===P;++C){if(0===E.length)continue t;E=a.positive(E,T[C])}for(C=0;C<E.length;++C){A=E[C];var I=d(m,u,A,r,l);for(L=0;L<3;++L)_[L].lo=Math.min(_[L].lo,A[L]),_[L].hi=Math.max(_[L].hi,A[L]),L!==k&&(_[L].pixelsPerDataUnit=Math.min(_[L].pixelsPerDataUnit,Math.abs(I[L])))}}}}return _};var n=t(\"extract-frustum-planes\"),a=t(\"split-polygon\"),i=t(\"./lib/cube.js\"),o=t(\"gl-mat4/multiply\"),s=t(\"gl-mat4/transpose\"),l=t(\"gl-vec4/transformMat4\"),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),u=new Float32Array(16);function h(t,e,r){this.lo=t,this.hi=e,this.pixelsPerDataUnit=r}var f=[0,0,0,1],p=[0,0,0,1];function d(t,e,r,n,a){for(var i=0;i<3;++i){for(var o=f,s=p,c=0;c<3;++c)s[c]=o[c]=r[c];s[3]=o[3]=1,s[i]+=1,l(s,s,e),s[3]<0&&(t[i]=1/0),o[i]-=1,l(o,o,e),o[3]<0&&(t[i]=1/0);var u=(o[0]/o[3]-s[0]/s[3])*n,h=(o[1]/o[3]-s[1]/s[3])*a;t[i]=.25*Math.sqrt(u*u+h*h)}return t}var g=[new h(1/0,-1/0,1/0),new h(1/0,-1/0,1/0),new h(1/0,-1/0,1/0)],m=[0,0,0]},{\"./lib/cube.js\":252,\"extract-frustum-planes\":240,\"gl-mat4/multiply\":280,\"gl-mat4/transpose\":289,\"gl-vec4/transformMat4\":403,\"split-polygon\":538}],258:[function(t,e,r){\"use strict\";var n=t(\"typedarray-pool\"),a=t(\"ndarray-ops\"),i=t(\"ndarray\"),o=[\"uint8\",\"uint8_clamped\",\"uint16\",\"uint32\",\"int8\",\"int16\",\"int32\",\"float32\"];function s(t,e,r,n,a){this.gl=t,this.type=e,this.handle=r,this.length=n,this.usage=a}var l=s.prototype;function c(t,e,r,n,a,i){var o=a.length*a.BYTES_PER_ELEMENT;if(i<0)return t.bufferData(e,a,n),o;if(o+i>r)throw new Error(\"gl-buffer: If resizing buffer, must not specify offset\");return t.bufferSubData(e,i,a),r}function u(t,e){for(var r=n.malloc(t.length,e),a=t.length,i=0;i<a;++i)r[i]=t[i];return r}l.bind=function(){this.gl.bindBuffer(this.type,this.handle)},l.unbind=function(){this.gl.bindBuffer(this.type,null)},l.dispose=function(){this.gl.deleteBuffer(this.handle)},l.update=function(t,e){if(\"number\"!=typeof e&&(e=-1),this.bind(),\"object\"==typeof t&&\"undefined\"!=typeof t.shape){var r=t.dtype;if(o.indexOf(r)<0&&(r=\"float32\"),this.type===this.gl.ELEMENT_ARRAY_BUFFER)r=gl.getExtension(\"OES_element_index_uint\")&&\"uint16\"!==r?\"uint32\":\"uint16\";if(r===t.dtype&&function(t,e){for(var r=1,n=e.length-1;n>=0;--n){if(e[n]!==r)return!1;r*=t[n]}return!0}(t.shape,t.stride))0===t.offset&&t.data.length===t.shape[0]?this.length=c(this.gl,this.type,this.length,this.usage,t.data,e):this.length=c(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var s=n.malloc(t.size,r),l=i(s,t.shape);a.assign(l,t),this.length=c(this.gl,this.type,this.length,this.usage,e<0?s:s.subarray(0,t.size),e),n.free(s)}}else if(Array.isArray(t)){var h;h=this.type===this.gl.ELEMENT_ARRAY_BUFFER?u(t,\"uint16\"):u(t,\"float32\"),this.length=c(this.gl,this.type,this.length,this.usage,e<0?h:h.subarray(0,t.length),e),n.free(h)}else if(\"object\"==typeof t&&\"number\"==typeof t.length)this.length=c(this.gl,this.type,this.length,this.usage,t,e);else{if(\"number\"!=typeof t&&void 0!==t)throw new Error(\"gl-buffer: Invalid data type\");if(e>=0)throw new Error(\"gl-buffer: Cannot specify offset when resizing buffer\");(t|=0)<=0&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},e.exports=function(t,e,r,n){if(r=r||t.ARRAY_BUFFER,n=n||t.DYNAMIC_DRAW,r!==t.ARRAY_BUFFER&&r!==t.ELEMENT_ARRAY_BUFFER)throw new Error(\"gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER\");if(n!==t.DYNAMIC_DRAW&&n!==t.STATIC_DRAW&&n!==t.STREAM_DRAW)throw new Error(\"gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW\");var a=t.createBuffer(),i=new s(t,r,a,0,n);return i.update(e),i}},{ndarray:469,\"ndarray-ops\":464,\"typedarray-pool\":567}],259:[function(t,e,r){\"use strict\";var n=t(\"gl-vec3\");e.exports=function(t,e){var r=t.positions,a=t.vectors,i={positions:[],vertexIntensity:[],vertexIntensityBounds:t.vertexIntensityBounds,vectors:[],cells:[],coneOffset:t.coneOffset,colormap:t.colormap};if(0===t.positions.length)return e&&(e[0]=[0,0,0],e[1]=[0,0,0]),i;for(var o=0,s=1/0,l=-1/0,c=1/0,u=-1/0,h=1/0,f=-1/0,p=null,d=null,g=[],m=1/0,v=!1,y=0;y<r.length;y++){var x=r[y];s=Math.min(x[0],s),l=Math.max(x[0],l),c=Math.min(x[1],c),u=Math.max(x[1],u),h=Math.min(x[2],h),f=Math.max(x[2],f);var b=a[y];if(n.length(b)>o&&(o=n.length(b)),y){var _=2*n.distance(p,x)/(n.length(d)+n.length(b));_?(m=Math.min(m,_),v=!1):v=!0}v||(p=x,d=b),g.push(b)}var w=[s,c,h],T=[l,u,f];e&&(e[0]=w,e[1]=T),0===o&&(o=1);var k=1/o;isFinite(m)||(m=1),i.vectorScale=m;var M=t.coneSize||.5;t.absoluteConeSize&&(M=t.absoluteConeSize*k),i.coneScale=M;y=0;for(var A=0;y<r.length;y++)for(var S=(x=r[y])[0],E=x[1],C=x[2],L=g[y],P=n.length(L)*k,I=0;I<8;I++){i.positions.push([S,E,C,A++]),i.positions.push([S,E,C,A++]),i.positions.push([S,E,C,A++]),i.positions.push([S,E,C,A++]),i.positions.push([S,E,C,A++]),i.positions.push([S,E,C,A++]),i.vectors.push(L),i.vectors.push(L),i.vectors.push(L),i.vectors.push(L),i.vectors.push(L),i.vectors.push(L),i.vertexIntensity.push(P,P,P),i.vertexIntensity.push(P,P,P);var z=i.positions.length;i.cells.push([z-6,z-5,z-4],[z-3,z-2,z-1])}return i};var a=t(\"./lib/shaders\");e.exports.createMesh=t(\"./create_mesh\"),e.exports.createConeMesh=function(t,r){return e.exports.createMesh(t,r,{shaders:a,traceType:\"cone\"})}},{\"./create_mesh\":260,\"./lib/shaders\":261,\"gl-vec3\":351}],260:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"gl-texture2d\"),s=t(\"gl-mat4/multiply\"),l=t(\"gl-mat4/invert\"),c=t(\"ndarray\"),u=t(\"colormap\"),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(t,e,r,n,a,i,o,s,l,c,u){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.pickShader=n,this.trianglePositions=a,this.triangleVectors=i,this.triangleColors=s,this.triangleUVs=l,this.triangleIds=o,this.triangleVAO=c,this.triangleCount=0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.traceType=u,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=h,this._view=h,this._projection=h,this._resolution=[1,1]}var p=f.prototype;function d(t,e){var r=n(t,e.meshShader.vertex,e.meshShader.fragment,null,e.meshShader.attributes);return r.attributes.position.location=0,r.attributes.color.location=2,r.attributes.uv.location=3,r.attributes.vector.location=4,r}function g(t,e){var r=n(t,e.pickShader.vertex,e.pickShader.fragment,null,e.pickShader.attributes);return r.attributes.position.location=0,r.attributes.id.location=1,r.attributes.vector.location=4,r}p.isOpaque=function(){return this.opacity>=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(t){this.pickId=t},p.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,\"lightPosition\"in t&&(this.lightPosition=t.lightPosition),\"opacity\"in t&&(this.opacity=t.opacity),\"ambient\"in t&&(this.ambientLight=t.ambient),\"diffuse\"in t&&(this.diffuseLight=t.diffuse),\"specular\"in t&&(this.specularLight=t.specular),\"roughness\"in t&&(this.roughness=t.roughness),\"fresnel\"in t&&(this.fresnel=t.fresnel),void 0!==t.tubeScale&&(this.tubeScale=t.tubeScale),void 0!==t.vectorScale&&(this.vectorScale=t.vectorScale),void 0!==t.coneScale&&(this.coneScale=t.coneScale),void 0!==t.coneOffset&&(this.coneOffset=t.coneOffset),t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t){for(var e=u({colormap:t,nshades:256,format:\"rgba\"}),r=new Uint8Array(1024),n=0;n<256;++n){for(var a=e[n],i=0;i<3;++i)r[4*n+i]=a[i];r[4*n+3]=255*a[3]}return c(r,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var r=t.cells,n=t.positions,a=t.vectors;if(n&&r&&a){var i=[],o=[],s=[],l=[],h=[];this.cells=r,this.positions=n,this.vectors=a;var f=t.meshColor||[1,1,1,1],p=t.vertexIntensity,d=1/0,g=-1/0;if(p)if(t.vertexIntensityBounds)d=+t.vertexIntensityBounds[0],g=+t.vertexIntensityBounds[1];else for(var m=0;m<p.length;++m){var v=p[m];d=Math.min(d,v),g=Math.max(g,v)}else for(m=0;m<n.length;++m){v=n[m][2];d=Math.min(d,v),g=Math.max(g,v)}this.intensity=p||function(t){for(var e=t.length,r=new Array(e),n=0;n<e;++n)r[n]=t[n][2];return r}(n),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(m=0;m<n.length;++m)for(var y=n[m],x=0;x<3;++x)!isNaN(y[x])&&isFinite(y[x])&&(this.bounds[0][x]=Math.min(this.bounds[0][x],y[x]),this.bounds[1][x]=Math.max(this.bounds[1][x],y[x]));var b=0;t:for(m=0;m<r.length;++m){var _=r[m];switch(_.length){case 3:for(x=0;x<3;++x){y=n[T=_[x]];for(var w=0;w<3;++w)if(isNaN(y[w])||!isFinite(y[w]))continue t}for(x=0;x<3;++x){var T;y=n[T=_[2-x]];i.push(y[0],y[1],y[2],y[3]);var k=a[T];o.push(k[0],k[1],k[2],k[3]||0);var M,A=f;3===A.length?s.push(A[0],A[1],A[2],1):s.push(A[0],A[1],A[2],A[3]),M=p?[(p[T]-d)/(g-d),0]:[(y[2]-d)/(g-d),0],l.push(M[0],M[1]),h.push(m)}b+=1}}this.triangleCount=b,this.trianglePositions.update(i),this.triangleVectors.update(o),this.triangleColors.update(s),this.triangleUVs.update(l),this.triangleIds.update(new Uint32Array(h))}},p.drawTransparent=p.draw=function(t){t=t||{};for(var e=this.gl,r=t.model||h,n=t.view||h,a=t.projection||h,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);var c={model:r,view:n,projection:a,inverseModel:h.slice(),clipBounds:i,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};c.inverseModel=l(c.inverseModel,c.model),e.disable(e.CULL_FACE),this.texture.bind(0);var u=new Array(16);s(u,c.view,c.model),s(u,c.projection,u),l(u,u);for(o=0;o<3;++o)c.eyePosition[o]=u[12+o]/u[15];var f=u[15];for(o=0;o<3;++o)f+=this.lightPosition[o]*u[4*o+3];for(o=0;o<3;++o){for(var p=u[12+o],d=0;d<3;++d)p+=u[4*d+o]*this.lightPosition[d];c.lightPosition[o]=p/f}if(this.triangleCount>0){var g=this.triShader;g.bind(),g.uniforms=c,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},p.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||h,n=t.view||h,a=t.projection||h,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(a),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:r,view:n,projection:a,clipBounds:i,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},l=this.pickShader;l.bind(),l.uniforms=s,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},p.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions[r[1]].slice(0,3),a={position:n,dataCoordinate:n,index:Math.floor(r[1]/48)};return\"cone\"===this.traceType?a.index=Math.floor(r[1]/48):\"streamtube\"===this.traceType&&(a.intensity=this.intensity[r[1]],a.velocity=this.vectors[r[1]].slice(0,3),a.divergence=this.vectors[r[1]][3],a.index=e),a},p.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()},e.exports=function(t,e,r){var n=r.shaders;1===arguments.length&&(t=(e=t).gl);var s=d(t,n),l=g(t,n),u=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));u.generateMipmap(),u.minFilter=t.LINEAR_MIPMAP_LINEAR,u.magFilter=t.LINEAR;var h=a(t),p=a(t),m=a(t),v=a(t),y=a(t),x=i(t,[{buffer:h,type:t.FLOAT,size:4},{buffer:y,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:m,type:t.FLOAT,size:4},{buffer:v,type:t.FLOAT,size:2},{buffer:p,type:t.FLOAT,size:4}]),b=new f(t,u,s,l,h,p,y,m,v,x,r.traceType||\"cone\");return b.update(e),b}},{colormap:131,\"gl-buffer\":258,\"gl-mat4/invert\":278,\"gl-mat4/multiply\":280,\"gl-shader\":312,\"gl-texture2d\":327,\"gl-vao\":332,ndarray:469}],261:[function(t,e,r){var n=t(\"glslify\"),a=n([\"precision highp float;\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nvec3 getOrthogonalVector(vec3 v) {\\n  // Return up-vector for only-z vector.\\n  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\\n  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.\\n  // Assign z = 0, x = -b, y = a:\\n  // a*-b + b*a + c*0 = -ba + ba + 0 = 0\\n  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\\n    return normalize(vec3(-v.y, v.x, 0.0));\\n  } else {\\n    return normalize(vec3(0.0, v.z, -v.y));\\n  }\\n}\\n\\n// Calculate the cone vertex and normal at the given index.\\n//\\n// The returned vertex is for a cone with its top at origin and height of 1.0,\\n// pointing in the direction of the vector attribute.\\n//\\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\\n// These vertices are used to make up the triangles of the cone by the following:\\n//   segment + 0 top vertex\\n//   segment + 1 perimeter vertex a+1\\n//   segment + 2 perimeter vertex a\\n//   segment + 3 center base vertex\\n//   segment + 4 perimeter vertex a\\n//   segment + 5 perimeter vertex a+1\\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\\n// To go from index to segment, floor(index / 6)\\n// To go from segment to angle, 2*pi * (segment/segmentCount)\\n// To go from index to segment index, index - (segment*6)\\n//\\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\\n\\n  const float segmentCount = 8.0;\\n\\n  float index = rawIndex - floor(rawIndex /\\n    (segmentCount * 6.0)) *\\n    (segmentCount * 6.0);\\n\\n  float segment = floor(0.001 + index/6.0);\\n  float segmentIndex = index - (segment*6.0);\\n\\n  normal = -normalize(d);\\n\\n  if (segmentIndex > 2.99 && segmentIndex < 3.01) {\\n    return mix(vec3(0.0), -d, coneOffset);\\n  }\\n\\n  float nextAngle = (\\n    (segmentIndex > 0.99 &&  segmentIndex < 1.01) ||\\n    (segmentIndex > 4.99 &&  segmentIndex < 5.01)\\n  ) ? 1.0 : 0.0;\\n  float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\\n\\n  vec3 v1 = mix(d, vec3(0.0), coneOffset);\\n  vec3 v2 = v1 - d;\\n\\n  vec3 u = getOrthogonalVector(d);\\n  vec3 v = normalize(cross(u, d));\\n\\n  vec3 x = u * cos(angle) * length(d)*0.25;\\n  vec3 y = v * sin(angle) * length(d)*0.25;\\n  vec3 v3 = v2 + x + y;\\n  if (segmentIndex < 3.0) {\\n    vec3 tx = u * sin(angle);\\n    vec3 ty = v * -cos(angle);\\n    vec3 tangent = tx + ty;\\n    normal = normalize(cross(v3 - v1, tangent));\\n  }\\n\\n  if (segmentIndex == 0.0) {\\n    return mix(d, vec3(0.0), coneOffset);\\n  }\\n  return v3;\\n}\\n\\nattribute vec3 vector;\\nattribute vec4 color, position;\\nattribute vec2 uv;\\n\\nuniform float vectorScale, coneScale, coneOffset;\\nuniform mat4 model, view, projection, inverseModel;\\nuniform vec3 eyePosition, lightPosition;\\n\\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  // Scale the vector magnitude to stay constant with\\n  // model & view changes.\\n  vec3 normal;\\n  vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);\\n  vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\\n\\n  //Lighting geometry parameters\\n  vec4 cameraCoordinate = view * conePosition;\\n  cameraCoordinate.xyz /= cameraCoordinate.w;\\n  f_lightDirection = lightPosition - cameraCoordinate.xyz;\\n  f_eyeDirection   = eyePosition - cameraCoordinate.xyz;\\n  f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\\n\\n  // vec4 m_position  = model * vec4(conePosition, 1.0);\\n  vec4 t_position  = view * conePosition;\\n  gl_Position      = projection * t_position;\\n\\n  f_color          = color;\\n  f_data           = conePosition.xyz;\\n  f_position       = position.xyz;\\n  f_uv             = uv;\\n}\\n\"]),i=n([\"#extension GL_OES_standard_derivatives : enable\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nfloat beckmannDistribution(float x, float roughness) {\\n  float NdotH = max(x, 0.0001);\\n  float cos2Alpha = NdotH * NdotH;\\n  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n  float roughness2 = roughness * roughness;\\n  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n  return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\nfloat cookTorranceSpecular(\\n  vec3 lightDirection,\\n  vec3 viewDirection,\\n  vec3 surfaceNormal,\\n  float roughness,\\n  float fresnel) {\\n\\n  float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\\n  float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\\n\\n  //Half angle vector\\n  vec3 H = normalize(lightDirection + viewDirection);\\n\\n  //Geometric term\\n  float NdotH = max(dot(surfaceNormal, H), 0.0);\\n  float VdotH = max(dot(viewDirection, H), 0.000001);\\n  float LdotH = max(dot(lightDirection, H), 0.000001);\\n  float G1 = (2.0 * NdotH * VdotN) / VdotH;\\n  float G2 = (2.0 * NdotH * LdotN) / LdotH;\\n  float G = min(1.0, min(G1, G2));\\n  \\n  //Distribution term\\n  float D = beckmannDistribution(NdotH, roughness);\\n\\n  //Fresnel term\\n  float F = pow(1.0 - VdotN, fresnel);\\n\\n  //Multiply terms and done\\n  return  G * F * D / max(3.14159265 * VdotN, 0.000001);\\n}\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\\nuniform sampler2D texture;\\n\\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n  vec3 N = normalize(f_normal);\\n  vec3 L = normalize(f_lightDirection);\\n  vec3 V = normalize(f_eyeDirection);\\n\\n  if(gl_FrontFacing) {\\n    N = -N;\\n  }\\n\\n  float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\\n  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n  vec4 surfaceColor = f_color * texture2D(texture, f_uv);\\n  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);\\n\\n  gl_FragColor = litColor * opacity;\\n}\\n\"]),o=n([\"precision highp float;\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nvec3 getOrthogonalVector(vec3 v) {\\n  // Return up-vector for only-z vector.\\n  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\\n  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.\\n  // Assign z = 0, x = -b, y = a:\\n  // a*-b + b*a + c*0 = -ba + ba + 0 = 0\\n  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\\n    return normalize(vec3(-v.y, v.x, 0.0));\\n  } else {\\n    return normalize(vec3(0.0, v.z, -v.y));\\n  }\\n}\\n\\n// Calculate the cone vertex and normal at the given index.\\n//\\n// The returned vertex is for a cone with its top at origin and height of 1.0,\\n// pointing in the direction of the vector attribute.\\n//\\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\\n// These vertices are used to make up the triangles of the cone by the following:\\n//   segment + 0 top vertex\\n//   segment + 1 perimeter vertex a+1\\n//   segment + 2 perimeter vertex a\\n//   segment + 3 center base vertex\\n//   segment + 4 perimeter vertex a\\n//   segment + 5 perimeter vertex a+1\\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\\n// To go from index to segment, floor(index / 6)\\n// To go from segment to angle, 2*pi * (segment/segmentCount)\\n// To go from index to segment index, index - (segment*6)\\n//\\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\\n\\n  const float segmentCount = 8.0;\\n\\n  float index = rawIndex - floor(rawIndex /\\n    (segmentCount * 6.0)) *\\n    (segmentCount * 6.0);\\n\\n  float segment = floor(0.001 + index/6.0);\\n  float segmentIndex = index - (segment*6.0);\\n\\n  normal = -normalize(d);\\n\\n  if (segmentIndex > 2.99 && segmentIndex < 3.01) {\\n    return mix(vec3(0.0), -d, coneOffset);\\n  }\\n\\n  float nextAngle = (\\n    (segmentIndex > 0.99 &&  segmentIndex < 1.01) ||\\n    (segmentIndex > 4.99 &&  segmentIndex < 5.01)\\n  ) ? 1.0 : 0.0;\\n  float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\\n\\n  vec3 v1 = mix(d, vec3(0.0), coneOffset);\\n  vec3 v2 = v1 - d;\\n\\n  vec3 u = getOrthogonalVector(d);\\n  vec3 v = normalize(cross(u, d));\\n\\n  vec3 x = u * cos(angle) * length(d)*0.25;\\n  vec3 y = v * sin(angle) * length(d)*0.25;\\n  vec3 v3 = v2 + x + y;\\n  if (segmentIndex < 3.0) {\\n    vec3 tx = u * sin(angle);\\n    vec3 ty = v * -cos(angle);\\n    vec3 tangent = tx + ty;\\n    normal = normalize(cross(v3 - v1, tangent));\\n  }\\n\\n  if (segmentIndex == 0.0) {\\n    return mix(d, vec3(0.0), coneOffset);\\n  }\\n  return v3;\\n}\\n\\nattribute vec4 vector;\\nattribute vec4 position;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform float vectorScale, coneScale, coneOffset;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  vec3 normal;\\n  vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);\\n  vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\\n  gl_Position = projection * view * conePosition;\\n  f_id        = id;\\n  f_position  = position.xyz;\\n}\\n\"]),s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3  clipBounds[2];\\nuniform float pickId;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n\\n  gl_FragColor = vec4(pickId, f_id.xyz);\\n}\"]);r.meshShader={vertex:a,fragment:i,attributes:[{name:\"position\",type:\"vec4\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"vector\",type:\"vec3\"}]},r.pickShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec4\"},{name:\"id\",type:\"vec4\"},{name:\"vector\",type:\"vec3\"}]}},{glslify:413}],262:[function(t,e,r){e.exports={0:\"NONE\",1:\"ONE\",2:\"LINE_LOOP\",3:\"LINE_STRIP\",4:\"TRIANGLES\",5:\"TRIANGLE_STRIP\",6:\"TRIANGLE_FAN\",256:\"DEPTH_BUFFER_BIT\",512:\"NEVER\",513:\"LESS\",514:\"EQUAL\",515:\"LEQUAL\",516:\"GREATER\",517:\"NOTEQUAL\",518:\"GEQUAL\",519:\"ALWAYS\",768:\"SRC_COLOR\",769:\"ONE_MINUS_SRC_COLOR\",770:\"SRC_ALPHA\",771:\"ONE_MINUS_SRC_ALPHA\",772:\"DST_ALPHA\",773:\"ONE_MINUS_DST_ALPHA\",774:\"DST_COLOR\",775:\"ONE_MINUS_DST_COLOR\",776:\"SRC_ALPHA_SATURATE\",1024:\"STENCIL_BUFFER_BIT\",1028:\"FRONT\",1029:\"BACK\",1032:\"FRONT_AND_BACK\",1280:\"INVALID_ENUM\",1281:\"INVALID_VALUE\",1282:\"INVALID_OPERATION\",1285:\"OUT_OF_MEMORY\",1286:\"INVALID_FRAMEBUFFER_OPERATION\",2304:\"CW\",2305:\"CCW\",2849:\"LINE_WIDTH\",2884:\"CULL_FACE\",2885:\"CULL_FACE_MODE\",2886:\"FRONT_FACE\",2928:\"DEPTH_RANGE\",2929:\"DEPTH_TEST\",2930:\"DEPTH_WRITEMASK\",2931:\"DEPTH_CLEAR_VALUE\",2932:\"DEPTH_FUNC\",2960:\"STENCIL_TEST\",2961:\"STENCIL_CLEAR_VALUE\",2962:\"STENCIL_FUNC\",2963:\"STENCIL_VALUE_MASK\",2964:\"STENCIL_FAIL\",2965:\"STENCIL_PASS_DEPTH_FAIL\",2966:\"STENCIL_PASS_DEPTH_PASS\",2967:\"STENCIL_REF\",2968:\"STENCIL_WRITEMASK\",2978:\"VIEWPORT\",3024:\"DITHER\",3042:\"BLEND\",3088:\"SCISSOR_BOX\",3089:\"SCISSOR_TEST\",3106:\"COLOR_CLEAR_VALUE\",3107:\"COLOR_WRITEMASK\",3317:\"UNPACK_ALIGNMENT\",3333:\"PACK_ALIGNMENT\",3379:\"MAX_TEXTURE_SIZE\",3386:\"MAX_VIEWPORT_DIMS\",3408:\"SUBPIXEL_BITS\",3410:\"RED_BITS\",3411:\"GREEN_BITS\",3412:\"BLUE_BITS\",3413:\"ALPHA_BITS\",3414:\"DEPTH_BITS\",3415:\"STENCIL_BITS\",3553:\"TEXTURE_2D\",4352:\"DONT_CARE\",4353:\"FASTEST\",4354:\"NICEST\",5120:\"BYTE\",5121:\"UNSIGNED_BYTE\",5122:\"SHORT\",5123:\"UNSIGNED_SHORT\",5124:\"INT\",5125:\"UNSIGNED_INT\",5126:\"FLOAT\",5386:\"INVERT\",5890:\"TEXTURE\",6401:\"STENCIL_INDEX\",6402:\"DEPTH_COMPONENT\",6406:\"ALPHA\",6407:\"RGB\",6408:\"RGBA\",6409:\"LUMINANCE\",6410:\"LUMINANCE_ALPHA\",7680:\"KEEP\",7681:\"REPLACE\",7682:\"INCR\",7683:\"DECR\",7936:\"VENDOR\",7937:\"RENDERER\",7938:\"VERSION\",9728:\"NEAREST\",9729:\"LINEAR\",9984:\"NEAREST_MIPMAP_NEAREST\",9985:\"LINEAR_MIPMAP_NEAREST\",9986:\"NEAREST_MIPMAP_LINEAR\",9987:\"LINEAR_MIPMAP_LINEAR\",10240:\"TEXTURE_MAG_FILTER\",10241:\"TEXTURE_MIN_FILTER\",10242:\"TEXTURE_WRAP_S\",10243:\"TEXTURE_WRAP_T\",10497:\"REPEAT\",10752:\"POLYGON_OFFSET_UNITS\",16384:\"COLOR_BUFFER_BIT\",32769:\"CONSTANT_COLOR\",32770:\"ONE_MINUS_CONSTANT_COLOR\",32771:\"CONSTANT_ALPHA\",32772:\"ONE_MINUS_CONSTANT_ALPHA\",32773:\"BLEND_COLOR\",32774:\"FUNC_ADD\",32777:\"BLEND_EQUATION_RGB\",32778:\"FUNC_SUBTRACT\",32779:\"FUNC_REVERSE_SUBTRACT\",32819:\"UNSIGNED_SHORT_4_4_4_4\",32820:\"UNSIGNED_SHORT_5_5_5_1\",32823:\"POLYGON_OFFSET_FILL\",32824:\"POLYGON_OFFSET_FACTOR\",32854:\"RGBA4\",32855:\"RGB5_A1\",32873:\"TEXTURE_BINDING_2D\",32926:\"SAMPLE_ALPHA_TO_COVERAGE\",32928:\"SAMPLE_COVERAGE\",32936:\"SAMPLE_BUFFERS\",32937:\"SAMPLES\",32938:\"SAMPLE_COVERAGE_VALUE\",32939:\"SAMPLE_COVERAGE_INVERT\",32968:\"BLEND_DST_RGB\",32969:\"BLEND_SRC_RGB\",32970:\"BLEND_DST_ALPHA\",32971:\"BLEND_SRC_ALPHA\",33071:\"CLAMP_TO_EDGE\",33170:\"GENERATE_MIPMAP_HINT\",33189:\"DEPTH_COMPONENT16\",33306:\"DEPTH_STENCIL_ATTACHMENT\",33635:\"UNSIGNED_SHORT_5_6_5\",33648:\"MIRRORED_REPEAT\",33901:\"ALIASED_POINT_SIZE_RANGE\",33902:\"ALIASED_LINE_WIDTH_RANGE\",33984:\"TEXTURE0\",33985:\"TEXTURE1\",33986:\"TEXTURE2\",33987:\"TEXTURE3\",33988:\"TEXTURE4\",33989:\"TEXTURE5\",33990:\"TEXTURE6\",33991:\"TEXTURE7\",33992:\"TEXTURE8\",33993:\"TEXTURE9\",33994:\"TEXTURE10\",33995:\"TEXTURE11\",33996:\"TEXTURE12\",33997:\"TEXTURE13\",33998:\"TEXTURE14\",33999:\"TEXTURE15\",34e3:\"TEXTURE16\",34001:\"TEXTURE17\",34002:\"TEXTURE18\",34003:\"TEXTURE19\",34004:\"TEXTURE20\",34005:\"TEXTURE21\",34006:\"TEXTURE22\",34007:\"TEXTURE23\",34008:\"TEXTURE24\",34009:\"TEXTURE25\",34010:\"TEXTURE26\",34011:\"TEXTURE27\",34012:\"TEXTURE28\",34013:\"TEXTURE29\",34014:\"TEXTURE30\",34015:\"TEXTURE31\",34016:\"ACTIVE_TEXTURE\",34024:\"MAX_RENDERBUFFER_SIZE\",34041:\"DEPTH_STENCIL\",34055:\"INCR_WRAP\",34056:\"DECR_WRAP\",34067:\"TEXTURE_CUBE_MAP\",34068:\"TEXTURE_BINDING_CUBE_MAP\",34069:\"TEXTURE_CUBE_MAP_POSITIVE_X\",34070:\"TEXTURE_CUBE_MAP_NEGATIVE_X\",34071:\"TEXTURE_CUBE_MAP_POSITIVE_Y\",34072:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\",34073:\"TEXTURE_CUBE_MAP_POSITIVE_Z\",34074:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\",34076:\"MAX_CUBE_MAP_TEXTURE_SIZE\",34338:\"VERTEX_ATTRIB_ARRAY_ENABLED\",34339:\"VERTEX_ATTRIB_ARRAY_SIZE\",34340:\"VERTEX_ATTRIB_ARRAY_STRIDE\",34341:\"VERTEX_ATTRIB_ARRAY_TYPE\",34342:\"CURRENT_VERTEX_ATTRIB\",34373:\"VERTEX_ATTRIB_ARRAY_POINTER\",34466:\"NUM_COMPRESSED_TEXTURE_FORMATS\",34467:\"COMPRESSED_TEXTURE_FORMATS\",34660:\"BUFFER_SIZE\",34661:\"BUFFER_USAGE\",34816:\"STENCIL_BACK_FUNC\",34817:\"STENCIL_BACK_FAIL\",34818:\"STENCIL_BACK_PASS_DEPTH_FAIL\",34819:\"STENCIL_BACK_PASS_DEPTH_PASS\",34877:\"BLEND_EQUATION_ALPHA\",34921:\"MAX_VERTEX_ATTRIBS\",34922:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\",34930:\"MAX_TEXTURE_IMAGE_UNITS\",34962:\"ARRAY_BUFFER\",34963:\"ELEMENT_ARRAY_BUFFER\",34964:\"ARRAY_BUFFER_BINDING\",34965:\"ELEMENT_ARRAY_BUFFER_BINDING\",34975:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\",35040:\"STREAM_DRAW\",35044:\"STATIC_DRAW\",35048:\"DYNAMIC_DRAW\",35632:\"FRAGMENT_SHADER\",35633:\"VERTEX_SHADER\",35660:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\",35661:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\",35663:\"SHADER_TYPE\",35664:\"FLOAT_VEC2\",35665:\"FLOAT_VEC3\",35666:\"FLOAT_VEC4\",35667:\"INT_VEC2\",35668:\"INT_VEC3\",35669:\"INT_VEC4\",35670:\"BOOL\",35671:\"BOOL_VEC2\",35672:\"BOOL_VEC3\",35673:\"BOOL_VEC4\",35674:\"FLOAT_MAT2\",35675:\"FLOAT_MAT3\",35676:\"FLOAT_MAT4\",35678:\"SAMPLER_2D\",35680:\"SAMPLER_CUBE\",35712:\"DELETE_STATUS\",35713:\"COMPILE_STATUS\",35714:\"LINK_STATUS\",35715:\"VALIDATE_STATUS\",35716:\"INFO_LOG_LENGTH\",35717:\"ATTACHED_SHADERS\",35718:\"ACTIVE_UNIFORMS\",35719:\"ACTIVE_UNIFORM_MAX_LENGTH\",35720:\"SHADER_SOURCE_LENGTH\",35721:\"ACTIVE_ATTRIBUTES\",35722:\"ACTIVE_ATTRIBUTE_MAX_LENGTH\",35724:\"SHADING_LANGUAGE_VERSION\",35725:\"CURRENT_PROGRAM\",36003:\"STENCIL_BACK_REF\",36004:\"STENCIL_BACK_VALUE_MASK\",36005:\"STENCIL_BACK_WRITEMASK\",36006:\"FRAMEBUFFER_BINDING\",36007:\"RENDERBUFFER_BINDING\",36048:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\",36049:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\",36050:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\",36051:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\",36053:\"FRAMEBUFFER_COMPLETE\",36054:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\",36055:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\",36057:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\",36061:\"FRAMEBUFFER_UNSUPPORTED\",36064:\"COLOR_ATTACHMENT0\",36096:\"DEPTH_ATTACHMENT\",36128:\"STENCIL_ATTACHMENT\",36160:\"FRAMEBUFFER\",36161:\"RENDERBUFFER\",36162:\"RENDERBUFFER_WIDTH\",36163:\"RENDERBUFFER_HEIGHT\",36164:\"RENDERBUFFER_INTERNAL_FORMAT\",36168:\"STENCIL_INDEX8\",36176:\"RENDERBUFFER_RED_SIZE\",36177:\"RENDERBUFFER_GREEN_SIZE\",36178:\"RENDERBUFFER_BLUE_SIZE\",36179:\"RENDERBUFFER_ALPHA_SIZE\",36180:\"RENDERBUFFER_DEPTH_SIZE\",36181:\"RENDERBUFFER_STENCIL_SIZE\",36194:\"RGB565\",36336:\"LOW_FLOAT\",36337:\"MEDIUM_FLOAT\",36338:\"HIGH_FLOAT\",36339:\"LOW_INT\",36340:\"MEDIUM_INT\",36341:\"HIGH_INT\",36346:\"SHADER_COMPILER\",36347:\"MAX_VERTEX_UNIFORM_VECTORS\",36348:\"MAX_VARYING_VECTORS\",36349:\"MAX_FRAGMENT_UNIFORM_VECTORS\",37440:\"UNPACK_FLIP_Y_WEBGL\",37441:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\",37442:\"CONTEXT_LOST_WEBGL\",37443:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\",37444:\"BROWSER_DEFAULT_WEBGL\"}},{}],263:[function(t,e,r){var n=t(\"./1.0/numbers\");e.exports=function(t){return n[t]}},{\"./1.0/numbers\":262}],264:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e),o=a(e,[{buffer:r,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:r,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:r,type:e.FLOAT,size:3,offset:28,stride:40}]),l=i(e);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var c=new s(e,r,o,l);return c.update(t),c};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"./shaders/index\"),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.shader=n,this.buffer=e,this.vao=r,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var l=s.prototype;function c(t,e){for(var r=0;r<3;++r)t[0][r]=Math.min(t[0][r],e[r]),t[1][r]=Math.max(t[1][r],e[r])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(t){var e=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=t.view||o,a=r.projection=t.projection||o;r.model=t.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var i=n[12],s=n[13],l=n[14],c=n[15],u=(t._ortho||!1?2:1)*this.pixelRatio*(a[3]*i+a[7]*s+a[11]*l+a[15]*c)/e.drawingBufferHeight;this.vao.bind();for(var h=0;h<3;++h)e.lineWidth(this.lineWidth[h]*this.pixelRatio),r.capSize=this.capSize[h]*u,this.lineCount[h]&&e.drawArrays(e.LINES,this.lineOffset[h],this.lineCount[h]);this.vao.unbind()};var u=function(){for(var t=new Array(3),e=0;e<3;++e){for(var r=[],n=1;n<=2;++n)for(var a=-1;a<=1;a+=2){var i=[0,0,0];i[(n+e)%3]=a,r.push(i)}t[e]=r}return t}();function h(t,e,r,n){for(var a=u[n],i=0;i<a.length;++i){var o=a[i];t.push(e[0],e[1],e[2],r[0],r[1],r[2],r[3],o[0],o[1],o[2])}return a.length}l.update=function(t){\"lineWidth\"in(t=t||{})&&(this.lineWidth=t.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),\"capSize\"in t&&(this.capSize=t.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var e=t.color||[[0,0,0],[0,0,0],[0,0,0]],r=t.position,n=t.error;if(Array.isArray(e[0])||(e=[e,e,e]),r&&n){var a=[],i=r.length,o=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var s=0;s<3;++s){this.lineOffset[s]=o;t:for(var l=0;l<i;++l){for(var u=r[l],f=0;f<3;++f)if(isNaN(u[f])||!isFinite(u[f]))continue t;var p=n[l],d=e[s];if(Array.isArray(d[0])&&(d=e[l]),3===d.length?d=[d[0],d[1],d[2],1]:4===d.length&&(d=[d[0],d[1],d[2],d[3]],!this.hasAlpha&&d[3]<1&&(this.hasAlpha=!0)),!isNaN(p[0][s])&&!isNaN(p[1][s])){var g;if(p[0][s]<0)(g=u.slice())[s]+=p[0][s],a.push(u[0],u[1],u[2],d[0],d[1],d[2],d[3],0,0,0,g[0],g[1],g[2],d[0],d[1],d[2],d[3],0,0,0),c(this.bounds,g),o+=2+h(a,g,d,s);if(p[1][s]>0)(g=u.slice())[s]+=p[1][s],a.push(u[0],u[1],u[2],d[0],d[1],d[2],d[3],0,0,0,g[0],g[1],g[2],d[0],d[1],d[2],d[3],0,0,0),c(this.bounds,g),o+=2+h(a,g,d,s)}}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(a)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},{\"./shaders/index\":265,\"gl-buffer\":258,\"gl-vao\":332}],265:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, offset;\\nattribute vec4 color;\\nuniform mat4 model, view, projection;\\nuniform float capSize;\\nvarying vec4 fragColor;\\nvarying vec3 fragPosition;\\n\\nvoid main() {\\n  vec4 worldPosition  = model * vec4(position, 1.0);\\n  worldPosition       = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\\n  gl_Position         = projection * view * worldPosition;\\n  fragColor           = color;\\n  fragPosition        = position;\\n}\"]),o=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float opacity;\\nvarying vec3 fragPosition;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n  if (\\n    outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||\\n    fragColor.a * opacity == 0.\\n  ) discard;\\n\\n  gl_FragColor = opacity * fragColor;\\n}\"]);e.exports=function(t){return a(t,i,o,null,[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"offset\",type:\"vec3\"}])}},{\"gl-shader\":312,glslify:413}],266:[function(t,e,r){\"use strict\";var n=t(\"gl-texture2d\");e.exports=function(t,e,r,n){a||(a=t.FRAMEBUFFER_UNSUPPORTED,i=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension(\"WEBGL_draw_buffers\");!l&&c&&function(t,e){var r=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(r+1);for(var n=0;n<=r;++n){for(var a=new Array(r),i=0;i<n;++i)a[i]=t.COLOR_ATTACHMENT0+i;for(i=n;i<r;++i)a[i]=t.NONE;l[n]=a}}(t,c);Array.isArray(e)&&(n=r,r=0|e[1],e=0|e[0]);if(\"number\"!=typeof e)throw new Error(\"gl-fbo: Missing shape parameter\");var u=t.getParameter(t.MAX_RENDERBUFFER_SIZE);if(e<0||e>u||r<0||r>u)throw new Error(\"gl-fbo: Parameters are too large for FBO\");var h=1;if(\"color\"in(n=n||{})){if((h=Math.max(0|n.color,0))<0)throw new Error(\"gl-fbo: Must specify a nonnegative number of colors\");if(h>1){if(!c)throw new Error(\"gl-fbo: Multiple draw buffer extension not supported\");if(h>t.getParameter(c.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error(\"gl-fbo: Context does not support \"+h+\" draw buffers\")}}var f=t.UNSIGNED_BYTE,p=t.getExtension(\"OES_texture_float\");if(n.float&&h>0){if(!p)throw new Error(\"gl-fbo: Context does not support floating point textures\");f=t.FLOAT}else n.preferFloat&&h>0&&p&&(f=t.FLOAT);var g=!0;\"depth\"in n&&(g=!!n.depth);var m=!1;\"stencil\"in n&&(m=!!n.stencil);return new d(t,e,r,f,h,g,m,c)};var a,i,o,s,l=null;function c(t){return[t.getParameter(t.FRAMEBUFFER_BINDING),t.getParameter(t.RENDERBUFFER_BINDING),t.getParameter(t.TEXTURE_BINDING_2D)]}function u(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function h(t){switch(t){case a:throw new Error(\"gl-fbo: Framebuffer unsupported\");case i:throw new Error(\"gl-fbo: Framebuffer incomplete attachment\");case o:throw new Error(\"gl-fbo: Framebuffer incomplete dimensions\");case s:throw new Error(\"gl-fbo: Framebuffer incomplete missing attachment\");default:throw new Error(\"gl-fbo: Framebuffer failed for unspecified reason\")}}function f(t,e,r,a,i,o){if(!a)return null;var s=n(t,e,r,i,a);return s.magFilter=t.NEAREST,s.minFilter=t.NEAREST,s.mipSamples=1,s.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,o,t.TEXTURE_2D,s.handle,0),s}function p(t,e,r,n,a){var i=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,i),t.renderbufferStorage(t.RENDERBUFFER,n,e,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,a,t.RENDERBUFFER,i),i}function d(t,e,r,n,a,i,o,s){this.gl=t,this._shape=[0|e,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(a);for(var d=0;d<a;++d)this.color[d]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=n,this._useDepth=i,this._useStencil=o;var g=this,m=[0|e,0|r];Object.defineProperties(m,{0:{get:function(){return g._shape[0]},set:function(t){return g.width=t}},1:{get:function(){return g._shape[1]},set:function(t){return g.height=t}}}),this._shapeVector=m,function(t){var e=c(t.gl),r=t.gl,n=t.handle=r.createFramebuffer(),a=t._shape[0],i=t._shape[1],o=t.color.length,s=t._ext,d=t._useStencil,g=t._useDepth,m=t._colorType;r.bindFramebuffer(r.FRAMEBUFFER,n);for(var v=0;v<o;++v)t.color[v]=f(r,a,i,m,r.RGBA,r.COLOR_ATTACHMENT0+v);0===o?(t._color_rb=p(r,a,i,r.RGBA4,r.COLOR_ATTACHMENT0),s&&s.drawBuffersWEBGL(l[0])):o>1&&s.drawBuffersWEBGL(l[o]);var y=r.getExtension(\"WEBGL_depth_texture\");y?d?t.depth=f(r,a,i,y.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):g&&(t.depth=f(r,a,i,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):g&&d?t._depth_rb=p(r,a,i,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):g?t._depth_rb=p(r,a,i,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):d&&(t._depth_rb=p(r,a,i,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){t._destroyed=!0,r.bindFramebuffer(r.FRAMEBUFFER,null),r.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(r.deleteRenderbuffer(t._depth_rb),t._depth_rb=null);for(v=0;v<t.color.length;++v)t.color[v].dispose(),t.color[v]=null;t._color_rb&&(r.deleteRenderbuffer(t._color_rb),t._color_rb=null),u(r,e),h(x)}u(r,e)}(this)}var g=d.prototype;function m(t,e,r){if(t._destroyed)throw new Error(\"gl-fbo: Can't resize destroyed FBO\");if(t._shape[0]!==e||t._shape[1]!==r){var n=t.gl,a=n.getParameter(n.MAX_RENDERBUFFER_SIZE);if(e<0||e>a||r<0||r>a)throw new Error(\"gl-fbo: Can't resize FBO, invalid dimensions\");t._shape[0]=e,t._shape[1]=r;for(var i=c(n),o=0;o<t.color.length;++o)t.color[o].shape=t._shape;t._color_rb&&(n.bindRenderbuffer(n.RENDERBUFFER,t._color_rb),n.renderbufferStorage(n.RENDERBUFFER,n.RGBA4,t._shape[0],t._shape[1])),t.depth&&(t.depth.shape=t._shape),t._depth_rb&&(n.bindRenderbuffer(n.RENDERBUFFER,t._depth_rb),t._useDepth&&t._useStencil?n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_STENCIL,t._shape[0],t._shape[1]):t._useDepth?n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_COMPONENT16,t._shape[0],t._shape[1]):t._useStencil&&n.renderbufferStorage(n.RENDERBUFFER,n.STENCIL_INDEX,t._shape[0],t._shape[1])),n.bindFramebuffer(n.FRAMEBUFFER,t.handle);var s=n.checkFramebufferStatus(n.FRAMEBUFFER);s!==n.FRAMEBUFFER_COMPLETE&&(t.dispose(),u(n,i),h(s)),u(n,i)}}Object.defineProperties(g,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(t){if(Array.isArray(t)||(t=[0|t,0|t]),2!==t.length)throw new Error(\"gl-fbo: Shape vector must be length 2\");var e=0|t[0],r=0|t[1];return m(this,e,r),[e,r]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(t){return m(this,t|=0,this._shape[1]),t},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(t){return t|=0,m(this,this._shape[0],t),t},enumerable:!1}}),g.bind=function(){if(!this._destroyed){var t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,this.handle),t.viewport(0,0,this._shape[0],this._shape[1])}},g.dispose=function(){if(!this._destroyed){this._destroyed=!0;var t=this.gl;t.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(t.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var e=0;e<this.color.length;++e)this.color[e].dispose(),this.color[e]=null;this._color_rb&&(t.deleteRenderbuffer(this._color_rb),this._color_rb=null)}}},{\"gl-texture2d\":327}],267:[function(t,e,r){var n=t(\"sprintf-js\").sprintf,a=t(\"gl-constants/lookup\"),i=t(\"glsl-shader-name\"),o=t(\"add-line-numbers\");e.exports=function(t,e,r){\"use strict\";var s=i(e)||\"of unknown name (see npm glsl-shader-name)\",l=\"unknown type\";void 0!==r&&(l=r===a.FRAGMENT_SHADER?\"fragment\":\"vertex\");for(var c=n(\"Error compiling %s shader %s:\\n\",l,s),u=n(\"%s%s\",c,t),h=t.split(\"\\n\"),f={},p=0;p<h.length;p++){var d=h[p];if(\"\"!==d&&\"\\0\"!==d){var g=parseInt(d.split(\":\")[2]);if(isNaN(g))throw new Error(n(\"Could not parse error: %s\",d));f[g]=d}}var m=o(e).split(\"\\n\");for(p=0;p<m.length;p++)if(f[p+3]||f[p+2]||f[p+1]){var v=m[p];if(c+=v+\"\\n\",f[p+1]){var y=f[p+1];y=y.substr(y.split(\":\",3).join(\":\").length+1).trim(),c+=n(\"^^^ %s\\n\\n\",y)}}return{long:c.trim(),short:u.trim()}}},{\"add-line-numbers\":66,\"gl-constants/lookup\":263,\"glsl-shader-name\":405,\"sprintf-js\":539}],268:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=t.gl,n=o(r,l.vertex,l.fragment),a=o(r,l.pickVertex,l.pickFragment),i=s(r),u=s(r),h=s(r),f=s(r),p=new c(t,n,a,i,u,h,f);return p.update(e),t.addObject(p),p};var n=t(\"binary-search-bounds\"),a=t(\"iota-array\"),i=t(\"typedarray-pool\"),o=t(\"gl-shader\"),s=t(\"gl-buffer\"),l=t(\"./lib/shaders\");function c(t,e,r,n,a,i,o){this.plot=t,this.shader=e,this.pickShader=r,this.positionBuffer=n,this.weightBuffer=a,this.colorBuffer=i,this.idBuffer=o,this.xData=[],this.yData=[],this.shape=[0,0],this.bounds=[1/0,1/0,-1/0,-1/0],this.pickOffset=0}var u,h=c.prototype,f=[0,0,1,0,0,1,1,0,1,1,0,1];h.draw=(u=[1,0,0,0,1,0,0,0,1],function(){var t=this.plot,e=this.shader,r=this.bounds,n=this.numVertices;if(!(n<=0)){var a=t.gl,i=t.dataBox,o=r[2]-r[0],s=r[3]-r[1],l=i[2]-i[0],c=i[3]-i[1];u[0]=2*o/l,u[4]=2*s/c,u[6]=2*(r[0]-i[0])/l-1,u[7]=2*(r[1]-i[1])/c-1,e.bind();var h=e.uniforms;h.viewTransform=u,h.shape=this.shape;var f=e.attributes;this.positionBuffer.bind(),f.position.pointer(),this.weightBuffer.bind(),f.weight.pointer(a.UNSIGNED_BYTE,!1),this.colorBuffer.bind(),f.color.pointer(a.UNSIGNED_BYTE,!0),a.drawArrays(a.TRIANGLES,0,n)}}),h.drawPick=function(){var t=[1,0,0,0,1,0,0,0,1],e=[0,0,0,0];return function(r){var n=this.plot,a=this.pickShader,i=this.bounds,o=this.numVertices;if(!(o<=0)){var s=n.gl,l=n.dataBox,c=i[2]-i[0],u=i[3]-i[1],h=l[2]-l[0],f=l[3]-l[1];t[0]=2*c/h,t[4]=2*u/f,t[6]=2*(i[0]-l[0])/h-1,t[7]=2*(i[1]-l[1])/f-1;for(var p=0;p<4;++p)e[p]=r>>8*p&255;this.pickOffset=r,a.bind();var d=a.uniforms;d.viewTransform=t,d.pickOffset=e,d.shape=this.shape;var g=a.attributes;return this.positionBuffer.bind(),g.position.pointer(),this.weightBuffer.bind(),g.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),g.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),r+this.shape[0]*this.shape[1]}}}(),h.pick=function(t,e,r){var n=this.pickOffset,a=this.shape[0]*this.shape[1];if(r<n||r>=n+a)return null;var i=r-n,o=this.xData,s=this.yData;return{object:this,pointId:i,dataCoord:[o[i%this.shape[0]],s[i/this.shape[0]|0]]}},h.update=function(t){var e=(t=t||{}).shape||[0,0],r=t.x||a(e[0]),o=t.y||a(e[1]),s=t.z||new Float32Array(e[0]*e[1]),l=!1!==t.zsmooth;this.xData=r,this.yData=o;var c,u,h,p,d=t.colorLevels||[0],g=t.colorValues||[0,0,0,1],m=d.length,v=this.bounds;l?(c=v[0]=r[0],u=v[1]=o[0],h=v[2]=r[r.length-1],p=v[3]=o[o.length-1]):(c=v[0]=r[0]+(r[1]-r[0])/2,u=v[1]=o[0]+(o[1]-o[0])/2,h=v[2]=r[r.length-1]+(r[r.length-1]-r[r.length-2])/2,p=v[3]=o[o.length-1]+(o[o.length-1]-o[o.length-2])/2);var y=1/(h-c),x=1/(p-u),b=e[0],_=e[1];this.shape=[b,_];var w=(l?(b-1)*(_-1):b*_)*(f.length>>>1);this.numVertices=w;for(var T=i.mallocUint8(4*w),k=i.mallocFloat32(2*w),M=i.mallocUint8(2*w),A=i.mallocUint32(w),S=0,E=l?b-1:b,C=l?_-1:_,L=0;L<C;++L){var P,I;l?(P=x*(o[L]-u),I=x*(o[L+1]-u)):(P=L<_-1?x*(o[L]-(o[L+1]-o[L])/2-u):x*(o[L]-(o[L]-o[L-1])/2-u),I=L<_-1?x*(o[L]+(o[L+1]-o[L])/2-u):x*(o[L]+(o[L]-o[L-1])/2-u));for(var z=0;z<E;++z){var O,D;l?(O=y*(r[z]-c),D=y*(r[z+1]-c)):(O=z<b-1?y*(r[z]-(r[z+1]-r[z])/2-c):y*(r[z]-(r[z]-r[z-1])/2-c),D=z<b-1?y*(r[z]+(r[z+1]-r[z])/2-c):y*(r[z]+(r[z]-r[z-1])/2-c));for(var R=0;R<f.length;R+=2){var F,B,N,j,U=f[R],V=f[R+1],q=s[l?(L+V)*b+(z+U):L*b+z],H=n.le(d,q);if(H<0)F=g[0],B=g[1],N=g[2],j=g[3];else if(H===m-1)F=g[4*m-4],B=g[4*m-3],N=g[4*m-2],j=g[4*m-1];else{var G=(q-d[H])/(d[H+1]-d[H]),Y=1-G,W=4*H,Z=4*(H+1);F=Y*g[W]+G*g[Z],B=Y*g[W+1]+G*g[Z+1],N=Y*g[W+2]+G*g[Z+2],j=Y*g[W+3]+G*g[Z+3]}T[4*S]=255*F,T[4*S+1]=255*B,T[4*S+2]=255*N,T[4*S+3]=255*j,k[2*S]=.5*O+.5*D,k[2*S+1]=.5*P+.5*I,M[2*S]=U,M[2*S+1]=V,A[S]=L*b+z,S+=1}}}this.positionBuffer.update(k),this.weightBuffer.update(M),this.colorBuffer.update(T),this.idBuffer.update(A),i.free(k),i.free(T),i.free(M),i.free(A)},h.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.positionBuffer.dispose(),this.weightBuffer.dispose(),this.colorBuffer.dispose(),this.idBuffer.dispose(),this.plot.removeObject(this)}},{\"./lib/shaders\":269,\"binary-search-bounds\":96,\"gl-buffer\":258,\"gl-shader\":312,\"iota-array\":437,\"typedarray-pool\":567}],269:[function(t,e,r){\"use strict\";var n=t(\"glslify\");e.exports={fragment:n([\"precision lowp float;\\n#define GLSLIFY 1\\nvarying vec4 fragColor;\\nvoid main() {\\n  gl_FragColor = vec4(fragColor.rgb * fragColor.a, fragColor.a);\\n}\\n\"]),vertex:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\nattribute vec4 color;\\nattribute vec2 weight;\\n\\nuniform vec2 shape;\\nuniform mat3 viewTransform;\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n  vec3 vPosition = viewTransform * vec3( position + (weight-.5)/(shape-1.) , 1.0);\\n  fragColor = color;\\n  gl_Position = vec4(vPosition.xy, 0, vPosition.z);\\n}\\n\"]),pickFragment:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragId;\\nvarying vec2 vWeight;\\n\\nuniform vec2 shape;\\nuniform vec4 pickOffset;\\n\\nvoid main() {\\n  vec2 d = step(.5, vWeight);\\n  vec4 id = fragId + pickOffset;\\n  id.x += d.x + d.y*shape.x;\\n\\n  id.y += floor(id.x / 256.0);\\n  id.x -= floor(id.x / 256.0) * 256.0;\\n\\n  id.z += floor(id.y / 256.0);\\n  id.y -= floor(id.y / 256.0) * 256.0;\\n\\n  id.w += floor(id.z / 256.0);\\n  id.z -= floor(id.z / 256.0) * 256.0;\\n\\n  gl_FragColor = id/255.;\\n}\\n\"]),pickVertex:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\nattribute vec4 pickId;\\nattribute vec2 weight;\\n\\nuniform vec2 shape;\\nuniform mat3 viewTransform;\\n\\nvarying vec4 fragId;\\nvarying vec2 vWeight;\\n\\nvoid main() {\\n  vWeight = weight;\\n\\n  fragId = pickId;\\n\\n  vec3 vPosition = viewTransform * vec3( position + (weight-.5)/(shape-1.) , 1.0);\\n  gl_Position = vec4(vPosition.xy, 0, vPosition.z);\\n}\\n\"])}},{glslify:413}],270:[function(t,e,r){var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, nextPosition;\\nattribute float arcLength, lineWidth;\\nattribute vec4 color;\\n\\nuniform vec2 screenShape;\\nuniform float pixelRatio;\\nuniform mat4 model, view, projection;\\n\\nvarying vec4 fragColor;\\nvarying vec3 worldPosition;\\nvarying float pixelArcLength;\\n\\nvec4 project(vec3 p) {\\n  return projection * view * model * vec4(p, 1.0);\\n}\\n\\nvoid main() {\\n  vec4 startPoint = project(position);\\n  vec4 endPoint   = project(nextPosition);\\n\\n  vec2 A = startPoint.xy / startPoint.w;\\n  vec2 B =   endPoint.xy /   endPoint.w;\\n\\n  float clipAngle = atan(\\n    (B.y - A.y) * screenShape.y,\\n    (B.x - A.x) * screenShape.x\\n  );\\n\\n  vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(\\n    sin(clipAngle),\\n    -cos(clipAngle)\\n  ) / screenShape;\\n\\n  gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);\\n\\n  worldPosition = position;\\n  pixelArcLength = arcLength;\\n  fragColor = color;\\n}\\n\"]),o=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3      clipBounds[2];\\nuniform sampler2D dashTexture;\\nuniform float     dashScale;\\nuniform float     opacity;\\n\\nvarying vec3    worldPosition;\\nvarying float   pixelArcLength;\\nvarying vec4    fragColor;\\n\\nvoid main() {\\n  if (\\n    outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||\\n    fragColor.a * opacity == 0.\\n  ) discard;\\n\\n  float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;\\n  if(dashWeight < 0.5) {\\n    discard;\\n  }\\n  gl_FragColor = fragColor * opacity;\\n}\\n\"]),s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\n#define FLOAT_MAX  1.70141184e38\\n#define FLOAT_MIN  1.17549435e-38\\n\\n// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl\\nvec4 packFloat(float v) {\\n  float av = abs(v);\\n\\n  //Handle special cases\\n  if(av < FLOAT_MIN) {\\n    return vec4(0.0, 0.0, 0.0, 0.0);\\n  } else if(v > FLOAT_MAX) {\\n    return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;\\n  } else if(v < -FLOAT_MAX) {\\n    return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;\\n  }\\n\\n  vec4 c = vec4(0,0,0,0);\\n\\n  //Compute exponent and mantissa\\n  float e = floor(log2(av));\\n  float m = av * pow(2.0, -e) - 1.0;\\n\\n  //Unpack mantissa\\n  c[1] = floor(128.0 * m);\\n  m -= c[1] / 128.0;\\n  c[2] = floor(32768.0 * m);\\n  m -= c[2] / 32768.0;\\n  c[3] = floor(8388608.0 * m);\\n\\n  //Unpack exponent\\n  float ebias = e + 127.0;\\n  c[0] = floor(ebias / 2.0);\\n  ebias -= c[0] * 2.0;\\n  c[1] += floor(ebias) * 128.0;\\n\\n  //Unpack sign bit\\n  c[0] += 128.0 * step(0.0, -v);\\n\\n  //Scale back to range\\n  return c / 255.0;\\n}\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform float pickId;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec3 worldPosition;\\nvarying float pixelArcLength;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;\\n\\n  gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);\\n}\"]),l=[{name:\"position\",type:\"vec3\"},{name:\"nextPosition\",type:\"vec3\"},{name:\"arcLength\",type:\"float\"},{name:\"lineWidth\",type:\"float\"},{name:\"color\",type:\"vec4\"}];r.createShader=function(t){return a(t,i,o,null,l)},r.createPickShader=function(t){return a(t,i,s,null,l)}},{\"gl-shader\":312,glslify:413}],271:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl||t.scene&&t.scene.gl,r=h(e);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var o=f(e);o.attributes.position.location=0,o.attributes.nextPosition.location=1,o.attributes.arcLength.location=2,o.attributes.lineWidth.location=3,o.attributes.color.location=4;for(var s=n(e),l=a(e,[{buffer:s,size:3,offset:0,stride:48},{buffer:s,size:3,offset:12,stride:48},{buffer:s,size:1,offset:24,stride:48},{buffer:s,size:1,offset:28,stride:48},{buffer:s,size:4,offset:32,stride:48}]),u=c(new Array(1024),[256,1,4]),p=0;p<1024;++p)u.data[p]=255;var d=i(e,u);d.wrap=e.REPEAT;var g=new v(e,r,o,s,l,d);return g.update(t),g};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"gl-texture2d\"),o=new Uint8Array(4),s=new Float32Array(o.buffer);var l=t(\"binary-search-bounds\"),c=t(\"ndarray\"),u=t(\"./lib/shaders\"),h=u.createShader,f=u.createPickShader,p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function d(t,e){for(var r=0,n=0;n<3;++n){var a=t[n]-e[n];r+=a*a}return Math.sqrt(r)}function g(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;r<3;++r)e[0][r]=Math.max(t[0][r],e[0][r]),e[1][r]=Math.min(t[1][r],e[1][r]);return e}function m(t,e,r,n){this.arcLength=t,this.position=e,this.index=r,this.dataCoordinate=n}function v(t,e,r,n,a,i){this.gl=t,this.shader=e,this.pickShader=r,this.buffer=n,this.vao=a,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=i,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=v.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(t){this.pickId=t},y.drawTransparent=y.draw=function(t){if(this.vertexCount){var e=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,clipBounds:g(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.drawPick=function(t){if(this.vertexCount){var e=this.gl,r=this.pickShader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,pickId:this.pickId,clipBounds:g(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.update=function(t){var e,r;this.dirty=!0;var n=!!t.connectGaps;\"dashScale\"in t&&(this.dashScale=t.dashScale),this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var a=[],i=[],o=[],s=0,u=0,h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],f=t.position||t.positions;if(f){var p=t.color||t.colors||[0,0,0,1],g=t.lineWidth||1,m=!1;t:for(e=1;e<f.length;++e){var v,y,x,b=f[e-1],_=f[e];for(i.push(s),o.push(b.slice()),r=0;r<3;++r){if(isNaN(b[r])||isNaN(_[r])||!isFinite(b[r])||!isFinite(_[r])){if(!n&&a.length>0){for(var w=0;w<24;++w)a.push(a[a.length-12]);u+=2,m=!0}continue t}h[0][r]=Math.min(h[0][r],b[r],_[r]),h[1][r]=Math.max(h[1][r],b[r],_[r])}Array.isArray(p[0])?(v=p.length>e-1?p[e-1]:p.length>0?p[p.length-1]:[0,0,0,1],y=p.length>e?p[e]:p.length>0?p[p.length-1]:[0,0,0,1]):v=y=p,3===v.length&&(v=[v[0],v[1],v[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&v[3]<1&&(this.hasAlpha=!0),x=Array.isArray(g)?g.length>e-1?g[e-1]:g.length>0?g[g.length-1]:[0,0,0,1]:g;var T=s;if(s+=d(b,_),m){for(r=0;r<2;++r)a.push(b[0],b[1],b[2],_[0],_[1],_[2],T,x,v[0],v[1],v[2],v[3]);u+=2,m=!1}a.push(b[0],b[1],b[2],_[0],_[1],_[2],T,x,v[0],v[1],v[2],v[3],b[0],b[1],b[2],_[0],_[1],_[2],T,-x,v[0],v[1],v[2],v[3],_[0],_[1],_[2],b[0],b[1],b[2],s,-x,y[0],y[1],y[2],y[3],_[0],_[1],_[2],b[0],b[1],b[2],s,x,y[0],y[1],y[2],y[3]),u+=4}}if(this.buffer.update(a),i.push(s),o.push(f[f.length-1].slice()),this.bounds=h,this.vertexCount=u,this.points=o,this.arcLength=i,\"dashes\"in t){var k=t.dashes.slice();for(k.unshift(0),e=1;e<k.length;++e)k[e]=k[e-1]+k[e];var M=c(new Array(1024),[256,1,4]);for(e=0;e<256;++e){for(r=0;r<4;++r)M.set(e,0,r,0);1&l.le(k,k[k.length-1]*e/255)?M.set(e,0,0,0):M.set(e,0,0,255)}this.texture.setPixels(M)}},y.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},y.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=function(t,e,r,n){return o[0]=n,o[1]=r,o[2]=e,o[3]=t,s[0]}(t.value[0],t.value[1],t.value[2],0),r=l.le(this.arcLength,e);if(r<0)return null;if(r===this.arcLength.length-1)return new m(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),r);for(var n=this.points[r],a=this.points[Math.min(r+1,this.points.length-1)],i=(e-this.arcLength[r])/(this.arcLength[r+1]-this.arcLength[r]),c=1-i,u=[0,0,0],h=0;h<3;++h)u[h]=c*n[h]+i*a[h];var f=Math.min(i<.5?r:r+1,this.points.length-1);return new m(e,u,f,this.points[f])}},{\"./lib/shaders\":270,\"binary-search-bounds\":96,\"gl-buffer\":258,\"gl-texture2d\":327,\"gl-vao\":332,ndarray:469}],272:[function(t,e,r){e.exports=function(t){var e=new Float32Array(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},{}],273:[function(t,e,r){e.exports=function(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},{}],274:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3],i=t[4],o=t[5],s=t[6],l=t[7],c=t[8],u=t[9],h=t[10],f=t[11],p=t[12],d=t[13],g=t[14],m=t[15];return(e*o-r*i)*(h*m-f*g)-(e*s-n*i)*(u*m-f*d)+(e*l-a*i)*(u*g-h*d)+(r*s-n*o)*(c*m-f*p)-(r*l-a*o)*(c*g-h*p)+(n*l-a*s)*(c*d-u*p)}},{}],275:[function(t,e,r){e.exports=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=r+r,s=n+n,l=a+a,c=r*o,u=n*o,h=n*s,f=a*o,p=a*s,d=a*l,g=i*o,m=i*s,v=i*l;return t[0]=1-h-d,t[1]=u+v,t[2]=f-m,t[3]=0,t[4]=u-v,t[5]=1-c-d,t[6]=p+g,t[7]=0,t[8]=f+m,t[9]=p-g,t[10]=1-c-h,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},{}],276:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3],s=n+n,l=a+a,c=i+i,u=n*s,h=n*l,f=n*c,p=a*l,d=a*c,g=i*c,m=o*s,v=o*l,y=o*c;return t[0]=1-(p+g),t[1]=h+y,t[2]=f-v,t[3]=0,t[4]=h-y,t[5]=1-(u+g),t[6]=d+m,t[7]=0,t[8]=f+v,t[9]=d-m,t[10]=1-(u+p),t[11]=0,t[12]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}},{}],277:[function(t,e,r){e.exports=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},{}],278:[function(t,e,r){e.exports=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],g=e[13],m=e[14],v=e[15],y=r*s-n*o,x=r*l-a*o,b=r*c-i*o,_=n*l-a*s,w=n*c-i*s,T=a*c-i*l,k=u*g-h*d,M=u*m-f*d,A=u*v-p*d,S=h*m-f*g,E=h*v-p*g,C=f*v-p*m,L=y*C-x*E+b*S+_*A-w*M+T*k;if(!L)return null;return L=1/L,t[0]=(s*C-l*E+c*S)*L,t[1]=(a*E-n*C-i*S)*L,t[2]=(g*T-m*w+v*_)*L,t[3]=(f*w-h*T-p*_)*L,t[4]=(l*A-o*C-c*M)*L,t[5]=(r*C-a*A+i*M)*L,t[6]=(m*b-d*T-v*x)*L,t[7]=(u*T-f*b+p*x)*L,t[8]=(o*E-s*A+c*k)*L,t[9]=(n*A-r*E-i*k)*L,t[10]=(d*w-g*b+v*y)*L,t[11]=(h*b-u*w-p*y)*L,t[12]=(s*M-o*S-l*k)*L,t[13]=(r*S-n*M+a*k)*L,t[14]=(g*x-d*_-m*y)*L,t[15]=(u*_-h*x+f*y)*L,t}},{}],279:[function(t,e,r){var n=t(\"./identity\");e.exports=function(t,e,r,a){var i,o,s,l,c,u,h,f,p,d,g=e[0],m=e[1],v=e[2],y=a[0],x=a[1],b=a[2],_=r[0],w=r[1],T=r[2];if(Math.abs(g-_)<1e-6&&Math.abs(m-w)<1e-6&&Math.abs(v-T)<1e-6)return n(t);h=g-_,f=m-w,p=v-T,d=1/Math.sqrt(h*h+f*f+p*p),i=x*(p*=d)-b*(f*=d),o=b*(h*=d)-y*p,s=y*f-x*h,(d=Math.sqrt(i*i+o*o+s*s))?(i*=d=1/d,o*=d,s*=d):(i=0,o=0,s=0);l=f*s-p*o,c=p*i-h*s,u=h*o-f*i,(d=Math.sqrt(l*l+c*c+u*u))?(l*=d=1/d,c*=d,u*=d):(l=0,c=0,u=0);return t[0]=i,t[1]=l,t[2]=h,t[3]=0,t[4]=o,t[5]=c,t[6]=f,t[7]=0,t[8]=s,t[9]=u,t[10]=p,t[11]=0,t[12]=-(i*g+o*m+s*v),t[13]=-(l*g+c*m+u*v),t[14]=-(h*g+f*m+p*v),t[15]=1,t}},{\"./identity\":277}],280:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],g=e[12],m=e[13],v=e[14],y=e[15],x=r[0],b=r[1],_=r[2],w=r[3];return t[0]=x*n+b*s+_*h+w*g,t[1]=x*a+b*l+_*f+w*m,t[2]=x*i+b*c+_*p+w*v,t[3]=x*o+b*u+_*d+w*y,x=r[4],b=r[5],_=r[6],w=r[7],t[4]=x*n+b*s+_*h+w*g,t[5]=x*a+b*l+_*f+w*m,t[6]=x*i+b*c+_*p+w*v,t[7]=x*o+b*u+_*d+w*y,x=r[8],b=r[9],_=r[10],w=r[11],t[8]=x*n+b*s+_*h+w*g,t[9]=x*a+b*l+_*f+w*m,t[10]=x*i+b*c+_*p+w*v,t[11]=x*o+b*u+_*d+w*y,x=r[12],b=r[13],_=r[14],w=r[15],t[12]=x*n+b*s+_*h+w*g,t[13]=x*a+b*l+_*f+w*m,t[14]=x*i+b*c+_*p+w*v,t[15]=x*o+b*u+_*d+w*y,t}},{}],281:[function(t,e,r){e.exports=function(t,e,r,n,a,i,o){var s=1/(e-r),l=1/(n-a),c=1/(i-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(a+n)*l,t[14]=(o+i)*c,t[15]=1,t}},{}],282:[function(t,e,r){e.exports=function(t,e,r,n,a){var i=1/Math.tan(e/2),o=1/(n-a);return t[0]=i/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=i,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(a+n)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*a*n*o,t[15]=0,t}},{}],283:[function(t,e,r){e.exports=function(t,e,r,n){var a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T,k,M,A,S,E=n[0],C=n[1],L=n[2],P=Math.sqrt(E*E+C*C+L*L);if(Math.abs(P)<1e-6)return null;E*=P=1/P,C*=P,L*=P,a=Math.sin(r),i=Math.cos(r),o=1-i,s=e[0],l=e[1],c=e[2],u=e[3],h=e[4],f=e[5],p=e[6],d=e[7],g=e[8],m=e[9],v=e[10],y=e[11],x=E*E*o+i,b=C*E*o+L*a,_=L*E*o-C*a,w=E*C*o-L*a,T=C*C*o+i,k=L*C*o+E*a,M=E*L*o+C*a,A=C*L*o-E*a,S=L*L*o+i,t[0]=s*x+h*b+g*_,t[1]=l*x+f*b+m*_,t[2]=c*x+p*b+v*_,t[3]=u*x+d*b+y*_,t[4]=s*w+h*T+g*k,t[5]=l*w+f*T+m*k,t[6]=c*w+p*T+v*k,t[7]=u*w+d*T+y*k,t[8]=s*M+h*A+g*S,t[9]=l*M+f*A+m*S,t[10]=c*M+p*A+v*S,t[11]=u*M+d*A+y*S,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]);return t}},{}],284:[function(t,e,r){e.exports=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]);return t[4]=i*a+c*n,t[5]=o*a+u*n,t[6]=s*a+h*n,t[7]=l*a+f*n,t[8]=c*a-i*n,t[9]=u*a-o*n,t[10]=h*a-s*n,t[11]=f*a-l*n,t}},{}],285:[function(t,e,r){e.exports=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[0],o=e[1],s=e[2],l=e[3],c=e[8],u=e[9],h=e[10],f=e[11];e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]);return t[0]=i*a-c*n,t[1]=o*a-u*n,t[2]=s*a-h*n,t[3]=l*a-f*n,t[8]=i*n+c*a,t[9]=o*n+u*a,t[10]=s*n+h*a,t[11]=l*n+f*a,t}},{}],286:[function(t,e,r){e.exports=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]);return t[0]=i*a+c*n,t[1]=o*a+u*n,t[2]=s*a+h*n,t[3]=l*a+f*n,t[4]=c*a-i*n,t[5]=u*a-o*n,t[6]=h*a-s*n,t[7]=f*a-l*n,t}},{}],287:[function(t,e,r){e.exports=function(t,e,r){var n=r[0],a=r[1],i=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*a,t[5]=e[5]*a,t[6]=e[6]*a,t[7]=e[7]*a,t[8]=e[8]*i,t[9]=e[9]*i,t[10]=e[10]*i,t[11]=e[11]*i,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},{}],288:[function(t,e,r){e.exports=function(t,e,r){var n,a,i,o,s,l,c,u,h,f,p,d,g=r[0],m=r[1],v=r[2];e===t?(t[12]=e[0]*g+e[4]*m+e[8]*v+e[12],t[13]=e[1]*g+e[5]*m+e[9]*v+e[13],t[14]=e[2]*g+e[6]*m+e[10]*v+e[14],t[15]=e[3]*g+e[7]*m+e[11]*v+e[15]):(n=e[0],a=e[1],i=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n,t[1]=a,t[2]=i,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*g+s*m+h*v+e[12],t[13]=a*g+l*m+f*v+e[13],t[14]=i*g+c*m+p*v+e[14],t[15]=o*g+u*m+d*v+e[15]);return t}},{}],289:[function(t,e,r){e.exports=function(t,e){if(t===e){var r=e[1],n=e[2],a=e[3],i=e[6],o=e[7],s=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=r,t[6]=e[9],t[7]=e[13],t[8]=n,t[9]=i,t[11]=e[14],t[12]=a,t[13]=o,t[14]=s}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}},{}],290:[function(t,e,r){\"use strict\";var n=t(\"barycentric\"),a=t(\"polytope-closest-point/lib/closest_point_2d.js\");function i(t,e){for(var r=[0,0,0,0],n=0;n<4;++n)for(var a=0;a<4;++a)r[a]+=t[4*n+a]*e[n];return r}function o(t,e,r,n,a){for(var o=i(n,i(r,i(e,[t[0],t[1],t[2],1]))),s=0;s<3;++s)o[s]/=o[3];return[.5*a[0]*(1+o[0]),.5*a[1]*(1-o[1])]}function s(t,e){for(var r=[0,0,0],n=0;n<t.length;++n)for(var a=t[n],i=e[n],o=0;o<3;++o)r[o]+=i*a[o];return r}e.exports=function(t,e,r,i,l,c){if(1===t.length)return[0,t[0].slice()];for(var u=new Array(t.length),h=0;h<t.length;++h)u[h]=o(t[h],r,i,l,c);var f=0,p=1/0;for(h=0;h<u.length;++h){for(var d=0,g=0;g<2;++g)d+=Math.pow(u[h][g]-e[g],2);d<p&&(p=d,f=h)}var m=function(t,e){if(2===t.length){for(var r=0,i=0,o=0;o<2;++o)r+=Math.pow(e[o]-t[0][o],2),i+=Math.pow(e[o]-t[1][o],2);return r=Math.sqrt(r),i=Math.sqrt(i),r+i<1e-6?[1,0]:[i/(r+i),r/(i+r)]}if(3===t.length){var s=[0,0];return a(t[0],t[1],t[2],e,s),n(t,s)}return[]}(u,e),v=0;for(h=0;h<3;++h){if(m[h]<-.001||m[h]>1.0001)return null;v+=m[h]}if(Math.abs(v-1)>.001)return null;return[f,s(t,m),m]}},{barycentric:78,\"polytope-closest-point/lib/closest_point_2d.js\":499}],291:[function(t,e,r){var n=t(\"glslify\"),a=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, normal;\\nattribute vec4 color;\\nattribute vec2 uv;\\n\\nuniform mat4 model\\n           , view\\n           , projection\\n           , inverseModel;\\nuniform vec3 eyePosition\\n           , lightPosition;\\n\\nvarying vec3 f_normal\\n           , f_lightDirection\\n           , f_eyeDirection\\n           , f_data;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvec4 project(vec3 p) {\\n  return projection * view * model * vec4(p, 1.0);\\n}\\n\\nvoid main() {\\n  gl_Position      = project(position);\\n\\n  //Lighting geometry parameters\\n  vec4 cameraCoordinate = view * vec4(position , 1.0);\\n  cameraCoordinate.xyz /= cameraCoordinate.w;\\n  f_lightDirection = lightPosition - cameraCoordinate.xyz;\\n  f_eyeDirection   = eyePosition - cameraCoordinate.xyz;\\n  f_normal  = normalize((vec4(normal, 0.0) * inverseModel).xyz);\\n\\n  f_color          = color;\\n  f_data           = position;\\n  f_uv             = uv;\\n}\\n\"]),i=n([\"#extension GL_OES_standard_derivatives : enable\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nfloat beckmannDistribution(float x, float roughness) {\\n  float NdotH = max(x, 0.0001);\\n  float cos2Alpha = NdotH * NdotH;\\n  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n  float roughness2 = roughness * roughness;\\n  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n  return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\nfloat cookTorranceSpecular(\\n  vec3 lightDirection,\\n  vec3 viewDirection,\\n  vec3 surfaceNormal,\\n  float roughness,\\n  float fresnel) {\\n\\n  float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\\n  float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\\n\\n  //Half angle vector\\n  vec3 H = normalize(lightDirection + viewDirection);\\n\\n  //Geometric term\\n  float NdotH = max(dot(surfaceNormal, H), 0.0);\\n  float VdotH = max(dot(viewDirection, H), 0.000001);\\n  float LdotH = max(dot(lightDirection, H), 0.000001);\\n  float G1 = (2.0 * NdotH * VdotN) / VdotH;\\n  float G2 = (2.0 * NdotH * LdotN) / LdotH;\\n  float G = min(1.0, min(G1, G2));\\n  \\n  //Distribution term\\n  float D = beckmannDistribution(NdotH, roughness);\\n\\n  //Fresnel term\\n  float F = pow(1.0 - VdotN, fresnel);\\n\\n  //Multiply terms and done\\n  return  G * F * D / max(3.14159265 * VdotN, 0.000001);\\n}\\n\\n//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float roughness\\n            , fresnel\\n            , kambient\\n            , kdiffuse\\n            , kspecular;\\nuniform sampler2D texture;\\n\\nvarying vec3 f_normal\\n           , f_lightDirection\\n           , f_eyeDirection\\n           , f_data;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  if (f_color.a == 0.0 ||\\n    outOfRange(clipBounds[0], clipBounds[1], f_data)\\n  ) discard;\\n\\n  vec3 N = normalize(f_normal);\\n  vec3 L = normalize(f_lightDirection);\\n  vec3 V = normalize(f_eyeDirection);\\n\\n  if(gl_FrontFacing) {\\n    N = -N;\\n  }\\n\\n  float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\\n  //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d\\n\\n  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n  vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);\\n  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);\\n\\n  gl_FragColor = litColor * f_color.a;\\n}\\n\"]),o=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 uv;\\n\\nuniform mat4 model, view, projection;\\n\\nvarying vec4 f_color;\\nvarying vec3 f_data;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  gl_Position = projection * view * model * vec4(position, 1.0);\\n  f_color = color;\\n  f_data  = position;\\n  f_uv    = uv;\\n}\"]),s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform sampler2D texture;\\nuniform float opacity;\\n\\nvarying vec4 f_color;\\nvarying vec3 f_data;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;\\n\\n  gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\\n}\"]),l=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 uv;\\nattribute float pointSize;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n    gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);\\n  } else {\\n    gl_Position = projection * view * model * vec4(position, 1.0);\\n  }\\n  gl_PointSize = pointSize;\\n  f_color = color;\\n  f_uv = uv;\\n}\"]),c=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform sampler2D texture;\\nuniform float opacity;\\n\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);\\n  if(dot(pointR, pointR) > 0.25) {\\n    discard;\\n  }\\n  gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\\n}\"]),u=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  gl_Position = projection * view * model * vec4(position, 1.0);\\n  f_id        = id;\\n  f_position  = position;\\n}\"]),h=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3  clipBounds[2];\\nuniform float pickId;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n\\n  gl_FragColor = vec4(pickId, f_id.xyz);\\n}\"]),f=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3  position;\\nattribute float pointSize;\\nattribute vec4  id;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n    gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\\n  } else {\\n    gl_Position  = projection * view * model * vec4(position, 1.0);\\n    gl_PointSize = pointSize;\\n  }\\n  f_id         = id;\\n  f_position   = position;\\n}\"]),p=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\n\\nvoid main() {\\n  gl_Position = projection * view * model * vec4(position, 1.0);\\n}\"]),d=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec3 contourColor;\\n\\nvoid main() {\\n  gl_FragColor = vec4(contourColor, 1.0);\\n}\\n\"]);r.meshShader={vertex:a,fragment:i,attributes:[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},r.wireShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},r.pointShader={vertex:l,fragment:c,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"pointSize\",type:\"float\"}]},r.pickShader={vertex:u,fragment:h,attributes:[{name:\"position\",type:\"vec3\"},{name:\"id\",type:\"vec4\"}]},r.pointPickShader={vertex:f,fragment:h,attributes:[{name:\"position\",type:\"vec3\"},{name:\"pointSize\",type:\"float\"},{name:\"id\",type:\"vec4\"}]},r.contourShader={vertex:p,fragment:d,attributes:[{name:\"position\",type:\"vec3\"}]}},{glslify:413}],292:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"gl-texture2d\"),s=t(\"normals\"),l=t(\"gl-mat4/multiply\"),c=t(\"gl-mat4/invert\"),u=t(\"ndarray\"),h=t(\"colormap\"),f=t(\"simplicial-complex-contour\"),p=t(\"typedarray-pool\"),d=t(\"./lib/shaders\"),g=t(\"./lib/closest-point\"),m=d.meshShader,v=d.wireShader,y=d.pointShader,x=d.pickShader,b=d.pointPickShader,_=d.contourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,T,k,M,A,S){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=a,this.pickShader=i,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=u,this.triangleNormals=f,this.triangleUVs=h,this.triangleIds=c,this.triangleVAO=p,this.triangleCount=0,this.lineWidth=1,this.edgePositions=d,this.edgeColors=m,this.edgeUVs=v,this.edgeIds=g,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=x,this.pointColors=_,this.pointUVs=T,this.pointSizes=k,this.pointIds=b,this.pointVAO=M,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=A,this.contourVAO=S,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=w,this._view=w,this._projection=w,this._resolution=[1,1]}var k=T.prototype;function M(t,e){if(!e)return 1;if(!e.length)return 1;for(var r=0;r<e.length;++r){if(e.length<2)return 1;if(e[r][0]===t)return e[r][1];if(e[r][0]>t&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}function A(t){var e=n(t,m.vertex,m.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.normal.location=4,e}function S(t){var e=n(t,v.vertex,v.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e}function E(t){var e=n(t,y.vertex,y.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function C(t){var e=n(t,x.vertex,x.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e}function L(t){var e=n(t,b.vertex,b.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function P(t){var e=n(t,_.vertex,_.fragment);return e.attributes.position.location=0,e}k.isOpaque=function(){return!this.hasAlpha},k.isTransparent=function(){return this.hasAlpha},k.pickSlots=1,k.setPickBase=function(t){this.pickId=t},k.highlight=function(t){if(t&&this.contourEnable){for(var e=f(this.cells,this.intensity,t.intensity),r=e.cells,n=e.vertexIds,a=e.vertexWeights,i=r.length,o=p.mallocFloat32(6*i),s=0,l=0;l<i;++l)for(var c=r[l],u=0;u<2;++u){var h=c[0];2===c.length&&(h=c[u]);for(var d=n[h][0],g=n[h][1],m=a[h],v=1-m,y=this.positions[d],x=this.positions[g],b=0;b<3;++b)o[s++]=m*y[b]+v*x[b]}this.contourCount=s/3|0,this.contourPositions.update(o.subarray(0,s)),p.free(o)}else this.contourCount=0},k.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,\"contourEnable\"in t&&(this.contourEnable=t.contourEnable),\"contourColor\"in t&&(this.contourColor=t.contourColor),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"lightPosition\"in t&&(this.lightPosition=t.lightPosition),this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=t.opacity,this.opacity<1&&(this.hasAlpha=!0)),\"opacityscale\"in t&&(this.opacityscale=t.opacityscale,this.hasAlpha=!0),\"ambient\"in t&&(this.ambientLight=t.ambient),\"diffuse\"in t&&(this.diffuseLight=t.diffuse),\"specular\"in t&&(this.specularLight=t.specular),\"roughness\"in t&&(this.roughness=t.roughness),\"fresnel\"in t&&(this.fresnel=t.fresnel),t.texture?(this.texture.dispose(),this.texture=o(e,t.texture)):t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t,e){for(var r=h({colormap:t,nshades:256,format:\"rgba\"}),n=new Uint8Array(1024),a=0;a<256;++a){for(var i=r[a],o=0;o<3;++o)n[4*a+o]=i[o];n[4*a+3]=e?255*M(a/255,e):255*i[3]}return u(n,[256,256,4],[4,0,1])}(t.colormap,this.opacityscale)),this.texture.generateMipmap());var r=t.cells,n=t.positions;if(n&&r){var a=[],i=[],l=[],c=[],f=[],p=[],d=[],g=[],m=[],v=[],y=[],x=[],b=[],_=[];this.cells=r,this.positions=n;var w=t.vertexNormals,T=t.cellNormals,k=void 0===t.vertexNormalsEpsilon?1e-6:t.vertexNormalsEpsilon,A=void 0===t.faceNormalsEpsilon?1e-6:t.faceNormalsEpsilon;t.useFacetNormals&&!T&&(T=s.faceNormals(r,n,A)),T||w||(w=s.vertexNormals(r,n,k));var S=t.vertexColors,E=t.cellColors,C=t.meshColor||[1,1,1,1],L=t.vertexUVs,P=t.vertexIntensity,I=t.cellUVs,z=t.cellIntensity,O=1/0,D=-1/0;if(!L&&!I)if(P)if(t.vertexIntensityBounds)O=+t.vertexIntensityBounds[0],D=+t.vertexIntensityBounds[1];else for(var R=0;R<P.length;++R){var F=P[R];O=Math.min(O,F),D=Math.max(D,F)}else if(z)if(t.cellIntensityBounds)O=+t.cellIntensityBounds[0],D=+t.cellIntensityBounds[1];else for(R=0;R<z.length;++R){F=z[R];O=Math.min(O,F),D=Math.max(D,F)}else for(R=0;R<n.length;++R){F=n[R][2];O=Math.min(O,F),D=Math.max(D,F)}this.intensity=P||(z||function(t){for(var e=t.length,r=new Array(e),n=0;n<e;++n)r[n]=t[n][2];return r}(n)),this.pickVertex=!(z||E);var B=t.pointSizes,N=t.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(R=0;R<n.length;++R)for(var j=n[R],U=0;U<3;++U)!isNaN(j[U])&&isFinite(j[U])&&(this.bounds[0][U]=Math.min(this.bounds[0][U],j[U]),this.bounds[1][U]=Math.max(this.bounds[1][U],j[U]));var V=0,q=0,H=0;t:for(R=0;R<r.length;++R){var G=r[R];switch(G.length){case 1:for(j=n[W=G[0]],U=0;U<3;++U)if(isNaN(j[U])||!isFinite(j[U]))continue t;v.push(j[0],j[1],j[2]),Z=S?S[W]:E?E[R]:C,this.opacityscale&&P?i.push(Z[0],Z[1],Z[2],this.opacity*M((P[W]-O)/(D-O),this.opacityscale)):3===Z.length?y.push(Z[0],Z[1],Z[2],this.opacity):(y.push(Z[0],Z[1],Z[2],Z[3]*this.opacity),Z[3]<1&&(this.hasAlpha=!0)),X=L?L[W]:P?[(P[W]-O)/(D-O),0]:I?I[R]:z?[(z[R]-O)/(D-O),0]:[(j[2]-O)/(D-O),0],x.push(X[0],X[1]),B?b.push(B[W]):b.push(N),_.push(R),H+=1;break;case 2:for(U=0;U<2;++U){j=n[W=G[U]];for(var Y=0;Y<3;++Y)if(isNaN(j[Y])||!isFinite(j[Y]))continue t}for(U=0;U<2;++U){j=n[W=G[U]];p.push(j[0],j[1],j[2]),Z=S?S[W]:E?E[R]:C,this.opacityscale&&P?i.push(Z[0],Z[1],Z[2],this.opacity*M((P[W]-O)/(D-O),this.opacityscale)):3===Z.length?d.push(Z[0],Z[1],Z[2],this.opacity):(d.push(Z[0],Z[1],Z[2],Z[3]*this.opacity),Z[3]<1&&(this.hasAlpha=!0)),X=L?L[W]:P?[(P[W]-O)/(D-O),0]:I?I[R]:z?[(z[R]-O)/(D-O),0]:[(j[2]-O)/(D-O),0],g.push(X[0],X[1]),m.push(R)}q+=1;break;case 3:for(U=0;U<3;++U)for(j=n[W=G[U]],Y=0;Y<3;++Y)if(isNaN(j[Y])||!isFinite(j[Y]))continue t;for(U=0;U<3;++U){var W,Z,X,J;j=n[W=G[2-U]];a.push(j[0],j[1],j[2]),(Z=S?S[W]:E?E[R]:C)?this.opacityscale&&P?i.push(Z[0],Z[1],Z[2],this.opacity*M((P[W]-O)/(D-O),this.opacityscale)):3===Z.length?i.push(Z[0],Z[1],Z[2],this.opacity):(i.push(Z[0],Z[1],Z[2],Z[3]*this.opacity),Z[3]<1&&(this.hasAlpha=!0)):i.push(.5,.5,.5,1),X=L?L[W]:P?[(P[W]-O)/(D-O),0]:I?I[R]:z?[(z[R]-O)/(D-O),0]:[(j[2]-O)/(D-O),0],c.push(X[0],X[1]),J=w?w[W]:T[R],l.push(J[0],J[1],J[2]),f.push(R)}V+=1}}this.pointCount=H,this.edgeCount=q,this.triangleCount=V,this.pointPositions.update(v),this.pointColors.update(y),this.pointUVs.update(x),this.pointSizes.update(b),this.pointIds.update(new Uint32Array(_)),this.edgePositions.update(p),this.edgeColors.update(d),this.edgeUVs.update(g),this.edgeIds.update(new Uint32Array(m)),this.trianglePositions.update(a),this.triangleColors.update(i),this.triangleUVs.update(c),this.triangleNormals.update(l),this.triangleIds.update(new Uint32Array(f))}},k.drawTransparent=k.draw=function(t){t=t||{};for(var e=this.gl,r=t.model||w,n=t.view||w,a=t.projection||w,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);var s={model:r,view:n,projection:a,inverseModel:w.slice(),clipBounds:i,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};s.inverseModel=c(s.inverseModel,s.model),e.disable(e.CULL_FACE),this.texture.bind(0);var u=new Array(16);l(u,s.view,s.model),l(u,s.projection,u),c(u,u);for(o=0;o<3;++o)s.eyePosition[o]=u[12+o]/u[15];var h,f=u[15];for(o=0;o<3;++o)f+=this.lightPosition[o]*u[4*o+3];for(o=0;o<3;++o){for(var p=u[12+o],d=0;d<3;++d)p+=u[4*d+o]*this.lightPosition[d];s.lightPosition[o]=p/f}this.triangleCount>0&&((h=this.triShader).bind(),h.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind());this.edgeCount>0&&this.lineWidth>0&&((h=this.lineShader).bind(),h.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind());this.pointCount>0&&((h=this.pointShader).bind(),h.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind());this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((h=this.contourShader).bind(),h.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind())},k.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||w,n=t.view||w,a=t.projection||w,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(a),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s,l={model:r,view:n,projection:a,clipBounds:i,pickId:this.pickId/255};((s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0)&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind())},k.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions,a=new Array(r.length),i=0;i<r.length;++i)a[i]=n[r[i]];var o=t.coord[0],s=t.coord[1];if(!this.pickVertex){var l=this.positions[r[0]],c=this.positions[r[1]],u=this.positions[r[2]],h=[(l[0]+c[0]+u[0])/3,(l[1]+c[1]+u[1])/3,(l[2]+c[2]+u[2])/3];return{_cellCenter:!0,position:[o,s],index:e,cell:r,cellId:e,intensity:this.intensity[e],dataCoordinate:h}}var f=g(a,[o*this.pixelRatio,this._resolution[1]-s*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!f)return null;var p=f[2],d=0;for(i=0;i<r.length;++i)d+=p[i]*this.intensity[r[i]];return{position:f[1],index:r[f[0]],cell:r,cellId:e,intensity:d,dataCoordinate:this.positions[r[f[0]]]}},k.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()},e.exports=function(t,e){1===arguments.length&&(t=(e=t).gl);var r=t.getExtension(\"OES_standard_derivatives\")||t.getExtension(\"MOZ_OES_standard_derivatives\")||t.getExtension(\"WEBKIT_OES_standard_derivatives\");if(!r)throw new Error(\"derivatives not supported\");var n=A(t),s=S(t),l=E(t),c=C(t),h=L(t),f=P(t),p=o(t,u(new Uint8Array([255,255,255,255]),[1,1,4]));p.generateMipmap(),p.minFilter=t.LINEAR_MIPMAP_LINEAR,p.magFilter=t.LINEAR;var d=a(t),g=a(t),m=a(t),v=a(t),y=a(t),x=i(t,[{buffer:d,type:t.FLOAT,size:3},{buffer:y,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:g,type:t.FLOAT,size:4},{buffer:m,type:t.FLOAT,size:2},{buffer:v,type:t.FLOAT,size:3}]),b=a(t),_=a(t),w=a(t),k=a(t),M=i(t,[{buffer:b,type:t.FLOAT,size:3},{buffer:k,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:_,type:t.FLOAT,size:4},{buffer:w,type:t.FLOAT,size:2}]),I=a(t),z=a(t),O=a(t),D=a(t),R=a(t),F=i(t,[{buffer:I,type:t.FLOAT,size:3},{buffer:R,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:z,type:t.FLOAT,size:4},{buffer:O,type:t.FLOAT,size:2},{buffer:D,type:t.FLOAT,size:1}]),B=a(t),N=i(t,[{buffer:B,type:t.FLOAT,size:3}]),j=new T(t,p,n,s,l,c,h,f,d,y,g,m,v,x,b,k,_,w,M,I,R,z,O,D,F,B,N);return j.update(e),j}},{\"./lib/closest-point\":290,\"./lib/shaders\":291,colormap:131,\"gl-buffer\":258,\"gl-mat4/invert\":278,\"gl-mat4/multiply\":280,\"gl-shader\":312,\"gl-texture2d\":327,\"gl-vao\":332,ndarray:469,normals:472,\"simplicial-complex-contour\":528,\"typedarray-pool\":567}],293:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e,[0,0,0,1,1,0,1,1]),s=a(e,i.boxVert,i.lineFrag);return new o(t,r,s)};var n=t(\"gl-buffer\"),a=t(\"gl-shader\"),i=t(\"./shaders\");function o(t,e,r){this.plot=t,this.vbo=e,this.shader=r}var s,l,c=o.prototype;c.bind=function(){var t=this.shader;this.vbo.bind(),this.shader.bind(),t.attributes.coord.pointer(),t.uniforms.screenBox=this.plot.screenBox},c.drawBox=(s=[0,0],l=[0,0],function(t,e,r,n,a){var i=this.plot,o=this.shader,c=i.gl;s[0]=t,s[1]=e,l[0]=r,l[1]=n,o.uniforms.lo=s,o.uniforms.hi=l,o.uniforms.color=a,c.drawArrays(c.TRIANGLE_STRIP,0,4)}),c.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},{\"./shaders\":296,\"gl-buffer\":258,\"gl-shader\":312}],294:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e),i=a(e,o.gridVert,o.gridFrag),l=a(e,o.tickVert,o.gridFrag);return new s(t,r,i,l)};var n=t(\"gl-buffer\"),a=t(\"gl-shader\"),i=t(\"binary-search-bounds\"),o=t(\"./shaders\");function s(t,e,r,n){this.plot=t,this.vbo=e,this.shader=r,this.tickShader=n,this.ticks=[[],[]]}function l(t,e){return t-e}var c,u,h,f,p,d=s.prototype;d.draw=(c=[0,0],u=[0,0],h=[0,0],function(){for(var t=this.plot,e=this.vbo,r=this.shader,n=this.ticks,a=t.gl,i=t._tickBounds,o=t.dataBox,s=t.viewBox,l=t.gridLineWidth,f=t.gridLineColor,p=t.gridLineEnable,d=t.pixelRatio,g=0;g<2;++g){var m=i[g],v=i[g+2]-m,y=.5*(o[g+2]+o[g]),x=o[g+2]-o[g];u[g]=2*v/x,c[g]=2*(m-y)/x}r.bind(),e.bind(),r.attributes.dataCoord.pointer(),r.uniforms.dataShift=c,r.uniforms.dataScale=u;var b=0;for(g=0;g<2;++g){h[0]=h[1]=0,h[g]=1,r.uniforms.dataAxis=h,r.uniforms.lineWidth=l[g]/(s[g+2]-s[g])*d,r.uniforms.color=f[g];var _=6*n[g].length;p[g]&&_&&a.drawArrays(a.TRIANGLES,b,_),b+=_}}),d.drawTickMarks=function(){var t=[0,0],e=[0,0],r=[1,0],n=[0,1],a=[0,0],o=[0,0];return function(){for(var s=this.plot,c=this.vbo,u=this.tickShader,h=this.ticks,f=s.gl,p=s._tickBounds,d=s.dataBox,g=s.viewBox,m=s.pixelRatio,v=s.screenBox,y=v[2]-v[0],x=v[3]-v[1],b=g[2]-g[0],_=g[3]-g[1],w=0;w<2;++w){var T=p[w],k=p[w+2]-T,M=.5*(d[w+2]+d[w]),A=d[w+2]-d[w];e[w]=2*k/A,t[w]=2*(T-M)/A}e[0]*=b/y,t[0]*=b/y,e[1]*=_/x,t[1]*=_/x,u.bind(),c.bind(),u.attributes.dataCoord.pointer();var S=u.uniforms;S.dataShift=t,S.dataScale=e;var E=s.tickMarkLength,C=s.tickMarkWidth,L=s.tickMarkColor,P=6*h[0].length,I=Math.min(i.ge(h[0],(d[0]-p[0])/(p[2]-p[0]),l),h[0].length),z=Math.min(i.gt(h[0],(d[2]-p[0])/(p[2]-p[0]),l),h[0].length),O=0+6*I,D=6*Math.max(0,z-I),R=Math.min(i.ge(h[1],(d[1]-p[1])/(p[3]-p[1]),l),h[1].length),F=Math.min(i.gt(h[1],(d[3]-p[1])/(p[3]-p[1]),l),h[1].length),B=P+6*R,N=6*Math.max(0,F-R);a[0]=2*(g[0]-E[1])/y-1,a[1]=(g[3]+g[1])/x-1,o[0]=E[1]*m/y,o[1]=C[1]*m/x,N&&(S.color=L[1],S.tickScale=o,S.dataAxis=n,S.screenOffset=a,f.drawArrays(f.TRIANGLES,B,N)),a[0]=(g[2]+g[0])/y-1,a[1]=2*(g[1]-E[0])/x-1,o[0]=C[0]*m/y,o[1]=E[0]*m/x,D&&(S.color=L[0],S.tickScale=o,S.dataAxis=r,S.screenOffset=a,f.drawArrays(f.TRIANGLES,O,D)),a[0]=2*(g[2]+E[3])/y-1,a[1]=(g[3]+g[1])/x-1,o[0]=E[3]*m/y,o[1]=C[3]*m/x,N&&(S.color=L[3],S.tickScale=o,S.dataAxis=n,S.screenOffset=a,f.drawArrays(f.TRIANGLES,B,N)),a[0]=(g[2]+g[0])/y-1,a[1]=2*(g[3]+E[2])/x-1,o[0]=C[2]*m/y,o[1]=E[2]*m/x,D&&(S.color=L[2],S.tickScale=o,S.dataAxis=r,S.screenOffset=a,f.drawArrays(f.TRIANGLES,O,D))}}(),d.update=(f=[1,1,-1,-1,1,-1],p=[1,-1,1,1,-1,-1],function(t){for(var e=t.ticks,r=t.bounds,n=new Float32Array(18*(e[0].length+e[1].length)),a=(this.plot.zeroLineEnable,0),i=[[],[]],o=0;o<2;++o)for(var s=i[o],l=e[o],c=r[o],u=r[o+2],h=0;h<l.length;++h){var d=(l[h].x-c)/(u-c);s.push(d);for(var g=0;g<6;++g)n[a++]=d,n[a++]=f[g],n[a++]=p[g]}this.ticks=i,this.vbo.update(n)}),d.dispose=function(){this.vbo.dispose(),this.shader.dispose(),this.tickShader.dispose()}},{\"./shaders\":296,\"binary-search-bounds\":96,\"gl-buffer\":258,\"gl-shader\":312}],295:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e,[-1,-1,-1,1,1,-1,1,1]),s=a(e,i.lineVert,i.lineFrag);return new o(t,r,s)};var n=t(\"gl-buffer\"),a=t(\"gl-shader\"),i=t(\"./shaders\");function o(t,e,r){this.plot=t,this.vbo=e,this.shader=r}var s,l,c=o.prototype;c.bind=function(){var t=this.shader;this.vbo.bind(),this.shader.bind(),t.attributes.coord.pointer(),t.uniforms.screenBox=this.plot.screenBox},c.drawLine=(s=[0,0],l=[0,0],function(t,e,r,n,a,i){var o=this.plot,c=this.shader,u=o.gl;s[0]=t,s[1]=e,l[0]=r,l[1]=n,c.uniforms.start=s,c.uniforms.end=l,c.uniforms.width=a*o.pixelRatio,c.uniforms.color=i,u.drawArrays(u.TRIANGLE_STRIP,0,4)}),c.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},{\"./shaders\":296,\"gl-buffer\":258,\"gl-shader\":312}],296:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=n([\"precision lowp float;\\n#define GLSLIFY 1\\nuniform vec4 color;\\nvoid main() {\\n  gl_FragColor = vec4(color.xyz * color.w, color.w);\\n}\\n\"]);e.exports={lineVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 coord;\\n\\nuniform vec4 screenBox;\\nuniform vec2 start, end;\\nuniform float width;\\n\\nvec2 perp(vec2 v) {\\n  return vec2(v.y, -v.x);\\n}\\n\\nvec2 screen(vec2 v) {\\n  return 2.0 * (v - screenBox.xy) / (screenBox.zw - screenBox.xy) - 1.0;\\n}\\n\\nvoid main() {\\n  vec2 delta = normalize(perp(start - end));\\n  vec2 offset = mix(start, end, 0.5 * (coord.y+1.0));\\n  gl_Position = vec4(screen(offset + 0.5 * width * delta * coord.x), 0, 1);\\n}\\n\"]),lineFrag:a,textVert:n([\"#define GLSLIFY 1\\nattribute vec3 textCoordinate;\\n\\nuniform vec2 dataScale, dataShift, dataAxis, screenOffset, textScale;\\nuniform float angle;\\n\\nvoid main() {\\n  float dataOffset  = textCoordinate.z;\\n  vec2 glyphOffset  = textCoordinate.xy;\\n  mat2 glyphMatrix = mat2(cos(angle), sin(angle), -sin(angle), cos(angle));\\n  vec2 screenCoordinate = dataAxis * (dataScale * dataOffset + dataShift) +\\n    glyphMatrix * glyphOffset * textScale + screenOffset;\\n  gl_Position = vec4(screenCoordinate, 0, 1);\\n}\\n\"]),textFrag:a,gridVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec3 dataCoord;\\n\\nuniform vec2 dataAxis, dataShift, dataScale;\\nuniform float lineWidth;\\n\\nvoid main() {\\n  vec2 pos = dataAxis * (dataScale * dataCoord.x + dataShift);\\n  pos += 10.0 * dataCoord.y * vec2(dataAxis.y, -dataAxis.x) + dataCoord.z * lineWidth;\\n  gl_Position = vec4(pos, 0, 1);\\n}\\n\"]),gridFrag:a,boxVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 coord;\\n\\nuniform vec4 screenBox;\\nuniform vec2 lo, hi;\\n\\nvec2 screen(vec2 v) {\\n  return 2.0 * (v - screenBox.xy) / (screenBox.zw - screenBox.xy) - 1.0;\\n}\\n\\nvoid main() {\\n  gl_Position = vec4(screen(mix(lo, hi, coord)), 0, 1);\\n}\\n\"]),tickVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec3 dataCoord;\\n\\nuniform vec2 dataAxis, dataShift, dataScale, screenOffset, tickScale;\\n\\nvoid main() {\\n  vec2 pos = dataAxis * (dataScale * dataCoord.x + dataShift);\\n  gl_Position = vec4(pos + tickScale*dataCoord.yz + screenOffset, 0, 1);\\n}\\n\"])}},{glslify:413}],297:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e),i=a(e,s.textVert,s.textFrag);return new l(t,r,i)};var n=t(\"gl-buffer\"),a=t(\"gl-shader\"),i=t(\"text-cache\"),o=t(\"binary-search-bounds\"),s=t(\"./shaders\");function l(t,e,r){this.plot=t,this.vbo=e,this.shader=r,this.tickOffset=[[],[]],this.tickX=[[],[]],this.labelOffset=[0,0],this.labelCount=[0,0]}var c,u,h,f,p,d,g=l.prototype;g.drawTicks=(c=[0,0],u=[0,0],h=[0,0],function(t){var e=this.plot,r=this.shader,n=this.tickX[t],a=this.tickOffset[t],i=e.gl,s=e.viewBox,l=e.dataBox,f=e.screenBox,p=e.pixelRatio,d=e.tickEnable,g=e.tickPad,m=e.tickColor,v=e.tickAngle,y=e.labelEnable,x=e.labelPad,b=e.labelColor,_=e.labelAngle,w=this.labelOffset[t],T=this.labelCount[t],k=o.lt(n,l[t]),M=o.le(n,l[t+2]);c[0]=c[1]=0,c[t]=1,u[t]=(s[2+t]+s[t])/(f[2+t]-f[t])-1;var A=2/f[2+(1^t)]-f[1^t];u[1^t]=A*s[1^t]-1,d[t]&&(u[1^t]-=A*p*g[t],k<M&&a[M]>a[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=m[t],r.uniforms.angle=v[t],i.drawArrays(i.TRIANGLES,a[k],a[M]-a[k]))),y[t]&&T&&(u[1^t]-=A*p*x[t],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=b[t],r.uniforms.angle=_[t],i.drawArrays(i.TRIANGLES,w,T)),u[1^t]=A*s[2+(1^t)]-1,d[t+2]&&(u[1^t]+=A*p*g[t+2],k<M&&a[M]>a[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=m[t+2],r.uniforms.angle=v[t+2],i.drawArrays(i.TRIANGLES,a[k],a[M]-a[k]))),y[t+2]&&T&&(u[1^t]+=A*p*x[t+2],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=b[t+2],r.uniforms.angle=_[t+2],i.drawArrays(i.TRIANGLES,w,T))}),g.drawTitle=function(){var t=[0,0],e=[0,0];return function(){var r=this.plot,n=this.shader,a=r.gl,i=r.screenBox,o=r.titleCenter,s=r.titleAngle,l=r.titleColor,c=r.pixelRatio;if(this.titleCount){for(var u=0;u<2;++u)e[u]=2*(o[u]*c-i[u])/(i[2+u]-i[u])-1;n.bind(),n.uniforms.dataAxis=t,n.uniforms.screenOffset=e,n.uniforms.angle=s,n.uniforms.color=l,a.drawArrays(a.TRIANGLES,this.titleOffset,this.titleCount)}}}(),g.bind=(f=[0,0],p=[0,0],d=[0,0],function(){var t=this.plot,e=this.shader,r=t._tickBounds,n=t.dataBox,a=t.screenBox,i=t.viewBox;e.bind();for(var o=0;o<2;++o){var s=r[o],l=r[o+2]-s,c=.5*(n[o+2]+n[o]),u=n[o+2]-n[o],h=i[o],g=i[o+2]-h,m=a[o],v=a[o+2]-m;p[o]=2*l/u*g/v,f[o]=2*(s-c)/u*g/v}d[1]=2*t.pixelRatio/(a[3]-a[1]),d[0]=d[1]*(a[3]-a[1])/(a[2]-a[0]),e.uniforms.dataScale=p,e.uniforms.dataShift=f,e.uniforms.textScale=d,this.vbo.bind(),e.attributes.textCoordinate.pointer()}),g.update=function(t){var e,r,n,a,o,s=[],l=t.ticks,c=t.bounds;for(o=0;o<2;++o){var u=[Math.floor(s.length/3)],h=[-1/0],f=l[o];for(e=0;e<f.length;++e){var p=f[e],d=p.x,g=p.text,m=p.font||\"sans-serif\";a=p.fontSize||12;for(var v=1/(c[o+2]-c[o]),y=c[o],x=g.split(\"\\n\"),b=0;b<x.length;b++)for(n=i(m,x[b]).data,r=0;r<n.length;r+=2)s.push(n[r]*a,-n[r+1]*a-b*a*1.2,(d-y)*v);u.push(Math.floor(s.length/3)),h.push(d)}this.tickOffset[o]=u,this.tickX[o]=h}for(o=0;o<2;++o){for(this.labelOffset[o]=Math.floor(s.length/3),n=i(t.labelFont[o],t.labels[o],{textAlign:\"center\"}).data,a=t.labelSize[o],e=0;e<n.length;e+=2)s.push(n[e]*a,-n[e+1]*a,0);this.labelCount[o]=Math.floor(s.length/3)-this.labelOffset[o]}for(this.titleOffset=Math.floor(s.length/3),n=i(t.titleFont,t.title).data,a=t.titleSize,e=0;e<n.length;e+=2)s.push(n[e]*a,-n[e+1]*a,0);this.titleCount=Math.floor(s.length/3)-this.titleOffset,this.vbo.update(s)},g.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},{\"./shaders\":296,\"binary-search-bounds\":96,\"gl-buffer\":258,\"gl-shader\":312,\"text-cache\":547}],298:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e,[e.drawingBufferWidth,e.drawingBufferHeight]),c=new l(e,r);return c.grid=a(c),c.text=i(c),c.line=o(c),c.box=s(c),c.update(t),c};var n=t(\"gl-select-static\"),a=t(\"./lib/grid\"),i=t(\"./lib/text\"),o=t(\"./lib/line\"),s=t(\"./lib/box\");function l(t,e){this.gl=t,this.pickBuffer=e,this.screenBox=[0,0,t.drawingBufferWidth,t.drawingBufferHeight],this.viewBox=[0,0,0,0],this.dataBox=[-10,-10,10,10],this.gridLineEnable=[!0,!0],this.gridLineWidth=[1,1],this.gridLineColor=[[0,0,0,1],[0,0,0,1]],this.pixelRatio=1,this.tickMarkLength=[0,0,0,0],this.tickMarkWidth=[0,0,0,0],this.tickMarkColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickEnable=[!0,!0,!0,!0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[15,15,15,15],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelEnable=[!0,!0,!0,!0],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.titleCenter=[0,0],this.titleEnable=!0,this.titleAngle=0,this.titleColor=[0,0,0,1],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[4,4],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderLineEnable=[!0,!0,!0,!0],this.borderLineWidth=[2,2,2,2],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.grid=null,this.text=null,this.line=null,this.box=null,this.objects=[],this.overlays=[],this._tickBounds=[1/0,1/0,-1/0,-1/0],this.static=!1,this.dirty=!1,this.pickDirty=!1,this.pickDelay=120,this.pickRadius=10,this._pickTimeout=null,this._drawPick=this.drawPick.bind(this),this._depthCounter=0}var c=l.prototype;function u(t){for(var e=t.slice(),r=0;r<e.length;++r)e[r]=e[r].slice();return e}function h(t,e){return t.x-e.x}c.setDirty=function(){this.dirty=this.pickDirty=!0},c.setOverlayDirty=function(){this.dirty=!0},c.nextDepthValue=function(){return this._depthCounter++/65536},c.draw=function(){var t=this.gl,e=this.screenBox,r=this.viewBox,n=this.dataBox,a=this.pixelRatio,i=this.grid,o=this.line,s=this.text,l=this.objects;if(this._depthCounter=0,this.pickDirty&&(this._pickTimeout&&clearTimeout(this._pickTimeout),this.pickDirty=!1,this._pickTimeout=setTimeout(this._drawPick,this.pickDelay)),this.dirty){if(this.dirty=!1,t.bindFramebuffer(t.FRAMEBUFFER,null),t.enable(t.SCISSOR_TEST),t.disable(t.DEPTH_TEST),t.depthFunc(t.LESS),t.depthMask(!1),t.enable(t.BLEND),t.blendEquation(t.FUNC_ADD,t.FUNC_ADD),t.blendFunc(t.ONE,t.ONE_MINUS_SRC_ALPHA),this.borderColor){t.scissor(e[0],e[1],e[2]-e[0],e[3]-e[1]);var c=this.borderColor;t.clearColor(c[0]*c[3],c[1]*c[3],c[2]*c[3],c[3]),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT)}t.scissor(r[0],r[1],r[2]-r[0],r[3]-r[1]),t.viewport(r[0],r[1],r[2]-r[0],r[3]-r[1]);var u=this.backgroundColor;t.clearColor(u[0]*u[3],u[1]*u[3],u[2]*u[3],u[3]),t.clear(t.COLOR_BUFFER_BIT),i.draw();var h=this.zeroLineEnable,f=this.zeroLineColor,p=this.zeroLineWidth;if(h[0]||h[1]){o.bind();for(var d=0;d<2;++d)if(h[d]&&n[d]<=0&&n[d+2]>=0){var g=e[d]-n[d]*(e[d+2]-e[d])/(n[d+2]-n[d]);0===d?o.drawLine(g,e[1],g,e[3],p[d],f[d]):o.drawLine(e[0],g,e[2],g,p[d],f[d])}}for(d=0;d<l.length;++d)l[d].draw();t.viewport(e[0],e[1],e[2]-e[0],e[3]-e[1]),t.scissor(e[0],e[1],e[2]-e[0],e[3]-e[1]),this.grid.drawTickMarks(),o.bind();var m=this.borderLineEnable,v=this.borderLineWidth,y=this.borderLineColor;for(m[1]&&o.drawLine(r[0],r[1]-.5*v[1]*a,r[0],r[3]+.5*v[3]*a,v[1],y[1]),m[0]&&o.drawLine(r[0]-.5*v[0]*a,r[1],r[2]+.5*v[2]*a,r[1],v[0],y[0]),m[3]&&o.drawLine(r[2],r[1]-.5*v[1]*a,r[2],r[3]+.5*v[3]*a,v[3],y[3]),m[2]&&o.drawLine(r[0]-.5*v[0]*a,r[3],r[2]+.5*v[2]*a,r[3],v[2],y[2]),s.bind(),d=0;d<2;++d)s.drawTicks(d);this.titleEnable&&s.drawTitle();var x=this.overlays;for(d=0;d<x.length;++d)x[d].draw();t.disable(t.SCISSOR_TEST),t.disable(t.BLEND),t.depthMask(!0)}},c.drawPick=function(){if(!this.static){var t=this.pickBuffer;this.gl,this._pickTimeout=null,t.begin();for(var e=1,r=this.objects,n=0;n<r.length;++n)e=r[n].drawPick(e);t.end()}},c.pick=function(t,e){if(!this.static){var r=this.pixelRatio,n=this.pickPixelRatio,a=this.viewBox,i=0|Math.round((t-a[0]/r)*n),o=0|Math.round((e-a[1]/r)*n),s=this.pickBuffer.query(i,o,this.pickRadius);if(!s)return null;for(var l=s.id+(s.value[0]<<8)+(s.value[1]<<16)+(s.value[2]<<24),c=this.objects,u=0;u<c.length;++u){var h=c[u].pick(i,o,l);if(h)return h}return null}},c.setScreenBox=function(t){var e=this.screenBox,r=this.pixelRatio;e[0]=0|Math.round(t[0]*r),e[1]=0|Math.round(t[1]*r),e[2]=0|Math.round(t[2]*r),e[3]=0|Math.round(t[3]*r),this.setDirty()},c.setDataBox=function(t){var e=this.dataBox;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3])&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],this.setDirty())},c.setViewBox=function(t){var e=this.pixelRatio,r=this.viewBox;r[0]=0|Math.round(t[0]*e),r[1]=0|Math.round(t[1]*e),r[2]=0|Math.round(t[2]*e),r[3]=0|Math.round(t[3]*e);var n=this.pickPixelRatio;this.pickBuffer.shape=[0|Math.round((t[2]-t[0])*n),0|Math.round((t[3]-t[1])*n)],this.setDirty()},c.update=function(t){t=t||{};var e=this.gl;this.pixelRatio=t.pixelRatio||1;var r=this.pixelRatio;this.pickPixelRatio=Math.max(r,1),this.setScreenBox(t.screenBox||[0,0,e.drawingBufferWidth/r,e.drawingBufferHeight/r]);this.screenBox;this.setViewBox(t.viewBox||[.125*(this.screenBox[2]-this.screenBox[0])/r,.125*(this.screenBox[3]-this.screenBox[1])/r,.875*(this.screenBox[2]-this.screenBox[0])/r,.875*(this.screenBox[3]-this.screenBox[1])/r]);var n=this.viewBox,a=(n[2]-n[0])/(n[3]-n[1]);this.setDataBox(t.dataBox||[-10,-10/a,10,10/a]),this.borderColor=!1!==t.borderColor&&(t.borderColor||[0,0,0,0]).slice(),this.backgroundColor=(t.backgroundColor||[0,0,0,0]).slice(),this.gridLineEnable=(t.gridLineEnable||[!0,!0]).slice(),this.gridLineWidth=(t.gridLineWidth||[1,1]).slice(),this.gridLineColor=u(t.gridLineColor||[[.5,.5,.5,1],[.5,.5,.5,1]]),this.zeroLineEnable=(t.zeroLineEnable||[!0,!0]).slice(),this.zeroLineWidth=(t.zeroLineWidth||[4,4]).slice(),this.zeroLineColor=u(t.zeroLineColor||[[0,0,0,1],[0,0,0,1]]),this.tickMarkLength=(t.tickMarkLength||[0,0,0,0]).slice(),this.tickMarkWidth=(t.tickMarkWidth||[0,0,0,0]).slice(),this.tickMarkColor=u(t.tickMarkColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.titleCenter=(t.titleCenter||[.5*(n[0]+n[2])/r,(n[3]+120)/r]).slice(),this.titleEnable=!(\"titleEnable\"in t)||!!t.titleEnable,this.titleAngle=t.titleAngle||0,this.titleColor=(t.titleColor||[0,0,0,1]).slice(),this.labelPad=(t.labelPad||[15,15,15,15]).slice(),this.labelAngle=(t.labelAngle||[0,Math.PI/2,0,3*Math.PI/2]).slice(),this.labelEnable=(t.labelEnable||[!0,!0,!0,!0]).slice(),this.labelColor=u(t.labelColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.tickPad=(t.tickPad||[15,15,15,15]).slice(),this.tickAngle=(t.tickAngle||[0,0,0,0]).slice(),this.tickEnable=(t.tickEnable||[!0,!0,!0,!0]).slice(),this.tickColor=u(t.tickColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.borderLineEnable=(t.borderLineEnable||[!0,!0,!0,!0]).slice(),this.borderLineWidth=(t.borderLineWidth||[2,2,2,2]).slice(),this.borderLineColor=u(t.borderLineColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]);var i=t.ticks||[[],[]],o=this._tickBounds;o[0]=o[1]=1/0,o[2]=o[3]=-1/0;for(var s=0;s<2;++s){var l=i[s].slice(0);0!==l.length&&(l.sort(h),o[s]=Math.min(o[s],l[0].x),o[s+2]=Math.max(o[s+2],l[l.length-1].x))}this.grid.update({bounds:o,ticks:i}),this.text.update({bounds:o,ticks:i,labels:t.labels||[\"x\",\"y\"],labelSize:t.labelSize||[12,12],labelFont:t.labelFont||[\"sans-serif\",\"sans-serif\"],title:t.title||\"\",titleSize:t.titleSize||18,titleFont:t.titleFont||\"sans-serif\"}),this.static=!!t.static,this.setDirty()},c.dispose=function(){this.box.dispose(),this.grid.dispose(),this.text.dispose(),this.line.dispose();for(var t=this.objects.length-1;t>=0;--t)this.objects[t].dispose();this.objects.length=0;for(t=this.overlays.length-1;t>=0;--t)this.overlays[t].dispose();this.overlays.length=0,this.gl=null},c.addObject=function(t){this.objects.indexOf(t)<0&&(this.objects.push(t),this.setDirty())},c.removeObject=function(t){for(var e=this.objects,r=0;r<e.length;++r)if(e[r]===t){e.splice(r,1),this.setDirty();break}},c.addOverlay=function(t){this.overlays.indexOf(t)<0&&(this.overlays.push(t),this.setOverlayDirty())},c.removeOverlay=function(t){for(var e=this.overlays,r=0;r<e.length;++r)if(e[r]===t){e.splice(r,1),this.setOverlayDirty();break}}},{\"./lib/box\":293,\"./lib/grid\":294,\"./lib/line\":295,\"./lib/text\":297,\"gl-select-static\":311}],299:[function(t,e,r){\"use strict\";e.exports=function(t,e){t=t||document.body,e=e||{};var r=[.01,1/0];\"distanceLimits\"in e&&(r[0]=e.distanceLimits[0],r[1]=e.distanceLimits[1]);\"zoomMin\"in e&&(r[0]=e.zoomMin);\"zoomMax\"in e&&(r[1]=e.zoomMax);var c=a({center:e.center||[0,0,0],up:e.up||[0,1,0],eye:e.eye||[0,0,10],mode:e.mode||\"orbit\",distanceLimits:r}),u=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],h=0,f=t.clientWidth,p=t.clientHeight,d={keyBindingMode:\"rotate\",enableWheel:!0,view:c,element:t,delay:e.delay||16,rotateSpeed:e.rotateSpeed||1,zoomSpeed:e.zoomSpeed||1,translateSpeed:e.translateSpeed||1,flipX:!!e.flipX,flipY:!!e.flipY,modes:c.modes,_ortho:e._ortho||e.projection&&\"orthographic\"===e.projection.type||!1,tick:function(){var e=n(),r=this.delay,a=e-2*r;c.idle(e-r),c.recalcMatrix(a),c.flush(e-(100+2*r));for(var i=!0,o=c.computedMatrix,s=0;s<16;++s)i=i&&u[s]===o[s],u[s]=o[s];var l=t.clientWidth===f&&t.clientHeight===p;return f=t.clientWidth,p=t.clientHeight,i?!l:(h=Math.exp(c.computedRadius[0]),!0)},lookAt:function(t,e,r){c.lookAt(c.lastT(),t,e,r)},rotate:function(t,e,r){c.rotate(c.lastT(),t,e,r)},pan:function(t,e,r){c.pan(c.lastT(),t,e,r)},translate:function(t,e,r){c.translate(c.lastT(),t,e,r)}};return Object.defineProperties(d,{matrix:{get:function(){return c.computedMatrix},set:function(t){return c.setMatrix(c.lastT(),t),c.computedMatrix},enumerable:!0},mode:{get:function(){return c.getMode()},set:function(t){var e=c.computedUp.slice(),r=c.computedEye.slice(),a=c.computedCenter.slice();if(c.setMode(t),\"turntable\"===t){var i=n();c._active.lookAt(i,r,a,e),c._active.lookAt(i+500,r,a,[0,0,1]),c._active.flush(i)}return c.getMode()},enumerable:!0},center:{get:function(){return c.computedCenter},set:function(t){return c.lookAt(c.lastT(),null,t),c.computedCenter},enumerable:!0},eye:{get:function(){return c.computedEye},set:function(t){return c.lookAt(c.lastT(),t),c.computedEye},enumerable:!0},up:{get:function(){return c.computedUp},set:function(t){return c.lookAt(c.lastT(),null,null,t),c.computedUp},enumerable:!0},distance:{get:function(){return h},set:function(t){return c.setDistance(c.lastT(),t),t},enumerable:!0},distanceLimits:{get:function(){return c.getDistanceLimits(r)},set:function(t){return c.setDistanceLimits(t),t},enumerable:!0}}),t.addEventListener(\"contextmenu\",(function(t){return t.preventDefault(),!1})),d._lastX=-1,d._lastY=-1,d._lastMods={shift:!1,control:!1,alt:!1,meta:!1},d.enableMouseListeners=function(){function e(e,r,a,i){var o=d.keyBindingMode;if(!1!==o){var s=\"rotate\"===o,l=\"pan\"===o,u=\"zoom\"===o,f=!!i.control,p=!!i.alt,g=!!i.shift,m=!!(1&e),v=!!(2&e),y=!!(4&e),x=1/t.clientHeight,b=x*(r-d._lastX),_=x*(a-d._lastY),w=d.flipX?1:-1,T=d.flipY?1:-1,k=Math.PI*d.rotateSpeed,M=n();if(-1!==d._lastX&&-1!==d._lastY&&((s&&m&&!f&&!p&&!g||m&&!f&&!p&&g)&&c.rotate(M,w*k*b,-T*k*_,0),(l&&m&&!f&&!p&&!g||v||m&&f&&!p&&!g)&&c.pan(M,-d.translateSpeed*b*h,d.translateSpeed*_*h,0),u&&m&&!f&&!p&&!g||y||m&&!f&&p&&!g)){var A=-d.zoomSpeed*_/window.innerHeight*(M-c.lastT())*100;c.pan(M,0,0,h*(Math.exp(A)-1))}return d._lastX=r,d._lastY=a,d._lastMods=i,!0}}d.mouseListener=i(t,e),t.addEventListener(\"touchstart\",(function(r){var n=s(r.changedTouches[0],t);e(0,n[0],n[1],d._lastMods),e(1,n[0],n[1],d._lastMods),r.preventDefault()}),!!l&&{passive:!1}),t.addEventListener(\"touchmove\",(function(r){var n=s(r.changedTouches[0],t);e(1,n[0],n[1],d._lastMods),r.preventDefault()}),!!l&&{passive:!1}),t.addEventListener(\"touchend\",(function(t){e(0,d._lastX,d._lastY,d._lastMods),t.preventDefault()}),!!l&&{passive:!1}),d.wheelListener=o(t,(function(t,e){if(!1!==d.keyBindingMode&&d.enableWheel){var r=d.flipX?1:-1,a=d.flipY?1:-1,i=n();if(Math.abs(t)>Math.abs(e))c.rotate(i,0,0,-t*r*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var o=-d.zoomSpeed*a*e/window.innerHeight*(i-c.lastT())/20;c.pan(i,0,0,h*(Math.exp(o)-1))}}}),!0)},d.enableMouseListeners(),d};var n=t(\"right-now\"),a=t(\"3d-view\"),i=t(\"mouse-change\"),o=t(\"mouse-wheel\"),s=t(\"mouse-event-offset\"),l=t(\"has-passive-events\")},{\"3d-view\":54,\"has-passive-events\":415,\"mouse-change\":457,\"mouse-event-offset\":458,\"mouse-wheel\":460,\"right-now\":514}],300:[function(t,e,r){var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision mediump float;\\n#define GLSLIFY 1\\nattribute vec2 position;\\nvarying vec2 uv;\\nvoid main() {\\n  uv = position;\\n  gl_Position = vec4(position, 0, 1);\\n}\"]),o=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nuniform sampler2D accumBuffer;\\nvarying vec2 uv;\\n\\nvoid main() {\\n  vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\\n  gl_FragColor = min(vec4(1,1,1,1), accum);\\n}\"]);e.exports=function(t){return a(t,i,o,null,[{name:\"position\",type:\"vec2\"}])}},{\"gl-shader\":312,glslify:413}],301:[function(t,e,r){\"use strict\";var n=t(\"./camera.js\"),a=t(\"gl-axes3d\"),i=t(\"gl-axes3d/properties\"),o=t(\"gl-spikes3d\"),s=t(\"gl-select-static\"),l=t(\"gl-fbo\"),c=t(\"a-big-triangle\"),u=t(\"mouse-change\"),h=t(\"gl-mat4/perspective\"),f=t(\"gl-mat4/ortho\"),p=t(\"./lib/shader\"),d=t(\"is-mobile\")({tablet:!0,featureDetect:!0});function g(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function m(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(e<0){var r=Math.round(Math.pow(10,-e));return Math.ceil(t*r)/r}if(e>0){r=Math.round(Math.pow(10,e));return Math.ceil(t/r)*r}return Math.ceil(t)}function v(t){return\"boolean\"!=typeof t||t}e.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;if(!e){if(e=document.createElement(\"canvas\"),t.container)t.container.appendChild(e);else document.body.appendChild(e)}var r=t.gl;r||(t.glOptions&&(d=!!t.glOptions.preserveDrawingBuffer),r=function(t,e){var r=null;try{(r=t.getContext(\"webgl\",e))||(r=t.getContext(\"experimental-webgl\",e))}catch(t){return null}return r}(e,t.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:d}));if(!r)throw new Error(\"webgl not supported\");var y=t.bounds||[[-10,-10,-10],[10,10,10]],x=new g,b=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!d}),_=p(r),w=t.cameraObject&&!0===t.cameraObject._ortho||t.camera.projection&&\"orthographic\"===t.camera.projection.type||!1,T={eye:t.camera.eye||[2,0,0],center:t.camera.center||[0,0,0],up:t.camera.up||[0,1,0],zoomMin:t.camera.zoomMax||.1,zoomMax:t.camera.zoomMin||100,mode:t.camera.mode||\"turntable\",_ortho:w},k=t.axes||{},M=a(r,k);M.enable=!k.disable;var A=t.spikes||{},S=o(r,A),E=[],C=[],L=[],P=[],I=!0,z=!0,O=new Array(16),D=new Array(16),R={view:null,projection:O,model:D,_ortho:!1},F=(z=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),B=t.cameraObject||n(e,T),N={gl:r,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:x,camera:B,axes:M,axesPixels:null,spikes:S,bounds:y,objects:E,shape:F,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:v(t.autoResize),autoBounds:v(t.autoBounds),autoScale:!!t.autoScale,autoCenter:v(t.autoCenter),clipToBounds:v(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:R,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(t){this.aspect[0]=t.x,this.aspect[1]=t.y,this.aspect[2]=t.z,z=!0},setBounds:function(t,e){this.bounds[0][t]=e.min,this.bounds[1][t]=e.max},setClearColor:function(t){this.clearColor=t},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},j=[r.drawingBufferWidth/N.pixelRatio|0,r.drawingBufferHeight/N.pixelRatio|0];function U(){if(!N._stopped&&N.autoResize){var t=e.parentNode,r=1,n=1;t&&t!==document.body?(r=t.clientWidth,n=t.clientHeight):(r=window.innerWidth,n=window.innerHeight);var a=0|Math.ceil(r*N.pixelRatio),i=0|Math.ceil(n*N.pixelRatio);if(a!==e.width||i!==e.height){e.width=a,e.height=i;var o=e.style;o.position=o.position||\"absolute\",o.left=\"0px\",o.top=\"0px\",o.width=r+\"px\",o.height=n+\"px\",I=!0}}}N.autoResize&&U();function V(){for(var t=E.length,e=P.length,n=0;n<e;++n)L[n]=0;t:for(n=0;n<t;++n){var a=E[n],i=a.pickSlots;if(i){for(var o=0;o<e;++o)if(L[o]+i<255){C[n]=o,a.setPickBase(L[o]+1),L[o]+=i;continue t}var l=s(r,F);C[n]=e,P.push(l),L.push(i),a.setPickBase(1),e+=1}else C[n]=-1}for(;e>0&&0===L[e-1];)L.pop(),P.pop().dispose()}function q(){if(N.contextLost)return!0;r.isContextLost()&&(N.contextLost=!0,N.mouseListener.enabled=!1,N.selection.object=null,N.oncontextloss&&N.oncontextloss())}window.addEventListener(\"resize\",U),N.update=function(t){N._stopped||(t=t||{},I=!0,z=!0)},N.add=function(t){N._stopped||(t.axes=M,E.push(t),C.push(-1),I=!0,z=!0,V())},N.remove=function(t){if(!N._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),I=!0,z=!0,V())}},N.dispose=function(){if(!N._stopped&&(N._stopped=!0,window.removeEventListener(\"resize\",U),e.removeEventListener(\"webglcontextlost\",q),N.mouseListener.enabled=!1,!N.contextLost)){M.dispose(),S.dispose();for(var t=0;t<E.length;++t)E[t].dispose();b.dispose();for(t=0;t<P.length;++t)P[t].dispose();_.dispose(),r=null,M=null,S=null,E=[]}},N._mouseRotating=!1,N._prevButtons=0,N.enableMouseListeners=function(){N.mouseListener=u(e,(function(t,e,r){if(!N._stopped){var n=P.length,a=E.length,i=x.object;x.distance=1/0,x.mouse[0]=e,x.mouse[1]=r,x.object=null,x.screen=null,x.dataCoordinate=x.dataPosition=null;var o=!1;if(t&&N._prevButtons)N._mouseRotating=!0;else{N._mouseRotating&&(z=!0),N._mouseRotating=!1;for(var s=0;s<n;++s){var l=P[s].query(e,j[1]-r-1,N.pickRadius);if(l){if(l.distance>x.distance)continue;for(var c=0;c<a;++c){var u=E[c];if(C[c]===s){var h=u.pick(l);h&&(x.buttons=t,x.screen=l.coord,x.distance=l.distance,x.object=u,x.index=h.distance,x.dataPosition=h.position,x.dataCoordinate=h.dataCoordinate,x.data=h,o=!0)}}}}}i&&i!==x.object&&(i.highlight&&i.highlight(null),I=!0),x.object&&(x.object.highlight&&x.object.highlight(x.data),I=!0),(o=o||x.object!==i)&&N.onselect&&N.onselect(x),1&t&&!(1&N._prevButtons)&&N.onclick&&N.onclick(x),N._prevButtons=t}}))},e.addEventListener(\"webglcontextlost\",q);var H=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],G=[H[0].slice(),H[1].slice()];function Y(){if(!q()){U();var t=N.camera.tick();R.view=N.camera.matrix,I=I||t,z=z||t,M.pixelRatio=N.pixelRatio,S.pixelRatio=N.pixelRatio;var e=E.length,n=H[0],a=H[1];n[0]=n[1]=n[2]=1/0,a[0]=a[1]=a[2]=-1/0;for(var o=0;o<e;++o){(L=E[o]).pixelRatio=N.pixelRatio,L.axes=N.axes,I=I||!!L.dirty,z=z||!!L.dirty;var s=L.bounds;if(s)for(var l=s[0],u=s[1],p=0;p<3;++p)n[p]=Math.min(n[p],l[p]),a[p]=Math.max(a[p],u[p])}var d=N.bounds;if(N.autoBounds)for(p=0;p<3;++p){if(a[p]<n[p])n[p]=-1,a[p]=1;else{n[p]===a[p]&&(n[p]-=1,a[p]+=1);var g=.05*(a[p]-n[p]);n[p]=n[p]-g,a[p]=a[p]+g}d[0][p]=n[p],d[1][p]=a[p]}var v=!1;for(p=0;p<3;++p)v=v||G[0][p]!==d[0][p]||G[1][p]!==d[1][p],G[0][p]=d[0][p],G[1][p]=d[1][p];if(z=z||v,I=I||v){if(v){var y=[0,0,0];for(o=0;o<3;++o)y[o]=m((d[1][o]-d[0][o])/10);M.autoTicks?M.update({bounds:d,tickSpacing:y}):M.update({bounds:d})}var T=r.drawingBufferWidth,k=r.drawingBufferHeight;F[0]=T,F[1]=k,j[0]=0|Math.max(T/N.pixelRatio,1),j[1]=0|Math.max(k/N.pixelRatio,1),function(t,e){var r=t.bounds,n=t.cameraParams,a=n.projection,i=n.model,o=t.gl.drawingBufferWidth,s=t.gl.drawingBufferHeight,l=t.zNear,c=t.zFar,u=t.fovy,p=o/s;e?(f(a,-p,p,-1,1,l,c),n._ortho=!0):(h(a,u,p,l,c),n._ortho=!1);for(var d=0;d<16;++d)i[d]=0;i[15]=1;var g=0;for(d=0;d<3;++d)g=Math.max(g,r[1][d]-r[0][d]);for(d=0;d<3;++d)t.autoScale?i[5*d]=t.aspect[d]/(r[1][d]-r[0][d]):i[5*d]=1/g,t.autoCenter&&(i[12+d]=.5*-i[5*d]*(r[0][d]+r[1][d]))}(N,w);for(o=0;o<e;++o){(L=E[o]).axesBounds=d,N.clipToBounds&&(L.clipBounds=d)}x.object&&(N.snapToData?S.position=x.dataCoordinate:S.position=x.dataPosition,S.bounds=d),z&&(z=!1,function(){if(!q()){r.colorMask(!0,!0,!0,!0),r.depthMask(!0),r.disable(r.BLEND),r.enable(r.DEPTH_TEST),r.depthFunc(r.LEQUAL);for(var t=E.length,e=P.length,n=0;n<e;++n){var a=P[n];a.shape=j,a.begin();for(var i=0;i<t;++i)if(C[i]===n){var o=E[i];o.drawPick&&(o.pixelRatio=1,o.drawPick(R))}a.end()}}}()),N.axesPixels=i(N.axes,R,T,k),N.onrender&&N.onrender(),r.bindFramebuffer(r.FRAMEBUFFER,null),r.viewport(0,0,T,k),N.clearRGBA(),r.depthMask(!0),r.colorMask(!0,!0,!0,!0),r.enable(r.DEPTH_TEST),r.depthFunc(r.LEQUAL),r.disable(r.BLEND),r.disable(r.CULL_FACE);var A=!1;M.enable&&(A=A||M.isTransparent(),M.draw(R)),S.axes=M,x.object&&S.draw(R),r.disable(r.CULL_FACE);for(o=0;o<e;++o){(L=E[o]).axes=M,L.pixelRatio=N.pixelRatio,L.isOpaque&&L.isOpaque()&&L.draw(R),L.isTransparent&&L.isTransparent()&&(A=!0)}if(A){b.shape=F,b.bind(),r.clear(r.DEPTH_BUFFER_BIT),r.colorMask(!1,!1,!1,!1),r.depthMask(!0),r.depthFunc(r.LESS),M.enable&&M.isTransparent()&&M.drawTransparent(R);for(o=0;o<e;++o){(L=E[o]).isOpaque&&L.isOpaque()&&L.draw(R)}r.enable(r.BLEND),r.blendEquation(r.FUNC_ADD),r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA),r.colorMask(!0,!0,!0,!0),r.depthMask(!1),r.clearColor(0,0,0,0),r.clear(r.COLOR_BUFFER_BIT),M.isTransparent()&&M.drawTransparent(R);for(o=0;o<e;++o){var L;(L=E[o]).isTransparent&&L.isTransparent()&&L.drawTransparent(R)}r.bindFramebuffer(r.FRAMEBUFFER,null),r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA),r.disable(r.DEPTH_TEST),_.bind(),b.color[0].bind(0),_.uniforms.accumBuffer=0,c(r),r.disable(r.BLEND)}I=!1;for(o=0;o<e;++o)E[o].dirty=!1}}}return N.enableMouseListeners(),function t(){if(N._stopped||N.contextLost)return;Y(),requestAnimationFrame(t)}(),N.redraw=function(){N._stopped||(I=!0,Y())},N},createCamera:n}},{\"./camera.js\":299,\"./lib/shader\":300,\"a-big-triangle\":64,\"gl-axes3d\":250,\"gl-axes3d/properties\":257,\"gl-fbo\":266,\"gl-mat4/ortho\":281,\"gl-mat4/perspective\":282,\"gl-select-static\":311,\"gl-spikes3d\":321,\"is-mobile\":441,\"mouse-change\":457}],302:[function(t,e,r){var n=t(\"glslify\");r.pointVertex=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\n\\nuniform mat3 matrix;\\nuniform float pointSize;\\nuniform float pointCloud;\\n\\nhighp float rand(vec2 co) {\\n  highp float a = 12.9898;\\n  highp float b = 78.233;\\n  highp float c = 43758.5453;\\n  highp float d = dot(co.xy, vec2(a, b));\\n  highp float e = mod(d, 3.14);\\n  return fract(sin(e) * c);\\n}\\n\\nvoid main() {\\n  vec3 hgPosition = matrix * vec3(position, 1);\\n  gl_Position  = vec4(hgPosition.xy, 0, hgPosition.z);\\n    // if we don't jitter the point size a bit, overall point cloud\\n    // saturation 'jumps' on zooming, which is disturbing and confusing\\n  gl_PointSize = pointSize * ((19.5 + rand(position)) / 20.0);\\n  if(pointCloud != 0.0) { // pointCloud is truthy\\n    // get the same square surface as circle would be\\n    gl_PointSize *= 0.886;\\n  }\\n}\"]),r.pointFragment=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color, borderColor;\\nuniform float centerFraction;\\nuniform float pointCloud;\\n\\nvoid main() {\\n  float radius;\\n  vec4 baseColor;\\n  if(pointCloud != 0.0) { // pointCloud is truthy\\n    if(centerFraction == 1.0) {\\n      gl_FragColor = color;\\n    } else {\\n      gl_FragColor = mix(borderColor, color, centerFraction);\\n    }\\n  } else {\\n    radius = length(2.0 * gl_PointCoord.xy - 1.0);\\n    if(radius > 1.0) {\\n      discard;\\n    }\\n    baseColor = mix(borderColor, color, step(radius, centerFraction));\\n    gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);\\n  }\\n}\\n\"]),r.pickVertex=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\nattribute vec4 pickId;\\n\\nuniform mat3 matrix;\\nuniform float pointSize;\\nuniform vec4 pickOffset;\\n\\nvarying vec4 fragId;\\n\\nvoid main() {\\n  vec3 hgPosition = matrix * vec3(position, 1);\\n  gl_Position  = vec4(hgPosition.xy, 0, hgPosition.z);\\n  gl_PointSize = pointSize;\\n\\n  vec4 id = pickId + pickOffset;\\n  id.y += floor(id.x / 256.0);\\n  id.x -= floor(id.x / 256.0) * 256.0;\\n\\n  id.z += floor(id.y / 256.0);\\n  id.y -= floor(id.y / 256.0) * 256.0;\\n\\n  id.w += floor(id.z / 256.0);\\n  id.z -= floor(id.z / 256.0) * 256.0;\\n\\n  fragId = id;\\n}\\n\"]),r.pickFragment=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragId;\\n\\nvoid main() {\\n  float radius = length(2.0 * gl_PointCoord.xy - 1.0);\\n  if(radius > 1.0) {\\n    discard;\\n  }\\n  gl_FragColor = fragId / 255.0;\\n}\\n\"])},{glslify:413}],303:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),a=t(\"gl-buffer\"),i=t(\"typedarray-pool\"),o=t(\"./lib/shader\");function s(t,e,r,n,a){this.plot=t,this.offsetBuffer=e,this.pickBuffer=r,this.shader=n,this.pickShader=a,this.sizeMin=.5,this.sizeMinCap=2,this.sizeMax=20,this.areaRatio=1,this.pointCount=0,this.color=[1,0,0,1],this.borderColor=[0,0,0,1],this.blend=!1,this.pickOffset=0,this.points=null}e.exports=function(t,e){var r=t.gl,i=a(r),l=a(r),c=n(r,o.pointVertex,o.pointFragment),u=n(r,o.pickVertex,o.pickFragment),h=new s(t,i,l,c,u);return h.update(e),t.addObject(h),h};var l,c,u=s.prototype;u.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},u.update=function(t){var e;function r(e,r){return e in t?t[e]:r}t=t||{},this.sizeMin=r(\"sizeMin\",.5),this.sizeMax=r(\"sizeMax\",20),this.color=r(\"color\",[1,0,0,1]).slice(),this.areaRatio=r(\"areaRatio\",1),this.borderColor=r(\"borderColor\",[0,0,0,1]).slice(),this.blend=r(\"blend\",!1);var n=t.positions.length>>>1,a=t.positions instanceof Float32Array,o=t.idToIndex instanceof Int32Array&&t.idToIndex.length>=n,s=t.positions,l=a?s:i.mallocFloat32(s.length),c=o?t.idToIndex:i.mallocInt32(n);if(a||l.set(s),!o)for(l.set(s),e=0;e<n;e++)c[e]=e;this.points=s,this.offsetBuffer.update(l),this.pickBuffer.update(c),a||i.free(l),o||i.free(c),this.pointCount=n,this.pickOffset=0},u.unifiedDraw=(l=[1,0,0,0,1,0,0,0,1],c=[0,0,0,0],function(t){var e=void 0!==t,r=e?this.pickShader:this.shader,n=this.plot.gl,a=this.plot.dataBox;if(0===this.pointCount)return t;var i=a[2]-a[0],o=a[3]-a[1],s=function(t,e){var r,n=0,a=t.length>>>1;for(r=0;r<a;r++){var i=t[2*r],o=t[2*r+1];i>=e[0]&&i<=e[2]&&o>=e[1]&&o<=e[3]&&n++}return n}(this.points,a),u=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(s,.33333)));l[0]=2/i,l[4]=2/o,l[6]=-2*a[0]/i-1,l[7]=-2*a[1]/o-1,this.offsetBuffer.bind(),r.bind(),r.attributes.position.pointer(),r.uniforms.matrix=l,r.uniforms.color=this.color,r.uniforms.borderColor=this.borderColor,r.uniforms.pointCloud=u<5,r.uniforms.pointSize=u,r.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),e&&(c[0]=255&t,c[1]=t>>8&255,c[2]=t>>16&255,c[3]=t>>24&255,this.pickBuffer.bind(),r.attributes.pickId.pointer(n.UNSIGNED_BYTE),r.uniforms.pickOffset=c,this.pickOffset=t);var h=n.getParameter(n.BLEND),f=n.getParameter(n.DITHER);return h&&!this.blend&&n.disable(n.BLEND),f&&n.disable(n.DITHER),n.drawArrays(n.POINTS,0,this.pointCount),h&&!this.blend&&n.enable(n.BLEND),f&&n.enable(n.DITHER),t+this.pointCount}),u.draw=u.unifiedDraw,u.drawPick=u.unifiedDraw,u.pick=function(t,e,r){var n=this.pickOffset,a=this.pointCount;if(r<n||r>=n+a)return null;var i=r-n,o=this.points;return{object:this,pointId:i,dataCoord:[o[2*i],o[2*i+1]]}}},{\"./lib/shader\":302,\"gl-buffer\":258,\"gl-shader\":312,\"typedarray-pool\":567}],304:[function(t,e,r){e.exports=function(t,e,r,n){var a,i,o,s,l,c=e[0],u=e[1],h=e[2],f=e[3],p=r[0],d=r[1],g=r[2],m=r[3];(i=c*p+u*d+h*g+f*m)<0&&(i=-i,p=-p,d=-d,g=-g,m=-m);1-i>1e-6?(a=Math.acos(i),o=Math.sin(a),s=Math.sin((1-n)*a)/o,l=Math.sin(n*a)/o):(s=1-n,l=n);return t[0]=s*c+l*p,t[1]=s*u+l*d,t[2]=s*h+l*g,t[3]=s*f+l*m,t}},{}],305:[function(t,e,r){\"use strict\";e.exports=function(t){return t||0===t?t.toString():\"\"}},{}],306:[function(t,e,r){\"use strict\";var n=t(\"vectorize-text\");e.exports=function(t,e,r){var i=a[e];i||(i=a[e]={});if(t in i)return i[t];var o={textAlign:\"center\",textBaseline:\"middle\",lineHeight:1,font:e,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=n(t,o);o.triangles=!1;var l,c,u=n(t,o);if(r&&1!==r){for(l=0;l<s.positions.length;++l)for(c=0;c<s.positions[l].length;++c)s.positions[l][c]/=r;for(l=0;l<u.positions.length;++l)for(c=0;c<u.positions[l].length;++c)u.positions[l][c]/=r}var h=[[1/0,1/0],[-1/0,-1/0]],f=u.positions.length;for(l=0;l<f;++l){var p=u.positions[l];for(c=0;c<2;++c)h[0][c]=Math.min(h[0][c],p[c]),h[1][c]=Math.max(h[1][c],p[c])}return i[t]=[s,u,h]};var a={}},{\"vectorize-text\":572}],307:[function(t,e,r){var n=t(\"gl-shader\"),a=t(\"glslify\"),i=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform vec4 highlightId;\\nuniform float highlightScale;\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n    gl_Position = vec4(0,0,0,0);\\n  } else {\\n    float scale = 1.0;\\n    if(distance(highlightId, id) < 0.0001) {\\n      scale = highlightScale;\\n    }\\n\\n    vec4 worldPosition = model * vec4(position, 1);\\n    vec4 viewPosition = view * worldPosition;\\n    viewPosition = viewPosition / viewPosition.w;\\n    vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\\n\\n    gl_Position = clipPosition;\\n    interpColor = color;\\n    pickId = id;\\n    dataCoordinate = position;\\n  }\\n}\"]),o=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform vec2 screenSize;\\nuniform vec3 clipBounds[2];\\nuniform float highlightScale, pixelRatio;\\nuniform vec4 highlightId;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n    gl_Position = vec4(0,0,0,0);\\n  } else {\\n    float scale = pixelRatio;\\n    if(distance(highlightId.bgr, id.bgr) < 0.001) {\\n      scale *= highlightScale;\\n    }\\n\\n    vec4 worldPosition = model * vec4(position, 1.0);\\n    vec4 viewPosition = view * worldPosition;\\n    vec4 clipPosition = projection * viewPosition;\\n    clipPosition /= clipPosition.w;\\n\\n    gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\\n    interpColor = color;\\n    pickId = id;\\n    dataCoordinate = position;\\n  }\\n}\"]),s=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform float highlightScale;\\nuniform vec4 highlightId;\\nuniform vec3 axes[2];\\nuniform mat4 model, view, projection;\\nuniform vec2 screenSize;\\nuniform vec3 clipBounds[2];\\nuniform float scale, pixelRatio;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n    gl_Position = vec4(0,0,0,0);\\n  } else {\\n    float lscale = pixelRatio * scale;\\n    if(distance(highlightId, id) < 0.0001) {\\n      lscale *= highlightScale;\\n    }\\n\\n    vec4 clipCenter   = projection * view * model * vec4(position, 1);\\n    vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\\n    vec4 clipPosition = projection * view * model * vec4(dataPosition, 1);\\n\\n    gl_Position = clipPosition;\\n    interpColor = color;\\n    pickId = id;\\n    dataCoordinate = dataPosition;\\n  }\\n}\\n\"]),l=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 fragClipBounds[2];\\nuniform float opacity;\\n\\nvarying vec4 interpColor;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n  if (\\n    outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||\\n    interpColor.a * opacity == 0.\\n  ) discard;\\n  gl_FragColor = interpColor * opacity;\\n}\\n\"]),c=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 fragClipBounds[2];\\nuniform float pickGroup;\\n\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n  if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;\\n\\n  gl_FragColor = vec4(pickGroup, pickId.bgr);\\n}\"]),u=[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"glyph\",type:\"vec2\"},{name:\"id\",type:\"vec4\"}],h={vertex:i,fragment:l,attributes:u},f={vertex:o,fragment:l,attributes:u},p={vertex:s,fragment:l,attributes:u},d={vertex:i,fragment:c,attributes:u},g={vertex:o,fragment:c,attributes:u},m={vertex:s,fragment:c,attributes:u};function v(t,e){var r=n(t,e),a=r.attributes;return a.position.location=0,a.color.location=1,a.glyph.location=2,a.id.location=3,r}r.createPerspective=function(t){return v(t,h)},r.createOrtho=function(t){return v(t,f)},r.createProject=function(t){return v(t,p)},r.createPickPerspective=function(t){return v(t,d)},r.createPickOrtho=function(t){return v(t,g)},r.createPickProject=function(t){return v(t,m)}},{\"gl-shader\":312,glslify:413}],308:[function(t,e,r){\"use strict\";var n=t(\"is-string-blank\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"typedarray-pool\"),s=t(\"gl-mat4/multiply\"),l=t(\"./lib/shaders\"),c=t(\"./lib/glyphs\"),u=t(\"./lib/get-simple-string\"),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(t,e){var r=t[0],n=t[1],a=t[2],i=t[3];return t[0]=e[0]*r+e[4]*n+e[8]*a+e[12]*i,t[1]=e[1]*r+e[5]*n+e[9]*a+e[13]*i,t[2]=e[2]*r+e[6]*n+e[10]*a+e[14]*i,t[3]=e[3]*r+e[7]*n+e[11]*a+e[15]*i,t}function p(t,e,r,n){return f(n,n),f(n,n),f(n,n)}function d(t,e){this.index=t,this.dataCoordinate=this.position=e}function g(t){return!0===t||t>1?1:t}function m(t,e,r,n,a,i,o,s,l,c,u,h){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=r,this.projectShader=n,this.pointBuffer=a,this.colorBuffer=i,this.glyphBuffer=o,this.idBuffer=s,this.vao=l,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[2/3,2/3,2/3],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=c,this.pickOrthoShader=u,this.pickProjectShader=h,this.points=[],this._selectResult=new d(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}e.exports=function(t){var e=t.gl,r=l.createPerspective(e),n=l.createOrtho(e),o=l.createProject(e),s=l.createPickPerspective(e),c=l.createPickOrtho(e),u=l.createPickProject(e),h=a(e),f=a(e),p=a(e),d=a(e),g=i(e,[{buffer:h,size:3,type:e.FLOAT},{buffer:f,size:4,type:e.FLOAT},{buffer:p,size:2,type:e.FLOAT},{buffer:d,size:4,type:e.UNSIGNED_BYTE,normalized:!0}]),v=new m(e,r,n,o,h,f,p,d,g,s,c,u);return v.update(t),v};var v=m.prototype;v.pickSlots=1,v.setPickBase=function(t){this.pickId=t},v.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},v.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],x=[0,0,0],b=[0,0,0],_=[0,0,0,1],w=[0,0,0,1],T=h.slice(),k=[0,0,0],M=[[0,0,0],[0,0,0]];function A(t){return t[0]=t[1]=t[2]=0,t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function E(t,e,r,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[r]=n,t}function C(t,e,r,n){var a,i=e.axesProject,o=e.gl,l=t.uniforms,c=r.model||h,u=r.view||h,f=r.projection||h,d=e.axesBounds,g=function(t){for(var e=M,r=0;r<2;++r)for(var n=0;n<3;++n)e[r][n]=Math.max(Math.min(t[r][n],1e8),-1e8);return e}(e.clipBounds);a=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=f,l.screenSize=y,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=g,l.pickGroup=e.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(i[m]){l.scale=e.projectScale[m],l.opacity=e.projectOpacity[m];for(var v=T,C=0;C<16;++C)v[C]=0;for(C=0;C<4;++C)v[5*C]=1;v[5*m]=0,a[m]<0?v[12+m]=d[0][m]:v[12+m]=d[1][m],s(v,c,v),l.model=v;var L=(m+1)%3,P=(m+2)%3,I=A(x),z=A(b);I[L]=1,z[P]=1;var O=p(0,0,0,S(_,I)),D=p(0,0,0,S(w,z));if(Math.abs(O[1])>Math.abs(D[1])){var R=O;O=D,D=R,R=I,I=z,z=R;var F=L;L=P,P=F}O[0]<0&&(I[L]=-1),D[1]>0&&(z[P]=-1);var B=0,N=0;for(C=0;C<4;++C)B+=Math.pow(c[4*L+C],2),N+=Math.pow(c[4*P+C],2);I[L]/=Math.sqrt(B),z[P]/=Math.sqrt(N),l.axes[0]=I,l.axes[1]=z,l.fragClipBounds[0]=E(k,g[0],m,-1e8),l.fragClipBounds[1]=E(k,g[1],m,1e8),e.vao.bind(),e.vao.draw(o.TRIANGLES,e.vertexCount),e.lineWidth>0&&(o.lineWidth(e.lineWidth*n),e.vao.draw(o.LINES,e.lineVertexCount,e.vertexCount)),e.vao.unbind()}}var L=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function P(t,e,r,n,a,i,o){var s=r.gl;if((i===r.projectHasAlpha||o)&&C(e,r,n,a),i===r.hasAlpha||o){t.bind();var l=t.uniforms;l.model=n.model||h,l.view=n.view||h,l.projection=n.projection||h,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=r.highlightId,l.highlightScale=r.highlightScale,l.fragClipBounds=L,l.clipBounds=r.axes.bounds,l.opacity=r.opacity,l.pickGroup=r.pickId/255,l.pixelRatio=a,r.vao.bind(),r.vao.draw(s.TRIANGLES,r.vertexCount),r.lineWidth>0&&(s.lineWidth(r.lineWidth*a),r.vao.draw(s.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function I(t,e,r,a){var i;i=Array.isArray(t)?e<t.length?t[e]:void 0:t,i=u(i);var o=!0;n(i)&&(i=\"\\u25bc\",o=!1);var s=c(i,r,a);return{mesh:s[0],lines:s[1],bounds:s[2],visible:o}}v.draw=function(t){P(this.useOrtho?this.orthoShader:this.shader,this.projectShader,this,t,this.pixelRatio,!1,!1)},v.drawTransparent=function(t){P(this.useOrtho?this.orthoShader:this.shader,this.projectShader,this,t,this.pixelRatio,!0,!1)},v.drawPick=function(t){P(this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader,this.pickProjectShader,this,t,1,!0,!0)},v.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[2]+(t.value[1]<<8)+(t.value[0]<<16);if(e>=this.pointCount||e<0)return null;var r=this.points[e],n=this._selectResult;n.index=e;for(var a=0;a<3;++a)n.position[a]=n.dataCoordinate[a]=r[a];return n},v.highlight=function(t){if(t){var e=t.index,r=255&e,n=e>>8&255,a=e>>16&255;this.highlightId=[r/255,n/255,a/255,0]}else this.highlightId=[1,1,1,1]},v.update=function(t){if(\"perspective\"in(t=t||{})&&(this.useOrtho=!t.perspective),\"orthographic\"in t&&(this.useOrtho=!!t.orthographic),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"project\"in t)if(Array.isArray(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if(\"projectScale\"in t)if(Array.isArray(t.projectScale))this.projectScale=t.projectScale.slice();else{var r=+t.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,\"projectOpacity\"in t){if(Array.isArray(t.projectOpacity))this.projectOpacity=t.projectOpacity.slice();else{r=+t.projectOpacity;this.projectOpacity=[r,r,r]}for(var n=0;n<3;++n)this.projectOpacity[n]=g(this.projectOpacity[n]),this.projectOpacity[n]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=g(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var a,i,s=t.position,l=t.font||\"normal\",c=t.alignment||[0,0];if(2===c.length)a=c[0],i=c[1];else{a=[],i=[];for(n=0;n<c.length;++n)a[n]=c[n][0],i[n]=c[n][1]}var u=[1/0,1/0,1/0],h=[-1/0,-1/0,-1/0],f=t.glyph,p=t.color,d=t.size,m=t.angle,v=t.lineColor,y=-1,x=0,b=0,_=0;if(s.length){_=s.length;t:for(n=0;n<_;++n){for(var w=s[n],T=0;T<3;++T)if(isNaN(w[T])||!isFinite(w[T]))continue t;var k=(N=I(f,n,l,this.pixelRatio)).mesh,M=N.lines,A=N.bounds;x+=3*k.cells.length,b+=2*M.edges.length}}var S=x+b,E=o.mallocFloat(3*S),C=o.mallocFloat(4*S),L=o.mallocFloat(2*S),P=o.mallocUint32(S);if(S>0){var z=0,O=x,D=[0,0,0,1],R=[0,0,0,1],F=Array.isArray(p)&&Array.isArray(p[0]),B=Array.isArray(v)&&Array.isArray(v[0]);t:for(n=0;n<_;++n){y+=1;for(w=s[n],T=0;T<3;++T){if(isNaN(w[T])||!isFinite(w[T]))continue t;h[T]=Math.max(h[T],w[T]),u[T]=Math.min(u[T],w[T])}k=(N=I(f,n,l,this.pixelRatio)).mesh,M=N.lines,A=N.bounds;var N,j=N.visible;if(j)if(Array.isArray(p)){if(3===(U=F?n<p.length?p[n]:[0,0,0,0]:p).length){for(T=0;T<3;++T)D[T]=U[T];D[3]=1}else if(4===U.length){for(T=0;T<4;++T)D[T]=U[T];!this.hasAlpha&&U[3]<1&&(this.hasAlpha=!0)}}else D[0]=D[1]=D[2]=0,D[3]=1;else D=[1,1,1,0];if(j)if(Array.isArray(v)){var U;if(3===(U=B?n<v.length?v[n]:[0,0,0,0]:v).length){for(T=0;T<3;++T)R[T]=U[T];R[T]=1}else if(4===U.length){for(T=0;T<4;++T)R[T]=U[T];!this.hasAlpha&&U[3]<1&&(this.hasAlpha=!0)}}else R[0]=R[1]=R[2]=0,R[3]=1;else R=[1,1,1,0];var V=.5;j?Array.isArray(d)?V=n<d.length?+d[n]:12:d?V=+d:this.useOrtho&&(V=12):V=0;var q=0;Array.isArray(m)?q=n<m.length?+m[n]:0:m&&(q=+m);var H=Math.cos(q),G=Math.sin(q);for(w=s[n],T=0;T<3;++T)h[T]=Math.max(h[T],w[T]),u[T]=Math.min(u[T],w[T]);var Y=a,W=i;Y=0;Array.isArray(a)?Y=n<a.length?a[n]:0:a&&(Y=a);W=0;Array.isArray(i)?W=n<i.length?i[n]:0:i&&(W=i);var Z=[Y*=Y>0?1-A[0][0]:Y<0?1+A[1][0]:1,W*=W>0?1-A[0][1]:W<0?1+A[1][1]:1],X=k.cells||[],J=k.positions||[];for(T=0;T<X.length;++T)for(var K=X[T],Q=0;Q<3;++Q){for(var $=0;$<3;++$)E[3*z+$]=w[$];for($=0;$<4;++$)C[4*z+$]=D[$];P[z]=y;var tt=J[K[Q]];L[2*z]=V*(H*tt[0]-G*tt[1]+Z[0]),L[2*z+1]=V*(G*tt[0]+H*tt[1]+Z[1]),z+=1}for(X=M.edges,J=M.positions,T=0;T<X.length;++T)for(K=X[T],Q=0;Q<2;++Q){for($=0;$<3;++$)E[3*O+$]=w[$];for($=0;$<4;++$)C[4*O+$]=R[$];P[O]=y;tt=J[K[Q]];L[2*O]=V*(H*tt[0]-G*tt[1]+Z[0]),L[2*O+1]=V*(G*tt[0]+H*tt[1]+Z[1]),O+=1}}}this.bounds=[u,h],this.points=s,this.pointCount=s.length,this.vertexCount=x,this.lineVertexCount=b,this.pointBuffer.update(E),this.colorBuffer.update(C),this.glyphBuffer.update(L),this.idBuffer.update(P),o.free(E),o.free(C),o.free(L),o.free(P)},v.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()}},{\"./lib/get-simple-string\":305,\"./lib/glyphs\":306,\"./lib/shaders\":307,\"gl-buffer\":258,\"gl-mat4/multiply\":280,\"gl-vao\":332,\"is-string-blank\":444,\"typedarray-pool\":567}],309:[function(t,e,r){\"use strict\";var n=t(\"glslify\");r.boxVertex=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 vertex;\\n\\nuniform vec2 cornerA, cornerB;\\n\\nvoid main() {\\n  gl_Position = vec4(mix(cornerA, cornerB, vertex), 0, 1);\\n}\\n\"]),r.boxFragment=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\n\\nvoid main() {\\n  gl_FragColor = color;\\n}\\n\"])},{glslify:413}],310:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),a=t(\"gl-buffer\"),i=t(\"./lib/shaders\");function o(t,e,r){this.plot=t,this.boxBuffer=e,this.boxShader=r,this.enabled=!0,this.selectBox=[1/0,1/0,-1/0,-1/0],this.borderColor=[0,0,0,1],this.innerFill=!1,this.innerColor=[0,0,0,.25],this.outerFill=!0,this.outerColor=[0,0,0,.5],this.borderWidth=10}e.exports=function(t,e){var r=t.gl,s=a(r,[0,0,0,1,1,0,1,1]),l=n(r,i.boxVertex,i.boxFragment),c=new o(t,s,l);return c.update(e),t.addOverlay(c),c};var s=o.prototype;s.draw=function(){if(this.enabled){var t=this.plot,e=this.selectBox,r=this.borderWidth,n=(this.innerFill,this.innerColor),a=(this.outerFill,this.outerColor),i=this.borderColor,o=t.box,s=t.screenBox,l=t.dataBox,c=t.viewBox,u=t.pixelRatio,h=(e[0]-l[0])*(c[2]-c[0])/(l[2]-l[0])+c[0],f=(e[1]-l[1])*(c[3]-c[1])/(l[3]-l[1])+c[1],p=(e[2]-l[0])*(c[2]-c[0])/(l[2]-l[0])+c[0],d=(e[3]-l[1])*(c[3]-c[1])/(l[3]-l[1])+c[1];if(h=Math.max(h,c[0]),f=Math.max(f,c[1]),p=Math.min(p,c[2]),d=Math.min(d,c[3]),!(p<h||d<f)){o.bind();var g=s[2]-s[0],m=s[3]-s[1];if(this.outerFill&&(o.drawBox(0,0,g,f,a),o.drawBox(0,f,h,d,a),o.drawBox(0,d,g,m,a),o.drawBox(p,f,g,d,a)),this.innerFill&&o.drawBox(h,f,p,d,n),r>0){var v=r*u;o.drawBox(h-v,f-v,p+v,f+v,i),o.drawBox(h-v,d-v,p+v,d+v,i),o.drawBox(h-v,f-v,h+v,d+v,i),o.drawBox(p-v,f-v,p+v,d+v,i)}}}},s.update=function(t){t=t||{},this.innerFill=!!t.innerFill,this.outerFill=!!t.outerFill,this.innerColor=(t.innerColor||[0,0,0,.5]).slice(),this.outerColor=(t.outerColor||[0,0,0,.5]).slice(),this.borderColor=(t.borderColor||[0,0,0,1]).slice(),this.borderWidth=t.borderWidth||0,this.selectBox=(t.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},{\"./lib/shaders\":309,\"gl-buffer\":258,\"gl-shader\":312}],311:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=e[0],i=e[1],o=n(t,r,i,{}),s=a.mallocUint8(r*i*4);return new l(t,o,s)};var n=t(\"gl-fbo\"),a=t(\"typedarray-pool\"),i=t(\"ndarray\"),o=t(\"bit-twiddle\").nextPow2;function s(t,e,r,n,a){this.coord=[t,e],this.id=r,this.value=n,this.distance=a}function l(t,e,r){this.gl=t,this.fbo=e,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}var c=l.prototype;Object.defineProperty(c,\"shape\",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],r=this.fbo.shape[1];if(r*e*4>this.buffer.length){a.free(this.buffer);for(var n=this.buffer=a.mallocUint8(o(r*e*4)),i=0;i<r*e*4;++i)n[i]=255}return t}}}),c.begin=function(){var t=this.gl;this.shape;t&&(this.fbo.bind(),t.clearColor(1,1,1,1),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT))},c.end=function(){var t=this.gl;t&&(t.bindFramebuffer(t.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},c.query=function(t,e,r){if(!this.gl)return null;var n=this.fbo.shape.slice();t|=0,e|=0,\"number\"!=typeof r&&(r=1);var a=0|Math.min(Math.max(t-r,0),n[0]),o=0|Math.min(Math.max(t+r,0),n[0]),l=0|Math.min(Math.max(e-r,0),n[1]),c=0|Math.min(Math.max(e+r,0),n[1]);if(o<=a||c<=l)return null;var u=[o-a,c-l],h=i(this.buffer,[u[0],u[1],4],[4,4*n[0],1],4*(a+n[0]*l)),f=function(t,e,r){for(var n=1e8,a=-1,i=-1,o=t.shape[0],s=t.shape[1],l=0;l<o;l++)for(var c=0;c<s;c++){var u=t.get(l,c,0),h=t.get(l,c,1),f=t.get(l,c,2),p=t.get(l,c,3);if(u<255||h<255||f<255||p<255){var d=e-l,g=r-c,m=d*d+g*g;m<n&&(n=m,a=l,i=c)}}return[a,i,n]}(h.hi(u[0],u[1],1),r,r),p=f[0],d=f[1];return p<0||Math.pow(this.radius,2)<f[2]?null:new s(p+a|0,d+l|0,h.get(p,d,0),[h.get(p,d,1),h.get(p,d,2),h.get(p,d,3)],Math.sqrt(f[2]))},c.dispose=function(){this.gl&&(this.fbo.dispose(),a.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))}},{\"bit-twiddle\":97,\"gl-fbo\":266,ndarray:469,\"typedarray-pool\":567}],312:[function(t,e,r){\"use strict\";var n=t(\"./lib/create-uniforms\"),a=t(\"./lib/create-attributes\"),i=t(\"./lib/reflect\"),o=t(\"./lib/shader-cache\"),s=t(\"./lib/runtime-reflect\"),l=t(\"./lib/GLError\");function c(t){this.gl=t,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var u=c.prototype;function h(t,e){return t.name<e.name?-1:1}u.bind=function(){var t;this.program||this._relink();var e=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),r=this.gl.lastAttribCount;if(e>r)for(t=r;t<e;t++)this.gl.enableVertexAttribArray(t);else if(r>e)for(t=e;t<r;t++)this.gl.disableVertexAttribArray(t);this.gl.lastAttribCount=e,this.gl.useProgram(this.program)},u.dispose=function(){for(var t=this.gl.lastAttribCount,e=0;e<t;e++)this.gl.disableVertexAttribArray(e);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null},u.update=function(t,e,r,c){if(!e||1===arguments.length){var u=t;t=u.vertex,e=u.fragment,r=u.uniforms,c=u.attributes}var f=this,p=f.gl,d=f._vref;f._vref=o.shader(p,p.VERTEX_SHADER,t),d&&d.dispose(),f.vertShader=f._vref.shader;var g=this._fref;if(f._fref=o.shader(p,p.FRAGMENT_SHADER,e),g&&g.dispose(),f.fragShader=f._fref.shader,!r||!c){var m=p.createProgram();if(p.attachShader(m,f.fragShader),p.attachShader(m,f.vertShader),p.linkProgram(m),!p.getProgramParameter(m,p.LINK_STATUS)){var v=p.getProgramInfoLog(m);throw new l(v,\"Error linking program:\"+v)}r=r||s.uniforms(p,m),c=c||s.attributes(p,m),p.deleteProgram(m)}(c=c.slice()).sort(h);var y,x=[],b=[],_=[];for(y=0;y<c.length;++y){var w=c[y];if(w.type.indexOf(\"mat\")>=0){for(var T=0|w.type.charAt(w.type.length-1),k=new Array(T),M=0;M<T;++M)k[M]=_.length,b.push(w.name+\"[\"+M+\"]\"),\"number\"==typeof w.location?_.push(w.location+M):Array.isArray(w.location)&&w.location.length===T&&\"number\"==typeof w.location[M]?_.push(0|w.location[M]):_.push(-1);x.push({name:w.name,type:w.type,locations:k})}else x.push({name:w.name,type:w.type,locations:[_.length]}),b.push(w.name),\"number\"==typeof w.location?_.push(0|w.location):_.push(-1)}var A=0;for(y=0;y<_.length;++y)if(_[y]<0){for(;_.indexOf(A)>=0;)A+=1;_[y]=A}var S=new Array(r.length);function E(){f.program=o.program(p,f._vref,f._fref,b,_);for(var t=0;t<r.length;++t)S[t]=p.getUniformLocation(f.program,r[t].name)}E(),f._relink=E,f.types={uniforms:i(r),attributes:i(c)},f.attributes=a(p,f,x,_),Object.defineProperty(f,\"uniforms\",n(p,f,r,S))},e.exports=function(t,e,r,n,a){var i=new c(t);return i.update(e,r,n,a),i}},{\"./lib/GLError\":313,\"./lib/create-attributes\":314,\"./lib/create-uniforms\":315,\"./lib/reflect\":316,\"./lib/runtime-reflect\":317,\"./lib/shader-cache\":318}],313:[function(t,e,r){function n(t,e,r){this.shortMessage=e||\"\",this.longMessage=r||\"\",this.rawError=t||\"\",this.message=\"gl-shader: \"+(e||t||\"\")+(r?\"\\n\"+r:\"\"),this.stack=(new Error).stack}n.prototype=new Error,n.prototype.name=\"GLError\",n.prototype.constructor=n,e.exports=n},{}],314:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,a){for(var i={},l=0,c=r.length;l<c;++l){var u=r[l],h=u.name,f=u.type,p=u.locations;switch(f){case\"bool\":case\"int\":case\"float\":o(t,e,p[0],a,1,i,h);break;default:if(f.indexOf(\"vec\")>=0){if((d=f.charCodeAt(f.length-1)-48)<2||d>4)throw new n(\"\",\"Invalid data type for attribute \"+h+\": \"+f);o(t,e,p[0],a,d,i,h)}else{if(!(f.indexOf(\"mat\")>=0))throw new n(\"\",\"Unknown data type for attribute \"+h+\": \"+f);var d;if((d=f.charCodeAt(f.length-1)-48)<2||d>4)throw new n(\"\",\"Invalid data type for attribute \"+h+\": \"+f);s(t,e,p,a,d,i,h)}}}return i};var n=t(\"./GLError\");function a(t,e,r,n,a,i){this._gl=t,this._wrapper=e,this._index=r,this._locations=n,this._dimension=a,this._constFunc=i}var i=a.prototype;function o(t,e,r,n,i,o,s){for(var l=[\"gl\",\"v\"],c=[],u=0;u<i;++u)l.push(\"x\"+u),c.push(\"x\"+u);l.push(\"if(x0.length===void 0){return gl.vertexAttrib\"+i+\"f(v,\"+c.join()+\")}else{return gl.vertexAttrib\"+i+\"fv(v,x0)}\");var h=Function.apply(null,l),f=new a(t,e,r,n,i,h);Object.defineProperty(o,s,{set:function(e){return t.disableVertexAttribArray(n[r]),h(t,n[r],e),e},get:function(){return f},enumerable:!0})}function s(t,e,r,n,a,i,s){for(var l=new Array(a),c=new Array(a),u=0;u<a;++u)o(t,e,r[u],n,a,l,u),c[u]=l[u];Object.defineProperty(l,\"location\",{set:function(t){if(Array.isArray(t))for(var e=0;e<a;++e)c[e].location=t[e];else for(e=0;e<a;++e)c[e].location=t+e;return t},get:function(){for(var t=new Array(a),e=0;e<a;++e)t[e]=n[r[e]];return t},enumerable:!0}),l.pointer=function(e,i,o,s){e=e||t.FLOAT,i=!!i,o=o||a*a,s=s||0;for(var l=0;l<a;++l){var c=n[r[l]];t.vertexAttribPointer(c,a,e,i,o,s+l*a),t.enableVertexAttribArray(c)}};var h=new Array(a),f=t[\"vertexAttrib\"+a+\"fv\"];Object.defineProperty(i,s,{set:function(e){for(var i=0;i<a;++i){var o=n[r[i]];if(t.disableVertexAttribArray(o),Array.isArray(e[0]))f.call(t,o,e[i]);else{for(var s=0;s<a;++s)h[s]=e[a*i+s];f.call(t,o,h)}}return e},get:function(){return l},enumerable:!0})}i.pointer=function(t,e,r,n){var a=this._gl,i=this._locations[this._index];a.vertexAttribPointer(i,this._dimension,t||a.FLOAT,!!e,r||0,n||0),a.enableVertexAttribArray(i)},i.set=function(t,e,r,n){return this._constFunc(this._locations[this._index],t,e,r,n)},Object.defineProperty(i,\"location\",{get:function(){return this._locations[this._index]},set:function(t){return t!==this._locations[this._index]&&(this._locations[this._index]=0|t,this._wrapper.program=null),0|t}})},{\"./GLError\":313}],315:[function(t,e,r){\"use strict\";var n=t(\"./reflect\"),a=t(\"./GLError\");function i(t){return new Function(\"y\",\"return function(){return y}\")(t)}function o(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=e;return r}e.exports=function(t,e,r,s){function l(t,e,r){switch(r){case\"bool\":case\"int\":case\"sampler2D\":case\"samplerCube\":return\"gl.uniform1i(locations[\"+e+\"],obj\"+t+\")\";case\"float\":return\"gl.uniform1f(locations[\"+e+\"],obj\"+t+\")\";default:var n=r.indexOf(\"vec\");if(!(0<=n&&n<=1&&r.length===4+n)){if(0===r.indexOf(\"mat\")&&4===r.length){var i;if((i=r.charCodeAt(r.length-1)-48)<2||i>4)throw new a(\"\",\"Invalid uniform dimension type for matrix \"+name+\": \"+r);return\"gl.uniformMatrix\"+i+\"fv(locations[\"+e+\"],false,obj\"+t+\")\"}throw new a(\"\",\"Unknown uniform data type for \"+name+\": \"+r)}if((i=r.charCodeAt(r.length-1)-48)<2||i>4)throw new a(\"\",\"Invalid data type\");switch(r.charAt(0)){case\"b\":case\"i\":return\"gl.uniform\"+i+\"iv(locations[\"+e+\"],obj\"+t+\")\";case\"v\":return\"gl.uniform\"+i+\"fv(locations[\"+e+\"],obj\"+t+\")\";default:throw new a(\"\",\"Unrecognized data type for vector \"+name+\": \"+r)}}}function c(e){for(var n=[\"return function updateProperty(obj){\"],a=function t(e,r){if(\"object\"!=typeof r)return[[e,r]];var n=[];for(var a in r){var i=r[a],o=e;parseInt(a)+\"\"===a?o+=\"[\"+a+\"]\":o+=\".\"+a,\"object\"==typeof i?n.push.apply(n,t(o,i)):n.push([o,i])}return n}(\"\",e),i=0;i<a.length;++i){var o=a[i],c=o[0],u=o[1];s[u]&&n.push(l(c,u,r[u].type))}return n.push(\"return obj}\"),new Function(\"gl\",\"locations\",n.join(\"\\n\"))(t,s)}function u(n,l,u){if(\"object\"==typeof u){var f=h(u);Object.defineProperty(n,l,{get:i(f),set:c(u),enumerable:!0,configurable:!1})}else s[u]?Object.defineProperty(n,l,{get:(p=u,new Function(\"gl\",\"wrapper\",\"locations\",\"return function(){return gl.getUniform(wrapper.program,locations[\"+p+\"])}\")(t,e,s)),set:c(u),enumerable:!0,configurable:!1}):n[l]=function(t){switch(t){case\"bool\":return!1;case\"int\":case\"sampler2D\":case\"samplerCube\":case\"float\":return 0;default:var e=t.indexOf(\"vec\");if(0<=e&&e<=1&&t.length===4+e){if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new a(\"\",\"Invalid data type\");return\"b\"===t.charAt(0)?o(r,!1):o(r,0)}if(0===t.indexOf(\"mat\")&&4===t.length){var r;if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new a(\"\",\"Invalid uniform dimension type for matrix \"+name+\": \"+t);return o(r*r,0)}throw new a(\"\",\"Unknown uniform data type for \"+name+\": \"+t)}}(r[u].type);var p}function h(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var r=0;r<t.length;++r)u(e,r,t[r])}else for(var n in e={},t)u(e,n,t[n]);return e}var f=n(r,!0);return{get:i(h(f)),set:c(f),enumerable:!0,configurable:!0}}},{\"./GLError\":313,\"./reflect\":316}],316:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r={},n=0;n<t.length;++n)for(var a=t[n].name.split(\".\"),i=r,o=0;o<a.length;++o){var s=a[o].split(\"[\");if(s.length>1){s[0]in i||(i[s[0]]=[]),i=i[s[0]];for(var l=1;l<s.length;++l){var c=parseInt(s[l]);l<s.length-1||o<a.length-1?(c in i||(l<s.length-1?i[c]=[]:i[c]={}),i=i[c]):i[c]=e?n:t[n].type}}else o<a.length-1?(s[0]in i||(i[s[0]]={}),i=i[s[0]]):i[s[0]]=e?n:t[n].type}return r}},{}],317:[function(t,e,r){\"use strict\";r.uniforms=function(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_UNIFORMS),n=[],a=0;a<r;++a){var o=t.getActiveUniform(e,a);if(o){var s=i(t,o.type);if(o.size>1)for(var l=0;l<o.size;++l)n.push({name:o.name.replace(\"[0]\",\"[\"+l+\"]\"),type:s});else n.push({name:o.name,type:s})}}return n},r.attributes=function(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES),n=[],a=0;a<r;++a){var o=t.getActiveAttrib(e,a);o&&n.push({name:o.name,type:i(t,o.type)})}return n};var n={FLOAT:\"float\",FLOAT_VEC2:\"vec2\",FLOAT_VEC3:\"vec3\",FLOAT_VEC4:\"vec4\",INT:\"int\",INT_VEC2:\"ivec2\",INT_VEC3:\"ivec3\",INT_VEC4:\"ivec4\",BOOL:\"bool\",BOOL_VEC2:\"bvec2\",BOOL_VEC3:\"bvec3\",BOOL_VEC4:\"bvec4\",FLOAT_MAT2:\"mat2\",FLOAT_MAT3:\"mat3\",FLOAT_MAT4:\"mat4\",SAMPLER_2D:\"sampler2D\",SAMPLER_CUBE:\"samplerCube\"},a=null;function i(t,e){if(!a){var r=Object.keys(n);a={};for(var i=0;i<r.length;++i){var o=r[i];a[t[o]]=n[o]}}return a[e]}},{}],318:[function(t,e,r){\"use strict\";r.shader=function(t,e,r){return u(t).getShaderReference(e,r)},r.program=function(t,e,r,n,a){return u(t).getProgram(e,r,n,a)};var n=t(\"./GLError\"),a=t(\"gl-format-compiler-error\"),i=new(\"undefined\"==typeof WeakMap?t(\"weakmap-shim\"):WeakMap),o=0;function s(t,e,r,n,a,i,o){this.id=t,this.src=e,this.type=r,this.shader=n,this.count=i,this.programs=[],this.cache=o}function l(t){this.gl=t,this.shaders=[{},{}],this.programs={}}s.prototype.dispose=function(){if(0==--this.count){for(var t=this.cache,e=t.gl,r=this.programs,n=0,a=r.length;n<a;++n){var i=t.programs[r[n]];i&&(delete t.programs[n],e.deleteProgram(i))}e.deleteShader(this.shader),delete t.shaders[this.type===e.FRAGMENT_SHADER|0][this.src]}};var c=l.prototype;function u(t){var e=i.get(t);return e||(e=new l(t),i.set(t,e)),e}c.getShaderReference=function(t,e){var r=this.gl,i=this.shaders[t===r.FRAGMENT_SHADER|0],l=i[e];if(l&&r.isShader(l.shader))l.count+=1;else{var c=function(t,e,r){var i=t.createShader(e);if(t.shaderSource(i,r),t.compileShader(i),!t.getShaderParameter(i,t.COMPILE_STATUS)){var o=t.getShaderInfoLog(i);try{var s=a(o,r,e)}catch(t){throw console.warn(\"Failed to format compiler error: \"+t),new n(o,\"Error compiling shader:\\n\"+o)}throw new n(o,s.short,s.long)}return i}(r,t,e);l=i[e]=new s(o++,e,t,c,[],1,this)}return l},c.getProgram=function(t,e,r,a){var i=[t.id,e.id,r.join(\":\"),a.join(\":\")].join(\"@\"),o=this.programs[i];return o&&this.gl.isProgram(o)||(this.programs[i]=o=function(t,e,r,a,i){var o=t.createProgram();t.attachShader(o,e),t.attachShader(o,r);for(var s=0;s<a.length;++s)t.bindAttribLocation(o,i[s],a[s]);if(t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS)){var l=t.getProgramInfoLog(o);throw new n(l,\"Error linking program: \"+l)}return o}(this.gl,t.shader,e.shader,r,a),t.programs.push(i),e.programs.push(i)),o}},{\"./GLError\":313,\"gl-format-compiler-error\":267,\"weakmap-shim\":577}],319:[function(t,e,r){\"use strict\";function n(t){this.plot=t,this.enable=[!0,!0,!1,!1],this.width=[1,1,1,1],this.color=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.center=[1/0,1/0]}e.exports=function(t,e){var r=new n(t);return r.update(e),t.addOverlay(r),r};var a=n.prototype;a.update=function(t){t=t||{},this.enable=(t.enable||[!0,!0,!1,!1]).slice(),this.width=(t.width||[1,1,1,1]).slice(),this.color=(t.color||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]).map((function(t){return t.slice()})),this.center=(t.center||[1/0,1/0]).slice(),this.plot.setOverlayDirty()},a.draw=function(){var t=this.enable,e=this.width,r=this.color,n=this.center,a=this.plot,i=a.line,o=a.dataBox,s=a.viewBox;if(i.bind(),o[0]<=n[0]&&n[0]<=o[2]&&o[1]<=n[1]&&n[1]<=o[3]){var l=s[0]+(n[0]-o[0])/(o[2]-o[0])*(s[2]-s[0]),c=s[1]+(n[1]-o[1])/(o[3]-o[1])*(s[3]-s[1]);t[0]&&i.drawLine(l,c,s[0],c,e[0],r[0]),t[1]&&i.drawLine(l,c,l,s[1],e[1],r[1]),t[2]&&i.drawLine(l,c,s[2],c,e[2],r[2]),t[3]&&i.drawLine(l,c,l,s[3],e[3],r[3])}},a.dispose=function(){this.plot.removeOverlay(this)}},{}],320:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, color;\\nattribute float weight;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 coordinates[3];\\nuniform vec4 colors[3];\\nuniform vec2 screenShape;\\nuniform float lineWidth;\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n  vec3 vertexPosition = mix(coordinates[0],\\n    mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));\\n\\n  vec4 clipPos = projection * view * model * vec4(vertexPosition, 1.0);\\n  vec2 clipOffset = (projection * view * model * vec4(color, 0.0)).xy;\\n  vec2 delta = weight * clipOffset * screenShape;\\n  vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;\\n\\n  gl_Position   = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);\\n  fragColor     = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];\\n}\\n\"]),o=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n  gl_FragColor = fragColor;\\n}\"]);e.exports=function(t){return a(t,i,o,null,[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec3\"},{name:\"weight\",type:\"float\"}])}},{\"gl-shader\":312,glslify:413}],321:[function(t,e,r){\"use strict\";var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"./shaders/index\");e.exports=function(t,e){var r=[];function o(t,e,n,a,i,o){var s=[t,e,n,0,0,0,1];s[a+3]=1,s[a]=i,r.push.apply(r,s),s[6]=-1,r.push.apply(r,s),s[a]=o,r.push.apply(r,s),r.push.apply(r,s),s[6]=1,r.push.apply(r,s),s[a]=i,r.push.apply(r,s)}o(0,0,0,0,0,1),o(0,0,0,1,0,1),o(0,0,0,2,0,1),o(1,0,0,1,-1,1),o(1,0,0,2,-1,1),o(0,1,0,0,-1,1),o(0,1,0,2,-1,1),o(0,0,1,0,-1,1),o(0,0,1,1,-1,1);var l=n(t,r),c=a(t,[{type:t.FLOAT,buffer:l,size:3,offset:0,stride:28},{type:t.FLOAT,buffer:l,size:3,offset:12,stride:28},{type:t.FLOAT,buffer:l,size:1,offset:24,stride:28}]),u=i(t);u.attributes.position.location=0,u.attributes.color.location=1,u.attributes.weight.location=2;var h=new s(t,l,c,u);return h.update(e),h};var o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var l=s.prototype,c=[0,0,0],u=[0,0,0],h=[0,0];l.isTransparent=function(){return!1},l.drawTransparent=function(t){},l.draw=function(t){var e=this.gl,r=this.vao,n=this.shader;r.bind(),n.bind();var a,i=t.model||o,s=t.view||o,l=t.projection||o;this.axes&&(a=this.axes.lastCubeProps.axis);for(var f=c,p=u,d=0;d<3;++d)a&&a[d]<0?(f[d]=this.bounds[0][d],p[d]=this.bounds[1][d]):(f[d]=this.bounds[1][d],p[d]=this.bounds[0][d]);h[0]=e.drawingBufferWidth,h[1]=e.drawingBufferHeight,n.uniforms.model=i,n.uniforms.view=s,n.uniforms.projection=l,n.uniforms.coordinates=[this.position,f,p],n.uniforms.colors=this.colors,n.uniforms.screenShape=h;for(d=0;d<3;++d)n.uniforms.lineWidth=this.lineWidth[d]*this.pixelRatio,this.enabled[d]&&(r.draw(e.TRIANGLES,6,6*d),this.drawSides[d]&&r.draw(e.TRIANGLES,12,18+12*d));r.unbind()},l.update=function(t){t&&(\"bounds\"in t&&(this.bounds=t.bounds),\"position\"in t&&(this.position=t.position),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"colors\"in t&&(this.colors=t.colors),\"enabled\"in t&&(this.enabled=t.enabled),\"drawSides\"in t&&(this.drawSides=t.drawSides))},l.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},{\"./shaders/index\":320,\"gl-buffer\":258,\"gl-vao\":332}],322:[function(t,e,r){var n=t(\"glslify\"),a=n([\"precision highp float;\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nvec3 getOrthogonalVector(vec3 v) {\\n  // Return up-vector for only-z vector.\\n  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\\n  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.\\n  // Assign z = 0, x = -b, y = a:\\n  // a*-b + b*a + c*0 = -ba + ba + 0 = 0\\n  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\\n    return normalize(vec3(-v.y, v.x, 0.0));\\n  } else {\\n    return normalize(vec3(0.0, v.z, -v.y));\\n  }\\n}\\n\\n// Calculate the tube vertex and normal at the given index.\\n//\\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\\n//\\n// Each tube segment is made up of a ring of vertices.\\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\\n// The indexes of tube segments run from 0 to 8.\\n//\\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\\n  float segmentCount = 8.0;\\n\\n  float angle = 2.0 * 3.14159 * (index / segmentCount);\\n\\n  vec3 u = getOrthogonalVector(d);\\n  vec3 v = normalize(cross(u, d));\\n\\n  vec3 x = u * cos(angle) * length(d);\\n  vec3 y = v * sin(angle) * length(d);\\n  vec3 v3 = x + y;\\n\\n  normal = normalize(v3);\\n\\n  return v3;\\n}\\n\\nattribute vec4 vector;\\nattribute vec4 color, position;\\nattribute vec2 uv;\\n\\nuniform float vectorScale, tubeScale;\\nuniform mat4 model, view, projection, inverseModel;\\nuniform vec3 eyePosition, lightPosition;\\n\\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  // Scale the vector magnitude to stay constant with\\n  // model & view changes.\\n  vec3 normal;\\n  vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\\n  vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\\n\\n  //Lighting geometry parameters\\n  vec4 cameraCoordinate = view * tubePosition;\\n  cameraCoordinate.xyz /= cameraCoordinate.w;\\n  f_lightDirection = lightPosition - cameraCoordinate.xyz;\\n  f_eyeDirection   = eyePosition - cameraCoordinate.xyz;\\n  f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\\n\\n  // vec4 m_position  = model * vec4(tubePosition, 1.0);\\n  vec4 t_position  = view * tubePosition;\\n  gl_Position      = projection * t_position;\\n\\n  f_color          = color;\\n  f_data           = tubePosition.xyz;\\n  f_position       = position.xyz;\\n  f_uv             = uv;\\n}\\n\"]),i=n([\"#extension GL_OES_standard_derivatives : enable\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nfloat beckmannDistribution(float x, float roughness) {\\n  float NdotH = max(x, 0.0001);\\n  float cos2Alpha = NdotH * NdotH;\\n  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n  float roughness2 = roughness * roughness;\\n  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n  return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\nfloat cookTorranceSpecular(\\n  vec3 lightDirection,\\n  vec3 viewDirection,\\n  vec3 surfaceNormal,\\n  float roughness,\\n  float fresnel) {\\n\\n  float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\\n  float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\\n\\n  //Half angle vector\\n  vec3 H = normalize(lightDirection + viewDirection);\\n\\n  //Geometric term\\n  float NdotH = max(dot(surfaceNormal, H), 0.0);\\n  float VdotH = max(dot(viewDirection, H), 0.000001);\\n  float LdotH = max(dot(lightDirection, H), 0.000001);\\n  float G1 = (2.0 * NdotH * VdotN) / VdotH;\\n  float G2 = (2.0 * NdotH * LdotN) / LdotH;\\n  float G = min(1.0, min(G1, G2));\\n  \\n  //Distribution term\\n  float D = beckmannDistribution(NdotH, roughness);\\n\\n  //Fresnel term\\n  float F = pow(1.0 - VdotN, fresnel);\\n\\n  //Multiply terms and done\\n  return  G * F * D / max(3.14159265 * VdotN, 0.000001);\\n}\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\\nuniform sampler2D texture;\\n\\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n  vec3 N = normalize(f_normal);\\n  vec3 L = normalize(f_lightDirection);\\n  vec3 V = normalize(f_eyeDirection);\\n\\n  if(gl_FrontFacing) {\\n    N = -N;\\n  }\\n\\n  float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\\n  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n  vec4 surfaceColor = f_color * texture2D(texture, f_uv);\\n  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);\\n\\n  gl_FragColor = litColor * opacity;\\n}\\n\"]),o=n([\"precision highp float;\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nvec3 getOrthogonalVector(vec3 v) {\\n  // Return up-vector for only-z vector.\\n  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\\n  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.\\n  // Assign z = 0, x = -b, y = a:\\n  // a*-b + b*a + c*0 = -ba + ba + 0 = 0\\n  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\\n    return normalize(vec3(-v.y, v.x, 0.0));\\n  } else {\\n    return normalize(vec3(0.0, v.z, -v.y));\\n  }\\n}\\n\\n// Calculate the tube vertex and normal at the given index.\\n//\\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\\n//\\n// Each tube segment is made up of a ring of vertices.\\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\\n// The indexes of tube segments run from 0 to 8.\\n//\\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\\n  float segmentCount = 8.0;\\n\\n  float angle = 2.0 * 3.14159 * (index / segmentCount);\\n\\n  vec3 u = getOrthogonalVector(d);\\n  vec3 v = normalize(cross(u, d));\\n\\n  vec3 x = u * cos(angle) * length(d);\\n  vec3 y = v * sin(angle) * length(d);\\n  vec3 v3 = x + y;\\n\\n  normal = normalize(v3);\\n\\n  return v3;\\n}\\n\\nattribute vec4 vector;\\nattribute vec4 position;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform float tubeScale;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  vec3 normal;\\n  vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\\n  vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\\n\\n  gl_Position = projection * view * tubePosition;\\n  f_id        = id;\\n  f_position  = position.xyz;\\n}\\n\"]),s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3  clipBounds[2];\\nuniform float pickId;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n\\n  gl_FragColor = vec4(pickId, f_id.xyz);\\n}\"]);r.meshShader={vertex:a,fragment:i,attributes:[{name:\"position\",type:\"vec4\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"vector\",type:\"vec4\"}]},r.pickShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec4\"},{name:\"id\",type:\"vec4\"},{name:\"vector\",type:\"vec4\"}]}},{glslify:413}],323:[function(t,e,r){\"use strict\";var n=t(\"gl-vec3\"),a=t(\"gl-vec4\"),i=[\"xyz\",\"xzy\",\"yxz\",\"yzx\",\"zxy\",\"zyx\"],o=function(t,e,r,i){for(var o=0,s=0;s<t.length;s++)for(var l=t[s].velocities,c=0;c<l.length;c++)o=Math.max(o,n.length(l[c]));var u=t.map((function(t){return function(t,e,r,i){for(var o=t.points,s=t.velocities,l=t.divergences,c=[],u=[],h=[],f=[],p=[],d=[],g=0,m=0,v=a.create(),y=a.create(),x=0;x<o.length;x++){var b=o[x],_=s[x],w=l[x];0===e&&(w=.05*r),m=n.length(_)/i,v=a.create(),n.copy(v,_),v[3]=w;for(var T=0;T<8;T++)p[T]=[b[0],b[1],b[2],T];if(f.length>0)for(T=0;T<8;T++){var k=(T+1)%8;c.push(f[T],p[T],p[k],p[k],f[k],f[T]),h.push(y,v,v,v,y,y),d.push(g,m,m,m,g,g);var M=c.length;u.push([M-6,M-5,M-4],[M-3,M-2,M-1])}var A=f;f=p,p=A;var S=y;y=v,v=S;var E=g;g=m,m=E}return{positions:c,cells:u,vectors:h,vertexIntensity:d}}(t,r,i,o)})),h=[],f=[],p=[],d=[];for(s=0;s<u.length;s++){var g=u[s],m=h.length;h=h.concat(g.positions),p=p.concat(g.vectors),d=d.concat(g.vertexIntensity);for(c=0;c<g.cells.length;c++){var v=g.cells[c],y=[];f.push(y);for(var x=0;x<v.length;x++)y.push(v[x]+m)}}return{positions:h,cells:f,vectors:p,vertexIntensity:d,colormap:e}},s=function(t,e){var r,n=t.length;for(r=0;r<n;r++){var a=t[r];if(a===e)return r;if(a>e)return r-1}return r},l=function(t,e,r){return t<e?e:t>r?r:t},c=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var r=t.length,n=1;n<r;n++){var a=Math.abs(t[n]-t[n-1]);a<e&&(e=a)}return e};e.exports=function(t,e){var r=t.startingPositions,a=t.maxLength||1e3,u=t.tubeSize||1,h=t.absoluteTubeSize,f=t.gridFill||\"+x+y+z\",p={};-1!==f.indexOf(\"-x\")&&(p.reversedX=!0),-1!==f.indexOf(\"-y\")&&(p.reversedY=!0),-1!==f.indexOf(\"-z\")&&(p.reversedZ=!0),p.filled=i.indexOf(f.replace(/-/g,\"\").replace(/\\+/g,\"\"));var d=t.getVelocity||function(e){return function(t,e,r){var a=e.vectors,i=e.meshgrid,o=t[0],c=t[1],u=t[2],h=i[0].length,f=i[1].length,p=i[2].length,d=s(i[0],o),g=s(i[1],c),m=s(i[2],u),v=d+1,y=g+1,x=m+1;if(d=l(d,0,h-1),v=l(v,0,h-1),g=l(g,0,f-1),y=l(y,0,f-1),m=l(m,0,p-1),x=l(x,0,p-1),d<0||g<0||m<0||v>h-1||y>f-1||x>p-1)return n.create();var b,_,w,T,k,M,A=i[0][d],S=i[0][v],E=i[1][g],C=i[1][y],L=i[2][m],P=(o-A)/(S-A),I=(c-E)/(C-E),z=(u-L)/(i[2][x]-L);switch(isFinite(P)||(P=.5),isFinite(I)||(I=.5),isFinite(z)||(z=.5),r.reversedX&&(d=h-1-d,v=h-1-v),r.reversedY&&(g=f-1-g,y=f-1-y),r.reversedZ&&(m=p-1-m,x=p-1-x),r.filled){case 5:k=m,M=x,w=g*p,T=y*p,b=d*p*f,_=v*p*f;break;case 4:k=m,M=x,b=d*p,_=v*p,w=g*p*h,T=y*p*h;break;case 3:w=g,T=y,k=m*f,M=x*f,b=d*f*p,_=v*f*p;break;case 2:w=g,T=y,b=d*f,_=v*f,k=m*f*h,M=x*f*h;break;case 1:b=d,_=v,k=m*h,M=x*h,w=g*h*p,T=y*h*p;break;default:b=d,_=v,w=g*h,T=y*h,k=m*h*f,M=x*h*f}var O=a[b+w+k],D=a[b+w+M],R=a[b+T+k],F=a[b+T+M],B=a[_+w+k],N=a[_+w+M],j=a[_+T+k],U=a[_+T+M],V=n.create(),q=n.create(),H=n.create(),G=n.create();n.lerp(V,O,B,P),n.lerp(q,D,N,P),n.lerp(H,R,j,P),n.lerp(G,F,U,P);var Y=n.create(),W=n.create();n.lerp(Y,V,H,I),n.lerp(W,q,G,I);var Z=n.create();return n.lerp(Z,Y,W,z),Z}(e,t,p)},g=t.getDivergence||function(t,e){var r=n.create(),a=1e-4;n.add(r,t,[a,0,0]);var i=d(r);n.subtract(i,i,e),n.scale(i,i,1/a),n.add(r,t,[0,a,0]);var o=d(r);n.subtract(o,o,e),n.scale(o,o,1/a),n.add(r,t,[0,0,a]);var s=d(r);return n.subtract(s,s,e),n.scale(s,s,1/a),n.add(r,i,o),n.add(r,r,s),r},m=[],v=e[0][0],y=e[0][1],x=e[0][2],b=e[1][0],_=e[1][1],w=e[1][2],T=function(t){var e=t[0],r=t[1],n=t[2];return!(e<v||e>b||r<y||r>_||n<x||n>w)},k=10*n.distance(e[0],e[1])/a,M=k*k,A=1,S=0,E=r.length;E>1&&(A=function(t){for(var e=[],r=[],n=[],a={},i={},o={},s=t.length,l=0;l<s;l++){var u=t[l],h=u[0],f=u[1],p=u[2];a[h]||(e.push(h),a[h]=!0),i[f]||(r.push(f),i[f]=!0),o[p]||(n.push(p),o[p]=!0)}var d=c(e),g=c(r),m=c(n),v=Math.min(d,g,m);return isFinite(v)?v:1}(r));for(var C=0;C<E;C++){var L=n.create();n.copy(L,r[C]);var P=[L],I=[],z=d(L),O=L;I.push(z);var D=[],R=g(L,z),F=n.length(R);isFinite(F)&&F>S&&(S=F),D.push(F),m.push({points:P,velocities:I,divergences:D});for(var B=0;B<100*a&&P.length<a&&T(L);){B++;var N=n.clone(z),j=n.squaredLength(N);if(0===j)break;if(j>M&&n.scale(N,N,k/Math.sqrt(j)),n.add(N,N,L),z=d(N),n.squaredDistance(O,N)-M>-1e-4*M){P.push(N),O=N,I.push(z);R=g(N,z),F=n.length(R);isFinite(F)&&F>S&&(S=F),D.push(F)}L=N}}var U=o(m,t.colormap,S,A);return h?U.tubeScale=h:(0===S&&(S=1),U.tubeScale=.5*u*A/S),U};var u=t(\"./lib/shaders\"),h=t(\"gl-cone3d\").createMesh;e.exports.createTubeMesh=function(t,e){return h(t,e,{shaders:u,traceType:\"streamtube\"})}},{\"./lib/shaders\":322,\"gl-cone3d\":259,\"gl-vec3\":351,\"gl-vec4\":387}],324:[function(t,e,r){var n=t(\"gl-shader\"),a=t(\"glslify\"),i=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec4 uv;\\nattribute vec3 f;\\nattribute vec3 normal;\\n\\nuniform vec3 objectOffset;\\nuniform mat4 model, view, projection, inverseModel;\\nuniform vec3 lightPosition, eyePosition;\\nuniform sampler2D colormap;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\nvarying vec4 vColor;\\n\\nvoid main() {\\n  vec3 localCoordinate = vec3(uv.zw, f.x);\\n  worldCoordinate = objectOffset + localCoordinate;\\n  vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\\n  vec4 clipPosition = projection * view * worldPosition;\\n  gl_Position = clipPosition;\\n  kill = f.y;\\n  value = f.z;\\n  planeCoordinate = uv.xy;\\n\\n  vColor = texture2D(colormap, vec2(value, value));\\n\\n  //Lighting geometry parameters\\n  vec4 cameraCoordinate = view * worldPosition;\\n  cameraCoordinate.xyz /= cameraCoordinate.w;\\n  lightDirection = lightPosition - cameraCoordinate.xyz;\\n  eyeDirection   = eyePosition - cameraCoordinate.xyz;\\n  surfaceNormal  = normalize((vec4(normal,0) * inverseModel).xyz);\\n}\\n\"]),o=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nfloat beckmannDistribution(float x, float roughness) {\\n  float NdotH = max(x, 0.0001);\\n  float cos2Alpha = NdotH * NdotH;\\n  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n  float roughness2 = roughness * roughness;\\n  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n  return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\nfloat beckmannSpecular(\\n  vec3 lightDirection,\\n  vec3 viewDirection,\\n  vec3 surfaceNormal,\\n  float roughness) {\\n  return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);\\n}\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 lowerBound, upperBound;\\nuniform float contourTint;\\nuniform vec4 contourColor;\\nuniform sampler2D colormap;\\nuniform vec3 clipBounds[2];\\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\\nuniform float vertexColor;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\nvarying vec4 vColor;\\n\\nvoid main() {\\n  if (\\n    kill > 0.0 ||\\n    vColor.a == 0.0 ||\\n    outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)\\n  ) discard;\\n\\n  vec3 N = normalize(surfaceNormal);\\n  vec3 V = normalize(eyeDirection);\\n  vec3 L = normalize(lightDirection);\\n\\n  if(gl_FrontFacing) {\\n    N = -N;\\n  }\\n\\n  float specular = max(beckmannSpecular(L, V, N, roughness), 0.);\\n  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n  //decide how to interpolate color \\u2014 in vertex or in fragment\\n  vec4 surfaceColor =\\n    step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +\\n    step(.5, vertexColor) * vColor;\\n\\n  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);\\n\\n  gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\\n}\\n\"]),s=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec4 uv;\\nattribute float f;\\n\\nuniform vec3 objectOffset;\\nuniform mat3 permutation;\\nuniform mat4 model, view, projection;\\nuniform float height, zOffset;\\nuniform sampler2D colormap;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\nvarying vec4 vColor;\\n\\nvoid main() {\\n  vec3 dataCoordinate = permutation * vec3(uv.xy, height);\\n  worldCoordinate = objectOffset + dataCoordinate;\\n  vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\\n\\n  vec4 clipPosition = projection * view * worldPosition;\\n  clipPosition.z += zOffset;\\n\\n  gl_Position = clipPosition;\\n  value = f + objectOffset.z;\\n  kill = -1.0;\\n  planeCoordinate = uv.zw;\\n\\n  vColor = texture2D(colormap, vec2(value, value));\\n\\n  //Don't do lighting for contours\\n  surfaceNormal   = vec3(1,0,0);\\n  eyeDirection    = vec3(0,1,0);\\n  lightDirection  = vec3(0,0,1);\\n}\\n\"]),l=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n  return ((p > max(a, b)) || \\n          (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n  return (outOfRange(a.x, b.x, p.x) ||\\n          outOfRange(a.y, b.y, p.y) ||\\n          outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n  return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec2 shape;\\nuniform vec3 clipBounds[2];\\nuniform float pickId;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 surfaceNormal;\\n\\nvec2 splitFloat(float v) {\\n  float vh = 255.0 * v;\\n  float upper = floor(vh);\\n  float lower = fract(vh);\\n  return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\\n}\\n\\nvoid main() {\\n  if ((kill > 0.0) ||\\n      (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;\\n\\n  vec2 ux = splitFloat(planeCoordinate.x / shape.x);\\n  vec2 uy = splitFloat(planeCoordinate.y / shape.y);\\n  gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\\n}\\n\"]);r.createShader=function(t){var e=n(t,i,o,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},r.createPickShader=function(t){var e=n(t,i,l,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},r.createContourShader=function(t){var e=n(t,s,o,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"float\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e},r.createPickContourShader=function(t){var e=n(t,s,l,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"float\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e}},{\"gl-shader\":312,glslify:413}],325:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=y(e),n=b(e),s=x(e),l=_(e),c=a(e),u=i(e,[{buffer:c,size:4,stride:40,offset:0},{buffer:c,size:3,stride:40,offset:16},{buffer:c,size:3,stride:40,offset:28}]),h=a(e),f=i(e,[{buffer:h,size:4,stride:20,offset:0},{buffer:h,size:1,stride:20,offset:16}]),p=a(e),d=i(e,[{buffer:p,size:2,type:e.FLOAT}]),g=o(e,1,256,e.RGBA,e.UNSIGNED_BYTE);g.minFilter=e.LINEAR,g.magFilter=e.LINEAR;var m=new A(e,[0,0],[[0,0,0],[0,0,0]],r,n,c,u,g,s,l,h,f,p,d,[0,0,0]),v={levels:[[],[],[]]};for(var w in t)v[w]=t[w];return v.colormap=v.colormap||\"jet\",m.update(v),m};var n=t(\"bit-twiddle\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"gl-texture2d\"),s=t(\"typedarray-pool\"),l=t(\"colormap\"),c=t(\"ndarray-ops\"),u=t(\"ndarray-pack\"),h=t(\"ndarray\"),f=t(\"surface-nets\"),p=t(\"gl-mat4/multiply\"),d=t(\"gl-mat4/invert\"),g=t(\"binary-search-bounds\"),m=t(\"ndarray-gradient\"),v=t(\"./lib/shaders\"),y=v.createShader,x=v.createContourShader,b=v.createPickShader,_=v.createPickContourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],k=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];function M(t,e,r,n,a){this.position=t,this.index=e,this.uv=r,this.level=n,this.dataCoordinate=a}!function(){for(var t=0;t<3;++t){var e=k[t],r=(t+2)%3;e[(t+1)%3+0]=1,e[r+3]=1,e[t+6]=1}}();function A(t,e,r,n,a,i,o,l,c,u,f,p,d,g,m){this.gl=t,this.shape=e,this.bounds=r,this.objectOffset=m,this.intensityBounds=[],this._shader=n,this._pickShader=a,this._coordinateBuffer=i,this._vao=o,this._colorMap=l,this._contourShader=c,this._contourPickShader=u,this._contourBuffer=f,this._contourVAO=p,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new M([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=d,this._dynamicVAO=g,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var S=A.prototype;S.genColormap=function(t,e){var r=!1,n=u([l({colormap:t,nshades:256,format:\"rgba\"}).map((function(t,n){var a=e?function(t,e){if(!e)return 1;if(!e.length)return 1;for(var r=0;r<e.length;++r){if(e.length<2)return 1;if(e[r][0]===t)return e[r][1];if(e[r][0]>t&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}(n/255,e):t[3];return a<1&&(r=!0),[t[0],t[1],t[2],255*a]}))]);return c.divseq(n,255),this.hasAlphaScale=r,n},S.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},S.isOpaque=function(){return!this.isTransparent()},S.pickSlots=1,S.setPickBase=function(t){this.pickId=t};var E=[0,0,0],C={showSurface:!1,showContour:!1,projections:[w.slice(),w.slice(),w.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function L(t,e){var r,n,a,i=e.axes&&e.axes.lastCubeProps.axis||E,o=e.showSurface,s=e.showContour;for(r=0;r<3;++r)for(o=o||e.surfaceProject[r],n=0;n<3;++n)s=s||e.contourProject[r][n];for(r=0;r<3;++r){var l=C.projections[r];for(n=0;n<16;++n)l[n]=0;for(n=0;n<4;++n)l[5*n]=1;l[5*r]=0,l[12+r]=e.axesBounds[+(i[r]>0)][r],p(l,t.model,l);var c=C.clipBounds[r];for(a=0;a<2;++a)for(n=0;n<3;++n)c[a][n]=t.clipBounds[a][n];c[0][r]=-1e8,c[1][r]=1e8}return C.showSurface=o,C.showContour=s,C}var P={model:w,view:w,projection:w,inverseModel:w.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},I=w.slice(),z=[1,0,0,0,1,0,0,0,1];function O(t,e){t=t||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=P;n.model=t.model||w,n.view=t.view||w,n.projection=t.projection||w,n.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],n.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],n.objectOffset=this.objectOffset,n.contourColor=this.contourColor[0],n.inverseModel=d(n.inverseModel,n.model);for(var a=0;a<2;++a)for(var i=n.clipBounds[a],o=0;o<3;++o)i[o]=Math.min(Math.max(this.clipBounds[a][o],-1e8),1e8);n.kambient=this.ambientLight,n.kdiffuse=this.diffuseLight,n.kspecular=this.specularLight,n.roughness=this.roughness,n.fresnel=this.fresnel,n.opacity=this.opacity,n.height=0,n.permutation=z,n.vertexColor=this.vertexColor;var s=I;for(p(s,n.view,n.model),p(s,n.projection,s),d(s,s),a=0;a<3;++a)n.eyePosition[a]=s[12+a]/s[15];var l=s[15];for(a=0;a<3;++a)l+=this.lightPosition[a]*s[4*a+3];for(a=0;a<3;++a){var c=s[12+a];for(o=0;o<3;++o)c+=s[4*o+a]*this.lightPosition[o];n.lightPosition[a]=c/l}var u=L(n,this);if(u.showSurface){for(this._shader.bind(),this._shader.uniforms=n,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(r.TRIANGLES,this._vertexCount),a=0;a<3;++a)this.surfaceProject[a]&&this.vertexCount&&(this._shader.uniforms.model=u.projections[a],this._shader.uniforms.clipBounds=u.clipBounds[a],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(u.showContour){var h=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,h.bind(),h.uniforms=n;var f=this._contourVAO;for(f.bind(),a=0;a<3;++a)for(h.uniforms.permutation=k[a],r.lineWidth(this.contourWidth[a]*this.pixelRatio),o=0;o<this.contourLevels[a].length;++o)o===this.highlightLevel[a]?(h.uniforms.contourColor=this.highlightColor[a],h.uniforms.contourTint=this.highlightTint[a]):0!==o&&o-1!==this.highlightLevel[a]||(h.uniforms.contourColor=this.contourColor[a],h.uniforms.contourTint=this.contourTint[a]),this._contourCounts[a][o]&&(h.uniforms.height=this.contourLevels[a][o],f.draw(r.LINES,this._contourCounts[a][o],this._contourOffsets[a][o]));for(a=0;a<3;++a)for(h.uniforms.model=u.projections[a],h.uniforms.clipBounds=u.clipBounds[a],o=0;o<3;++o)if(this.contourProject[a][o]){h.uniforms.permutation=k[o],r.lineWidth(this.contourWidth[o]*this.pixelRatio);for(var g=0;g<this.contourLevels[o].length;++g)g===this.highlightLevel[o]?(h.uniforms.contourColor=this.highlightColor[o],h.uniforms.contourTint=this.highlightTint[o]):0!==g&&g-1!==this.highlightLevel[o]||(h.uniforms.contourColor=this.contourColor[o],h.uniforms.contourTint=this.contourTint[o]),this._contourCounts[o][g]&&(h.uniforms.height=this.contourLevels[o][g],f.draw(r.LINES,this._contourCounts[o][g],this._contourOffsets[o][g]))}for(f.unbind(),(f=this._dynamicVAO).bind(),a=0;a<3;++a)if(0!==this._dynamicCounts[a])for(h.uniforms.model=n.model,h.uniforms.clipBounds=n.clipBounds,h.uniforms.permutation=k[a],r.lineWidth(this.dynamicWidth[a]*this.pixelRatio),h.uniforms.contourColor=this.dynamicColor[a],h.uniforms.contourTint=this.dynamicTint[a],h.uniforms.height=this.dynamicLevel[a],f.draw(r.LINES,this._dynamicCounts[a],this._dynamicOffsets[a]),o=0;o<3;++o)this.contourProject[o][a]&&(h.uniforms.model=u.projections[o],h.uniforms.clipBounds=u.clipBounds[o],f.draw(r.LINES,this._dynamicCounts[a],this._dynamicOffsets[a]));f.unbind()}}S.draw=function(t){return O.call(this,t,!1)},S.drawTransparent=function(t){return O.call(this,t,!0)};var D={model:w,view:w,projection:w,inverseModel:w,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};function R(t,e){return Array.isArray(t)?[e(t[0]),e(t[1]),e(t[2])]:[e(t),e(t),e(t)]}function F(t){return Array.isArray(t)?3===t.length?[t[0],t[1],t[2],1]:[t[0],t[1],t[2],t[3]]:[0,0,0,1]}function B(t){if(Array.isArray(t)){if(Array.isArray(t))return[F(t[0]),F(t[1]),F(t[2])];var e=F(t);return[e.slice(),e.slice(),e.slice()]}}S.drawPick=function(t){t=t||{};var e=this.gl;e.disable(e.CULL_FACE);var r=D;r.model=t.model||w,r.view=t.view||w,r.projection=t.projection||w,r.shape=this._field[2].shape,r.pickId=this.pickId/255,r.lowerBound=this.bounds[0],r.upperBound=this.bounds[1],r.objectOffset=this.objectOffset,r.permutation=z;for(var n=0;n<2;++n)for(var a=r.clipBounds[n],i=0;i<3;++i)a[i]=Math.min(Math.max(this.clipBounds[n][i],-1e8),1e8);var o=L(r,this);if(o.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=r,this._vao.bind(),this._vao.draw(e.TRIANGLES,this._vertexCount),n=0;n<3;++n)this.surfaceProject[n]&&(this._pickShader.uniforms.model=o.projections[n],this._pickShader.uniforms.clipBounds=o.clipBounds[n],this._vao.draw(e.TRIANGLES,this._vertexCount));this._vao.unbind()}if(o.showContour){var s=this._contourPickShader;s.bind(),s.uniforms=r;var l=this._contourVAO;for(l.bind(),i=0;i<3;++i)for(e.lineWidth(this.contourWidth[i]*this.pixelRatio),s.uniforms.permutation=k[i],n=0;n<this.contourLevels[i].length;++n)this._contourCounts[i][n]&&(s.uniforms.height=this.contourLevels[i][n],l.draw(e.LINES,this._contourCounts[i][n],this._contourOffsets[i][n]));for(n=0;n<3;++n)for(s.uniforms.model=o.projections[n],s.uniforms.clipBounds=o.clipBounds[n],i=0;i<3;++i)if(this.contourProject[n][i]){s.uniforms.permutation=k[i],e.lineWidth(this.contourWidth[i]*this.pixelRatio);for(var c=0;c<this.contourLevels[i].length;++c)this._contourCounts[i][c]&&(s.uniforms.height=this.contourLevels[i][c],l.draw(e.LINES,this._contourCounts[i][c],this._contourOffsets[i][c]))}l.unbind()}},S.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=this._field[2].shape,r=this._pickResult,n=e[0]*(t.value[0]+(t.value[2]>>4)/16)/255,a=Math.floor(n),i=n-a,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;a+=1,s+=1;var c=r.position;c[0]=c[1]=c[2]=0;for(var u=0;u<2;++u)for(var h=u?i:1-i,f=0;f<2;++f)for(var p=a+u,d=s+f,m=h*(f?l:1-l),v=0;v<3;++v)c[v]+=this._field[v].get(p,d)*m;for(var y=this._pickResult.level,x=0;x<3;++x)if(y[x]=g.le(this.contourLevels[x],c[x]),y[x]<0)this.contourLevels[x].length>0&&(y[x]=0);else if(y[x]<this.contourLevels[x].length-1){var b=this.contourLevels[x][y[x]],_=this.contourLevels[x][y[x]+1];Math.abs(b-c[x])>Math.abs(_-c[x])&&(y[x]+=1)}for(r.index[0]=i<.5?a:a+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/e[0],r.uv[1]=o/e[1],v=0;v<3;++v)r.dataCoordinate[v]=this._field[v].get(r.index[0],r.index[1]);return r},S.padField=function(t,e){var r=e.shape.slice(),n=t.shape.slice();c.assign(t.lo(1,1).hi(r[0],r[1]),e),c.assign(t.lo(1).hi(r[0],1),e.hi(r[0],1)),c.assign(t.lo(1,n[1]-1).hi(r[0],1),e.lo(0,r[1]-1).hi(r[0],1)),c.assign(t.lo(0,1).hi(1,r[1]),e.hi(1)),c.assign(t.lo(n[0]-1,1).hi(1,r[1]),e.lo(r[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,n[1]-1,e.get(0,r[1]-1)),t.set(n[0]-1,0,e.get(r[0]-1,0)),t.set(n[0]-1,n[1]-1,e.get(r[0]-1,r[1]-1))},S.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,\"contourWidth\"in t&&(this.contourWidth=R(t.contourWidth,Number)),\"showContour\"in t&&(this.showContour=R(t.showContour,Boolean)),\"showSurface\"in t&&(this.showSurface=!!t.showSurface),\"contourTint\"in t&&(this.contourTint=R(t.contourTint,Boolean)),\"contourColor\"in t&&(this.contourColor=B(t.contourColor)),\"contourProject\"in t&&(this.contourProject=R(t.contourProject,(function(t){return R(t,Boolean)}))),\"surfaceProject\"in t&&(this.surfaceProject=t.surfaceProject),\"dynamicColor\"in t&&(this.dynamicColor=B(t.dynamicColor)),\"dynamicTint\"in t&&(this.dynamicTint=R(t.dynamicTint,Number)),\"dynamicWidth\"in t&&(this.dynamicWidth=R(t.dynamicWidth,Number)),\"opacity\"in t&&(this.opacity=t.opacity),\"opacityscale\"in t&&(this.opacityscale=t.opacityscale),\"colorBounds\"in t&&(this.colorBounds=t.colorBounds),\"vertexColor\"in t&&(this.vertexColor=t.vertexColor?1:0),\"colormap\"in t&&this._colorMap.setPixels(this.genColormap(t.colormap,this.opacityscale));var e=t.field||t.coords&&t.coords[2]||null,r=!1;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),\"field\"in t||\"coords\"in t){var a=(e.shape[0]+2)*(e.shape[1]+2);a>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(a))),this._field[2]=h(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),this.padField(this._field[2],e),this.shape=e.shape.slice();for(var i=this.shape,o=0;o<2;++o)this._field[2].size>this._field[o].data.length&&(s.freeFloat(this._field[o].data),this._field[o].data=s.mallocFloat(this._field[2].size)),this._field[o]=h(this._field[o].data,[i[0]+2,i[1]+2]);if(t.coords){var l=t.coords;if(!Array.isArray(l)||3!==l.length)throw new Error(\"gl-surface: invalid coordinates for x/y\");for(o=0;o<2;++o){var c=l[o];for(v=0;v<2;++v)if(c.shape[v]!==i[v])throw new Error(\"gl-surface: coords have incorrect shape\");this.padField(this._field[o],c)}}else if(t.ticks){var u=t.ticks;if(!Array.isArray(u)||2!==u.length)throw new Error(\"gl-surface: invalid ticks\");for(o=0;o<2;++o){var p=u[o];if((Array.isArray(p)||p.length)&&(p=h(p)),p.shape[0]!==i[o])throw new Error(\"gl-surface: invalid tick length\");var d=h(p.data,i);d.stride[o]=p.stride[0],d.stride[1^o]=0,this.padField(this._field[o],d)}}else{for(o=0;o<2;++o){var g=[0,0];g[o]=1,this._field[o]=h(this._field[o].data,[i[0]+2,i[1]+2],g,0)}this._field[0].set(0,0,0);for(var v=0;v<i[0];++v)this._field[0].set(v+1,0,v);for(this._field[0].set(i[0]+1,0,i[0]-1),this._field[1].set(0,0,0),v=0;v<i[1];++v)this._field[1].set(0,v+1,v);this._field[1].set(0,i[1]+1,i[1]-1)}var y=this._field,x=h(s.mallocFloat(3*y[2].size*2),[3,i[0]+2,i[1]+2,2]);for(o=0;o<3;++o)m(x.pick(o),y[o],\"mirror\");var b=h(s.mallocFloat(3*y[2].size),[i[0]+2,i[1]+2,3]);for(o=0;o<i[0]+2;++o)for(v=0;v<i[1]+2;++v){var _=x.get(0,o,v,0),w=x.get(0,o,v,1),k=x.get(1,o,v,0),M=x.get(1,o,v,1),A=x.get(2,o,v,0),S=x.get(2,o,v,1),E=k*S-M*A,C=A*w-S*_,L=_*M-w*k,P=Math.sqrt(E*E+C*C+L*L);P<1e-8?(P=Math.max(Math.abs(E),Math.abs(C),Math.abs(L)))<1e-8?(L=1,C=E=0,P=1):P=1/P:P=1/Math.sqrt(P),b.set(o,v,0,E*P),b.set(o,v,1,C*P),b.set(o,v,2,L*P)}s.free(x.data);var I=[1/0,1/0,1/0],z=[-1/0,-1/0,-1/0],O=1/0,D=-1/0,F=(i[0]-1)*(i[1]-1)*6,N=s.mallocFloat(n.nextPow2(10*F)),j=0,U=0;for(o=0;o<i[0]-1;++o)t:for(v=0;v<i[1]-1;++v){for(var V=0;V<2;++V)for(var q=0;q<2;++q)for(var H=0;H<3;++H){var G=this._field[H].get(1+o+V,1+v+q);if(isNaN(G)||!isFinite(G))continue t}for(H=0;H<6;++H){var Y=o+T[H][0],W=v+T[H][1],Z=this._field[0].get(Y+1,W+1),X=this._field[1].get(Y+1,W+1);G=this._field[2].get(Y+1,W+1),E=b.get(Y+1,W+1,0),C=b.get(Y+1,W+1,1),L=b.get(Y+1,W+1,2),t.intensity&&(J=t.intensity.get(Y,W));var J=t.intensity?t.intensity.get(Y,W):G+this.objectOffset[2];N[j++]=Y,N[j++]=W,N[j++]=Z,N[j++]=X,N[j++]=G,N[j++]=0,N[j++]=J,N[j++]=E,N[j++]=C,N[j++]=L,I[0]=Math.min(I[0],Z+this.objectOffset[0]),I[1]=Math.min(I[1],X+this.objectOffset[1]),I[2]=Math.min(I[2],G+this.objectOffset[2]),O=Math.min(O,J),z[0]=Math.max(z[0],Z+this.objectOffset[0]),z[1]=Math.max(z[1],X+this.objectOffset[1]),z[2]=Math.max(z[2],G+this.objectOffset[2]),D=Math.max(D,J),U+=1}}for(t.intensityBounds&&(O=+t.intensityBounds[0],D=+t.intensityBounds[1]),o=6;o<j;o+=10)N[o]=(N[o]-O)/(D-O);this._vertexCount=U,this._coordinateBuffer.update(N.subarray(0,j)),s.freeFloat(N),s.free(b.data),this.bounds=[I,z],this.intensity=t.intensity||this._field[2],this.intensityBounds[0]===O&&this.intensityBounds[1]===D||(r=!0),this.intensityBounds=[O,D]}if(\"levels\"in t){var K=t.levels;for(K=Array.isArray(K[0])?K.slice():[[],[],K],o=0;o<3;++o)K[o]=K[o].slice(),K[o].sort((function(t,e){return t-e}));for(o=0;o<3;++o)for(v=0;v<K[o].length;++v)K[o][v]-=this.objectOffset[o];t:for(o=0;o<3;++o){if(K[o].length!==this.contourLevels[o].length){r=!0;break}for(v=0;v<K[o].length;++v)if(K[o][v]!==this.contourLevels[o][v]){r=!0;break t}}this.contourLevels=K}if(r){y=this._field,i=this.shape;for(var Q=[],$=0;$<3;++$){var tt=this.contourLevels[$],et=[],rt=[],nt=[0,0,0];for(o=0;o<tt.length;++o){var at=f(this._field[$],tt[o]);et.push(Q.length/5|0),U=0;t:for(v=0;v<at.cells.length;++v){var it=at.cells[v];for(H=0;H<2;++H){var ot=at.positions[it[H]],st=ot[0],lt=0|Math.floor(st),ct=st-lt,ut=ot[1],ht=0|Math.floor(ut),ft=ut-ht,pt=!1;e:for(var dt=0;dt<3;++dt){nt[dt]=0;var gt=($+dt+1)%3;for(V=0;V<2;++V){var mt=V?ct:1-ct;for(Y=0|Math.min(Math.max(lt+V,0),i[0]),q=0;q<2;++q){var vt=q?ft:1-ft;if(W=0|Math.min(Math.max(ht+q,0),i[1]),G=dt<2?this._field[gt].get(Y,W):(this.intensity.get(Y,W)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(G)||isNaN(G)){pt=!0;break e}var yt=mt*vt;nt[dt]+=yt*G}}}if(pt){if(H>0){for(var xt=0;xt<5;++xt)Q.pop();U-=1}continue t}Q.push(nt[0],nt[1],ot[0],ot[1],nt[2]),U+=1}}rt.push(U)}this._contourOffsets[$]=et,this._contourCounts[$]=rt}var bt=s.mallocFloat(Q.length);for(o=0;o<Q.length;++o)bt[o]=Q[o];this._contourBuffer.update(bt),s.freeFloat(bt)}},S.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var t=0;t<3;++t)s.freeFloat(this._field[t].data)},S.highlight=function(t){var e,r;if(!t)return this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],void(this.highlightLevel=[-1,-1,-1]);for(e=0;e<3;++e)this.enableHighlight[e]?this.highlightLevel[e]=t.level[e]:this.highlightLevel[e]=-1;for(r=this.snapToData?t.dataCoordinate:t.position,e=0;e<3;++e)r[e]-=this.objectOffset[e];if(this.enableDynamic[0]&&r[0]!==this.dynamicLevel[0]||this.enableDynamic[1]&&r[1]!==this.dynamicLevel[1]||this.enableDynamic[2]&&r[2]!==this.dynamicLevel[2]){for(var n=0,a=this.shape,i=s.mallocFloat(12*a[0]*a[1]),o=0;o<3;++o)if(this.enableDynamic[o]){this.dynamicLevel[o]=r[o];var l=(o+1)%3,c=(o+2)%3,u=this._field[o],h=this._field[l],p=this._field[c],d=f(u,r[o]),g=d.cells,m=d.positions;for(this._dynamicOffsets[o]=n,e=0;e<g.length;++e)for(var v=g[e],y=0;y<2;++y){var x=m[v[y]],b=+x[0],_=0|b,w=0|Math.min(_+1,a[0]),T=b-_,k=1-T,M=+x[1],A=0|M,S=0|Math.min(A+1,a[1]),E=M-A,C=1-E,L=k*C,P=k*E,I=T*C,z=T*E,O=L*h.get(_,A)+P*h.get(_,S)+I*h.get(w,A)+z*h.get(w,S),D=L*p.get(_,A)+P*p.get(_,S)+I*p.get(w,A)+z*p.get(w,S);if(isNaN(O)||isNaN(D)){y&&(n-=1);break}i[2*n+0]=O,i[2*n+1]=D,n+=1}this._dynamicCounts[o]=n-this._dynamicOffsets[o]}else this.dynamicLevel[o]=NaN,this._dynamicCounts[o]=0;this._dynamicBuffer.update(i.subarray(0,2*n)),s.freeFloat(i)}}},{\"./lib/shaders\":324,\"binary-search-bounds\":96,\"bit-twiddle\":97,colormap:131,\"gl-buffer\":258,\"gl-mat4/invert\":278,\"gl-mat4/multiply\":280,\"gl-texture2d\":327,\"gl-vao\":332,ndarray:469,\"ndarray-gradient\":462,\"ndarray-ops\":464,\"ndarray-pack\":465,\"surface-nets\":542,\"typedarray-pool\":567}],326:[function(t,e,r){\"use strict\";var n=t(\"css-font\"),a=t(\"pick-by-alias\"),i=t(\"regl\"),o=t(\"gl-util/context\"),s=t(\"es6-weak-map\"),l=t(\"color-normalize\"),c=t(\"font-atlas\"),u=t(\"typedarray-pool\"),h=t(\"parse-rect\"),f=t(\"is-plain-obj\"),p=t(\"parse-unit\"),d=t(\"to-px\"),g=t(\"detect-kerning\"),m=t(\"object-assign\"),v=t(\"font-measure\"),y=t(\"flatten-vertex-data\"),x=t(\"bit-twiddle\").nextPow2,b=new s,_=!1;if(document.body){var w=document.body.appendChild(document.createElement(\"div\"));w.style.font=\"italic small-caps bold condensed 16px/2 cursive\",getComputedStyle(w).fontStretch&&(_=!0),document.body.removeChild(w)}var T=function(t){!function(t){return\"function\"==typeof t&&t._gl&&t.prop&&t.texture&&t.buffer}(t)?this.gl=o(t):(t={regl:t},this.gl=t.regl._gl),this.shader=b.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||i({gl:this.gl}),this.charBuffer=this.regl.buffer({type:\"uint8\",usage:\"stream\"}),this.sizeBuffer=this.regl.buffer({type:\"float\",usage:\"stream\"}),this.shader||(this.shader=this.createShader(),b.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(f(t)?t:{})};T.prototype.createShader=function(){var t=this.regl,e=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop(\"count\"),offset:t.prop(\"offset\"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this(\"sizeBuffer\")},width:{offset:0,stride:8,buffer:t.this(\"sizeBuffer\")},char:t.this(\"charBuffer\"),position:t.this(\"position\")},uniforms:{atlasSize:function(t,e){return[e.atlas.width,e.atlas.height]},atlasDim:function(t,e){return[e.atlas.cols,e.atlas.rows]},atlas:function(t,e){return e.atlas.texture},charStep:function(t,e){return e.atlas.step},em:function(t,e){return e.atlas.em},color:t.prop(\"color\"),opacity:t.prop(\"opacity\"),viewport:t.this(\"viewportArray\"),scale:t.this(\"scale\"),align:t.prop(\"align\"),baseline:t.prop(\"baseline\"),translate:t.this(\"translate\"),positionOffset:t.prop(\"positionOffset\")},primitive:\"points\",viewport:t.this(\"viewport\"),vert:\"\\n\\t\\t\\tprecision highp float;\\n\\t\\t\\tattribute float width, charOffset, char;\\n\\t\\t\\tattribute vec2 position;\\n\\t\\t\\tuniform float fontSize, charStep, em, align, baseline;\\n\\t\\t\\tuniform vec4 viewport;\\n\\t\\t\\tuniform vec4 color;\\n\\t\\t\\tuniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;\\n\\t\\t\\tvarying vec2 charCoord, charId;\\n\\t\\t\\tvarying float charWidth;\\n\\t\\t\\tvarying vec4 fontColor;\\n\\t\\t\\tvoid main () {\\n\\t\\t\\t\\t\"+(T.normalViewport?\"\":\"vec2 positionOffset = vec2(positionOffset.x,- positionOffset.y);\")+\"\\n\\n\\t\\t\\t\\tvec2 offset = floor(em * (vec2(align + charOffset, baseline)\\n\\t\\t\\t\\t\\t+ positionOffset))\\n\\t\\t\\t\\t\\t/ (viewport.zw * scale.xy);\\n\\n\\t\\t\\t\\tvec2 position = (position + translate) * scale;\\n\\t\\t\\t\\tposition += offset * scale;\\n\\n\\t\\t\\t\\t\"+(T.normalViewport?\"position.y = 1. - position.y;\":\"\")+\"\\n\\n\\t\\t\\t\\tcharCoord = position * viewport.zw + viewport.xy;\\n\\n\\t\\t\\t\\tgl_Position = vec4(position * 2. - 1., 0, 1);\\n\\n\\t\\t\\t\\tgl_PointSize = charStep;\\n\\n\\t\\t\\t\\tcharId.x = mod(char, atlasDim.x);\\n\\t\\t\\t\\tcharId.y = floor(char / atlasDim.x);\\n\\n\\t\\t\\t\\tcharWidth = width * em;\\n\\n\\t\\t\\t\\tfontColor = color / 255.;\\n\\t\\t\\t}\",frag:\"\\n\\t\\t\\tprecision highp float;\\n\\t\\t\\tuniform sampler2D atlas;\\n\\t\\t\\tuniform float fontSize, charStep, opacity;\\n\\t\\t\\tuniform vec2 atlasSize;\\n\\t\\t\\tuniform vec4 viewport;\\n\\t\\t\\tvarying vec4 fontColor;\\n\\t\\t\\tvarying vec2 charCoord, charId;\\n\\t\\t\\tvarying float charWidth;\\n\\n\\t\\t\\tfloat lightness(vec4 color) {\\n\\t\\t\\t\\treturn color.r * 0.299 + color.g * 0.587 + color.b * 0.114;\\n\\t\\t\\t}\\n\\n\\t\\t\\tvoid main () {\\n\\t\\t\\t\\tvec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;\\n\\t\\t\\t\\tfloat halfCharStep = floor(charStep * .5 + .5);\\n\\n\\t\\t\\t\\t// invert y and shift by 1px (FF expecially needs that)\\n\\t\\t\\t\\tuv.y = charStep - uv.y;\\n\\n\\t\\t\\t\\t// ignore points outside of character bounding box\\n\\t\\t\\t\\tfloat halfCharWidth = ceil(charWidth * .5);\\n\\t\\t\\t\\tif (floor(uv.x) > halfCharStep + halfCharWidth ||\\n\\t\\t\\t\\t\\tfloor(uv.x) < halfCharStep - halfCharWidth) return;\\n\\n\\t\\t\\t\\tuv += charId * charStep;\\n\\t\\t\\t\\tuv = uv / atlasSize;\\n\\n\\t\\t\\t\\tvec4 color = fontColor;\\n\\t\\t\\t\\tvec4 mask = texture2D(atlas, uv);\\n\\n\\t\\t\\t\\tfloat maskY = lightness(mask);\\n\\t\\t\\t\\t// float colorY = lightness(color);\\n\\t\\t\\t\\tcolor.a *= maskY;\\n\\t\\t\\t\\tcolor.a *= opacity;\\n\\n\\t\\t\\t\\t// color.a += .1;\\n\\n\\t\\t\\t\\t// antialiasing, see yiq color space y-channel formula\\n\\t\\t\\t\\t// color.rgb += (1. - color.rgb) * (1. - mask.rgb);\\n\\n\\t\\t\\t\\tgl_FragColor = color;\\n\\t\\t\\t}\"});return{regl:t,draw:e,atlas:{}}},T.prototype.update=function(t){var e=this;if(\"string\"==typeof t)t={text:t};else if(!t)return;null!=(t=a(t,{position:\"position positions coord coords coordinates\",font:\"font fontFace fontface typeface cssFont css-font family fontFamily\",fontSize:\"fontSize fontsize size font-size\",text:\"text texts chars characters value values symbols\",align:\"align alignment textAlign textbaseline\",baseline:\"baseline textBaseline textbaseline\",direction:\"dir direction textDirection\",color:\"color colour fill fill-color fillColor textColor textcolor\",kerning:\"kerning kern\",range:\"range dataBox\",viewport:\"vp viewport viewBox viewbox viewPort\",opacity:\"opacity alpha transparency visible visibility opaque\",offset:\"offset positionOffset padding shift indent indentation\"},!0)).opacity&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map((function(t){return parseFloat(t)})):this.opacity=parseFloat(t.opacity)),null!=t.viewport&&(this.viewport=h(t.viewport),T.normalViewport&&(this.viewport.y=this.canvas.height-this.viewport.y-this.viewport.height),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&(\"number\"==typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=y(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||t.font||(t.font=T.baseFontSize+\"px sans-serif\");var r,i=!1,o=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach((function(t,r){if(\"string\"==typeof t)try{t=n.parse(t)}catch(e){t=n.parse(T.baseFontSize+\"px \"+t)}else t=n.parse(n.stringify(t));var a=n.stringify({size:T.baseFontSize,family:t.family,stretch:_?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),s=p(t.size),l=Math.round(s[0]*d(s[1]));if(l!==e.fontSize[r]&&(o=!0,e.fontSize[r]=l),!(e.font[r]&&a==e.font[r].baseString||(i=!0,e.font[r]=T.fonts[a],e.font[r]))){var c=t.family.join(\", \"),u=[t.style];t.style!=t.variant&&u.push(t.variant),t.variant!=t.weight&&u.push(t.weight),_&&t.weight!=t.stretch&&u.push(t.stretch),e.font[r]={baseString:a,family:c,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:v(c,{origin:\"top\",fontSize:T.baseFontSize,fontStyle:u.join(\" \")})},T.fonts[a]=e.font[r]}})),(i||o)&&this.font.forEach((function(r,a){var i=n.stringify({size:e.fontSize[a],family:r.family,stretch:_?r.stretch:void 0,variant:r.variant,weight:r.weight,style:r.style});if(e.fontAtlas[a]=e.shader.atlas[i],!e.fontAtlas[a]){var o=r.metrics;e.shader.atlas[i]=e.fontAtlas[a]={fontString:i,step:2*Math.ceil(e.fontSize[a]*o.bottom*.5),em:e.fontSize[a],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:e.regl.texture()}}null==t.text&&(t.text=e.text)})),\"string\"==typeof t.text&&t.position&&t.position.length>2){for(var s=Array(.5*t.position.length),f=0;f<s.length;f++)s[f]=t.text;t.text=s}if(null!=t.text||i){if(this.textOffsets=[0],Array.isArray(t.text)){this.count=t.text[0].length,this.counts=[this.count];for(var b=1;b<t.text.length;b++)this.textOffsets[b]=this.textOffsets[b-1]+t.text[b-1].length,this.count+=t.text[b].length,this.counts.push(t.text[b].length);this.text=t.text.join(\"\")}else this.text=t.text,this.count=this.text.length,this.counts=[this.count];r=[],this.font.forEach((function(t,n){T.atlasContext.font=t.baseString;for(var a=e.fontAtlas[n],i=0;i<e.text.length;i++){var o=e.text.charAt(i);if(null==a.ids[o]&&(a.ids[o]=a.chars.length,a.chars.push(o),r.push(o)),null==t.width[o]&&(t.width[o]=T.atlasContext.measureText(o).width/T.baseFontSize,e.kerning)){var s=[];for(var l in t.width)s.push(l+o,o+l);m(t.kerning,g(t.family,{pairs:s}))}}}))}if(t.position)if(t.position.length>2){for(var w=!t.position[0].length,k=u.mallocFloat(2*this.count),M=0,A=0;M<this.counts.length;M++){var S=this.counts[M];if(w)for(var E=0;E<S;E++)k[A++]=t.position[2*M],k[A++]=t.position[2*M+1];else for(var C=0;C<S;C++)k[A++]=t.position[M][0],k[A++]=t.position[M][1]}this.position.call?this.position({type:\"float\",data:k}):this.position=this.regl.buffer({type:\"float\",data:k}),u.freeFloat(k)}else this.position.destroy&&this.position.destroy(),this.position={constant:t.position};if(t.text||i){var L=u.mallocUint8(this.count),P=u.mallocFloat(2*this.count);this.textWidth=[];for(var I=0,z=0;I<this.counts.length;I++){for(var O=this.counts[I],D=this.font[I]||this.font[0],R=this.fontAtlas[I]||this.fontAtlas[0],F=0;F<O;F++){var B=this.text.charAt(z),N=this.text.charAt(z-1);if(L[z]=R.ids[B],P[2*z]=D.width[B],F){var j=P[2*z-2],U=P[2*z],V=P[2*z-1]+.5*j+.5*U;if(this.kerning){var q=D.kerning[N+B];q&&(V+=.001*q)}P[2*z+1]=V}else P[2*z+1]=.5*P[2*z];z++}this.textWidth.push(P.length?.5*P[2*z-2]+P[2*z-1]:0)}t.align||(t.align=this.align),this.charBuffer({data:L,type:\"uint8\",usage:\"stream\"}),this.sizeBuffer({data:P,type:\"float\",usage:\"stream\"}),u.freeUint8(L),u.freeFloat(P),r.length&&this.font.forEach((function(t,r){var n=e.fontAtlas[r],a=n.step,i=Math.floor(T.maxAtlasSize/a),o=Math.min(i,n.chars.length),s=Math.ceil(n.chars.length/o),l=x(o*a),u=x(s*a);n.width=l,n.height=u,n.rows=s,n.cols=o,n.em&&n.texture({data:c({canvas:T.atlasCanvas,font:n.fontString,chars:n.chars,shape:[l,u],step:[a,a]})})}))}if(t.align&&(this.align=t.align,this.alignOffset=this.textWidth.map((function(t,r){var n=Array.isArray(e.align)?e.align.length>1?e.align[r]:e.align[0]:e.align;if(\"number\"==typeof n)return n;switch(n){case\"right\":case\"end\":return-t;case\"center\":case\"centre\":case\"middle\":return.5*-t}return 0}))),null==this.baseline&&null==t.baseline&&(t.baseline=0),null!=t.baseline&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(t,r){var n=(e.font[r]||e.font[0]).metrics,a=0;return a+=.5*n.bottom,a+=\"number\"==typeof t?t-n.baseline:-n[t],T.normalViewport||(a*=-1),a}))),null!=t.color)if(t.color||(t.color=\"transparent\"),\"string\"!=typeof t.color&&isNaN(t.color)){var H;if(\"number\"==typeof t.color[0]&&t.color.length>this.counts.length){var G=t.color.length;H=u.mallocUint8(G);for(var Y=(t.color.subarray||t.color.slice).bind(t.color),W=0;W<G;W+=4)H.set(l(Y(W,W+4),\"uint8\"),W)}else{var Z=t.color.length;H=u.mallocUint8(4*Z);for(var X=0;X<Z;X++)H.set(l(t.color[X]||0,\"uint8\"),4*X)}this.color=H}else this.color=l(t.color,\"uint8\");if(t.position||t.text||t.color||t.baseline||t.align||t.font||t.offset||t.opacity)if(this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var J=Math.max(.5*this.position.length||0,.25*this.color.length||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,.5*this.positionOffset.length||0);this.batch=Array(J);for(var K=0;K<this.batch.length;K++)this.batch[K]={count:this.counts.length>1?this.counts[K]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[K]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*K,4*K+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[K]:this.opacity,baseline:null!=this.baselineOffset[K]?this.baselineOffset[K]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[K]?this.alignOffset[K]:this.alignOffset[0]:0,atlas:this.fontAtlas[K]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*K,2*K+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]},T.prototype.destroy=function(){},T.prototype.kerning=!0,T.prototype.position={constant:new Float32Array(2)},T.prototype.translate=null,T.prototype.scale=null,T.prototype.font=null,T.prototype.text=\"\",T.prototype.positionOffset=[0,0],T.prototype.opacity=1,T.prototype.color=new Uint8Array([0,0,0,255]),T.prototype.alignOffset=[0,0],T.normalViewport=!1,T.maxAtlasSize=1024,T.atlasCanvas=document.createElement(\"canvas\"),T.atlasContext=T.atlasCanvas.getContext(\"2d\",{alpha:!1}),T.baseFontSize=64,T.fonts={},e.exports=T},{\"bit-twiddle\":97,\"color-normalize\":125,\"css-font\":144,\"detect-kerning\":172,\"es6-weak-map\":233,\"flatten-vertex-data\":244,\"font-atlas\":245,\"font-measure\":246,\"gl-util/context\":328,\"is-plain-obj\":443,\"object-assign\":473,\"parse-rect\":478,\"parse-unit\":480,\"pick-by-alias\":485,regl:512,\"to-px\":550,\"typedarray-pool\":567}],327:[function(t,e,r){\"use strict\";var n=t(\"ndarray\"),a=t(\"ndarray-ops\"),i=t(\"typedarray-pool\");e.exports=function(t){if(arguments.length<=1)throw new Error(\"gl-texture2d: Missing arguments for texture2d constructor\");o||c(t);if(\"number\"==typeof arguments[1])return v(t,arguments[1],arguments[2],arguments[3]||t.RGBA,arguments[4]||t.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return v(t,0|arguments[1][0],0|arguments[1][1],arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(\"object\"==typeof arguments[1]){var e=arguments[1],r=u(e)?e:e.raw;if(r)return y(t,r,0|e.width,0|e.height,arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(e.shape&&e.data&&e.stride)return x(t,e)}throw new Error(\"gl-texture2d: Invalid arguments for texture2d constructor\")};var o=null,s=null,l=null;function c(t){o=[t.LINEAR,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_NEAREST],s=[t.NEAREST,t.LINEAR,t.NEAREST_MIPMAP_NEAREST,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_LINEAR],l=[t.REPEAT,t.CLAMP_TO_EDGE,t.MIRRORED_REPEAT]}function u(t){return\"undefined\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\"undefined\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\"undefined\"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement||\"undefined\"!=typeof ImageData&&t instanceof ImageData}var h=function(t,e){a.muls(t,e,255)};function f(t,e,r){var n=t.gl,a=n.getParameter(n.MAX_TEXTURE_SIZE);if(e<0||e>a||r<0||r>a)throw new Error(\"gl-texture2d: Invalid texture size\");return t._shape=[e,r],t.bind(),n.texImage2D(n.TEXTURE_2D,0,t.format,e,r,0,t.format,t.type,null),t._mipLevels=[0],t}function p(t,e,r,n,a,i){this.gl=t,this.handle=e,this.format=a,this.type=i,this._shape=[r,n],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}var d=p.prototype;function g(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function m(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function v(t,e,r,n,a){var i=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>i||r<0||r>i)throw new Error(\"gl-texture2d: Invalid texture shape\");if(a===t.FLOAT&&!t.getExtension(\"OES_texture_float\"))throw new Error(\"gl-texture2d: Floating point textures not supported on this platform\");var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,n,e,r,0,n,a,null),new p(t,o,e,r,n,a)}function y(t,e,r,n,a,i){var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,a,a,i,e),new p(t,o,r,n,a,i)}function x(t,e){var r=e.dtype,o=e.shape.slice(),s=t.getParameter(t.MAX_TEXTURE_SIZE);if(o[0]<0||o[0]>s||o[1]<0||o[1]>s)throw new Error(\"gl-texture2d: Invalid texture size\");var l=g(o,e.stride.slice()),c=0;\"float32\"===r?c=t.FLOAT:\"float64\"===r?(c=t.FLOAT,l=!1,r=\"float32\"):\"uint8\"===r?c=t.UNSIGNED_BYTE:(c=t.UNSIGNED_BYTE,l=!1,r=\"uint8\");var u,f,d=0;if(2===o.length)d=t.LUMINANCE,o=[o[0],o[1],1],e=n(e.data,o,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==o.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===o[2])d=t.ALPHA;else if(2===o[2])d=t.LUMINANCE_ALPHA;else if(3===o[2])d=t.RGB;else{if(4!==o[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");d=t.RGBA}}c!==t.FLOAT||t.getExtension(\"OES_texture_float\")||(c=t.UNSIGNED_BYTE,l=!1);var v=e.size;if(l)u=0===e.offset&&e.data.length===v?e.data:e.data.subarray(e.offset,e.offset+v);else{var y=[o[2],o[2]*o[0],1];f=i.malloc(v,r);var x=n(f,o,y,0);\"float32\"!==r&&\"float64\"!==r||c!==t.UNSIGNED_BYTE?a.assign(x,e):h(x,e),u=f.subarray(0,v)}var b=m(t);return t.texImage2D(t.TEXTURE_2D,0,d,o[0],o[1],0,d,c,u),l||i.free(f),new p(t,b,o[0],o[1],d,c)}Object.defineProperties(d,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var r=this.gl.getExtension(\"EXT_texture_filter_anisotropic\");r&&this.gl.texParameterf(this.gl.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,t),this._wrapS=t}},wrapT:{get:function(){return this._wrapT},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error(\"gl-texture2d: Must specify wrap mode for rows and columns\");for(var e=0;e<2;++e)if(l.indexOf(t[e])<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);this._wrapS=t[0],this._wrapT=t[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error(\"gl-texture2d: Invalid texture shape\")}else t=[0|t,0|t];return f(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return f(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,f(this,this._shape[0],t),t}}}),d.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},d.dispose=function(){this.gl.deleteTexture(this.handle)},d.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},d.setPixels=function(t,e,r,o){var s=this.gl;this.bind(),Array.isArray(e)?(o=r,r=0|e[1],e=0|e[0]):(e=e||0,r=r||0),o=o||0;var l=u(t)?t:t.raw;if(l){this._mipLevels.indexOf(o)<0?(s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,this.type,l),this._mipLevels.push(o)):s.texSubImage2D(s.TEXTURE_2D,o,e,r,this.format,this.type,l)}else{if(!(t.shape&&t.stride&&t.data))throw new Error(\"gl-texture2d: Unsupported data type\");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>o||r+t.shape[0]>this._shape[0]>>>o||e<0||r<0)throw new Error(\"gl-texture2d: Texture dimensions are out of bounds\");!function(t,e,r,o,s,l,c,u){var f=u.dtype,p=u.shape.slice();if(p.length<2||p.length>3)throw new Error(\"gl-texture2d: Invalid ndarray, must be 2d or 3d\");var d=0,m=0,v=g(p,u.stride.slice());\"float32\"===f?d=t.FLOAT:\"float64\"===f?(d=t.FLOAT,v=!1,f=\"float32\"):\"uint8\"===f?d=t.UNSIGNED_BYTE:(d=t.UNSIGNED_BYTE,v=!1,f=\"uint8\");if(2===p.length)m=t.LUMINANCE,p=[p[0],p[1],1],u=n(u.data,p,[u.stride[0],u.stride[1],1],u.offset);else{if(3!==p.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===p[2])m=t.ALPHA;else if(2===p[2])m=t.LUMINANCE_ALPHA;else if(3===p[2])m=t.RGB;else{if(4!==p[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");m=t.RGBA}p[2]}m!==t.LUMINANCE&&m!==t.ALPHA||s!==t.LUMINANCE&&s!==t.ALPHA||(m=s);if(m!==s)throw new Error(\"gl-texture2d: Incompatible texture format for setPixels\");var y=u.size,x=c.indexOf(o)<0;x&&c.push(o);if(d===l&&v)0===u.offset&&u.data.length===y?x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,u.data):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,u.data):x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,u.data.subarray(u.offset,u.offset+y)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,u.data.subarray(u.offset,u.offset+y));else{var b;b=l===t.FLOAT?i.mallocFloat32(y):i.mallocUint8(y);var _=n(b,p,[p[2],p[2]*p[0],1]);d===t.FLOAT&&l===t.UNSIGNED_BYTE?h(_,u):a.assign(_,u),x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,b.subarray(0,y)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,b.subarray(0,y)),l===t.FLOAT?i.freeFloat32(b):i.freeUint8(b)}}(s,e,r,o,this.format,this.type,this._mipLevels,t)}}},{ndarray:469,\"ndarray-ops\":464,\"typedarray-pool\":567}],328:[function(t,e,r){(function(r){\"use strict\";var n=t(\"pick-by-alias\");function a(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*r.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*r.innerHeight);else{var e=t.container.getBoundingClientRect();t.canvas.width=t.width||e.right-e.left,t.canvas.height=t.height||e.bottom-e.top}}function i(t){return\"function\"==typeof t.getContext&&\"width\"in t&&\"height\"in t}function o(){var t=document.createElement(\"canvas\");return t.style.position=\"absolute\",t.style.top=0,t.style.left=0,t}e.exports=function(t){var e;if(t?\"string\"==typeof t&&(t={container:t}):t={},i(t)?t={container:t}:t=\"string\"==typeof(e=t).nodeName&&\"function\"==typeof e.appendChild&&\"function\"==typeof e.getBoundingClientRect?{container:t}:function(t){return\"function\"==typeof t.drawArrays||\"function\"==typeof t.drawElements}(t)?{gl:t}:n(t,{container:\"container target element el canvas holder parent parentNode wrapper use ref root node\",gl:\"gl context webgl glContext\",attrs:\"attributes attrs contextAttributes\",pixelRatio:\"pixelRatio pxRatio px ratio pxratio pixelratio\",width:\"w width\",height:\"h height\"},!0),t.pixelRatio||(t.pixelRatio=r.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(\"string\"==typeof t.container){var s=document.querySelector(t.container);if(!s)throw Error(\"Element \"+t.container+\" is not found\");t.container=s}i(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=o(),t.container.appendChild(t.canvas),a(t))}else if(!t.canvas){if(\"undefined\"==typeof document)throw Error(\"Not DOM environment. Use headless-gl.\");t.container=document.body||document.documentElement,t.canvas=o(),t.container.appendChild(t.canvas),a(t)}if(!t.gl)try{t.gl=t.canvas.getContext(\"webgl\",t.attrs)}catch(e){try{t.gl=t.canvas.getContext(\"experimental-webgl\",t.attrs)}catch(e){t.gl=t.canvas.getContext(\"webgl-experimental\",t.attrs)}}return t.gl}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"pick-by-alias\":485}],329:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var n=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error(\"gl-vao: Too many vertex attributes\");for(var a=0;a<r.length;++a){var i=r[a];if(i.buffer){var o=i.buffer,s=i.size||4,l=i.type||t.FLOAT,c=!!i.normalized,u=i.stride||0,h=i.offset||0;o.bind(),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,s,l,c,u,h)}else{if(\"number\"==typeof i)t.vertexAttrib1f(a,i);else if(1===i.length)t.vertexAttrib1f(a,i[0]);else if(2===i.length)t.vertexAttrib2f(a,i[0],i[1]);else if(3===i.length)t.vertexAttrib3f(a,i[0],i[1],i[2]);else{if(4!==i.length)throw new Error(\"gl-vao: Invalid vertex attribute\");t.vertexAttrib4f(a,i[0],i[1],i[2],i[3])}t.disableVertexAttribArray(a)}}for(;a<n;++a)t.disableVertexAttribArray(a)}else{t.bindBuffer(t.ARRAY_BUFFER,null);for(a=0;a<n;++a)t.disableVertexAttribArray(a)}}},{}],330:[function(t,e,r){\"use strict\";var n=t(\"./do-bind.js\");function a(t){this.gl=t,this._elements=null,this._attributes=null,this._elementsType=t.UNSIGNED_SHORT}a.prototype.bind=function(){n(this.gl,this._elements,this._attributes)},a.prototype.update=function(t,e,r){this._elements=e,this._attributes=t,this._elementsType=r||this.gl.UNSIGNED_SHORT},a.prototype.dispose=function(){},a.prototype.unbind=function(){},a.prototype.draw=function(t,e,r){r=r||0;var n=this.gl;this._elements?n.drawElements(t,e,this._elementsType,r):n.drawArrays(t,r,e)},e.exports=function(t){return new a(t)}},{\"./do-bind.js\":329}],331:[function(t,e,r){\"use strict\";var n=t(\"./do-bind.js\");function a(t,e,r,n,a,i){this.location=t,this.dimension=e,this.a=r,this.b=n,this.c=a,this.d=i}function i(t,e,r){this.gl=t,this._ext=e,this.handle=r,this._attribs=[],this._useElements=!1,this._elementsType=t.UNSIGNED_SHORT}a.prototype.bind=function(t){switch(this.dimension){case 1:t.vertexAttrib1f(this.location,this.a);break;case 2:t.vertexAttrib2f(this.location,this.a,this.b);break;case 3:t.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:t.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d)}},i.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var t=0;t<this._attribs.length;++t)this._attribs[t].bind(this.gl)},i.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},i.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},i.prototype.update=function(t,e,r){if(this.bind(),n(this.gl,e,t),this.unbind(),this._attribs.length=0,t)for(var i=0;i<t.length;++i){var o=t[i];\"number\"==typeof o?this._attribs.push(new a(i,1,o)):Array.isArray(o)&&this._attribs.push(new a(i,o.length,o[0],o[1],o[2],o[3]))}this._useElements=!!e,this._elementsType=r||this.gl.UNSIGNED_SHORT},i.prototype.draw=function(t,e,r){r=r||0;var n=this.gl;this._useElements?n.drawElements(t,e,this._elementsType,r):n.drawArrays(t,r,e)},e.exports=function(t,e){return new i(t,e,e.createVertexArrayOES())}},{\"./do-bind.js\":329}],332:[function(t,e,r){\"use strict\";var n=t(\"./lib/vao-native.js\"),a=t(\"./lib/vao-emulated.js\");function i(t){this.bindVertexArrayOES=t.bindVertexArray.bind(t),this.createVertexArrayOES=t.createVertexArray.bind(t),this.deleteVertexArrayOES=t.deleteVertexArray.bind(t)}e.exports=function(t,e,r,o){var s,l=t.createVertexArray?new i(t):t.getExtension(\"OES_vertex_array_object\");return(s=l?n(t,l):a(t)).update(e,r,o),s}},{\"./lib/vao-emulated.js\":330,\"./lib/vao-native.js\":331}],333:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t}},{}],334:[function(t,e,r){e.exports=function(t,e){var r=n(t[0],t[1],t[2]),o=n(e[0],e[1],e[2]);a(r,r),a(o,o);var s=i(r,o);return s>1?0:Math.acos(s)};var n=t(\"./fromValues\"),a=t(\"./normalize\"),i=t(\"./dot\")},{\"./dot\":344,\"./fromValues\":350,\"./normalize\":361}],335:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},{}],336:[function(t,e,r){e.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},{}],337:[function(t,e,r){e.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},{}],338:[function(t,e,r){e.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},{}],339:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2];return t[0]=a*l-i*s,t[1]=i*o-n*l,t[2]=n*s-a*o,t}},{}],340:[function(t,e,r){e.exports=t(\"./distance\")},{\"./distance\":341}],341:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2];return Math.sqrt(r*r+n*n+a*a)}},{}],342:[function(t,e,r){e.exports=t(\"./divide\")},{\"./divide\":343}],343:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}},{}],344:[function(t,e,r){e.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},{}],345:[function(t,e,r){e.exports=1e-6},{}],346:[function(t,e,r){e.exports=function(t,e){var r=t[0],a=t[1],i=t[2],o=e[0],s=e[1],l=e[2];return Math.abs(r-o)<=n*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-s)<=n*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(i-l)<=n*Math.max(1,Math.abs(i),Math.abs(l))};var n=t(\"./epsilon\")},{\"./epsilon\":345}],347:[function(t,e,r){e.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},{}],348:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},{}],349:[function(t,e,r){e.exports=function(t,e,r,a,i,o){var s,l;e||(e=3);r||(r=0);l=a?Math.min(a*e+r,t.length):t.length;for(s=r;s<l;s+=e)n[0]=t[s],n[1]=t[s+1],n[2]=t[s+2],i(n,n,o),t[s]=n[0],t[s+1]=n[1],t[s+2]=n[2];return t};var n=t(\"./create\")()},{\"./create\":338}],350:[function(t,e,r){e.exports=function(t,e,r){var n=new Float32Array(3);return n[0]=t,n[1]=e,n[2]=r,n}},{}],351:[function(t,e,r){e.exports={EPSILON:t(\"./epsilon\"),create:t(\"./create\"),clone:t(\"./clone\"),angle:t(\"./angle\"),fromValues:t(\"./fromValues\"),copy:t(\"./copy\"),set:t(\"./set\"),equals:t(\"./equals\"),exactEquals:t(\"./exactEquals\"),add:t(\"./add\"),subtract:t(\"./subtract\"),sub:t(\"./sub\"),multiply:t(\"./multiply\"),mul:t(\"./mul\"),divide:t(\"./divide\"),div:t(\"./div\"),min:t(\"./min\"),max:t(\"./max\"),floor:t(\"./floor\"),ceil:t(\"./ceil\"),round:t(\"./round\"),scale:t(\"./scale\"),scaleAndAdd:t(\"./scaleAndAdd\"),distance:t(\"./distance\"),dist:t(\"./dist\"),squaredDistance:t(\"./squaredDistance\"),sqrDist:t(\"./sqrDist\"),length:t(\"./length\"),len:t(\"./len\"),squaredLength:t(\"./squaredLength\"),sqrLen:t(\"./sqrLen\"),negate:t(\"./negate\"),inverse:t(\"./inverse\"),normalize:t(\"./normalize\"),dot:t(\"./dot\"),cross:t(\"./cross\"),lerp:t(\"./lerp\"),random:t(\"./random\"),transformMat4:t(\"./transformMat4\"),transformMat3:t(\"./transformMat3\"),transformQuat:t(\"./transformQuat\"),rotateX:t(\"./rotateX\"),rotateY:t(\"./rotateY\"),rotateZ:t(\"./rotateZ\"),forEach:t(\"./forEach\")}},{\"./add\":333,\"./angle\":334,\"./ceil\":335,\"./clone\":336,\"./copy\":337,\"./create\":338,\"./cross\":339,\"./dist\":340,\"./distance\":341,\"./div\":342,\"./divide\":343,\"./dot\":344,\"./epsilon\":345,\"./equals\":346,\"./exactEquals\":347,\"./floor\":348,\"./forEach\":349,\"./fromValues\":350,\"./inverse\":352,\"./len\":353,\"./length\":354,\"./lerp\":355,\"./max\":356,\"./min\":357,\"./mul\":358,\"./multiply\":359,\"./negate\":360,\"./normalize\":361,\"./random\":362,\"./rotateX\":363,\"./rotateY\":364,\"./rotateZ\":365,\"./round\":366,\"./scale\":367,\"./scaleAndAdd\":368,\"./set\":369,\"./sqrDist\":370,\"./sqrLen\":371,\"./squaredDistance\":372,\"./squaredLength\":373,\"./sub\":374,\"./subtract\":375,\"./transformMat3\":376,\"./transformMat4\":377,\"./transformQuat\":378}],352:[function(t,e,r){e.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}},{}],353:[function(t,e,r){e.exports=t(\"./length\")},{\"./length\":354}],354:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2];return Math.sqrt(e*e+r*r+n*n)}},{}],355:[function(t,e,r){e.exports=function(t,e,r,n){var a=e[0],i=e[1],o=e[2];return t[0]=a+n*(r[0]-a),t[1]=i+n*(r[1]-i),t[2]=o+n*(r[2]-o),t}},{}],356:[function(t,e,r){e.exports=function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t}},{}],357:[function(t,e,r){e.exports=function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t}},{}],358:[function(t,e,r){e.exports=t(\"./multiply\")},{\"./multiply\":359}],359:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t}},{}],360:[function(t,e,r){e.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}},{}],361:[function(t,e,r){e.exports=function(t,e){var r=e[0],n=e[1],a=e[2],i=r*r+n*n+a*a;i>0&&(i=1/Math.sqrt(i),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i);return t}},{}],362:[function(t,e,r){e.exports=function(t,e){e=e||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,a=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*a,t[1]=Math.sin(r)*a,t[2]=n*e,t}},{}],363:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[1],i=r[2],o=e[1]-a,s=e[2]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=e[0],t[1]=a+o*c-s*l,t[2]=i+o*l+s*c,t}},{}],364:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[0],i=r[2],o=e[0]-a,s=e[2]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=a+s*l+o*c,t[1]=e[1],t[2]=i+s*c-o*l,t}},{}],365:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[0],i=r[1],o=e[0]-a,s=e[1]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=a+o*c-s*l,t[1]=i+o*l+s*c,t[2]=e[2],t}},{}],366:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},{}],367:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}},{}],368:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t}},{}],369:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}},{}],370:[function(t,e,r){e.exports=t(\"./squaredDistance\")},{\"./squaredDistance\":372}],371:[function(t,e,r){e.exports=t(\"./squaredLength\")},{\"./squaredLength\":373}],372:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2];return r*r+n*n+a*a}},{}],373:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}},{}],374:[function(t,e,r){e.exports=t(\"./subtract\")},{\"./subtract\":375}],375:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}},{}],376:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2];return t[0]=n*r[0]+a*r[3]+i*r[6],t[1]=n*r[1]+a*r[4]+i*r[7],t[2]=n*r[2]+a*r[5]+i*r[8],t}},{}],377:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[3]*n+r[7]*a+r[11]*i+r[15];return o=o||1,t[0]=(r[0]*n+r[4]*a+r[8]*i+r[12])/o,t[1]=(r[1]*n+r[5]*a+r[9]*i+r[13])/o,t[2]=(r[2]*n+r[6]*a+r[10]*i+r[14])/o,t}},{}],378:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*i-l*a,h=c*a+l*n-o*i,f=c*i+o*a-s*n,p=-o*n-s*a-l*i;return t[0]=u*c+p*-o+h*-l-f*-s,t[1]=h*c+p*-s+f*-o-u*-l,t[2]=f*c+p*-l+u*-s-h*-o,t}},{}],379:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t}},{}],380:[function(t,e,r){e.exports=function(t){var e=new Float32Array(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},{}],381:[function(t,e,r){e.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},{}],382:[function(t,e,r){e.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},{}],383:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2],i=e[3]-t[3];return Math.sqrt(r*r+n*n+a*a+i*i)}},{}],384:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t[3]=e[3]/r[3],t}},{}],385:[function(t,e,r){e.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},{}],386:[function(t,e,r){e.exports=function(t,e,r,n){var a=new Float32Array(4);return a[0]=t,a[1]=e,a[2]=r,a[3]=n,a}},{}],387:[function(t,e,r){e.exports={create:t(\"./create\"),clone:t(\"./clone\"),fromValues:t(\"./fromValues\"),copy:t(\"./copy\"),set:t(\"./set\"),add:t(\"./add\"),subtract:t(\"./subtract\"),multiply:t(\"./multiply\"),divide:t(\"./divide\"),min:t(\"./min\"),max:t(\"./max\"),scale:t(\"./scale\"),scaleAndAdd:t(\"./scaleAndAdd\"),distance:t(\"./distance\"),squaredDistance:t(\"./squaredDistance\"),length:t(\"./length\"),squaredLength:t(\"./squaredLength\"),negate:t(\"./negate\"),inverse:t(\"./inverse\"),normalize:t(\"./normalize\"),dot:t(\"./dot\"),lerp:t(\"./lerp\"),random:t(\"./random\"),transformMat4:t(\"./transformMat4\"),transformQuat:t(\"./transformQuat\")}},{\"./add\":379,\"./clone\":380,\"./copy\":381,\"./create\":382,\"./distance\":383,\"./divide\":384,\"./dot\":385,\"./fromValues\":386,\"./inverse\":388,\"./length\":389,\"./lerp\":390,\"./max\":391,\"./min\":392,\"./multiply\":393,\"./negate\":394,\"./normalize\":395,\"./random\":396,\"./scale\":397,\"./scaleAndAdd\":398,\"./set\":399,\"./squaredDistance\":400,\"./squaredLength\":401,\"./subtract\":402,\"./transformMat4\":403,\"./transformQuat\":404}],388:[function(t,e,r){e.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t}},{}],389:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3];return Math.sqrt(e*e+r*r+n*n+a*a)}},{}],390:[function(t,e,r){e.exports=function(t,e,r,n){var a=e[0],i=e[1],o=e[2],s=e[3];return t[0]=a+n*(r[0]-a),t[1]=i+n*(r[1]-i),t[2]=o+n*(r[2]-o),t[3]=s+n*(r[3]-s),t}},{}],391:[function(t,e,r){e.exports=function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t[3]=Math.max(e[3],r[3]),t}},{}],392:[function(t,e,r){e.exports=function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t[3]=Math.min(e[3],r[3]),t}},{}],393:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t[3]=e[3]*r[3],t}},{}],394:[function(t,e,r){e.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},{}],395:[function(t,e,r){e.exports=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=r*r+n*n+a*a+i*i;o>0&&(o=1/Math.sqrt(o),t[0]=r*o,t[1]=n*o,t[2]=a*o,t[3]=i*o);return t}},{}],396:[function(t,e,r){var n=t(\"./normalize\"),a=t(\"./scale\");e.exports=function(t,e){return e=e||1,t[0]=Math.random(),t[1]=Math.random(),t[2]=Math.random(),t[3]=Math.random(),n(t,t),a(t,t,e),t}},{\"./normalize\":395,\"./scale\":397}],397:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t}},{}],398:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t[3]=e[3]+r[3]*n,t}},{}],399:[function(t,e,r){e.exports=function(t,e,r,n,a){return t[0]=e,t[1]=r,t[2]=n,t[3]=a,t}},{}],400:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2],i=e[3]-t[3];return r*r+n*n+a*a+i*i}},{}],401:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3];return e*e+r*r+n*n+a*a}},{}],402:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t[3]=e[3]-r[3],t}},{}],403:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3];return t[0]=r[0]*n+r[4]*a+r[8]*i+r[12]*o,t[1]=r[1]*n+r[5]*a+r[9]*i+r[13]*o,t[2]=r[2]*n+r[6]*a+r[10]*i+r[14]*o,t[3]=r[3]*n+r[7]*a+r[11]*i+r[15]*o,t}},{}],404:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*i-l*a,h=c*a+l*n-o*i,f=c*i+o*a-s*n,p=-o*n-s*a-l*i;return t[0]=u*c+p*-o+h*-l-f*-s,t[1]=h*c+p*-s+f*-o-u*-l,t[2]=f*c+p*-l+u*-s-h*-o,t[3]=e[3],t}},{}],405:[function(t,e,r){var n=t(\"glsl-tokenizer\"),a=t(\"atob-lite\");e.exports=function(t){for(var e=Array.isArray(t)?t:n(t),r=0;r<e.length;r++){var i=e[r];if(\"preprocessor\"===i.type){var o=i.data.match(/\\#define\\s+SHADER_NAME(_B64)?\\s+(.+)$/);if(o&&o[2]){var s=o[1],l=o[2];return(s?a(l):l).trim()}}}}},{\"atob-lite\":77,\"glsl-tokenizer\":412}],406:[function(t,e,r){e.exports=function(t){var e,r,c,u=0,h=0,f=999,p=[],d=[],g=1,m=0,v=0,y=!1,x=!1,b=\"\",_=i,w=n;\"300 es\"===(t=t||{}).version&&(_=s,w=o);var T={},k={};for(u=0;u<_.length;u++)T[_[u]]=!0;for(u=0;u<w.length;u++)k[w[u]]=!0;return function(t){return d=[],null!==t?function(t){u=0,t.toString&&(t=t.toString());var r;b+=t.replace(/\\r\\n/g,\"\\n\"),c=b.length;for(;e=b[u],u<c;){switch(r=u,f){case 0:u=C();break;case 1:case 2:u=E();break;case 3:u=L();break;case 4:u=z();break;case 11:u=I();break;case 5:u=O();break;case 9999:u=D();break;case 9:u=S();break;case 999:u=A()}if(r!==u)switch(b[r]){case\"\\n\":m=0,++g;break;default:++m}}return h+=u,b=b.slice(u),d}(t):function(t){p.length&&M(p.join(\"\"));return f=10,M(\"(eof)\"),d}()};function M(t){t.length&&d.push({type:l[f],data:t,position:v,line:g,column:m})}function A(){return p=p.length?[]:p,\"/\"===r&&\"*\"===e?(v=h+u-1,f=0,r=e,u+1):\"/\"===r&&\"/\"===e?(v=h+u-1,f=1,r=e,u+1):\"#\"===e?(f=2,v=h+u,u):/\\s/.test(e)?(f=9,v=h+u,u):(y=/\\d/.test(e),x=/[^\\w_]/.test(e),v=h+u,f=y?4:x?3:9999,u)}function S(){return/[^\\s]/g.test(e)?(M(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function E(){return\"\\r\"!==e&&\"\\n\"!==e||\"\\\\\"===r?(p.push(e),r=e,u+1):(M(p.join(\"\")),f=999,u)}function C(){return\"/\"===e&&\"*\"===r?(p.push(e),M(p.join(\"\")),f=999,u+1):(p.push(e),r=e,u+1)}function L(){if(\".\"===r&&/\\d/.test(e))return f=5,u;if(\"/\"===r&&\"*\"===e)return f=0,u;if(\"/\"===r&&\"/\"===e)return f=1,u;if(\".\"===e&&p.length){for(;P(p););return f=5,u}if(\";\"===e||\")\"===e||\"(\"===e){if(p.length)for(;P(p););return M(e),f=999,u+1}var t=2===p.length&&\"=\"!==e;if(/[\\w_\\d\\s]/.test(e)||t){for(;P(p););return f=999,u}return p.push(e),r=e,u+1}function P(t){for(var e,r,n=0;;){if(e=a.indexOf(t.slice(0,t.length+n).join(\"\")),r=a[e],-1===e){if(n--+t.length>0)continue;r=t.slice(0,1).join(\"\")}return M(r),v+=r.length,(p=p.slice(r.length)).length}}function I(){return/[^a-fA-F0-9]/.test(e)?(M(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function z(){return\".\"===e||/[eE]/.test(e)?(p.push(e),f=5,r=e,u+1):\"x\"===e&&1===p.length&&\"0\"===p[0]?(f=11,p.push(e),r=e,u+1):/[^\\d]/.test(e)?(M(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function O(){return\"f\"===e&&(p.push(e),r=e,u+=1),/[eE]/.test(e)?(p.push(e),r=e,u+1):(\"-\"!==e&&\"+\"!==e||!/[eE]/.test(r))&&/[^\\d]/.test(e)?(M(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function D(){if(/[^\\d\\w_]/.test(e)){var t=p.join(\"\");return f=k[t]?8:T[t]?7:6,M(p.join(\"\")),f=999,u}return p.push(e),r=e,u+1}};var n=t(\"./lib/literals\"),a=t(\"./lib/operators\"),i=t(\"./lib/builtins\"),o=t(\"./lib/literals-300es\"),s=t(\"./lib/builtins-300es\"),l=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"]},{\"./lib/builtins\":408,\"./lib/builtins-300es\":407,\"./lib/literals\":410,\"./lib/literals-300es\":409,\"./lib/operators\":411}],407:[function(t,e,r){var n=t(\"./builtins\");n=n.slice().filter((function(t){return!/^(gl\\_|texture)/.test(t)})),e.exports=n.concat([\"gl_VertexID\",\"gl_InstanceID\",\"gl_Position\",\"gl_PointSize\",\"gl_FragCoord\",\"gl_FrontFacing\",\"gl_FragDepth\",\"gl_PointCoord\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexUniformVectors\",\"gl_MaxVertexOutputVectors\",\"gl_MaxFragmentInputVectors\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxTextureImageUnits\",\"gl_MaxFragmentUniformVectors\",\"gl_MaxDrawBuffers\",\"gl_MinProgramTexelOffset\",\"gl_MaxProgramTexelOffset\",\"gl_DepthRangeParameters\",\"gl_DepthRange\",\"trunc\",\"round\",\"roundEven\",\"isnan\",\"isinf\",\"floatBitsToInt\",\"floatBitsToUint\",\"intBitsToFloat\",\"uintBitsToFloat\",\"packSnorm2x16\",\"unpackSnorm2x16\",\"packUnorm2x16\",\"unpackUnorm2x16\",\"packHalf2x16\",\"unpackHalf2x16\",\"outerProduct\",\"transpose\",\"determinant\",\"inverse\",\"texture\",\"textureSize\",\"textureProj\",\"textureLod\",\"textureOffset\",\"texelFetch\",\"texelFetchOffset\",\"textureProjOffset\",\"textureLodOffset\",\"textureProjLod\",\"textureProjLodOffset\",\"textureGrad\",\"textureGradOffset\",\"textureProjGrad\",\"textureProjGradOffset\"])},{\"./builtins\":408}],408:[function(t,e,r){e.exports=[\"abs\",\"acos\",\"all\",\"any\",\"asin\",\"atan\",\"ceil\",\"clamp\",\"cos\",\"cross\",\"dFdx\",\"dFdy\",\"degrees\",\"distance\",\"dot\",\"equal\",\"exp\",\"exp2\",\"faceforward\",\"floor\",\"fract\",\"gl_BackColor\",\"gl_BackLightModelProduct\",\"gl_BackLightProduct\",\"gl_BackMaterial\",\"gl_BackSecondaryColor\",\"gl_ClipPlane\",\"gl_ClipVertex\",\"gl_Color\",\"gl_DepthRange\",\"gl_DepthRangeParameters\",\"gl_EyePlaneQ\",\"gl_EyePlaneR\",\"gl_EyePlaneS\",\"gl_EyePlaneT\",\"gl_Fog\",\"gl_FogCoord\",\"gl_FogFragCoord\",\"gl_FogParameters\",\"gl_FragColor\",\"gl_FragCoord\",\"gl_FragData\",\"gl_FragDepth\",\"gl_FragDepthEXT\",\"gl_FrontColor\",\"gl_FrontFacing\",\"gl_FrontLightModelProduct\",\"gl_FrontLightProduct\",\"gl_FrontMaterial\",\"gl_FrontSecondaryColor\",\"gl_LightModel\",\"gl_LightModelParameters\",\"gl_LightModelProducts\",\"gl_LightProducts\",\"gl_LightSource\",\"gl_LightSourceParameters\",\"gl_MaterialParameters\",\"gl_MaxClipPlanes\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxDrawBuffers\",\"gl_MaxFragmentUniformComponents\",\"gl_MaxLights\",\"gl_MaxTextureCoords\",\"gl_MaxTextureImageUnits\",\"gl_MaxTextureUnits\",\"gl_MaxVaryingFloats\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxVertexUniformComponents\",\"gl_ModelViewMatrix\",\"gl_ModelViewMatrixInverse\",\"gl_ModelViewMatrixInverseTranspose\",\"gl_ModelViewMatrixTranspose\",\"gl_ModelViewProjectionMatrix\",\"gl_ModelViewProjectionMatrixInverse\",\"gl_ModelViewProjectionMatrixInverseTranspose\",\"gl_ModelViewProjectionMatrixTranspose\",\"gl_MultiTexCoord0\",\"gl_MultiTexCoord1\",\"gl_MultiTexCoord2\",\"gl_MultiTexCoord3\",\"gl_MultiTexCoord4\",\"gl_MultiTexCoord5\",\"gl_MultiTexCoord6\",\"gl_MultiTexCoord7\",\"gl_Normal\",\"gl_NormalMatrix\",\"gl_NormalScale\",\"gl_ObjectPlaneQ\",\"gl_ObjectPlaneR\",\"gl_ObjectPlaneS\",\"gl_ObjectPlaneT\",\"gl_Point\",\"gl_PointCoord\",\"gl_PointParameters\",\"gl_PointSize\",\"gl_Position\",\"gl_ProjectionMatrix\",\"gl_ProjectionMatrixInverse\",\"gl_ProjectionMatrixInverseTranspose\",\"gl_ProjectionMatrixTranspose\",\"gl_SecondaryColor\",\"gl_TexCoord\",\"gl_TextureEnvColor\",\"gl_TextureMatrix\",\"gl_TextureMatrixInverse\",\"gl_TextureMatrixInverseTranspose\",\"gl_TextureMatrixTranspose\",\"gl_Vertex\",\"greaterThan\",\"greaterThanEqual\",\"inversesqrt\",\"length\",\"lessThan\",\"lessThanEqual\",\"log\",\"log2\",\"matrixCompMult\",\"max\",\"min\",\"mix\",\"mod\",\"normalize\",\"not\",\"notEqual\",\"pow\",\"radians\",\"reflect\",\"refract\",\"sign\",\"sin\",\"smoothstep\",\"sqrt\",\"step\",\"tan\",\"texture2D\",\"texture2DLod\",\"texture2DProj\",\"texture2DProjLod\",\"textureCube\",\"textureCubeLod\",\"texture2DLodEXT\",\"texture2DProjLodEXT\",\"textureCubeLodEXT\",\"texture2DGradEXT\",\"texture2DProjGradEXT\",\"textureCubeGradEXT\"]},{}],409:[function(t,e,r){var n=t(\"./literals\");e.exports=n.slice().concat([\"layout\",\"centroid\",\"smooth\",\"case\",\"mat2x2\",\"mat2x3\",\"mat2x4\",\"mat3x2\",\"mat3x3\",\"mat3x4\",\"mat4x2\",\"mat4x3\",\"mat4x4\",\"uvec2\",\"uvec3\",\"uvec4\",\"samplerCubeShadow\",\"sampler2DArray\",\"sampler2DArrayShadow\",\"isampler2D\",\"isampler3D\",\"isamplerCube\",\"isampler2DArray\",\"usampler2D\",\"usampler3D\",\"usamplerCube\",\"usampler2DArray\",\"coherent\",\"restrict\",\"readonly\",\"writeonly\",\"resource\",\"atomic_uint\",\"noperspective\",\"patch\",\"sample\",\"subroutine\",\"common\",\"partition\",\"active\",\"filter\",\"image1D\",\"image2D\",\"image3D\",\"imageCube\",\"iimage1D\",\"iimage2D\",\"iimage3D\",\"iimageCube\",\"uimage1D\",\"uimage2D\",\"uimage3D\",\"uimageCube\",\"image1DArray\",\"image2DArray\",\"iimage1DArray\",\"iimage2DArray\",\"uimage1DArray\",\"uimage2DArray\",\"image1DShadow\",\"image2DShadow\",\"image1DArrayShadow\",\"image2DArrayShadow\",\"imageBuffer\",\"iimageBuffer\",\"uimageBuffer\",\"sampler1DArray\",\"sampler1DArrayShadow\",\"isampler1D\",\"isampler1DArray\",\"usampler1D\",\"usampler1DArray\",\"isampler2DRect\",\"usampler2DRect\",\"samplerBuffer\",\"isamplerBuffer\",\"usamplerBuffer\",\"sampler2DMS\",\"isampler2DMS\",\"usampler2DMS\",\"sampler2DMSArray\",\"isampler2DMSArray\",\"usampler2DMSArray\"])},{\"./literals\":410}],410:[function(t,e,r){e.exports=[\"precision\",\"highp\",\"mediump\",\"lowp\",\"attribute\",\"const\",\"uniform\",\"varying\",\"break\",\"continue\",\"do\",\"for\",\"while\",\"if\",\"else\",\"in\",\"out\",\"inout\",\"float\",\"int\",\"uint\",\"void\",\"bool\",\"true\",\"false\",\"discard\",\"return\",\"mat2\",\"mat3\",\"mat4\",\"vec2\",\"vec3\",\"vec4\",\"ivec2\",\"ivec3\",\"ivec4\",\"bvec2\",\"bvec3\",\"bvec4\",\"sampler1D\",\"sampler2D\",\"sampler3D\",\"samplerCube\",\"sampler1DShadow\",\"sampler2DShadow\",\"struct\",\"asm\",\"class\",\"union\",\"enum\",\"typedef\",\"template\",\"this\",\"packed\",\"goto\",\"switch\",\"default\",\"inline\",\"noinline\",\"volatile\",\"public\",\"static\",\"extern\",\"external\",\"interface\",\"long\",\"short\",\"double\",\"half\",\"fixed\",\"unsigned\",\"input\",\"output\",\"hvec2\",\"hvec3\",\"hvec4\",\"dvec2\",\"dvec3\",\"dvec4\",\"fvec2\",\"fvec3\",\"fvec4\",\"sampler2DRect\",\"sampler3DRect\",\"sampler2DRectShadow\",\"sizeof\",\"cast\",\"namespace\",\"using\"]},{}],411:[function(t,e,r){e.exports=[\"<<=\",\">>=\",\"++\",\"--\",\"<<\",\">>\",\"<=\",\">=\",\"==\",\"!=\",\"&&\",\"||\",\"+=\",\"-=\",\"*=\",\"/=\",\"%=\",\"&=\",\"^^\",\"^=\",\"|=\",\"(\",\")\",\"[\",\"]\",\".\",\"!\",\"~\",\"*\",\"/\",\"%\",\"+\",\"-\",\"<\",\">\",\"&\",\"^\",\"|\",\"?\",\":\",\"=\",\",\",\";\",\"{\",\"}\"]},{}],412:[function(t,e,r){var n=t(\"./index\");e.exports=function(t,e){var r=n(e),a=[];return a=(a=a.concat(r(t))).concat(r(null))}},{\"./index\":406}],413:[function(t,e,r){e.exports=function(t){\"string\"==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),r=[],n=0;n<t.length-1;n++)r.push(t[n],e[n]||\"\");return r.push(t[n]),r.join(\"\")}},{}],414:[function(t,e,r){(function(r){\"use strict\";var n,a=t(\"is-browser\");n=\"function\"==typeof r.matchMedia?!r.matchMedia(\"(hover: none)\").matches:a,e.exports=n}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"is-browser\":438}],415:[function(t,e,r){\"use strict\";var n=t(\"is-browser\");e.exports=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e),window.removeEventListener(\"test\",null,e)}catch(e){t=!1}return t}()},{\"is-browser\":438}],416:[function(t,e,r){r.read=function(t,e,r,n,a){var i,o,s=8*a-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?a-1:0,f=r?-1:1,p=t[e+h];for(h+=f,i=p&(1<<-u)-1,p>>=-u,u+=s;u>0;i=256*i+t[e+h],h+=f,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===i)i=1-c;else{if(i===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),i-=c}return(p?-1:1)*o*Math.pow(2,i-n)},r.write=function(t,e,r,n,a,i){var o,s,l,c=8*i-a-1,u=(1<<c)-1,h=u>>1,f=23===a?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,a),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,a),o=0));a>=8;t[r+p]=255&s,p+=d,s/=256,a-=8);for(o=o<<a|s,c+=a;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*g}},{}],417:[function(t,e,r){\"use strict\";var n=t(\"./types\");e.exports=function(t,e){var r;for(r in n)if(n[r].detect(t,e))return r}},{\"./types\":420}],418:[function(t,e,r){(function(r){\"use strict\";var n=t(\"fs\"),a=t(\"path\"),i=t(\"./types\"),o=t(\"./detector\");function s(t,e){var r=o(t,e);if(r in i){var n=i[r].calculate(t,e);if(!1!==n)return n.type=r,n}throw new TypeError(\"unsupported file type: \"+r+\" (file: \"+e+\")\")}e.exports=function(t,e){if(r.isBuffer(t))return s(t);if(\"string\"!=typeof t)throw new TypeError(\"invalid invocation\");var i=a.resolve(t);if(\"function\"!=typeof e)return s(function(t){var e=n.openSync(t,\"r\"),a=n.fstatSync(e).size,i=Math.min(a,524288),o=r.alloc(i);return n.readSync(e,o,0,i,0),n.closeSync(e),o}(i),i);!function(t,e){n.open(t,\"r\",(function(a,i){if(a)return e(a);n.fstat(i,(function(a,o){if(a)return e(a);var s=o.size;if(s<=0)return e(new Error(\"File size is not greater than 0 \\u2014\\u2014 \"+t));var l=Math.min(s,524288),c=r.alloc(l);n.read(i,c,0,l,0,(function(t){if(t)return e(t);n.close(i,(function(t){e(t,c)}))}))}))}))}(i,(function(t,r){if(t)return e(t);var n;try{n=s(r,i)}catch(e){t=e}e(t,n)}))},e.exports.types=Object.keys(i)}).call(this,t(\"buffer\").Buffer)},{\"./detector\":417,\"./types\":420,buffer:111,fs:109,path:481}],419:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){return r=r||0,t[\"readUInt\"+e+(n?\"BE\":\"LE\")].call(t,r)}},{}],420:[function(t,e,r){\"use strict\";var n={bmp:t(\"./types/bmp\"),cur:t(\"./types/cur\"),dds:t(\"./types/dds\"),gif:t(\"./types/gif\"),icns:t(\"./types/icns\"),ico:t(\"./types/ico\"),jpg:t(\"./types/jpg\"),png:t(\"./types/png\"),psd:t(\"./types/psd\"),svg:t(\"./types/svg\"),tiff:t(\"./types/tiff\"),webp:t(\"./types/webp\")};e.exports=n},{\"./types/bmp\":421,\"./types/cur\":422,\"./types/dds\":423,\"./types/gif\":424,\"./types/icns\":425,\"./types/ico\":426,\"./types/jpg\":427,\"./types/png\":428,\"./types/psd\":429,\"./types/svg\":430,\"./types/tiff\":431,\"./types/webp\":432}],421:[function(t,e,r){\"use strict\";e.exports={detect:function(t){return\"BM\"===t.toString(\"ascii\",0,2)},calculate:function(t){return{width:t.readUInt32LE(18),height:Math.abs(t.readInt32LE(22))}}}},{}],422:[function(t,e,r){\"use strict\";e.exports={detect:function(t){return 0===t.readUInt16LE(0)&&2===t.readUInt16LE(2)},calculate:t(\"./ico\").calculate}},{\"./ico\":426}],423:[function(t,e,r){\"use strict\";e.exports={detect:function(t){return 542327876===t.readUInt32LE(0)},calculate:function(t){return{height:t.readUInt32LE(12),width:t.readUInt32LE(16)}}}},{}],424:[function(t,e,r){\"use strict\";var n=/^GIF8[79]a/;e.exports={detect:function(t){var e=t.toString(\"ascii\",0,6);return n.test(e)},calculate:function(t){return{width:t.readUInt16LE(6),height:t.readUInt16LE(8)}}}},{}],425:[function(t,e,r){\"use strict\";var n={ICON:32,\"ICN#\":32,\"icm#\":16,icm4:16,icm8:16,\"ics#\":16,ics4:16,ics8:16,is32:16,s8mk:16,icp4:16,icl4:32,icl8:32,il32:32,l8mk:32,icp5:32,ic11:32,ich4:48,ich8:48,ih32:48,h8mk:48,icp6:64,ic12:32,it32:128,t8mk:128,ic07:128,ic08:256,ic13:256,ic09:512,ic14:512,ic10:1024};function a(t,e){var r=e+4;return[t.toString(\"ascii\",e,r),t.readUInt32BE(r)]}function i(t){var e=n[t];return{width:e,height:e,type:t}}e.exports={detect:function(t){return\"icns\"===t.toString(\"ascii\",0,4)},calculate:function(t){var e,r,n,o=t.length,s=8,l=t.readUInt32BE(4);if(r=i((e=a(t,s))[0]),(s+=e[1])===l)return r;for(n={width:r.width,height:r.height,images:[r]};s<l&&s<o;)r=i((e=a(t,s))[0]),s+=e[1],n.images.push(r);return n}}},{}],426:[function(t,e,r){\"use strict\";function n(t,e){var r=t.readUInt8(e);return 0===r?256:r}function a(t,e){var r=6+16*e;return{width:n(t,r),height:n(t,r+1)}}e.exports={detect:function(t){return 0===t.readUInt16LE(0)&&1===t.readUInt16LE(2)},calculate:function(t){var e,r=t.readUInt16LE(4),n=a(t,0);if(1===r)return n;for(n.images=[{width:n.width,height:n.height}],e=1;e<r;e+=1)n.images.push(a(t,e));return n}}},{}],427:[function(t,e,r){\"use strict\";var n=t(\"../readUInt\");function a(t){return\"45786966\"===t.toString(\"hex\",2,6)}function i(t,e){return{height:t.readUInt16BE(e),width:t.readUInt16BE(e+2)}}function o(t,e){var r=t.slice(2,e),a=r.toString(\"hex\",6,8),i=\"4d4d\"===a;if(i||\"4949\"===a)return function(t,e){for(var r,a,i=n(t,16,14,e),o=0;o<i;o++){if(a=(r=16+12*o)+12,r>t.length)return;var s=t.slice(r,a);if(274===n(s,16,0,e)){if(3!==n(s,16,2,e))return;if(1!==n(s,32,4,e))return;return n(s,16,8,e)}}}(r,i)}function s(t,e){if(e>t.length)throw new TypeError(\"Corrupt JPG, exceeded buffer limits\");if(255!==t[e])throw new TypeError(\"Invalid JPG, marker table corrupted\")}e.exports={detect:function(t){return\"ffd8\"===t.toString(\"hex\",0,2)},calculate:function(t){var e,r,n;for(t=t.slice(4);t.length;){if(r=t.readUInt16BE(0),a(t)&&(e=o(t,r)),s(t,r),192===(n=t[r+1])||193===n||194===n){var l=i(t,r+5);return e?{width:l.width,height:l.height,orientation:e}:l}t=t.slice(r+2)}throw new TypeError(\"Invalid JPG, no size found\")}}},{\"../readUInt\":419}],428:[function(t,e,r){\"use strict\";e.exports={detect:function(t){if(\"PNG\\r\\n\\x1a\\n\"===t.toString(\"ascii\",1,8)){var e=t.toString(\"ascii\",12,16);if(\"CgBI\"===e&&(e=t.toString(\"ascii\",28,32)),\"IHDR\"!==e)throw new TypeError(\"invalid png\");return!0}},calculate:function(t){return\"CgBI\"===t.toString(\"ascii\",12,16)?{width:t.readUInt32BE(32),height:t.readUInt32BE(36)}:{width:t.readUInt32BE(16),height:t.readUInt32BE(20)}}}},{}],429:[function(t,e,r){\"use strict\";e.exports={detect:function(t){return\"8BPS\"===t.toString(\"ascii\",0,4)},calculate:function(t){return{width:t.readUInt32BE(18),height:t.readUInt32BE(14)}}}},{}],430:[function(t,e,r){\"use strict\";var n=/<svg\\s([^>\"']|\"[^\"]*\"|'[^']*')*>/;var a={root:n,width:/\\swidth=(['\"])([^%]+?)\\1/,height:/\\sheight=(['\"])([^%]+?)\\1/,viewbox:/\\sviewBox=(['\"])(.+?)\\1/},i={cm:96/2.54,mm:96/2.54/10,m:96/2.54*100,pt:96/72,pc:96/72/12,em:16,ex:8};function o(t){var e=/([0-9.]+)([a-z]*)/.exec(t);if(e)return Math.round(parseFloat(e[1])*(i[e[2]]||1))}function s(t){var e=t.split(\" \");return{width:o(e[2]),height:o(e[3])}}e.exports={detect:function(t){return n.test(t)},calculate:function(t){var e=t.toString(\"utf8\").match(a.root);if(e){var r=function(t){var e=t.match(a.width),r=t.match(a.height),n=t.match(a.viewbox);return{width:e&&o(e[2]),height:r&&o(r[2]),viewbox:n&&s(n[2])}}(e[0]);if(r.width&&r.height)return function(t){return{width:t.width,height:t.height}}(r);if(r.viewbox)return function(t){var e=t.viewbox.width/t.viewbox.height;return t.width?{width:t.width,height:Math.floor(t.width/e)}:t.height?{width:Math.floor(t.height*e),height:t.height}:{width:t.viewbox.width,height:t.viewbox.height}}(r)}throw new TypeError(\"invalid svg\")}}},{}],431:[function(t,e,r){(function(r){\"use strict\";var n=t(\"fs\"),a=t(\"../readUInt\");function i(t,e){var r=a(t,16,8,e);return(a(t,16,10,e)<<16)+r}function o(t){if(t.length>24)return t.slice(12)}e.exports={detect:function(t){var e=t.toString(\"hex\",0,4);return\"49492a00\"===e||\"4d4d002a\"===e},calculate:function(t,e){if(!e)throw new TypeError(\"Tiff doesn't support buffer\");var s=\"BE\"===function(t){var e=t.toString(\"ascii\",0,2);return\"II\"===e?\"LE\":\"MM\"===e?\"BE\":void 0}(t),l=function(t,e){for(var r,n,s,l={};t&&t.length&&(r=a(t,16,0,e),n=a(t,16,2,e),s=a(t,32,4,e),0!==r);)1!==s||3!==n&&4!==n||(l[r]=i(t,e)),t=o(t);return l}(function(t,e,i){var o=a(t,32,4,i),s=1024,l=n.statSync(e).size;o+s>l&&(s=l-o-10);var c=r.alloc(s),u=n.openSync(e,\"r\");return n.readSync(u,c,0,s,o),c.slice(2)}(t,e,s),s),c=l[256],u=l[257];if(!c||!u)throw new TypeError(\"Invalid Tiff, missing tags\");return{width:c,height:u}}}}).call(this,t(\"buffer\").Buffer)},{\"../readUInt\":419,buffer:111,fs:109}],432:[function(t,e,r){\"use strict\";e.exports={detect:function(t){var e=\"RIFF\"===t.toString(\"ascii\",0,4),r=\"WEBP\"===t.toString(\"ascii\",8,12),n=\"VP8\"===t.toString(\"ascii\",12,15);return e&&r&&n},calculate:function(t){var e=t.toString(\"ascii\",12,16);if(t=t.slice(20,30),\"VP8X\"===e){var r=t[0];return!(!(0==(192&r))||!(0==(1&r)))&&function(t){return{width:1+t.readUIntLE(4,3),height:1+t.readUIntLE(7,3)}}(t)}if(\"VP8 \"===e&&47!==t[0])return function(t){return{width:16383&t.readInt16LE(6),height:16383&t.readInt16LE(8)}}(t);var n=t.toString(\"hex\",3,6);return\"VP8L\"===e&&\"9d012a\"!==n&&function(t){return{width:1+((63&t[2])<<8|t[1]),height:1+((15&t[4])<<10|t[3]<<2|(192&t[2])>>6)}}(t)}}},{}],433:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=t.length;if(0===r)throw new Error(\"Must have at least d+1 points\");var a=t[0].length;if(r<=a)throw new Error(\"Must input at least d+1 points\");var o=t.slice(0,a+1),s=n.apply(void 0,o);if(0===s)throw new Error(\"Input not in general position\");for(var l=new Array(a+1),u=0;u<=a;++u)l[u]=u;s<0&&(l[0]=1,l[1]=0);var h=new i(l,new Array(a+1),!1),f=h.adjacent,p=new Array(a+2);for(u=0;u<=a;++u){for(var d=l.slice(),g=0;g<=a;++g)g===u&&(d[g]=-1);var m=d[0];d[0]=d[1],d[1]=m;var v=new i(d,new Array(a+1),!0);f[u]=v,p[u]=v}p[a+1]=h;for(u=0;u<=a;++u){d=f[u].vertices;var y=f[u].adjacent;for(g=0;g<=a;++g){var x=d[g];if(x<0)y[g]=h;else for(var b=0;b<=a;++b)f[b].vertices.indexOf(x)<0&&(y[g]=f[b])}}var _=new c(a,o,p),w=!!e;for(u=a+1;u<r;++u)_.insert(t[u],w);return _.boundary()};var n=t(\"robust-orientation\"),a=t(\"simplicial-complex\").compareCells;function i(t,e,r){this.vertices=t,this.adjacent=e,this.boundary=r,this.lastVisited=-1}function o(t,e,r){this.vertices=t,this.cell=e,this.index=r}function s(t,e){return a(t.vertices,e.vertices)}i.prototype.flip=function(){var t=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=t;var e=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=e};var l=[];function c(t,e,r){this.dimension=t,this.vertices=e,this.simplices=r,this.interior=r.filter((function(t){return!t.boundary})),this.tuple=new Array(t+1);for(var a=0;a<=t;++a)this.tuple[a]=this.vertices[a];var i=l[t];i||(i=l[t]=function(t){for(var e=[\"function orient(){var tuple=this.tuple;return test(\"],r=0;r<=t;++r)r>0&&e.push(\",\"),e.push(\"tuple[\",r,\"]\");e.push(\")}return orient\");var a=new Function(\"test\",e.join(\"\")),i=n[t+1];return i||(i=n),a(i)}(t)),this.orient=i}var u=c.prototype;u.handleBoundaryDegeneracy=function(t,e){var r=this.dimension,n=this.vertices.length-1,a=this.tuple,i=this.vertices,o=[t];for(t.lastVisited=-n;o.length>0;){(t=o.pop()).vertices;for(var s=t.adjacent,l=0;l<=r;++l){var c=s[l];if(c.boundary&&!(c.lastVisited<=-n)){for(var u=c.vertices,h=0;h<=r;++h){var f=u[h];a[h]=f<0?e:i[f]}var p=this.orient();if(p>0)return c;c.lastVisited=-n,0===p&&o.push(c)}}}return null},u.walk=function(t,e){var r=this.vertices.length-1,n=this.dimension,a=this.vertices,i=this.tuple,o=e?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,c=s.adjacent,u=0;u<=n;++u)i[u]=a[l[u]];s.lastVisited=r;for(u=0;u<=n;++u){var h=c[u];if(!(h.lastVisited>=r)){var f=i[u];i[u]=t;var p=this.orient();if(i[u]=f,p<0){s=h;continue t}h.boundary?h.lastVisited=-r:h.lastVisited=r}}return}return s},u.addPeaks=function(t,e){var r=this.vertices.length-1,n=this.dimension,a=this.vertices,l=this.tuple,c=this.interior,u=this.simplices,h=[e];e.lastVisited=r,e.vertices[e.vertices.indexOf(-1)]=r,e.boundary=!1,c.push(e);for(var f=[];h.length>0;){var p=(e=h.pop()).vertices,d=e.adjacent,g=p.indexOf(r);if(!(g<0))for(var m=0;m<=n;++m)if(m!==g){var v=d[m];if(v.boundary&&!(v.lastVisited>=r)){var y=v.vertices;if(v.lastVisited!==-r){for(var x=0,b=0;b<=n;++b)y[b]<0?(x=b,l[b]=t):l[b]=a[y[b]];if(this.orient()>0){y[x]=r,v.boundary=!1,c.push(v),h.push(v),v.lastVisited=r;continue}v.lastVisited=-r}var _=v.adjacent,w=p.slice(),T=d.slice(),k=new i(w,T,!0);u.push(k);var M=_.indexOf(e);if(!(M<0)){_[M]=k,T[g]=v,w[m]=-1,T[m]=e,d[m]=k,k.flip();for(b=0;b<=n;++b){var A=w[b];if(!(A<0||A===r)){for(var S=new Array(n-1),E=0,C=0;C<=n;++C){var L=w[C];L<0||C===b||(S[E++]=L)}f.push(new o(S,k,b))}}}}}}f.sort(s);for(m=0;m+1<f.length;m+=2){var P=f[m],I=f[m+1],z=P.index,O=I.index;z<0||O<0||(P.cell.adjacent[P.index]=I.cell,I.cell.adjacent[I.index]=P.cell)}},u.insert=function(t,e){var r=this.vertices;r.push(t);var n=this.walk(t,e);if(n){for(var a=this.dimension,i=this.tuple,o=0;o<=a;++o){var s=n.vertices[o];i[o]=s<0?t:r[s]}var l=this.orient(i);l<0||(0!==l||(n=this.handleBoundaryDegeneracy(n,t)))&&this.addPeaks(t,n)}},u.boundary=function(){for(var t=this.dimension,e=[],r=this.simplices,n=r.length,a=0;a<n;++a){var i=r[a];if(i.boundary){for(var o=new Array(t),s=i.vertices,l=0,c=0,u=0;u<=t;++u)s[u]>=0?o[l++]=s[u]:c=1&u;if(c===(1&t)){var h=o[0];o[0]=o[1],o[1]=h}e.push(o)}}return e}},{\"robust-orientation\":520,\"simplicial-complex\":530}],434:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\");function a(t,e,r,n,a){this.mid=t,this.left=e,this.right=r,this.leftPoints=n,this.rightPoints=a,this.count=(e?e.count:0)+(r?r.count:0)+n.length}e.exports=function(t){if(!t||0===t.length)return new v(null);return new v(m(t))};var i=a.prototype;function o(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function s(t,e){var r=m(e);t.mid=r.mid,t.left=r.left,t.right=r.right,t.leftPoints=r.leftPoints,t.rightPoints=r.rightPoints,t.count=r.count}function l(t,e){var r=t.intervals([]);r.push(e),s(t,r)}function c(t,e){var r=t.intervals([]),n=r.indexOf(e);return n<0?0:(r.splice(n,1),s(t,r),1)}function u(t,e,r){for(var n=0;n<t.length&&t[n][0]<=e;++n){var a=r(t[n]);if(a)return a}}function h(t,e,r){for(var n=t.length-1;n>=0&&t[n][1]>=e;--n){var a=r(t[n]);if(a)return a}}function f(t,e){for(var r=0;r<t.length;++r){var n=e(t[r]);if(n)return n}}function p(t,e){return t-e}function d(t,e){var r=t[0]-e[0];return r||t[1]-e[1]}function g(t,e){var r=t[1]-e[1];return r||t[0]-e[0]}function m(t){if(0===t.length)return null;for(var e=[],r=0;r<t.length;++r)e.push(t[r][0],t[r][1]);e.sort(p);var n=e[e.length>>1],i=[],o=[],s=[];for(r=0;r<t.length;++r){var l=t[r];l[1]<n?i.push(l):n<l[0]?o.push(l):s.push(l)}var c=s,u=s.slice();return c.sort(d),u.sort(g),new a(n,m(i),m(o),c,u)}function v(t){this.root=t}i.intervals=function(t){return t.push.apply(t,this.leftPoints),this.left&&this.left.intervals(t),this.right&&this.right.intervals(t),t},i.insert=function(t){var e=this.count-this.leftPoints.length;if(this.count+=1,t[1]<this.mid)this.left?4*(this.left.count+1)>3*(e+1)?l(this,t):this.left.insert(t):this.left=m([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?l(this,t):this.right.insert(t):this.right=m([t]);else{var r=n.ge(this.leftPoints,t,d),a=n.ge(this.rightPoints,t,g);this.leftPoints.splice(r,0,t),this.rightPoints.splice(a,0,t)}},i.remove=function(t){var e=this.count-this.leftPoints;if(t[1]<this.mid)return this.left?4*(this.right?this.right.count:0)>3*(e-1)?c(this,t):2===(s=this.left.remove(t))?(this.left=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(t[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(e-1)?c(this,t):2===(s=this.right.remove(t))?(this.right=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(1===this.count)return this.leftPoints[0]===t?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var r=this,a=this.left;a.right;)r=a,a=a.right;if(r===this)a.right=this.right;else{var i=this.left,s=this.right;r.count-=a.count,r.right=a.left,a.left=i,a.right=s}o(this,a),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?o(this,this.left):o(this,this.right);return 1}for(i=n.ge(this.leftPoints,t,d);i<this.leftPoints.length&&this.leftPoints[i][0]===t[0];++i)if(this.leftPoints[i]===t){this.count-=1,this.leftPoints.splice(i,1);for(s=n.ge(this.rightPoints,t,g);s<this.rightPoints.length&&this.rightPoints[s][1]===t[1];++s)if(this.rightPoints[s]===t)return this.rightPoints.splice(s,1),1}return 0},i.queryPoint=function(t,e){if(t<this.mid){if(this.left)if(r=this.left.queryPoint(t,e))return r;return u(this.leftPoints,t,e)}if(t>this.mid){var r;if(this.right)if(r=this.right.queryPoint(t,e))return r;return h(this.rightPoints,t,e)}return f(this.leftPoints,e)},i.queryInterval=function(t,e,r){var n;if(t<this.mid&&this.left&&(n=this.left.queryInterval(t,e,r)))return n;if(e>this.mid&&this.right&&(n=this.right.queryInterval(t,e,r)))return n;return e<this.mid?u(this.leftPoints,e,r):t>this.mid?h(this.rightPoints,t,r):f(this.leftPoints,r)};var y=v.prototype;y.insert=function(t){this.root?this.root.insert(t):this.root=new a(t[0],null,null,[t],[t])},y.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),0!==e}return!1},y.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},y.queryInterval=function(t,e,r){if(t<=e&&this.root)return this.root.queryInterval(t,e,r)},Object.defineProperty(y,\"count\",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(y,\"intervals\",{get:function(){return this.root?this.root.intervals([]):[]}})},{\"binary-search-bounds\":435}],435:[function(t,e,r){arguments[4][243][0].apply(r,arguments)},{dup:243}],436:[function(t,e,r){\"use strict\";e.exports=function(t,e){e=e||new Array(t.length);for(var r=0;r<t.length;++r)e[t[r]]=r;return e}},{}],437:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=r;return e}},{}],438:[function(t,e,r){e.exports=!0},{}],439:[function(t,e,r){function n(t){return!!t.constructor&&\"function\"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}\n",
       "/*!\n",
       " * Determine if an object is a Buffer\n",
       " *\n",
       " * @author   Feross Aboukhadijeh <https://feross.org>\n",
       " * @license  MIT\n",
       " */\n",
       "e.exports=function(t){return null!=t&&(n(t)||function(t){return\"function\"==typeof t.readFloatLE&&\"function\"==typeof t.slice&&n(t.slice(0,0))}(t)||!!t._isBuffer)}},{}],440:[function(t,e,r){\"use strict\";e.exports=\"undefined\"!=typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\\//.test(navigator.appVersion))},{}],441:[function(t,e,r){\"use strict\";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var n=/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series[46]0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,a=/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series[46]0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|android|ipad|playbook|silk/i;function i(t){t||(t={});var e=t.ua;if(e||\"undefined\"==typeof navigator||(e=navigator.userAgent),e&&e.headers&&\"string\"==typeof e.headers[\"user-agent\"]&&(e=e.headers[\"user-agent\"]),\"string\"!=typeof e)return!1;var r=t.tablet?a.test(e):n.test(e);return!r&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==e.indexOf(\"Macintosh\")&&-1!==e.indexOf(\"Safari\")&&(r=!0),r}},{}],442:[function(t,e,r){\"use strict\";e.exports=function(t){var e=typeof t;return null!==t&&(\"object\"===e||\"function\"===e)}},{}],443:[function(t,e,r){\"use strict\";var n=Object.prototype.toString;e.exports=function(t){var e;return\"[object Object]\"===n.call(t)&&(null===(e=Object.getPrototypeOf(t))||e===Object.getPrototypeOf({}))}},{}],444:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e,r=t.length,n=0;n<r;n++)if(((e=t.charCodeAt(n))<9||e>13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},{}],445:[function(t,e,r){\"use strict\";e.exports=function(t){return\"string\"==typeof t&&(t=t.trim(),!!(/^[mzlhvcsqta]\\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\\dz]$/i.test(t)&&t.length>4))}},{}],446:[function(t,e,r){e.exports=function(t,e,r){return t*(1-r)+e*r}},{}],447:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?e.exports=n():(t=t||self).mapboxgl=n()}(this,(function(){\"use strict\";var t,e,r;function n(n,a){if(t)if(e){var i=\"var sharedChunk = {}; (\"+t+\")(sharedChunk); (\"+e+\")(sharedChunk);\",o={};t(o),(r=a(o)).workerUrl=window.URL.createObjectURL(new Blob([i],{type:\"text/javascript\"}))}else e=a;else t=a}return n(0,(function(t){function e(t,e){return t(e={exports:{}},e.exports),e.exports}var r=n;function n(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=n,this.p2x=r,this.p2y=n}n.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},n.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},n.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},n.prototype.solveCurveX=function(t,e){var r,n,a,i,o;for(void 0===e&&(e=1e-6),a=t,o=0;o<8;o++){if(i=this.sampleCurveX(a)-t,Math.abs(i)<e)return a;var s=this.sampleCurveDerivativeX(a);if(Math.abs(s)<1e-6)break;a-=i/s}if((a=t)<(r=0))return r;if(a>(n=1))return n;for(;r<n;){if(i=this.sampleCurveX(a),Math.abs(i-t)<e)return a;t>i?r=a:n=a,a=.5*(n-r)+r}return a},n.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=i;function i(t,e){this.x=t,this.y=e}function o(t,e,n,a){var i=new r(t,e,n,a);return function(t){return i.solve(t)}}i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[2]*this.x+t[3]*this.y;return this.x=t[0]*this.x+t[1]*this.y,this.y=e,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=r*this.x+e*this.y;return this.x=e*this.x-r*this.y,this.y=n,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),a=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=e.x+r*(this.x-e.x)-n*(this.y-e.y),this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t};var s=o(.25,.1,.25,1);function l(t,e,r){return Math.min(r,Math.max(e,t))}function c(t,e,r){var n=r-e,a=((t-e)%n+n)%n+e;return a===e?r:a}function u(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,a=e;n<a.length;n+=1){var i=a[n];for(var o in i)t[o]=i[o]}return t}var h=1;function f(){return h++}function p(){return function t(e){return e?(e^16*Math.random()>>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}()}function d(t){return!!t&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function g(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function m(t,e){return-1!==t.indexOf(e,t.length-e.length)}function v(t,e,r){var n={};for(var a in t)n[a]=e.call(r||this,t[a],a,t);return n}function y(t,e,r){var n={};for(var a in t)e.call(r||this,t[a],a,t)&&(n[a]=t[a]);return n}function x(t){return Array.isArray(t)?t.map(x):\"object\"==typeof t&&t?v(t,x):t}var b={};function _(t){b[t]||(\"undefined\"!=typeof console&&console.warn(t),b[t]=!0)}function w(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function T(t){for(var e=0,r=0,n=t.length,a=n-1,i=void 0,o=void 0;r<n;a=r++)e+=((o=t[a]).x-(i=t[r]).x)*(i.y+o.y);return e}function k(){return\"undefined\"!=typeof WorkerGlobalScope&&\"undefined\"!=typeof self&&self instanceof WorkerGlobalScope}function M(t){var e={};if(t.replace(/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,(function(t,r,n,a){var i=n||a;return e[r]=!i||i.toLowerCase(),\"\"})),e[\"max-age\"]){var r=parseInt(e[\"max-age\"],10);isNaN(r)?delete e[\"max-age\"]:e[\"max-age\"]=r}return e}var A=null;function S(t){if(null==A){var e=t.navigator?t.navigator.userAgent:null;A=!!t.safari||!(!e||!(/\\b(iPad|iPhone|iPod)\\b/.test(e)||e.match(\"Safari\")&&!e.match(\"Chrome\")))}return A}function E(t){try{var e=self[t];return e.setItem(\"_mapbox_test_\",1),e.removeItem(\"_mapbox_test_\"),!0}catch(t){return!1}}var C,L,P,I,z=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),O=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,D=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,R={now:z,frame:function(t){var e=O(t);return{cancel:function(){return D(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var r=self.document.createElement(\"canvas\"),n=r.getContext(\"2d\");if(!n)throw new Error(\"failed to create canvas 2d context\");return r.width=t.width,r.height=t.height,n.drawImage(t,0,0,t.width,t.height),n.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:function(t){return C||(C=self.document.createElement(\"a\")),C.href=t,C.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},get prefersReducedMotion(){return!!self.matchMedia&&(null==L&&(L=self.matchMedia(\"(prefers-reduced-motion: reduce)\")),L.matches)}},F={API_URL:\"https://api.mapbox.com\",get EVENTS_URL(){return this.API_URL?0===this.API_URL.indexOf(\"https://api.mapbox.cn\")?\"https://events.mapbox.cn/events/v2\":0===this.API_URL.indexOf(\"https://api.mapbox.com\")?\"https://events.mapbox.com/events/v2\":null:null},FEEDBACK_URL:\"https://apps.mapbox.com/feedback\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},B={supported:!1,testSupport:function(t){!N&&I&&(j?U(t):P=t)}},N=!1,j=!1;function U(t){var e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,I),t.isContextLost())return;B.supported=!0}catch(t){}t.deleteTexture(e),N=!0}self.document&&((I=self.document.createElement(\"img\")).onload=function(){P&&U(P),P=null,j=!0},I.onerror=function(){N=!0,P=null},I.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\");var V=\"01\",q=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function H(t){return 0===t.indexOf(\"mapbox:\")}q.prototype._createSkuToken=function(){var t=function(){for(var t=\"\",e=0;e<10;e++)t+=\"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"[Math.floor(62*Math.random())];return{token:[\"1\",V,t].join(\"\"),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},q.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},q.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},q.prototype.normalizeStyleURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=\"/styles/v1\"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeGlyphsURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=\"/fonts/v1\"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeSourceURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=\"/v4/\"+r.authority+\".json\",r.params.push(\"secure\"),this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeSpriteURL=function(t,e,r,n){var a=Z(t);return H(t)?(a.path=\"/styles/v1\"+a.path+\"/sprite\"+e+r,this._makeAPIURL(a,this._customAccessToken||n)):(a.path+=\"\"+e+r,X(a))},q.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!H(t))return t;var r=Z(t);r.path=r.path.replace(/(\\.(png|jpg)\\d*)(?=$)/,(R.devicePixelRatio>=2||512===e?\"@2x\":\"\")+(B.supported?\".webp\":\"$1\")),r.path=r.path.replace(/^.+\\/v4\\//,\"/\"),r.path=\"/v4\"+r.path;var n=this._customAccessToken||function(t){for(var e=0,r=t;e<r.length;e+=1){var n=r[e].match(/^access_token=(.*)$/);if(n)return n[1]}return null}(r.params)||F.ACCESS_TOKEN;return F.REQUIRE_ACCESS_TOKEN&&n&&this._skuToken&&r.params.push(\"sku=\"+this._skuToken),this._makeAPIURL(r,n)},q.prototype.canonicalizeTileURL=function(t,e){var r=Z(t);if(!r.path.match(/(^\\/v4\\/)/)||!r.path.match(/\\.[\\w]+$/))return t;var n=\"mapbox://tiles/\";n+=r.path.replace(\"/v4/\",\"\");var a=r.params;return e&&(a=a.filter((function(t){return!t.match(/^access_token=/)}))),a.length&&(n+=\"?\"+a.join(\"&\")),n},q.prototype.canonicalizeTileset=function(t,e){for(var r=!!e&&H(e),n=[],a=0,i=t.tiles||[];a<i.length;a+=1){var o=i[a];Y(o)?n.push(this.canonicalizeTileURL(o,r)):n.push(o)}return n},q.prototype._makeAPIURL=function(t,e){var r=\"See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes\",n=Z(F.API_URL);if(t.protocol=n.protocol,t.authority=n.authority,\"/\"!==n.path&&(t.path=\"\"+n.path+t.path),!F.REQUIRE_ACCESS_TOKEN)return X(t);if(!(e=e||F.ACCESS_TOKEN))throw new Error(\"An API access token is required to use Mapbox GL. \"+r);if(\"s\"===e[0])throw new Error(\"Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). \"+r);return t.params=t.params.filter((function(t){return-1===t.indexOf(\"access_token\")})),t.params.push(\"access_token=\"+e),X(t)};var G=/^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/|\\?|$)/i;function Y(t){return G.test(t)}var W=/^(\\w+):\\/\\/([^/?]*)(\\/[^?]+)?\\??(.+)?/;function Z(t){var e=t.match(W);if(!e)throw new Error(\"Unable to parse URL object\");return{protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function X(t){var e=t.params.length?\"?\"+t.params.join(\"&\"):\"\";return t.protocol+\"://\"+t.authority+t.path+e}function J(t){if(!t)return null;var e=t.split(\".\");if(!e||3!==e.length)return null;try{return JSON.parse(decodeURIComponent(self.atob(e[1]).split(\"\").map((function(t){return\"%\"+(\"00\"+t.charCodeAt(0).toString(16)).slice(-2)})).join(\"\")))}catch(t){return null}}var K=function(t){this.type=t,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};K.prototype.getStorageKey=function(t){var e,r=J(F.ACCESS_TOKEN);return e=r&&r.u?self.btoa(encodeURIComponent(r.u).replace(/%([0-9A-F]{2})/g,(function(t,e){return String.fromCharCode(Number(\"0x\"+e))}))):F.ACCESS_TOKEN||\"\",t?\"mapbox.eventData.\"+t+\":\"+e:\"mapbox.eventData:\"+e},K.prototype.fetchEventData=function(){var t=E(\"localStorage\"),e=this.getStorageKey(),r=this.getStorageKey(\"uuid\");if(t)try{var n=self.localStorage.getItem(e);n&&(this.eventData=JSON.parse(n));var a=self.localStorage.getItem(r);a&&(this.anonId=a)}catch(t){_(\"Unable to read from LocalStorage\")}},K.prototype.saveEventData=function(){var t=E(\"localStorage\"),e=this.getStorageKey(),r=this.getStorageKey(\"uuid\");if(t)try{self.localStorage.setItem(r,this.anonId),Object.keys(this.eventData).length>=1&&self.localStorage.setItem(e,JSON.stringify(this.eventData))}catch(t){_(\"Unable to write to LocalStorage\")}},K.prototype.processRequests=function(t){},K.prototype.postEvent=function(t,e,r,n){var a=this;if(F.EVENTS_URL){var i=Z(F.EVENTS_URL);i.params.push(\"access_token=\"+(n||F.ACCESS_TOKEN||\"\"));var o={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:\"mapbox-gl-js\",sdkVersion:\"1.10.1\",skuId:V,userId:this.anonId},s=e?u(o,e):o,l={url:X(i),headers:{\"Content-Type\":\"text/plain\"},body:JSON.stringify([s])};this.pendingRequest=xt(l,(function(t){a.pendingRequest=null,r(t),a.saveEventData(),a.processRequests(n)}))}},K.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var Q,$,tt=function(t){function e(){t.call(this,\"map.load\"),this.success={},this.skuToken=\"\"}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.postMapLoadEvent=function(t,e,r,n){this.skuToken=r,(F.EVENTS_URL&&n||F.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return H(t)||Y(t)})))&&this.queueRequest({id:e,timestamp:Date.now()},n)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){var r=this.queue.shift(),n=r.id,a=r.timestamp;n&&this.success[n]||(this.anonId||this.fetchEventData(),d(this.anonId)||(this.anonId=p()),this.postEvent(a,{skuToken:this.skuToken},(function(t){t||n&&(e.success[n]=!0)}),t))}},e}(K),et=new(function(t){function e(e){t.call(this,\"appUserTurnstile\"),this._customAccessToken=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.postTurnstileEvent=function(t,e){F.EVENTS_URL&&F.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return H(t)||Y(t)}))&&this.queueRequest(Date.now(),e)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var r=J(F.ACCESS_TOKEN),n=r?r.u:F.ACCESS_TOKEN,a=n!==this.eventData.tokenU;d(this.anonId)||(this.anonId=p(),a=!0);var i=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(i),l=(i-this.eventData.lastSuccess)/864e5;a=a||l>=1||l<-1||o.getDate()!==s.getDate()}else a=!0;if(!a)return this.processRequests();this.postEvent(i,{\"enabled.telemetry\":!1},(function(t){t||(e.eventData.lastSuccess=i,e.eventData.tokenU=n)}),t)}},e}(K)),rt=et.postTurnstileEvent.bind(et),nt=new tt,at=nt.postMapLoadEvent.bind(nt),it=500,ot=50;function st(){self.caches&&!Q&&(Q=self.caches.open(\"mapbox-tiles\"))}function lt(t){var e=t.indexOf(\"?\");return e<0?t:t.slice(0,e)}var ct,ut=1/0;function ht(){return null==ct&&(ct=self.OffscreenCanvas&&new self.OffscreenCanvas(1,1).getContext(\"2d\")&&\"function\"==typeof self.createImageBitmap),ct}var ft={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};\"function\"==typeof Object.freeze&&Object.freeze(ft);var pt,dt,gt=function(t){function e(e,r,n){401===r&&Y(n)&&(e+=\": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes\"),t.call(this,e),this.status=r,this.url=n,this.name=this.constructor.name,this.message=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.toString=function(){return this.name+\": \"+this.message+\" (\"+this.status+\"): \"+this.url},e}(Error),mt=k()?function(){return self.worker&&self.worker.referrer}:function(){return(\"blob:\"===self.location.protocol?self.parent:self).location.href},vt=function(t,e){if(!(/^file:/.test(r=t.url)||/^file:/.test(mt())&&!/^\\w+:/.test(r))){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty(\"signal\"))return function(t,e){var r,n=new self.AbortController,a=new self.Request(t.url,{method:t.method||\"GET\",body:t.body,credentials:t.credentials,headers:t.headers,referrer:mt(),signal:n.signal}),i=!1,o=!1,s=(r=a.url).indexOf(\"sku=\")>0&&Y(r);\"json\"===t.type&&a.headers.set(\"Accept\",\"application/json\");var l=function(r,n,i){if(!o){if(r&&\"SecurityError\"!==r.message&&_(r),n&&i)return c(n);var l=Date.now();self.fetch(a).then((function(r){if(r.ok){var n=s?r.clone():null;return c(r,n,l)}return e(new gt(r.statusText,r.status,t.url))})).catch((function(t){20!==t.code&&e(new Error(t.message))}))}},c=function(r,n,s){(\"arrayBuffer\"===t.type?r.arrayBuffer():\"json\"===t.type?r.json():r.text()).then((function(t){o||(n&&s&&function(t,e,r){if(st(),Q){var n={status:e.status,statusText:e.statusText,headers:new self.Headers};e.headers.forEach((function(t,e){return n.headers.set(e,t)}));var a=M(e.headers.get(\"Cache-Control\")||\"\");a[\"no-store\"]||(a[\"max-age\"]&&n.headers.set(\"Expires\",new Date(r+1e3*a[\"max-age\"]).toUTCString()),new Date(n.headers.get(\"Expires\")).getTime()-r<42e4||function(t,e){if(void 0===$)try{new Response(new ReadableStream),$=!0}catch(t){$=!1}$?e(t.body):t.blob().then(e)}(e,(function(e){var r=new self.Response(e,n);st(),Q&&Q.then((function(e){return e.put(lt(t.url),r)})).catch((function(t){return _(t.message)}))})))}}(a,n,s),i=!0,e(null,t,r.headers.get(\"Cache-Control\"),r.headers.get(\"Expires\")))})).catch((function(t){o||e(new Error(t.message))}))};return s?function(t,e){if(st(),!Q)return e(null);var r=lt(t.url);Q.then((function(t){t.match(r).then((function(n){var a=function(t){if(!t)return!1;var e=new Date(t.headers.get(\"Expires\")||0),r=M(t.headers.get(\"Cache-Control\")||\"\");return e>Date.now()&&!r[\"no-cache\"]}(n);t.delete(r),a&&t.put(r,n.clone()),e(null,n,a)})).catch(e)})).catch(e)}(a,l):l(null,null),{cancel:function(){o=!0,i||n.abort()}}}(t,e);if(k()&&self.worker&&self.worker.actor)return self.worker.actor.send(\"getResource\",t,e,void 0,!0)}var r;return function(t,e){var r=new self.XMLHttpRequest;for(var n in r.open(t.method||\"GET\",t.url,!0),\"arrayBuffer\"===t.type&&(r.responseType=\"arraybuffer\"),t.headers)r.setRequestHeader(n,t.headers[n]);return\"json\"===t.type&&(r.responseType=\"text\",r.setRequestHeader(\"Accept\",\"application/json\")),r.withCredentials=\"include\"===t.credentials,r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){var n=r.response;if(\"json\"===t.type)try{n=JSON.parse(r.response)}catch(t){return e(t)}e(null,n,r.getResponseHeader(\"Cache-Control\"),r.getResponseHeader(\"Expires\"))}else e(new gt(r.statusText,r.status,t.url))},r.send(t.body),{cancel:function(){return r.abort()}}}(t,e)},yt=function(t,e){return vt(u(t,{type:\"arrayBuffer\"}),e)},xt=function(t,e){return vt(u(t,{method:\"POST\"}),e)};pt=[],dt=0;var bt=function(t,e){if(B.supported&&(t.headers||(t.headers={}),t.headers.accept=\"image/webp,*/*\"),dt>=F.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:t,callback:e,cancelled:!1,cancel:function(){this.cancelled=!0}};return pt.push(r),r}dt++;var n=!1,a=function(){if(!n)for(n=!0,dt--;pt.length&&dt<F.MAX_PARALLEL_IMAGE_REQUESTS;){var t=pt.shift();t.cancelled||(t.cancel=bt(t.requestParameters,t.callback).cancel)}},i=yt(t,(function(t,r,n,i){a(),t?e(t):r&&(ht()?function(t,e){var r=new self.Blob([new Uint8Array(t)],{type:\"image/png\"});self.createImageBitmap(r).then((function(t){e(null,t)})).catch((function(t){e(new Error(\"Could not load image because of \"+t.message+\". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.\"))}))}(r,e):function(t,e,r,n){var a=new self.Image,i=self.URL;a.onload=function(){e(null,a),i.revokeObjectURL(a.src)},a.onerror=function(){return e(new Error(\"Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.\"))};var o=new self.Blob([new Uint8Array(t)],{type:\"image/png\"});a.cacheControl=r,a.expires=n,a.src=t.byteLength?i.createObjectURL(o):\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\"}(r,e,n,i))}));return{cancel:function(){i.cancel(),a()}}};function _t(t,e,r){r[t]&&-1!==r[t].indexOf(e)||(r[t]=r[t]||[],r[t].push(e))}function wt(t,e,r){if(r&&r[t]){var n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1)}}var Tt=function(t,e){void 0===e&&(e={}),u(this,e),this.type=t},kt=function(t){function e(e,r){void 0===r&&(r={}),t.call(this,\"error\",u({error:e},r))}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(Tt),Mt=function(){};Mt.prototype.on=function(t,e){return this._listeners=this._listeners||{},_t(t,e,this._listeners),this},Mt.prototype.off=function(t,e){return wt(t,e,this._listeners),wt(t,e,this._oneTimeListeners),this},Mt.prototype.once=function(t,e){return this._oneTimeListeners=this._oneTimeListeners||{},_t(t,e,this._oneTimeListeners),this},Mt.prototype.fire=function(t,e){\"string\"==typeof t&&(t=new Tt(t,e||{}));var r=t.type;if(this.listens(r)){t.target=this;for(var n=0,a=this._listeners&&this._listeners[r]?this._listeners[r].slice():[];n<a.length;n+=1)a[n].call(this,t);for(var i=0,o=this._oneTimeListeners&&this._oneTimeListeners[r]?this._oneTimeListeners[r].slice():[];i<o.length;i+=1){var s=o[i];wt(r,s,this._oneTimeListeners),s.call(this,t)}var l=this._eventedParent;l&&(u(t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),l.fire(t))}else t instanceof kt&&console.error(t.error);return this},Mt.prototype.listens=function(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},Mt.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var At={$version:8,$root:{version:{required:!0,type:\"enum\",values:[8]},name:{type:\"string\"},metadata:{type:\"*\"},center:{type:\"array\",value:\"number\"},zoom:{type:\"number\"},bearing:{type:\"number\",default:0,period:360,units:\"degrees\"},pitch:{type:\"number\",default:0,units:\"degrees\"},light:{type:\"light\"},sources:{required:!0,type:\"sources\"},sprite:{type:\"string\"},glyphs:{type:\"string\"},transition:{type:\"transition\"},layers:{required:!0,type:\"array\",value:\"layer\"}},sources:{\"*\":{type:\"source\"}},source:[\"source_vector\",\"source_raster\",\"source_raster_dem\",\"source_geojson\",\"source_video\",\"source_image\"],source_vector:{type:{required:!0,type:\"enum\",values:{vector:{}}},url:{type:\"string\"},tiles:{type:\"array\",value:\"string\"},bounds:{type:\"array\",value:\"number\",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:\"enum\",values:{xyz:{},tms:{}},default:\"xyz\"},minzoom:{type:\"number\",default:0},maxzoom:{type:\"number\",default:22},attribution:{type:\"string\"},promoteId:{type:\"promoteId\"},\"*\":{type:\"*\"}},source_raster:{type:{required:!0,type:\"enum\",values:{raster:{}}},url:{type:\"string\"},tiles:{type:\"array\",value:\"string\"},bounds:{type:\"array\",value:\"number\",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:\"number\",default:0},maxzoom:{type:\"number\",default:22},tileSize:{type:\"number\",default:512,units:\"pixels\"},scheme:{type:\"enum\",values:{xyz:{},tms:{}},default:\"xyz\"},attribution:{type:\"string\"},\"*\":{type:\"*\"}},source_raster_dem:{type:{required:!0,type:\"enum\",values:{\"raster-dem\":{}}},url:{type:\"string\"},tiles:{type:\"array\",value:\"string\"},bounds:{type:\"array\",value:\"number\",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:\"number\",default:0},maxzoom:{type:\"number\",default:22},tileSize:{type:\"number\",default:512,units:\"pixels\"},attribution:{type:\"string\"},encoding:{type:\"enum\",values:{terrarium:{},mapbox:{}},default:\"mapbox\"},\"*\":{type:\"*\"}},source_geojson:{type:{required:!0,type:\"enum\",values:{geojson:{}}},data:{type:\"*\"},maxzoom:{type:\"number\",default:18},attribution:{type:\"string\"},buffer:{type:\"number\",default:128,maximum:512,minimum:0},tolerance:{type:\"number\",default:.375},cluster:{type:\"boolean\",default:!1},clusterRadius:{type:\"number\",default:50,minimum:0},clusterMaxZoom:{type:\"number\"},clusterProperties:{type:\"*\"},lineMetrics:{type:\"boolean\",default:!1},generateId:{type:\"boolean\",default:!1},promoteId:{type:\"promoteId\"}},source_video:{type:{required:!0,type:\"enum\",values:{video:{}}},urls:{required:!0,type:\"array\",value:\"string\"},coordinates:{required:!0,type:\"array\",length:4,value:{type:\"array\",length:2,value:\"number\"}}},source_image:{type:{required:!0,type:\"enum\",values:{image:{}}},url:{required:!0,type:\"string\"},coordinates:{required:!0,type:\"array\",length:4,value:{type:\"array\",length:2,value:\"number\"}}},layer:{id:{type:\"string\",required:!0},type:{type:\"enum\",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},\"fill-extrusion\":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:\"*\"},source:{type:\"string\"},\"source-layer\":{type:\"string\"},minzoom:{type:\"number\",minimum:0,maximum:24},maxzoom:{type:\"number\",minimum:0,maximum:24},filter:{type:\"filter\"},layout:{type:\"layout\"},paint:{type:\"paint\"}},layout:[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_heatmap\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_hillshade\",\"layout_background\"],layout_background:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_fill:{\"fill-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_circle:{\"circle-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_heatmap:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},\"layout_fill-extrusion\":{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_line:{\"line-cap\":{type:\"enum\",values:{butt:{},round:{},square:{}},default:\"butt\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-join\":{type:\"enum\",values:{bevel:{},round:{},miter:{}},default:\"miter\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-miter-limit\":{type:\"number\",default:2,requires:[{\"line-join\":\"miter\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-round-limit\":{type:\"number\",default:1.05,requires:[{\"line-join\":\"round\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_symbol:{\"symbol-placement\":{type:\"enum\",values:{point:{},line:{},\"line-center\":{}},default:\"point\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-spacing\":{type:\"number\",default:250,minimum:1,units:\"pixels\",requires:[{\"symbol-placement\":\"line\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-avoid-edges\":{type:\"boolean\",default:!1,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"symbol-z-order\":{type:\"enum\",values:{auto:{},\"viewport-y\":{},source:{}},default:\"auto\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-allow-overlap\":{type:\"boolean\",default:!1,requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-ignore-placement\":{type:\"boolean\",default:!1,requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-optional\":{type:\"boolean\",default:!1,requires:[\"icon-image\",\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-rotation-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-size\":{type:\"number\",default:1,minimum:0,units:\"factor of the original icon size\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-text-fit\":{type:\"enum\",values:{none:{},width:{},height:{},both:{}},default:\"none\",requires:[\"icon-image\",\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-text-fit-padding\":{type:\"array\",value:\"number\",length:4,default:[0,0,0,0],units:\"pixels\",requires:[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-image\":{type:\"resolvedImage\",tokens:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-rotate\":{type:\"number\",default:0,period:360,units:\"degrees\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-padding\":{type:\"number\",default:2,minimum:0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-keep-upright\":{type:\"boolean\",default:!1,requires:[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":[\"line\",\"line-center\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-offset\":{type:\"array\",value:\"number\",length:2,default:[0,0],requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-anchor\":{type:\"enum\",values:{center:{},left:{},right:{},top:{},bottom:{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},default:\"center\",requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-pitch-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-pitch-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotation-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-field\":{type:\"formatted\",default:\"\",tokens:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-font\":{type:\"array\",value:\"string\",default:[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-size\":{type:\"number\",default:16,minimum:0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-width\":{type:\"number\",default:10,minimum:0,units:\"ems\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-line-height\":{type:\"number\",default:1.2,units:\"ems\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-letter-spacing\":{type:\"number\",default:0,units:\"ems\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-justify\":{type:\"enum\",values:{auto:{},left:{},center:{},right:{}},default:\"center\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-radial-offset\":{type:\"number\",units:\"ems\",default:0,requires:[\"text-field\"],\"property-type\":\"data-driven\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]}},\"text-variable-anchor\":{type:\"array\",value:\"enum\",values:{center:{},left:{},right:{},top:{},bottom:{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},requires:[\"text-field\",{\"symbol-placement\":[\"point\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-anchor\":{type:\"enum\",values:{center:{},left:{},right:{},top:{},bottom:{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},default:\"center\",requires:[\"text-field\",{\"!\":\"text-variable-anchor\"}],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-angle\":{type:\"number\",default:45,units:\"degrees\",requires:[\"text-field\",{\"symbol-placement\":[\"line\",\"line-center\"]}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-writing-mode\":{type:\"array\",value:\"enum\",values:{horizontal:{},vertical:{}},requires:[\"text-field\",{\"symbol-placement\":[\"point\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotate\":{type:\"number\",default:0,period:360,units:\"degrees\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-padding\":{type:\"number\",default:2,minimum:0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-keep-upright\":{type:\"boolean\",default:!0,requires:[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":[\"line\",\"line-center\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-transform\":{type:\"enum\",values:{none:{},uppercase:{},lowercase:{}},default:\"none\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-offset\":{type:\"array\",value:\"number\",units:\"ems\",length:2,default:[0,0],requires:[\"text-field\",{\"!\":\"text-radial-offset\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-allow-overlap\":{type:\"boolean\",default:!1,requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-ignore-placement\":{type:\"boolean\",default:!1,requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-optional\":{type:\"boolean\",default:!1,requires:[\"text-field\",\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_raster:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_hillshade:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},filter:{type:\"array\",value:\"*\"},filter_operator:{type:\"enum\",values:{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},in:{},\"!in\":{},all:{},any:{},none:{},has:{},\"!has\":{},within:{}}},geometry_type:{type:\"enum\",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:\"expression\"},stops:{type:\"array\",value:\"function_stop\"},base:{type:\"number\",default:1,minimum:0},property:{type:\"string\",default:\"$zoom\"},type:{type:\"enum\",values:{identity:{},exponential:{},interval:{},categorical:{}},default:\"exponential\"},colorSpace:{type:\"enum\",values:{rgb:{},lab:{},hcl:{}},default:\"rgb\"},default:{type:\"*\",required:!1}},function_stop:{type:\"array\",minimum:0,maximum:24,value:[\"number\",\"color\"],length:2},expression:{type:\"array\",value:\"*\",minimum:1},expression_name:{type:\"enum\",values:{let:{group:\"Variable binding\"},var:{group:\"Variable binding\"},literal:{group:\"Types\"},array:{group:\"Types\"},at:{group:\"Lookup\"},in:{group:\"Lookup\"},\"index-of\":{group:\"Lookup\"},slice:{group:\"Lookup\"},case:{group:\"Decision\"},match:{group:\"Decision\"},coalesce:{group:\"Decision\"},step:{group:\"Ramps, scales, curves\"},interpolate:{group:\"Ramps, scales, curves\"},\"interpolate-hcl\":{group:\"Ramps, scales, curves\"},\"interpolate-lab\":{group:\"Ramps, scales, curves\"},ln2:{group:\"Math\"},pi:{group:\"Math\"},e:{group:\"Math\"},typeof:{group:\"Types\"},string:{group:\"Types\"},number:{group:\"Types\"},boolean:{group:\"Types\"},object:{group:\"Types\"},collator:{group:\"Types\"},format:{group:\"Types\"},image:{group:\"Types\"},\"number-format\":{group:\"Types\"},\"to-string\":{group:\"Types\"},\"to-number\":{group:\"Types\"},\"to-boolean\":{group:\"Types\"},\"to-rgba\":{group:\"Color\"},\"to-color\":{group:\"Types\"},rgb:{group:\"Color\"},rgba:{group:\"Color\"},get:{group:\"Lookup\"},has:{group:\"Lookup\"},length:{group:\"Lookup\"},properties:{group:\"Feature data\"},\"feature-state\":{group:\"Feature data\"},\"geometry-type\":{group:\"Feature data\"},id:{group:\"Feature data\"},zoom:{group:\"Zoom\"},\"heatmap-density\":{group:\"Heatmap\"},\"line-progress\":{group:\"Feature data\"},accumulated:{group:\"Feature data\"},\"+\":{group:\"Math\"},\"*\":{group:\"Math\"},\"-\":{group:\"Math\"},\"/\":{group:\"Math\"},\"%\":{group:\"Math\"},\"^\":{group:\"Math\"},sqrt:{group:\"Math\"},log10:{group:\"Math\"},ln:{group:\"Math\"},log2:{group:\"Math\"},sin:{group:\"Math\"},cos:{group:\"Math\"},tan:{group:\"Math\"},asin:{group:\"Math\"},acos:{group:\"Math\"},atan:{group:\"Math\"},min:{group:\"Math\"},max:{group:\"Math\"},round:{group:\"Math\"},abs:{group:\"Math\"},ceil:{group:\"Math\"},floor:{group:\"Math\"},distance:{group:\"Math\"},\"==\":{group:\"Decision\"},\"!=\":{group:\"Decision\"},\">\":{group:\"Decision\"},\"<\":{group:\"Decision\"},\">=\":{group:\"Decision\"},\"<=\":{group:\"Decision\"},all:{group:\"Decision\"},any:{group:\"Decision\"},\"!\":{group:\"Decision\"},within:{group:\"Decision\"},\"is-supported-script\":{group:\"String\"},upcase:{group:\"String\"},downcase:{group:\"String\"},concat:{group:\"String\"},\"resolved-locale\":{group:\"String\"}}},light:{anchor:{type:\"enum\",default:\"viewport\",values:{map:{},viewport:{}},\"property-type\":\"data-constant\",transition:!1,expression:{interpolated:!1,parameters:[\"zoom\"]}},position:{type:\"array\",default:[1.15,210,30],length:3,value:\"number\",\"property-type\":\"data-constant\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]}},color:{type:\"color\",\"property-type\":\"data-constant\",default:\"#ffffff\",expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},intensity:{type:\"number\",\"property-type\":\"data-constant\",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0}},paint:[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_heatmap\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_hillshade\",\"paint_background\"],paint_fill:{\"fill-antialias\":{type:\"boolean\",default:!0,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"fill-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-outline-color\":{type:\"color\",transition:!0,requires:[{\"!\":\"fill-pattern\"},{\"fill-antialias\":!0}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"fill-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"cross-faded-data-driven\"}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"fill-extrusion-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"fill-extrusion-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"cross-faded-data-driven\"},\"fill-extrusion-height\":{type:\"number\",default:0,minimum:0,units:\"meters\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-base\":{type:\"number\",default:0,minimum:0,units:\"meters\",transition:!0,requires:[\"fill-extrusion-height\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-vertical-gradient\":{type:\"boolean\",default:!0,transition:!1,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_line:{\"line-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"line-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"line-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-width\":{type:\"number\",default:1,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-gap-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-offset\":{type:\"number\",default:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-blur\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-dasharray\":{type:\"array\",value:\"number\",minimum:0,transition:!0,units:\"line widths\",requires:[{\"!\":\"line-pattern\"}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"cross-faded\"},\"line-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"cross-faded-data-driven\"},\"line-gradient\":{type:\"color\",transition:!1,requires:[{\"!\":\"line-dasharray\"},{\"!\":\"line-pattern\"},{source:\"geojson\",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:[\"line-progress\"]},\"property-type\":\"color-ramp\"}},paint_circle:{\"circle-radius\":{type:\"number\",default:5,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-blur\":{type:\"number\",default:0,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"circle-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-scale\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-alignment\":{type:\"enum\",values:{map:{},viewport:{}},default:\"viewport\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-stroke-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-stroke-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-stroke-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"}},paint_heatmap:{\"heatmap-radius\":{type:\"number\",default:30,minimum:1,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"heatmap-weight\":{type:\"number\",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"heatmap-intensity\":{type:\"number\",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"heatmap-color\":{type:\"color\",default:[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,\"rgba(0, 0, 255, 0)\",.1,\"royalblue\",.3,\"cyan\",.5,\"lime\",.7,\"yellow\",1,\"red\"],transition:!1,expression:{interpolated:!0,parameters:[\"heatmap-density\"]},\"property-type\":\"color-ramp\"},\"heatmap-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_symbol:{\"icon-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-color\":{type:\"color\",default:\"rgba(0, 0, 0, 0)\",transition:!0,requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-blur\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"icon-image\",\"icon-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-color\":{type:\"color\",default:\"#000000\",transition:!0,overridable:!0,requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-color\":{type:\"color\",default:\"rgba(0, 0, 0, 0)\",transition:!0,requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-blur\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"text-field\",\"text-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_raster:{\"raster-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-hue-rotate\":{type:\"number\",default:0,period:360,transition:!0,units:\"degrees\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-min\":{type:\"number\",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-max\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-saturation\":{type:\"number\",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-contrast\":{type:\"number\",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-resampling\":{type:\"enum\",values:{linear:{},nearest:{}},default:\"linear\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-fade-duration\":{type:\"number\",default:300,minimum:0,transition:!1,units:\"milliseconds\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_hillshade:{\"hillshade-illumination-direction\":{type:\"number\",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-illumination-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"viewport\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-exaggeration\":{type:\"number\",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-shadow-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-highlight-color\":{type:\"color\",default:\"#FFFFFF\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-accent-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_background:{\"background-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"background-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"cross-faded\"},\"background-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},transition:{duration:{type:\"number\",default:300,minimum:0,units:\"milliseconds\"},delay:{type:\"number\",default:0,minimum:0,units:\"milliseconds\"}},\"property-type\":{\"data-driven\":{type:\"property-type\"},\"cross-faded\":{type:\"property-type\"},\"cross-faded-data-driven\":{type:\"property-type\"},\"color-ramp\":{type:\"property-type\"},\"data-constant\":{type:\"property-type\"},constant:{type:\"property-type\"}},promoteId:{\"*\":{type:\"string\"}}},St=function(t,e,r,n){this.message=(t?t+\": \":\"\")+r,n&&(this.identifier=n),null!=e&&e.__line__&&(this.line=e.__line__)};function Et(t){var e=t.value;return e?[new St(t.key,e,\"constants have been deprecated as of v8\")]:[]}function Ct(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,a=e;n<a.length;n+=1){var i=a[n];for(var o in i)t[o]=i[o]}return t}function Lt(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}function Pt(t){if(Array.isArray(t))return t.map(Pt);if(t instanceof Object&&!(t instanceof Number||t instanceof String||t instanceof Boolean)){var e={};for(var r in t)e[r]=Pt(t[r]);return e}return Lt(t)}var It=function(t){function e(e,r){t.call(this,r),this.message=r,this.key=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(Error),zt=function(t,e){void 0===e&&(e=[]),this.parent=t,this.bindings={};for(var r=0,n=e;r<n.length;r+=1){var a=n[r];this.bindings[a[0]]=a[1]}};zt.prototype.concat=function(t){return new zt(this,t)},zt.prototype.get=function(t){if(this.bindings[t])return this.bindings[t];if(this.parent)return this.parent.get(t);throw new Error(t+\" not found in scope.\")},zt.prototype.has=function(t){return!!this.bindings[t]||!!this.parent&&this.parent.has(t)};var Ot={kind:\"null\"},Dt={kind:\"number\"},Rt={kind:\"string\"},Ft={kind:\"boolean\"},Bt={kind:\"color\"},Nt={kind:\"object\"},jt={kind:\"value\"},Ut={kind:\"collator\"},Vt={kind:\"formatted\"},qt={kind:\"resolvedImage\"};function Ht(t,e){return{kind:\"array\",itemType:t,N:e}}function Gt(t){if(\"array\"===t.kind){var e=Gt(t.itemType);return\"number\"==typeof t.N?\"array<\"+e+\", \"+t.N+\">\":\"value\"===t.itemType.kind?\"array\":\"array<\"+e+\">\"}return t.kind}var Yt=[Ot,Dt,Rt,Ft,Bt,Vt,Nt,Ht(jt),qt];function Wt(t,e){if(\"error\"===e.kind)return null;if(\"array\"===t.kind){if(\"array\"===e.kind&&(0===e.N&&\"value\"===e.itemType.kind||!Wt(t.itemType,e.itemType))&&(\"number\"!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if(\"value\"===t.kind)for(var r=0,n=Yt;r<n.length;r+=1)if(!Wt(n[r],e))return null}return\"Expected \"+Gt(t)+\" but found \"+Gt(e)+\" instead.\"}function Zt(t,e){return e.some((function(e){return e.kind===t.kind}))}function Xt(t,e){return e.some((function(e){return\"null\"===e?null===t:\"array\"===e?Array.isArray(t):\"object\"===e?t&&!Array.isArray(t)&&\"object\"==typeof t:e===typeof t}))}var Jt=e((function(t,e){var r={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function n(t){return(t=Math.round(t))<0?0:t>255?255:t}function a(t){return n(\"%\"===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function i(t){return(e=\"%\"===t[t.length-1]?parseFloat(t)/100:parseFloat(t))<0?0:e>1?1:e;var e}function o(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}try{e.parseCSSColor=function(t){var e,s=t.replace(/ /g,\"\").toLowerCase();if(s in r)return r[s].slice();if(\"#\"===s[0])return 4===s.length?(e=parseInt(s.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===s.length&&(e=parseInt(s.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=s.indexOf(\"(\"),c=s.indexOf(\")\");if(-1!==l&&c+1===s.length){var u=s.substr(0,l),h=s.substr(l+1,c-(l+1)).split(\",\"),f=1;switch(u){case\"rgba\":if(4!==h.length)return null;f=i(h.pop());case\"rgb\":return 3!==h.length?null:[a(h[0]),a(h[1]),a(h[2]),f];case\"hsla\":if(4!==h.length)return null;f=i(h.pop());case\"hsl\":if(3!==h.length)return null;var p=(parseFloat(h[0])%360+360)%360/360,d=i(h[1]),g=i(h[2]),m=g<=.5?g*(d+1):g+d-g*d,v=2*g-m;return[n(255*o(v,m,p+1/3)),n(255*o(v,m,p)),n(255*o(v,m,p-1/3)),f];default:return null}}return null}}catch(t){}})).parseCSSColor,Kt=function(t,e,r,n){void 0===n&&(n=1),this.r=t,this.g=e,this.b=r,this.a=n};Kt.parse=function(t){if(t){if(t instanceof Kt)return t;if(\"string\"==typeof t){var e=Jt(t);if(e)return new Kt(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},Kt.prototype.toString=function(){var t=this.toArray(),e=t[1],r=t[2],n=t[3];return\"rgba(\"+Math.round(t[0])+\",\"+Math.round(e)+\",\"+Math.round(r)+\",\"+n+\")\"},Kt.prototype.toArray=function(){var t=this.a;return 0===t?[0,0,0,0]:[255*this.r/t,255*this.g/t,255*this.b/t,t]},Kt.black=new Kt(0,0,0,1),Kt.white=new Kt(1,1,1,1),Kt.transparent=new Kt(0,0,0,0),Kt.red=new Kt(1,0,0,1);var Qt=function(t,e,r){this.sensitivity=t?e?\"variant\":\"case\":e?\"accent\":\"base\",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:\"search\"})};Qt.prototype.compare=function(t,e){return this.collator.compare(t,e)},Qt.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var $t=function(t,e,r,n,a){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=a},te=function(t){this.sections=t};te.fromString=function(t){return new te([new $t(t,null,null,null,null)])},te.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(t){return 0!==t.text.length||t.image&&0!==t.image.name.length}))},te.factory=function(t){return t instanceof te?t:te.fromString(t)},te.prototype.toString=function(){return 0===this.sections.length?\"\":this.sections.map((function(t){return t.text})).join(\"\")},te.prototype.serialize=function(){for(var t=[\"format\"],e=0,r=this.sections;e<r.length;e+=1){var n=r[e];if(n.image)t.push([\"image\",n.image.name]);else{t.push(n.text);var a={};n.fontStack&&(a[\"text-font\"]=[\"literal\",n.fontStack.split(\",\")]),n.scale&&(a[\"font-scale\"]=n.scale),n.textColor&&(a[\"text-color\"]=[\"rgba\"].concat(n.textColor.toArray())),t.push(a)}}return t};var ee=function(t){this.name=t.name,this.available=t.available};function re(t,e,r,n){return\"number\"==typeof t&&t>=0&&t<=255&&\"number\"==typeof e&&e>=0&&e<=255&&\"number\"==typeof r&&r>=0&&r<=255?void 0===n||\"number\"==typeof n&&n>=0&&n<=1?null:\"Invalid rgba value [\"+[t,e,r,n].join(\", \")+\"]: 'a' must be between 0 and 1.\":\"Invalid rgba value [\"+(\"number\"==typeof n?[t,e,r,n]:[t,e,r]).join(\", \")+\"]: 'r', 'g', and 'b' must be between 0 and 255.\"}function ne(t){if(null===t)return!0;if(\"string\"==typeof t)return!0;if(\"boolean\"==typeof t)return!0;if(\"number\"==typeof t)return!0;if(t instanceof Kt)return!0;if(t instanceof Qt)return!0;if(t instanceof te)return!0;if(t instanceof ee)return!0;if(Array.isArray(t)){for(var e=0,r=t;e<r.length;e+=1)if(!ne(r[e]))return!1;return!0}if(\"object\"==typeof t){for(var n in t)if(!ne(t[n]))return!1;return!0}return!1}function ae(t){if(null===t)return Ot;if(\"string\"==typeof t)return Rt;if(\"boolean\"==typeof t)return Ft;if(\"number\"==typeof t)return Dt;if(t instanceof Kt)return Bt;if(t instanceof Qt)return Ut;if(t instanceof te)return Vt;if(t instanceof ee)return qt;if(Array.isArray(t)){for(var e,r=t.length,n=0,a=t;n<a.length;n+=1){var i=ae(a[n]);if(e){if(e===i)continue;e=jt;break}e=i}return Ht(e||jt,r)}return Nt}function ie(t){var e=typeof t;return null===t?\"\":\"string\"===e||\"number\"===e||\"boolean\"===e?String(t):t instanceof Kt||t instanceof te||t instanceof ee?t.toString():JSON.stringify(t)}ee.prototype.toString=function(){return this.name},ee.fromString=function(t){return t?new ee({name:t,available:!1}):null},ee.prototype.serialize=function(){return[\"image\",this.name]};var oe=function(t,e){this.type=t,this.value=e};oe.parse=function(t,e){if(2!==t.length)return e.error(\"'literal' expression requires exactly one argument, but found \"+(t.length-1)+\" instead.\");if(!ne(t[1]))return e.error(\"invalid value\");var r=t[1],n=ae(r),a=e.expectedType;return\"array\"!==n.kind||0!==n.N||!a||\"array\"!==a.kind||\"number\"==typeof a.N&&0!==a.N||(n=a),new oe(n,r)},oe.prototype.evaluate=function(){return this.value},oe.prototype.eachChild=function(){},oe.prototype.outputDefined=function(){return!0},oe.prototype.serialize=function(){return\"array\"===this.type.kind||\"object\"===this.type.kind?[\"literal\",this.value]:this.value instanceof Kt?[\"rgba\"].concat(this.value.toArray()):this.value instanceof te?this.value.serialize():this.value};var se=function(t){this.name=\"ExpressionEvaluationError\",this.message=t};se.prototype.toJSON=function(){return this.message};var le={string:Rt,number:Dt,boolean:Ft,object:Nt},ce=function(t,e){this.type=t,this.args=e};ce.parse=function(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");var r,n=1,a=t[0];if(\"array\"===a){var i,o;if(t.length>2){var s=t[1];if(\"string\"!=typeof s||!(s in le)||\"object\"===s)return e.error('The item type argument of \"array\" must be one of string, number, boolean',1);i=le[s],n++}else i=jt;if(t.length>3){if(null!==t[2]&&(\"number\"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to \"array\" must be a positive integer literal',2);o=t[2],n++}r=Ht(i,o)}else r=le[a];for(var l=[];n<t.length;n++){var c=e.parse(t[n],n,jt);if(!c)return null;l.push(c)}return new ce(r,l)},ce.prototype.evaluate=function(t){for(var e=0;e<this.args.length;e++){var r=this.args[e].evaluate(t);if(!Wt(this.type,ae(r)))return r;if(e===this.args.length-1)throw new se(\"Expected value to be of type \"+Gt(this.type)+\", but found \"+Gt(ae(r))+\" instead.\")}return null},ce.prototype.eachChild=function(t){this.args.forEach(t)},ce.prototype.outputDefined=function(){return this.args.every((function(t){return t.outputDefined()}))},ce.prototype.serialize=function(){var t=this.type,e=[t.kind];if(\"array\"===t.kind){var r=t.itemType;if(\"string\"===r.kind||\"number\"===r.kind||\"boolean\"===r.kind){e.push(r.kind);var n=t.N;(\"number\"==typeof n||this.args.length>1)&&e.push(n)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var ue=function(t){this.type=Vt,this.sections=t};ue.parse=function(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");var r=t[1];if(!Array.isArray(r)&&\"object\"==typeof r)return e.error(\"First argument must be an image or text section.\");for(var n=[],a=!1,i=1;i<=t.length-1;++i){var o=t[i];if(a&&\"object\"==typeof o&&!Array.isArray(o)){a=!1;var s=null;if(o[\"font-scale\"]&&!(s=e.parse(o[\"font-scale\"],1,Dt)))return null;var l=null;if(o[\"text-font\"]&&!(l=e.parse(o[\"text-font\"],1,Ht(Rt))))return null;var c=null;if(o[\"text-color\"]&&!(c=e.parse(o[\"text-color\"],1,Bt)))return null;var u=n[n.length-1];u.scale=s,u.font=l,u.textColor=c}else{var h=e.parse(t[i],1,jt);if(!h)return null;var f=h.type.kind;if(\"string\"!==f&&\"value\"!==f&&\"null\"!==f&&\"resolvedImage\"!==f)return e.error(\"Formatted text type must be 'string', 'value', 'image' or 'null'.\");a=!0,n.push({content:h,scale:null,font:null,textColor:null})}}return new ue(n)},ue.prototype.evaluate=function(t){return new te(this.sections.map((function(e){var r=e.content.evaluate(t);return ae(r)===qt?new $t(\"\",r,null,null,null):new $t(ie(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(\",\"):null,e.textColor?e.textColor.evaluate(t):null)})))},ue.prototype.eachChild=function(t){for(var e=0,r=this.sections;e<r.length;e+=1){var n=r[e];t(n.content),n.scale&&t(n.scale),n.font&&t(n.font),n.textColor&&t(n.textColor)}},ue.prototype.outputDefined=function(){return!1},ue.prototype.serialize=function(){for(var t=[\"format\"],e=0,r=this.sections;e<r.length;e+=1){var n=r[e];t.push(n.content.serialize());var a={};n.scale&&(a[\"font-scale\"]=n.scale.serialize()),n.font&&(a[\"text-font\"]=n.font.serialize()),n.textColor&&(a[\"text-color\"]=n.textColor.serialize()),t.push(a)}return t};var he=function(t){this.type=qt,this.input=t};he.parse=function(t,e){if(2!==t.length)return e.error(\"Expected two arguments.\");var r=e.parse(t[1],1,Rt);return r?new he(r):e.error(\"No image name provided.\")},he.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=ee.fromString(e);return r&&t.availableImages&&(r.available=t.availableImages.indexOf(e)>-1),r},he.prototype.eachChild=function(t){t(this.input)},he.prototype.outputDefined=function(){return!1},he.prototype.serialize=function(){return[\"image\",this.input.serialize()]};var fe={\"to-boolean\":Ft,\"to-color\":Bt,\"to-number\":Dt,\"to-string\":Rt},pe=function(t,e){this.type=t,this.args=e};pe.parse=function(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");var r=t[0];if((\"to-boolean\"===r||\"to-string\"===r)&&2!==t.length)return e.error(\"Expected one argument.\");for(var n=fe[r],a=[],i=1;i<t.length;i++){var o=e.parse(t[i],i,jt);if(!o)return null;a.push(o)}return new pe(n,a)},pe.prototype.evaluate=function(t){if(\"boolean\"===this.type.kind)return Boolean(this.args[0].evaluate(t));if(\"color\"===this.type.kind){for(var e,r,n=0,a=this.args;n<a.length;n+=1){if(r=null,(e=a[n].evaluate(t))instanceof Kt)return e;if(\"string\"==typeof e){var i=t.parseColor(e);if(i)return i}else if(Array.isArray(e)&&!(r=e.length<3||e.length>4?\"Invalid rbga value \"+JSON.stringify(e)+\": expected an array containing either three or four numeric values.\":re(e[0],e[1],e[2],e[3])))return new Kt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new se(r||\"Could not parse color from value '\"+(\"string\"==typeof e?e:String(JSON.stringify(e)))+\"'\")}if(\"number\"===this.type.kind){for(var o=null,s=0,l=this.args;s<l.length;s+=1){if(null===(o=l[s].evaluate(t)))return 0;var c=Number(o);if(!isNaN(c))return c}throw new se(\"Could not convert \"+JSON.stringify(o)+\" to number.\")}return\"formatted\"===this.type.kind?te.fromString(ie(this.args[0].evaluate(t))):\"resolvedImage\"===this.type.kind?ee.fromString(ie(this.args[0].evaluate(t))):ie(this.args[0].evaluate(t))},pe.prototype.eachChild=function(t){this.args.forEach(t)},pe.prototype.outputDefined=function(){return this.args.every((function(t){return t.outputDefined()}))},pe.prototype.serialize=function(){if(\"formatted\"===this.type.kind)return new ue([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(\"resolvedImage\"===this.type.kind)return new he(this.args[0]).serialize();var t=[\"to-\"+this.type.kind];return this.eachChild((function(e){t.push(e.serialize())})),t};var de=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],ge=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};ge.prototype.id=function(){return this.feature&&\"id\"in this.feature?this.feature.id:null},ge.prototype.geometryType=function(){return this.feature?\"number\"==typeof this.feature.type?de[this.feature.type]:this.feature.type:null},ge.prototype.geometry=function(){return this.feature&&\"geometry\"in this.feature?this.feature.geometry:null},ge.prototype.canonicalID=function(){return this.canonical},ge.prototype.properties=function(){return this.feature&&this.feature.properties||{}},ge.prototype.parseColor=function(t){var e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=Kt.parse(t)),e};var me=function(t,e,r,n){this.name=t,this.type=e,this._evaluate=r,this.args=n};me.prototype.evaluate=function(t){return this._evaluate(t,this.args)},me.prototype.eachChild=function(t){this.args.forEach(t)},me.prototype.outputDefined=function(){return!1},me.prototype.serialize=function(){return[this.name].concat(this.args.map((function(t){return t.serialize()})))},me.parse=function(t,e){var r,n=t[0],a=me.definitions[n];if(!a)return e.error('Unknown expression \"'+n+'\". If you wanted a literal array, use [\"literal\", [...]].',0);for(var i=Array.isArray(a)?a[0]:a.type,o=Array.isArray(a)?[[a[1],a[2]]]:a.overloads,s=o.filter((function(e){var r=e[0];return!Array.isArray(r)||r.length===t.length-1})),l=null,c=0,u=s;c<u.length;c+=1){var h=u[c],f=h[0],p=h[1];l=new Be(e.registry,e.path,null,e.scope);for(var d=[],g=!1,m=1;m<t.length;m++){var v=t[m],y=Array.isArray(f)?f[m-1]:f.type,x=l.parse(v,1+d.length,y);if(!x){g=!0;break}d.push(x)}if(!g)if(Array.isArray(f)&&f.length!==d.length)l.error(\"Expected \"+f.length+\" arguments, but found \"+d.length+\" instead.\");else{for(var b=0;b<d.length;b++){var _=Array.isArray(f)?f[b]:f.type,w=d[b];l.concat(b+1).checkSubtype(_,w.type)}if(0===l.errors.length)return new me(n,i,p,d)}}if(1===s.length)(r=e.errors).push.apply(r,l.errors);else{for(var T=(s.length?s:o).map((function(t){var e;return e=t[0],Array.isArray(e)?\"(\"+e.map(Gt).join(\", \")+\")\":\"(\"+Gt(e.type)+\"...)\"})).join(\" | \"),k=[],M=1;M<t.length;M++){var A=e.parse(t[M],1+k.length);if(!A)return null;k.push(Gt(A.type))}e.error(\"Expected arguments of type \"+T+\", but found (\"+k.join(\", \")+\") instead.\")}return null},me.register=function(t,e){for(var r in me.definitions=e,e)t[r]=me};var ve=function(t,e,r){this.type=Ut,this.locale=r,this.caseSensitive=t,this.diacriticSensitive=e};function ye(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[0]),t[3]=Math.max(t[3],e[1])}function xe(t,e){return!(t[0]<=e[0]||t[2]>=e[2]||t[1]<=e[1]||t[3]>=e[3])}function be(t,e){var r=(180+t[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,a=Math.pow(2,e.z);return[Math.round(r*a*8192),Math.round(n*a*8192)]}function _e(t,e,r){return e[1]>t[1]!=r[1]>t[1]&&t[0]<(r[0]-e[0])*(t[1]-e[1])/(r[1]-e[1])+e[0]}function we(t,e){for(var r,n,a,i,o,s,l,c=!1,u=0,h=e.length;u<h;u++)for(var f=e[u],p=0,d=f.length;p<d-1;p++){if((i=(r=t)[0]-(n=f[p])[0])*(l=r[1]-(a=f[p+1])[1])-(s=r[0]-a[0])*(o=r[1]-n[1])==0&&i*s<=0&&o*l<=0)return!1;_e(t,f[p],f[p+1])&&(c=!c)}return c}function Te(t,e){for(var r=0;r<e.length;r++)if(we(t,e[r]))return!0;return!1}function ke(t,e,r,n){var a=n[0]-r[0],i=n[1]-r[1],o=(t[0]-r[0])*i-a*(t[1]-r[1]),s=(e[0]-r[0])*i-a*(e[1]-r[1]);return o>0&&s<0||o<0&&s>0}function Me(t,e,r){for(var n=0,a=r;n<a.length;n+=1)for(var i=a[n],o=0;o<i.length-1;++o)if(0!=(h=[(u=i[o+1])[0]-(c=i[o])[0],u[1]-c[1]])[0]*(f=[(l=e)[0]-(s=t)[0],l[1]-s[1]])[1]-h[1]*f[0]&&ke(s,l,c,u)&&ke(c,u,s,l))return!0;var s,l,c,u,h,f;return!1}function Ae(t,e){for(var r=0;r<t.length;++r)if(!we(t[r],e))return!1;for(var n=0;n<t.length-1;++n)if(Me(t[n],t[n+1],e))return!1;return!0}function Se(t,e){for(var r=0;r<e.length;r++)if(Ae(t,e[r]))return!0;return!1}function Ee(t,e,r){for(var n=[],a=0;a<t.length;a++){for(var i=[],o=0;o<t[a].length;o++){var s=be(t[a][o],r);ye(e,s),i.push(s)}n.push(i)}return n}function Ce(t,e,r){for(var n=[],a=0;a<t.length;a++){var i=Ee(t[a],e,r);n.push(i)}return n}function Le(t,e,r,n){if(t[0]<r[0]||t[0]>r[2]){var a=.5*n,i=t[0]-r[0]>a?-n:r[0]-t[0]>a?n:0;0===i&&(i=t[0]-r[2]>a?-n:r[2]-t[0]>a?n:0),t[0]+=i}ye(e,t)}function Pe(t,e,r,n){for(var a=8192*Math.pow(2,n.z),i=[8192*n.x,8192*n.y],o=[],s=0,l=t;s<l.length;s+=1)for(var c=0,u=l[s];c<u.length;c+=1){var h=u[c],f=[h.x+i[0],h.y+i[1]];Le(f,e,r,a),o.push(f)}return o}function Ie(t,e,r,n){for(var a,i=8192*Math.pow(2,n.z),o=[8192*n.x,8192*n.y],s=[],l=0,c=t;l<c.length;l+=1){for(var u=[],h=0,f=c[l];h<f.length;h+=1){var p=f[h],d=[p.x+o[0],p.y+o[1]];ye(e,d),u.push(d)}s.push(u)}if(e[2]-e[0]<=i/2){(a=e)[0]=a[1]=1/0,a[2]=a[3]=-1/0;for(var g=0,m=s;g<m.length;g+=1)for(var v=0,y=m[g];v<y.length;v+=1)Le(y[v],e,r,i)}return s}ve.parse=function(t,e){if(2!==t.length)return e.error(\"Expected one argument.\");var r=t[1];if(\"object\"!=typeof r||Array.isArray(r))return e.error(\"Collator options argument must be an object.\");var n=e.parse(void 0!==r[\"case-sensitive\"]&&r[\"case-sensitive\"],1,Ft);if(!n)return null;var a=e.parse(void 0!==r[\"diacritic-sensitive\"]&&r[\"diacritic-sensitive\"],1,Ft);if(!a)return null;var i=null;return r.locale&&!(i=e.parse(r.locale,1,Rt))?null:new ve(n,a,i)},ve.prototype.evaluate=function(t){return new Qt(this.caseSensitive.evaluate(t),this.diacriticSensitive.evaluate(t),this.locale?this.locale.evaluate(t):null)},ve.prototype.eachChild=function(t){t(this.caseSensitive),t(this.diacriticSensitive),this.locale&&t(this.locale)},ve.prototype.outputDefined=function(){return!1},ve.prototype.serialize=function(){var t={};return t[\"case-sensitive\"]=this.caseSensitive.serialize(),t[\"diacritic-sensitive\"]=this.diacriticSensitive.serialize(),this.locale&&(t.locale=this.locale.serialize()),[\"collator\",t]};var ze=function(t,e){this.type=Ft,this.geojson=t,this.geometries=e};function Oe(t){if(t instanceof me){if(\"get\"===t.name&&1===t.args.length)return!1;if(\"feature-state\"===t.name)return!1;if(\"has\"===t.name&&1===t.args.length)return!1;if(\"properties\"===t.name||\"geometry-type\"===t.name||\"id\"===t.name)return!1;if(/^filter-/.test(t.name))return!1}if(t instanceof ze)return!1;var e=!0;return t.eachChild((function(t){e&&!Oe(t)&&(e=!1)})),e}function De(t){if(t instanceof me&&\"feature-state\"===t.name)return!1;var e=!0;return t.eachChild((function(t){e&&!De(t)&&(e=!1)})),e}function Re(t,e){if(t instanceof me&&e.indexOf(t.name)>=0)return!1;var r=!0;return t.eachChild((function(t){r&&!Re(t,e)&&(r=!1)})),r}ze.parse=function(t,e){if(2!==t.length)return e.error(\"'within' expression requires exactly one argument, but found \"+(t.length-1)+\" instead.\");if(ne(t[1])){var r=t[1];if(\"FeatureCollection\"===r.type)for(var n=0;n<r.features.length;++n){var a=r.features[n].geometry.type;if(\"Polygon\"===a||\"MultiPolygon\"===a)return new ze(r,r.features[n].geometry)}else if(\"Feature\"===r.type){var i=r.geometry.type;if(\"Polygon\"===i||\"MultiPolygon\"===i)return new ze(r,r.geometry)}else if(\"Polygon\"===r.type||\"MultiPolygon\"===r.type)return new ze(r,r)}return e.error(\"'within' expression requires valid geojson object that contains polygon geometry type.\")},ze.prototype.evaluate=function(t){if(null!=t.geometry()&&null!=t.canonicalID()){if(\"Point\"===t.geometryType())return function(t,e){var r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],a=t.canonicalID();if(\"Polygon\"===e.type){var i=Ee(e.coordinates,n,a),o=Pe(t.geometry(),r,n,a);if(!xe(r,n))return!1;for(var s=0,l=o;s<l.length;s+=1)if(!we(l[s],i))return!1}if(\"MultiPolygon\"===e.type){var c=Ce(e.coordinates,n,a),u=Pe(t.geometry(),r,n,a);if(!xe(r,n))return!1;for(var h=0,f=u;h<f.length;h+=1)if(!Te(f[h],c))return!1}return!0}(t,this.geometries);if(\"LineString\"===t.geometryType())return function(t,e){var r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],a=t.canonicalID();if(\"Polygon\"===e.type){var i=Ee(e.coordinates,n,a),o=Ie(t.geometry(),r,n,a);if(!xe(r,n))return!1;for(var s=0,l=o;s<l.length;s+=1)if(!Ae(l[s],i))return!1}if(\"MultiPolygon\"===e.type){var c=Ce(e.coordinates,n,a),u=Ie(t.geometry(),r,n,a);if(!xe(r,n))return!1;for(var h=0,f=u;h<f.length;h+=1)if(!Se(f[h],c))return!1}return!0}(t,this.geometries)}return!1},ze.prototype.eachChild=function(){},ze.prototype.outputDefined=function(){return!0},ze.prototype.serialize=function(){return[\"within\",this.geojson]};var Fe=function(t,e){this.type=e.type,this.name=t,this.boundExpression=e};Fe.parse=function(t,e){if(2!==t.length||\"string\"!=typeof t[1])return e.error(\"'var' expression requires exactly one string literal argument.\");var r=t[1];return e.scope.has(r)?new Fe(r,e.scope.get(r)):e.error('Unknown variable \"'+r+'\". Make sure \"'+r+'\" has been bound in an enclosing \"let\" expression before using it.',1)},Fe.prototype.evaluate=function(t){return this.boundExpression.evaluate(t)},Fe.prototype.eachChild=function(){},Fe.prototype.outputDefined=function(){return!1},Fe.prototype.serialize=function(){return[\"var\",this.name]};var Be=function(t,e,r,n,a){void 0===e&&(e=[]),void 0===n&&(n=new zt),void 0===a&&(a=[]),this.registry=t,this.path=e,this.key=e.map((function(t){return\"[\"+t+\"]\"})).join(\"\"),this.scope=n,this.errors=a,this.expectedType=r};function Ne(t,e){for(var r,n=t.length-1,a=0,i=n,o=0;a<=i;)if((r=t[o=Math.floor((a+i)/2)])<=e){if(o===n||e<t[o+1])return o;a=o+1}else{if(!(r>e))throw new se(\"Input is not a number.\");i=o-1}return 0}Be.prototype.parse=function(t,e,r,n,a){return void 0===a&&(a={}),e?this.concat(e,r,n)._parse(t,a):this._parse(t,a)},Be.prototype._parse=function(t,e){function r(t,e,r){return\"assert\"===r?new ce(e,[t]):\"coerce\"===r?new pe(e,[t]):t}if(null!==t&&\"string\"!=typeof t&&\"boolean\"!=typeof t&&\"number\"!=typeof t||(t=[\"literal\",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use [\"literal\", []].');var n=t[0];if(\"string\"!=typeof n)return this.error(\"Expression name must be a string, but found \"+typeof n+' instead. If you wanted a literal array, use [\"literal\", [...]].',0),null;var a=this.registry[n];if(a){var i=a.parse(t,this);if(!i)return null;if(this.expectedType){var o=this.expectedType,s=i.type;if(\"string\"!==o.kind&&\"number\"!==o.kind&&\"boolean\"!==o.kind&&\"object\"!==o.kind&&\"array\"!==o.kind||\"value\"!==s.kind)if(\"color\"!==o.kind&&\"formatted\"!==o.kind&&\"resolvedImage\"!==o.kind||\"value\"!==s.kind&&\"string\"!==s.kind){if(this.checkSubtype(o,s))return null}else i=r(i,o,e.typeAnnotation||\"coerce\");else i=r(i,o,e.typeAnnotation||\"assert\")}if(!(i instanceof oe)&&\"resolvedImage\"!==i.type.kind&&function t(e){if(e instanceof Fe)return t(e.boundExpression);if(e instanceof me&&\"error\"===e.name)return!1;if(e instanceof ve)return!1;if(e instanceof ze)return!1;var r=e instanceof pe||e instanceof ce,n=!0;return e.eachChild((function(e){n=r?n&&t(e):n&&e instanceof oe})),!!n&&Oe(e)&&Re(e,[\"zoom\",\"heatmap-density\",\"line-progress\",\"accumulated\",\"is-supported-script\"])}(i)){var l=new ge;try{i=new oe(i.type,i.evaluate(l))}catch(t){return this.error(t.message),null}}return i}return this.error('Unknown expression \"'+n+'\". If you wanted a literal array, use [\"literal\", [...]].',0)}return this.error(void 0===t?\"'undefined' value invalid. Use null instead.\":\"object\"==typeof t?'Bare objects invalid. Use [\"literal\", {...}] instead.':\"Expected an array, but found \"+typeof t+\" instead.\")},Be.prototype.concat=function(t,e,r){var n=\"number\"==typeof t?this.path.concat(t):this.path,a=r?this.scope.concat(r):this.scope;return new Be(this.registry,n,e||null,a,this.errors)},Be.prototype.error=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];var n=\"\"+this.key+e.map((function(t){return\"[\"+t+\"]\"})).join(\"\");this.errors.push(new It(n,t))},Be.prototype.checkSubtype=function(t,e){var r=Wt(t,e);return r&&this.error(r),r};var je=function(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var n=0,a=r;n<a.length;n+=1){var i=a[n],o=i[1];this.labels.push(i[0]),this.outputs.push(o)}};function Ue(t,e,r){return t*(1-r)+e*r}je.parse=function(t,e){if(t.length-1<4)return e.error(\"Expected at least 4 arguments, but found only \"+(t.length-1)+\".\");if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");var r=e.parse(t[1],1,Dt);if(!r)return null;var n=[],a=null;e.expectedType&&\"value\"!==e.expectedType.kind&&(a=e.expectedType);for(var i=1;i<t.length;i+=2){var o=1===i?-1/0:t[i],s=t[i+1],l=i,c=i+1;if(\"number\"!=typeof o)return e.error('Input/output pairs for \"step\" expressions must be defined using literal numeric values (not computed expressions) for the input values.',l);if(n.length&&n[n.length-1][0]>=o)return e.error('Input/output pairs for \"step\" expressions must be arranged with input values in strictly ascending order.',l);var u=e.parse(s,c,a);if(!u)return null;a=a||u.type,n.push([o,u])}return new je(a,r,n)},je.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var a=e.length;return n>=e[a-1]?r[a-1].evaluate(t):r[Ne(e,n)].evaluate(t)},je.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e<r.length;e+=1)t(r[e])},je.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))},je.prototype.serialize=function(){for(var t=[\"step\",this.input.serialize()],e=0;e<this.labels.length;e++)e>0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t};var Ve=Object.freeze({__proto__:null,number:Ue,color:function(t,e,r){return new Kt(Ue(t.r,e.r,r),Ue(t.g,e.g,r),Ue(t.b,e.b,r),Ue(t.a,e.a,r))},array:function(t,e,r){return t.map((function(t,n){return Ue(t,e[n],r)}))}}),qe=6/29*3*(6/29),He=Math.PI/180,Ge=180/Math.PI;function Ye(t){return t>.008856451679035631?Math.pow(t,1/3):t/qe+4/29}function We(t){return t>6/29?t*t*t:qe*(t-4/29)}function Ze(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Xe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Je(t){var e=Xe(t.r),r=Xe(t.g),n=Xe(t.b),a=Ye((.4124564*e+.3575761*r+.1804375*n)/.95047),i=Ye((.2126729*e+.7151522*r+.072175*n)/1);return{l:116*i-16,a:500*(a-i),b:200*(i-Ye((.0193339*e+.119192*r+.9503041*n)/1.08883)),alpha:t.a}}function Ke(t){var e=(t.l+16)/116,r=isNaN(t.a)?e:e+t.a/500,n=isNaN(t.b)?e:e-t.b/200;return e=1*We(e),r=.95047*We(r),n=1.08883*We(n),new Kt(Ze(3.2404542*r-1.5371385*e-.4985314*n),Ze(-.969266*r+1.8760108*e+.041556*n),Ze(.0556434*r-.2040259*e+1.0572252*n),t.alpha)}function Qe(t,e,r){var n=e-t;return t+r*(n>180||n<-180?n-360*Math.round(n/360):n)}var $e={forward:Je,reverse:Ke,interpolate:function(t,e,r){return{l:Ue(t.l,e.l,r),a:Ue(t.a,e.a,r),b:Ue(t.b,e.b,r),alpha:Ue(t.alpha,e.alpha,r)}}},tr={forward:function(t){var e=Je(t),r=e.l,n=e.a,a=e.b,i=Math.atan2(a,n)*Ge;return{h:i<0?i+360:i,c:Math.sqrt(n*n+a*a),l:r,alpha:t.a}},reverse:function(t){var e=t.h*He,r=t.c;return Ke({l:t.l,a:Math.cos(e)*r,b:Math.sin(e)*r,alpha:t.alpha})},interpolate:function(t,e,r){return{h:Qe(t.h,e.h,r),c:Ue(t.c,e.c,r),l:Ue(t.l,e.l,r),alpha:Ue(t.alpha,e.alpha,r)}}},er=Object.freeze({__proto__:null,lab:$e,hcl:tr}),rr=function(t,e,r,n,a){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var i=0,o=a;i<o.length;i+=1){var s=o[i],l=s[1];this.labels.push(s[0]),this.outputs.push(l)}};function nr(t,e,r,n){var a=n-r,i=t-r;return 0===a?0:1===e?i/a:(Math.pow(e,i)-1)/(Math.pow(e,a)-1)}rr.interpolationFactor=function(t,e,n,a){var i=0;if(\"exponential\"===t.name)i=nr(e,t.base,n,a);else if(\"linear\"===t.name)i=nr(e,1,n,a);else if(\"cubic-bezier\"===t.name){var o=t.controlPoints;i=new r(o[0],o[1],o[2],o[3]).solve(nr(e,1,n,a))}return i},rr.parse=function(t,e){var r=t[0],n=t[1],a=t[2],i=t.slice(3);if(!Array.isArray(n)||0===n.length)return e.error(\"Expected an interpolation type expression.\",1);if(\"linear\"===n[0])n={name:\"linear\"};else if(\"exponential\"===n[0]){var o=n[1];if(\"number\"!=typeof o)return e.error(\"Exponential interpolation requires a numeric base.\",1,1);n={name:\"exponential\",base:o}}else{if(\"cubic-bezier\"!==n[0])return e.error(\"Unknown interpolation type \"+String(n[0]),1,0);var s=n.slice(1);if(4!==s.length||s.some((function(t){return\"number\"!=typeof t||t<0||t>1})))return e.error(\"Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.\",1);n={name:\"cubic-bezier\",controlPoints:s}}if(t.length-1<4)return e.error(\"Expected at least 4 arguments, but found only \"+(t.length-1)+\".\");if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");if(!(a=e.parse(a,2,Dt)))return null;var l=[],c=null;\"interpolate-hcl\"===r||\"interpolate-lab\"===r?c=Bt:e.expectedType&&\"value\"!==e.expectedType.kind&&(c=e.expectedType);for(var u=0;u<i.length;u+=2){var h=i[u],f=i[u+1],p=u+3,d=u+4;if(\"number\"!=typeof h)return e.error('Input/output pairs for \"interpolate\" expressions must be defined using literal numeric values (not computed expressions) for the input values.',p);if(l.length&&l[l.length-1][0]>=h)return e.error('Input/output pairs for \"interpolate\" expressions must be arranged with input values in strictly ascending order.',p);var g=e.parse(f,d,c);if(!g)return null;c=c||g.type,l.push([h,g])}return\"number\"===c.kind||\"color\"===c.kind||\"array\"===c.kind&&\"number\"===c.itemType.kind&&\"number\"==typeof c.N?new rr(c,r,n,a,l):e.error(\"Type \"+Gt(c)+\" is not interpolatable.\")},rr.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var a=e.length;if(n>=e[a-1])return r[a-1].evaluate(t);var i=Ne(e,n),o=rr.interpolationFactor(this.interpolation,n,e[i],e[i+1]),s=r[i].evaluate(t),l=r[i+1].evaluate(t);return\"interpolate\"===this.operator?Ve[this.type.kind.toLowerCase()](s,l,o):\"interpolate-hcl\"===this.operator?tr.reverse(tr.interpolate(tr.forward(s),tr.forward(l),o)):$e.reverse($e.interpolate($e.forward(s),$e.forward(l),o))},rr.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e<r.length;e+=1)t(r[e])},rr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))},rr.prototype.serialize=function(){var t;t=\"linear\"===this.interpolation.name?[\"linear\"]:\"exponential\"===this.interpolation.name?1===this.interpolation.base?[\"linear\"]:[\"exponential\",this.interpolation.base]:[\"cubic-bezier\"].concat(this.interpolation.controlPoints);for(var e=[this.operator,t,this.input.serialize()],r=0;r<this.labels.length;r++)e.push(this.labels[r],this.outputs[r].serialize());return e};var ar=function(t,e){this.type=t,this.args=e};ar.parse=function(t,e){if(t.length<2)return e.error(\"Expectected at least one argument.\");var r=null,n=e.expectedType;n&&\"value\"!==n.kind&&(r=n);for(var a=[],i=0,o=t.slice(1);i<o.length;i+=1){var s=e.parse(o[i],1+a.length,r,void 0,{typeAnnotation:\"omit\"});if(!s)return null;r=r||s.type,a.push(s)}var l=n&&a.some((function(t){return Wt(n,t.type)}));return new ar(l?jt:r,a)},ar.prototype.evaluate=function(t){for(var e,r=null,n=0,a=0,i=this.args;a<i.length&&(n++,(r=i[a].evaluate(t))&&r instanceof ee&&!r.available&&(e||(e=r.name),r=null,n===this.args.length&&(r=e)),null===r);a+=1);return r},ar.prototype.eachChild=function(t){this.args.forEach(t)},ar.prototype.outputDefined=function(){return this.args.every((function(t){return t.outputDefined()}))},ar.prototype.serialize=function(){var t=[\"coalesce\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var ir=function(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e};ir.prototype.evaluate=function(t){return this.result.evaluate(t)},ir.prototype.eachChild=function(t){for(var e=0,r=this.bindings;e<r.length;e+=1)t(r[e][1]);t(this.result)},ir.parse=function(t,e){if(t.length<4)return e.error(\"Expected at least 3 arguments, but found \"+(t.length-1)+\" instead.\");for(var r=[],n=1;n<t.length-1;n+=2){var a=t[n];if(\"string\"!=typeof a)return e.error(\"Expected string, but found \"+typeof a+\" instead.\",n);if(/[^a-zA-Z0-9_]/.test(a))return e.error(\"Variable names must contain only alphanumeric characters or '_'.\",n);var i=e.parse(t[n+1],n+1);if(!i)return null;r.push([a,i])}var o=e.parse(t[t.length-1],t.length-1,e.expectedType,r);return o?new ir(r,o):null},ir.prototype.outputDefined=function(){return this.result.outputDefined()},ir.prototype.serialize=function(){for(var t=[\"let\"],e=0,r=this.bindings;e<r.length;e+=1){var n=r[e];t.push(n[0],n[1].serialize())}return t.push(this.result.serialize()),t};var or=function(t,e,r){this.type=t,this.index=e,this.input=r};or.parse=function(t,e){if(3!==t.length)return e.error(\"Expected 2 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,Dt),n=e.parse(t[2],2,Ht(e.expectedType||jt));return r&&n?new or(n.type.itemType,r,n):null},or.prototype.evaluate=function(t){var e=this.index.evaluate(t),r=this.input.evaluate(t);if(e<0)throw new se(\"Array index out of bounds: \"+e+\" < 0.\");if(e>=r.length)throw new se(\"Array index out of bounds: \"+e+\" > \"+(r.length-1)+\".\");if(e!==Math.floor(e))throw new se(\"Array index must be an integer, but found \"+e+\" instead.\");return r[e]},or.prototype.eachChild=function(t){t(this.index),t(this.input)},or.prototype.outputDefined=function(){return!1},or.prototype.serialize=function(){return[\"at\",this.index.serialize(),this.input.serialize()]};var sr=function(t,e){this.type=Ft,this.needle=t,this.haystack=e};sr.parse=function(t,e){if(3!==t.length)return e.error(\"Expected 2 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,jt),n=e.parse(t[2],2,jt);return r&&n?Zt(r.type,[Ft,Rt,Dt,Ot,jt])?new sr(r,n):e.error(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(r.type)+\" instead\"):null},sr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return!1;if(!Xt(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new se(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(ae(e))+\" instead.\");if(!Xt(r,[\"string\",\"array\"]))throw new se(\"Expected second argument to be of type array or string, but found \"+Gt(ae(r))+\" instead.\");return r.indexOf(e)>=0},sr.prototype.eachChild=function(t){t(this.needle),t(this.haystack)},sr.prototype.outputDefined=function(){return!0},sr.prototype.serialize=function(){return[\"in\",this.needle.serialize(),this.haystack.serialize()]};var lr=function(t,e,r){this.type=Dt,this.needle=t,this.haystack=e,this.fromIndex=r};lr.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error(\"Expected 3 or 4 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,jt),n=e.parse(t[2],2,jt);if(!r||!n)return null;if(!Zt(r.type,[Ft,Rt,Dt,Ot,jt]))return e.error(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(r.type)+\" instead\");if(4===t.length){var a=e.parse(t[3],3,Dt);return a?new lr(r,n,a):null}return new lr(r,n)},lr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!Xt(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new se(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(ae(e))+\" instead.\");if(!Xt(r,[\"string\",\"array\"]))throw new se(\"Expected second argument to be of type array or string, but found \"+Gt(ae(r))+\" instead.\");if(this.fromIndex){var n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)},lr.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},lr.prototype.outputDefined=function(){return!1},lr.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var t=this.fromIndex.serialize();return[\"index-of\",this.needle.serialize(),this.haystack.serialize(),t]}return[\"index-of\",this.needle.serialize(),this.haystack.serialize()]};var cr=function(t,e,r,n,a,i){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=a,this.otherwise=i};cr.parse=function(t,e){if(t.length<5)return e.error(\"Expected at least 4 arguments, but found only \"+(t.length-1)+\".\");if(t.length%2!=1)return e.error(\"Expected an even number of arguments.\");var r,n;e.expectedType&&\"value\"!==e.expectedType.kind&&(n=e.expectedType);for(var a={},i=[],o=2;o<t.length-1;o+=2){var s=t[o],l=t[o+1];Array.isArray(s)||(s=[s]);var c=e.concat(o);if(0===s.length)return c.error(\"Expected at least one branch label.\");for(var u=0,h=s;u<h.length;u+=1){var f=h[u];if(\"number\"!=typeof f&&\"string\"!=typeof f)return c.error(\"Branch labels must be numbers or strings.\");if(\"number\"==typeof f&&Math.abs(f)>Number.MAX_SAFE_INTEGER)return c.error(\"Branch labels must be integers no larger than \"+Number.MAX_SAFE_INTEGER+\".\");if(\"number\"==typeof f&&Math.floor(f)!==f)return c.error(\"Numeric branch labels must be integer values.\");if(r){if(c.checkSubtype(r,ae(f)))return null}else r=ae(f);if(void 0!==a[String(f)])return c.error(\"Branch labels must be unique.\");a[String(f)]=i.length}var p=e.parse(l,o,n);if(!p)return null;n=n||p.type,i.push(p)}var d=e.parse(t[1],1,jt);if(!d)return null;var g=e.parse(t[t.length-1],t.length-1,n);return g?\"value\"!==d.type.kind&&e.concat(1).checkSubtype(r,d.type)?null:new cr(r,n,d,a,i,g):null},cr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(ae(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)},cr.prototype.eachChild=function(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)},cr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))&&this.otherwise.outputDefined()},cr.prototype.serialize=function(){for(var t=this,e=[\"match\",this.input.serialize()],r=[],n={},a=0,i=Object.keys(this.cases).sort();a<i.length;a+=1){var o=i[a];void 0===(h=n[this.cases[o]])?(n[this.cases[o]]=r.length,r.push([this.cases[o],[o]])):r[h][1].push(o)}for(var s=function(e){return\"number\"===t.inputType.kind?Number(e):e},l=0,c=r;l<c.length;l+=1){var u=c[l],h=u[0],f=u[1];e.push(1===f.length?s(f[0]):f.map(s)),e.push(this.outputs[outputIndex$1].serialize())}return e.push(this.otherwise.serialize()),e};var ur=function(t,e,r){this.type=t,this.branches=e,this.otherwise=r};ur.parse=function(t,e){if(t.length<4)return e.error(\"Expected at least 3 arguments, but found only \"+(t.length-1)+\".\");if(t.length%2!=0)return e.error(\"Expected an odd number of arguments.\");var r;e.expectedType&&\"value\"!==e.expectedType.kind&&(r=e.expectedType);for(var n=[],a=1;a<t.length-1;a+=2){var i=e.parse(t[a],a,Ft);if(!i)return null;var o=e.parse(t[a+1],a+1,r);if(!o)return null;n.push([i,o]),r=r||o.type}var s=e.parse(t[t.length-1],t.length-1,r);return s?new ur(r,n,s):null},ur.prototype.evaluate=function(t){for(var e=0,r=this.branches;e<r.length;e+=1){var n=r[e],a=n[1];if(n[0].evaluate(t))return a.evaluate(t)}return this.otherwise.evaluate(t)},ur.prototype.eachChild=function(t){for(var e=0,r=this.branches;e<r.length;e+=1){var n=r[e],a=n[1];t(n[0]),t(a)}t(this.otherwise)},ur.prototype.outputDefined=function(){return this.branches.every((function(t){return t[1].outputDefined()}))&&this.otherwise.outputDefined()},ur.prototype.serialize=function(){var t=[\"case\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var hr=function(t,e,r,n){this.type=t,this.input=e,this.beginIndex=r,this.endIndex=n};function fr(t,e){return\"==\"===t||\"!=\"===t?\"boolean\"===e.kind||\"string\"===e.kind||\"number\"===e.kind||\"null\"===e.kind||\"value\"===e.kind:\"string\"===e.kind||\"number\"===e.kind||\"value\"===e.kind}function pr(t,e,r,n){return 0===n.compare(e,r)}function dr(t,e,r){var n=\"==\"!==t&&\"!=\"!==t;return function(){function a(t,e,r){this.type=Ft,this.lhs=t,this.rhs=e,this.collator=r,this.hasUntypedArgument=\"value\"===t.type.kind||\"value\"===e.type.kind}return a.parse=function(t,e){if(3!==t.length&&4!==t.length)return e.error(\"Expected two or three arguments.\");var r=t[0],i=e.parse(t[1],1,jt);if(!i)return null;if(!fr(r,i.type))return e.concat(1).error('\"'+r+\"\\\" comparisons are not supported for type '\"+Gt(i.type)+\"'.\");var o=e.parse(t[2],2,jt);if(!o)return null;if(!fr(r,o.type))return e.concat(2).error('\"'+r+\"\\\" comparisons are not supported for type '\"+Gt(o.type)+\"'.\");if(i.type.kind!==o.type.kind&&\"value\"!==i.type.kind&&\"value\"!==o.type.kind)return e.error(\"Cannot compare types '\"+Gt(i.type)+\"' and '\"+Gt(o.type)+\"'.\");n&&(\"value\"===i.type.kind&&\"value\"!==o.type.kind?i=new ce(o.type,[i]):\"value\"!==i.type.kind&&\"value\"===o.type.kind&&(o=new ce(i.type,[o])));var s=null;if(4===t.length){if(\"string\"!==i.type.kind&&\"string\"!==o.type.kind&&\"value\"!==i.type.kind&&\"value\"!==o.type.kind)return e.error(\"Cannot use collator to compare non-string types.\");if(!(s=e.parse(t[3],3,Ut)))return null}return new a(i,o,s)},a.prototype.evaluate=function(a){var i=this.lhs.evaluate(a),o=this.rhs.evaluate(a);if(n&&this.hasUntypedArgument){var s=ae(i),l=ae(o);if(s.kind!==l.kind||\"string\"!==s.kind&&\"number\"!==s.kind)throw new se('Expected arguments for \"'+t+'\" to be (string, string) or (number, number), but found ('+s.kind+\", \"+l.kind+\") instead.\")}if(this.collator&&!n&&this.hasUntypedArgument){var c=ae(i),u=ae(o);if(\"string\"!==c.kind||\"string\"!==u.kind)return e(a,i,o)}return this.collator?r(a,i,o,this.collator.evaluate(a)):e(a,i,o)},a.prototype.eachChild=function(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)},a.prototype.outputDefined=function(){return!0},a.prototype.serialize=function(){var e=[t];return this.eachChild((function(t){e.push(t.serialize())})),e},a}()}hr.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error(\"Expected 3 or 4 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,jt),n=e.parse(t[2],2,Dt);if(!r||!n)return null;if(!Zt(r.type,[Ht(jt),Rt,jt]))return e.error(\"Expected first argument to be of type array or string, but found \"+Gt(r.type)+\" instead\");if(4===t.length){var a=e.parse(t[3],3,Dt);return a?new hr(r.type,r,n,a):null}return new hr(r.type,r,n)},hr.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!Xt(e,[\"string\",\"array\"]))throw new se(\"Expected first argument to be of type array or string, but found \"+Gt(ae(e))+\" instead.\");if(this.endIndex){var n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice(r)},hr.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},hr.prototype.outputDefined=function(){return!1},hr.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var t=this.endIndex.serialize();return[\"slice\",this.input.serialize(),this.beginIndex.serialize(),t]}return[\"slice\",this.input.serialize(),this.beginIndex.serialize()]};var gr=dr(\"==\",(function(t,e,r){return e===r}),pr),mr=dr(\"!=\",(function(t,e,r){return e!==r}),(function(t,e,r,n){return!pr(0,e,r,n)})),vr=dr(\"<\",(function(t,e,r){return e<r}),(function(t,e,r,n){return n.compare(e,r)<0})),yr=dr(\">\",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),xr=dr(\"<=\",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),br=dr(\">=\",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0})),_r=function(t,e,r,n,a){this.type=Rt,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=a};_r.parse=function(t,e){if(3!==t.length)return e.error(\"Expected two arguments.\");var r=e.parse(t[1],1,Dt);if(!r)return null;var n=t[2];if(\"object\"!=typeof n||Array.isArray(n))return e.error(\"NumberFormat options argument must be an object.\");var a=null;if(n.locale&&!(a=e.parse(n.locale,1,Rt)))return null;var i=null;if(n.currency&&!(i=e.parse(n.currency,1,Rt)))return null;var o=null;if(n[\"min-fraction-digits\"]&&!(o=e.parse(n[\"min-fraction-digits\"],1,Dt)))return null;var s=null;return n[\"max-fraction-digits\"]&&!(s=e.parse(n[\"max-fraction-digits\"],1,Dt))?null:new _r(r,a,i,o,s)},_r.prototype.evaluate=function(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?\"currency\":\"decimal\",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))},_r.prototype.eachChild=function(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)},_r.prototype.outputDefined=function(){return!1},_r.prototype.serialize=function(){var t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.minFractionDigits&&(t[\"min-fraction-digits\"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t[\"max-fraction-digits\"]=this.maxFractionDigits.serialize()),[\"number-format\",this.number.serialize(),t]};var wr=function(t){this.type=Dt,this.input=t};wr.parse=function(t,e){if(2!==t.length)return e.error(\"Expected 1 argument, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1);return r?\"array\"!==r.type.kind&&\"string\"!==r.type.kind&&\"value\"!==r.type.kind?e.error(\"Expected argument of type string or array, but found \"+Gt(r.type)+\" instead.\"):new wr(r):null},wr.prototype.evaluate=function(t){var e=this.input.evaluate(t);if(\"string\"==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new se(\"Expected value to be of type string or array, but found \"+Gt(ae(e))+\" instead.\")},wr.prototype.eachChild=function(t){t(this.input)},wr.prototype.outputDefined=function(){return!1},wr.prototype.serialize=function(){var t=[\"length\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Tr={\"==\":gr,\"!=\":mr,\">\":yr,\"<\":vr,\">=\":br,\"<=\":xr,array:ce,at:or,boolean:ce,case:ur,coalesce:ar,collator:ve,format:ue,image:he,in:sr,\"index-of\":lr,interpolate:rr,\"interpolate-hcl\":rr,\"interpolate-lab\":rr,length:wr,let:ir,literal:oe,match:cr,number:ce,\"number-format\":_r,object:ce,slice:hr,step:je,string:ce,\"to-boolean\":pe,\"to-color\":pe,\"to-number\":pe,\"to-string\":pe,var:Fe,within:ze};function kr(t,e){var r=e[0],n=e[1],a=e[2],i=e[3];r=r.evaluate(t),n=n.evaluate(t),a=a.evaluate(t);var o=i?i.evaluate(t):1,s=re(r,n,a,o);if(s)throw new se(s);return new Kt(r/255*o,n/255*o,a/255*o,o)}function Mr(t,e){return t in e}function Ar(t,e){var r=e[t];return void 0===r?null:r}function Sr(t){return{type:t}}function Er(t){return{result:\"success\",value:t}}function Cr(t){return{result:\"error\",value:t}}function Lr(t){return\"data-driven\"===t[\"property-type\"]||\"cross-faded-data-driven\"===t[\"property-type\"]}function Pr(t){return!!t.expression&&t.expression.parameters.indexOf(\"zoom\")>-1}function Ir(t){return!!t.expression&&t.expression.interpolated}function zr(t){return t instanceof Number?\"number\":t instanceof String?\"string\":t instanceof Boolean?\"boolean\":Array.isArray(t)?\"array\":null===t?\"null\":typeof t}function Or(t){return\"object\"==typeof t&&null!==t&&!Array.isArray(t)}function Dr(t){return t}function Rr(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function Fr(t,e,r,n,a){return Rr(typeof r===a?n[r]:void 0,t.default,e.default)}function Br(t,e,r){if(\"number\"!==zr(r))return Rr(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];var a=Ne(t.stops.map((function(t){return t[0]})),r);return t.stops[a][1]}function Nr(t,e,r){var n=void 0!==t.base?t.base:1;if(\"number\"!==zr(r))return Rr(t.default,e.default);var a=t.stops.length;if(1===a)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[a-1][0])return t.stops[a-1][1];var i=Ne(t.stops.map((function(t){return t[0]})),r),o=function(t,e,r,n){var a=n-r,i=t-r;return 0===a?0:1===e?i/a:(Math.pow(e,i)-1)/(Math.pow(e,a)-1)}(r,n,t.stops[i][0],t.stops[i+1][0]),s=t.stops[i][1],l=t.stops[i+1][1],c=Ve[e.type]||Dr;if(t.colorSpace&&\"rgb\"!==t.colorSpace){var u=er[t.colorSpace];c=function(t,e){return u.reverse(u.interpolate(u.forward(t),u.forward(e),o))}}return\"function\"==typeof s.evaluate?{evaluate:function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r=s.evaluate.apply(void 0,t),n=l.evaluate.apply(void 0,t);if(void 0!==r&&void 0!==n)return c(r,n,o)}}:c(s,l,o)}function jr(t,e,r){return\"color\"===e.type?r=Kt.parse(r):\"formatted\"===e.type?r=te.fromString(r.toString()):\"resolvedImage\"===e.type?r=ee.fromString(r.toString()):zr(r)===e.type||\"enum\"===e.type&&e.values[r]||(r=void 0),Rr(r,t.default,e.default)}me.register(Tr,{error:[{kind:\"error\"},[Rt],function(t,e){throw new se(e[0].evaluate(t))}],typeof:[Rt,[jt],function(t,e){return Gt(ae(e[0].evaluate(t)))}],\"to-rgba\":[Ht(Dt,4),[Bt],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[Bt,[Dt,Dt,Dt],kr],rgba:[Bt,[Dt,Dt,Dt,Dt],kr],has:{type:Ft,overloads:[[[Rt],function(t,e){return Mr(e[0].evaluate(t),t.properties())}],[[Rt,Nt],function(t,e){var r=e[1];return Mr(e[0].evaluate(t),r.evaluate(t))}]]},get:{type:jt,overloads:[[[Rt],function(t,e){return Ar(e[0].evaluate(t),t.properties())}],[[Rt,Nt],function(t,e){var r=e[1];return Ar(e[0].evaluate(t),r.evaluate(t))}]]},\"feature-state\":[jt,[Rt],function(t,e){return Ar(e[0].evaluate(t),t.featureState||{})}],properties:[Nt,[],function(t){return t.properties()}],\"geometry-type\":[Rt,[],function(t){return t.geometryType()}],id:[jt,[],function(t){return t.id()}],zoom:[Dt,[],function(t){return t.globals.zoom}],\"heatmap-density\":[Dt,[],function(t){return t.globals.heatmapDensity||0}],\"line-progress\":[Dt,[],function(t){return t.globals.lineProgress||0}],accumulated:[jt,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],\"+\":[Dt,Sr(Dt),function(t,e){for(var r=0,n=0,a=e;n<a.length;n+=1)r+=a[n].evaluate(t);return r}],\"*\":[Dt,Sr(Dt),function(t,e){for(var r=1,n=0,a=e;n<a.length;n+=1)r*=a[n].evaluate(t);return r}],\"-\":{type:Dt,overloads:[[[Dt,Dt],function(t,e){var r=e[1];return e[0].evaluate(t)-r.evaluate(t)}],[[Dt],function(t,e){return-e[0].evaluate(t)}]]},\"/\":[Dt,[Dt,Dt],function(t,e){var r=e[1];return e[0].evaluate(t)/r.evaluate(t)}],\"%\":[Dt,[Dt,Dt],function(t,e){var r=e[1];return e[0].evaluate(t)%r.evaluate(t)}],ln2:[Dt,[],function(){return Math.LN2}],pi:[Dt,[],function(){return Math.PI}],e:[Dt,[],function(){return Math.E}],\"^\":[Dt,[Dt,Dt],function(t,e){var r=e[1];return Math.pow(e[0].evaluate(t),r.evaluate(t))}],sqrt:[Dt,[Dt],function(t,e){return Math.sqrt(e[0].evaluate(t))}],log10:[Dt,[Dt],function(t,e){return Math.log(e[0].evaluate(t))/Math.LN10}],ln:[Dt,[Dt],function(t,e){return Math.log(e[0].evaluate(t))}],log2:[Dt,[Dt],function(t,e){return Math.log(e[0].evaluate(t))/Math.LN2}],sin:[Dt,[Dt],function(t,e){return Math.sin(e[0].evaluate(t))}],cos:[Dt,[Dt],function(t,e){return Math.cos(e[0].evaluate(t))}],tan:[Dt,[Dt],function(t,e){return Math.tan(e[0].evaluate(t))}],asin:[Dt,[Dt],function(t,e){return Math.asin(e[0].evaluate(t))}],acos:[Dt,[Dt],function(t,e){return Math.acos(e[0].evaluate(t))}],atan:[Dt,[Dt],function(t,e){return Math.atan(e[0].evaluate(t))}],min:[Dt,Sr(Dt),function(t,e){return Math.min.apply(Math,e.map((function(e){return e.evaluate(t)})))}],max:[Dt,Sr(Dt),function(t,e){return Math.max.apply(Math,e.map((function(e){return e.evaluate(t)})))}],abs:[Dt,[Dt],function(t,e){return Math.abs(e[0].evaluate(t))}],round:[Dt,[Dt],function(t,e){var r=e[0].evaluate(t);return r<0?-Math.round(-r):Math.round(r)}],floor:[Dt,[Dt],function(t,e){return Math.floor(e[0].evaluate(t))}],ceil:[Dt,[Dt],function(t,e){return Math.ceil(e[0].evaluate(t))}],\"filter-==\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1];return t.properties()[r.value]===n.value}],\"filter-id-==\":[Ft,[jt],function(t,e){var r=e[0];return t.id()===r.value}],\"filter-type-==\":[Ft,[Rt],function(t,e){var r=e[0];return t.geometryType()===r.value}],\"filter-<\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a<i}],\"filter-id-<\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n<a}],\"filter->\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a>i}],\"filter-id->\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n>a}],\"filter-<=\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a<=i}],\"filter-id-<=\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n<=a}],\"filter->=\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a>=i}],\"filter-id->=\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n>=a}],\"filter-has\":[Ft,[jt],function(t,e){return e[0].value in t.properties()}],\"filter-has-id\":[Ft,[],function(t){return null!==t.id()&&void 0!==t.id()}],\"filter-type-in\":[Ft,[Ht(Rt)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],\"filter-id-in\":[Ft,[Ht(jt)],function(t,e){return e[0].value.indexOf(t.id())>=0}],\"filter-in-small\":[Ft,[Rt,Ht(jt)],function(t,e){var r=e[0];return e[1].value.indexOf(t.properties()[r.value])>=0}],\"filter-in-large\":[Ft,[Rt,Ht(jt)],function(t,e){var r=e[0],n=e[1];return function(t,e,r,n){for(;r<=n;){var a=r+n>>1;if(e[a]===t)return!0;e[a]>t?n=a-1:r=a+1}return!1}(t.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:Ft,overloads:[[[Ft,Ft],function(t,e){var r=e[1];return e[0].evaluate(t)&&r.evaluate(t)}],[Sr(Ft),function(t,e){for(var r=0,n=e;r<n.length;r+=1)if(!n[r].evaluate(t))return!1;return!0}]]},any:{type:Ft,overloads:[[[Ft,Ft],function(t,e){var r=e[1];return e[0].evaluate(t)||r.evaluate(t)}],[Sr(Ft),function(t,e){for(var r=0,n=e;r<n.length;r+=1)if(n[r].evaluate(t))return!0;return!1}]]},\"!\":[Ft,[Ft],function(t,e){return!e[0].evaluate(t)}],\"is-supported-script\":[Ft,[Rt],function(t,e){var r=t.globals&&t.globals.isSupportedScript;return!r||r(e[0].evaluate(t))}],upcase:[Rt,[Rt],function(t,e){return e[0].evaluate(t).toUpperCase()}],downcase:[Rt,[Rt],function(t,e){return e[0].evaluate(t).toLowerCase()}],concat:[Rt,Sr(jt),function(t,e){return e.map((function(e){return ie(e.evaluate(t))})).join(\"\")}],\"resolved-locale\":[Rt,[Ut],function(t,e){return e[0].evaluate(t).resolvedLocale()}]});var Ur=function(t,e){this.expression=t,this._warningHistory={},this._evaluator=new ge,this._defaultValue=e?function(t){return\"color\"===t.type&&Or(t.default)?new Kt(0,0,0,0):\"color\"===t.type?Kt.parse(t.default)||null:void 0===t.default?null:t.default}(e):null,this._enumValues=e&&\"enum\"===e.type?e.values:null};function Vr(t){return Array.isArray(t)&&t.length>0&&\"string\"==typeof t[0]&&t[0]in Tr}function qr(t,e){var r=new Be(Tr,[],e?function(t){var e={color:Bt,string:Rt,number:Dt,enum:Rt,boolean:Ft,formatted:Vt,resolvedImage:qt};return\"array\"===t.type?Ht(e[t.value]||jt,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&\"string\"===e.type?{typeAnnotation:\"coerce\"}:void 0);return n?Er(new Ur(n,e)):Cr(r.errors)}Ur.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=a||null,this._evaluator.formattedSection=i,this.expression.evaluate(this._evaluator)},Ur.prototype.evaluate=function(t,e,r,n,a,i){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=a||null,this._evaluator.formattedSection=i||null;try{var o=this.expression.evaluate(this._evaluator);if(null==o||\"number\"==typeof o&&o!=o)return this._defaultValue;if(this._enumValues&&!(o in this._enumValues))throw new se(\"Expected value to be one of \"+Object.keys(this._enumValues).map((function(t){return JSON.stringify(t)})).join(\", \")+\", but found \"+JSON.stringify(o)+\" instead.\");return o}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,\"undefined\"!=typeof console&&console.warn(t.message)),this._defaultValue}};var Hr=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent=\"constant\"!==t&&!De(e.expression)};Hr.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,a,i)},Hr.prototype.evaluate=function(t,e,r,n,a,i){return this._styleExpression.evaluate(t,e,r,n,a,i)};var Gr=function(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=\"camera\"!==t&&!De(e.expression),this.interpolationType=n};function Yr(t,e){if(\"error\"===(t=qr(t,e)).result)return t;var r=t.value.expression,n=Oe(r);if(!n&&!Lr(e))return Cr([new It(\"\",\"data expressions not supported\")]);var a=Re(r,[\"zoom\"]);if(!a&&!Pr(e))return Cr([new It(\"\",\"zoom expressions not supported\")]);var i=function t(e){var r=null;if(e instanceof ir)r=t(e.result);else if(e instanceof ar)for(var n=0,a=e.args;n<a.length&&!(r=t(a[n]));n+=1);else(e instanceof je||e instanceof rr)&&e.input instanceof me&&\"zoom\"===e.input.name&&(r=e);return r instanceof It||e.eachChild((function(e){var n=t(e);n instanceof It?r=n:!r&&n?r=new It(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.'):r&&n&&r!==n&&(r=new It(\"\",'Only one zoom-based \"step\" or \"interpolate\" subexpression may be used in an expression.'))})),r}(r);return i||a?i instanceof It?Cr([i]):i instanceof rr&&!Ir(e)?Cr([new It(\"\",'\"interpolate\" expressions cannot be used with this property')]):Er(i?new Gr(n?\"camera\":\"composite\",t.value,i.labels,i instanceof rr?i.interpolation:void 0):new Hr(n?\"constant\":\"source\",t.value)):Cr([new It(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.')])}Gr.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,a,i)},Gr.prototype.evaluate=function(t,e,r,n,a,i){return this._styleExpression.evaluate(t,e,r,n,a,i)},Gr.prototype.interpolationFactor=function(t,e,r){return this.interpolationType?rr.interpolationFactor(this.interpolationType,t,e,r):0};var Wr=function(t,e){this._parameters=t,this._specification=e,Ct(this,function t(e,r){var n,a,i,o=\"color\"===r.type,s=e.stops&&\"object\"==typeof e.stops[0][0],l=s||!(s||void 0!==e.property),c=e.type||(Ir(r)?\"exponential\":\"interval\");if(o&&((e=Ct({},e)).stops&&(e.stops=e.stops.map((function(t){return[t[0],Kt.parse(t[1])]}))),e.default=Kt.parse(e.default?e.default:r.default)),e.colorSpace&&\"rgb\"!==e.colorSpace&&!er[e.colorSpace])throw new Error(\"Unknown color space: \"+e.colorSpace);if(\"exponential\"===c)n=Nr;else if(\"interval\"===c)n=Br;else if(\"categorical\"===c){n=Fr,a=Object.create(null);for(var u=0,h=e.stops;u<h.length;u+=1){var f=h[u];a[f[0]]=f[1]}i=typeof e.stops[0][0]}else{if(\"identity\"!==c)throw new Error('Unknown function type \"'+c+'\"');n=jr}if(s){for(var p={},d=[],g=0;g<e.stops.length;g++){var m=e.stops[g],v=m[0].zoom;void 0===p[v]&&(p[v]={zoom:v,type:e.type,property:e.property,default:e.default,stops:[]},d.push(v)),p[v].stops.push([m[0].value,m[1]])}for(var y=[],x=0,b=d;x<b.length;x+=1){var _=b[x];y.push([p[_].zoom,t(p[_],r)])}var w={name:\"linear\"};return{kind:\"composite\",interpolationType:w,interpolationFactor:rr.interpolationFactor.bind(void 0,w),zoomStops:y.map((function(t){return t[0]})),evaluate:function(t,n){var a=t.zoom;return Nr({stops:y,base:e.base},r,a).evaluate(a,n)}}}if(l){var T=\"exponential\"===c?{name:\"exponential\",base:void 0!==e.base?e.base:1}:null;return{kind:\"camera\",interpolationType:T,interpolationFactor:rr.interpolationFactor.bind(void 0,T),zoomStops:e.stops.map((function(t){return t[0]})),evaluate:function(t){return n(e,r,t.zoom,a,i)}}}return{kind:\"source\",evaluate:function(t,o){var s=o&&o.properties?o.properties[e.property]:void 0;return void 0===s?Rr(e.default,r.default):n(e,r,s,a,i)}}}(this._parameters,this._specification))};function Zr(t){var e=t.key,r=t.value,n=t.valueSpec||{},a=t.objectElementValidators||{},i=t.style,o=t.styleSpec,s=[],l=zr(r);if(\"object\"!==l)return[new St(e,r,\"object expected, \"+l+\" found\")];for(var c in r){var u=c.split(\".\")[0],h=n[u]||n[\"*\"],f=void 0;if(a[u])f=a[u];else if(n[u])f=bn;else if(a[\"*\"])f=a[\"*\"];else{if(!n[\"*\"]){s.push(new St(e,r[c],'unknown property \"'+c+'\"'));continue}f=bn}s=s.concat(f({key:(e?e+\".\":e)+c,value:r[c],valueSpec:h,style:i,styleSpec:o,object:r,objectKey:c},r))}for(var p in n)a[p]||n[p].required&&void 0===n[p].default&&void 0===r[p]&&s.push(new St(e,r,'missing required property \"'+p+'\"'));return s}function Xr(t){var e=t.value,r=t.valueSpec,n=t.style,a=t.styleSpec,i=t.key,o=t.arrayElementValidator||bn;if(\"array\"!==zr(e))return[new St(i,e,\"array expected, \"+zr(e)+\" found\")];if(r.length&&e.length!==r.length)return[new St(i,e,\"array length \"+r.length+\" expected, length \"+e.length+\" found\")];if(r[\"min-length\"]&&e.length<r[\"min-length\"])return[new St(i,e,\"array length at least \"+r[\"min-length\"]+\" expected, length \"+e.length+\" found\")];var s={type:r.value,values:r.values};a.$version<7&&(s.function=r.function),\"object\"===zr(r.value)&&(s=r.value);for(var l=[],c=0;c<e.length;c++)l=l.concat(o({array:e,arrayIndex:c,value:e[c],valueSpec:s,style:n,styleSpec:a,key:i+\"[\"+c+\"]\"}));return l}function Jr(t){var e=t.key,r=t.value,n=t.valueSpec,a=zr(r);return\"number\"===a&&r!=r&&(a=\"NaN\"),\"number\"!==a?[new St(e,r,\"number expected, \"+a+\" found\")]:\"minimum\"in n&&r<n.minimum?[new St(e,r,r+\" is less than the minimum value \"+n.minimum)]:\"maximum\"in n&&r>n.maximum?[new St(e,r,r+\" is greater than the maximum value \"+n.maximum)]:[]}function Kr(t){var e,r,n,a=t.valueSpec,i=Lt(t.value.type),o={},s=\"categorical\"!==i&&void 0===t.value.property,l=!s,c=\"array\"===zr(t.value.stops)&&\"array\"===zr(t.value.stops[0])&&\"object\"===zr(t.value.stops[0][0]),u=Zr({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if(\"identity\"===i)return[new St(t.key,t.value,'identity function may not have a \"stops\" property')];var e=[],r=t.value;return e=e.concat(Xr({key:t.key,value:r,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),\"array\"===zr(r)&&0===r.length&&e.push(new St(t.key,r,\"array must have at least one stop\")),e},default:function(t){return bn({key:t.key,value:t.value,valueSpec:a,style:t.style,styleSpec:t.styleSpec})}}});return\"identity\"===i&&s&&u.push(new St(t.key,t.value,'missing required property \"property\"')),\"identity\"===i||t.value.stops||u.push(new St(t.key,t.value,'missing required property \"stops\"')),\"exponential\"===i&&t.valueSpec.expression&&!Ir(t.valueSpec)&&u.push(new St(t.key,t.value,\"exponential functions not supported\")),t.styleSpec.$version>=8&&(l&&!Lr(t.valueSpec)?u.push(new St(t.key,t.value,\"property functions not supported\")):s&&!Pr(t.valueSpec)&&u.push(new St(t.key,t.value,\"zoom functions not supported\"))),\"categorical\"!==i&&!c||void 0!==t.value.property||u.push(new St(t.key,t.value,'\"property\" property is required')),u;function h(t){var e=[],i=t.value,s=t.key;if(\"array\"!==zr(i))return[new St(s,i,\"array expected, \"+zr(i)+\" found\")];if(2!==i.length)return[new St(s,i,\"array length 2 expected, length \"+i.length+\" found\")];if(c){if(\"object\"!==zr(i[0]))return[new St(s,i,\"object expected, \"+zr(i[0])+\" found\")];if(void 0===i[0].zoom)return[new St(s,i,\"object stop key must have zoom\")];if(void 0===i[0].value)return[new St(s,i,\"object stop key must have value\")];if(n&&n>Lt(i[0].zoom))return[new St(s,i[0].zoom,\"stop zoom values must appear in ascending order\")];Lt(i[0].zoom)!==n&&(n=Lt(i[0].zoom),r=void 0,o={}),e=e.concat(Zr({key:s+\"[0]\",value:i[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:Jr,value:f}}))}else e=e.concat(f({key:s+\"[0]\",value:i[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},i));return Vr(Pt(i[1]))?e.concat([new St(s+\"[1]\",i[1],\"expressions are not allowed in function stops.\")]):e.concat(bn({key:s+\"[1]\",value:i[1],valueSpec:a,style:t.style,styleSpec:t.styleSpec}))}function f(t,n){var s=zr(t.value),l=Lt(t.value),c=null!==t.value?t.value:n;if(e){if(s!==e)return[new St(t.key,c,s+\" stop domain type must match previous stop domain type \"+e)]}else e=s;if(\"number\"!==s&&\"string\"!==s&&\"boolean\"!==s)return[new St(t.key,c,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==s&&\"categorical\"!==i){var u=\"number expected, \"+s+\" found\";return Lr(a)&&void 0===i&&(u+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new St(t.key,c,u)]}return\"categorical\"!==i||\"number\"!==s||isFinite(l)&&Math.floor(l)===l?\"categorical\"!==i&&\"number\"===s&&void 0!==r&&l<r?[new St(t.key,c,\"stop domain values must appear in ascending order\")]:(r=l,\"categorical\"===i&&l in o?[new St(t.key,c,\"stop domain values must be unique\")]:(o[l]=!0,[])):[new St(t.key,c,\"integer expected, found \"+l)]}}function Qr(t){var e=(\"property\"===t.expressionContext?Yr:qr)(Pt(t.value),t.valueSpec);if(\"error\"===e.result)return e.value.map((function(e){return new St(\"\"+t.key+e.key,t.value,e.message)}));var r=e.value.expression||e.value._styleExpression.expression;if(\"property\"===t.expressionContext&&\"text-font\"===t.propertyKey&&!r.outputDefined())return[new St(t.key,t.value,'Invalid data expression for \"'+t.propertyKey+'\". Output values must be contained as literals within the expression.')];if(\"property\"===t.expressionContext&&\"layout\"===t.propertyType&&!De(r))return[new St(t.key,t.value,'\"feature-state\" data expressions are not supported with layout properties.')];if(\"filter\"===t.expressionContext&&!De(r))return[new St(t.key,t.value,'\"feature-state\" data expressions are not supported with filters.')];if(t.expressionContext&&0===t.expressionContext.indexOf(\"cluster\")){if(!Re(r,[\"zoom\",\"feature-state\"]))return[new St(t.key,t.value,'\"zoom\" and \"feature-state\" expressions are not supported with cluster properties.')];if(\"cluster-initial\"===t.expressionContext&&!Oe(r))return[new St(t.key,t.value,\"Feature data expressions are not supported with initial expression part of cluster properties.\")]}return[]}function $r(t){var e=t.key,r=t.value,n=t.valueSpec,a=[];return Array.isArray(n.values)?-1===n.values.indexOf(Lt(r))&&a.push(new St(e,r,\"expected one of [\"+n.values.join(\", \")+\"], \"+JSON.stringify(r)+\" found\")):-1===Object.keys(n.values).indexOf(Lt(r))&&a.push(new St(e,r,\"expected one of [\"+Object.keys(n.values).join(\", \")+\"], \"+JSON.stringify(r)+\" found\")),a}function tn(t){if(!0===t||!1===t)return!0;if(!Array.isArray(t)||0===t.length)return!1;switch(t[0]){case\"has\":return t.length>=2&&\"$id\"!==t[1]&&\"$type\"!==t[1];case\"in\":return t.length>=3&&(\"string\"!=typeof t[1]||Array.isArray(t[2]));case\"!in\":case\"!has\":case\"none\":return!1;case\"==\":case\"!=\":case\">\":case\">=\":case\"<\":case\"<=\":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case\"any\":case\"all\":for(var e=0,r=t.slice(1);e<r.length;e+=1){var n=r[e];if(!tn(n)&&\"boolean\"!=typeof n)return!1}return!0;default:return!0}}Wr.deserialize=function(t){return new Wr(t._parameters,t._specification)},Wr.serialize=function(t){return{_parameters:t._parameters,_specification:t._specification}};var en={type:\"boolean\",default:!1,transition:!1,\"property-type\":\"data-driven\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]}};function rn(t){if(null==t)return{filter:function(){return!0},needGeometry:!1};tn(t)||(t=an(t));var e=qr(t,en);if(\"error\"===e.result)throw new Error(e.value.map((function(t){return t.key+\": \"+t.message})).join(\", \"));return{filter:function(t,r,n){return e.value.evaluate(t,r,{},n)},needGeometry:function t(e){if(!Array.isArray(e))return!1;if(\"within\"===e[0])return!0;for(var r=1;r<e.length;r++)if(t(e[r]))return!0;return!1}(t)}}function nn(t,e){return t<e?-1:t>e?1:0}function an(t){if(!t)return!0;var e,r=t[0];return t.length<=1?\"any\"!==r:\"==\"===r?on(t[1],t[2],\"==\"):\"!=\"===r?cn(on(t[1],t[2],\"==\")):\"<\"===r||\">\"===r||\"<=\"===r||\">=\"===r?on(t[1],t[2],r):\"any\"===r?(e=t.slice(1),[\"any\"].concat(e.map(an))):\"all\"===r?[\"all\"].concat(t.slice(1).map(an)):\"none\"===r?[\"all\"].concat(t.slice(1).map(an).map(cn)):\"in\"===r?sn(t[1],t.slice(2)):\"!in\"===r?cn(sn(t[1],t.slice(2))):\"has\"===r?ln(t[1]):\"!has\"===r?cn(ln(t[1])):\"within\"!==r||t}function on(t,e,r){switch(t){case\"$type\":return[\"filter-type-\"+r,e];case\"$id\":return[\"filter-id-\"+r,e];default:return[\"filter-\"+r,t,e]}}function sn(t,e){if(0===e.length)return!1;switch(t){case\"$type\":return[\"filter-type-in\",[\"literal\",e]];case\"$id\":return[\"filter-id-in\",[\"literal\",e]];default:return e.length>200&&!e.some((function(t){return typeof t!=typeof e[0]}))?[\"filter-in-large\",t,[\"literal\",e.sort(nn)]]:[\"filter-in-small\",t,[\"literal\",e]]}}function ln(t){switch(t){case\"$type\":return!0;case\"$id\":return[\"filter-has-id\"];default:return[\"filter-has\",t]}}function cn(t){return[\"!\",t]}function un(t){return tn(Pt(t.value))?Qr(Ct({},t,{expressionContext:\"filter\",valueSpec:{value:\"boolean\"}})):function t(e){var r=e.value,n=e.key;if(\"array\"!==zr(r))return[new St(n,r,\"array expected, \"+zr(r)+\" found\")];var a,i=e.styleSpec,o=[];if(r.length<1)return[new St(n,r,\"filter array must have at least 1 element\")];switch(o=o.concat($r({key:n+\"[0]\",value:r[0],valueSpec:i.filter_operator,style:e.style,styleSpec:e.styleSpec})),Lt(r[0])){case\"<\":case\"<=\":case\">\":case\">=\":r.length>=2&&\"$type\"===Lt(r[1])&&o.push(new St(n,r,'\"$type\" cannot be use with operator \"'+r[0]+'\"'));case\"==\":case\"!=\":3!==r.length&&o.push(new St(n,r,'filter array for operator \"'+r[0]+'\" must have 3 elements'));case\"in\":case\"!in\":r.length>=2&&\"string\"!==(a=zr(r[1]))&&o.push(new St(n+\"[1]\",r[1],\"string expected, \"+a+\" found\"));for(var s=2;s<r.length;s++)a=zr(r[s]),\"$type\"===Lt(r[1])?o=o.concat($r({key:n+\"[\"+s+\"]\",value:r[s],valueSpec:i.geometry_type,style:e.style,styleSpec:e.styleSpec})):\"string\"!==a&&\"number\"!==a&&\"boolean\"!==a&&o.push(new St(n+\"[\"+s+\"]\",r[s],\"string, number, or boolean expected, \"+a+\" found\"));break;case\"any\":case\"all\":case\"none\":for(var l=1;l<r.length;l++)o=o.concat(t({key:n+\"[\"+l+\"]\",value:r[l],style:e.style,styleSpec:e.styleSpec}));break;case\"has\":case\"!has\":a=zr(r[1]),2!==r.length?o.push(new St(n,r,'filter array for \"'+r[0]+'\" operator must have 2 elements')):\"string\"!==a&&o.push(new St(n+\"[1]\",r[1],\"string expected, \"+a+\" found\"));break;case\"within\":a=zr(r[1]),2!==r.length?o.push(new St(n,r,'filter array for \"'+r[0]+'\" operator must have 2 elements')):\"object\"!==a&&o.push(new St(n+\"[1]\",r[1],\"object expected, \"+a+\" found\"))}return o}(t)}function hn(t,e){var r=t.key,n=t.style,a=t.styleSpec,i=t.value,o=t.objectKey,s=a[e+\"_\"+t.layerType];if(!s)return[];var l=o.match(/^(.*)-transition$/);if(\"paint\"===e&&l&&s[l[1]]&&s[l[1]].transition)return bn({key:r,value:i,valueSpec:a.transition,style:n,styleSpec:a});var c,u=t.valueSpec||s[o];if(!u)return[new St(r,i,'unknown property \"'+o+'\"')];if(\"string\"===zr(i)&&Lr(u)&&!u.tokens&&(c=/^{([^}]+)}$/.exec(i)))return[new St(r,i,'\"'+o+'\" does not support interpolation syntax\\nUse an identity property function instead: `{ \"type\": \"identity\", \"property\": '+JSON.stringify(c[1])+\" }`.\")];var h=[];return\"symbol\"===t.layerType&&(\"text-field\"===o&&n&&!n.glyphs&&h.push(new St(r,i,'use of \"text-field\" requires a style \"glyphs\" property')),\"text-font\"===o&&Or(Pt(i))&&\"identity\"===Lt(i.type)&&h.push(new St(r,i,'\"text-font\" does not support identity functions'))),h.concat(bn({key:t.key,value:i,valueSpec:u,style:n,styleSpec:a,expressionContext:\"property\",propertyType:e,propertyKey:o}))}function fn(t){return hn(t,\"paint\")}function pn(t){return hn(t,\"layout\")}function dn(t){var e=[],r=t.value,n=t.key,a=t.style,i=t.styleSpec;r.type||r.ref||e.push(new St(n,r,'either \"type\" or \"ref\" is required'));var o,s=Lt(r.type),l=Lt(r.ref);if(r.id)for(var c=Lt(r.id),u=0;u<t.arrayIndex;u++){var h=a.layers[u];Lt(h.id)===c&&e.push(new St(n,r.id,'duplicate layer id \"'+r.id+'\", previously used at line '+h.id.__line__))}if(\"ref\"in r)[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach((function(t){t in r&&e.push(new St(n,r[t],'\"'+t+'\" is prohibited for ref layers'))})),a.layers.forEach((function(t){Lt(t.id)===l&&(o=t)})),o?o.ref?e.push(new St(n,r.ref,\"ref cannot reference another ref layer\")):s=Lt(o.type):e.push(new St(n,r.ref,'ref layer \"'+l+'\" not found'));else if(\"background\"!==s)if(r.source){var f=a.sources&&a.sources[r.source],p=f&&Lt(f.type);f?\"vector\"===p&&\"raster\"===s?e.push(new St(n,r.source,'layer \"'+r.id+'\" requires a raster source')):\"raster\"===p&&\"raster\"!==s?e.push(new St(n,r.source,'layer \"'+r.id+'\" requires a vector source')):\"vector\"!==p||r[\"source-layer\"]?\"raster-dem\"===p&&\"hillshade\"!==s?e.push(new St(n,r.source,\"raster-dem source can only be used with layer type 'hillshade'.\")):\"line\"!==s||!r.paint||!r.paint[\"line-gradient\"]||\"geojson\"===p&&f.lineMetrics||e.push(new St(n,r,'layer \"'+r.id+'\" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):e.push(new St(n,r,'layer \"'+r.id+'\" must specify a \"source-layer\"')):e.push(new St(n,r.source,'source \"'+r.source+'\" not found'))}else e.push(new St(n,r,'missing required property \"source\"'));return e=e.concat(Zr({key:n,value:r,valueSpec:i.layer,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":function(){return[]},type:function(){return bn({key:n+\".type\",value:r.type,valueSpec:i.layer.type,style:t.style,styleSpec:t.styleSpec,object:r,objectKey:\"type\"})},filter:un,layout:function(t){return Zr({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":function(t){return pn(Ct({layerType:s},t))}}})},paint:function(t){return Zr({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":function(t){return fn(Ct({layerType:s},t))}}})}}}))}function gn(t){var e=t.value,r=t.key,n=zr(e);return\"string\"!==n?[new St(r,e,\"string expected, \"+n+\" found\")]:[]}var mn={promoteId:function(t){var e=t.key,r=t.value;if(\"string\"===zr(r))return gn({key:e,value:r});var n=[];for(var a in r)n.push.apply(n,gn({key:e+\".\"+a,value:r[a]}));return n}};function vn(t){var e=t.value,r=t.key,n=t.styleSpec,a=t.style;if(!e.type)return[new St(r,e,'\"type\" is required')];var i,o=Lt(e.type);switch(o){case\"vector\":case\"raster\":case\"raster-dem\":return Zr({key:r,value:e,valueSpec:n[\"source_\"+o.replace(\"-\",\"_\")],style:t.style,styleSpec:n,objectElementValidators:mn});case\"geojson\":if(i=Zr({key:r,value:e,valueSpec:n.source_geojson,style:a,styleSpec:n,objectElementValidators:mn}),e.cluster)for(var s in e.clusterProperties){var l=e.clusterProperties[s],c=l[0],u=\"string\"==typeof c?[c,[\"accumulated\"],[\"get\",s]]:c;i.push.apply(i,Qr({key:r+\".\"+s+\".map\",value:l[1],expressionContext:\"cluster-map\"})),i.push.apply(i,Qr({key:r+\".\"+s+\".reduce\",value:u,expressionContext:\"cluster-reduce\"}))}return i;case\"video\":return Zr({key:r,value:e,valueSpec:n.source_video,style:a,styleSpec:n});case\"image\":return Zr({key:r,value:e,valueSpec:n.source_image,style:a,styleSpec:n});case\"canvas\":return[new St(r,null,\"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.\",\"source.canvas\")];default:return $r({key:r+\".type\",value:e.type,valueSpec:{values:[\"vector\",\"raster\",\"raster-dem\",\"geojson\",\"video\",\"image\"]},style:a,styleSpec:n})}}function yn(t){var e=t.value,r=t.styleSpec,n=r.light,a=t.style,i=[],o=zr(e);if(void 0===e)return i;if(\"object\"!==o)return i.concat([new St(\"light\",e,\"object expected, \"+o+\" found\")]);for(var s in e){var l=s.match(/^(.*)-transition$/);i=i.concat(l&&n[l[1]]&&n[l[1]].transition?bn({key:s,value:e[s],valueSpec:r.transition,style:a,styleSpec:r}):n[s]?bn({key:s,value:e[s],valueSpec:n[s],style:a,styleSpec:r}):[new St(s,e[s],'unknown property \"'+s+'\"')])}return i}var xn={\"*\":function(){return[]},array:Xr,boolean:function(t){var e=t.value,r=t.key,n=zr(e);return\"boolean\"!==n?[new St(r,e,\"boolean expected, \"+n+\" found\")]:[]},number:Jr,color:function(t){var e=t.key,r=t.value,n=zr(r);return\"string\"!==n?[new St(e,r,\"color expected, \"+n+\" found\")]:null===Jt(r)?[new St(e,r,'color expected, \"'+r+'\" found')]:[]},constants:Et,enum:$r,filter:un,function:Kr,layer:dn,object:Zr,source:vn,light:yn,string:gn,formatted:function(t){return 0===gn(t).length?[]:Qr(t)},resolvedImage:function(t){return 0===gn(t).length?[]:Qr(t)}};function bn(t){var e=t.value,r=t.valueSpec,n=t.styleSpec;return r.expression&&Or(Lt(e))?Kr(t):r.expression&&Vr(Pt(e))?Qr(t):r.type&&xn[r.type]?xn[r.type](t):Zr(Ct({},t,{valueSpec:r.type?n[r.type]:r}))}function _n(t){var e=t.value,r=t.key,n=gn(t);return n.length||(-1===e.indexOf(\"{fontstack}\")&&n.push(new St(r,e,'\"glyphs\" url must include a \"{fontstack}\" token')),-1===e.indexOf(\"{range}\")&&n.push(new St(r,e,'\"glyphs\" url must include a \"{range}\" token'))),n}function wn(t,e){void 0===e&&(e=At);var r=[];return r=r.concat(bn({key:\"\",value:t,valueSpec:e.$root,styleSpec:e,style:t,objectElementValidators:{glyphs:_n,\"*\":function(){return[]}}})),t.constants&&(r=r.concat(Et({key:\"constants\",value:t.constants,style:t,styleSpec:e}))),Tn(r)}function Tn(t){return[].concat(t).sort((function(t,e){return t.line-e.line}))}function kn(t){return function(){for(var e=[],r=arguments.length;r--;)e[r]=arguments[r];return Tn(t.apply(this,e))}}wn.source=kn(vn),wn.light=kn(yn),wn.layer=kn(dn),wn.filter=kn(un),wn.paintProperty=kn(fn),wn.layoutProperty=kn(pn);var Mn=wn,An=Mn.light,Sn=Mn.paintProperty,En=Mn.layoutProperty;function Cn(t,e){var r=!1;if(e&&e.length)for(var n=0,a=e;n<a.length;n+=1)t.fire(new kt(new Error(a[n].message))),r=!0;return r}var Ln=Pn;function Pn(t,e,r){var n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var a=new Int32Array(this.arrayBuffer);t=a[0],this.d=(e=a[1])+2*(r=a[2]);for(var i=0;i<this.d*this.d;i++){var o=a[3+i],s=a[3+i+1];n.push(o===s?null:a.subarray(o,s))}var l=a[3+n.length+1];this.keys=a.subarray(a[3+n.length],l),this.bboxes=a.subarray(l),this.insert=this._insertReadonly}else{this.d=e+2*r;for(var c=0;c<this.d*this.d;c++)n.push([]);this.keys=[],this.bboxes=[]}this.n=e,this.extent=t,this.padding=r,this.scale=e/t,this.uid=0;var u=r/e*t;this.min=-u,this.max=t+u}Pn.prototype.insert=function(t,e,r,n,a){this._forEachCell(e,r,n,a,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(a)},Pn.prototype._insertReadonly=function(){throw\"Cannot insert into a GridIndex created from an ArrayBuffer.\"},Pn.prototype._insertCell=function(t,e,r,n,a,i){this.cells[a].push(i)},Pn.prototype.query=function(t,e,r,n,a){var i=this.min,o=this.max;if(t<=i&&e<=i&&o<=r&&o<=n&&!a)return Array.prototype.slice.call(this.keys);var s=[];return this._forEachCell(t,e,r,n,this._queryCell,s,{},a),s},Pn.prototype._queryCell=function(t,e,r,n,a,i,o,s){var l=this.cells[a];if(null!==l)for(var c=this.keys,u=this.bboxes,h=0;h<l.length;h++){var f=l[h];if(void 0===o[f]){var p=4*f;(s?s(u[p+0],u[p+1],u[p+2],u[p+3]):t<=u[p+2]&&e<=u[p+3]&&r>=u[p+0]&&n>=u[p+1])?(o[f]=!0,i.push(c[f])):o[f]=!1}}},Pn.prototype._forEachCell=function(t,e,r,n,a,i,o,s){for(var l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(r),h=this._convertToCellCoord(n),f=l;f<=u;f++)for(var p=c;p<=h;p++){var d=this.d*p+f;if((!s||s(this._convertFromCellCoord(f),this._convertFromCellCoord(p),this._convertFromCellCoord(f+1),this._convertFromCellCoord(p+1)))&&a.call(this,t,e,r,n,d,i,o,s))return}},Pn.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},Pn.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},Pn.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=3+this.cells.length+1+1,r=0,n=0;n<this.cells.length;n++)r+=this.cells[n].length;var a=new Int32Array(e+r+this.keys.length+this.bboxes.length);a[0]=this.extent,a[1]=this.n,a[2]=this.padding;for(var i=e,o=0;o<t.length;o++){var s=t[o];a[3+o]=i,a.set(s,i),i+=s.length}return a[3+t.length]=i,a.set(this.keys,i),a[3+t.length+1]=i+=this.keys.length,a.set(this.bboxes,i),i+=this.bboxes.length,a.buffer};var In=self.ImageData,zn=self.ImageBitmap,On={};function Dn(t,e,r){void 0===r&&(r={}),Object.defineProperty(e,\"_classRegistryKey\",{value:t,writeable:!1}),On[t]={klass:e,omit:r.omit||[],shallow:r.shallow||[]}}for(var Rn in Dn(\"Object\",Object),Ln.serialize=function(t,e){var r=t.toArrayBuffer();return e&&e.push(r),{buffer:r}},Ln.deserialize=function(t){return new Ln(t.buffer)},Dn(\"Grid\",Ln),Dn(\"Color\",Kt),Dn(\"Error\",Error),Dn(\"ResolvedImage\",ee),Dn(\"StylePropertyFunction\",Wr),Dn(\"StyleExpression\",Ur,{omit:[\"_evaluator\"]}),Dn(\"ZoomDependentExpression\",Gr),Dn(\"ZoomConstantExpression\",Hr),Dn(\"CompoundExpression\",me,{omit:[\"_evaluate\"]}),Tr)Tr[Rn]._classRegistryKey||Dn(\"Expression_\"+Rn,Tr[Rn]);function Fn(t){return t&&\"undefined\"!=typeof ArrayBuffer&&(t instanceof ArrayBuffer||t.constructor&&\"ArrayBuffer\"===t.constructor.name)}function Bn(t){return zn&&t instanceof zn}function Nn(t,e){if(null==t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp)return t;if(Fn(t)||Bn(t))return e&&e.push(t),t;if(ArrayBuffer.isView(t)){var r=t;return e&&e.push(r.buffer),r}if(t instanceof In)return e&&e.push(t.data.buffer),t;if(Array.isArray(t)){for(var n=[],a=0,i=t;a<i.length;a+=1)n.push(Nn(i[a],e));return n}if(\"object\"==typeof t){var o=t.constructor,s=o._classRegistryKey;if(!s)throw new Error(\"can't serialize object of unregistered class\");var l=o.serialize?o.serialize(t,e):{};if(!o.serialize){for(var c in t)if(t.hasOwnProperty(c)&&!(On[s].omit.indexOf(c)>=0)){var u=t[c];l[c]=On[s].shallow.indexOf(c)>=0?u:Nn(u,e)}t instanceof Error&&(l.message=t.message)}if(l.$name)throw new Error(\"$name property is reserved for worker serialization logic.\");return\"Object\"!==s&&(l.$name=s),l}throw new Error(\"can't serialize object of type \"+typeof t)}function jn(t){if(null==t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||Fn(t)||Bn(t)||ArrayBuffer.isView(t)||t instanceof In)return t;if(Array.isArray(t))return t.map(jn);if(\"object\"==typeof t){var e=t.$name||\"Object\",r=On[e].klass;if(!r)throw new Error(\"can't deserialize unregistered class \"+e);if(r.deserialize)return r.deserialize(t);for(var n=Object.create(r.prototype),a=0,i=Object.keys(t);a<i.length;a+=1){var o=i[a];if(\"$name\"!==o){var s=t[o];n[o]=On[e].shallow.indexOf(o)>=0?s:jn(s)}}return n}throw new Error(\"can't deserialize object of type \"+typeof t)}var Un=function(){this.first=!0};Un.prototype.update=function(t,e){var r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoom<r&&(this.lastIntegerZoom=r,this.lastIntegerZoomTime=e),t!==this.lastZoom&&(this.lastZoom=t,this.lastFloorZoom=r,!0))};var Vn={\"Latin-1 Supplement\":function(t){return t>=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},\"Arabic Supplement\":function(t){return t>=1872&&t<=1919},\"Arabic Extended-A\":function(t){return t>=2208&&t<=2303},\"Hangul Jamo\":function(t){return t>=4352&&t<=4607},\"Unified Canadian Aboriginal Syllabics\":function(t){return t>=5120&&t<=5759},Khmer:function(t){return t>=6016&&t<=6143},\"Unified Canadian Aboriginal Syllabics Extended\":function(t){return t>=6320&&t<=6399},\"General Punctuation\":function(t){return t>=8192&&t<=8303},\"Letterlike Symbols\":function(t){return t>=8448&&t<=8527},\"Number Forms\":function(t){return t>=8528&&t<=8591},\"Miscellaneous Technical\":function(t){return t>=8960&&t<=9215},\"Control Pictures\":function(t){return t>=9216&&t<=9279},\"Optical Character Recognition\":function(t){return t>=9280&&t<=9311},\"Enclosed Alphanumerics\":function(t){return t>=9312&&t<=9471},\"Geometric Shapes\":function(t){return t>=9632&&t<=9727},\"Miscellaneous Symbols\":function(t){return t>=9728&&t<=9983},\"Miscellaneous Symbols and Arrows\":function(t){return t>=11008&&t<=11263},\"CJK Radicals Supplement\":function(t){return t>=11904&&t<=12031},\"Kangxi Radicals\":function(t){return t>=12032&&t<=12255},\"Ideographic Description Characters\":function(t){return t>=12272&&t<=12287},\"CJK Symbols and Punctuation\":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},\"Hangul Compatibility Jamo\":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},\"Bopomofo Extended\":function(t){return t>=12704&&t<=12735},\"CJK Strokes\":function(t){return t>=12736&&t<=12783},\"Katakana Phonetic Extensions\":function(t){return t>=12784&&t<=12799},\"Enclosed CJK Letters and Months\":function(t){return t>=12800&&t<=13055},\"CJK Compatibility\":function(t){return t>=13056&&t<=13311},\"CJK Unified Ideographs Extension A\":function(t){return t>=13312&&t<=19903},\"Yijing Hexagram Symbols\":function(t){return t>=19904&&t<=19967},\"CJK Unified Ideographs\":function(t){return t>=19968&&t<=40959},\"Yi Syllables\":function(t){return t>=40960&&t<=42127},\"Yi Radicals\":function(t){return t>=42128&&t<=42191},\"Hangul Jamo Extended-A\":function(t){return t>=43360&&t<=43391},\"Hangul Syllables\":function(t){return t>=44032&&t<=55215},\"Hangul Jamo Extended-B\":function(t){return t>=55216&&t<=55295},\"Private Use Area\":function(t){return t>=57344&&t<=63743},\"CJK Compatibility Ideographs\":function(t){return t>=63744&&t<=64255},\"Arabic Presentation Forms-A\":function(t){return t>=64336&&t<=65023},\"Vertical Forms\":function(t){return t>=65040&&t<=65055},\"CJK Compatibility Forms\":function(t){return t>=65072&&t<=65103},\"Small Form Variants\":function(t){return t>=65104&&t<=65135},\"Arabic Presentation Forms-B\":function(t){return t>=65136&&t<=65279},\"Halfwidth and Fullwidth Forms\":function(t){return t>=65280&&t<=65519}};function qn(t){for(var e=0,r=t;e<r.length;e+=1)if(Hn(r[e].charCodeAt(0)))return!0;return!1}function Hn(t){return!(746!==t&&747!==t&&(t<4352||!(Vn[\"Bopomofo Extended\"](t)||Vn.Bopomofo(t)||Vn[\"CJK Compatibility Forms\"](t)&&!(t>=65097&&t<=65103)||Vn[\"CJK Compatibility Ideographs\"](t)||Vn[\"CJK Compatibility\"](t)||Vn[\"CJK Radicals Supplement\"](t)||Vn[\"CJK Strokes\"](t)||!(!Vn[\"CJK Symbols and Punctuation\"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||Vn[\"CJK Unified Ideographs Extension A\"](t)||Vn[\"CJK Unified Ideographs\"](t)||Vn[\"Enclosed CJK Letters and Months\"](t)||Vn[\"Hangul Compatibility Jamo\"](t)||Vn[\"Hangul Jamo Extended-A\"](t)||Vn[\"Hangul Jamo Extended-B\"](t)||Vn[\"Hangul Jamo\"](t)||Vn[\"Hangul Syllables\"](t)||Vn.Hiragana(t)||Vn[\"Ideographic Description Characters\"](t)||Vn.Kanbun(t)||Vn[\"Kangxi Radicals\"](t)||Vn[\"Katakana Phonetic Extensions\"](t)||Vn.Katakana(t)&&12540!==t||!(!Vn[\"Halfwidth and Fullwidth Forms\"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!Vn[\"Small Form Variants\"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||Vn[\"Unified Canadian Aboriginal Syllabics\"](t)||Vn[\"Unified Canadian Aboriginal Syllabics Extended\"](t)||Vn[\"Vertical Forms\"](t)||Vn[\"Yijing Hexagram Symbols\"](t)||Vn[\"Yi Syllables\"](t)||Vn[\"Yi Radicals\"](t))))}function Gn(t){return!(Hn(t)||function(t){return!!(Vn[\"Latin-1 Supplement\"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||Vn[\"General Punctuation\"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||Vn[\"Letterlike Symbols\"](t)||Vn[\"Number Forms\"](t)||Vn[\"Miscellaneous Technical\"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||Vn[\"Control Pictures\"](t)&&9251!==t||Vn[\"Optical Character Recognition\"](t)||Vn[\"Enclosed Alphanumerics\"](t)||Vn[\"Geometric Shapes\"](t)||Vn[\"Miscellaneous Symbols\"](t)&&!(t>=9754&&t<=9759)||Vn[\"Miscellaneous Symbols and Arrows\"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||Vn[\"CJK Symbols and Punctuation\"](t)||Vn.Katakana(t)||Vn[\"Private Use Area\"](t)||Vn[\"CJK Compatibility Forms\"](t)||Vn[\"Small Form Variants\"](t)||Vn[\"Halfwidth and Fullwidth Forms\"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function Yn(t){return t>=1424&&t<=2303||Vn[\"Arabic Presentation Forms-A\"](t)||Vn[\"Arabic Presentation Forms-B\"](t)}function Wn(t,e){return!(!e&&Yn(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||Vn.Khmer(t))}function Zn(t){for(var e=0,r=t;e<r.length;e+=1)if(Yn(r[e].charCodeAt(0)))return!0;return!1}var Xn=null,Jn=\"unavailable\",Kn=null,Qn=function(t){t&&\"string\"==typeof t&&t.indexOf(\"NetworkError\")>-1&&(Jn=\"error\"),Xn&&Xn(t)};function $n(){ta.fire(new Tt(\"pluginStateChange\",{pluginStatus:Jn,pluginURL:Kn}))}var ta=new Mt,ea=function(){return Jn},ra=function(){if(\"deferred\"!==Jn||!Kn)throw new Error(\"rtl-text-plugin cannot be downloaded unless a pluginURL is specified\");Jn=\"loading\",$n(),Kn&&yt({url:Kn},(function(t){t?Qn(t):(Jn=\"loaded\",$n())}))},na={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return\"loaded\"===Jn||null!=na.applyArabicShaping},isLoading:function(){return\"loading\"===Jn},setState:function(t){Jn=t.pluginStatus,Kn=t.pluginURL},isParsed:function(){return null!=na.applyArabicShaping&&null!=na.processBidirectionalText&&null!=na.processStyledBidirectionalText},getPluginURL:function(){return Kn}},aa=function(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Un,this.transition={})};aa.prototype.isSupportedScript=function(t){return function(t,e){for(var r=0,n=t;r<n.length;r+=1)if(!Wn(n[r].charCodeAt(0),e))return!1;return!0}(t,na.isLoaded())},aa.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},aa.prototype.getCrossfadeParameters=function(){var t=this.zoom,e=t-Math.floor(t),r=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}};var ia=function(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(Or(t))return new Wr(t,e);if(Vr(t)){var r=Yr(t,e);if(\"error\"===r.result)throw new Error(r.value.map((function(t){return t.key+\": \"+t.message})).join(\", \"));return r.value}var n=t;return\"string\"==typeof t&&\"color\"===e.type&&(n=Kt.parse(t)),{kind:\"constant\",evaluate:function(){return n}}}(void 0===e?t.specification.default:e,t.specification)};ia.prototype.isDataDriven=function(){return\"source\"===this.expression.kind||\"composite\"===this.expression.kind},ia.prototype.possiblyEvaluate=function(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)};var oa=function(t){this.property=t,this.value=new ia(t,void 0)};oa.prototype.transitioned=function(t,e){return new la(this.property,this.value,e,u({},t.transition,this.transition),t.now)},oa.prototype.untransitioned=function(){return new la(this.property,this.value,null,{},0)};var sa=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};sa.prototype.getValue=function(t){return x(this._values[t].value.value)},sa.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new oa(this._values[t].property)),this._values[t].value=new ia(this._values[t].property,null===e?void 0:x(e))},sa.prototype.getTransition=function(t){return x(this._values[t].transition)},sa.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new oa(this._values[t].property)),this._values[t].transition=x(e)||void 0},sa.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);e<r.length;e+=1){var n=r[e],a=this.getValue(n);void 0!==a&&(t[n]=a);var i=this.getTransition(n);void 0!==i&&(t[n+\"-transition\"]=i)}return t},sa.prototype.transitioned=function(t,e){for(var r=new ca(this._properties),n=0,a=Object.keys(this._values);n<a.length;n+=1){var i=a[n];r._values[i]=this._values[i].transitioned(t,e._values[i])}return r},sa.prototype.untransitioned=function(){for(var t=new ca(this._properties),e=0,r=Object.keys(this._values);e<r.length;e+=1){var n=r[e];t._values[n]=this._values[n].untransitioned()}return t};var la=function(t,e,r,n,a){this.property=t,this.value=e,this.begin=a+n.delay||0,this.end=this.begin+n.duration||0,t.specification.transition&&(n.delay||n.duration)&&(this.prior=r)};la.prototype.possiblyEvaluate=function(t,e,r){var n=t.now||0,a=this.value.possiblyEvaluate(t,e,r),i=this.prior;if(i){if(n>this.end)return this.prior=null,a;if(this.value.isDataDriven())return this.prior=null,a;if(n<this.begin)return i.possiblyEvaluate(t,e,r);var o=(n-this.begin)/(this.end-this.begin);return this.property.interpolate(i.possiblyEvaluate(t,e,r),a,function(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(o))}return a};var ca=function(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)};ca.prototype.possiblyEvaluate=function(t,e,r){for(var n=new fa(this._properties),a=0,i=Object.keys(this._values);a<i.length;a+=1){var o=i[a];n._values[o]=this._values[o].possiblyEvaluate(t,e,r)}return n},ca.prototype.hasTransition=function(){for(var t=0,e=Object.keys(this._values);t<e.length;t+=1)if(this._values[e[t]].prior)return!0;return!1};var ua=function(t){this._properties=t,this._values=Object.create(t.defaultPropertyValues)};ua.prototype.getValue=function(t){return x(this._values[t].value)},ua.prototype.setValue=function(t,e){this._values[t]=new ia(this._values[t].property,null===e?void 0:x(e))},ua.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);e<r.length;e+=1){var n=r[e],a=this.getValue(n);void 0!==a&&(t[n]=a)}return t},ua.prototype.possiblyEvaluate=function(t,e,r){for(var n=new fa(this._properties),a=0,i=Object.keys(this._values);a<i.length;a+=1){var o=i[a];n._values[o]=this._values[o].possiblyEvaluate(t,e,r)}return n};var ha=function(t,e,r){this.property=t,this.value=e,this.parameters=r};ha.prototype.isConstant=function(){return\"constant\"===this.value.kind},ha.prototype.constantOr=function(t){return\"constant\"===this.value.kind?this.value.value:t},ha.prototype.evaluate=function(t,e,r,n){return this.property.evaluate(this.value,this.parameters,t,e,r,n)};var fa=function(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues)};fa.prototype.get=function(t){return this._values[t]};var pa=function(t){this.specification=t};pa.prototype.possiblyEvaluate=function(t,e){return t.expression.evaluate(e)},pa.prototype.interpolate=function(t,e,r){var n=Ve[this.specification.type];return n?n(t,e,r):t};var da=function(t,e){this.specification=t,this.overrides=e};da.prototype.possiblyEvaluate=function(t,e,r,n){return new ha(this,\"constant\"===t.expression.kind||\"camera\"===t.expression.kind?{kind:\"constant\",value:t.expression.evaluate(e,null,{},r,n)}:t.expression,e)},da.prototype.interpolate=function(t,e,r){if(\"constant\"!==t.value.kind||\"constant\"!==e.value.kind)return t;if(void 0===t.value.value||void 0===e.value.value)return new ha(this,{kind:\"constant\",value:void 0},t.parameters);var n=Ve[this.specification.type];return n?new ha(this,{kind:\"constant\",value:n(t.value.value,e.value.value,r)},t.parameters):t},da.prototype.evaluate=function(t,e,r,n,a,i){return\"constant\"===t.kind?t.value:t.evaluate(e,r,n,a,i)};var ga=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0===t.value)return new ha(this,{kind:\"constant\",value:void 0},e);if(\"constant\"===t.expression.kind){var a=t.expression.evaluate(e,null,{},r,n),i=\"resolvedImage\"===t.property.specification.type&&\"string\"!=typeof a?a.name:a,o=this._calculate(i,i,i,e);return new ha(this,{kind:\"constant\",value:o},e)}if(\"camera\"===t.expression.kind){var s=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new ha(this,{kind:\"constant\",value:s},e)}return new ha(this,t.expression,e)},e.prototype.evaluate=function(t,e,r,n,a,i){if(\"source\"===t.kind){var o=t.evaluate(e,r,n,a,i);return this._calculate(o,o,o,e)}return\"composite\"===t.kind?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},r,n),t.evaluate({zoom:Math.floor(e.zoom)},r,n),t.evaluate({zoom:Math.floor(e.zoom)+1},r,n),e):t.value},e.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},e.prototype.interpolate=function(t){return t},e}(da),ma=function(t){this.specification=t};ma.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0!==t.value){if(\"constant\"===t.expression.kind){var a=t.expression.evaluate(e,null,{},r,n);return this._calculate(a,a,a,e)}return this._calculate(t.expression.evaluate(new aa(Math.floor(e.zoom-1),e)),t.expression.evaluate(new aa(Math.floor(e.zoom),e)),t.expression.evaluate(new aa(Math.floor(e.zoom+1),e)),e)}},ma.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},ma.prototype.interpolate=function(t){return t};var va=function(t){this.specification=t};va.prototype.possiblyEvaluate=function(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)},va.prototype.interpolate=function(){return!1};var ya=function(t){for(var e in this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],t){var r=t[e];r.specification.overridable&&this.overridableProperties.push(e);var n=this.defaultPropertyValues[e]=new ia(r,void 0),a=this.defaultTransitionablePropertyValues[e]=new oa(r);this.defaultTransitioningPropertyValues[e]=a.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}};Dn(\"DataDrivenProperty\",da),Dn(\"DataConstantProperty\",pa),Dn(\"CrossFadedDataDrivenProperty\",ga),Dn(\"CrossFadedProperty\",ma),Dn(\"ColorRampProperty\",va);var xa=function(t){function e(e,r){if(t.call(this),this.id=e.id,this.type=e.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},\"custom\"!==e.type&&(this.metadata=(e=e).metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,\"background\"!==e.type&&(this.source=e.source,this.sourceLayer=e[\"source-layer\"],this.filter=e.filter),r.layout&&(this._unevaluatedLayout=new ua(r.layout)),r.paint)){for(var n in this._transitionablePaint=new sa(r.paint),e.paint)this.setPaintProperty(n,e.paint[n],{validate:!1});for(var a in e.layout)this.setLayoutProperty(a,e.layout[a],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new fa(r.paint)}}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},e.prototype.getLayoutProperty=function(t){return\"visibility\"===t?this.visibility:this._unevaluatedLayout.getValue(t)},e.prototype.setLayoutProperty=function(t,e,r){void 0===r&&(r={}),null!=e&&this._validate(En,\"layers.\"+this.id+\".layout.\"+t,t,e,r)||(\"visibility\"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e)},e.prototype.getPaintProperty=function(t){return m(t,\"-transition\")?this._transitionablePaint.getTransition(t.slice(0,-\"-transition\".length)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e&&this._validate(Sn,\"layers.\"+this.id+\".paint.\"+t,t,e,r))return!1;if(m(t,\"-transition\"))return this._transitionablePaint.setTransition(t.slice(0,-\"-transition\".length),e||void 0),!1;var n=this._transitionablePaint._values[t],a=\"cross-faded-data-driven\"===n.property.specification[\"property-type\"],i=n.value.isDataDriven(),o=n.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var s=this._transitionablePaint._values[t].value;return s.isDataDriven()||i||a||this._handleOverridablePaintPropertyUpdate(t,o,s)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){},e.prototype._handleOverridablePaintPropertyUpdate=function(t,e,r){return!1},e.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.visibility},e.prototype.updateTransitions=function(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)},e.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},e.prototype.recalculate=function(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)},e.prototype.serialize=function(){var t={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),y(t,(function(t,e){return!(void 0===t||\"layout\"===e&&!Object.keys(t).length||\"paint\"===e&&!Object.keys(t).length)}))},e.prototype._validate=function(t,e,r,n,a){return void 0===a&&(a={}),(!a||!1!==a.validate)&&Cn(this,t.call(Mn,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:At,style:{glyphs:!0,sprite:!0}}))},e.prototype.is3D=function(){return!1},e.prototype.isTileClipped=function(){return!1},e.prototype.hasOffscreenPass=function(){return!1},e.prototype.resize=function(){},e.prototype.isStateDependent=function(){for(var t in this.paint._values){var e=this.paint.get(t);if(e instanceof ha&&Lr(e.property.specification)&&(\"source\"===e.value.kind||\"composite\"===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(Mt),ba={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},_a=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},wa=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function Ta(t,e){void 0===e&&(e=1);var r=0,n=0;return{members:t.map((function(t){var a=ba[t.type].BYTES_PER_ELEMENT,i=r=ka(r,Math.max(e,a)),o=t.components||1;return n=Math.max(n,a),r+=a*o,{name:t.name,type:t.type,components:o,offset:i}})),size:ka(r,Math.max(n,e)),alignment:e}}function ka(t,e){return Math.ceil(t/e)*e}wa.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},wa.deserialize=function(t){var e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e},wa.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},wa.prototype.clear=function(){this.length=0},wa.prototype.resize=function(t){this.reserve(t),this.length=t},wa.prototype.reserve=function(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},wa.prototype._refreshViews=function(){throw new Error(\"_refreshViews() must be implemented by each concrete StructArray layout\")};var Ma=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t},e}(wa);Ma.prototype.bytesPerElement=4,Dn(\"StructArrayLayout2i4\",Ma);var Aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=4*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,this.int16[i+3]=a,t},e}(wa);Aa.prototype.bytesPerElement=8,Dn(\"StructArrayLayout4i8\",Aa);var Sa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=a,this.int16[s+4]=i,this.int16[s+5]=o,t},e}(wa);Sa.prototype.bytesPerElement=12,Dn(\"StructArrayLayout2i4i12\",Sa);var Ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,o){var s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=a,this.uint8[l+6]=i,this.uint8[l+7]=o,t},e}(wa);Ea.prototype.bytesPerElement=8,Dn(\"StructArrayLayout2i4ub8\",Ea);var Ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,a,i,o,s,l,c)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u){var h=9*t,f=18*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=a,this.uint16[h+4]=i,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint8[f+16]=c,this.uint8[f+17]=u,t},e}(wa);Ca.prototype.bytesPerElement=18,Dn(\"StructArrayLayout8ui2ub18\",Ca);var La=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c,u,h){var f=this.length;return this.resize(f+1),this.emplace(f,t,e,r,n,a,i,o,s,l,c,u,h)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f){var p=12*t;return this.int16[p+0]=e,this.int16[p+1]=r,this.int16[p+2]=n,this.int16[p+3]=a,this.uint16[p+4]=i,this.uint16[p+5]=o,this.uint16[p+6]=s,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=u,this.int16[p+10]=h,this.int16[p+11]=f,t},e}(wa);La.prototype.bytesPerElement=24,Dn(\"StructArrayLayout4i4ui4i24\",La);var Pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=3*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,t},e}(wa);Pa.prototype.bytesPerElement=12,Dn(\"StructArrayLayout3f12\",Pa);var Ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){return this.uint32[1*t+0]=e,t},e}(wa);Ia.prototype.bytesPerElement=4,Dn(\"StructArrayLayout1ul4\",Ia);var za=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,a,i,o,s,l)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c){var u=10*t,h=5*t;return this.int16[u+0]=e,this.int16[u+1]=r,this.int16[u+2]=n,this.int16[u+3]=a,this.int16[u+4]=i,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(wa);za.prototype.bytesPerElement=20,Dn(\"StructArrayLayout6i1ul2ui20\",za);var Oa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=a,this.int16[s+4]=i,this.int16[s+5]=o,t},e}(wa);Oa.prototype.bytesPerElement=12,Dn(\"StructArrayLayout2i2i2i12\",Oa);var Da=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n,a)},e.prototype.emplace=function(t,e,r,n,a,i){var o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=a,this.int16[s+7]=i,t},e}(wa);Da.prototype.bytesPerElement=16,Dn(\"StructArrayLayout2f1f2i16\",Da);var Ra=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=12*t,o=3*t;return this.uint8[i+0]=e,this.uint8[i+1]=r,this.float32[o+1]=n,this.float32[o+2]=a,t},e}(wa);Ra.prototype.bytesPerElement=12,Dn(\"StructArrayLayout2ub2f12\",Ra);var Fa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=3*t;return this.uint16[a+0]=e,this.uint16[a+1]=r,this.uint16[a+2]=n,t},e}(wa);Fa.prototype.bytesPerElement=6,Dn(\"StructArrayLayout3ui6\",Fa);var Ba=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m){var v=this.length;return this.resize(v+1),this.emplace(v,t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v){var y=24*t,x=12*t,b=48*t;return this.int16[y+0]=e,this.int16[y+1]=r,this.uint16[y+2]=n,this.uint16[y+3]=a,this.uint32[x+2]=i,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=c,this.uint16[y+12]=u,this.float32[x+7]=h,this.float32[x+8]=f,this.uint8[b+36]=p,this.uint8[b+37]=d,this.uint8[b+38]=g,this.uint32[x+10]=m,this.int16[y+22]=v,t},e}(wa);Ba.prototype.bytesPerElement=48,Dn(\"StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48\",Ba);var Na=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T,k,M,A,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T,k,M,A,S)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T,k,M,A,S,E){var C=34*t,L=17*t;return this.int16[C+0]=e,this.int16[C+1]=r,this.int16[C+2]=n,this.int16[C+3]=a,this.int16[C+4]=i,this.int16[C+5]=o,this.int16[C+6]=s,this.int16[C+7]=l,this.uint16[C+8]=c,this.uint16[C+9]=u,this.uint16[C+10]=h,this.uint16[C+11]=f,this.uint16[C+12]=p,this.uint16[C+13]=d,this.uint16[C+14]=g,this.uint16[C+15]=m,this.uint16[C+16]=v,this.uint16[C+17]=y,this.uint16[C+18]=x,this.uint16[C+19]=b,this.uint16[C+20]=_,this.uint16[C+21]=w,this.uint16[C+22]=T,this.uint32[L+12]=k,this.float32[L+13]=M,this.float32[L+14]=A,this.float32[L+15]=S,this.float32[L+16]=E,t},e}(wa);Na.prototype.bytesPerElement=68,Dn(\"StructArrayLayout8i15ui1ul4f68\",Na);var ja=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){return this.float32[1*t+0]=e,t},e}(wa);ja.prototype.bytesPerElement=4,Dn(\"StructArrayLayout1f4\",ja);var Ua=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=3*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,t},e}(wa);Ua.prototype.bytesPerElement=6,Dn(\"StructArrayLayout3i6\",Ua);var Va=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=4*t;return this.uint32[2*t+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=n,t},e}(wa);Va.prototype.bytesPerElement=8,Dn(\"StructArrayLayout1ul2ui8\",Va);var qa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t},e}(wa);qa.prototype.bytesPerElement=4,Dn(\"StructArrayLayout2ui4\",qa);var Ha=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){return this.uint16[1*t+0]=e,t},e}(wa);Ha.prototype.bytesPerElement=2,Dn(\"StructArrayLayout1ui2\",Ha);var Ga=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t},e}(wa);Ga.prototype.bytesPerElement=8,Dn(\"StructArrayLayout2f8\",Ga);var Ya=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=4*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,this.float32[i+3]=a,t},e}(wa);Ya.prototype.bytesPerElement=16,Dn(\"StructArrayLayout4f16\",Ya);var Wa=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return r.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},r.x1.get=function(){return this._structArray.int16[this._pos2+2]},r.y1.get=function(){return this._structArray.int16[this._pos2+3]},r.x2.get=function(){return this._structArray.int16[this._pos2+4]},r.y2.get=function(){return this._structArray.int16[this._pos2+5]},r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(e.prototype,r),e}(_a);Wa.prototype.size=20;var Za=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Wa(this,t)},e}(za);Dn(\"CollisionBoxArray\",Za);var Xa=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},r.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},r.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},r.segment.get=function(){return this._structArray.uint16[this._pos2+10]},r.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},r.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},r.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},r.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},r.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},r.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},r.placedOrientation.set=function(t){this._structArray.uint8[this._pos1+37]=t},r.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},r.hidden.set=function(t){this._structArray.uint8[this._pos1+38]=t},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+10]=t},r.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(e.prototype,r),e}(_a);Xa.prototype.size=48;var Ja=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Xa(this,t)},e}(Ba);Dn(\"PlacedSymbolArray\",Ja);var Ka=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},r.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},r.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},r.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},r.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},r.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},r.key.get=function(){return this._structArray.uint16[this._pos2+8]},r.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},r.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},r.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},r.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},r.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},r.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},r.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},r.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},r.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},r.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},r.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},r.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},r.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+12]=t},r.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},r.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},r.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},r.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(e.prototype,r),e}(_a);Ka.prototype.size=68;var Qa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Ka(this,t)},e}(Na);Dn(\"SymbolInstanceArray\",Qa);var $a=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(ja);Dn(\"GlyphOffsetArray\",$a);var ti=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getx=function(t){return this.int16[3*t+0]},e.prototype.gety=function(t){return this.int16[3*t+1]},e.prototype.gettileUnitDistanceFromAnchor=function(t){return this.int16[3*t+2]},e}(Ua);Dn(\"SymbolLineVertexArray\",ti);var ei=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(e.prototype,r),e}(_a);ei.prototype.size=8;var ri=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new ei(this,t)},e}(Va);Dn(\"FeatureIndexArray\",ri);var ni=Ta([{name:\"a_pos\",components:2,type:\"Int16\"}],4).members,ai=function(t){void 0===t&&(t=[]),this.segments=t};function ii(t,e){return 256*(t=l(Math.floor(t),0,255))+l(Math.floor(e),0,255)}ai.prototype.prepareSegment=function(t,e,r,n){var a=this.segments[this.segments.length-1];return t>ai.MAX_VERTEX_ARRAY_LENGTH&&_(\"Max vertices per segment is \"+ai.MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+t),(!a||a.vertexLength+t>ai.MAX_VERTEX_ARRAY_LENGTH||a.sortKey!==n)&&(a={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(a.sortKey=n),this.segments.push(a)),a},ai.prototype.get=function(){return this.segments},ai.prototype.destroy=function(){for(var t=0,e=this.segments;t<e.length;t+=1){var r=e[t];for(var n in r.vaos)r.vaos[n].destroy()}},ai.simpleSegment=function(t,e,r,n){return new ai([{vertexOffset:t,primitiveOffset:e,vertexLength:r,primitiveLength:n,vaos:{},sortKey:0}])},ai.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Dn(\"SegmentVector\",ai);var oi=Ta([{name:\"a_pattern_from\",components:4,type:\"Uint16\"},{name:\"a_pattern_to\",components:4,type:\"Uint16\"},{name:\"a_pixel_ratio_from\",components:1,type:\"Uint8\"},{name:\"a_pixel_ratio_to\",components:1,type:\"Uint8\"}]),si=e((function(t){t.exports=function(t,e){var r,n,a,i,o,s,l,c;for(n=t.length-(r=3&t.length),a=e,o=3432918353,s=461845907,c=0;c<n;)l=255&t.charCodeAt(c)|(255&t.charCodeAt(++c))<<8|(255&t.charCodeAt(++c))<<16|(255&t.charCodeAt(++c))<<24,++c,a=27492+(65535&(i=5*(65535&(a=(a^=l=(65535&(l=(l=(65535&l)*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<13|a>>>19))+((5*(a>>>16)&65535)<<16)&4294967295))+((58964+(i>>>16)&65535)<<16);switch(l=0,r){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:a^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return a^=t.length,a=2246822507*(65535&(a^=a>>>16))+((2246822507*(a>>>16)&65535)<<16)&4294967295,a=3266489909*(65535&(a^=a>>>13))+((3266489909*(a>>>16)&65535)<<16)&4294967295,(a^=a>>>16)>>>0}})),li=e((function(t){t.exports=function(t,e){for(var r,n=t.length,a=e^n,i=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(i)|(255&t.charCodeAt(++i))<<8|(255&t.charCodeAt(++i))<<16|(255&t.charCodeAt(++i))<<24))+((1540483477*(r>>>16)&65535)<<16),a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++i;switch(n){case 3:a^=(255&t.charCodeAt(i+2))<<16;case 2:a^=(255&t.charCodeAt(i+1))<<8;case 1:a=1540483477*(65535&(a^=255&t.charCodeAt(i)))+((1540483477*(a>>>16)&65535)<<16)}return a=1540483477*(65535&(a^=a>>>13))+((1540483477*(a>>>16)&65535)<<16),(a^=a>>>15)>>>0}})),ci=si,ui=li;ci.murmur3=si,ci.murmur2=ui;var hi=function(){this.ids=[],this.positions=[],this.indexed=!1};hi.prototype.add=function(t,e,r,n){this.ids.push(pi(t)),this.positions.push(e,r,n)},hi.prototype.getPositions=function(t){for(var e=pi(t),r=0,n=this.ids.length-1;r<n;){var a=r+n>>1;this.ids[a]>=e?n=a:r=a+1}for(var i=[];this.ids[r]===e;)i.push({index:this.positions[3*r],start:this.positions[3*r+1],end:this.positions[3*r+2]}),r++;return i},hi.serialize=function(t,e){var r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return function t(e,r,n,a){for(;n<a;){for(var i=e[n+a>>1],o=n-1,s=a+1;;){do{o++}while(e[o]<i);do{s--}while(e[s]>i);if(o>=s)break;di(e,o,s),di(r,3*o,3*s),di(r,3*o+1,3*s+1),di(r,3*o+2,3*s+2)}s-n<a-s?(t(e,r,n,s),n=s+1):(t(e,r,s+1,a),a=s)}}(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}},hi.deserialize=function(t){var e=new hi;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e};var fi=Math.pow(2,53)-1;function pi(t){var e=+t;return!isNaN(e)&&e<=fi?e:ci(String(t))}function di(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}Dn(\"FeaturePositionMap\",hi);var gi=function(t,e){this.gl=t.gl,this.location=e},mi=function(t){function e(e,r){t.call(this,e,r),this.current=0}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){this.current!==t&&(this.current=t,this.gl.uniform1i(this.location,t))},e}(gi),vi=function(t){function e(e,r){t.call(this,e,r),this.current=0}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){this.current!==t&&(this.current=t,this.gl.uniform1f(this.location,t))},e}(gi),yi=function(t){function e(e,r){t.call(this,e,r),this.current=[0,0]}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){t[0]===this.current[0]&&t[1]===this.current[1]||(this.current=t,this.gl.uniform2f(this.location,t[0],t[1]))},e}(gi),xi=function(t){function e(e,r){t.call(this,e,r),this.current=[0,0,0]}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]||(this.current=t,this.gl.uniform3f(this.location,t[0],t[1],t[2]))},e}(gi),bi=function(t){function e(e,r){t.call(this,e,r),this.current=[0,0,0,0]}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]&&t[3]===this.current[3]||(this.current=t,this.gl.uniform4f(this.location,t[0],t[1],t[2],t[3]))},e}(gi),_i=function(t){function e(e,r){t.call(this,e,r),this.current=Kt.transparent}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){t.r===this.current.r&&t.g===this.current.g&&t.b===this.current.b&&t.a===this.current.a||(this.current=t,this.gl.uniform4f(this.location,t.r,t.g,t.b,t.a))},e}(gi),wi=new Float32Array(16),Ti=function(t){function e(e,r){t.call(this,e,r),this.current=wi}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){if(t[12]!==this.current[12]||t[0]!==this.current[0])return this.current=t,void this.gl.uniformMatrix4fv(this.location,!1,t);for(var e=1;e<16;e++)if(t[e]!==this.current[e]){this.current=t,this.gl.uniformMatrix4fv(this.location,!1,t);break}},e}(gi);function ki(t){return[ii(255*t.r,255*t.g),ii(255*t.b,255*t.a)]}var Mi=function(t,e,r){this.value=t,this.uniformNames=e.map((function(t){return\"u_\"+t})),this.type=r};Mi.prototype.setUniform=function(t,e,r){t.set(r.constantOr(this.value))},Mi.prototype.getBinding=function(t,e,r){return\"color\"===this.type?new _i(t,e):new vi(t,e)};var Ai=function(t,e){this.uniformNames=e.map((function(t){return\"u_\"+t})),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};Ai.prototype.setConstantPatternPositions=function(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr},Ai.prototype.setUniform=function(t,e,r,n){var a=\"u_pattern_to\"===n?this.patternTo:\"u_pattern_from\"===n?this.patternFrom:\"u_pixel_ratio_to\"===n?this.pixelRatioTo:\"u_pixel_ratio_from\"===n?this.pixelRatioFrom:null;a&&t.set(a)},Ai.prototype.getBinding=function(t,e,r){return\"u_pattern\"===r.substr(0,9)?new bi(t,e):new vi(t,e)};var Si=function(t,e,r,n){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map((function(t){return{name:\"a_\"+t,type:\"Float32\",components:\"color\"===r?2:1,offset:0}})),this.paintVertexArray=new n};Si.prototype.populatePaintArray=function(t,e,r,n,a){var i=this.paintVertexArray.length,o=this.expression.evaluate(new aa(0),e,{},n,[],a);this.paintVertexArray.resize(t),this._setPaintValue(i,t,o)},Si.prototype.updatePaintArray=function(t,e,r,n){var a=this.expression.evaluate({zoom:0},r,n);this._setPaintValue(t,e,a)},Si.prototype._setPaintValue=function(t,e,r){if(\"color\"===this.type)for(var n=ki(r),a=t;a<e;a++)this.paintVertexArray.emplace(a,n[0],n[1]);else{for(var i=t;i<e;i++)this.paintVertexArray.emplace(i,r);this.maxValue=Math.max(this.maxValue,Math.abs(r))}},Si.prototype.upload=function(t){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Si.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var Ei=function(t,e,r,n,a,i){this.expression=t,this.uniformNames=e.map((function(t){return\"u_\"+t+\"_t\"})),this.type=r,this.useIntegerZoom=n,this.zoom=a,this.maxValue=0,this.paintVertexAttributes=e.map((function(t){return{name:\"a_\"+t,type:\"Float32\",components:\"color\"===r?4:2,offset:0}})),this.paintVertexArray=new i};Ei.prototype.populatePaintArray=function(t,e,r,n,a){var i=this.expression.evaluate(new aa(this.zoom),e,{},n,[],a),o=this.expression.evaluate(new aa(this.zoom+1),e,{},n,[],a),s=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(s,t,i,o)},Ei.prototype.updatePaintArray=function(t,e,r,n){var a=this.expression.evaluate({zoom:this.zoom},r,n),i=this.expression.evaluate({zoom:this.zoom+1},r,n);this._setPaintValue(t,e,a,i)},Ei.prototype._setPaintValue=function(t,e,r,n){if(\"color\"===this.type)for(var a=ki(r),i=ki(n),o=t;o<e;o++)this.paintVertexArray.emplace(o,a[0],a[1],i[0],i[1]);else{for(var s=t;s<e;s++)this.paintVertexArray.emplace(s,r,n);this.maxValue=Math.max(this.maxValue,Math.abs(r),Math.abs(n))}},Ei.prototype.upload=function(t){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Ei.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},Ei.prototype.setUniform=function(t,e){var r=this.useIntegerZoom?Math.floor(e.zoom):e.zoom,n=l(this.expression.interpolationFactor(r,this.zoom,this.zoom+1),0,1);t.set(n)},Ei.prototype.getBinding=function(t,e,r){return new vi(t,e)};var Ci=function(t,e,r,n,a,i){this.expression=t,this.type=e,this.useIntegerZoom=r,this.zoom=n,this.layerId=i,this.zoomInPaintVertexArray=new a,this.zoomOutPaintVertexArray=new a};Ci.prototype.populatePaintArray=function(t,e,r){var n=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(t),this.zoomOutPaintVertexArray.resize(t),this._setPaintValues(n,t,e.patterns&&e.patterns[this.layerId],r)},Ci.prototype.updatePaintArray=function(t,e,r,n,a){this._setPaintValues(t,e,r.patterns&&r.patterns[this.layerId],a)},Ci.prototype._setPaintValues=function(t,e,r,n){if(n&&r){var a=n[r.min],i=n[r.mid],o=n[r.max];if(a&&i&&o)for(var s=t;s<e;s++)this.zoomInPaintVertexArray.emplace(s,i.tl[0],i.tl[1],i.br[0],i.br[1],a.tl[0],a.tl[1],a.br[0],a.br[1],i.pixelRatio,a.pixelRatio),this.zoomOutPaintVertexArray.emplace(s,i.tl[0],i.tl[1],i.br[0],i.br[1],o.tl[0],o.tl[1],o.br[0],o.br[1],i.pixelRatio,o.pixelRatio)}},Ci.prototype.upload=function(t){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=t.createVertexBuffer(this.zoomInPaintVertexArray,oi.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=t.createVertexBuffer(this.zoomOutPaintVertexArray,oi.members,this.expression.isStateDependent))},Ci.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var Li=function(t,e,r,n){this.binders={},this.layoutAttributes=n,this._buffers=[];var a=[];for(var i in t.paint._values)if(r(i)){var o=t.paint.get(i);if(o instanceof ha&&Lr(o.property.specification)){var s=Ii(i,t.type),l=o.value,c=o.property.specification.type,u=o.property.useIntegerZoom,h=o.property.specification[\"property-type\"],f=\"cross-faded\"===h||\"cross-faded-data-driven\"===h;if(\"constant\"===l.kind)this.binders[i]=f?new Ai(l.value,s):new Mi(l.value,s,c),a.push(\"/u_\"+i);else if(\"source\"===l.kind||f){var p=zi(i,c,\"source\");this.binders[i]=f?new Ci(l,c,u,e,p,t.id):new Si(l,s,c,p),a.push(\"/a_\"+i)}else{var d=zi(i,c,\"composite\");this.binders[i]=new Ei(l,s,c,u,e,d),a.push(\"/z_\"+i)}}}this.cacheKey=a.sort().join(\"\")};Li.prototype.getMaxValue=function(t){var e=this.binders[t];return e instanceof Si||e instanceof Ei?e.maxValue:0},Li.prototype.populatePaintArrays=function(t,e,r,n,a){for(var i in this.binders){var o=this.binders[i];(o instanceof Si||o instanceof Ei||o instanceof Ci)&&o.populatePaintArray(t,e,r,n,a)}},Li.prototype.setConstantPatternPositions=function(t,e){for(var r in this.binders){var n=this.binders[r];n instanceof Ai&&n.setConstantPatternPositions(t,e)}},Li.prototype.updatePaintArrays=function(t,e,r,n,a){var i=!1;for(var o in t)for(var s=0,l=e.getPositions(o);s<l.length;s+=1){var c=l[s],u=r.feature(c.index);for(var h in this.binders){var f=this.binders[h];if((f instanceof Si||f instanceof Ei||f instanceof Ci)&&!0===f.expression.isStateDependent){var p=n.paint.get(h);f.expression=p.value,f.updatePaintArray(c.start,c.end,u,t[o],a),i=!0}}}return i},Li.prototype.defines=function(){var t=[];for(var e in this.binders){var r=this.binders[e];(r instanceof Mi||r instanceof Ai)&&t.push.apply(t,r.uniformNames.map((function(t){return\"#define HAS_UNIFORM_\"+t})))}return t},Li.prototype.getPaintVertexBuffers=function(){return this._buffers},Li.prototype.getUniforms=function(t,e){var r=[];for(var n in this.binders){var a=this.binders[n];if(a instanceof Mi||a instanceof Ai||a instanceof Ei)for(var i=0,o=a.uniformNames;i<o.length;i+=1){var s=o[i];if(e[s]){var l=a.getBinding(t,e[s],s);r.push({name:s,property:n,binding:l})}}}return r},Li.prototype.setUniforms=function(t,e,r,n){for(var a=0,i=e;a<i.length;a+=1){var o=i[a],s=o.name,l=o.property;this.binders[l].setUniform(o.binding,n,r.get(l),s)}},Li.prototype.updatePaintBuffers=function(t){for(var e in this._buffers=[],this.binders){var r=this.binders[e];if(t&&r instanceof Ci){var n=2===t.fromScale?r.zoomInPaintVertexBuffer:r.zoomOutPaintVertexBuffer;n&&this._buffers.push(n)}else(r instanceof Si||r instanceof Ei)&&r.paintVertexBuffer&&this._buffers.push(r.paintVertexBuffer)}},Li.prototype.upload=function(t){for(var e in this.binders){var r=this.binders[e];(r instanceof Si||r instanceof Ei||r instanceof Ci)&&r.upload(t)}this.updatePaintBuffers()},Li.prototype.destroy=function(){for(var t in this.binders){var e=this.binders[t];(e instanceof Si||e instanceof Ei||e instanceof Ci)&&e.destroy()}};var Pi=function(t,e,r,n){void 0===n&&(n=function(){return!0}),this.programConfigurations={};for(var a=0,i=e;a<i.length;a+=1){var o=i[a];this.programConfigurations[o.id]=new Li(o,r,n,t)}this.needsUpload=!1,this._featureMap=new hi,this._bufferOffset=0};function Ii(t,e){return{\"text-opacity\":[\"opacity\"],\"icon-opacity\":[\"opacity\"],\"text-color\":[\"fill_color\"],\"icon-color\":[\"fill_color\"],\"text-halo-color\":[\"halo_color\"],\"icon-halo-color\":[\"halo_color\"],\"text-halo-blur\":[\"halo_blur\"],\"icon-halo-blur\":[\"halo_blur\"],\"text-halo-width\":[\"halo_width\"],\"icon-halo-width\":[\"halo_width\"],\"line-gap-width\":[\"gapwidth\"],\"line-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"],\"fill-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"],\"fill-extrusion-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"]}[t]||[t.replace(e+\"-\",\"\").replace(/-/g,\"_\")]}function zi(t,e,r){var n={color:{source:Ga,composite:Ya},number:{source:ja,composite:Ga}},a=function(t){return{\"line-pattern\":{source:Ca,composite:Ca},\"fill-pattern\":{source:Ca,composite:Ca},\"fill-extrusion-pattern\":{source:Ca,composite:Ca}}[t]}(t);return a&&a[r]||n[e][r]}Pi.prototype.populatePaintArrays=function(t,e,r,n,a,i){for(var o in this.programConfigurations)this.programConfigurations[o].populatePaintArrays(t,e,n,a,i);void 0!==e.id&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0},Pi.prototype.updatePaintArrays=function(t,e,r,n){for(var a=0,i=r;a<i.length;a+=1){var o=i[a];this.needsUpload=this.programConfigurations[o.id].updatePaintArrays(t,this._featureMap,e,o,n)||this.needsUpload}},Pi.prototype.get=function(t){return this.programConfigurations[t]},Pi.prototype.upload=function(t){if(this.needsUpload){for(var e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1}},Pi.prototype.destroy=function(){for(var t in this.programConfigurations)this.programConfigurations[t].destroy()},Dn(\"ConstantBinder\",Mi),Dn(\"CrossFadedConstantBinder\",Ai),Dn(\"SourceExpressionBinder\",Si),Dn(\"CrossFadedCompositeBinder\",Ci),Dn(\"CompositeExpressionBinder\",Ei),Dn(\"ProgramConfiguration\",Li,{omit:[\"_buffers\"]}),Dn(\"ProgramConfigurationSet\",Pi);var Oi={min:-1*Math.pow(2,14),max:Math.pow(2,14)-1};function Di(t){for(var e=8192/t.extent,r=t.loadGeometry(),n=0;n<r.length;n++)for(var a=r[n],i=0;i<a.length;i++){var o=a[i];o.x=Math.round(o.x*e),o.y=Math.round(o.y*e),(o.x<Oi.min||o.x>Oi.max||o.y<Oi.min||o.y>Oi.max)&&(_(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\"),o.x=l(o.x,Oi.min,Oi.max),o.y=l(o.y,Oi.min,Oi.max))}return r}function Ri(t,e,r,n,a){t.emplaceBack(2*e+(n+1)/2,2*r+(a+1)/2)}var Fi=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Ma,this.indexArray=new Fa,this.segments=new ai,this.programConfigurations=new Pi(ni,t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function Bi(t,e){for(var r=0;r<t.length;r++)if(Wi(e,t[r]))return!0;for(var n=0;n<e.length;n++)if(Wi(t,e[n]))return!0;return!!Vi(t,e)}function Ni(t,e,r){return!!Wi(t,e)||!!Hi(e,t,r)}function ji(t,e){if(1===t.length)return Yi(e,t[0]);for(var r=0;r<e.length;r++)for(var n=e[r],a=0;a<n.length;a++)if(Wi(t,n[a]))return!0;for(var i=0;i<t.length;i++)if(Yi(e,t[i]))return!0;for(var o=0;o<e.length;o++)if(Vi(t,e[o]))return!0;return!1}function Ui(t,e,r){if(t.length>1){if(Vi(t,e))return!0;for(var n=0;n<e.length;n++)if(Hi(e[n],t,r))return!0}for(var a=0;a<t.length;a++)if(Hi(t[a],e,r))return!0;return!1}function Vi(t,e){if(0===t.length||0===e.length)return!1;for(var r=0;r<t.length-1;r++)for(var n=t[r],a=t[r+1],i=0;i<e.length-1;i++)if(qi(n,a,e[i],e[i+1]))return!0;return!1}function qi(t,e,r,n){return w(t,r,n)!==w(e,r,n)&&w(t,e,r)!==w(t,e,n)}function Hi(t,e,r){var n=r*r;if(1===e.length)return t.distSqr(e[0])<n;for(var a=1;a<e.length;a++)if(Gi(t,e[a-1],e[a])<n)return!0;return!1}function Gi(t,e,r){var n=e.distSqr(r);if(0===n)return t.distSqr(e);var a=((t.x-e.x)*(r.x-e.x)+(t.y-e.y)*(r.y-e.y))/n;return t.distSqr(a<0?e:a>1?r:r.sub(e)._mult(a)._add(e))}function Yi(t,e){for(var r,n,a,i=!1,o=0;o<t.length;o++)for(var s=0,l=(r=t[o]).length-1;s<r.length;l=s++)(n=r[s]).y>e.y!=(a=r[l]).y>e.y&&e.x<(a.x-n.x)*(e.y-n.y)/(a.y-n.y)+n.x&&(i=!i);return i}function Wi(t,e){for(var r=!1,n=0,a=t.length-1;n<t.length;a=n++){var i=t[n],o=t[a];i.y>e.y!=o.y>e.y&&e.x<(o.x-i.x)*(e.y-i.y)/(o.y-i.y)+i.x&&(r=!r)}return r}function Zi(t,e,r){var n=r[0],a=r[2];if(t.x<n.x&&e.x<n.x||t.x>a.x&&e.x>a.x||t.y<n.y&&e.y<n.y||t.y>a.y&&e.y>a.y)return!1;var i=w(t,e,r[0]);return i!==w(t,e,r[1])||i!==w(t,e,r[2])||i!==w(t,e,r[3])}function Xi(t,e,r){var n=e.paint.get(t).value;return\"constant\"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function Ji(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Ki(t,e,r,n,i){if(!e[0]&&!e[1])return t;var o=a.convert(e)._mult(i);\"viewport\"===r&&o._rotate(-n);for(var s=[],l=0;l<t.length;l++)s.push(t[l].sub(o));return s}Fi.prototype.populate=function(t,e,r){var n=this.layers[0],a=[],i=null;\"circle\"===n.type&&(i=n.layout.get(\"circle-sort-key\"));for(var o=0,s=t;o<s.length;o+=1){var l=s[o],c=l.feature,u=l.id,h=l.index,f=l.sourceLayerIndex,p=this.layers[0]._featureFilter.needGeometry,d={type:c.type,id:u,properties:c.properties,geometry:p?Di(c):[]};if(this.layers[0]._featureFilter.filter(new aa(this.zoom),d,r)){p||(d.geometry=Di(c));var g=i?i.evaluate(d,{},r):void 0;a.push({id:u,properties:c.properties,type:c.type,sourceLayerIndex:f,index:h,geometry:d.geometry,patterns:{},sortKey:g})}}i&&a.sort((function(t,e){return t.sortKey-e.sortKey}));for(var m=0,v=a;m<v.length;m+=1){var y=v[m],x=y.geometry,b=y.index,_=y.sourceLayerIndex,w=t[b].feature;this.addFeature(y,x,b,r),e.featureIndex.insert(w,x,b,_,this.index)}},Fi.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},Fi.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},Fi.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Fi.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,ni),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0},Fi.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Fi.prototype.addFeature=function(t,e,r,n){for(var a=0,i=e;a<i.length;a+=1)for(var o=0,s=i[a];o<s.length;o+=1){var l=s[o],c=l.x,u=l.y;if(!(c<0||c>=8192||u<0||u>=8192)){var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),f=h.vertexLength;Ri(this.layoutVertexArray,c,u,-1,-1),Ri(this.layoutVertexArray,c,u,1,-1),Ri(this.layoutVertexArray,c,u,1,1),Ri(this.layoutVertexArray,c,u,-1,1),this.indexArray.emplaceBack(f,f+1,f+2),this.indexArray.emplaceBack(f,f+3,f+2),h.vertexLength+=4,h.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n)},Dn(\"CircleBucket\",Fi,{omit:[\"layers\"]});var Qi=new ya({\"circle-sort-key\":new da(At.layout_circle[\"circle-sort-key\"])}),$i={paint:new ya({\"circle-radius\":new da(At.paint_circle[\"circle-radius\"]),\"circle-color\":new da(At.paint_circle[\"circle-color\"]),\"circle-blur\":new da(At.paint_circle[\"circle-blur\"]),\"circle-opacity\":new da(At.paint_circle[\"circle-opacity\"]),\"circle-translate\":new pa(At.paint_circle[\"circle-translate\"]),\"circle-translate-anchor\":new pa(At.paint_circle[\"circle-translate-anchor\"]),\"circle-pitch-scale\":new pa(At.paint_circle[\"circle-pitch-scale\"]),\"circle-pitch-alignment\":new pa(At.paint_circle[\"circle-pitch-alignment\"]),\"circle-stroke-width\":new da(At.paint_circle[\"circle-stroke-width\"]),\"circle-stroke-color\":new da(At.paint_circle[\"circle-stroke-color\"]),\"circle-stroke-opacity\":new da(At.paint_circle[\"circle-stroke-opacity\"])}),layout:Qi},to=\"undefined\"!=typeof Float32Array?Float32Array:Array;function eo(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function ro(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],g=e[12],m=e[13],v=e[14],y=e[15],x=r[0],b=r[1],_=r[2],w=r[3];return t[0]=x*n+b*s+_*h+w*g,t[1]=x*a+b*l+_*f+w*m,t[2]=x*i+b*c+_*p+w*v,t[3]=x*o+b*u+_*d+w*y,t[4]=(x=r[4])*n+(b=r[5])*s+(_=r[6])*h+(w=r[7])*g,t[5]=x*a+b*l+_*f+w*m,t[6]=x*i+b*c+_*p+w*v,t[7]=x*o+b*u+_*d+w*y,t[8]=(x=r[8])*n+(b=r[9])*s+(_=r[10])*h+(w=r[11])*g,t[9]=x*a+b*l+_*f+w*m,t[10]=x*i+b*c+_*p+w*v,t[11]=x*o+b*u+_*d+w*y,t[12]=(x=r[12])*n+(b=r[13])*s+(_=r[14])*h+(w=r[15])*g,t[13]=x*a+b*l+_*f+w*m,t[14]=x*i+b*c+_*p+w*v,t[15]=x*o+b*u+_*d+w*y,t}Math.hypot||(Math.hypot=function(){for(var t=arguments,e=0,r=arguments.length;r--;)e+=t[r]*t[r];return Math.sqrt(e)});var no,ao=ro;function io(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3];return t[0]=r[0]*n+r[4]*a+r[8]*i+r[12]*o,t[1]=r[1]*n+r[5]*a+r[9]*i+r[13]*o,t[2]=r[2]*n+r[6]*a+r[10]*i+r[14]*o,t[3]=r[3]*n+r[7]*a+r[11]*i+r[15]*o,t}no=new to(3),to!=Float32Array&&(no[0]=0,no[1]=0,no[2]=0),function(){var t=new to(4);to!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();var oo=(function(){var t=new to(2);to!=Float32Array&&(t[0]=0,t[1]=0)}(),function(t){function e(e){t.call(this,e,$i)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createBucket=function(t){return new Fi(t)},e.prototype.queryRadius=function(t){var e=t;return Xi(\"circle-radius\",this,e)+Xi(\"circle-stroke-width\",this,e)+Ji(this.paint.get(\"circle-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,a,i,o,s){for(var l=Ki(t,this.paint.get(\"circle-translate\"),this.paint.get(\"circle-translate-anchor\"),i.angle,o),c=this.paint.get(\"circle-radius\").evaluate(e,r)+this.paint.get(\"circle-stroke-width\").evaluate(e,r),u=\"map\"===this.paint.get(\"circle-pitch-alignment\"),h=u?l:function(t,e){return t.map((function(t){return so(t,e)}))}(l,s),f=u?c*o:c,p=0,d=n;p<d.length;p+=1)for(var g=0,m=d[p];g<m.length;g+=1){var v=m[g],y=u?v:so(v,s),x=f,b=io([],[v.x,v.y,0,1],s);if(\"viewport\"===this.paint.get(\"circle-pitch-scale\")&&\"map\"===this.paint.get(\"circle-pitch-alignment\")?x*=b[3]/i.cameraToCenterDistance:\"map\"===this.paint.get(\"circle-pitch-scale\")&&\"viewport\"===this.paint.get(\"circle-pitch-alignment\")&&(x*=i.cameraToCenterDistance/b[3]),Ni(h,y,x))return!0}return!1},e}(xa));function so(t,e){var r=io([],[t.x,t.y,0,1],e);return new a(r[0]/r[3],r[1]/r[3])}var lo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(Fi);function co(t,e,r,n){var a=e.width,i=e.height;if(n){if(n instanceof Uint8ClampedArray)n=new Uint8Array(n.buffer);else if(n.length!==a*i*r)throw new RangeError(\"mismatched image size\")}else n=new Uint8Array(a*i*r);return t.width=a,t.height=i,t.data=n,t}function uo(t,e,r){var n=e.width,a=e.height;if(n!==t.width||a!==t.height){var i=co({},{width:n,height:a},r);ho(t,i,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,n),height:Math.min(t.height,a)},r),t.width=n,t.height=a,t.data=i.data}}function ho(t,e,r,n,a,i){if(0===a.width||0===a.height)return e;if(a.width>t.width||a.height>t.height||r.x>t.width-a.width||r.y>t.height-a.height)throw new RangeError(\"out of range source coordinates for image copy\");if(a.width>e.width||a.height>e.height||n.x>e.width-a.width||n.y>e.height-a.height)throw new RangeError(\"out of range destination coordinates for image copy\");for(var o=t.data,s=e.data,l=0;l<a.height;l++)for(var c=((r.y+l)*t.width+r.x)*i,u=((n.y+l)*e.width+n.x)*i,h=0;h<a.width*i;h++)s[u+h]=o[c+h];return e}Dn(\"HeatmapBucket\",lo,{omit:[\"layers\"]});var fo=function(t,e){co(this,t,1,e)};fo.prototype.resize=function(t){uo(this,t,1)},fo.prototype.clone=function(){return new fo({width:this.width,height:this.height},new Uint8Array(this.data))},fo.copy=function(t,e,r,n,a){ho(t,e,r,n,a,1)};var po=function(t,e){co(this,t,4,e)};po.prototype.resize=function(t){uo(this,t,4)},po.prototype.replace=function(t,e){e?this.data.set(t):this.data=t instanceof Uint8ClampedArray?new Uint8Array(t.buffer):t},po.prototype.clone=function(){return new po({width:this.width,height:this.height},new Uint8Array(this.data))},po.copy=function(t,e,r,n,a){ho(t,e,r,n,a,4)},Dn(\"AlphaImage\",fo),Dn(\"RGBAImage\",po);var go={paint:new ya({\"heatmap-radius\":new da(At.paint_heatmap[\"heatmap-radius\"]),\"heatmap-weight\":new da(At.paint_heatmap[\"heatmap-weight\"]),\"heatmap-intensity\":new pa(At.paint_heatmap[\"heatmap-intensity\"]),\"heatmap-color\":new va(At.paint_heatmap[\"heatmap-color\"]),\"heatmap-opacity\":new pa(At.paint_heatmap[\"heatmap-opacity\"])})};function mo(t,e){for(var r=new Uint8Array(1024),n={},a=0,i=0;a<256;a++,i+=4){n[e]=a/255;var o=t.evaluate(n);r[i+0]=Math.floor(255*o.r/o.a),r[i+1]=Math.floor(255*o.g/o.a),r[i+2]=Math.floor(255*o.b/o.a),r[i+3]=Math.floor(255*o.a)}return new po({width:256,height:1},r)}var vo=function(t){function e(e){t.call(this,e,go),this._updateColorRamp()}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createBucket=function(t){return new lo(t)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){\"heatmap-color\"===t&&this._updateColorRamp()},e.prototype._updateColorRamp=function(){this.colorRamp=mo(this._transitionablePaint._values[\"heatmap-color\"].value.expression,\"heatmapDensity\"),this.colorRampTexture=null},e.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e.prototype.hasOffscreenPass=function(){return 0!==this.paint.get(\"heatmap-opacity\")&&\"none\"!==this.visibility},e}(xa),yo={paint:new ya({\"hillshade-illumination-direction\":new pa(At.paint_hillshade[\"hillshade-illumination-direction\"]),\"hillshade-illumination-anchor\":new pa(At.paint_hillshade[\"hillshade-illumination-anchor\"]),\"hillshade-exaggeration\":new pa(At.paint_hillshade[\"hillshade-exaggeration\"]),\"hillshade-shadow-color\":new pa(At.paint_hillshade[\"hillshade-shadow-color\"]),\"hillshade-highlight-color\":new pa(At.paint_hillshade[\"hillshade-highlight-color\"]),\"hillshade-accent-color\":new pa(At.paint_hillshade[\"hillshade-accent-color\"])})},xo=function(t){function e(e){t.call(this,e,yo)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.hasOffscreenPass=function(){return 0!==this.paint.get(\"hillshade-exaggeration\")&&\"none\"!==this.visibility},e}(xa),bo=Ta([{name:\"a_pos\",components:2,type:\"Int16\"}],4).members,_o=To,wo=To;function To(t,e,r){r=r||2;var n,a,i,o,s,l,c,u=e&&e.length,h=u?e[0]*r:t.length,f=ko(t,0,h,r,!0),p=[];if(!f||f.next===f.prev)return p;if(u&&(f=function(t,e,r,n){var a,i,o,s=[];for(a=0,i=e.length;a<i;a++)(o=ko(t,e[a]*n,a<i-1?e[a+1]*n:t.length,n,!1))===o.next&&(o.steiner=!0),s.push(Do(o));for(s.sort(Po),a=0;a<s.length;a++)Io(s[a],r),r=Mo(r,r.next);return r}(t,e,f,r)),t.length>80*r){n=i=t[0],a=o=t[1];for(var d=r;d<h;d+=r)(s=t[d])<n&&(n=s),(l=t[d+1])<a&&(a=l),s>i&&(i=s),l>o&&(o=l);c=0!==(c=Math.max(i-n,o-a))?1/c:0}return Ao(f,p,r,n,a,c),p}function ko(t,e,r,n,a){var i,o;if(a===Zo(t,e,r,n)>0)for(i=e;i<r;i+=n)o=Go(i,t[i],t[i+1],o);else for(i=r-n;i>=e;i-=n)o=Go(i,t[i],t[i+1],o);return o&&No(o,o.next)&&(Yo(o),o=o.next),o}function Mo(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!No(n,n.next)&&0!==Bo(n.prev,n,n.next))n=n.next;else{if(Yo(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function Ao(t,e,r,n,a,i,o){if(t){!o&&i&&function(t,e,r,n){var a=t;do{null===a.z&&(a.z=Oo(a.x,a.y,e,r,n)),a.prevZ=a.prev,a.nextZ=a.next,a=a.next}while(a!==t);a.prevZ.nextZ=null,a.prevZ=null,function(t){var e,r,n,a,i,o,s,l,c=1;do{for(r=t,t=null,i=null,o=0;r;){for(o++,n=r,s=0,e=0;e<c&&(s++,n=n.nextZ);e++);for(l=c;s>0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(a=r,r=r.nextZ,s--):(a=n,n=n.nextZ,l--),i?i.nextZ=a:t=a,a.prevZ=i,i=a;r=n}i.nextZ=null,c*=2}while(o>1)}(a)}(t,n,a,i);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,i?Eo(t,n,a,i):So(t))e.push(s.i/r),e.push(t.i/r),e.push(l.i/r),Yo(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?Ao(t=Co(Mo(t),e,r),e,r,n,a,i,2):2===o&&Lo(t,e,r,n,a,i):Ao(Mo(t),e,r,n,a,i,1);break}}}function So(t){var e=t.prev,r=t,n=t.next;if(Bo(e,r,n)>=0)return!1;for(var a=t.next.next;a!==t.prev;){if(Ro(e.x,e.y,r.x,r.y,n.x,n.y,a.x,a.y)&&Bo(a.prev,a,a.next)>=0)return!1;a=a.next}return!0}function Eo(t,e,r,n){var a=t.prev,i=t,o=t.next;if(Bo(a,i,o)>=0)return!1;for(var s=a.x>i.x?a.x>o.x?a.x:o.x:i.x>o.x?i.x:o.x,l=a.y>i.y?a.y>o.y?a.y:o.y:i.y>o.y?i.y:o.y,c=Oo(a.x<i.x?a.x<o.x?a.x:o.x:i.x<o.x?i.x:o.x,a.y<i.y?a.y<o.y?a.y:o.y:i.y<o.y?i.y:o.y,e,r,n),u=Oo(s,l,e,r,n),h=t.prevZ,f=t.nextZ;h&&h.z>=c&&f&&f.z<=u;){if(h!==t.prev&&h!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,h.x,h.y)&&Bo(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,f!==t.prev&&f!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,f.x,f.y)&&Bo(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(;h&&h.z>=c;){if(h!==t.prev&&h!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,h.x,h.y)&&Bo(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;f&&f.z<=u;){if(f!==t.prev&&f!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,f.x,f.y)&&Bo(f.prev,f,f.next)>=0)return!1;f=f.nextZ}return!0}function Co(t,e,r){var n=t;do{var a=n.prev,i=n.next.next;!No(a,i)&&jo(a,n,n.next,i)&&qo(a,i)&&qo(i,a)&&(e.push(a.i/r),e.push(n.i/r),e.push(i.i/r),Yo(n),Yo(n.next),n=t=i),n=n.next}while(n!==t);return Mo(n)}function Lo(t,e,r,n,a,i){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Fo(o,s)){var l=Ho(o,s);return o=Mo(o,o.next),l=Mo(l,l.next),Ao(o,e,r,n,a,i),void Ao(l,e,r,n,a,i)}s=s.next}o=o.next}while(o!==t)}function Po(t,e){return t.x-e.x}function Io(t,e){if(e=function(t,e){var r,n=e,a=t.x,i=t.y,o=-1/0;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=a&&s>o){if(o=s,s===a){if(i===n.y)return n;if(i===n.next.y)return n.next}r=n.x<n.next.x?n:n.next}}n=n.next}while(n!==e);if(!r)return null;if(a===o)return r;var l,c=r,u=r.x,h=r.y,f=1/0;n=r;do{a>=n.x&&n.x>=u&&a!==n.x&&Ro(i<h?a:o,i,u,h,i<h?o:a,i,n.x,n.y)&&(l=Math.abs(i-n.y)/(a-n.x),qo(n,t)&&(l<f||l===f&&(n.x>r.x||n.x===r.x&&zo(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=Ho(e,t);Mo(e,e.next),Mo(r,r.next)}}function zo(t,e){return Bo(t.prev,t,e.prev)<0&&Bo(e.next,t,t.next)<0}function Oo(t,e,r,n,a){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*a)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*a)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function Do(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function Ro(t,e,r,n,a,i,o,s){return(a-o)*(e-s)-(t-o)*(i-s)>=0&&(t-o)*(n-s)-(r-o)*(e-s)>=0&&(r-o)*(i-s)-(a-o)*(n-s)>=0}function Fo(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&jo(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(qo(t,e)&&qo(e,t)&&function(t,e){var r=t,n=!1,a=(t.x+e.x)/2,i=(t.y+e.y)/2;do{r.y>i!=r.next.y>i&&r.next.y!==r.y&&a<(r.next.x-r.x)*(i-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(Bo(t.prev,t,e.prev)||Bo(t,e.prev,e))||No(t,e)&&Bo(t.prev,t,t.next)>0&&Bo(e.prev,e,e.next)>0)}function Bo(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function No(t,e){return t.x===e.x&&t.y===e.y}function jo(t,e,r,n){var a=Vo(Bo(t,e,r)),i=Vo(Bo(t,e,n)),o=Vo(Bo(r,n,t)),s=Vo(Bo(r,n,e));return a!==i&&o!==s||!(0!==a||!Uo(t,r,e))||!(0!==i||!Uo(t,n,e))||!(0!==o||!Uo(r,t,n))||!(0!==s||!Uo(r,e,n))}function Uo(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function Vo(t){return t>0?1:t<0?-1:0}function qo(t,e){return Bo(t.prev,t,t.next)<0?Bo(t,e,t.next)>=0&&Bo(t,t.prev,e)>=0:Bo(t,e,t.prev)<0||Bo(t,t.next,e)<0}function Ho(t,e){var r=new Wo(t.i,t.x,t.y),n=new Wo(e.i,e.x,e.y),a=t.next,i=e.prev;return t.next=e,e.prev=t,r.next=a,a.prev=r,n.next=r,r.prev=n,i.next=n,n.prev=i,n}function Go(t,e,r,n){var a=new Wo(t,e,r);return n?(a.next=n.next,a.prev=n,n.next.prev=a,n.next=a):(a.prev=a,a.next=a),a}function Yo(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Wo(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Zo(t,e,r,n){for(var a=0,i=e,o=r-n;i<r;i+=n)a+=(t[o]-t[i])*(t[i+1]+t[o+1]),o=i;return a}function Xo(t,e,r,n,a){!function t(e,r,n,a,i){for(;a>n;){if(a-n>600){var o=a-n+1,s=r-n+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);t(e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(a,Math.floor(r+(o-s)*c/o+u)),i)}var h=e[r],f=n,p=a;for(Jo(e,n,r),i(e[a],h)>0&&Jo(e,n,a);f<p;){for(Jo(e,f,p),f++,p--;i(e[f],h)<0;)f++;for(;i(e[p],h)>0;)p--}0===i(e[n],h)?Jo(e,n,p):Jo(e,++p,a),p<=r&&(n=p+1),r<=p&&(a=p-1)}}(t,e,r||0,n||t.length-1,a||Ko)}function Jo(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function Ko(t,e){return t<e?-1:t>e?1:0}function Qo(t,e){var r=t.length;if(r<=1)return[t];for(var n,a,i=[],o=0;o<r;o++){var s=T(t[o]);0!==s&&(t[o].area=Math.abs(s),void 0===a&&(a=s<0),a===s<0?(n&&i.push(n),n=[t[o]]):n.push(t[o]))}if(n&&i.push(n),e>1)for(var l=0;l<i.length;l++)i[l].length<=e||(Xo(i[l],e,1,i[l].length-1,$o),i[l]=i[l].slice(0,e));return i}function $o(t,e){return e.area-t.area}function ts(t,e,r){for(var n=r.patternDependencies,a=!1,i=0,o=e;i<o.length;i+=1){var s=o[i].paint.get(t+\"-pattern\");s.isConstant()||(a=!0);var l=s.constantOr(null);l&&(a=!0,n[l.to]=!0,n[l.from]=!0)}return a}function es(t,e,r,n,a){for(var i=a.patternDependencies,o=0,s=e;o<s.length;o+=1){var l=s[o],c=l.paint.get(t+\"-pattern\").value;if(\"constant\"!==c.kind){var u=c.evaluate({zoom:n-1},r,{},a.availableImages),h=c.evaluate({zoom:n},r,{},a.availableImages),f=c.evaluate({zoom:n+1},r,{},a.availableImages);h=h&&h.name?h.name:h,f=f&&f.name?f.name:f,i[u=u&&u.name?u.name:u]=!0,i[h]=!0,i[f]=!0,r.patterns[l.id]={min:u,mid:h,max:f}}}return r}To.deviation=function(t,e,r,n){var a=e&&e.length,i=Math.abs(Zo(t,0,a?e[0]*r:t.length,r));if(a)for(var o=0,s=e.length;o<s;o++)i-=Math.abs(Zo(t,e[o]*r,o<s-1?e[o+1]*r:t.length,r));var l=0;for(o=0;o<n.length;o+=3){var c=n[o]*r,u=n[o+1]*r,h=n[o+2]*r;l+=Math.abs((t[c]-t[h])*(t[u+1]-t[c+1])-(t[c]-t[u])*(t[h+1]-t[c+1]))}return 0===i&&0===l?0:Math.abs((l-i)/i)},To.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},n=0,a=0;a<t.length;a++){for(var i=0;i<t[a].length;i++)for(var o=0;o<e;o++)r.vertices.push(t[a][i][o]);a>0&&r.holes.push(n+=t[a-1].length)}return r},_o.default=wo;var rs=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Ma,this.indexArray=new Fa,this.indexArray2=new qa,this.programConfigurations=new Pi(bo,t.layers,t.zoom),this.segments=new ai,this.segments2=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};rs.prototype.populate=function(t,e,r){this.hasPattern=ts(\"fill\",this.layers,e);for(var n=this.layers[0].layout.get(\"fill-sort-key\"),a=[],i=0,o=t;i<o.length;i+=1){var s=o[i],l=s.feature,c=s.id,u=s.index,h=s.sourceLayerIndex,f=this.layers[0]._featureFilter.needGeometry,p={type:l.type,id:c,properties:l.properties,geometry:f?Di(l):[]};if(this.layers[0]._featureFilter.filter(new aa(this.zoom),p,r)){f||(p.geometry=Di(l));var d=n?n.evaluate(p,{},r,e.availableImages):void 0;a.push({id:c,properties:l.properties,type:l.type,sourceLayerIndex:h,index:u,geometry:p.geometry,patterns:{},sortKey:d})}}n&&a.sort((function(t,e){return t.sortKey-e.sortKey}));for(var g=0,m=a;g<m.length;g+=1){var v=m[g],y=v.geometry,x=v.index,b=v.sourceLayerIndex;if(this.hasPattern){var _=es(\"fill\",this.layers,v,this.zoom,e);this.patternFeatures.push(_)}else this.addFeature(v,y,x,r,{});e.featureIndex.insert(t[x].feature,y,x,b,this.index)}},rs.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},rs.prototype.addFeatures=function(t,e,r){for(var n=0,a=this.patternFeatures;n<a.length;n+=1){var i=a[n];this.addFeature(i,i.geometry,i.index,e,r)}},rs.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},rs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},rs.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,bo),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0},rs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},rs.prototype.addFeature=function(t,e,r,n,a){for(var i=0,o=Qo(e,500);i<o.length;i+=1){for(var s=o[i],l=0,c=0,u=s;c<u.length;c+=1)l+=u[c].length;for(var h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray),f=h.vertexLength,p=[],d=[],g=0,m=s;g<m.length;g+=1){var v=m[g];if(0!==v.length){v!==s[0]&&d.push(p.length/2);var y=this.segments2.prepareSegment(v.length,this.layoutVertexArray,this.indexArray2),x=y.vertexLength;this.layoutVertexArray.emplaceBack(v[0].x,v[0].y),this.indexArray2.emplaceBack(x+v.length-1,x),p.push(v[0].x),p.push(v[0].y);for(var b=1;b<v.length;b++)this.layoutVertexArray.emplaceBack(v[b].x,v[b].y),this.indexArray2.emplaceBack(x+b-1,x+b),p.push(v[b].x),p.push(v[b].y);y.vertexLength+=v.length,y.primitiveLength+=v.length}}for(var _=_o(p,d),w=0;w<_.length;w+=3)this.indexArray.emplaceBack(f+_[w],f+_[w+1],f+_[w+2]);h.vertexLength+=l,h.primitiveLength+=_.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,a,n)},Dn(\"FillBucket\",rs,{omit:[\"layers\",\"patternFeatures\"]});var ns=new ya({\"fill-sort-key\":new da(At.layout_fill[\"fill-sort-key\"])}),as={paint:new ya({\"fill-antialias\":new pa(At.paint_fill[\"fill-antialias\"]),\"fill-opacity\":new da(At.paint_fill[\"fill-opacity\"]),\"fill-color\":new da(At.paint_fill[\"fill-color\"]),\"fill-outline-color\":new da(At.paint_fill[\"fill-outline-color\"]),\"fill-translate\":new pa(At.paint_fill[\"fill-translate\"]),\"fill-translate-anchor\":new pa(At.paint_fill[\"fill-translate-anchor\"]),\"fill-pattern\":new ga(At.paint_fill[\"fill-pattern\"])}),layout:ns},is=function(t){function e(e){t.call(this,e,as)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r);var n=this.paint._values[\"fill-outline-color\"];\"constant\"===n.value.kind&&void 0===n.value.value&&(this.paint._values[\"fill-outline-color\"]=this.paint._values[\"fill-color\"])},e.prototype.createBucket=function(t){return new rs(t)},e.prototype.queryRadius=function(){return Ji(this.paint.get(\"fill-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,a,i,o){return ji(Ki(t,this.paint.get(\"fill-translate\"),this.paint.get(\"fill-translate-anchor\"),i.angle,o),n)},e.prototype.isTileClipped=function(){return!0},e}(xa),os=Ta([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal_ed\",components:4,type:\"Int16\"}],4).members,ss=ls;function ls(t,e,r,n,a){this.properties={},this.extent=r,this.type=0,this._pbf=t,this._geometry=-1,this._keys=n,this._values=a,t.readFields(cs,this,e)}function cs(t,e,r){1==t?e.id=r.readVarint():2==t?function(t,e){for(var r=t.readVarint()+t.pos;t.pos<r;){var n=e._keys[t.readVarint()],a=e._values[t.readVarint()];e.properties[n]=a}}(r,e):3==t?e.type=r.readVarint():4==t&&(e._geometry=r.pos)}function us(t){for(var e,r,n=0,a=0,i=t.length,o=i-1;a<i;o=a++)n+=((r=t[o]).x-(e=t[a]).x)*(e.y+r.y);return n}ls.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],ls.prototype.loadGeometry=function(){var t=this._pbf;t.pos=this._geometry;for(var e,r=t.readVarint()+t.pos,n=1,i=0,o=0,s=0,l=[];t.pos<r;){if(i<=0){var c=t.readVarint();n=7&c,i=c>>3}if(i--,1===n||2===n)o+=t.readSVarint(),s+=t.readSVarint(),1===n&&(e&&l.push(e),e=[]),e.push(new a(o,s));else{if(7!==n)throw new Error(\"unknown command \"+n);e&&e.push(e[0].clone())}}return e&&l.push(e),l},ls.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,a=0,i=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos<e;){if(n<=0){var u=t.readVarint();r=7&u,n=u>>3}if(n--,1===r||2===r)(a+=t.readSVarint())<o&&(o=a),a>s&&(s=a),(i+=t.readSVarint())<l&&(l=i),i>c&&(c=i);else if(7!==r)throw new Error(\"unknown command \"+r)}return[o,l,s,c]},ls.prototype.toGeoJSON=function(t,e,r){var n,a,i=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=ls.types[this.type];function u(t){for(var e=0;e<t.length;e++){var r=t[e];t[e]=[360*(r.x+o)/i-180,360/Math.PI*Math.atan(Math.exp((180-360*(r.y+s)/i)*Math.PI/180))-90]}}switch(this.type){case 1:var h=[];for(n=0;n<l.length;n++)h[n]=l[n][0];u(l=h);break;case 2:for(n=0;n<l.length;n++)u(l[n]);break;case 3:for(l=function(t){var e=t.length;if(e<=1)return[t];for(var r,n,a=[],i=0;i<e;i++){var o=us(t[i]);0!==o&&(void 0===n&&(n=o<0),n===o<0?(r&&a.push(r),r=[t[i]]):r.push(t[i]))}return r&&a.push(r),a}(l),n=0;n<l.length;n++)for(a=0;a<l[n].length;a++)u(l[n][a])}1===l.length?l=l[0]:c=\"Multi\"+c;var f={type:\"Feature\",geometry:{type:c,coordinates:l},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};var hs=fs;function fs(t,e){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],t.readFields(ps,this,e),this.length=this._features.length}function ps(t,e,r){15===t?e.version=r.readVarint():1===t?e.name=r.readString():5===t?e.extent=r.readVarint():2===t?e._features.push(r.pos):3===t?e._keys.push(r.readString()):4===t&&e._values.push(function(t){for(var e=null,r=t.readVarint()+t.pos;t.pos<r;){var n=t.readVarint()>>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}(r))}function ds(t,e,r){if(3===t){var n=new hs(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}fs.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new ss(this._pbf,e,this.extent,this._keys,this._values)};var gs={VectorTile:function(t,e){this.layers=t.readFields(ds,{},e)},VectorTileFeature:ss,VectorTileLayer:hs},ms=gs.VectorTileFeature.types,vs=Math.pow(2,13);function ys(t,e,r,n,a,i,o,s){t.emplaceBack(e,r,2*Math.floor(n*vs)+o,a*vs*2,i*vs*2,Math.round(s))}var xs=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Sa,this.indexArray=new Fa,this.programConfigurations=new Pi(os,t.layers,t.zoom),this.segments=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function bs(t,e){return t.x===e.x&&(t.x<0||t.x>8192)||t.y===e.y&&(t.y<0||t.y>8192)}xs.prototype.populate=function(t,e,r){this.features=[],this.hasPattern=ts(\"fill-extrusion\",this.layers,e);for(var n=0,a=t;n<a.length;n+=1){var i=a[n],o=i.feature,s=i.id,l=i.index,c=i.sourceLayerIndex,u=this.layers[0]._featureFilter.needGeometry,h={type:o.type,id:s,properties:o.properties,geometry:u?Di(o):[]};if(this.layers[0]._featureFilter.filter(new aa(this.zoom),h,r)){var f={id:s,sourceLayerIndex:c,index:l,geometry:u?h.geometry:Di(o),properties:o.properties,type:o.type,patterns:{}};void 0!==o.id&&(f.id=o.id),this.hasPattern?this.features.push(es(\"fill-extrusion\",this.layers,f,this.zoom,e)):this.addFeature(f,f.geometry,l,r,{}),e.featureIndex.insert(o,f.geometry,l,c,this.index,!0)}}},xs.prototype.addFeatures=function(t,e,r){for(var n=0,a=this.features;n<a.length;n+=1){var i=a[n];this.addFeature(i,i.geometry,i.index,e,r)}},xs.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},xs.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},xs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},xs.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,os),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0},xs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},xs.prototype.addFeature=function(t,e,r,n,a){for(var i=0,o=Qo(e,500);i<o.length;i+=1){for(var s=o[i],l=0,c=0,u=s;c<u.length;c+=1)l+=u[c].length;for(var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),f=0,p=s;f<p.length;f+=1){var d=p[f];if(0!==d.length&&!((I=d).every((function(t){return t.x<0}))||I.every((function(t){return t.x>8192}))||I.every((function(t){return t.y<0}))||I.every((function(t){return t.y>8192}))))for(var g=0,m=0;m<d.length;m++){var v=d[m];if(m>=1){var y=d[m-1];if(!bs(v,y)){h.vertexLength+4>ai.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=v.sub(y)._perp()._unit(),b=y.dist(v);g+b>32768&&(g=0),ys(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,0,g),ys(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,1,g),ys(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,g+=b),ys(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,g);var _=h.vertexLength;this.indexArray.emplaceBack(_,_+2,_+1),this.indexArray.emplaceBack(_+1,_+2,_+3),h.vertexLength+=4,h.primitiveLength+=2}}}}if(h.vertexLength+l>ai.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),\"Polygon\"===ms[t.type]){for(var w=[],T=[],k=h.vertexLength,M=0,A=s;M<A.length;M+=1){var S=A[M];if(0!==S.length){S!==s[0]&&T.push(w.length/2);for(var E=0;E<S.length;E++){var C=S[E];ys(this.layoutVertexArray,C.x,C.y,0,0,1,1,0),w.push(C.x),w.push(C.y)}}}for(var L=_o(w,T),P=0;P<L.length;P+=3)this.indexArray.emplaceBack(k+L[P],k+L[P+2],k+L[P+1]);h.primitiveLength+=L.length/3,h.vertexLength+=l}}var I;this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,a,n)},Dn(\"FillExtrusionBucket\",xs,{omit:[\"layers\",\"features\"]});var _s={paint:new ya({\"fill-extrusion-opacity\":new pa(At[\"paint_fill-extrusion\"][\"fill-extrusion-opacity\"]),\"fill-extrusion-color\":new da(At[\"paint_fill-extrusion\"][\"fill-extrusion-color\"]),\"fill-extrusion-translate\":new pa(At[\"paint_fill-extrusion\"][\"fill-extrusion-translate\"]),\"fill-extrusion-translate-anchor\":new pa(At[\"paint_fill-extrusion\"][\"fill-extrusion-translate-anchor\"]),\"fill-extrusion-pattern\":new ga(At[\"paint_fill-extrusion\"][\"fill-extrusion-pattern\"]),\"fill-extrusion-height\":new da(At[\"paint_fill-extrusion\"][\"fill-extrusion-height\"]),\"fill-extrusion-base\":new da(At[\"paint_fill-extrusion\"][\"fill-extrusion-base\"]),\"fill-extrusion-vertical-gradient\":new pa(At[\"paint_fill-extrusion\"][\"fill-extrusion-vertical-gradient\"])})},ws=function(t){function e(e){t.call(this,e,_s)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createBucket=function(t){return new xs(t)},e.prototype.queryRadius=function(){return Ji(this.paint.get(\"fill-extrusion-translate\"))},e.prototype.is3D=function(){return!0},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s,l){var c=Ki(t,this.paint.get(\"fill-extrusion-translate\"),this.paint.get(\"fill-extrusion-translate-anchor\"),o.angle,s),u=this.paint.get(\"fill-extrusion-height\").evaluate(e,r),h=this.paint.get(\"fill-extrusion-base\").evaluate(e,r),f=function(t,e,r,n){for(var i=[],o=0,s=t;o<s.length;o+=1){var l=s[o],c=[l.x,l.y,0,1];io(c,c,e),i.push(new a(c[0]/c[3],c[1]/c[3]))}return i}(c,l),p=function(t,e,r,n){for(var i=[],o=[],s=n[8]*e,l=n[9]*e,c=n[10]*e,u=n[11]*e,h=n[8]*r,f=n[9]*r,p=n[10]*r,d=n[11]*r,g=0,m=t;g<m.length;g+=1){for(var v=[],y=[],x=0,b=m[g];x<b.length;x+=1){var _=b[x],w=_.x,T=_.y,k=n[0]*w+n[4]*T+n[12],M=n[1]*w+n[5]*T+n[13],A=n[2]*w+n[6]*T+n[14],S=n[3]*w+n[7]*T+n[15],E=A+c,C=S+u,L=k+h,P=M+f,I=A+p,z=S+d,O=new a((k+s)/C,(M+l)/C);O.z=E/C,v.push(O);var D=new a(L/z,P/z);D.z=I/z,y.push(D)}i.push(v),o.push(y)}return[i,o]}(n,h,u,l);return function(t,e,r){var n=1/0;ji(r,e)&&(n=ks(r,e[0]));for(var a=0;a<e.length;a++)for(var i=e[a],o=t[a],s=0;s<i.length-1;s++){var l=i[s],c=[l,i[s+1],o[s+1],o[s],l];Bi(r,c)&&(n=Math.min(n,ks(r,c)))}return n!==1/0&&n}(p[0],p[1],f)},e}(xa);function Ts(t,e){return t.x*e.x+t.y*e.y}function ks(t,e){if(1===t.length){for(var r,n=0,a=e[n++];!r||a.equals(r);)if(!(r=e[n++]))return 1/0;for(;n<e.length;n++){var i=e[n],o=t[0],s=r.sub(a),l=i.sub(a),c=o.sub(a),u=Ts(s,s),h=Ts(s,l),f=Ts(l,l),p=Ts(c,s),d=Ts(c,l),g=u*f-h*h,m=(f*p-h*d)/g,v=(u*d-h*p)/g,y=a.z*(1-m-v)+r.z*m+i.z*v;if(isFinite(y))return y}return 1/0}for(var x=1/0,b=0,_=e;b<_.length;b+=1)x=Math.min(x,_[b].z);return x}var Ms=Ta([{name:\"a_pos_normal\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],4).members,As=gs.VectorTileFeature.types,Ss=Math.cos(Math.PI/180*37.5),Es=Math.pow(2,14)/.5,Cs=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Ea,this.indexArray=new Fa,this.programConfigurations=new Pi(Ms,t.layers,t.zoom),this.segments=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};Cs.prototype.populate=function(t,e,r){this.hasPattern=ts(\"line\",this.layers,e);for(var n=this.layers[0].layout.get(\"line-sort-key\"),a=[],i=0,o=t;i<o.length;i+=1){var s=o[i],l=s.feature,c=s.id,u=s.index,h=s.sourceLayerIndex,f=this.layers[0]._featureFilter.needGeometry,p={type:l.type,id:c,properties:l.properties,geometry:f?Di(l):[]};if(this.layers[0]._featureFilter.filter(new aa(this.zoom),p,r)){f||(p.geometry=Di(l));var d=n?n.evaluate(p,{},r):void 0;a.push({id:c,properties:l.properties,type:l.type,sourceLayerIndex:h,index:u,geometry:p.geometry,patterns:{},sortKey:d})}}n&&a.sort((function(t,e){return t.sortKey-e.sortKey}));for(var g=0,m=a;g<m.length;g+=1){var v=m[g],y=v.geometry,x=v.index,b=v.sourceLayerIndex;if(this.hasPattern){var _=es(\"line\",this.layers,v,this.zoom,e);this.patternFeatures.push(_)}else this.addFeature(v,y,x,r,{});e.featureIndex.insert(t[x].feature,y,x,b,this.index)}},Cs.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},Cs.prototype.addFeatures=function(t,e,r){for(var n=0,a=this.patternFeatures;n<a.length;n+=1){var i=a[n];this.addFeature(i,i.geometry,i.index,e,r)}},Cs.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},Cs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Cs.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Ms),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0},Cs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Cs.prototype.addFeature=function(t,e,r,n,a){for(var i=this.layers[0].layout,o=i.get(\"line-join\").evaluate(t,{}),s=i.get(\"line-cap\"),l=i.get(\"line-miter-limit\"),c=i.get(\"line-round-limit\"),u=0,h=e;u<h.length;u+=1)this.addLine(h[u],t,o,s,l,c);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,a,n)},Cs.prototype.addLine=function(t,e,r,n,a,i){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,e.properties&&e.properties.hasOwnProperty(\"mapbox_clip_start\")&&e.properties.hasOwnProperty(\"mapbox_clip_end\")){this.clipStart=+e.properties.mapbox_clip_start,this.clipEnd=+e.properties.mapbox_clip_end;for(var o=0;o<t.length-1;o++)this.totalDistance+=t[o].dist(t[o+1]);this.updateScaledDistance()}for(var s=\"Polygon\"===As[e.type],l=t.length;l>=2&&t[l-1].equals(t[l-2]);)l--;for(var c=0;c<l-1&&t[c].equals(t[c+1]);)c++;if(!(l<(s?3:2))){\"bevel\"===r&&(a=1.05);var u,h=this.overscaling<=16?122880/(512*this.overscaling):0,f=this.segments.prepareSegment(10*l,this.layoutVertexArray,this.indexArray),p=void 0,d=void 0,g=void 0,m=void 0;this.e1=this.e2=-1,s&&(m=t[c].sub(u=t[l-2])._unit()._perp());for(var v=c;v<l;v++)if(!(d=v===l-1?s?t[c+1]:void 0:t[v+1])||!t[v].equals(d)){m&&(g=m),u&&(p=u),u=t[v],m=d?d.sub(u)._unit()._perp():g;var y=(g=g||m).add(m);0===y.x&&0===y.y||y._unit();var x=g.x*m.x+g.y*m.y,b=y.x*m.x+y.y*m.y,_=0!==b?1/b:1/0,w=2*Math.sqrt(2-2*b),T=b<Ss&&p&&d,k=g.x*m.y-g.y*m.x>0;if(T&&v>c){var M=u.dist(p);if(M>2*h){var A=u.sub(u.sub(p)._mult(h/M)._round());this.updateDistance(p,A),this.addCurrentVertex(A,g,0,0,f),p=A}}var S=p&&d,E=S?r:s?\"butt\":n;if(S&&\"round\"===E&&(_<i?E=\"miter\":_<=2&&(E=\"fakeround\")),\"miter\"===E&&_>a&&(E=\"bevel\"),\"bevel\"===E&&(_>2&&(E=\"flipbevel\"),_<a&&(E=\"miter\")),p&&this.updateDistance(p,u),\"miter\"===E)y._mult(_),this.addCurrentVertex(u,y,0,0,f);else if(\"flipbevel\"===E){if(_>100)y=m.mult(-1);else{var C=_*g.add(m).mag()/g.sub(m).mag();y._perp()._mult(C*(k?-1:1))}this.addCurrentVertex(u,y,0,0,f),this.addCurrentVertex(u,y.mult(-1),0,0,f)}else if(\"bevel\"===E||\"fakeround\"===E){var L=-Math.sqrt(_*_-1),P=k?L:0,I=k?0:L;if(p&&this.addCurrentVertex(u,g,P,I,f),\"fakeround\"===E)for(var z=Math.round(180*w/Math.PI/20),O=1;O<z;O++){var D=O/z;if(.5!==D){var R=D-.5;D+=D*R*(D-1)*((1.0904+x*(x*(3.55645-1.43519*x)-3.2452))*R*R+(.848013+x*(.215638*x-1.06021)))}var F=m.sub(g)._mult(D)._add(g)._unit()._mult(k?-1:1);this.addHalfVertex(u,F.x,F.y,!1,k,0,f)}d&&this.addCurrentVertex(u,m,-P,-I,f)}else if(\"butt\"===E)this.addCurrentVertex(u,y,0,0,f);else if(\"square\"===E){var B=p?1:-1;this.addCurrentVertex(u,y,B,B,f)}else\"round\"===E&&(p&&(this.addCurrentVertex(u,g,0,0,f),this.addCurrentVertex(u,g,1,1,f,!0)),d&&(this.addCurrentVertex(u,m,-1,-1,f,!0),this.addCurrentVertex(u,m,0,0,f)));if(T&&v<l-1){var N=u.dist(d);if(N>2*h){var j=u.add(d.sub(u)._mult(h/N)._round());this.updateDistance(u,j),this.addCurrentVertex(j,m,0,0,f),u=j}}}}},Cs.prototype.addCurrentVertex=function(t,e,r,n,a,i){void 0===i&&(i=!1);var o=e.y*n-e.x,s=-e.y-e.x*n;this.addHalfVertex(t,e.x+e.y*r,e.y-e.x*r,i,!1,r,a),this.addHalfVertex(t,o,s,i,!0,-n,a),this.distance>Es/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,r,n,a,i))},Cs.prototype.addHalfVertex=function(t,e,r,n,a,i,o){var s=.5*this.scaledDistance;this.layoutVertexArray.emplaceBack((t.x<<1)+(n?1:0),(t.y<<1)+(a?1:0),Math.round(63*e)+128,Math.round(63*r)+128,1+(0===i?0:i<0?-1:1)|(63&s)<<2,s>>6);var l=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),o.primitiveLength++),a?this.e2=l:this.e1=l},Cs.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(Es-1):this.distance},Cs.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},Dn(\"LineBucket\",Cs,{omit:[\"layers\",\"patternFeatures\"]});var Ls=new ya({\"line-cap\":new pa(At.layout_line[\"line-cap\"]),\"line-join\":new da(At.layout_line[\"line-join\"]),\"line-miter-limit\":new pa(At.layout_line[\"line-miter-limit\"]),\"line-round-limit\":new pa(At.layout_line[\"line-round-limit\"]),\"line-sort-key\":new da(At.layout_line[\"line-sort-key\"])}),Ps={paint:new ya({\"line-opacity\":new da(At.paint_line[\"line-opacity\"]),\"line-color\":new da(At.paint_line[\"line-color\"]),\"line-translate\":new pa(At.paint_line[\"line-translate\"]),\"line-translate-anchor\":new pa(At.paint_line[\"line-translate-anchor\"]),\"line-width\":new da(At.paint_line[\"line-width\"]),\"line-gap-width\":new da(At.paint_line[\"line-gap-width\"]),\"line-offset\":new da(At.paint_line[\"line-offset\"]),\"line-blur\":new da(At.paint_line[\"line-blur\"]),\"line-dasharray\":new ma(At.paint_line[\"line-dasharray\"]),\"line-pattern\":new ga(At.paint_line[\"line-pattern\"]),\"line-gradient\":new va(At.paint_line[\"line-gradient\"])}),layout:Ls},Is=new(function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.possiblyEvaluate=function(e,r){return r=new aa(Math.floor(r.zoom),{now:r.now,fadeDuration:r.fadeDuration,zoomHistory:r.zoomHistory,transition:r.transition}),t.prototype.possiblyEvaluate.call(this,e,r)},e.prototype.evaluate=function(e,r,n,a){return r=u({},r,{zoom:Math.floor(r.zoom)}),t.prototype.evaluate.call(this,e,r,n,a)},e}(da))(Ps.paint.properties[\"line-width\"].specification);Is.useIntegerZoom=!0;var zs=function(t){function e(e){t.call(this,e,Ps)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){\"line-gradient\"===t&&this._updateGradient()},e.prototype._updateGradient=function(){this.gradient=mo(this._transitionablePaint._values[\"line-gradient\"].value.expression,\"lineProgress\"),this.gradientTexture=null},e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r),this.paint._values[\"line-floorwidth\"]=Is.possiblyEvaluate(this._transitioningPaint._values[\"line-width\"].value,e)},e.prototype.createBucket=function(t){return new Cs(t)},e.prototype.queryRadius=function(t){var e=t,r=Os(Xi(\"line-width\",this,e),Xi(\"line-gap-width\",this,e)),n=Xi(\"line-offset\",this,e);return r/2+Math.abs(n)+Ji(this.paint.get(\"line-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s){var l=Ki(t,this.paint.get(\"line-translate\"),this.paint.get(\"line-translate-anchor\"),o.angle,s),c=s/2*Os(this.paint.get(\"line-width\").evaluate(e,r),this.paint.get(\"line-gap-width\").evaluate(e,r)),u=this.paint.get(\"line-offset\").evaluate(e,r);return u&&(n=function(t,e){for(var r=[],n=new a(0,0),i=0;i<t.length;i++){for(var o=t[i],s=[],l=0;l<o.length;l++){var c=o[l],u=o[l+1],h=0===l?n:c.sub(o[l-1])._unit()._perp(),f=l===o.length-1?n:u.sub(c)._unit()._perp(),p=h._add(f)._unit();p._mult(1/(p.x*f.x+p.y*f.y)),s.push(p._mult(e)._add(c))}r.push(s)}return r}(n,u*s)),function(t,e,r){for(var n=0;n<e.length;n++){var a=e[n];if(t.length>=3)for(var i=0;i<a.length;i++)if(Wi(t,a[i]))return!0;if(Ui(t,a,r))return!0}return!1}(l,n,c)},e.prototype.isTileClipped=function(){return!0},e}(xa);function Os(t,e){return e>0?e+2*t:t}var Ds=Ta([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"},{name:\"a_pixeloffset\",components:4,type:\"Int16\"}],4),Rs=Ta([{name:\"a_projected_pos\",components:3,type:\"Float32\"}],4),Fs=(Ta([{name:\"a_fade_opacity\",components:1,type:\"Uint32\"}],4),Ta([{name:\"a_placed\",components:2,type:\"Uint8\"},{name:\"a_shift\",components:2,type:\"Float32\"}])),Bs=(Ta([{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]),Ta([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"}],4)),Ns=Ta([{name:\"a_pos\",components:2,type:\"Float32\"},{name:\"a_radius\",components:1,type:\"Float32\"},{name:\"a_flags\",components:2,type:\"Int16\"}],4);function js(t,e,r){return t.sections.forEach((function(t){t.text=function(t,e,r){var n=e.layout.get(\"text-transform\").evaluate(r,{});return\"uppercase\"===n?t=t.toLocaleUpperCase():\"lowercase\"===n&&(t=t.toLocaleLowerCase()),na.applyArabicShaping&&(t=na.applyArabicShaping(t)),t}(t.text,e,r)})),t}Ta([{name:\"triangle\",components:3,type:\"Uint16\"}]),Ta([{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"vertexStartIndex\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Uint8\",name:\"writingMode\"},{type:\"Uint8\",name:\"placedOrientation\"},{type:\"Uint8\",name:\"hidden\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Int16\",name:\"associatedIconIndex\"}]),Ta([{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Int16\",name:\"rightJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"centerJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"leftJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedTextSymbolIndex\"},{type:\"Int16\",name:\"placedIconSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedIconSymbolIndex\"},{type:\"Uint16\",name:\"key\"},{type:\"Uint16\",name:\"textBoxStartIndex\"},{type:\"Uint16\",name:\"textBoxEndIndex\"},{type:\"Uint16\",name:\"verticalTextBoxStartIndex\"},{type:\"Uint16\",name:\"verticalTextBoxEndIndex\"},{type:\"Uint16\",name:\"iconBoxStartIndex\"},{type:\"Uint16\",name:\"iconBoxEndIndex\"},{type:\"Uint16\",name:\"verticalIconBoxStartIndex\"},{type:\"Uint16\",name:\"verticalIconBoxEndIndex\"},{type:\"Uint16\",name:\"featureIndex\"},{type:\"Uint16\",name:\"numHorizontalGlyphVertices\"},{type:\"Uint16\",name:\"numVerticalGlyphVertices\"},{type:\"Uint16\",name:\"numIconVertices\"},{type:\"Uint16\",name:\"numVerticalIconVertices\"},{type:\"Uint16\",name:\"useRuntimeCollisionCircles\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Float32\",name:\"textBoxScale\"},{type:\"Float32\",components:2,name:\"textOffset\"},{type:\"Float32\",name:\"collisionCircleDiameter\"}]),Ta([{type:\"Float32\",name:\"offsetX\"}]),Ta([{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"},{type:\"Int16\",name:\"tileUnitDistanceFromAnchor\"}]);var Us={\"!\":\"\\ufe15\",\"#\":\"\\uff03\",$:\"\\uff04\",\"%\":\"\\uff05\",\"&\":\"\\uff06\",\"(\":\"\\ufe35\",\")\":\"\\ufe36\",\"*\":\"\\uff0a\",\"+\":\"\\uff0b\",\",\":\"\\ufe10\",\"-\":\"\\ufe32\",\".\":\"\\u30fb\",\"/\":\"\\uff0f\",\":\":\"\\ufe13\",\";\":\"\\ufe14\",\"<\":\"\\ufe3f\",\"=\":\"\\uff1d\",\">\":\"\\ufe40\",\"?\":\"\\ufe16\",\"@\":\"\\uff20\",\"[\":\"\\ufe47\",\"\\\\\":\"\\uff3c\",\"]\":\"\\ufe48\",\"^\":\"\\uff3e\",_:\"\\ufe33\",\"`\":\"\\uff40\",\"{\":\"\\ufe37\",\"|\":\"\\u2015\",\"}\":\"\\ufe38\",\"~\":\"\\uff5e\",\"\\xa2\":\"\\uffe0\",\"\\xa3\":\"\\uffe1\",\"\\xa5\":\"\\uffe5\",\"\\xa6\":\"\\uffe4\",\"\\xac\":\"\\uffe2\",\"\\xaf\":\"\\uffe3\",\"\\u2013\":\"\\ufe32\",\"\\u2014\":\"\\ufe31\",\"\\u2018\":\"\\ufe43\",\"\\u2019\":\"\\ufe44\",\"\\u201c\":\"\\ufe41\",\"\\u201d\":\"\\ufe42\",\"\\u2026\":\"\\ufe19\",\"\\u2027\":\"\\u30fb\",\"\\u20a9\":\"\\uffe6\",\"\\u3001\":\"\\ufe11\",\"\\u3002\":\"\\ufe12\",\"\\u3008\":\"\\ufe3f\",\"\\u3009\":\"\\ufe40\",\"\\u300a\":\"\\ufe3d\",\"\\u300b\":\"\\ufe3e\",\"\\u300c\":\"\\ufe41\",\"\\u300d\":\"\\ufe42\",\"\\u300e\":\"\\ufe43\",\"\\u300f\":\"\\ufe44\",\"\\u3010\":\"\\ufe3b\",\"\\u3011\":\"\\ufe3c\",\"\\u3014\":\"\\ufe39\",\"\\u3015\":\"\\ufe3a\",\"\\u3016\":\"\\ufe17\",\"\\u3017\":\"\\ufe18\",\"\\uff01\":\"\\ufe15\",\"\\uff08\":\"\\ufe35\",\"\\uff09\":\"\\ufe36\",\"\\uff0c\":\"\\ufe10\",\"\\uff0d\":\"\\ufe32\",\"\\uff0e\":\"\\u30fb\",\"\\uff1a\":\"\\ufe13\",\"\\uff1b\":\"\\ufe14\",\"\\uff1c\":\"\\ufe3f\",\"\\uff1e\":\"\\ufe40\",\"\\uff1f\":\"\\ufe16\",\"\\uff3b\":\"\\ufe47\",\"\\uff3d\":\"\\ufe48\",\"\\uff3f\":\"\\ufe33\",\"\\uff5b\":\"\\ufe37\",\"\\uff5c\":\"\\u2015\",\"\\uff5d\":\"\\ufe38\",\"\\uff5f\":\"\\ufe35\",\"\\uff60\":\"\\ufe36\",\"\\uff61\":\"\\ufe12\",\"\\uff62\":\"\\ufe41\",\"\\uff63\":\"\\ufe42\"},Vs=function(t,e,r,n,a){var i,o,s=8*a-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?a-1:0,f=r?-1:1,p=t[e+h];for(h+=f,i=p&(1<<-u)-1,p>>=-u,u+=s;u>0;i=256*i+t[e+h],h+=f,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===i)i=1-c;else{if(i===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),i-=c}return(p?-1:1)*o*Math.pow(2,i-n)},qs=function(t,e,r,n,a,i){var o,s,l,c=8*i-a-1,u=(1<<c)-1,h=u>>1,f=23===a?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,a),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,a),o=0));a>=8;t[r+p]=255&s,p+=d,s/=256,a-=8);for(o=o<<a|s,c+=a;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*g},Hs=Gs;function Gs(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}Gs.Varint=0,Gs.Fixed64=1,Gs.Bytes=2,Gs.Fixed32=5;var Ys=\"undefined\"==typeof TextDecoder?null:new TextDecoder(\"utf8\");function Ws(t){return t.type===Gs.Bytes?t.readVarint()+t.pos:t.pos+1}function Zs(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function Xs(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var a=r.pos-1;a>=t;a--)r.buf[a+n]=r.buf[a]}function Js(t,e){for(var r=0;r<t.length;r++)e.writeVarint(t[r])}function Ks(t,e){for(var r=0;r<t.length;r++)e.writeSVarint(t[r])}function Qs(t,e){for(var r=0;r<t.length;r++)e.writeFloat(t[r])}function $s(t,e){for(var r=0;r<t.length;r++)e.writeDouble(t[r])}function tl(t,e){for(var r=0;r<t.length;r++)e.writeBoolean(t[r])}function el(t,e){for(var r=0;r<t.length;r++)e.writeFixed32(t[r])}function rl(t,e){for(var r=0;r<t.length;r++)e.writeSFixed32(t[r])}function nl(t,e){for(var r=0;r<t.length;r++)e.writeFixed64(t[r])}function al(t,e){for(var r=0;r<t.length;r++)e.writeSFixed64(t[r])}function il(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function ol(t,e,r){t[r]=e,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function sl(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function ll(t,e,r){1===t&&r.readMessage(cl,e)}function cl(t,e,r){if(3===t){var n=r.readMessage(ul,{}),a=n.width,i=n.height,o=n.left,s=n.top,l=n.advance;e.push({id:n.id,bitmap:new fo({width:a+6,height:i+6},n.bitmap),metrics:{width:a,height:i,left:o,top:s,advance:l}})}}function ul(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}function hl(t){for(var e=0,r=0,n=0,a=t;n<a.length;n+=1){var i=a[n];e+=i.w*i.h,r=Math.max(r,i.w)}t.sort((function(t,e){return e.h-t.h}));for(var o=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}],s=0,l=0,c=0,u=t;c<u.length;c+=1)for(var h=u[c],f=o.length-1;f>=0;f--){var p=o[f];if(!(h.w>p.w||h.h>p.h)){if(h.x=p.x,h.y=p.y,l=Math.max(l,h.y+h.h),s=Math.max(s,h.x+h.w),h.w===p.w&&h.h===p.h){var d=o.pop();f<o.length&&(o[f]=d)}else h.h===p.h?(p.x+=h.w,p.w-=h.w):h.w===p.w?(p.y+=h.h,p.h-=h.h):(o.push({x:p.x+h.w,y:p.y,w:p.w-h.w,h:h.h}),p.y+=h.h,p.h-=h.h);break}}return{w:s,h:l,fill:e/(s*l)||0}}Gs.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos<r;){var n=this.readVarint(),a=n>>3,i=this.pos;this.type=7&n,t(a,e,this),this.pos===i&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=il(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=sl(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=il(this.buf,this.pos)+4294967296*il(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=il(this.buf,this.pos)+4294967296*sl(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=Vs(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Vs(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,a,i=r.buf;if(n=(112&(a=i[r.pos++]))>>4,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<3,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<10,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<17,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<24,a<128)return Zs(t,n,e);if(n|=(1&(a=i[r.pos++]))<<31,a<128)return Zs(t,n,e);throw new Error(\"Expected varint not more than 10 bytes\")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&Ys?function(t,e,r){return Ys.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n=\"\",a=e;a<r;){var i,o,s,l=t[a],c=null,u=l>239?4:l>223?3:l>191?2:1;if(a+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(i=t[a+1]))&&(c=(31&l)<<6|63&i)<=127&&(c=null):3===u?(o=t[a+2],128==(192&(i=t[a+1]))&&128==(192&o)&&((c=(15&l)<<12|(63&i)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(o=t[a+2],s=t[a+3],128==(192&(i=t[a+1]))&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&i)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,n+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),n+=String.fromCharCode(c),a+=u}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==Gs.Bytes)return t.push(this.readVarint(e));var r=Ws(this);for(t=t||[];this.pos<r;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){if(this.type!==Gs.Bytes)return t.push(this.readSVarint());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){if(this.type!==Gs.Bytes)return t.push(this.readBoolean());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){if(this.type!==Gs.Bytes)return t.push(this.readFloat());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){if(this.type!==Gs.Bytes)return t.push(this.readDouble());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){if(this.type!==Gs.Bytes)return t.push(this.readFixed32());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){if(this.type!==Gs.Bytes)return t.push(this.readSFixed32());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){if(this.type!==Gs.Bytes)return t.push(this.readFixed64());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){if(this.type!==Gs.Bytes)return t.push(this.readSFixed64());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===Gs.Varint)for(;this.buf[this.pos++]>127;);else if(e===Gs.Bytes)this.pos=this.readVarint()+this.pos;else if(e===Gs.Fixed32)this.pos+=4;else{if(e!==Gs.Fixed64)throw new Error(\"Unimplemented type: \"+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),ol(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),ol(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),ol(this.buf,-1&t,this.pos),ol(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),ol(this.buf,-1&t,this.pos),ol(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeVarint:function(t){(t=+t||0)>268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,r.buf[r.pos]=127&(t>>>=7)}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,a,i=0;i<e.length;i++){if((n=e.charCodeAt(i))>55295&&n<57344){if(!a){n>56319||i+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):a=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,a=n;continue}n=a-55296<<10|n-56320|65536,a=null}else a&&(t[r++]=239,t[r++]=191,t[r++]=189,a=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&Xs(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),qs(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),qs(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r<e;r++)this.buf[this.pos++]=t[r]},writeRawMessage:function(t,e){this.pos++;var r=this.pos;t(e,this);var n=this.pos-r;n>=128&&Xs(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,Gs.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,Js,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Ks,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,tl,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,Qs,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,$s,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,el,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,rl,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,nl,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,al,e)},writeBytesField:function(t,e){this.writeTag(t,Gs.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,Gs.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,Gs.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,Gs.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var fl=function(t,e){var r=e.pixelRatio,n=e.version,a=e.stretchX,i=e.stretchY,o=e.content;this.paddedRect=t,this.pixelRatio=r,this.stretchX=a,this.stretchY=i,this.content=o,this.version=n},pl={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};pl.tl.get=function(){return[this.paddedRect.x+1,this.paddedRect.y+1]},pl.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]},pl.tlbr.get=function(){return this.tl.concat(this.br)},pl.displaySize.get=function(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]},Object.defineProperties(fl.prototype,pl);var dl=function(t,e){var r={},n={};this.haveRenderCallbacks=[];var a=[];this.addImages(t,r,a),this.addImages(e,n,a);var i=hl(a),o=new po({width:i.w||1,height:i.h||1});for(var s in t){var l=t[s],c=r[s].paddedRect;po.copy(l.data,o,{x:0,y:0},{x:c.x+1,y:c.y+1},l.data)}for(var u in e){var h=e[u],f=n[u].paddedRect,p=f.x+1,d=f.y+1,g=h.data.width,m=h.data.height;po.copy(h.data,o,{x:0,y:0},{x:p,y:d},h.data),po.copy(h.data,o,{x:0,y:m-1},{x:p,y:d-1},{width:g,height:1}),po.copy(h.data,o,{x:0,y:0},{x:p,y:d+m},{width:g,height:1}),po.copy(h.data,o,{x:g-1,y:0},{x:p-1,y:d},{width:1,height:m}),po.copy(h.data,o,{x:0,y:0},{x:p+g,y:d},{width:1,height:m})}this.image=o,this.iconPositions=r,this.patternPositions=n};dl.prototype.addImages=function(t,e,r){for(var n in t){var a=t[n],i={x:0,y:0,w:a.data.width+2,h:a.data.height+2};r.push(i),e[n]=new fl(i,a),a.hasRenderCallback&&this.haveRenderCallbacks.push(n)}},dl.prototype.patchUpdatedImages=function(t,e){for(var r in t.dispatchRenderCallbacks(this.haveRenderCallbacks),t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e)},dl.prototype.patchUpdatedImage=function(t,e,r){if(t&&e&&t.version!==e.version){t.version=e.version;var n=t.tl;r.update(e.data,void 0,{x:n[0],y:n[1]})}},Dn(\"ImagePosition\",fl),Dn(\"ImageAtlas\",dl);var gl={horizontal:1,vertical:2,horizontalOnly:3},ml=function(){this.scale=1,this.fontStack=\"\",this.imageName=null};ml.forText=function(t,e){var r=new ml;return r.scale=t||1,r.fontStack=e,r},ml.forImage=function(t){var e=new ml;return e.imageName=t,e};var vl=function(){this.text=\"\",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};function yl(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g){var m,v=vl.fromFeature(t,a);h===gl.vertical&&v.verticalizePunctuation();var y=na.processBidirectionalText,x=na.processStyledBidirectionalText;if(y&&1===v.sections.length){m=[];for(var b=0,_=y(v.toString(),Ml(v,c,i,e,n,p,d));b<_.length;b+=1){var w=_[b],T=new vl;T.text=w,T.sections=v.sections;for(var k=0;k<w.length;k++)T.sectionIndex.push(0);m.push(T)}}else if(x){m=[];for(var M=0,A=x(v.text,v.sectionIndex,Ml(v,c,i,e,n,p,d));M<A.length;M+=1){var S=A[M],E=new vl;E.text=S[0],E.sectionIndex=S[1],E.sections=v.sections,m.push(E)}}else m=function(t,e){for(var r=[],n=t.text,a=0,i=0,o=e;i<o.length;i+=1){var s=o[i];r.push(t.substring(a,s)),a=s}return a<n.length&&r.push(t.substring(a,n.length)),r}(v,Ml(v,c,i,e,n,p,d));var C=[],L={positionedLines:C,text:v.toString(),top:u[1],bottom:u[1],left:u[0],right:u[0],writingMode:h,iconsInText:!1,verticalizable:!1};return function(t,e,r,n,a,i,o,s,l,c,u,h){for(var f=0,p=-17,d=0,g=0,m=\"right\"===s?1:\"left\"===s?0:.5,v=0,y=0,x=a;y<x.length;y+=1){var b=x[y];b.trim();var _=b.getMaxScale(),w=24*(_-1),T={positionedGlyphs:[],lineOffset:0};t.positionedLines[v]=T;var k=T.positionedGlyphs,M=0;if(b.length()){for(var A=0;A<b.length();A++){var S=b.getSection(A),E=b.getSectionIndex(A),C=b.getCharCode(A),L=0,P=null,I=null,z=null,O=24,D=!(l===gl.horizontal||!u&&!Hn(C)||u&&(xl[C]||(H=C,Vn.Arabic(H)||Vn[\"Arabic Supplement\"](H)||Vn[\"Arabic Extended-A\"](H)||Vn[\"Arabic Presentation Forms-A\"](H)||Vn[\"Arabic Presentation Forms-B\"](H))));if(S.imageName){var R=n[S.imageName];if(!R)continue;z=S.imageName,t.iconsInText=t.iconsInText||!0,I=R.paddedRect;var F=R.displaySize;S.scale=24*S.scale/h,L=w+(24-F[1]*S.scale),O=(P={width:F[0],height:F[1],left:1,top:-3,advance:D?F[1]:F[0]}).advance;var B=D?F[0]*S.scale-24*_:F[1]*S.scale-24*_;B>0&&B>M&&(M=B)}else{var N=r[S.fontStack],j=N&&N[C];if(j&&j.rect)I=j.rect,P=j.metrics;else{var U=e[S.fontStack],V=U&&U[C];if(!V)continue;P=V.metrics}L=24*(_-S.scale)}D?(t.verticalizable=!0,k.push({glyph:C,imageName:z,x:f,y:p+L,vertical:D,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:I}),f+=O*S.scale+c):(k.push({glyph:C,imageName:z,x:f,y:p+L,vertical:D,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:I}),f+=P.advance*S.scale+c)}0!==k.length&&(d=Math.max(f-c,d),Sl(k,0,k.length-1,m,M)),f=0;var q=i*_+M;T.lineOffset=Math.max(M,w),p+=q,g=Math.max(q,g),++v}else p+=i,++v}var H,G=p- -17,Y=Al(o),W=Y.horizontalAlign,Z=Y.verticalAlign;(function(t,e,r,n,a,i,o,s,l){var c,u=(e-r)*a;c=i!==o?-s*n- -17:(-n*l+.5)*o;for(var h=0,f=t;h<f.length;h+=1)for(var p=0,d=f[h].positionedGlyphs;p<d.length;p+=1){var g=d[p];g.x+=u,g.y+=c}})(t.positionedLines,m,W,Z,d,g,i,G,a.length),t.top+=-Z*G,t.bottom=t.top+G,t.left+=-W*d,t.right=t.left+d}(L,e,r,n,m,o,s,l,h,c,f,g),!function(t){for(var e=0,r=t;e<r.length;e+=1)if(0!==r[e].positionedGlyphs.length)return!1;return!0}(C)&&L}vl.fromFeature=function(t,e){for(var r=new vl,n=0;n<t.sections.length;n++){var a=t.sections[n];a.image?r.addImageSection(a):r.addTextSection(a,e)}return r},vl.prototype.length=function(){return this.text.length},vl.prototype.getSection=function(t){return this.sections[this.sectionIndex[t]]},vl.prototype.getSectionIndex=function(t){return this.sectionIndex[t]},vl.prototype.getCharCode=function(t){return this.text.charCodeAt(t)},vl.prototype.verticalizePunctuation=function(){this.text=function(t){for(var e=\"\",r=0;r<t.length;r++){var n=t.charCodeAt(r+1)||null,a=t.charCodeAt(r-1)||null;e+=n&&Gn(n)&&!Us[t[r+1]]||a&&Gn(a)&&!Us[t[r-1]]||!Us[t[r]]?t[r]:Us[t[r]]}return e}(this.text)},vl.prototype.trim=function(){for(var t=0,e=0;e<this.text.length&&xl[this.text.charCodeAt(e)];e++)t++;for(var r=this.text.length,n=this.text.length-1;n>=0&&n>=t&&xl[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(t,r),this.sectionIndex=this.sectionIndex.slice(t,r)},vl.prototype.substring=function(t,e){var r=new vl;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r},vl.prototype.toString=function(){return this.text},vl.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,r){return Math.max(e,t.sections[r].scale)}),0)},vl.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(ml.forText(t.scale,t.fontStack||e));for(var r=this.sections.length-1,n=0;n<t.text.length;++n)this.sectionIndex.push(r)},vl.prototype.addImageSection=function(t){var e=t.image?t.image.name:\"\";if(0!==e.length){var r=this.getNextImageSectionCharCode();r?(this.text+=String.fromCharCode(r),this.sections.push(ml.forImage(e)),this.sectionIndex.push(this.sections.length-1)):_(\"Reached maximum number of images 6401\")}else _(\"Can't add FormattedSection with an empty image.\")},vl.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)};var xl={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},bl={};function _l(t,e,r,n,a,i){if(e.imageName){var o=n[e.imageName];return o?o.displaySize[0]*e.scale*24/i+a:0}var s=r[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+a:0}function wl(t,e,r,n){var a=Math.pow(t-e,2);return n?t<e?a/2:2*a:a+Math.abs(r)*r}function Tl(t,e,r){var n=0;return 10===t&&(n-=1e4),r&&(n+=150),40!==t&&65288!==t||(n+=50),41!==e&&65289!==e||(n+=50),n}function kl(t,e,r,n,a,i){for(var o=null,s=wl(e,r,a,i),l=0,c=n;l<c.length;l+=1){var u=c[l],h=wl(e-u.x,r,a,i)+u.badness;h<=s&&(o=u,s=h)}return{index:t,x:e,priorBreak:o,badness:s}}function Ml(t,e,r,n,a,i,o){if(\"point\"!==i)return[];if(!t)return[];for(var s,l=[],c=function(t,e,r,n,a,i){for(var o=0,s=0;s<t.length();s++){var l=t.getSection(s);o+=_l(t.getCharCode(s),l,n,a,e,i)}return o/Math.max(1,Math.ceil(o/r))}(t,e,r,n,a,o),u=t.text.indexOf(\"\\u200b\")>=0,h=0,f=0;f<t.length();f++){var p=t.getSection(f),d=t.getCharCode(f);if(xl[d]||(h+=_l(d,p,n,a,e,o)),f<t.length()-1){var g=!((s=d)<11904||!(Vn[\"Bopomofo Extended\"](s)||Vn.Bopomofo(s)||Vn[\"CJK Compatibility Forms\"](s)||Vn[\"CJK Compatibility Ideographs\"](s)||Vn[\"CJK Compatibility\"](s)||Vn[\"CJK Radicals Supplement\"](s)||Vn[\"CJK Strokes\"](s)||Vn[\"CJK Symbols and Punctuation\"](s)||Vn[\"CJK Unified Ideographs Extension A\"](s)||Vn[\"CJK Unified Ideographs\"](s)||Vn[\"Enclosed CJK Letters and Months\"](s)||Vn[\"Halfwidth and Fullwidth Forms\"](s)||Vn.Hiragana(s)||Vn[\"Ideographic Description Characters\"](s)||Vn[\"Kangxi Radicals\"](s)||Vn[\"Katakana Phonetic Extensions\"](s)||Vn.Katakana(s)||Vn[\"Vertical Forms\"](s)||Vn[\"Yi Radicals\"](s)||Vn[\"Yi Syllables\"](s)));(bl[d]||g||p.imageName)&&l.push(kl(f+1,h,c,l,Tl(d,t.getCharCode(f+1),g&&u),!1))}}return function t(e){return e?t(e.priorBreak).concat(e.index):[]}(kl(t.length(),h,c,l,0,!0))}function Al(t){var e=.5,r=.5;switch(t){case\"right\":case\"top-right\":case\"bottom-right\":e=1;break;case\"left\":case\"top-left\":case\"bottom-left\":e=0}switch(t){case\"bottom\":case\"bottom-right\":case\"bottom-left\":r=1;break;case\"top\":case\"top-right\":case\"top-left\":r=0}return{horizontalAlign:e,verticalAlign:r}}function Sl(t,e,r,n,a){if(n||a)for(var i=t[r],o=(t[r].x+i.metrics.advance*i.scale)*n,s=e;s<=r;s++)t[s].x-=o,t[s].y+=a}function El(t,e,r,n,a,i){var o,s=t.image;if(s.content){var l=s.content,c=s.pixelRatio||1;o=[l[0]/c,l[1]/c,s.displaySize[0]-l[2]/c,s.displaySize[1]-l[3]/c]}var u,h,f,p,d=e.left*i,g=e.right*i;\"width\"===r||\"both\"===r?(p=a[0]+d-n[3],h=a[0]+g+n[1]):h=(p=a[0]+(d+g-s.displaySize[0])/2)+s.displaySize[0];var m=e.top*i,v=e.bottom*i;return\"height\"===r||\"both\"===r?(u=a[1]+m-n[0],f=a[1]+v+n[2]):f=(u=a[1]+(m+v-s.displaySize[1])/2)+s.displaySize[1],{image:s,top:u,right:h,bottom:f,left:p,collisionPadding:o}}bl[10]=!0,bl[32]=!0,bl[38]=!0,bl[40]=!0,bl[41]=!0,bl[43]=!0,bl[45]=!0,bl[47]=!0,bl[173]=!0,bl[183]=!0,bl[8203]=!0,bl[8208]=!0,bl[8211]=!0,bl[8231]=!0;var Cl=function(t){function e(e,r,n,a){t.call(this,e,r),this.angle=n,void 0!==a&&(this.segment=a)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.clone=function(){return new e(this.x,this.y,this.angle,this.segment)},e}(a);function Ll(t,e){var r=e.expression;if(\"constant\"===r.kind)return{kind:\"constant\",layoutSize:r.evaluate(new aa(t+1))};if(\"source\"===r.kind)return{kind:\"source\"};for(var n=r.zoomStops,a=r.interpolationType,i=0;i<n.length&&n[i]<=t;)i++;for(var o=i=Math.max(0,i-1);o<n.length&&n[o]<t+1;)o++;o=Math.min(n.length-1,o);var s=n[i],l=n[o];return\"composite\"===r.kind?{kind:\"composite\",minZoom:s,maxZoom:l,interpolationType:a}:{kind:\"camera\",minZoom:s,maxZoom:l,minSize:r.evaluate(new aa(s)),maxSize:r.evaluate(new aa(l)),interpolationType:a}}function Pl(t,e,r){var n=e.uSize,a=r.lowerSize;return\"source\"===t.kind?a/128:\"composite\"===t.kind?Ue(a/128,r.upperSize/128,e.uSizeT):n}function Il(t,e){var r=0,n=0;if(\"constant\"===t.kind)n=t.layoutSize;else if(\"source\"!==t.kind){var a=t.interpolationType,i=a?l(rr.interpolationFactor(a,e,t.minZoom,t.maxZoom),0,1):0;\"camera\"===t.kind?n=Ue(t.minSize,t.maxSize,i):r=i}return{uSizeT:r,uSize:n}}Dn(\"Anchor\",Cl);var zl=Object.freeze({__proto__:null,getSizeData:Ll,evaluateSizeForFeature:Pl,evaluateSizeForZoom:Il,SIZE_PACK_FACTOR:128});function Ol(t,e,r,n,a){if(void 0===e.segment)return!0;for(var i=e,o=e.segment+1,s=0;s>-r/2;){if(--o<0)return!1;s-=t[o].dist(i),i=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;s<r/2;){var u=t[o],h=t[o+1];if(!h)return!1;var f=t[o-1].angleTo(u)-u.angleTo(h);for(f=Math.abs((f+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:s,angleDelta:f}),c+=f;s-l[0].distance>n;)c-=l.shift().angleDelta;if(c>a)return!1;o++,s+=u.dist(h)}return!0}function Dl(t){for(var e=0,r=0;r<t.length-1;r++)e+=t[r].dist(t[r+1]);return e}function Rl(t,e,r){return t?.6*e*r:0}function Fl(t,e){return Math.max(t?t.right-t.left:0,e?e.right-e.left:0)}function Bl(t,e,r,n,a,i){for(var o=Rl(r,a,i),s=Fl(r,n)*i,l=0,c=Dl(t)/2,u=0;u<t.length-1;u++){var h=t[u],f=t[u+1],p=h.dist(f);if(l+p>c){var d=(c-l)/p,g=Ue(h.x,f.x,d),m=Ue(h.y,f.y,d),v=new Cl(g,m,f.angleTo(h),u);return v._round(),!o||Ol(t,v,s,o,e)?v:void 0}l+=p}}function Nl(t,e,r,n,a,i,o,s,l){var c=Rl(n,i,o),u=Fl(n,a),h=u*o,f=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h<e/4&&(e=h+e/4),function t(e,r,n,a,i,o,s,l,c){for(var u=o/2,h=Dl(e),f=0,p=r-n,d=[],g=0;g<e.length-1;g++){for(var m=e[g],v=e[g+1],y=m.dist(v),x=v.angleTo(m);p+n<f+y;){var b=((p+=n)-f)/y,_=Ue(m.x,v.x,b),w=Ue(m.y,v.y,b);if(_>=0&&_<c&&w>=0&&w<c&&p-u>=0&&p+u<=h){var T=new Cl(_,w,x,g);T._round(),a&&!Ol(e,T,o,a,i)||d.push(T)}}f+=y}return l||d.length||s||(d=t(e,f/2,n,a,i,o,s,!0,c)),d}(t,f?e/2*s%e:(u/2+2*i)*o*s%e,e,c,r,h,f,!1,l)}function jl(t,e,r,n,i){for(var o=[],s=0;s<t.length;s++)for(var l=t[s],c=void 0,u=0;u<l.length-1;u++){var h=l[u],f=l[u+1];h.x<e&&f.x<e||(h.x<e?h=new a(e,h.y+(e-h.x)/(f.x-h.x)*(f.y-h.y))._round():f.x<e&&(f=new a(e,h.y+(e-h.x)/(f.x-h.x)*(f.y-h.y))._round()),h.y<r&&f.y<r||(h.y<r?h=new a(h.x+(r-h.y)/(f.y-h.y)*(f.x-h.x),r)._round():f.y<r&&(f=new a(h.x+(r-h.y)/(f.y-h.y)*(f.x-h.x),r)._round()),h.x>=n&&f.x>=n||(h.x>=n?h=new a(n,h.y+(n-h.x)/(f.x-h.x)*(f.y-h.y))._round():f.x>=n&&(f=new a(n,h.y+(n-h.x)/(f.x-h.x)*(f.y-h.y))._round()),h.y>=i&&f.y>=i||(h.y>=i?h=new a(h.x+(i-h.y)/(f.y-h.y)*(f.x-h.x),i)._round():f.y>=i&&(f=new a(h.x+(i-h.y)/(f.y-h.y)*(f.x-h.x),i)._round()),c&&h.equals(c[c.length-1])||o.push(c=[h]),c.push(f)))))}return o}function Ul(t,e,r,n){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2,c=o.paddedRect.h-2,u=t.right-t.left,h=t.bottom-t.top,f=o.stretchX||[[0,l]],p=o.stretchY||[[0,c]],d=function(t,e){return t+e[1]-e[0]},g=f.reduce(d,0),m=p.reduce(d,0),v=l-g,y=c-m,x=0,b=g,_=0,w=m,T=0,k=v,M=0,A=y;if(o.content&&n){var S=o.content;x=Vl(f,0,S[0]),_=Vl(p,0,S[1]),b=Vl(f,S[0],S[2]),w=Vl(p,S[1],S[3]),T=S[0]-x,M=S[1]-_,k=S[2]-S[0]-b,A=S[3]-S[1]-w}var E=function(n,i,l,c){var f=Hl(n.stretch-x,b,u,t.left),p=Gl(n.fixed-T,k,n.stretch,g),d=Hl(i.stretch-_,w,h,t.top),v=Gl(i.fixed-M,A,i.stretch,m),y=Hl(l.stretch-x,b,u,t.left),S=Gl(l.fixed-T,k,l.stretch,g),E=Hl(c.stretch-_,w,h,t.top),C=Gl(c.fixed-M,A,c.stretch,m),L=new a(f,d),P=new a(y,d),I=new a(y,E),z=new a(f,E),O=new a(p/s,v/s),D=new a(S/s,C/s),R=e*Math.PI/180;if(R){var F=Math.sin(R),B=Math.cos(R),N=[B,-F,F,B];L._matMult(N),P._matMult(N),z._matMult(N),I._matMult(N)}var j=n.stretch+n.fixed,U=i.stretch+i.fixed;return{tl:L,tr:P,bl:z,br:I,tex:{x:o.paddedRect.x+1+j,y:o.paddedRect.y+1+U,w:l.stretch+l.fixed-j,h:c.stretch+c.fixed-U},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:O,pixelOffsetBR:D,minFontScaleX:k/s/u,minFontScaleY:A/s/h,isSDF:r}};if(n&&(o.stretchX||o.stretchY))for(var C=ql(f,v,g),L=ql(p,y,m),P=0;P<C.length-1;P++)for(var I=C[P],z=C[P+1],O=0;O<L.length-1;O++)i.push(E(I,L[O],z,L[O+1]));else i.push(E({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:l+1},{fixed:0,stretch:c+1}));return i}function Vl(t,e,r){for(var n=0,a=0,i=t;a<i.length;a+=1){var o=i[a];n+=Math.max(e,Math.min(r,o[1]))-Math.max(e,Math.min(r,o[0]))}return n}function ql(t,e,r){for(var n=[{fixed:-1,stretch:0}],a=0,i=t;a<i.length;a+=1){var o=i[a],s=o[0],l=o[1],c=n[n.length-1];n.push({fixed:s-c.stretch,stretch:c.stretch}),n.push({fixed:s-c.stretch,stretch:c.stretch+(l-s)})}return n.push({fixed:e+1,stretch:r}),n}function Hl(t,e,r,n){return t/e*r+n}function Gl(t,e,r,n){return t-e*r/n}var Yl=function(t,e,r,n,i,o,s,l,c,u){if(this.boxStartIndex=t.length,c){var h=o.top,f=o.bottom,p=o.collisionPadding;p&&(h-=p[1],f+=p[3]);var d=f-h;d>0&&(d=Math.max(10,d),this.circleDiameter=d)}else{var g=o.top*s-l,m=o.bottom*s+l,v=o.left*s-l,y=o.right*s+l,x=o.collisionPadding;if(x&&(v-=x[0]*s,g-=x[1]*s,y+=x[2]*s,m+=x[3]*s),u){var b=new a(v,g),_=new a(y,g),w=new a(v,m),T=new a(y,m),k=u*Math.PI/180;b._rotate(k),_._rotate(k),w._rotate(k),T._rotate(k),v=Math.min(b.x,_.x,w.x,T.x),y=Math.max(b.x,_.x,w.x,T.x),g=Math.min(b.y,_.y,w.y,T.y),m=Math.max(b.y,_.y,w.y,T.y)}t.emplaceBack(e.x,e.y,v,g,y,m,r,n,i)}this.boxEndIndex=t.length},Wl=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=Zl),this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function Zl(t,e){return t<e?-1:t>e?1:0}function Xl(t,e,r){void 0===e&&(e=1),void 0===r&&(r=!1);for(var n=1/0,i=1/0,o=-1/0,s=-1/0,l=t[0],c=0;c<l.length;c++){var u=l[c];(!c||u.x<n)&&(n=u.x),(!c||u.y<i)&&(i=u.y),(!c||u.x>o)&&(o=u.x),(!c||u.y>s)&&(s=u.y)}var h=Math.min(o-n,s-i),f=h/2,p=new Wl([],Jl);if(0===h)return new a(n,i);for(var d=n;d<o;d+=h)for(var g=i;g<s;g+=h)p.push(new Kl(d+f,g+f,f,t));for(var m=function(t){for(var e=0,r=0,n=0,a=t[0],i=0,o=a.length,s=o-1;i<o;s=i++){var l=a[i],c=a[s],u=l.x*c.y-c.x*l.y;r+=(l.x+c.x)*u,n+=(l.y+c.y)*u,e+=3*u}return new Kl(r/e,n/e,0,t)}(t),v=p.length;p.length;){var y=p.pop();(y.d>m.d||!m.d)&&(m=y,r&&console.log(\"found best %d after %d probes\",Math.round(1e4*y.d)/1e4,v)),y.max-m.d<=e||(p.push(new Kl(y.p.x-(f=y.h/2),y.p.y-f,f,t)),p.push(new Kl(y.p.x+f,y.p.y-f,f,t)),p.push(new Kl(y.p.x-f,y.p.y+f,f,t)),p.push(new Kl(y.p.x+f,y.p.y+f,f,t)),v+=4)}return r&&(console.log(\"num probes: \"+v),console.log(\"best distance: \"+m.d)),m.p}function Jl(t,e){return e.max-t.max}function Kl(t,e,r,n){this.p=new a(t,e),this.h=r,this.d=function(t,e){for(var r=!1,n=1/0,a=0;a<e.length;a++)for(var i=e[a],o=0,s=i.length,l=s-1;o<s;l=o++){var c=i[o],u=i[l];c.y>t.y!=u.y>t.y&&t.x<(u.x-c.x)*(t.y-c.y)/(u.y-c.y)+c.x&&(r=!r),n=Math.min(n,Gi(t,c,u))}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}Wl.prototype.push=function(t){this.data.push(t),this.length++,this._up(this.length-1)},Wl.prototype.pop=function(){if(0!==this.length){var t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}},Wl.prototype.peek=function(){return this.data[0]},Wl.prototype._up=function(t){for(var e=this.data,r=this.compare,n=e[t];t>0;){var a=t-1>>1,i=e[a];if(r(n,i)>=0)break;e[t]=i,t=a}e[t]=n},Wl.prototype._down=function(t){for(var e=this.data,r=this.compare,n=this.length>>1,a=e[t];t<n;){var i=1+(t<<1),o=e[i],s=i+1;if(s<this.length&&r(e[s],o)<0&&(i=s,o=e[s]),r(o,a)>=0)break;e[t]=o,t=i}e[t]=a};var Ql=Number.POSITIVE_INFINITY;function $l(t,e){return e[1]!==Ql?function(t,e,r){var n=0,a=0;switch(e=Math.abs(e),r=Math.abs(r),t){case\"top-right\":case\"top-left\":case\"top\":a=r-7;break;case\"bottom-right\":case\"bottom-left\":case\"bottom\":a=7-r}switch(t){case\"top-right\":case\"bottom-right\":case\"right\":n=-e;break;case\"top-left\":case\"bottom-left\":case\"left\":n=e}return[n,a]}(t,e[0],e[1]):function(t,e){var r=0,n=0;e<0&&(e=0);var a=e/Math.sqrt(2);switch(t){case\"top-right\":case\"top-left\":n=a-7;break;case\"bottom-right\":case\"bottom-left\":n=7-a;break;case\"bottom\":n=7-e;break;case\"top\":n=e-7}switch(t){case\"top-right\":case\"bottom-right\":r=-a;break;case\"top-left\":case\"bottom-left\":r=a;break;case\"left\":r=e;break;case\"right\":r=-e}return[r,n]}(t,e[0])}function tc(t){switch(t){case\"right\":case\"top-right\":case\"bottom-right\":return\"right\";case\"left\":case\"top-left\":case\"bottom-left\":return\"left\"}return\"center\"}function ec(t,e,r,n,i,o,s,l,c,u,h,f,p,d,g){var m=function(t,e,r,n,i,o,s,l){for(var c=n.layout.get(\"text-rotate\").evaluate(o,{})*Math.PI/180,u=[],h=0,f=e.positionedLines;h<f.length;h+=1)for(var p=f[h],d=0,g=p.positionedGlyphs;d<g.length;d+=1){var m=g[d];if(m.rect){var v=m.rect||{},y=4,x=!0,b=1,_=0,w=(i||l)&&m.vertical,T=m.metrics.advance*m.scale/2;if(l&&e.verticalizable&&(_=p.lineOffset/2-(m.imageName?-(24-m.metrics.width*m.scale)/2:24*(m.scale-1))),m.imageName){var k=s[m.imageName];x=k.sdf,y=1/(b=k.pixelRatio)}var M=i?[m.x+T,m.y]:[0,0],A=i?[0,0]:[m.x+T+r[0],m.y+r[1]-_],S=[0,0];w&&(S=A,A=[0,0]);var E=(m.metrics.left-y)*m.scale-T+A[0],C=(-m.metrics.top-y)*m.scale+A[1],L=E+v.w*m.scale/b,P=C+v.h*m.scale/b,I=new a(E,C),z=new a(L,C),O=new a(E,P),D=new a(L,P);if(w){var R=new a(-T,T- -17),F=-Math.PI/2,B=12-T,N=new a(22-B,-(m.imageName?B:0)),j=new(Function.prototype.bind.apply(a,[null].concat(S)));I._rotateAround(F,R)._add(N)._add(j),z._rotateAround(F,R)._add(N)._add(j),O._rotateAround(F,R)._add(N)._add(j),D._rotateAround(F,R)._add(N)._add(j)}if(c){var U=Math.sin(c),V=Math.cos(c),q=[V,-U,U,V];I._matMult(q),z._matMult(q),O._matMult(q),D._matMult(q)}var H=new a(0,0),G=new a(0,0);u.push({tl:I,tr:z,bl:O,br:D,tex:v,writingMode:e.writingMode,glyphOffset:M,sectionIndex:m.sectionIndex,isSDF:x,pixelOffsetTL:H,pixelOffsetBR:G,minFontScaleX:0,minFontScaleY:0})}}return u}(0,r,l,i,o,s,n,t.allowVerticalPlacement),v=t.textSizeData,y=null;\"source\"===v.kind?(y=[128*i.layout.get(\"text-size\").evaluate(s,{})])[0]>32640&&_(t.layerIds[0]+': Value for \"text-size\" is >= 255. Reduce your \"text-size\".'):\"composite\"===v.kind&&((y=[128*d.compositeTextSizes[0].evaluate(s,{},g),128*d.compositeTextSizes[1].evaluate(s,{},g)])[0]>32640||y[1]>32640)&&_(t.layerIds[0]+': Value for \"text-size\" is >= 255. Reduce your \"text-size\".'),t.addSymbols(t.text,m,y,l,o,s,u,e,c.lineStartIndex,c.lineLength,p,g);for(var x=0,b=h;x<b.length;x+=1)f[b[x]]=t.text.placedSymbolArray.length-1;return 4*m.length}function rc(t){for(var e in t)return t[e];return null}function nc(t,e,r,n){var a=t.compareText;if(e in a){for(var i=a[e],o=i.length-1;o>=0;o--)if(n.dist(i[o])<r)return!0}else a[e]=[];return a[e].push(n),!1}var ac=gs.VectorTileFeature.types,ic=[{name:\"a_fade_opacity\",components:1,type:\"Uint8\",offset:0}];function oc(t,e,r,n,a,i,o,s,l,c,u,h,f){var p=s?Math.min(32640,Math.round(s[0])):0,d=s?Math.min(32640,Math.round(s[1])):0;t.emplaceBack(e,r,Math.round(32*n),Math.round(32*a),i,o,(p<<1)+(l?1:0),d,16*c,16*u,256*h,256*f)}function sc(t,e,r){t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r)}function lc(t){for(var e=0,r=t.sections;e<r.length;e+=1)if(Zn(r[e].text))return!0;return!1}var cc=function(t){this.layoutVertexArray=new La,this.indexArray=new Fa,this.programConfigurations=t,this.segments=new ai,this.dynamicLayoutVertexArray=new Pa,this.opacityVertexArray=new Ia,this.placedSymbolArray=new Ja};cc.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length},cc.prototype.upload=function(t,e,r,n){this.isEmpty()||(r&&(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Ds.members),this.indexBuffer=t.createIndexBuffer(this.indexArray,e),this.dynamicLayoutVertexBuffer=t.createVertexBuffer(this.dynamicLayoutVertexArray,Rs.members,!0),this.opacityVertexBuffer=t.createVertexBuffer(this.opacityVertexArray,ic,!0),this.opacityVertexBuffer.itemSize=1),(r||n)&&this.programConfigurations.upload(t))},cc.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},Dn(\"SymbolBuffers\",cc);var uc=function(t,e,r){this.layoutVertexArray=new t,this.layoutAttributes=e,this.indexArray=new r,this.segments=new ai,this.collisionVertexArray=new Ra};uc.prototype.upload=function(t){this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=t.createVertexBuffer(this.collisionVertexArray,Fs.members,!0)},uc.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},Dn(\"CollisionBuffers\",uc);var hc=function(t){this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.pixelRatio=t.pixelRatio,this.sourceLayerIndex=t.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=eo([]),this.placementViewportMatrix=eo([]);var e=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Ll(this.zoom,e[\"text-size\"]),this.iconSizeData=Ll(this.zoom,e[\"icon-size\"]);var r=this.layers[0].layout,n=r.get(\"symbol-sort-key\"),a=r.get(\"symbol-z-order\");this.sortFeaturesByKey=\"viewport-y\"!==a&&void 0!==n.constantOr(1),this.sortFeaturesByY=(\"viewport-y\"===a||\"auto\"===a&&!this.sortFeaturesByKey)&&(r.get(\"text-allow-overlap\")||r.get(\"icon-allow-overlap\")||r.get(\"text-ignore-placement\")||r.get(\"icon-ignore-placement\")),\"point\"===r.get(\"symbol-placement\")&&(this.writingModes=r.get(\"text-writing-mode\").map((function(t){return gl[t]}))),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id})),this.sourceID=t.sourceID};hc.prototype.createArrays=function(){this.text=new cc(new Pi(Ds.members,this.layers,this.zoom,(function(t){return/^text/.test(t)}))),this.icon=new cc(new Pi(Ds.members,this.layers,this.zoom,(function(t){return/^icon/.test(t)}))),this.glyphOffsetArray=new $a,this.lineVertexArray=new ti,this.symbolInstances=new Qa},hc.prototype.calculateGlyphDependencies=function(t,e,r,n,a){for(var i=0;i<t.length;i++)if(e[t.charCodeAt(i)]=!0,(r||n)&&a){var o=Us[t.charAt(i)];o&&(e[o.charCodeAt(0)]=!0)}},hc.prototype.populate=function(t,e,r){var n=this.layers[0],a=n.layout,i=a.get(\"text-font\"),o=a.get(\"text-field\"),s=a.get(\"icon-image\"),l=(\"constant\"!==o.value.kind||o.value.value instanceof te&&!o.value.value.isEmpty()||o.value.value.toString().length>0)&&(\"constant\"!==i.value.kind||i.value.value.length>0),c=\"constant\"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=a.get(\"symbol-sort-key\");if(this.features=[],l||c){for(var h=e.iconDependencies,f=e.glyphDependencies,p=e.availableImages,d=new aa(this.zoom),g=0,m=t;g<m.length;g+=1){var v=m[g],y=v.feature,x=v.id,b=v.index,_=v.sourceLayerIndex,w=n._featureFilter.needGeometry,T={type:y.type,id:x,properties:y.properties,geometry:w?Di(y):[]};if(n._featureFilter.filter(d,T,r)){w||(T.geometry=Di(y));var k=void 0;if(l){var M=n.getValueAndResolveTokens(\"text-field\",T,r,p),A=te.factory(M);lc(A)&&(this.hasRTLText=!0),(!this.hasRTLText||\"unavailable\"===ea()||this.hasRTLText&&na.isParsed())&&(k=js(A,n,T))}var S=void 0;if(c){var E=n.getValueAndResolveTokens(\"icon-image\",T,r,p);S=E instanceof ee?E:ee.fromString(E)}if(k||S){var C=this.sortFeaturesByKey?u.evaluate(T,{},r):void 0,L={id:x,text:k,icon:S,index:b,sourceLayerIndex:_,geometry:Di(y),properties:y.properties,type:ac[y.type],sortKey:C};if(this.features.push(L),S&&(h[S.name]=!0),k){var P=i.evaluate(T,{},r).join(\",\"),I=\"map\"===a.get(\"text-rotation-alignment\")&&\"point\"!==a.get(\"symbol-placement\");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(gl.vertical)>=0;for(var z=0,O=k.sections;z<O.length;z+=1){var D=O[z];if(D.image)h[D.image.name]=!0;else{var R=qn(k.toString()),F=D.fontStack||P,B=f[F]=f[F]||{};this.calculateGlyphDependencies(D.text,B,I,this.allowVerticalPlacement,R)}}}}}}\"line\"===a.get(\"symbol-placement\")&&(this.features=function(t){var e={},r={},n=[],a=0;function i(e){n.push(t[e]),a++}function o(t,e,a){var i=r[t];return delete r[t],r[e]=i,n[i].geometry[0].pop(),n[i].geometry[0]=n[i].geometry[0].concat(a[0]),i}function s(t,r,a){var i=e[r];return delete e[r],e[t]=i,n[i].geometry[0].shift(),n[i].geometry[0]=a[0].concat(n[i].geometry[0]),i}function l(t,e,r){var n=r?e[0][e[0].length-1]:e[0][0];return t+\":\"+n.x+\":\"+n.y}for(var c=0;c<t.length;c++){var u=t[c],h=u.geometry,f=u.text?u.text.toString():null;if(f){var p=l(f,h),d=l(f,h,!0);if(p in r&&d in e&&r[p]!==e[d]){var g=s(p,d,h),m=o(p,d,n[g].geometry);delete e[p],delete r[d],r[l(f,n[m].geometry,!0)]=m,n[g].geometry=null}else p in r?o(p,d,h):d in e?s(p,d,h):(i(c),e[p]=a-1,r[d]=a-1)}else i(c)}return n.filter((function(t){return t.geometry}))}(this.features)),this.sortFeaturesByKey&&this.features.sort((function(t,e){return t.sortKey-e.sortKey}))}},hc.prototype.update=function(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r))},hc.prototype.isEmpty=function(){return 0===this.symbolInstances.length&&!this.hasRTLText},hc.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},hc.prototype.upload=function(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},hc.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},hc.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},hc.prototype.addToLineVertexArray=function(t,e){var r=this.lineVertexArray.length;if(void 0!==t.segment){for(var n=t.dist(e[t.segment+1]),a=t.dist(e[t.segment]),i={},o=t.segment+1;o<e.length;o++)i[o]={x:e[o].x,y:e[o].y,tileUnitDistanceFromAnchor:n},o<e.length-1&&(n+=e[o+1].dist(e[o]));for(var s=t.segment||0;s>=0;s--)i[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:a},s>0&&(a+=e[s-1].dist(e[s]));for(var l=0;l<e.length;l++){var c=i[l];this.lineVertexArray.emplaceBack(c.x,c.y,c.tileUnitDistanceFromAnchor)}}return{lineStartIndex:r,lineLength:this.lineVertexArray.length-r}},hc.prototype.addSymbols=function(t,e,r,n,a,i,o,s,l,c,u,h){for(var f=t.indexArray,p=t.layoutVertexArray,d=t.segments.prepareSegment(4*e.length,p,f,i.sortKey),g=this.glyphOffsetArray.length,m=d.vertexLength,v=this.allowVerticalPlacement&&o===gl.vertical?Math.PI/2:0,y=i.text&&i.text.sections,x=0;x<e.length;x++){var b=e[x],_=b.tl,w=b.tr,T=b.bl,k=b.br,M=b.tex,A=b.pixelOffsetTL,S=b.pixelOffsetBR,E=b.minFontScaleX,C=b.minFontScaleY,L=b.glyphOffset,P=b.isSDF,I=b.sectionIndex,z=d.vertexLength,O=L[1];oc(p,s.x,s.y,_.x,O+_.y,M.x,M.y,r,P,A.x,A.y,E,C),oc(p,s.x,s.y,w.x,O+w.y,M.x+M.w,M.y,r,P,S.x,A.y,E,C),oc(p,s.x,s.y,T.x,O+T.y,M.x,M.y+M.h,r,P,A.x,S.y,E,C),oc(p,s.x,s.y,k.x,O+k.y,M.x+M.w,M.y+M.h,r,P,S.x,S.y,E,C),sc(t.dynamicLayoutVertexArray,s,v),f.emplaceBack(z,z+1,z+2),f.emplaceBack(z+1,z+2,z+3),d.vertexLength+=4,d.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(L[0]),x!==e.length-1&&I===e[x+1].sectionIndex||t.programConfigurations.populatePaintArrays(p.length,i,i.index,{},h,y&&y[I])}t.placedSymbolArray.emplaceBack(s.x,s.y,g,this.glyphOffsetArray.length-g,m,l,c,s.segment,r?r[0]:0,r?r[1]:0,n[0],n[1],o,0,!1,0,u)},hc.prototype._addCollisionDebugVertex=function(t,e,r,n,a,i){return e.emplaceBack(0,0),t.emplaceBack(r.x,r.y,n,a,Math.round(i.x),Math.round(i.y))},hc.prototype.addCollisionDebugVertices=function(t,e,r,n,i,o,s){var l=i.segments.prepareSegment(4,i.layoutVertexArray,i.indexArray),c=l.vertexLength,u=i.layoutVertexArray,h=i.collisionVertexArray,f=s.anchorX,p=s.anchorY;this._addCollisionDebugVertex(u,h,o,f,p,new a(t,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,n)),this._addCollisionDebugVertex(u,h,o,f,p,new a(t,n)),l.vertexLength+=4;var d=i.indexArray;d.emplaceBack(c,c+1),d.emplaceBack(c+1,c+2),d.emplaceBack(c+2,c+3),d.emplaceBack(c+3,c),l.primitiveLength+=4},hc.prototype.addDebugCollisionBoxes=function(t,e,r,n){for(var a=t;a<e;a++){var i=this.collisionBoxArray.get(a);this.addCollisionDebugVertices(i.x1,i.y1,i.x2,i.y2,n?this.textCollisionBox:this.iconCollisionBox,i.anchorPoint,r)}},hc.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new uc(Oa,Bs.members,qa),this.iconCollisionBox=new uc(Oa,Bs.members,qa);for(var t=0;t<this.symbolInstances.length;t++){var e=this.symbolInstances.get(t);this.addDebugCollisionBoxes(e.textBoxStartIndex,e.textBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.verticalTextBoxStartIndex,e.verticalTextBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.iconBoxStartIndex,e.iconBoxEndIndex,e,!1),this.addDebugCollisionBoxes(e.verticalIconBoxStartIndex,e.verticalIconBoxEndIndex,e,!1)}},hc.prototype._deserializeCollisionBoxesForSymbol=function(t,e,r,n,a,i,o,s,l){for(var c={},u=e;u<r;u++){var h=t.get(u);c.textBox={x1:h.x1,y1:h.y1,x2:h.x2,y2:h.y2,anchorPointX:h.anchorPointX,anchorPointY:h.anchorPointY},c.textFeatureIndex=h.featureIndex;break}for(var f=n;f<a;f++){var p=t.get(f);c.verticalTextBox={x1:p.x1,y1:p.y1,x2:p.x2,y2:p.y2,anchorPointX:p.anchorPointX,anchorPointY:p.anchorPointY},c.verticalTextFeatureIndex=p.featureIndex;break}for(var d=i;d<o;d++){var g=t.get(d);c.iconBox={x1:g.x1,y1:g.y1,x2:g.x2,y2:g.y2,anchorPointX:g.anchorPointX,anchorPointY:g.anchorPointY},c.iconFeatureIndex=g.featureIndex;break}for(var m=s;m<l;m++){var v=t.get(m);c.verticalIconBox={x1:v.x1,y1:v.y1,x2:v.x2,y2:v.y2,anchorPointX:v.anchorPointX,anchorPointY:v.anchorPointY},c.verticalIconFeatureIndex=v.featureIndex;break}return c},hc.prototype.deserializeCollisionBoxes=function(t){this.collisionArrays=[];for(var e=0;e<this.symbolInstances.length;e++){var r=this.symbolInstances.get(e);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(t,r.textBoxStartIndex,r.textBoxEndIndex,r.verticalTextBoxStartIndex,r.verticalTextBoxEndIndex,r.iconBoxStartIndex,r.iconBoxEndIndex,r.verticalIconBoxStartIndex,r.verticalIconBoxEndIndex))}},hc.prototype.hasTextData=function(){return this.text.segments.get().length>0},hc.prototype.hasIconData=function(){return this.icon.segments.get().length>0},hc.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},hc.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},hc.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},hc.prototype.addIndicesForPlacedSymbol=function(t,e){for(var r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs,a=r.vertexStartIndex;a<n;a+=4)t.indexArray.emplaceBack(a,a+1,a+2),t.indexArray.emplaceBack(a+1,a+2,a+3)},hc.prototype.getSortedSymbolIndexes=function(t){if(this.sortedAngle===t&&void 0!==this.symbolInstanceIndexes)return this.symbolInstanceIndexes;for(var e=Math.sin(t),r=Math.cos(t),n=[],a=[],i=[],o=0;o<this.symbolInstances.length;++o){i.push(o);var s=this.symbolInstances.get(o);n.push(0|Math.round(e*s.anchorX+r*s.anchorY)),a.push(s.featureIndex)}return i.sort((function(t,e){return n[t]-n[e]||a[e]-a[t]})),i},hc.prototype.addToSortKeyRanges=function(t,e){var r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1})},hc.prototype.sortFeatures=function(t){var e=this;if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r<n.length;r+=1){var a=this.symbolInstances.get(n[r]);this.featureSortOrder.push(a.featureIndex),[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t,r,n){t>=0&&n.indexOf(t)===r&&e.addIndicesForPlacedSymbol(e.text,t)})),a.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,a.verticalPlacedTextSymbolIndex),a.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.placedIconSymbolIndex),a.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},Dn(\"SymbolBucket\",hc,{omit:[\"layers\",\"collisionBoxArray\",\"features\",\"compareText\"]}),hc.MAX_GLYPHS=65535,hc.addDynamicAttributes=sc;var fc=new ya({\"symbol-placement\":new pa(At.layout_symbol[\"symbol-placement\"]),\"symbol-spacing\":new pa(At.layout_symbol[\"symbol-spacing\"]),\"symbol-avoid-edges\":new pa(At.layout_symbol[\"symbol-avoid-edges\"]),\"symbol-sort-key\":new da(At.layout_symbol[\"symbol-sort-key\"]),\"symbol-z-order\":new pa(At.layout_symbol[\"symbol-z-order\"]),\"icon-allow-overlap\":new pa(At.layout_symbol[\"icon-allow-overlap\"]),\"icon-ignore-placement\":new pa(At.layout_symbol[\"icon-ignore-placement\"]),\"icon-optional\":new pa(At.layout_symbol[\"icon-optional\"]),\"icon-rotation-alignment\":new pa(At.layout_symbol[\"icon-rotation-alignment\"]),\"icon-size\":new da(At.layout_symbol[\"icon-size\"]),\"icon-text-fit\":new pa(At.layout_symbol[\"icon-text-fit\"]),\"icon-text-fit-padding\":new pa(At.layout_symbol[\"icon-text-fit-padding\"]),\"icon-image\":new da(At.layout_symbol[\"icon-image\"]),\"icon-rotate\":new da(At.layout_symbol[\"icon-rotate\"]),\"icon-padding\":new pa(At.layout_symbol[\"icon-padding\"]),\"icon-keep-upright\":new pa(At.layout_symbol[\"icon-keep-upright\"]),\"icon-offset\":new da(At.layout_symbol[\"icon-offset\"]),\"icon-anchor\":new da(At.layout_symbol[\"icon-anchor\"]),\"icon-pitch-alignment\":new pa(At.layout_symbol[\"icon-pitch-alignment\"]),\"text-pitch-alignment\":new pa(At.layout_symbol[\"text-pitch-alignment\"]),\"text-rotation-alignment\":new pa(At.layout_symbol[\"text-rotation-alignment\"]),\"text-field\":new da(At.layout_symbol[\"text-field\"]),\"text-font\":new da(At.layout_symbol[\"text-font\"]),\"text-size\":new da(At.layout_symbol[\"text-size\"]),\"text-max-width\":new da(At.layout_symbol[\"text-max-width\"]),\"text-line-height\":new pa(At.layout_symbol[\"text-line-height\"]),\"text-letter-spacing\":new da(At.layout_symbol[\"text-letter-spacing\"]),\"text-justify\":new da(At.layout_symbol[\"text-justify\"]),\"text-radial-offset\":new da(At.layout_symbol[\"text-radial-offset\"]),\"text-variable-anchor\":new pa(At.layout_symbol[\"text-variable-anchor\"]),\"text-anchor\":new da(At.layout_symbol[\"text-anchor\"]),\"text-max-angle\":new pa(At.layout_symbol[\"text-max-angle\"]),\"text-writing-mode\":new pa(At.layout_symbol[\"text-writing-mode\"]),\"text-rotate\":new da(At.layout_symbol[\"text-rotate\"]),\"text-padding\":new pa(At.layout_symbol[\"text-padding\"]),\"text-keep-upright\":new pa(At.layout_symbol[\"text-keep-upright\"]),\"text-transform\":new da(At.layout_symbol[\"text-transform\"]),\"text-offset\":new da(At.layout_symbol[\"text-offset\"]),\"text-allow-overlap\":new pa(At.layout_symbol[\"text-allow-overlap\"]),\"text-ignore-placement\":new pa(At.layout_symbol[\"text-ignore-placement\"]),\"text-optional\":new pa(At.layout_symbol[\"text-optional\"])}),pc={paint:new ya({\"icon-opacity\":new da(At.paint_symbol[\"icon-opacity\"]),\"icon-color\":new da(At.paint_symbol[\"icon-color\"]),\"icon-halo-color\":new da(At.paint_symbol[\"icon-halo-color\"]),\"icon-halo-width\":new da(At.paint_symbol[\"icon-halo-width\"]),\"icon-halo-blur\":new da(At.paint_symbol[\"icon-halo-blur\"]),\"icon-translate\":new pa(At.paint_symbol[\"icon-translate\"]),\"icon-translate-anchor\":new pa(At.paint_symbol[\"icon-translate-anchor\"]),\"text-opacity\":new da(At.paint_symbol[\"text-opacity\"]),\"text-color\":new da(At.paint_symbol[\"text-color\"],{runtimeType:Bt,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),\"text-halo-color\":new da(At.paint_symbol[\"text-halo-color\"]),\"text-halo-width\":new da(At.paint_symbol[\"text-halo-width\"]),\"text-halo-blur\":new da(At.paint_symbol[\"text-halo-blur\"]),\"text-translate\":new pa(At.paint_symbol[\"text-translate\"]),\"text-translate-anchor\":new pa(At.paint_symbol[\"text-translate-anchor\"])}),layout:fc},dc=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:Ot,this.defaultValue=t};dc.prototype.evaluate=function(t){if(t.formattedSection){var e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default},dc.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},dc.prototype.outputDefined=function(){return!1},dc.prototype.serialize=function(){return null},Dn(\"FormatSectionOverride\",dc,{omit:[\"defaultValue\"]});var gc=function(t){function e(e){t.call(this,e,pc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.recalculate=function(e,r){if(t.prototype.recalculate.call(this,e,r),\"auto\"===this.layout.get(\"icon-rotation-alignment\")&&(this.layout._values[\"icon-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-rotation-alignment\")&&(this.layout._values[\"text-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-pitch-alignment\")&&(this.layout._values[\"text-pitch-alignment\"]=this.layout.get(\"text-rotation-alignment\")),\"auto\"===this.layout.get(\"icon-pitch-alignment\")&&(this.layout._values[\"icon-pitch-alignment\"]=this.layout.get(\"icon-rotation-alignment\")),\"point\"===this.layout.get(\"symbol-placement\")){var n=this.layout.get(\"text-writing-mode\");if(n){for(var a=[],i=0,o=n;i<o.length;i+=1){var s=o[i];a.indexOf(s)<0&&a.push(s)}this.layout._values[\"text-writing-mode\"]=a}else this.layout._values[\"text-writing-mode\"]=[\"horizontal\"]}this._setPaintOverrides()},e.prototype.getValueAndResolveTokens=function(t,e,r,n){var a=this.layout.get(t).evaluate(e,{},r,n),i=this._unevaluatedLayout._values[t];return i.isDataDriven()||Vr(i.value)||!a?a:function(t,e){return e.replace(/{([^{}]+)}/g,(function(e,r){return r in t?String(t[r]):\"\"}))}(e.properties,a)},e.prototype.createBucket=function(t){return new hc(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e.prototype._setPaintOverrides=function(){for(var t=0,r=pc.paint.overridableProperties;t<r.length;t+=1){var n=r[t];if(e.hasPaintOverride(this.layout,n)){var a,i=this.paint.get(n),o=new dc(i),s=new Ur(o,i.property.specification);a=\"constant\"===i.value.kind||\"source\"===i.value.kind?new Hr(\"source\",s):new Gr(\"composite\",s,i.value.zoomStops,i.value._interpolationType),this.paint._values[n]=new ha(i.property,a,i.parameters)}}},e.prototype._handleOverridablePaintPropertyUpdate=function(t,r,n){return!(!this.layout||r.isDataDriven()||n.isDataDriven())&&e.hasPaintOverride(this.layout,t)},e.hasPaintOverride=function(t,e){var r=t.get(\"text-field\"),n=pc.paint.properties[e],a=!1,i=function(t){for(var e=0,r=t;e<r.length;e+=1)if(n.overrides&&n.overrides.hasOverride(r[e]))return void(a=!0)};if(\"constant\"===r.value.kind&&r.value.value instanceof te)i(r.value.value.sections);else if(\"source\"===r.value.kind){var o=function(t){a||(t instanceof oe&&ae(t.value)===Vt?i(t.value.sections):t instanceof ue?i(t.sections):t.eachChild(o))},s=r.value;s._styleExpression&&o(s._styleExpression.expression)}return a},e}(xa),mc={paint:new ya({\"background-color\":new pa(At.paint_background[\"background-color\"]),\"background-pattern\":new ma(At.paint_background[\"background-pattern\"]),\"background-opacity\":new pa(At.paint_background[\"background-opacity\"])})},vc=function(t){function e(e){t.call(this,e,mc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(xa),yc={paint:new ya({\"raster-opacity\":new pa(At.paint_raster[\"raster-opacity\"]),\"raster-hue-rotate\":new pa(At.paint_raster[\"raster-hue-rotate\"]),\"raster-brightness-min\":new pa(At.paint_raster[\"raster-brightness-min\"]),\"raster-brightness-max\":new pa(At.paint_raster[\"raster-brightness-max\"]),\"raster-saturation\":new pa(At.paint_raster[\"raster-saturation\"]),\"raster-contrast\":new pa(At.paint_raster[\"raster-contrast\"]),\"raster-resampling\":new pa(At.paint_raster[\"raster-resampling\"]),\"raster-fade-duration\":new pa(At.paint_raster[\"raster-fade-duration\"])})},xc=function(t){function e(e){t.call(this,e,yc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(xa),bc=function(t){function e(e){t.call(this,e,{}),this.implementation=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.is3D=function(){return\"3d\"===this.implementation.renderingMode},e.prototype.hasOffscreenPass=function(){return void 0!==this.implementation.prerender},e.prototype.recalculate=function(){},e.prototype.updateTransitions=function(){},e.prototype.hasTransition=function(){},e.prototype.serialize=function(){},e.prototype.onAdd=function(t){this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl)},e.prototype.onRemove=function(t){this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl)},e}(xa),_c={circle:oo,heatmap:vo,hillshade:xo,fill:is,\"fill-extrusion\":ws,line:zs,symbol:gc,background:vc,raster:xc},wc=self.HTMLImageElement,Tc=self.HTMLCanvasElement,kc=self.HTMLVideoElement,Mc=self.ImageData,Ac=self.ImageBitmap,Sc=function(t,e,r,n){this.context=t,this.format=r,this.texture=t.gl.createTexture(),this.update(e,n)};Sc.prototype.update=function(t,e,r){var n=t.width,a=t.height,i=!(this.size&&this.size[0]===n&&this.size[1]===a||r),o=this.context,s=o.gl;if(this.useMipmap=Boolean(e&&e.useMipmap),s.bindTexture(s.TEXTURE_2D,this.texture),o.pixelStoreUnpackFlipY.set(!1),o.pixelStoreUnpack.set(1),o.pixelStoreUnpackPremultiplyAlpha.set(this.format===s.RGBA&&(!e||!1!==e.premultiply)),i)this.size=[n,a],t instanceof wc||t instanceof Tc||t instanceof kc||t instanceof Mc||Ac&&t instanceof Ac?s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,s.UNSIGNED_BYTE,t):s.texImage2D(s.TEXTURE_2D,0,this.format,n,a,0,this.format,s.UNSIGNED_BYTE,t.data);else{var l=r||{x:0,y:0},c=l.x,u=l.y;t instanceof wc||t instanceof Tc||t instanceof kc||t instanceof Mc||Ac&&t instanceof Ac?s.texSubImage2D(s.TEXTURE_2D,0,c,u,s.RGBA,s.UNSIGNED_BYTE,t):s.texSubImage2D(s.TEXTURE_2D,0,c,u,n,a,s.RGBA,s.UNSIGNED_BYTE,t.data)}this.useMipmap&&this.isSizePowerOfTwo()&&s.generateMipmap(s.TEXTURE_2D)},Sc.prototype.bind=function(t,e,r){var n=this.context.gl;n.bindTexture(n.TEXTURE_2D,this.texture),r!==n.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(r=n.LINEAR),t!==this.filter&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,r||t),this.filter=t),e!==this.wrap&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,e),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,e),this.wrap=e)},Sc.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0},Sc.prototype.destroy=function(){this.context.gl.deleteTexture(this.texture),this.texture=null};var Ec=function(t){var e=this;this._callback=t,this._triggered=!1,\"undefined\"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){e._triggered=!1,e._callback()})};Ec.prototype.trigger=function(){var t=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((function(){t._triggered=!1,t._callback()}),0))},Ec.prototype.remove=function(){delete this._channel,this._callback=function(){}};var Cc=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},g([\"receive\",\"process\"],this),this.invoker=new Ec(this.process),this.target.addEventListener(\"message\",this.receive,!1),this.globalScope=k()?t:self};function Lc(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return[t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}Cc.prototype.send=function(t,e,r,n,a){var i=this;void 0===a&&(a=!1);var o=Math.round(1e18*Math.random()).toString(36).substring(0,10);r&&(this.callbacks[o]=r);var s=S(this.globalScope)?void 0:[];return this.target.postMessage({id:o,type:t,hasCallback:!!r,targetMapId:n,mustQueue:a,sourceMapId:this.mapId,data:Nn(e,s)},s),{cancel:function(){r&&delete i.callbacks[o],i.target.postMessage({id:o,type:\"<cancel>\",targetMapId:n,sourceMapId:i.mapId})}}},Cc.prototype.receive=function(t){var e=t.data,r=e.id;if(r&&(!e.targetMapId||this.mapId===e.targetMapId))if(\"<cancel>\"===e.type){delete this.tasks[r];var n=this.cancelCallbacks[r];delete this.cancelCallbacks[r],n&&n()}else k()||e.mustQueue?(this.tasks[r]=e,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,e)},Cc.prototype.process=function(){if(this.taskQueue.length){var t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}},Cc.prototype.processTask=function(t,e){var r=this;if(\"<response>\"===e.type){var n=this.callbacks[t];delete this.callbacks[t],n&&(e.error?n(jn(e.error)):n(null,jn(e.data)))}else{var a=!1,i=S(this.globalScope)?void 0:[],o=e.hasCallback?function(e,n){a=!0,delete r.cancelCallbacks[t],r.target.postMessage({id:t,type:\"<response>\",sourceMapId:r.mapId,error:e?Nn(e):null,data:Nn(n,i)},i)}:function(t){a=!0},s=null,l=jn(e.data);if(this.parent[e.type])s=this.parent[e.type](e.sourceMapId,l,o);else if(this.parent.getWorkerSource){var c=e.type.split(\".\");s=this.parent.getWorkerSource(e.sourceMapId,c[0],l.source)[c[1]](l,o)}else o(new Error(\"Could not find function \"+e.type));!a&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},Cc.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener(\"message\",this.receive,!1)};var Pc=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};Pc.prototype.setNorthEast=function(t){return this._ne=t instanceof Ic?new Ic(t.lng,t.lat):Ic.convert(t),this},Pc.prototype.setSouthWest=function(t){return this._sw=t instanceof Ic?new Ic(t.lng,t.lat):Ic.convert(t),this},Pc.prototype.extend=function(t){var e,r,n=this._sw,a=this._ne;if(t instanceof Ic)e=t,r=t;else{if(!(t instanceof Pc))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(Pc.convert(t)):this.extend(Ic.convert(t)):this;if(r=t._ne,!(e=t._sw)||!r)return this}return n||a?(n.lng=Math.min(e.lng,n.lng),n.lat=Math.min(e.lat,n.lat),a.lng=Math.max(r.lng,a.lng),a.lat=Math.max(r.lat,a.lat)):(this._sw=new Ic(e.lng,e.lat),this._ne=new Ic(r.lng,r.lat)),this},Pc.prototype.getCenter=function(){return new Ic((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Pc.prototype.getSouthWest=function(){return this._sw},Pc.prototype.getNorthEast=function(){return this._ne},Pc.prototype.getNorthWest=function(){return new Ic(this.getWest(),this.getNorth())},Pc.prototype.getSouthEast=function(){return new Ic(this.getEast(),this.getSouth())},Pc.prototype.getWest=function(){return this._sw.lng},Pc.prototype.getSouth=function(){return this._sw.lat},Pc.prototype.getEast=function(){return this._ne.lng},Pc.prototype.getNorth=function(){return this._ne.lat},Pc.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Pc.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},Pc.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Pc.prototype.contains=function(t){var e=Ic.convert(t),r=e.lng,n=e.lat,a=this._sw.lng<=r&&r<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=r&&r>=this._ne.lng),this._sw.lat<=n&&n<=this._ne.lat&&a},Pc.convert=function(t){return!t||t instanceof Pc?t:new Pc(t)};var Ic=function(t,e){if(isNaN(t)||isNaN(e))throw new Error(\"Invalid LngLat object: (\"+t+\", \"+e+\")\");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")};Ic.prototype.wrap=function(){return new Ic(c(this.lng,-180,180),this.lat)},Ic.prototype.toArray=function(){return[this.lng,this.lat]},Ic.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},Ic.prototype.distanceTo=function(t){var e=Math.PI/180,r=this.lat*e,n=t.lat*e,a=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return 6371008.8*Math.acos(Math.min(a,1))},Ic.prototype.toBounds=function(t){void 0===t&&(t=0);var e=360*t/40075017,r=e/Math.cos(Math.PI/180*this.lat);return new Pc(new Ic(this.lng-r,this.lat-e),new Ic(this.lng+r,this.lat+e))},Ic.convert=function(t){if(t instanceof Ic)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Ic(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new Ic(Number(\"lng\"in t?t.lng:t.lon),Number(t.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")};var zc=2*Math.PI*6371008.8;function Oc(t){return zc*Math.cos(t*Math.PI/180)}function Dc(t){return(180+t)/360}function Rc(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Fc(t,e){return t/Oc(e)}function Bc(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}var Nc=function(t,e,r){void 0===r&&(r=0),this.x=+t,this.y=+e,this.z=+r};Nc.fromLngLat=function(t,e){void 0===e&&(e=0);var r=Ic.convert(t);return new Nc(Dc(r.lng),Rc(r.lat),Fc(e,r.lat))},Nc.prototype.toLngLat=function(){return new Ic(360*this.x-180,Bc(this.y))},Nc.prototype.toAltitude=function(){return this.z*Oc(Bc(this.y))},Nc.prototype.meterInMercatorCoordinateUnits=function(){return 1/zc*(t=Bc(this.y),1/Math.cos(t*Math.PI/180));var t};var jc=function(t,e,r){this.z=t,this.x=e,this.y=r,this.key=qc(0,t,t,e,r)};jc.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},jc.prototype.url=function(t,e){var r,n,a,i,o,s=(n=this.y,a=this.z,i=Lc(256*(r=this.x),256*(n=Math.pow(2,a)-n-1),a),o=Lc(256*(r+1),256*(n+1),a),i[0]+\",\"+i[1]+\",\"+o[0]+\",\"+o[1]),l=function(t,e,r){for(var n,a=\"\",i=t;i>0;i--)a+=(e&(n=1<<i-1)?1:0)+(r&n?2:0);return a}(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(\"{prefix}\",(this.x%16).toString(16)+(this.y%16).toString(16)).replace(\"{z}\",String(this.z)).replace(\"{x}\",String(this.x)).replace(\"{y}\",String(\"tms\"===e?Math.pow(2,this.z)-this.y-1:this.y)).replace(\"{quadkey}\",l).replace(\"{bbox-epsg-3857}\",s)},jc.prototype.getTilePoint=function(t){var e=Math.pow(2,this.z);return new a(8192*(t.x*e-this.x),8192*(t.y*e-this.y))},jc.prototype.toString=function(){return this.z+\"/\"+this.x+\"/\"+this.y};var Uc=function(t,e){this.wrap=t,this.canonical=e,this.key=qc(t,e.z,e.z,e.x,e.y)},Vc=function(t,e,r,n,a){this.overscaledZ=t,this.wrap=e,this.canonical=new jc(r,+n,+a),this.key=qc(e,t,r,n,a)};function qc(t,e,r,n,a){(t*=2)<0&&(t=-1*t-1);var i=1<<r;return(i*i*t+i*a+n).toString(36)+r.toString(36)+e.toString(36)}Vc.prototype.equals=function(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)},Vc.prototype.scaledTo=function(t){var e=this.canonical.z-t;return t>this.canonical.z?new Vc(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Vc(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},Vc.prototype.calculateScaledKey=function(t,e){var r=this.canonical.z-t;return t>this.canonical.z?qc(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):qc(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)},Vc.prototype.isChildOf=function(t){if(t.wrap!==this.wrap)return!1;var e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ<this.overscaledZ&&t.canonical.x===this.canonical.x>>e&&t.canonical.y===this.canonical.y>>e},Vc.prototype.children=function(t){if(this.overscaledZ>=t)return[new Vc(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new Vc(e,this.wrap,e,r,n),new Vc(e,this.wrap,e,r+1,n),new Vc(e,this.wrap,e,r,n+1),new Vc(e,this.wrap,e,r+1,n+1)]},Vc.prototype.isLessThan=function(t){return this.wrap<t.wrap||!(this.wrap>t.wrap)&&(this.overscaledZ<t.overscaledZ||!(this.overscaledZ>t.overscaledZ)&&(this.canonical.x<t.canonical.x||!(this.canonical.x>t.canonical.x)&&this.canonical.y<t.canonical.y))},Vc.prototype.wrapped=function(){return new Vc(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},Vc.prototype.unwrapTo=function(t){return new Vc(this.overscaledZ,t,this.canonical.z,this.canonical.x,this.canonical.y)},Vc.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},Vc.prototype.toUnwrapped=function(){return new Uc(this.wrap,this.canonical)},Vc.prototype.toString=function(){return this.overscaledZ+\"/\"+this.canonical.x+\"/\"+this.canonical.y},Vc.prototype.getTilePoint=function(t){return this.canonical.getTilePoint(new Nc(t.x-this.wrap,t.y))},Dn(\"CanonicalTileID\",jc),Dn(\"OverscaledTileID\",Vc,{omit:[\"posMatrix\"]});var Hc=function(t,e,r){if(this.uid=t,e.height!==e.width)throw new RangeError(\"DEM tiles must be square\");if(r&&\"mapbox\"!==r&&\"terrarium\"!==r)return _('\"'+r+'\" is not a valid encoding type. Valid types include \"mapbox\" and \"terrarium\".');this.stride=e.height;var n=this.dim=e.height-2;this.data=new Uint32Array(e.data.buffer),this.encoding=r||\"mapbox\";for(var a=0;a<n;a++)this.data[this._idx(-1,a)]=this.data[this._idx(0,a)],this.data[this._idx(n,a)]=this.data[this._idx(n-1,a)],this.data[this._idx(a,-1)]=this.data[this._idx(a,0)],this.data[this._idx(a,n)]=this.data[this._idx(a,n-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(n,-1)]=this.data[this._idx(n-1,0)],this.data[this._idx(-1,n)]=this.data[this._idx(0,n-1)],this.data[this._idx(n,n)]=this.data[this._idx(n-1,n-1)]};Hc.prototype.get=function(t,e){var r=new Uint8Array(this.data.buffer),n=4*this._idx(t,e);return(\"terrarium\"===this.encoding?this._unpackTerrarium:this._unpackMapbox)(r[n],r[n+1],r[n+2])},Hc.prototype.getUnpackVector=function(){return\"terrarium\"===this.encoding?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},Hc.prototype._idx=function(t,e){if(t<-1||t>=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError(\"out of range source coordinates for DEM data\");return(e+1)*this.stride+(t+1)},Hc.prototype._unpackMapbox=function(t,e,r){return(256*t*256+256*e+r)/10-1e4},Hc.prototype._unpackTerrarium=function(t,e,r){return 256*t+e+r/256-32768},Hc.prototype.getPixels=function(){return new po({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Hc.prototype.backfillBorder=function(t,e,r){if(this.dim!==t.dim)throw new Error(\"dem dimension mismatch\");var n=e*this.dim,a=e*this.dim+this.dim,i=r*this.dim,o=r*this.dim+this.dim;switch(e){case-1:n=a-1;break;case 1:a=n+1}switch(r){case-1:i=o-1;break;case 1:o=i+1}for(var s=-e*this.dim,l=-r*this.dim,c=i;c<o;c++)for(var u=n;u<a;u++)this.data[this._idx(u,c)]=t.data[this._idx(u+s,c+l)]},Dn(\"DEMData\",Hc);var Gc=function(t){this._stringToNumber={},this._numberToString=[];for(var e=0;e<t.length;e++){var r=t[e];this._stringToNumber[r]=e,this._numberToString[e]=r}};Gc.prototype.encode=function(t){return this._stringToNumber[t]},Gc.prototype.decode=function(t){return this._numberToString[t]};var Yc=function(t,e,r,n,a){this.type=\"Feature\",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,this.id=a},Wc={geometry:{configurable:!0}};Wc.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},Wc.geometry.set=function(t){this._geometry=t},Yc.prototype.toJSON=function(){var t={geometry:this.geometry};for(var e in this)\"_geometry\"!==e&&\"_vectorTileFeature\"!==e&&(t[e]=this[e]);return t},Object.defineProperties(Yc.prototype,Wc);var Zc=function(){this.state={},this.stateChanges={},this.deletedStates={}};Zc.prototype.updateState=function(t,e,r){var n=String(e);if(this.stateChanges[t]=this.stateChanges[t]||{},this.stateChanges[t][n]=this.stateChanges[t][n]||{},u(this.stateChanges[t][n],r),null===this.deletedStates[t])for(var a in this.deletedStates[t]={},this.state[t])a!==n&&(this.deletedStates[t][a]=null);else if(this.deletedStates[t]&&null===this.deletedStates[t][n])for(var i in this.deletedStates[t][n]={},this.state[t][n])r[i]||(this.deletedStates[t][n][i]=null);else for(var o in r)this.deletedStates[t]&&this.deletedStates[t][n]&&null===this.deletedStates[t][n][o]&&delete this.deletedStates[t][n][o]},Zc.prototype.removeFeatureState=function(t,e,r){if(null!==this.deletedStates[t]){var n=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},r&&void 0!==e)null!==this.deletedStates[t][n]&&(this.deletedStates[t][n]=this.deletedStates[t][n]||{},this.deletedStates[t][n][r]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][n])for(r in this.deletedStates[t][n]={},this.stateChanges[t][n])this.deletedStates[t][n][r]=null;else this.deletedStates[t][n]=null;else this.deletedStates[t]=null}},Zc.prototype.getState=function(t,e){var r=String(e),n=u({},(this.state[t]||{})[r],(this.stateChanges[t]||{})[r]);if(null===this.deletedStates[t])return{};if(this.deletedStates[t]){var a=this.deletedStates[t][e];if(null===a)return{};for(var i in a)delete n[i]}return n},Zc.prototype.initializeTileState=function(t,e){t.setFeatureState(this.state,e)},Zc.prototype.coalesceChanges=function(t,e){var r={};for(var n in this.stateChanges){this.state[n]=this.state[n]||{};var a={};for(var i in this.stateChanges[n])this.state[n][i]||(this.state[n][i]={}),u(this.state[n][i],this.stateChanges[n][i]),a[i]=this.state[n][i];r[n]=a}for(var o in this.deletedStates){this.state[o]=this.state[o]||{};var s={};if(null===this.deletedStates[o])for(var l in this.state[o])s[l]={},this.state[o][l]={};else for(var c in this.deletedStates[o]){if(null===this.deletedStates[o][c])this.state[o][c]={};else for(var h=0,f=Object.keys(this.deletedStates[o][c]);h<f.length;h+=1)delete this.state[o][c][f[h]];s[c]=this.state[o][c]}r[o]=r[o]||{},u(r[o],s)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(r).length)for(var p in t)t[p].setFeatureState(r,e)};var Xc=function(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new Ln(8192,16,0),this.grid3D=new Ln(8192,16,0),this.featureIndexArray=new ri,this.promoteId=e};function Jc(t,e,r,n,a){return v(t,(function(t,i){var o=e instanceof fa?e.get(i):null;return o&&o.evaluate?o.evaluate(r,n,a):o}))}function Kc(t){for(var e=1/0,r=1/0,n=-1/0,a=-1/0,i=0,o=t;i<o.length;i+=1){var s=o[i];e=Math.min(e,s.x),r=Math.min(r,s.y),n=Math.max(n,s.x),a=Math.max(a,s.y)}return{minX:e,minY:r,maxX:n,maxY:a}}function Qc(t,e){return e-t}Xc.prototype.insert=function(t,e,r,n,a,i){var o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,a);for(var s=i?this.grid3D:this.grid,l=0;l<e.length;l++){for(var c=e[l],u=[1/0,1/0,-1/0,-1/0],h=0;h<c.length;h++){var f=c[h];u[0]=Math.min(u[0],f.x),u[1]=Math.min(u[1],f.y),u[2]=Math.max(u[2],f.x),u[3]=Math.max(u[3],f.y)}u[0]<8192&&u[1]<8192&&u[2]>=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Xc.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new gs.VectorTile(new Hs(this.rawTileData)).layers,this.sourceLayerCoder=new Gc(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"])),this.vtLayers},Xc.prototype.query=function(t,e,r,n){var i=this;this.loadVTLayers();for(var o=t.params||{},s=8192/t.tileSize/t.scale,l=rn(o.filter),c=t.queryGeometry,u=t.queryPadding*s,h=Kc(c),f=this.grid.query(h.minX-u,h.minY-u,h.maxX+u,h.maxY+u),p=Kc(t.cameraQueryGeometry),d=0,g=this.grid3D.query(p.minX-u,p.minY-u,p.maxX+u,p.maxY+u,(function(e,r,n,i){return function(t,e,r,n,i){for(var o=0,s=t;o<s.length;o+=1){var l=s[o];if(e<=l.x&&r<=l.y&&n>=l.x&&i>=l.y)return!0}var c=[new a(e,r),new a(e,i),new a(n,i),new a(n,r)];if(t.length>2)for(var u=0,h=c;u<h.length;u+=1)if(Wi(t,h[u]))return!0;for(var f=0;f<t.length-1;f++)if(Zi(t[f],t[f+1],c))return!0;return!1}(t.cameraQueryGeometry,e-u,r-u,n+u,i+u)}));d<g.length;d+=1)f.push(g[d]);f.sort(Qc);for(var m,v={},y=function(a){var u=f[a];if(u!==m){m=u;var h=i.featureIndexArray.get(u),p=null;i.loadMatchingFeature(v,h.bucketIndex,h.sourceLayerIndex,h.featureIndex,l,o.layers,o.availableImages,e,r,n,(function(e,r,n){return p||(p=Di(e)),r.queryIntersectsFeature(c,e,n,p,i.z,t.transform,s,t.pixelPosMatrix)}))}},x=0;x<f.length;x++)y(x);return v},Xc.prototype.loadMatchingFeature=function(t,e,r,n,a,i,o,s,l,c,u){var h=this.bucketLayerIDs[e];if(!i||function(t,e){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])>=0)return!0;return!1}(i,h)){var f=this.sourceLayerCoder.decode(r),p=this.vtLayers[f].feature(n);if(a.filter(new aa(this.tileID.overscaledZ),p))for(var d=this.getId(p,f),g=0;g<h.length;g++){var m=h[g];if(!(i&&i.indexOf(m)<0)){var v=s[m];if(v){var y={};void 0!==d&&c&&(y=c.getState(v.sourceLayer||\"_geojsonTileLayer\",d));var x=l[m];x.paint=Jc(x.paint,v.paint,p,y,o),x.layout=Jc(x.layout,v.layout,p,y,o);var b=!u||u(p,v,y);if(b){var _=new Yc(p,this.z,this.x,this.y,d);_.layer=x;var w=t[m];void 0===w&&(w=t[m]=[]),w.push({featureIndex:n,feature:_,intersectionZ:b})}}}}}},Xc.prototype.lookupSymbolFeatures=function(t,e,r,n,a,i,o,s){var l={};this.loadVTLayers();for(var c=rn(a),u=0,h=t;u<h.length;u+=1)this.loadMatchingFeature(l,r,n,h[u],c,i,o,s,e);return l},Xc.prototype.hasLayer=function(t){for(var e=0,r=this.bucketLayerIDs;e<r.length;e+=1)for(var n=0,a=r[e];n<a.length;n+=1)if(t===a[n])return!0;return!1},Xc.prototype.getId=function(t,e){var r=t.id;return this.promoteId&&\"boolean\"==typeof(r=t.properties[\"string\"==typeof this.promoteId?this.promoteId:this.promoteId[e]])&&(r=Number(r)),r},Dn(\"FeatureIndex\",Xc,{omit:[\"rawTileData\",\"sourceLayerCoder\"]});var $c=function(t,e){this.tileID=t,this.uid=f(),this.uses=0,this.tileSize=e,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state=\"loading\"};$c.prototype.registerFadeDuration=function(t){var e=t+this.timeAdded;e<R.now()||this.fadeEndTime&&e<this.fadeEndTime||(this.fadeEndTime=e)},$c.prototype.wasRequested=function(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state},$c.prototype.loadVectorData=function(t,e,r){if(this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",t){for(var n in t.featureIndex&&(this.latestFeatureIndex=t.featureIndex,t.rawTileData?(this.latestRawTileData=t.rawTileData,this.latestFeatureIndex.rawTileData=t.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=t.collisionBoxArray,this.buckets=function(t,e){var r={};if(!e)return r;for(var n=function(){var t=i[a],n=t.layerIds.map((function(t){return e.getLayer(t)})).filter(Boolean);if(0!==n.length){t.layers=n,t.stateDependentLayerIds&&(t.stateDependentLayers=t.stateDependentLayerIds.map((function(t){return n.filter((function(e){return e.id===t}))[0]})));for(var o=0,s=n;o<s.length;o+=1)r[s[o].id]=t}},a=0,i=t;a<i.length;a+=1)n();return r}(t.buckets,e.style),this.hasSymbolBuckets=!1,this.buckets){var a=this.buckets[n];if(a instanceof hc){if(this.hasSymbolBuckets=!0,!r)break;a.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var i in this.buckets){var o=this.buckets[i];if(o instanceof hc&&o.hasRTLText){this.hasRTLText=!0,na.isLoading()||na.isLoaded()||\"deferred\"!==ea()||ra();break}}for(var s in this.queryPadding=0,this.buckets){var l=this.buckets[s];this.queryPadding=Math.max(this.queryPadding,e.style.getLayer(s).queryRadius(l))}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}else this.collisionBoxArray=new Za},$c.prototype.unloadVectorData=function(){for(var t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state=\"unloaded\"},$c.prototype.getBucket=function(t){return this.buckets[t.id]},$c.prototype.upload=function(t){for(var e in this.buckets){var r=this.buckets[e];r.uploadPending()&&r.upload(t)}var n=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Sc(t,this.imageAtlas.image,n.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Sc(t,this.glyphAtlasImage,n.ALPHA),this.glyphAtlasImage=null)},$c.prototype.prepare=function(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture)},$c.prototype.queryRenderedFeatures=function(t,e,r,n,a,i,o,s,l,c){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:n,cameraQueryGeometry:a,scale:i,tileSize:this.tileSize,pixelPosMatrix:c,transform:s,params:o,queryPadding:this.queryPadding*l},t,e,r):{}},$c.prototype.querySourceFeatures=function(t,e){var r=this.latestFeatureIndex;if(r&&r.rawTileData){var n=r.loadVTLayers(),a=e?e.sourceLayer:\"\",i=n._geojsonTileLayer||n[a];if(i)for(var o=rn(e&&e.filter),s=this.tileID.canonical,l=s.z,c=s.x,u=s.y,h={z:l,x:c,y:u},f=0;f<i.length;f++){var p=i.feature(f);if(o.filter(new aa(this.tileID.overscaledZ),p)){var d=r.getId(p,a),g=new Yc(p,l,c,u,d);g.tile=h,t.push(g)}}}},$c.prototype.hasData=function(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state},$c.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},$c.prototype.setExpiryData=function(t){var e=this.expirationTime;if(t.cacheControl){var r=M(t.cacheControl);r[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*r[\"max-age\"])}else t.expires&&(this.expirationTime=new Date(t.expires).getTime());if(this.expirationTime){var n=Date.now(),a=!1;if(this.expirationTime>n)a=!1;else if(e)if(this.expirationTime<e)a=!0;else{var i=this.expirationTime-e;i?this.expirationTime=n+Math.max(i,3e4):a=!0}else a=!0;a?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}},$c.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},$c.prototype.setFeatureState=function(t,e){if(this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData&&0!==Object.keys(t).length){var r=this.latestFeatureIndex.loadVTLayers();for(var n in this.buckets)if(e.style.hasLayer(n)){var a=this.buckets[n],i=a.layers[0].sourceLayer||\"_geojsonTileLayer\",o=r[i],s=t[i];if(o&&s&&0!==Object.keys(s).length){a.update(s,o,this.imageAtlas&&this.imageAtlas.patternPositions||{});var l=e&&e.style&&e.style.getLayer(n);l&&(this.queryPadding=Math.max(this.queryPadding,l.queryRadius(a)))}}}},$c.prototype.holdingForFade=function(){return void 0!==this.symbolFadeHoldUntil},$c.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<R.now()},$c.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},$c.prototype.setHoldDuration=function(t){this.symbolFadeHoldUntil=R.now()+t},$c.prototype.setDependencies=function(t,e){for(var r={},n=0,a=e;n<a.length;n+=1)r[a[n]]=!0;this.dependencies[t]=r},$c.prototype.hasDependency=function(t,e){for(var r=0,n=t;r<n.length;r+=1){var a=this.dependencies[n[r]];if(a)for(var i=0,o=e;i<o.length;i+=1)if(a[o[i]])return!0}return!1};var tu=self.performance,eu=function(t){this._marks={start:[t.url,\"start\"].join(\"#\"),end:[t.url,\"end\"].join(\"#\"),measure:t.url.toString()},tu.mark(this._marks.start)};eu.prototype.finish=function(){tu.mark(this._marks.end);var t=tu.getEntriesByName(this._marks.measure);return 0===t.length&&(tu.measure(this._marks.measure,this._marks.start,this._marks.end),t=tu.getEntriesByName(this._marks.measure),tu.clearMarks(this._marks.start),tu.clearMarks(this._marks.end),tu.clearMeasures(this._marks.measure)),t},t.Actor=Cc,t.AlphaImage=fo,t.CanonicalTileID=jc,t.CollisionBoxArray=Za,t.Color=Kt,t.DEMData=Hc,t.DataConstantProperty=pa,t.DictionaryCoder=Gc,t.EXTENT=8192,t.ErrorEvent=kt,t.EvaluationParameters=aa,t.Event=Tt,t.Evented=Mt,t.FeatureIndex=Xc,t.FillBucket=rs,t.FillExtrusionBucket=xs,t.ImageAtlas=dl,t.ImagePosition=fl,t.LineBucket=Cs,t.LngLat=Ic,t.LngLatBounds=Pc,t.MercatorCoordinate=Nc,t.ONE_EM=24,t.OverscaledTileID=Vc,t.Point=a,t.Point$1=a,t.Properties=ya,t.Protobuf=Hs,t.RGBAImage=po,t.RequestManager=q,t.RequestPerformance=eu,t.ResourceType=ft,t.SegmentVector=ai,t.SourceFeatureState=Zc,t.StructArrayLayout1ui2=Ha,t.StructArrayLayout2f1f2i16=Da,t.StructArrayLayout2i4=Ma,t.StructArrayLayout3ui6=Fa,t.StructArrayLayout4i8=Aa,t.SymbolBucket=hc,t.Texture=Sc,t.Tile=$c,t.Transitionable=sa,t.Uniform1f=vi,t.Uniform1i=mi,t.Uniform2f=yi,t.Uniform3f=xi,t.Uniform4f=bi,t.UniformColor=_i,t.UniformMatrix4f=Ti,t.UnwrappedTileID=Uc,t.ValidationError=St,t.WritingMode=gl,t.ZoomHistory=Un,t.add=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},t.addDynamicAttributes=sc,t.asyncAll=function(t,e,r){if(!t.length)return r(null,[]);var n=t.length,a=new Array(t.length),i=null;t.forEach((function(t,o){e(t,(function(t,e){t&&(i=t),a[o]=e,0==--n&&r(i,a)}))}))},t.bezier=o,t.bindAll=g,t.browser=R,t.cacheEntryPossiblyAdded=function(t){++ut>ot&&(t.getActor().send(\"enforceCacheSizeLimit\",it),ut=0)},t.clamp=l,t.clearTileCache=function(t){var e=self.caches.delete(\"mapbox-tiles\");t&&e.catch(t).then((function(){return t()}))},t.clipLine=jl,t.clone=function(t){var e=new to(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.clone$1=x,t.clone$2=function(t){var e=new to(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},t.collisionCircleLayout=Ns,t.config=F,t.create=function(){var t=new to(16);return to!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.create$1=function(){var t=new to(9);return to!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},t.create$2=function(){var t=new to(4);return to!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},t.createCommonjsModule=e,t.createExpression=qr,t.createLayout=Ta,t.createStyleLayer=function(t){return\"custom\"===t.type?new bc(t):new _c[t.type](t)},t.cross=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2];return t[0]=a*l-i*s,t[1]=i*o-n*l,t[2]=n*s-a*o,t},t.deepEqual=function t(e,r){if(Array.isArray(e)){if(!Array.isArray(r)||e.length!==r.length)return!1;for(var n=0;n<e.length;n++)if(!t(e[n],r[n]))return!1;return!0}if(\"object\"==typeof e&&null!==e&&null!==r){if(\"object\"!=typeof r)return!1;if(Object.keys(e).length!==Object.keys(r).length)return!1;for(var a in e)if(!t(e[a],r[a]))return!1;return!0}return e===r},t.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]},t.dot$1=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},t.ease=s,t.emitValidationErrors=Cn,t.endsWith=m,t.enforceCacheSizeLimit=function(t){st(),Q&&Q.then((function(e){e.keys().then((function(r){for(var n=0;n<r.length-t;n++)e.delete(r[n])}))}))},t.evaluateSizeForFeature=Pl,t.evaluateSizeForZoom=Il,t.evaluateVariableOffset=$l,t.evented=ta,t.extend=u,t.featureFilter=rn,t.filterObject=y,t.fromRotation=function(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=r,t[2]=0,t[3]=-r,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},t.getAnchorAlignment=Al,t.getAnchorJustification=tc,t.getArrayBuffer=yt,t.getImage=bt,t.getJSON=function(t,e){return vt(u(t,{type:\"json\"}),e)},t.getRTLTextPluginStatus=ea,t.getReferrer=mt,t.getVideo=function(t,e){var r,n,a=self.document.createElement(\"video\");a.muted=!0,a.onloadstart=function(){e(null,a)};for(var i=0;i<t.length;i++){var o=self.document.createElement(\"source\");r=t[i],n=void 0,(n=self.document.createElement(\"a\")).href=r,(n.protocol!==self.document.location.protocol||n.host!==self.document.location.host)&&(a.crossOrigin=\"Anonymous\"),o.src=t[i],a.appendChild(o)}return{cancel:function(){}}},t.identity=eo,t.invert=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],g=e[13],m=e[14],v=e[15],y=r*s-n*o,x=r*l-a*o,b=r*c-i*o,_=n*l-a*s,w=n*c-i*s,T=a*c-i*l,k=u*g-h*d,M=u*m-f*d,A=u*v-p*d,S=h*m-f*g,E=h*v-p*g,C=f*v-p*m,L=y*C-x*E+b*S+_*A-w*M+T*k;return L?(t[0]=(s*C-l*E+c*S)*(L=1/L),t[1]=(a*E-n*C-i*S)*L,t[2]=(g*T-m*w+v*_)*L,t[3]=(f*w-h*T-p*_)*L,t[4]=(l*A-o*C-c*M)*L,t[5]=(r*C-a*A+i*M)*L,t[6]=(m*b-d*T-v*x)*L,t[7]=(u*T-f*b+p*x)*L,t[8]=(o*E-s*A+c*k)*L,t[9]=(n*A-r*E-i*k)*L,t[10]=(d*w-g*b+v*y)*L,t[11]=(h*b-u*w-p*y)*L,t[12]=(s*M-o*S-l*k)*L,t[13]=(r*S-n*M+a*k)*L,t[14]=(g*x-d*_-m*y)*L,t[15]=(u*_-h*x+f*y)*L,t):null},t.isChar=Vn,t.isMapboxURL=H,t.keysDifference=function(t,e){var r=[];for(var n in t)n in e||r.push(n);return r},t.makeRequest=vt,t.mapObject=v,t.mercatorXfromLng=Dc,t.mercatorYfromLat=Rc,t.mercatorZfromAltitude=Fc,t.mul=ao,t.multiply=ro,t.mvt=gs,t.normalize=function(t,e){var r=e[0],n=e[1],a=e[2],i=r*r+n*n+a*a;return i>0&&(i=1/Math.sqrt(i)),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t},t.number=Ue,t.offscreenCanvasSupported=ht,t.ortho=function(t,e,r,n,a,i,o){var s=1/(e-r),l=1/(n-a),c=1/(i-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(a+n)*l,t[14]=(o+i)*c,t[15]=1,t},t.parseGlyphPBF=function(t){return new Hs(t).readFields(ll,[])},t.pbf=Hs,t.performSymbolLayout=function(t,e,r,n,a,i,o){t.createArrays(),t.tilePixelRatio=8192/(512*t.overscaling),t.compareText={},t.iconsNeedLinear=!1;var s=t.layers[0].layout,l=t.layers[0]._unevaluatedLayout._values,c={};if(\"composite\"===t.textSizeData.kind){var u=t.textSizeData,h=u.maxZoom;c.compositeTextSizes=[l[\"text-size\"].possiblyEvaluate(new aa(u.minZoom),o),l[\"text-size\"].possiblyEvaluate(new aa(h),o)]}if(\"composite\"===t.iconSizeData.kind){var f=t.iconSizeData,p=f.maxZoom;c.compositeIconSizes=[l[\"icon-size\"].possiblyEvaluate(new aa(f.minZoom),o),l[\"icon-size\"].possiblyEvaluate(new aa(p),o)]}c.layoutTextSize=l[\"text-size\"].possiblyEvaluate(new aa(t.zoom+1),o),c.layoutIconSize=l[\"icon-size\"].possiblyEvaluate(new aa(t.zoom+1),o),c.textMaxSize=l[\"text-size\"].possiblyEvaluate(new aa(18));for(var d=24*s.get(\"text-line-height\"),g=\"map\"===s.get(\"text-rotation-alignment\")&&\"point\"!==s.get(\"symbol-placement\"),m=s.get(\"text-keep-upright\"),v=s.get(\"text-size\"),y=function(){var i=b[x],l=s.get(\"text-font\").evaluate(i,{},o).join(\",\"),u=v.evaluate(i,{},o),h=c.layoutTextSize.evaluate(i,{},o),f=c.layoutIconSize.evaluate(i,{},o),p={horizontal:{},vertical:void 0},y=i.text,w=[0,0];if(y){var T=y.toString(),k=24*s.get(\"text-letter-spacing\").evaluate(i,{},o),M=function(t){for(var e=0,r=t;e<r.length;e+=1)if(n=r[e].charCodeAt(0),Vn.Arabic(n)||Vn[\"Arabic Supplement\"](n)||Vn[\"Arabic Extended-A\"](n)||Vn[\"Arabic Presentation Forms-A\"](n)||Vn[\"Arabic Presentation Forms-B\"](n))return!1;var n;return!0}(T)?k:0,A=s.get(\"text-anchor\").evaluate(i,{},o),S=s.get(\"text-variable-anchor\");if(!S){var E=s.get(\"text-radial-offset\").evaluate(i,{},o);w=E?$l(A,[24*E,Ql]):s.get(\"text-offset\").evaluate(i,{},o).map((function(t){return 24*t}))}var C=g?\"center\":s.get(\"text-justify\").evaluate(i,{},o),L=s.get(\"symbol-placement\"),P=\"point\"===L?24*s.get(\"text-max-width\").evaluate(i,{},o):0,I=function(){t.allowVerticalPlacement&&qn(T)&&(p.vertical=yl(y,e,r,a,l,P,d,A,\"left\",M,w,gl.vertical,!0,L,h,u))};if(!g&&S){for(var z=\"auto\"===C?S.map((function(t){return tc(t)})):[C],O=!1,D=0;D<z.length;D++){var R=z[D];if(!p.horizontal[R])if(O)p.horizontal[R]=p.horizontal[0];else{var F=yl(y,e,r,a,l,P,d,\"center\",R,M,w,gl.horizontal,!1,L,h,u);F&&(p.horizontal[R]=F,O=1===F.positionedLines.length)}}I()}else{\"auto\"===C&&(C=tc(A));var B=yl(y,e,r,a,l,P,d,A,C,M,w,gl.horizontal,!1,L,h,u);B&&(p.horizontal[C]=B),I(),qn(T)&&g&&m&&(p.vertical=yl(y,e,r,a,l,P,d,A,C,M,w,gl.vertical,!1,L,h,u))}}var N=void 0,j=!1;if(i.icon&&i.icon.name){var U=n[i.icon.name];U&&(N=function(t,e,r){var n=Al(r),a=e[0]-t.displaySize[0]*n.horizontalAlign,i=e[1]-t.displaySize[1]*n.verticalAlign;return{image:t,top:i,bottom:i+t.displaySize[1],left:a,right:a+t.displaySize[0]}}(a[i.icon.name],s.get(\"icon-offset\").evaluate(i,{},o),s.get(\"icon-anchor\").evaluate(i,{},o)),j=U.sdf,void 0===t.sdfIcons?t.sdfIcons=U.sdf:t.sdfIcons!==U.sdf&&_(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),(U.pixelRatio!==t.pixelRatio||0!==s.get(\"icon-rotate\").constantOr(1))&&(t.iconsNeedLinear=!0))}var V=rc(p.horizontal)||p.vertical;t.iconsInText=!!V&&V.iconsInText,(V||N)&&function(t,e,r,n,a,i,o,s,l,c,u){var h=i.textMaxSize.evaluate(e,{});void 0===h&&(h=o);var f,p=t.layers[0].layout,d=p.get(\"icon-offset\").evaluate(e,{},u),g=rc(r.horizontal),m=o/24,v=t.tilePixelRatio*m,y=t.tilePixelRatio*h/24,x=t.tilePixelRatio*s,b=t.tilePixelRatio*p.get(\"symbol-spacing\"),w=p.get(\"text-padding\")*t.tilePixelRatio,T=p.get(\"icon-padding\")*t.tilePixelRatio,k=p.get(\"text-max-angle\")/180*Math.PI,M=\"map\"===p.get(\"text-rotation-alignment\")&&\"point\"!==p.get(\"symbol-placement\"),A=\"map\"===p.get(\"icon-rotation-alignment\")&&\"point\"!==p.get(\"symbol-placement\"),S=p.get(\"symbol-placement\"),E=b/2,C=p.get(\"icon-text-fit\");n&&\"none\"!==C&&(t.allowVerticalPlacement&&r.vertical&&(f=El(n,r.vertical,C,p.get(\"icon-text-fit-padding\"),d,m)),g&&(n=El(n,g,C,p.get(\"icon-text-fit-padding\"),d,m)));var L=function(s,h){h.x<0||h.x>=8192||h.y<0||h.y>=8192||function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,w,T,k,M){var A,S,E,C,L,P=t.addToLineVertexArray(e,r),I=0,z=0,O=0,D=0,R=-1,F=-1,B={},N=ci(\"\"),j=0,U=0;if(void 0===s._unevaluatedLayout.getValue(\"text-radial-offset\")?(j=(A=s.layout.get(\"text-offset\").evaluate(b,{},k).map((function(t){return 24*t})))[0],U=A[1]):(j=24*s.layout.get(\"text-radial-offset\").evaluate(b,{},k),U=Ql),t.allowVerticalPlacement&&n.vertical){var V=s.layout.get(\"text-rotate\").evaluate(b,{},k)+90;C=new Yl(l,e,c,u,h,n.vertical,f,p,d,V),o&&(L=new Yl(l,e,c,u,h,o,m,v,d,V))}if(a){var q=s.layout.get(\"icon-rotate\").evaluate(b,{}),H=\"none\"!==s.layout.get(\"icon-text-fit\"),G=Ul(a,q,T,H),Y=o?Ul(o,q,T,H):void 0;E=new Yl(l,e,c,u,h,a,m,v,!1,q),I=4*G.length;var W=t.iconSizeData,Z=null;\"source\"===W.kind?(Z=[128*s.layout.get(\"icon-size\").evaluate(b,{})])[0]>32640&&_(t.layerIds[0]+': Value for \"icon-size\" is >= 255. Reduce your \"icon-size\".'):\"composite\"===W.kind&&((Z=[128*w.compositeIconSizes[0].evaluate(b,{},k),128*w.compositeIconSizes[1].evaluate(b,{},k)])[0]>32640||Z[1]>32640)&&_(t.layerIds[0]+': Value for \"icon-size\" is >= 255. Reduce your \"icon-size\".'),t.addSymbols(t.icon,G,Z,x,y,b,!1,e,P.lineStartIndex,P.lineLength,-1,k),R=t.icon.placedSymbolArray.length-1,Y&&(z=4*Y.length,t.addSymbols(t.icon,Y,Z,x,y,b,gl.vertical,e,P.lineStartIndex,P.lineLength,-1,k),F=t.icon.placedSymbolArray.length-1)}for(var X in n.horizontal){var J=n.horizontal[X];if(!S){N=ci(J.text);var K=s.layout.get(\"text-rotate\").evaluate(b,{},k);S=new Yl(l,e,c,u,h,J,f,p,d,K)}var Q=1===J.positionedLines.length;if(O+=ec(t,e,J,i,s,d,b,g,P,n.vertical?gl.horizontal:gl.horizontalOnly,Q?Object.keys(n.horizontal):[X],B,R,w,k),Q)break}n.vertical&&(D+=ec(t,e,n.vertical,i,s,d,b,g,P,gl.vertical,[\"vertical\"],B,F,w,k));var $=S?S.boxStartIndex:t.collisionBoxArray.length,tt=S?S.boxEndIndex:t.collisionBoxArray.length,et=C?C.boxStartIndex:t.collisionBoxArray.length,rt=C?C.boxEndIndex:t.collisionBoxArray.length,nt=E?E.boxStartIndex:t.collisionBoxArray.length,at=E?E.boxEndIndex:t.collisionBoxArray.length,it=L?L.boxStartIndex:t.collisionBoxArray.length,ot=L?L.boxEndIndex:t.collisionBoxArray.length,st=-1,lt=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};st=lt(S,st),st=lt(C,st),st=lt(E,st);var ct=(st=lt(L,st))>-1?1:0;ct&&(st*=M/24),t.glyphOffsetArray.length>=hc.MAX_GLYPHS&&_(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),void 0!==b.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,b.sortKey),t.symbolInstances.emplaceBack(e.x,e.y,B.right>=0?B.right:-1,B.center>=0?B.center:-1,B.left>=0?B.left:-1,B.vertical||-1,R,F,N,$,tt,et,rt,nt,at,it,ot,c,O,D,I,z,ct,0,f,j,U,st)}(t,h,s,r,n,a,f,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,v,w,M,l,x,T,A,d,e,i,c,u,o)};if(\"line\"===S)for(var P=0,I=jl(e.geometry,0,0,8192,8192);P<I.length;P+=1)for(var z=I[P],O=0,D=Nl(z,b,k,r.vertical||g,n,24,y,t.overscaling,8192);O<D.length;O+=1){var R=D[O];g&&nc(t,g.text,E,R)||L(z,R)}else if(\"line-center\"===S)for(var F=0,B=e.geometry;F<B.length;F+=1){var N=B[F];if(N.length>1){var j=Bl(N,k,r.vertical||g,n,24,y);j&&L(N,j)}}else if(\"Polygon\"===e.type)for(var U=0,V=Qo(e.geometry,0);U<V.length;U+=1){var q=V[U],H=Xl(q,16);L(q[0],new Cl(H.x,H.y,0))}else if(\"LineString\"===e.type)for(var G=0,Y=e.geometry;G<Y.length;G+=1){var W=Y[G];L(W,new Cl(W[0].x,W[0].y,0))}else if(\"Point\"===e.type)for(var Z=0,X=e.geometry;Z<X.length;Z+=1)for(var J=0,K=X[Z];J<K.length;J+=1){var Q=K[J];L([Q],new Cl(Q.x,Q.y,0))}}(t,i,p,N,n,c,h,f,w,j,o)},x=0,b=t.features;x<b.length;x+=1)y();i&&t.generateCollisionDebugBuffers()},t.perspective=function(t,e,r,n,a){var i,o=1/Math.tan(e/2);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=a&&a!==1/0?(t[10]=(a+n)*(i=1/(n-a)),t[14]=2*a*n*i):(t[10]=-1,t[14]=-2*n),t},t.pick=function(t,e){for(var r={},n=0;n<e.length;n++){var a=e[n];a in t&&(r[a]=t[a])}return r},t.plugin=na,t.polygonIntersectsPolygon=Bi,t.postMapLoadEvent=at,t.postTurnstileEvent=rt,t.potpack=hl,t.refProperties=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"],t.register=Dn,t.registerForPluginStateChange=function(t){return t({pluginStatus:Jn,pluginURL:Kn}),ta.on(\"pluginStateChange\",t),t},t.rotate=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3],s=Math.sin(r),l=Math.cos(r);return t[0]=n*l+i*s,t[1]=a*l+o*s,t[2]=n*-s+i*l,t[3]=a*-s+o*l,t},t.rotateX=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=i*a+c*n,t[5]=o*a+u*n,t[6]=s*a+h*n,t[7]=l*a+f*n,t[8]=c*a-i*n,t[9]=u*a-o*n,t[10]=h*a-s*n,t[11]=f*a-l*n,t},t.rotateZ=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=i*a+c*n,t[1]=o*a+u*n,t[2]=s*a+h*n,t[3]=l*a+f*n,t[4]=c*a-i*n,t[5]=u*a-o*n,t[6]=h*a-s*n,t[7]=f*a-l*n,t},t.scale=function(t,e,r){var n=r[0],a=r[1],i=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*a,t[5]=e[5]*a,t[6]=e[6]*a,t[7]=e[7]*a,t[8]=e[8]*i,t[9]=e[9]*i,t[10]=e[10]*i,t[11]=e[11]*i,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.scale$1=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t},t.scale$2=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t},t.setCacheLimits=function(t,e){it=t,ot=e},t.setRTLTextPlugin=function(t,e,r){if(void 0===r&&(r=!1),\"deferred\"===Jn||\"loading\"===Jn||\"loaded\"===Jn)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");Kn=R.resolveURL(t),Jn=\"deferred\",Xn=e,$n(),r||ra()},t.sphericalToCartesian=function(t){var e=t[0],r=t[1],n=t[2];return r+=90,r*=Math.PI/180,n*=Math.PI/180,{x:e*Math.cos(r)*Math.sin(n),y:e*Math.sin(r)*Math.sin(n),z:e*Math.cos(n)}},t.sqrLen=function(t){var e=t[0],r=t[1];return e*e+r*r},t.styleSpec=At,t.sub=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t},t.symbolSize=zl,t.transformMat3=function(t,e,r){var n=e[0],a=e[1],i=e[2];return t[0]=n*r[0]+a*r[3]+i*r[6],t[1]=n*r[1]+a*r[4]+i*r[7],t[2]=n*r[2]+a*r[5]+i*r[8],t},t.transformMat4=io,t.translate=function(t,e,r){var n,a,i,o,s,l,c,u,h,f,p,d,g=r[0],m=r[1],v=r[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*v+e[12],t[13]=e[1]*g+e[5]*m+e[9]*v+e[13],t[14]=e[2]*g+e[6]*m+e[10]*v+e[14],t[15]=e[3]*g+e[7]*m+e[11]*v+e[15]):(a=e[1],i=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n=e[0],t[1]=a,t[2]=i,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*g+s*m+h*v+e[12],t[13]=a*g+l*m+f*v+e[13],t[14]=i*g+c*m+p*v+e[14],t[15]=o*g+u*m+d*v+e[15]),t},t.triggerPluginCompletionEvent=Qn,t.uniqueId=f,t.validateCustomStyleLayer=function(t){var e=[],r=t.id;return void 0===r&&e.push({message:\"layers.\"+r+': missing required property \"id\"'}),void 0===t.render&&e.push({message:\"layers.\"+r+': missing required method \"render\"'}),t.renderingMode&&\"2d\"!==t.renderingMode&&\"3d\"!==t.renderingMode&&e.push({message:\"layers.\"+r+': property \"renderingMode\" must be either \"2d\" or \"3d\"'}),e},t.validateLight=An,t.validateStyle=Mn,t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.vectorTile=gs,t.version=\"1.10.1\",t.warnOnce=_,t.webpSupported=B,t.window=self,t.wrap=c})),n(0,(function(t){function e(t){var r=typeof t;if(\"number\"===r||\"boolean\"===r||\"string\"===r||null==t)return JSON.stringify(t);if(Array.isArray(t)){for(var n=\"[\",a=0,i=t;a<i.length;a+=1)n+=e(i[a])+\",\";return n+\"]\"}for(var o=Object.keys(t).sort(),s=\"{\",l=0;l<o.length;l++)s+=JSON.stringify(o[l])+\":\"+e(t[o[l]])+\",\";return s+\"}\"}function r(r){for(var n=\"\",a=0,i=t.refProperties;a<i.length;a+=1)n+=\"/\"+e(r[i[a]]);return n}var n=function(t){this.keyCache={},t&&this.replace(t)};n.prototype.replace=function(t){this._layerConfigs={},this._layers={},this.update(t,[])},n.prototype.update=function(e,n){for(var a=this,i=0,o=e;i<o.length;i+=1){var s=o[i];this._layerConfigs[s.id]=s;var l=this._layers[s.id]=t.createStyleLayer(s);l._featureFilter=t.featureFilter(l.filter),this.keyCache[s.id]&&delete this.keyCache[s.id]}for(var c=0,u=n;c<u.length;c+=1){var h=u[c];delete this.keyCache[h],delete this._layerConfigs[h],delete this._layers[h]}this.familiesBySource={};for(var f=0,p=function(t,e){for(var n={},a=0;a<t.length;a++){var i=e&&e[t[a].id]||r(t[a]);e&&(e[t[a].id]=i);var o=n[i];o||(o=n[i]=[]),o.push(t[a])}var s=[];for(var l in n)s.push(n[l]);return s}(t.values(this._layerConfigs),this.keyCache);f<p.length;f+=1){var d=p[f].map((function(t){return a._layers[t.id]})),g=d[0];if(\"none\"!==g.visibility){var m=g.source||\"\",v=this.familiesBySource[m];v||(v=this.familiesBySource[m]={});var y=g.sourceLayer||\"_geojsonTileLayer\",x=v[y];x||(x=v[y]=[]),x.push(d)}}};var a=function(e){var r={},n=[];for(var a in e){var i=e[a],o=r[a]={};for(var s in i){var l=i[+s];if(l&&0!==l.bitmap.width&&0!==l.bitmap.height){var c={x:0,y:0,w:l.bitmap.width+2,h:l.bitmap.height+2};n.push(c),o[s]={rect:c,metrics:l.metrics}}}}var u=t.potpack(n),h=new t.AlphaImage({width:u.w||1,height:u.h||1});for(var f in e){var p=e[f];for(var d in p){var g=p[+d];if(g&&0!==g.bitmap.width&&0!==g.bitmap.height){var m=r[f][d].rect;t.AlphaImage.copy(g.bitmap,h,{x:0,y:0},{x:m.x+1,y:m.y+1},g.bitmap)}}}this.image=h,this.positions=r};t.register(\"GlyphAtlas\",a);var i=function(e){this.tileID=new t.OverscaledTileID(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId};function o(e,r,n){for(var a=new t.EvaluationParameters(r),i=0,o=e;i<o.length;i+=1)o[i].recalculate(a,n)}function s(e,r){var n=t.getArrayBuffer(e.request,(function(e,n,a,i){e?r(e):n&&r(null,{vectorTile:new t.vectorTile.VectorTile(new t.pbf(n)),rawData:n,cacheControl:a,expires:i})}));return function(){n.cancel(),r()}}i.prototype.parse=function(e,r,n,i,s){var l=this;this.status=\"parsing\",this.data=e,this.collisionBoxArray=new t.CollisionBoxArray;var c=new t.DictionaryCoder(Object.keys(e.layers).sort()),u=new t.FeatureIndex(this.tileID,this.promoteId);u.bucketLayerIDs=[];var h,f,p,d,g={},m={featureIndex:u,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:n},v=r.familiesBySource[this.source];for(var y in v){var x=e.layers[y];if(x){1===x.version&&t.warnOnce('Vector tile source \"'+this.source+'\" layer \"'+y+'\" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var b=c.encode(y),_=[],w=0;w<x.length;w++){var T=x.feature(w),k=u.getId(T,y);_.push({feature:T,id:k,index:w,sourceLayerIndex:b})}for(var M=0,A=v[y];M<A.length;M+=1){var S=A[M],E=S[0];E.minzoom&&this.zoom<Math.floor(E.minzoom)||E.maxzoom&&this.zoom>=E.maxzoom||\"none\"!==E.visibility&&(o(S,this.zoom,n),(g[E.id]=E.createBucket({index:u.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:b,sourceID:this.source})).populate(_,m,this.tileID.canonical),u.bucketLayerIDs.push(S.map((function(t){return t.id}))))}}}var C=t.mapObject(m.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?i.send(\"getGlyphs\",{uid:this.uid,stacks:C},(function(t,e){h||(h=t,f=e,I.call(l))})):f={};var L=Object.keys(m.iconDependencies);L.length?i.send(\"getImages\",{icons:L,source:this.source,tileID:this.tileID,type:\"icons\"},(function(t,e){h||(h=t,p=e,I.call(l))})):p={};var P=Object.keys(m.patternDependencies);function I(){if(h)return s(h);if(f&&p&&d){var e=new a(f),r=new t.ImageAtlas(p,d);for(var i in g){var l=g[i];l instanceof t.SymbolBucket?(o(l.layers,this.zoom,n),t.performSymbolLayout(l,f,e.positions,p,r.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):l.hasPattern&&(l instanceof t.LineBucket||l instanceof t.FillBucket||l instanceof t.FillExtrusionBucket)&&(o(l.layers,this.zoom,n),l.addFeatures(m,this.tileID.canonical,r.patternPositions))}this.status=\"done\",s(null,{buckets:t.values(g).filter((function(t){return!t.isEmpty()})),featureIndex:u,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:r,glyphMap:this.returnDependencies?f:null,iconMap:this.returnDependencies?p:null,glyphPositions:this.returnDependencies?e.positions:null})}}P.length?i.send(\"getImages\",{icons:P,source:this.source,tileID:this.tileID,type:\"patterns\"},(function(t,e){h||(h=t,d=e,I.call(l))})):d={},I.call(this)};var l=function(t,e,r,n){this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=n||s,this.loading={},this.loaded={}};l.prototype.loadTile=function(e,r){var n=this,a=e.uid;this.loading||(this.loading={});var o=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),s=this.loading[a]=new i(e);s.abort=this.loadVectorData(e,(function(e,i){if(delete n.loading[a],e||!i)return s.status=\"done\",n.loaded[a]=s,r(e);var l=i.rawData,c={};i.expires&&(c.expires=i.expires),i.cacheControl&&(c.cacheControl=i.cacheControl);var u={};if(o){var h=o.finish();h&&(u.resourceTiming=JSON.parse(JSON.stringify(h)))}s.vectorTile=i.vectorTile,s.parse(i.vectorTile,n.layerIndex,n.availableImages,n.actor,(function(e,n){if(e||!n)return r(e);r(null,t.extend({rawTileData:l.slice(0)},n,c,u))})),n.loaded=n.loaded||{},n.loaded[a]=s}))},l.prototype.reloadTile=function(t,e){var r=this,n=this.loaded,a=t.uid,i=this;if(n&&n[a]){var o=n[a];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,n){var a=o.reloadCallback;a&&(delete o.reloadCallback,o.parse(o.vectorTile,i.layerIndex,r.availableImages,i.actor,a)),e(t,n)};\"parsing\"===o.status?o.reloadCallback=s:\"done\"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},l.prototype.abortTile=function(t,e){var r=this.loading,n=t.uid;r&&r[n]&&r[n].abort&&(r[n].abort(),delete r[n]),e()},l.prototype.removeTile=function(t,e){var r=this.loaded,n=t.uid;r&&r[n]&&delete r[n],e()};var c=t.window.ImageBitmap,u=function(){this.loaded={}};function h(t,e){if(0!==t.length){f(t[0],e);for(var r=1;r<t.length;r++)f(t[r],!e)}}function f(t,e){for(var r=0,n=0,a=t.length,i=a-1;n<a;i=n++)r+=(t[n][0]-t[i][0])*(t[i][1]+t[n][1]);r>=0!=!!e&&t.reverse()}u.prototype.loadTile=function(e,r){var n=e.uid,a=e.encoding,i=e.rawImageData,o=c&&i instanceof c?this.getImageData(i):i,s=new t.DEMData(n,o,a);this.loaded=this.loaded||{},this.loaded[n]=s,r(null,s)},u.prototype.getImageData=function(e){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext(\"2d\")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);var r=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:r.width,height:r.height},r.data)},u.prototype.removeTile=function(t){var e=this.loaded,r=t.uid;e&&e[r]&&delete e[r]};var p=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,d=function(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};d.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],r=0,n=this._feature.geometry;r<n.length;r+=1){var a=n[r];e.push([new t.Point$1(a[0],a[1])])}return e}for(var i=[],o=0,s=this._feature.geometry;o<s.length;o+=1){for(var l=[],c=0,u=s[o];c<u.length;c+=1){var h=u[c];l.push(new t.Point$1(h[0],h[1]))}i.push(l)}return i},d.prototype.toGeoJSON=function(t,e,r){return p.call(this,t,e,r)};var g=function(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=t.EXTENT,this.length=e.length,this._features=e};g.prototype.feature=function(t){return new d(this._features[t])};var m=t.vectorTile.VectorTileFeature,v=y;function y(t,e){this.options=e||{},this.features=t,this.length=t.length}function x(t,e){this.id=\"number\"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=e||4096}y.prototype.feature=function(t){return new x(this.features[t],this.options.extent)},x.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var r=0;r<e.length;r++){for(var n=e[r],a=[],i=0;i<n.length;i++)a.push(new t.Point$1(n[i][0],n[i][1]));this.geometry.push(a)}return this.geometry},x.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var t=this.geometry,e=1/0,r=-1/0,n=1/0,a=-1/0,i=0;i<t.length;i++)for(var o=t[i],s=0;s<o.length;s++){var l=o[s];e=Math.min(e,l.x),r=Math.max(r,l.x),n=Math.min(n,l.y),a=Math.max(a,l.y)}return[e,n,r,a]},x.prototype.toGeoJSON=m.prototype.toGeoJSON;var b=w,_=v;function w(e){var r=new t.pbf;return function(t,e){for(var r in t.layers)e.writeMessage(3,T,t.layers[r])}(e,r),r.finish()}function T(t,e){var r;e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||\"\"),e.writeVarintField(5,t.extent||4096);var n={keys:[],values:[],keycache:{},valuecache:{}};for(r=0;r<t.length;r++)n.feature=t.feature(r),e.writeMessage(2,k,n);var a=n.keys;for(r=0;r<a.length;r++)e.writeStringField(3,a[r]);var i=n.values;for(r=0;r<i.length;r++)e.writeMessage(4,C,i[r])}function k(t,e){var r=t.feature;void 0!==r.id&&e.writeVarintField(1,r.id),e.writeMessage(2,M,t),e.writeVarintField(3,r.type),e.writeMessage(4,E,r)}function M(t,e){var r=t.feature,n=t.keys,a=t.values,i=t.keycache,o=t.valuecache;for(var s in r.properties){var l=i[s];void 0===l&&(n.push(s),i[s]=l=n.length-1),e.writeVarint(l);var c=r.properties[s],u=typeof c;\"string\"!==u&&\"boolean\"!==u&&\"number\"!==u&&(c=JSON.stringify(c));var h=u+\":\"+c,f=o[h];void 0===f&&(a.push(c),o[h]=f=a.length-1),e.writeVarint(f)}}function A(t,e){return(e<<3)+(7&t)}function S(t){return t<<1^t>>31}function E(t,e){for(var r=t.loadGeometry(),n=t.type,a=0,i=0,o=r.length,s=0;s<o;s++){var l=r[s],c=1;1===n&&(c=l.length),e.writeVarint(A(1,c));for(var u=3===n?l.length-1:l.length,h=0;h<u;h++){1===h&&1!==n&&e.writeVarint(A(2,u-1));var f=l[h].x-a,p=l[h].y-i;e.writeVarint(S(f)),e.writeVarint(S(p)),a+=f,i+=p}3===n&&e.writeVarint(A(7,1))}}function C(t,e){var r=typeof t;\"string\"===r?e.writeStringField(1,t):\"boolean\"===r?e.writeBooleanField(7,t):\"number\"===r&&(t%1!=0?e.writeDoubleField(3,t):t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t))}function L(t,e,r,n){P(t,r,n),P(e,2*r,2*n),P(e,2*r+1,2*n+1)}function P(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function I(t,e,r,n){var a=t-r,i=e-n;return a*a+i*i}b.fromVectorTileJs=w,b.fromGeojsonVt=function(t,e){e=e||{};var r={};for(var n in t)r[n]=new v(t[n].features,e),r[n].name=n,r[n].version=e.version,r[n].extent=e.extent;return w({layers:r})},b.GeoJSONWrapper=_;var z=function(t){return t[0]},O=function(t){return t[1]},D=function(t,e,r,n,a){void 0===e&&(e=z),void 0===r&&(r=O),void 0===n&&(n=64),void 0===a&&(a=Float64Array),this.nodeSize=n,this.points=t;for(var i=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new i(t.length),s=this.coords=new a(2*t.length),l=0;l<t.length;l++)o[l]=l,s[2*l]=e(t[l]),s[2*l+1]=r(t[l]);!function t(e,r,n,a,i,o){if(!(i-a<=n)){var s=a+i>>1;!function t(e,r,n,a,i,o){for(;i>a;){if(i-a>600){var s=i-a+1,l=n-a+1,c=Math.log(s),u=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*u*(s-u)/s)*(l-s/2<0?-1:1);t(e,r,n,Math.max(a,Math.floor(n-l*u/s+h)),Math.min(i,Math.floor(n+(s-l)*u/s+h)),o)}var f=r[2*n+o],p=a,d=i;for(L(e,r,a,n),r[2*i+o]>f&&L(e,r,a,i);p<d;){for(L(e,r,p,d),p++,d--;r[2*p+o]<f;)p++;for(;r[2*d+o]>f;)d--}r[2*a+o]===f?L(e,r,a,d):L(e,r,++d,i),d<=n&&(a=d+1),n<=d&&(i=d-1)}}(e,r,s,a,i,o%2),t(e,r,n,a,s-1,o+1),t(e,r,n,s+1,i,o+1)}}(o,s,n,0,o.length-1,0)};D.prototype.range=function(t,e,r,n){return function(t,e,r,n,a,i,o){for(var s,l,c=[0,t.length-1,0],u=[];c.length;){var h=c.pop(),f=c.pop(),p=c.pop();if(f-p<=o)for(var d=p;d<=f;d++)l=e[2*d+1],(s=e[2*d])>=r&&s<=a&&l>=n&&l<=i&&u.push(t[d]);else{var g=Math.floor((p+f)/2);l=e[2*g+1],(s=e[2*g])>=r&&s<=a&&l>=n&&l<=i&&u.push(t[g]);var m=(h+1)%2;(0===h?r<=s:n<=l)&&(c.push(p),c.push(g-1),c.push(m)),(0===h?a>=s:i>=l)&&(c.push(g+1),c.push(f),c.push(m))}}return u}(this.ids,this.coords,t,e,r,n,this.nodeSize)},D.prototype.within=function(t,e,r){return function(t,e,r,n,a,i){for(var o=[0,t.length-1,0],s=[],l=a*a;o.length;){var c=o.pop(),u=o.pop(),h=o.pop();if(u-h<=i)for(var f=h;f<=u;f++)I(e[2*f],e[2*f+1],r,n)<=l&&s.push(t[f]);else{var p=Math.floor((h+u)/2),d=e[2*p],g=e[2*p+1];I(d,g,r,n)<=l&&s.push(t[p]);var m=(c+1)%2;(0===c?r-a<=d:n-a<=g)&&(o.push(h),o.push(p-1),o.push(m)),(0===c?r+a>=d:n+a>=g)&&(o.push(p+1),o.push(u),o.push(m))}}return s}(this.ids,this.coords,t,e,r,this.nodeSize)};var R={minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},F=function(t){this.options=H(Object.create(R),t),this.trees=new Array(this.options.maxZoom+1)};function B(t,e,r,n,a){return{x:t,y:e,zoom:1/0,id:r,parentId:-1,numPoints:n,properties:a}}function N(t,e){var r=t.geometry.coordinates,n=r[1];return{x:V(r[0]),y:q(n),zoom:1/0,index:e,parentId:-1}}function j(t){return{type:\"Feature\",id:t.id,properties:U(t),geometry:{type:\"Point\",coordinates:[(n=t.x,360*(n-.5)),(e=t.y,r=(180-360*e)*Math.PI/180,360*Math.atan(Math.exp(r))/Math.PI-90)]}};var e,r,n}function U(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return H(H({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function V(t){return t/360+.5}function q(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function H(t,e){for(var r in e)t[r]=e[r];return t}function G(t){return t.x}function Y(t){return t.y}function W(t,e,r,n,a,i){var o=a-r,s=i-n;if(0!==o||0!==s){var l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=a,n=i):l>0&&(r+=o*l,n+=s*l)}return(o=t-r)*o+(s=e-n)*s}function Z(t,e,r,n){var a={id:void 0===t?null:t,type:e,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(t){var e=t.geometry,r=t.type;if(\"Point\"===r||\"MultiPoint\"===r||\"LineString\"===r)X(t,e);else if(\"Polygon\"===r||\"MultiLineString\"===r)for(var n=0;n<e.length;n++)X(t,e[n]);else if(\"MultiPolygon\"===r)for(n=0;n<e.length;n++)for(var a=0;a<e[n].length;a++)X(t,e[n][a])}(a),a}function X(t,e){for(var r=0;r<e.length;r+=3)t.minX=Math.min(t.minX,e[r]),t.minY=Math.min(t.minY,e[r+1]),t.maxX=Math.max(t.maxX,e[r]),t.maxY=Math.max(t.maxY,e[r+1])}function J(t,e,r,n){if(e.geometry){var a=e.geometry.coordinates,i=e.geometry.type,o=Math.pow(r.tolerance/((1<<r.maxZoom)*r.extent),2),s=[],l=e.id;if(r.promoteId?l=e.properties[r.promoteId]:r.generateId&&(l=n||0),\"Point\"===i)K(a,s);else if(\"MultiPoint\"===i)for(var c=0;c<a.length;c++)K(a[c],s);else if(\"LineString\"===i)Q(a,s,o,!1);else if(\"MultiLineString\"===i){if(r.lineMetrics){for(c=0;c<a.length;c++)Q(a[c],s=[],o,!1),t.push(Z(l,\"LineString\",s,e.properties));return}$(a,s,o,!1)}else if(\"Polygon\"===i)$(a,s,o,!0);else{if(\"MultiPolygon\"!==i){if(\"GeometryCollection\"===i){for(c=0;c<e.geometry.geometries.length;c++)J(t,{id:l,geometry:e.geometry.geometries[c],properties:e.properties},r,n);return}throw new Error(\"Input data is not a valid GeoJSON object.\")}for(c=0;c<a.length;c++){var u=[];$(a[c],u,o,!0),s.push(u)}}t.push(Z(l,i,s,e.properties))}}function K(t,e){e.push(tt(t[0])),e.push(et(t[1])),e.push(0)}function Q(t,e,r,n){for(var a,i,o=0,s=0;s<t.length;s++){var l=tt(t[s][0]),c=et(t[s][1]);e.push(l),e.push(c),e.push(0),s>0&&(o+=n?(a*c-l*i)/2:Math.sqrt(Math.pow(l-a,2)+Math.pow(c-i,2))),a=l,i=c}var u=e.length-3;e[2]=1,function t(e,r,n,a){for(var i,o=a,s=n-r>>1,l=n-r,c=e[r],u=e[r+1],h=e[n],f=e[n+1],p=r+3;p<n;p+=3){var d=W(e[p],e[p+1],c,u,h,f);if(d>o)i=p,o=d;else if(d===o){var g=Math.abs(p-s);g<l&&(i=p,l=g)}}o>a&&(i-r>3&&t(e,r,i,a),e[i+2]=o,n-i>3&&t(e,i,n,a))}(e,0,u,r),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function $(t,e,r,n){for(var a=0;a<t.length;a++){var i=[];Q(t[a],i,r,n),e.push(i)}}function tt(t){return t/360+.5}function et(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function rt(t,e,r,n,a,i,o,s){if(n/=e,i>=(r/=e)&&o<n)return t;if(o<r||i>=n)return null;for(var l=[],c=0;c<t.length;c++){var u=t[c],h=u.geometry,f=u.type,p=0===a?u.minX:u.minY,d=0===a?u.maxX:u.maxY;if(p>=r&&d<n)l.push(u);else if(!(d<r||p>=n)){var g=[];if(\"Point\"===f||\"MultiPoint\"===f)nt(h,g,r,n,a);else if(\"LineString\"===f)at(h,g,r,n,a,!1,s.lineMetrics);else if(\"MultiLineString\"===f)ot(h,g,r,n,a,!1);else if(\"Polygon\"===f)ot(h,g,r,n,a,!0);else if(\"MultiPolygon\"===f)for(var m=0;m<h.length;m++){var v=[];ot(h[m],v,r,n,a,!0),v.length&&g.push(v)}if(g.length){if(s.lineMetrics&&\"LineString\"===f){for(m=0;m<g.length;m++)l.push(Z(u.id,f,g[m],u.tags));continue}\"LineString\"!==f&&\"MultiLineString\"!==f||(1===g.length?(f=\"LineString\",g=g[0]):f=\"MultiLineString\"),\"Point\"!==f&&\"MultiPoint\"!==f||(f=3===g.length?\"Point\":\"MultiPoint\"),l.push(Z(u.id,f,g,u.tags))}}}return l.length?l:null}function nt(t,e,r,n,a){for(var i=0;i<t.length;i+=3){var o=t[i+a];o>=r&&o<=n&&(e.push(t[i]),e.push(t[i+1]),e.push(t[i+2]))}}function at(t,e,r,n,a,i,o){for(var s,l,c=it(t),u=0===a?lt:ct,h=t.start,f=0;f<t.length-3;f+=3){var p=t[f],d=t[f+1],g=t[f+2],m=t[f+3],v=t[f+4],y=0===a?p:d,x=0===a?m:v,b=!1;o&&(s=Math.sqrt(Math.pow(p-m,2)+Math.pow(d-v,2))),y<r?x>r&&(l=u(c,p,d,m,v,r),o&&(c.start=h+s*l)):y>n?x<n&&(l=u(c,p,d,m,v,n),o&&(c.start=h+s*l)):st(c,p,d,g),x<r&&y>=r&&(l=u(c,p,d,m,v,r),b=!0),x>n&&y<=n&&(l=u(c,p,d,m,v,n),b=!0),!i&&b&&(o&&(c.end=h+s*l),e.push(c),c=it(t)),o&&(h+=s)}var _=t.length-3;p=t[_],d=t[_+1],g=t[_+2],(y=0===a?p:d)>=r&&y<=n&&st(c,p,d,g),_=c.length-3,i&&_>=3&&(c[_]!==c[0]||c[_+1]!==c[1])&&st(c,c[0],c[1],c[2]),c.length&&e.push(c)}function it(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function ot(t,e,r,n,a,i){for(var o=0;o<t.length;o++)at(t[o],e,r,n,a,i,!1)}function st(t,e,r,n){t.push(e),t.push(r),t.push(n)}function lt(t,e,r,n,a,i){var o=(i-e)/(n-e);return t.push(i),t.push(r+(a-r)*o),t.push(1),o}function ct(t,e,r,n,a,i){var o=(i-r)/(a-r);return t.push(e+(n-e)*o),t.push(i),t.push(1),o}function ut(t,e){for(var r=[],n=0;n<t.length;n++){var a,i=t[n],o=i.type;if(\"Point\"===o||\"MultiPoint\"===o||\"LineString\"===o)a=ht(i.geometry,e);else if(\"MultiLineString\"===o||\"Polygon\"===o){a=[];for(var s=0;s<i.geometry.length;s++)a.push(ht(i.geometry[s],e))}else if(\"MultiPolygon\"===o)for(a=[],s=0;s<i.geometry.length;s++){for(var l=[],c=0;c<i.geometry[s].length;c++)l.push(ht(i.geometry[s][c],e));a.push(l)}r.push(Z(i.id,o,a,i.tags))}return r}function ht(t,e){var r=[];r.size=t.size,void 0!==t.start&&(r.start=t.start,r.end=t.end);for(var n=0;n<t.length;n+=3)r.push(t[n]+e,t[n+1],t[n+2]);return r}function ft(t,e){if(t.transformed)return t;var r,n,a,i=1<<t.z,o=t.x,s=t.y;for(r=0;r<t.features.length;r++){var l=t.features[r],c=l.geometry,u=l.type;if(l.geometry=[],1===u)for(n=0;n<c.length;n+=2)l.geometry.push(pt(c[n],c[n+1],e,i,o,s));else for(n=0;n<c.length;n++){var h=[];for(a=0;a<c[n].length;a+=2)h.push(pt(c[n][a],c[n][a+1],e,i,o,s));l.geometry.push(h)}}return t.transformed=!0,t}function pt(t,e,r,n,a,i){return[Math.round(r*(t*n-a)),Math.round(r*(e*n-i))]}function dt(t,e,r,n,a){for(var i=e===a.maxZoom?0:a.tolerance/((1<<e)*a.extent),o={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:n,z:e,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},s=0;s<t.length;s++){o.numFeatures++,gt(o,t[s],i,a);var l=t[s].minX,c=t[s].minY,u=t[s].maxX,h=t[s].maxY;l<o.minX&&(o.minX=l),c<o.minY&&(o.minY=c),u>o.maxX&&(o.maxX=u),h>o.maxY&&(o.maxY=h)}return o}function gt(t,e,r,n){var a=e.geometry,i=e.type,o=[];if(\"Point\"===i||\"MultiPoint\"===i)for(var s=0;s<a.length;s+=3)o.push(a[s]),o.push(a[s+1]),t.numPoints++,t.numSimplified++;else if(\"LineString\"===i)mt(o,a,t,r,!1,!1);else if(\"MultiLineString\"===i||\"Polygon\"===i)for(s=0;s<a.length;s++)mt(o,a[s],t,r,\"Polygon\"===i,0===s);else if(\"MultiPolygon\"===i)for(var l=0;l<a.length;l++){var c=a[l];for(s=0;s<c.length;s++)mt(o,c[s],t,r,!0,0===s)}if(o.length){var u=e.tags||null;if(\"LineString\"===i&&n.lineMetrics){for(var h in u={},e.tags)u[h]=e.tags[h];u.mapbox_clip_start=a.start/a.size,u.mapbox_clip_end=a.end/a.size}var f={geometry:o,type:\"Polygon\"===i||\"MultiPolygon\"===i?3:\"LineString\"===i||\"MultiLineString\"===i?2:1,tags:u};null!==e.id&&(f.id=e.id),t.features.push(f)}}function mt(t,e,r,n,a,i){var o=n*n;if(n>0&&e.size<(a?o:n))r.numPoints+=e.length/3;else{for(var s=[],l=0;l<e.length;l+=3)(0===n||e[l+2]>o)&&(r.numSimplified++,s.push(e[l]),s.push(e[l+1])),r.numPoints++;a&&function(t,e){for(var r=0,n=0,a=t.length,i=a-2;n<a;i=n,n+=2)r+=(t[n]-t[i])*(t[n+1]+t[i+1]);if(r>0===e)for(n=0,a=t.length;n<a/2;n+=2){var o=t[n],s=t[n+1];t[n]=t[a-2-n],t[n+1]=t[a-1-n],t[a-2-n]=o,t[a-1-n]=s}}(s,i),t.push(s)}}function vt(t,e){var r=(e=this.options=function(t,e){for(var r in e)t[r]=e[r];return t}(Object.create(this.options),e)).debug;if(r&&console.time(\"preprocess data\"),e.maxZoom<0||e.maxZoom>24)throw new Error(\"maxZoom should be in the 0-24 range\");if(e.promoteId&&e.generateId)throw new Error(\"promoteId and generateId cannot be used together.\");var n=function(t,e){var r=[];if(\"FeatureCollection\"===t.type)for(var n=0;n<t.features.length;n++)J(r,t.features[n],e,n);else J(r,\"Feature\"===t.type?t:{geometry:t},e);return r}(t,e);this.tiles={},this.tileCoords=[],r&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",e.indexMaxZoom,e.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),(n=function(t,e){var r=e.buffer/e.extent,n=t,a=rt(t,1,-1-r,r,0,-1,2,e),i=rt(t,1,1-r,2+r,0,-1,2,e);return(a||i)&&(n=rt(t,1,-r,1+r,0,-1,2,e)||[],a&&(n=ut(a,1).concat(n)),i&&(n=n.concat(ut(i,-1)))),n}(n,e)).length&&this.splitTile(n,0,0,0),r&&(n.length&&console.log(\"features: %d, points: %d\",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd(\"generate tiles\"),console.log(\"tiles generated:\",this.total,JSON.stringify(this.stats)))}function yt(t,e,r){return 32*((1<<t)*r+e)+t}function xt(t,e){var r=t.tileID.canonical;if(!this._geoJSONIndex)return e(null,null);var n=this._geoJSONIndex.getTile(r.z,r.x,r.y);if(!n)return e(null,null);var a=new g(n.features),i=b(a);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),e(null,{vectorTile:a,rawData:i.buffer})}F.prototype.load=function(t){var e=this.options,r=e.log,n=e.minZoom,a=e.maxZoom,i=e.nodeSize;r&&console.time(\"total time\");var o=\"prepare \"+t.length+\" points\";r&&console.time(o),this.points=t;for(var s=[],l=0;l<t.length;l++)t[l].geometry&&s.push(N(t[l],l));this.trees[a+1]=new D(s,G,Y,i,Float32Array),r&&console.timeEnd(o);for(var c=a;c>=n;c--){var u=+Date.now();s=this._cluster(s,c),this.trees[c]=new D(s,G,Y,i,Float32Array),r&&console.log(\"z%d: %d clusters in %dms\",c,s.length,+Date.now()-u)}return r&&console.timeEnd(\"total time\"),this},F.prototype.getClusters=function(t,e){var r=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),a=180===t[2]?180:((t[2]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,a=180;else if(r>a){var o=this.getClusters([r,n,180,i],e),s=this.getClusters([-180,n,a,i],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,h=l.range(V(r),q(i),V(a),q(n));u<h.length;u+=1){var f=l.points[h[u]];c.push(f.numPoints?j(f):this.points[f.index])}return c},F.prototype.getChildren=function(t){var e=this._getOriginId(t),r=this._getOriginZoom(t),n=\"No cluster with the specified id.\",a=this.trees[r];if(!a)throw new Error(n);var i=a.points[e];if(!i)throw new Error(n);for(var o=this.options.radius/(this.options.extent*Math.pow(2,r-1)),s=[],l=0,c=a.within(i.x,i.y,o);l<c.length;l+=1){var u=a.points[c[l]];u.parentId===t&&s.push(u.numPoints?j(u):this.points[u.index])}if(0===s.length)throw new Error(n);return s},F.prototype.getLeaves=function(t,e,r){var n=[];return this._appendLeaves(n,t,e=e||10,r=r||0,0),n},F.prototype.getTile=function(t,e,r){var n=this.trees[this._limitZoom(t)],a=Math.pow(2,t),i=this.options,o=i.radius/i.extent,s=(r-o)/a,l=(r+1+o)/a,c={features:[]};return this._addTileFeatures(n.range((e-o)/a,s,(e+1+o)/a,l),n.points,e,r,a,c),0===e&&this._addTileFeatures(n.range(1-o/a,s,1,l),n.points,a,r,a,c),e===a-1&&this._addTileFeatures(n.range(0,s,o/a,l),n.points,-1,r,a,c),c.features.length?c:null},F.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var r=this.getChildren(t);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e},F.prototype._appendLeaves=function(t,e,r,n,a){for(var i=0,o=this.getChildren(e);i<o.length;i+=1){var s=o[i],l=s.properties;if(l&&l.cluster?a+l.point_count<=n?a+=l.point_count:a=this._appendLeaves(t,l.cluster_id,r,n,a):a<n?a++:t.push(s),t.length===r)break}return a},F.prototype._addTileFeatures=function(t,e,r,n,a,i){for(var o=0,s=t;o<s.length;o+=1){var l=e[s[o]],c=l.numPoints,u={type:1,geometry:[[Math.round(this.options.extent*(l.x*a-r)),Math.round(this.options.extent*(l.y*a-n))]],tags:c?U(l):this.points[l.index].properties},h=void 0;c?h=l.id:this.options.generateId?h=l.index:this.points[l.index].id&&(h=this.points[l.index].id),void 0!==h&&(u.id=h),i.features.push(u)}},F.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},F.prototype._cluster=function(t,e){for(var r=[],n=this.options,a=n.reduce,i=n.radius/(n.extent*Math.pow(2,e)),o=0;o<t.length;o++){var s=t[o];if(!(s.zoom<=e)){s.zoom=e;for(var l=this.trees[e+1],c=l.within(s.x,s.y,i),u=s.numPoints||1,h=s.x*u,f=s.y*u,p=a&&u>1?this._map(s,!0):null,d=(o<<5)+(e+1)+this.points.length,g=0,m=c;g<m.length;g+=1){var v=l.points[m[g]];if(!(v.zoom<=e)){v.zoom=e;var y=v.numPoints||1;h+=v.x*y,f+=v.y*y,u+=y,v.parentId=d,a&&(p||(p=this._map(s,!0)),a(p,this._map(v)))}}1===u?r.push(s):(s.parentId=d,r.push(B(h/u,f/u,d,u,p)))}}return r},F.prototype._getOriginId=function(t){return t-this.points.length>>5},F.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},F.prototype._map=function(t,e){if(t.numPoints)return e?H({},t.properties):t.properties;var r=this.points[t.index].properties,n=this.options.map(r);return e&&n===r?H({},n):n},vt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},vt.prototype.splitTile=function(t,e,r,n,a,i,o){for(var s=[t,e,r,n],l=this.options,c=l.debug;s.length;){n=s.pop(),r=s.pop(),e=s.pop(),t=s.pop();var u=1<<e,h=yt(e,r,n),f=this.tiles[h];if(!f&&(c>1&&console.time(\"creation\"),f=this.tiles[h]=dt(t,e,r,n,l),this.tileCoords.push({z:e,x:r,y:n}),c)){c>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",e,r,n,f.numFeatures,f.numPoints,f.numSimplified),console.timeEnd(\"creation\"));var p=\"z\"+e;this.stats[p]=(this.stats[p]||0)+1,this.total++}if(f.source=t,a){if(e===l.maxZoom||e===a)continue;var d=1<<a-e;if(r!==Math.floor(i/d)||n!==Math.floor(o/d))continue}else if(e===l.indexMaxZoom||f.numPoints<=l.indexMaxPoints)continue;if(f.source=null,0!==t.length){c>1&&console.time(\"clipping\");var g,m,v,y,x,b,_=.5*l.buffer/l.extent,w=.5-_,T=.5+_,k=1+_;g=m=v=y=null,x=rt(t,u,r-_,r+T,0,f.minX,f.maxX,l),b=rt(t,u,r+w,r+k,0,f.minX,f.maxX,l),t=null,x&&(g=rt(x,u,n-_,n+T,1,f.minY,f.maxY,l),m=rt(x,u,n+w,n+k,1,f.minY,f.maxY,l),x=null),b&&(v=rt(b,u,n-_,n+T,1,f.minY,f.maxY,l),y=rt(b,u,n+w,n+k,1,f.minY,f.maxY,l),b=null),c>1&&console.timeEnd(\"clipping\"),s.push(g||[],e+1,2*r,2*n),s.push(m||[],e+1,2*r,2*n+1),s.push(v||[],e+1,2*r+1,2*n),s.push(y||[],e+1,2*r+1,2*n+1)}}},vt.prototype.getTile=function(t,e,r){var n=this.options,a=n.extent,i=n.debug;if(t<0||t>24)return null;var o=1<<t,s=yt(t,e=(e%o+o)%o,r);if(this.tiles[s])return ft(this.tiles[s],a);i>1&&console.log(\"drilling down to z%d-%d-%d\",t,e,r);for(var l,c=t,u=e,h=r;!l&&c>0;)c--,u=Math.floor(u/2),h=Math.floor(h/2),l=this.tiles[yt(c,u,h)];return l&&l.source?(i>1&&console.log(\"found parent tile z%d-%d-%d\",c,u,h),i>1&&console.time(\"drilling down\"),this.splitTile(l.source,c,u,h,t,e,r),i>1&&console.timeEnd(\"drilling down\"),this.tiles[s]?ft(this.tiles[s],a):null):null};var bt=function(e){function r(t,r,n,a){e.call(this,t,r,n,xt),a&&(this.loadGeoJSON=a)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.loadData=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=e,this._pendingLoadDataParams=t,this._state&&\"Idle\"!==this._state?this._state=\"NeedsLoadData\":(this._state=\"Coalescing\",this._loadData())},r.prototype._loadData=function(){var e=this;if(this._pendingCallback&&this._pendingLoadDataParams){var r=this._pendingCallback,n=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var a=!!(n&&n.request&&n.request.collectResourceTiming)&&new t.RequestPerformance(n.request);this.loadGeoJSON(n,(function(i,o){if(i||!o)return r(i);if(\"object\"!=typeof o)return r(new Error(\"Input data given to '\"+n.source+\"' is not a valid GeoJSON object.\"));!function t(e,r){var n,a=e&&e.type;if(\"FeatureCollection\"===a)for(n=0;n<e.features.length;n++)t(e.features[n],r);else if(\"GeometryCollection\"===a)for(n=0;n<e.geometries.length;n++)t(e.geometries[n],r);else if(\"Feature\"===a)t(e.geometry,r);else if(\"Polygon\"===a)h(e.coordinates,r);else if(\"MultiPolygon\"===a)for(n=0;n<e.coordinates.length;n++)h(e.coordinates[n],r);return e}(o,!0);try{e._geoJSONIndex=n.cluster?new F(function(e){var r=e.superclusterOptions,n=e.clusterProperties;if(!n||!r)return r;for(var a={},i={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(n),c=0,u=l;c<u.length;c+=1){var h=u[c],f=n[h],p=f[0],d=t.createExpression(f[1]),g=t.createExpression(\"string\"==typeof p?[p,[\"accumulated\"],[\"get\",h]]:p);a[h]=d.value,i[h]=g.value}return r.map=function(t){s.properties=t;for(var e={},r=0,n=l;r<n.length;r+=1){var i=n[r];e[i]=a[i].evaluate(o,s)}return e},r.reduce=function(t,e){s.properties=e;for(var r=0,n=l;r<n.length;r+=1){var a=n[r];o.accumulated=t[a],t[a]=i[a].evaluate(o,s)}},r}(n)).load(o.features):function(t,e){return new vt(t,e)}(o,n.geojsonVtOptions)}catch(i){return r(i)}e.loaded={};var s={};if(a){var l=a.finish();l&&(s.resourceTiming={},s.resourceTiming[n.source]=JSON.parse(JSON.stringify(l)))}r(null,s)}))}},r.prototype.coalesce=function(){\"Coalescing\"===this._state?this._state=\"Idle\":\"NeedsLoadData\"===this._state&&(this._state=\"Coalescing\",this._loadData())},r.prototype.reloadTile=function(t,r){var n=this.loaded;return n&&n[t.uid]?e.prototype.reloadTile.call(this,t,r):this.loadTile(t,r)},r.prototype.loadGeoJSON=function(e,r){if(e.request)t.getJSON(e.request,r);else{if(\"string\"!=typeof e.data)return r(new Error(\"Input data given to '\"+e.source+\"' is not a valid GeoJSON object.\"));try{return r(null,JSON.parse(e.data))}catch(t){return r(new Error(\"Input data given to '\"+e.source+\"' is not a valid GeoJSON object.\"))}}},r.prototype.removeSource=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),e()},r.prototype.getClusterExpansionZoom=function(t,e){try{e(null,this._geoJSONIndex.getClusterExpansionZoom(t.clusterId))}catch(t){e(t)}},r.prototype.getClusterChildren=function(t,e){try{e(null,this._geoJSONIndex.getChildren(t.clusterId))}catch(t){e(t)}},r.prototype.getClusterLeaves=function(t,e){try{e(null,this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset))}catch(t){e(t)}},r}(l),_t=function(e){var r=this;this.self=e,this.actor=new t.Actor(e,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:l,geojson:bt},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(t,e){if(r.workerSourceTypes[t])throw new Error('Worker source with name \"'+t+'\" already registered.');r.workerSourceTypes[t]=e},this.self.registerRTLTextPlugin=function(e){if(t.plugin.isParsed())throw new Error(\"RTL text plugin already registered.\");t.plugin.applyArabicShaping=e.applyArabicShaping,t.plugin.processBidirectionalText=e.processBidirectionalText,t.plugin.processStyledBidirectionalText=e.processStyledBidirectionalText}};return _t.prototype.setReferrer=function(t,e){this.referrer=e},_t.prototype.setImages=function(t,e,r){for(var n in this.availableImages[t]=e,this.workerSources[t]){var a=this.workerSources[t][n];for(var i in a)a[i].availableImages=e}r()},_t.prototype.setLayers=function(t,e,r){this.getLayerIndex(t).replace(e),r()},_t.prototype.updateLayers=function(t,e,r){this.getLayerIndex(t).update(e.layers,e.removedIds),r()},_t.prototype.loadTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).loadTile(e,r)},_t.prototype.loadDEMTile=function(t,e,r){this.getDEMWorkerSource(t,e.source).loadTile(e,r)},_t.prototype.reloadTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).reloadTile(e,r)},_t.prototype.abortTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).abortTile(e,r)},_t.prototype.removeTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).removeTile(e,r)},_t.prototype.removeDEMTile=function(t,e){this.getDEMWorkerSource(t,e.source).removeTile(e)},_t.prototype.removeSource=function(t,e,r){if(this.workerSources[t]&&this.workerSources[t][e.type]&&this.workerSources[t][e.type][e.source]){var n=this.workerSources[t][e.type][e.source];delete this.workerSources[t][e.type][e.source],void 0!==n.removeSource?n.removeSource(e,r):r()}},_t.prototype.loadWorkerSource=function(t,e,r){try{this.self.importScripts(e.url),r()}catch(t){r(t.toString())}},_t.prototype.syncRTLPluginState=function(e,r,n){try{t.plugin.setState(r);var a=t.plugin.getPluginURL();if(t.plugin.isLoaded()&&!t.plugin.isParsed()&&null!=a){this.self.importScripts(a);var i=t.plugin.isParsed();n(i?void 0:new Error(\"RTL Text Plugin failed to import scripts from \"+a),i)}}catch(t){n(t.toString())}},_t.prototype.getAvailableImages=function(t){var e=this.availableImages[t];return e||(e=[]),e},_t.prototype.getLayerIndex=function(t){var e=this.layerIndexes[t];return e||(e=this.layerIndexes[t]=new n),e},_t.prototype.getWorkerSource=function(t,e,r){var n=this;return this.workerSources[t]||(this.workerSources[t]={}),this.workerSources[t][e]||(this.workerSources[t][e]={}),this.workerSources[t][e][r]||(this.workerSources[t][e][r]=new this.workerSourceTypes[e]({send:function(e,r,a){n.actor.send(e,r,a,t)}},this.getLayerIndex(t),this.getAvailableImages(t))),this.workerSources[t][e][r]},_t.prototype.getDEMWorkerSource=function(t,e){return this.demWorkerSources[t]||(this.demWorkerSources[t]={}),this.demWorkerSources[t][e]||(this.demWorkerSources[t][e]=new u),this.demWorkerSources[t][e]},_t.prototype.enforceCacheSizeLimit=function(e,r){t.enforceCacheSizeLimit(r)},\"undefined\"!=typeof WorkerGlobalScope&&void 0!==t.window&&t.window instanceof WorkerGlobalScope&&(t.window.worker=new _t(t.window)),_t})),n(0,(function(t){var e=t.createCommonjsModule((function(t){function e(t){return!r(t)}function r(t){return\"undefined\"==typeof window||\"undefined\"==typeof document?\"not a browser\":Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON?function(){if(!(\"Worker\"in window&&\"Blob\"in window&&\"URL\"in window))return!1;var t,e,r=new Blob([\"\"],{type:\"text/javascript\"}),n=URL.createObjectURL(r);try{e=new Worker(n),t=!0}catch(e){t=!1}return e&&e.terminate(),URL.revokeObjectURL(n),t}()?\"Uint8ClampedArray\"in window?ArrayBuffer.isView?function(){var t=document.createElement(\"canvas\");t.width=t.height=1;var e=t.getContext(\"2d\");if(!e)return!1;var r=e.getImageData(0,0,1,1);return r&&r.width===t.width}()?(void 0===n[r=t&&t.failIfMajorPerformanceCaveat]&&(n[r]=function(t){var r=function(t){var r=document.createElement(\"canvas\"),n=Object.create(e.webGLContextAttributes);return n.failIfMajorPerformanceCaveat=t,r.probablySupportsContext?r.probablySupportsContext(\"webgl\",n)||r.probablySupportsContext(\"experimental-webgl\",n):r.supportsContext?r.supportsContext(\"webgl\",n)||r.supportsContext(\"experimental-webgl\",n):r.getContext(\"webgl\",n)||r.getContext(\"experimental-webgl\",n)}(t);if(!r)return!1;var n=r.createShader(r.VERTEX_SHADER);return!(!n||r.isContextLost())&&(r.shaderSource(n,\"void main() {}\"),r.compileShader(n),!0===r.getShaderParameter(n,r.COMPILE_STATUS))}(r)),n[r]?void 0:\"insufficient WebGL support\"):\"insufficient Canvas/getImageData support\":\"insufficient ArrayBuffer support\":\"insufficient Uint8ClampedArray support\":\"insufficient worker support\":\"insufficient JSON support\":\"insufficient Object support\":\"insufficient Function support\":\"insufficent Array support\";var r}t.exports?t.exports=e:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=e,window.mapboxgl.notSupportedReason=r);var n={};e.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}})),r={create:function(e,r,n){var a=t.window.document.createElement(e);return void 0!==r&&(a.className=r),n&&n.appendChild(a),a},createNS:function(e,r){return t.window.document.createElementNS(e,r)}},n=t.window.document.documentElement.style;function a(t){if(!n)return t[0];for(var e=0;e<t.length;e++)if(t[e]in n)return t[e];return t[0]}var i,o=a([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]);r.disableDrag=function(){n&&o&&(i=n[o],n[o]=\"none\")},r.enableDrag=function(){n&&o&&(n[o]=i)};var s=a([\"transform\",\"WebkitTransform\"]);r.setTransform=function(t,e){t.style[s]=e};var l=!1;try{var c=Object.defineProperty({},\"passive\",{get:function(){l=!0}});t.window.addEventListener(\"test\",c,c),t.window.removeEventListener(\"test\",c,c)}catch(t){l=!1}r.addEventListener=function(t,e,r,n){void 0===n&&(n={}),t.addEventListener(e,r,\"passive\"in n&&l?n:n.capture)},r.removeEventListener=function(t,e,r,n){void 0===n&&(n={}),t.removeEventListener(e,r,\"passive\"in n&&l?n:n.capture)};var u=function(e){e.preventDefault(),e.stopPropagation(),t.window.removeEventListener(\"click\",u,!0)};function h(t){var e=t.userImage;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}r.suppressClick=function(){t.window.addEventListener(\"click\",u,!0),t.window.setTimeout((function(){t.window.removeEventListener(\"click\",u,!0)}),0)},r.mousePos=function(e,r){var n=e.getBoundingClientRect();return new t.Point(r.clientX-n.left-e.clientLeft,r.clientY-n.top-e.clientTop)},r.touchPos=function(e,r){for(var n=e.getBoundingClientRect(),a=[],i=0;i<r.length;i++)a.push(new t.Point(r[i].clientX-n.left-e.clientLeft,r[i].clientY-n.top-e.clientTop));return a},r.mouseButton=function(e){return void 0!==t.window.InstallTrigger&&2===e.button&&e.ctrlKey&&t.window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0?0:e.button},r.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)};var f=function(e){function r(){e.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.RGBAImage({width:1,height:1}),this.dirty=!0}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.isLoaded=function(){return this.loaded},r.prototype.setLoaded=function(t){if(this.loaded!==t&&(this.loaded=t,t)){for(var e=0,r=this.requestors;e<r.length;e+=1){var n=r[e];this._notify(n.ids,n.callback)}this.requestors=[]}},r.prototype.getImage=function(t){return this.images[t]},r.prototype.addImage=function(t,e){this._validate(t,e)&&(this.images[t]=e)},r.prototype._validate=function(e,r){var n=!0;return this._validateStretch(r.stretchX,r.data&&r.data.width)||(this.fire(new t.ErrorEvent(new Error('Image \"'+e+'\" has invalid \"stretchX\" value'))),n=!1),this._validateStretch(r.stretchY,r.data&&r.data.height)||(this.fire(new t.ErrorEvent(new Error('Image \"'+e+'\" has invalid \"stretchY\" value'))),n=!1),this._validateContent(r.content,r)||(this.fire(new t.ErrorEvent(new Error('Image \"'+e+'\" has invalid \"content\" value'))),n=!1),n},r.prototype._validateStretch=function(t,e){if(!t)return!0;for(var r=0,n=0,a=t;n<a.length;n+=1){var i=a[n];if(i[0]<r||i[1]<i[0]||e<i[1])return!1;r=i[1]}return!0},r.prototype._validateContent=function(t,e){return!(t&&(4!==t.length||t[0]<0||e.data.width<t[0]||t[1]<0||e.data.height<t[1]||t[2]<0||e.data.width<t[2]||t[3]<0||e.data.height<t[3]||t[2]<t[0]||t[3]<t[1]))},r.prototype.updateImage=function(t,e){e.version=this.images[t].version+1,this.images[t]=e,this.updatedImages[t]=!0},r.prototype.removeImage=function(t){var e=this.images[t];delete this.images[t],delete this.patterns[t],e.userImage&&e.userImage.onRemove&&e.userImage.onRemove()},r.prototype.listImages=function(){return Object.keys(this.images)},r.prototype.getImages=function(t,e){var r=!0;if(!this.isLoaded())for(var n=0,a=t;n<a.length;n+=1)this.images[a[n]]||(r=!1);this.isLoaded()||r?this._notify(t,e):this.requestors.push({ids:t,callback:e})},r.prototype._notify=function(e,r){for(var n={},a=0,i=e;a<i.length;a+=1){var o=i[a];this.images[o]||this.fire(new t.Event(\"styleimagemissing\",{id:o}));var s=this.images[o];s?n[o]={data:s.data.clone(),pixelRatio:s.pixelRatio,sdf:s.sdf,version:s.version,stretchX:s.stretchX,stretchY:s.stretchY,content:s.content,hasRenderCallback:Boolean(s.userImage&&s.userImage.render)}:t.warnOnce('Image \"'+o+'\" could not be loaded. Please make sure you have added the image with map.addImage() or a \"sprite\" property in your style. You can provide missing images by listening for the \"styleimagemissing\" map event.')}r(null,n)},r.prototype.getPixelSize=function(){var t=this.atlasImage;return{width:t.width,height:t.height}},r.prototype.getPattern=function(e){var r=this.patterns[e],n=this.getImage(e);if(!n)return null;if(r&&r.position.version===n.version)return r.position;if(r)r.position.version=n.version;else{var a={w:n.data.width+2,h:n.data.height+2,x:0,y:0},i=new t.ImagePosition(a,n);this.patterns[e]={bin:a,position:i}}return this._updatePatternAtlas(),this.patterns[e].position},r.prototype.bind=function(e){var r=e.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new t.Texture(e,this.atlasImage,r.RGBA),this.atlasTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)},r.prototype._updatePatternAtlas=function(){var e=[];for(var r in this.patterns)e.push(this.patterns[r].bin);var n=t.potpack(e),a=n.w,i=n.h,o=this.atlasImage;for(var s in o.resize({width:a||1,height:i||1}),this.patterns){var l=this.patterns[s].bin,c=l.x+1,u=l.y+1,h=this.images[s].data,f=h.width,p=h.height;t.RGBAImage.copy(h,o,{x:0,y:0},{x:c,y:u},{width:f,height:p}),t.RGBAImage.copy(h,o,{x:0,y:p-1},{x:c,y:u-1},{width:f,height:1}),t.RGBAImage.copy(h,o,{x:0,y:0},{x:c,y:u+p},{width:f,height:1}),t.RGBAImage.copy(h,o,{x:f-1,y:0},{x:c-1,y:u},{width:1,height:p}),t.RGBAImage.copy(h,o,{x:0,y:0},{x:c+f,y:u},{width:1,height:p})}this.dirty=!0},r.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},r.prototype.dispatchRenderCallbacks=function(t){for(var e=0,r=t;e<r.length;e+=1){var n=r[e];if(!this.callbackDispatchedThisFrame[n]){this.callbackDispatchedThisFrame[n]=!0;var a=this.images[n];h(a)&&this.updateImage(n,a)}}},r}(t.Evented),p=m,d=m,g=1e20;function m(t,e,r,n,a,i){this.fontSize=t||24,this.buffer=void 0===e?3:e,this.cutoff=n||.25,this.fontFamily=a||\"sans-serif\",this.fontWeight=i||\"normal\",this.radius=r||8;var o=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement(\"canvas\"),this.canvas.width=this.canvas.height=o,this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=this.fontWeight+\" \"+this.fontSize+\"px \"+this.fontFamily,this.ctx.textBaseline=\"middle\",this.ctx.fillStyle=\"black\",this.gridOuter=new Float64Array(o*o),this.gridInner=new Float64Array(o*o),this.f=new Float64Array(o),this.d=new Float64Array(o),this.z=new Float64Array(o+1),this.v=new Int16Array(o),this.middle=Math.round(o/2*(navigator.userAgent.indexOf(\"Gecko/\")>=0?1.2:1))}function v(t,e,r,n,a,i,o){for(var s=0;s<e;s++){for(var l=0;l<r;l++)n[l]=t[l*e+s];for(y(n,a,i,o,r),l=0;l<r;l++)t[l*e+s]=a[l]}for(l=0;l<r;l++){for(s=0;s<e;s++)n[s]=t[l*e+s];for(y(n,a,i,o,e),s=0;s<e;s++)t[l*e+s]=Math.sqrt(a[s])}}function y(t,e,r,n,a){r[0]=0,n[0]=-g,n[1]=+g;for(var i=1,o=0;i<a;i++){for(var s=(t[i]+i*i-(t[r[o]]+r[o]*r[o]))/(2*i-2*r[o]);s<=n[o];)o--,s=(t[i]+i*i-(t[r[o]]+r[o]*r[o]))/(2*i-2*r[o]);r[++o]=i,n[o]=s,n[o+1]=+g}for(i=0,o=0;i<a;i++){for(;n[o+1]<i;)o++;e[i]=(i-r[o])*(i-r[o])+t[r[o]]}}m.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var e=this.ctx.getImageData(0,0,this.size,this.size),r=new Uint8ClampedArray(this.size*this.size),n=0;n<this.size*this.size;n++){var a=e.data[4*n+3]/255;this.gridOuter[n]=1===a?0:0===a?g:Math.pow(Math.max(0,.5-a),2),this.gridInner[n]=1===a?g:0===a?0:Math.pow(Math.max(0,a-.5),2)}for(v(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),v(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),n=0;n<this.size*this.size;n++)r[n]=Math.max(0,Math.min(255,Math.round(255-255*((this.gridOuter[n]-this.gridInner[n])/this.radius+this.cutoff))));return r},p.default=d;var x=function(t,e){this.requestManager=t,this.localIdeographFontFamily=e,this.entries={}};x.prototype.setURL=function(t){this.url=t},x.prototype.getGlyphs=function(e,r){var n=this,a=[];for(var i in e)for(var o=0,s=e[i];o<s.length;o+=1)a.push({stack:i,id:s[o]});t.asyncAll(a,(function(t,e){var r=t.stack,a=t.id,i=n.entries[r];i||(i=n.entries[r]={glyphs:{},requests:{},ranges:{}});var o=i.glyphs[a];if(void 0===o){if(o=n._tinySDF(i,r,a))return i.glyphs[a]=o,void e(null,{stack:r,id:a,glyph:o});var s=Math.floor(a/256);if(256*s>65535)e(new Error(\"glyphs > 65535 not supported\"));else if(i.ranges[s])e(null,{stack:r,id:a,glyph:o});else{var l=i.requests[s];l||(l=i.requests[s]=[],x.loadGlyphRange(r,s,n.url,n.requestManager,(function(t,e){if(e){for(var r in e)n._doesCharSupportLocalGlyph(+r)||(i.glyphs[+r]=e[+r]);i.ranges[s]=!0}for(var a=0,o=l;a<o.length;a+=1)(0,o[a])(t,e);delete i.requests[s]}))),l.push((function(t,n){t?e(t):n&&e(null,{stack:r,id:a,glyph:n[a]||null})}))}}else e(null,{stack:r,id:a,glyph:o})}),(function(t,e){if(t)r(t);else if(e){for(var n={},a=0,i=e;a<i.length;a+=1){var o=i[a],s=o.stack,l=o.id,c=o.glyph;(n[s]||(n[s]={}))[l]=c&&{id:c.id,bitmap:c.bitmap.clone(),metrics:c.metrics}}r(null,n)}}))},x.prototype._doesCharSupportLocalGlyph=function(e){return!!this.localIdeographFontFamily&&(t.isChar[\"CJK Unified Ideographs\"](e)||t.isChar[\"Hangul Syllables\"](e)||t.isChar.Hiragana(e)||t.isChar.Katakana(e))},x.prototype._tinySDF=function(e,r,n){var a=this.localIdeographFontFamily;if(a&&this._doesCharSupportLocalGlyph(n)){var i=e.tinySDF;if(!i){var o=\"400\";/bold/i.test(r)?o=\"900\":/medium/i.test(r)?o=\"500\":/light/i.test(r)&&(o=\"200\"),i=e.tinySDF=new x.TinySDF(24,3,8,.25,a,o)}return{id:n,bitmap:new t.AlphaImage({width:30,height:30},i.draw(String.fromCharCode(n))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},x.loadGlyphRange=function(e,r,n,a,i){var o=256*r,s=o+255,l=a.transformRequest(a.normalizeGlyphsURL(n).replace(\"{fontstack}\",e).replace(\"{range}\",o+\"-\"+s),t.ResourceType.Glyphs);t.getArrayBuffer(l,(function(e,r){if(e)i(e);else if(r){for(var n={},a=0,o=t.parseGlyphPBF(r);a<o.length;a+=1){var s=o[a];n[s.id]=s}i(null,n)}}))},x.TinySDF=p;var b=function(){this.specification=t.styleSpec.light.position};b.prototype.possiblyEvaluate=function(e,r){return t.sphericalToCartesian(e.expression.evaluate(r))},b.prototype.interpolate=function(e,r,n){return{x:t.number(e.x,r.x,n),y:t.number(e.y,r.y,n),z:t.number(e.z,r.z,n)}};var _=new t.Properties({anchor:new t.DataConstantProperty(t.styleSpec.light.anchor),position:new b,color:new t.DataConstantProperty(t.styleSpec.light.color),intensity:new t.DataConstantProperty(t.styleSpec.light.intensity)}),w=function(e){function r(r){e.call(this),this._transitionable=new t.Transitionable(_),this.setLight(r),this._transitioning=this._transitionable.untransitioned()}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getLight=function(){return this._transitionable.serialize()},r.prototype.setLight=function(e,r){if(void 0===r&&(r={}),!this._validate(t.validateLight,e,r))for(var n in e){var a=e[n];t.endsWith(n,\"-transition\")?this._transitionable.setTransition(n.slice(0,-\"-transition\".length),a):this._transitionable.setValue(n,a)}},r.prototype.updateTransitions=function(t){this._transitioning=this._transitionable.transitioned(t,this._transitioning)},r.prototype.hasTransition=function(){return this._transitioning.hasTransition()},r.prototype.recalculate=function(t){this.properties=this._transitioning.possiblyEvaluate(t)},r.prototype._validate=function(e,r,n){return(!n||!1!==n.validate)&&t.emitValidationErrors(this,e.call(t.validateStyle,t.extend({value:r,style:{glyphs:!0,sprite:!0},styleSpec:t.styleSpec})))},r}(t.Evented),T=function(t,e){this.width=t,this.height=e,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};T.prototype.getDash=function(t,e){var r=t.join(\",\")+String(e);return this.dashEntry[r]||(this.dashEntry[r]=this.addDash(t,e)),this.dashEntry[r]},T.prototype.getDashRanges=function(t,e,r){var n=[],a=t.length%2==1?-t[t.length-1]*r:0,i=t[0]*r,o=!0;n.push({left:a,right:i,isDash:o,zeroLength:0===t[0]});for(var s=t[0],l=1;l<t.length;l++){var c=t[l];n.push({left:a=s*r,right:i=(s+=c)*r,isDash:o=!o,zeroLength:0===c})}return n},T.prototype.addRoundDash=function(t,e,r){for(var n=e/2,a=-r;a<=r;a++)for(var i=this.width*(this.nextRow+r+a),o=0,s=t[o],l=0;l<this.width;l++){l/s.right>1&&(s=t[++o]);var c=Math.abs(l-s.left),u=Math.abs(l-s.right),h=Math.min(c,u),f=void 0,p=a/r*(n+1);if(s.isDash){var d=n-Math.abs(p);f=Math.sqrt(h*h+d*d)}else f=n-Math.sqrt(h*h+p*p);this.data[i+l]=Math.max(0,Math.min(255,f+128))}},T.prototype.addRegularDash=function(t){for(var e=t.length-1;e>=0;--e){var r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1))}var a=t[0],i=t[t.length-1];a.isDash===i.isDash&&(a.left=i.left-this.width,i.right=a.right+this.width);for(var o=this.width*this.nextRow,s=0,l=t[s],c=0;c<this.width;c++){c/l.right>1&&(l=t[++s]);var u=Math.abs(c-l.left),h=Math.abs(c-l.right),f=Math.min(u,h);this.data[o+c]=Math.max(0,Math.min(255,(l.isDash?f:-f)+128))}},T.prototype.addDash=function(e,r){var n=r?7:0,a=2*n+1;if(this.nextRow+a>this.height)return t.warnOnce(\"LineAtlas out of space\"),null;for(var i=0,o=0;o<e.length;o++)i+=e[o];if(0!==i){var s=this.width/i,l=this.getDashRanges(e,this.width,s);r?this.addRoundDash(l,s,n):this.addRegularDash(l)}var c={y:(this.nextRow+n+.5)/this.height,height:2*n/this.height,width:i};return this.nextRow+=a,this.dirty=!0,c},T.prototype.bind=function(t){var e=t.gl;this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,e.texSubImage2D(e.TEXTURE_2D,0,0,0,this.width,this.height,e.ALPHA,e.UNSIGNED_BYTE,this.data))):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,this.width,this.height,0,e.ALPHA,e.UNSIGNED_BYTE,this.data))};var k=function e(r,n){this.workerPool=r,this.actors=[],this.currentActor=0,this.id=t.uniqueId();for(var a=this.workerPool.acquire(this.id),i=0;i<a.length;i++){var o=new e.Actor(a[i],n,this.id);o.name=\"Worker \"+i,this.actors.push(o)}};function M(e,r,n){var a=function(a,i){if(a)return n(a);if(i){var o=t.pick(t.extend(i,e),[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\",\"scheme\",\"tileSize\",\"encoding\"]);i.vector_layers&&(o.vectorLayers=i.vector_layers,o.vectorLayerIds=o.vectorLayers.map((function(t){return t.id}))),o.tiles=r.canonicalizeTileset(o,e.url),n(null,o)}};return e.url?t.getJSON(r.transformRequest(r.normalizeSourceURL(e.url),t.ResourceType.Source),a):t.browser.frame((function(){return a(null,e)}))}k.prototype.broadcast=function(e,r,n){t.asyncAll(this.actors,(function(t,n){t.send(e,r,n)}),n=n||function(){})},k.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},k.prototype.remove=function(){this.actors.forEach((function(t){t.remove()})),this.actors=[],this.workerPool.release(this.id)},k.Actor=t.Actor;var A=function(e,r,n){this.bounds=t.LngLatBounds.convert(this.validateBounds(e)),this.minzoom=r||0,this.maxzoom=n||24};A.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},A.prototype.contains=function(e){var r=Math.pow(2,e.z),n=Math.floor(t.mercatorXfromLng(this.bounds.getWest())*r),a=Math.floor(t.mercatorYfromLat(this.bounds.getNorth())*r),i=Math.ceil(t.mercatorXfromLng(this.bounds.getEast())*r),o=Math.ceil(t.mercatorYfromLat(this.bounds.getSouth())*r);return e.x>=n&&e.x<i&&e.y>=a&&e.y<o};var S=function(e){function r(r,n,a,i){if(e.call(this),this.id=r,this.dispatcher=a,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,t.extend(this,t.pick(n,[\"url\",\"scheme\",\"tileSize\",\"promoteId\"])),this._options=t.extend({type:\"vector\"},n),this._collectResourceTiming=n.collectResourceTiming,512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(i)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=M(this._options,this.map._requestManager,(function(r,n){e._tileJSONRequest=null,e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(t.extend(e,n),n.bounds&&(e.tileBounds=new A(n.bounds,e.minzoom,e.maxzoom)),t.postTurnstileEvent(n.tiles,e.map._requestManager._customAccessToken),t.postMapLoadEvent(n.tiles,e.map._getMapId(),e.map._requestManager._skuToken,e.map._requestManager._customAccessToken),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},r.prototype.serialize=function(){return t.extend({},this._options)},r.prototype.loadTile=function(e,r){var n=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),a={request:this.map._requestManager.transformRequest(n,t.ResourceType.Tile),uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};function i(n,a){return delete e.request,e.aborted?r(null):n&&404!==n.status?r(n):(a&&a.resourceTiming&&(e.resourceTiming=a.resourceTiming),this.map._refreshExpiredTiles&&a&&e.setExpiryData(a),e.loadVectorData(a,this.map.painter),t.cacheEntryPossiblyAdded(this.dispatcher),r(null),void(e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)))}a.request.collectResourceTiming=this._collectResourceTiming,e.actor&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=r:e.request=e.actor.send(\"reloadTile\",a,i.bind(this)):(e.actor=this.dispatcher.getActor(),e.request=e.actor.send(\"loadTile\",a,i.bind(this)))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.actor&&t.actor.send(\"abortTile\",{uid:t.uid,type:this.type,source:this.id},void 0)},r.prototype.unloadTile=function(t){t.unloadVectorData(),t.actor&&t.actor.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id},void 0)},r.prototype.hasTransition=function(){return!1},r}(t.Evented),E=function(e){function r(r,n,a,i){e.call(this),this.id=r,this.dispatcher=a,this.setEventedParent(i),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=t.extend({type:\"raster\"},n),t.extend(this,t.pick(n,[\"url\",\"scheme\",\"tileSize\"]))}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=M(this._options,this.map._requestManager,(function(r,n){e._tileJSONRequest=null,e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(t.extend(e,n),n.bounds&&(e.tileBounds=new A(n.bounds,e.minzoom,e.maxzoom)),t.postTurnstileEvent(n.tiles),t.postMapLoadEvent(n.tiles,e.map._getMapId(),e.map._requestManager._skuToken),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},r.prototype.serialize=function(){return t.extend({},this._options)},r.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)},r.prototype.loadTile=function(e,r){var n=this,a=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);e.request=t.getImage(this.map._requestManager.transformRequest(a,t.ResourceType.Tile),(function(a,i){if(delete e.request,e.aborted)e.state=\"unloaded\",r(null);else if(a)e.state=\"errored\",r(a);else if(i){n.map._refreshExpiredTiles&&e.setExpiryData(i),delete i.cacheControl,delete i.expires;var o=n.map.painter.context,s=o.gl;e.texture=n.map.painter.getTileTexture(i.width),e.texture?e.texture.update(i,{useMipmap:!0}):(e.texture=new t.Texture(o,i,s.RGBA,{useMipmap:!0}),e.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE,s.LINEAR_MIPMAP_NEAREST),o.extTextureFilterAnisotropic&&s.texParameterf(s.TEXTURE_2D,o.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,o.extTextureFilterAnisotropicMax)),e.state=\"loaded\",t.cacheEntryPossiblyAdded(n.dispatcher),r(null)}}))},r.prototype.abortTile=function(t,e){t.request&&(t.request.cancel(),delete t.request),e()},r.prototype.unloadTile=function(t,e){t.texture&&this.map.painter.saveTileTexture(t.texture),e()},r.prototype.hasTransition=function(){return!1},r}(t.Evented),C=function(e){function r(r,n,a,i){e.call(this,r,n,a,i),this.type=\"raster-dem\",this.maxzoom=22,this._options=t.extend({type:\"raster-dem\"},n),this.encoding=n.encoding||\"mapbox\"}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.serialize=function(){return{type:\"raster-dem\",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},r.prototype.loadTile=function(e,r){var n=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);function a(t,n){t&&(e.state=\"errored\",r(t)),n&&(e.dem=n,e.needsHillshadePrepare=!0,e.state=\"loaded\",r(null))}e.request=t.getImage(this.map._requestManager.transformRequest(n,t.ResourceType.Tile),function(n,i){if(delete e.request,e.aborted)e.state=\"unloaded\",r(null);else if(n)e.state=\"errored\",r(n);else if(i){this.map._refreshExpiredTiles&&e.setExpiryData(i),delete i.cacheControl,delete i.expires;var o=t.window.ImageBitmap&&i instanceof t.window.ImageBitmap&&t.offscreenCanvasSupported()?i:t.browser.getImageData(i,1),s={uid:e.uid,coord:e.tileID,source:this.id,rawImageData:o,encoding:this.encoding};e.actor&&\"expired\"!==e.state||(e.actor=this.dispatcher.getActor(),e.actor.send(\"loadDEMTile\",s,a.bind(this)))}}.bind(this)),e.neighboringTiles=this._getNeighboringTiles(e.tileID)},r.prototype._getNeighboringTiles=function(e){var r=e.canonical,n=Math.pow(2,r.z),a=(r.x-1+n)%n,i=0===r.x?e.wrap-1:e.wrap,o=(r.x+1+n)%n,s=r.x+1===n?e.wrap+1:e.wrap,l={};return l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,r.y).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y).key]={backfilled:!1},r.y>0&&(l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+1<n&&(l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,r.y+1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y+1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y+1).key]={backfilled:!1}),l},r.prototype.unloadTile=function(t){t.demTexture&&this.map.painter.saveTileTexture(t.demTexture),t.fbo&&(t.fbo.destroy(),delete t.fbo),t.dem&&delete t.dem,delete t.neighboringTiles,t.state=\"unloaded\",t.actor&&t.actor.send(\"removeDEMTile\",{uid:t.uid,source:this.id})},r}(E),L=function(e){function r(r,n,a,i){e.call(this),this.id=r,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=a.getActor(),this.setEventedParent(i),this._data=n.data,this._options=t.extend({},n),this._collectResourceTiming=n.collectResourceTiming,this._resourceTiming=[],void 0!==n.maxzoom&&(this.maxzoom=n.maxzoom),n.type&&(this.type=n.type),n.attribution&&(this.attribution=n.attribution),this.promoteId=n.promoteId;var o=t.EXTENT/this.tileSize;this.workerOptions=t.extend({source:this.id,cluster:n.cluster||!1,geojsonVtOptions:{buffer:(void 0!==n.buffer?n.buffer:128)*o,tolerance:(void 0!==n.tolerance?n.tolerance:.375)*o,extent:t.EXTENT,maxZoom:this.maxzoom,lineMetrics:n.lineMetrics||!1,generateId:n.generateId||!1},superclusterOptions:{maxZoom:void 0!==n.clusterMaxZoom?Math.min(n.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:t.EXTENT,radius:(n.clusterRadius||50)*o,log:!1,generateId:n.generateId||!1},clusterProperties:n.clusterProperties},n.workerOptions)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._updateWorkerData((function(r){if(r)e.fire(new t.ErrorEvent(r));else{var n={dataType:\"source\",sourceDataType:\"metadata\"};e._collectResourceTiming&&e._resourceTiming&&e._resourceTiming.length>0&&(n.resourceTiming=e._resourceTiming,e._resourceTiming=[]),e.fire(new t.Event(\"data\",n))}}))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setData=function(e){var r=this;return this._data=e,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._updateWorkerData((function(e){if(e)r.fire(new t.ErrorEvent(e));else{var n={dataType:\"source\",sourceDataType:\"content\"};r._collectResourceTiming&&r._resourceTiming&&r._resourceTiming.length>0&&(n.resourceTiming=r._resourceTiming,r._resourceTiming=[]),r.fire(new t.Event(\"data\",n))}})),this},r.prototype.getClusterExpansionZoom=function(t,e){return this.actor.send(\"geojson.getClusterExpansionZoom\",{clusterId:t,source:this.id},e),this},r.prototype.getClusterChildren=function(t,e){return this.actor.send(\"geojson.getClusterChildren\",{clusterId:t,source:this.id},e),this},r.prototype.getClusterLeaves=function(t,e,r,n){return this.actor.send(\"geojson.getClusterLeaves\",{source:this.id,clusterId:t,limit:e,offset:r},n),this},r.prototype._updateWorkerData=function(e){var r=this;this._loaded=!1;var n=t.extend({},this.workerOptions),a=this._data;\"string\"==typeof a?(n.request=this.map._requestManager.transformRequest(t.browser.resolveURL(a),t.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(a),this.actor.send(this.type+\".loadData\",n,(function(t,a){r._removed||a&&a.abandoned||(r._loaded=!0,a&&a.resourceTiming&&a.resourceTiming[r.id]&&(r._resourceTiming=a.resourceTiming[r.id].slice(0)),r.actor.send(r.type+\".coalesce\",{source:n.source},null),e(t))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.loadTile=function(e,r){var n=this,a=e.actor?\"reloadTile\":\"loadTile\";e.actor=this.actor,e.request=this.actor.send(a,{type:this.type,uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId},(function(t,i){return delete e.request,e.unloadVectorData(),e.aborted?r(null):t?r(t):(e.loadVectorData(i,n.map.painter,\"reloadTile\"===a),r(null))}))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0},r.prototype.unloadTile=function(t){t.unloadVectorData(),this.actor.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id})},r.prototype.onRemove=function(){this._removed=!0,this.actor.send(\"removeSource\",{type:this.type,source:this.id})},r.prototype.serialize=function(){return t.extend({},this._options,{type:this.type,data:this._data})},r.prototype.hasTransition=function(){return!1},r}(t.Evented),P=t.createLayout([{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]),I=function(e){function r(t,r,n,a){e.call(this),this.id=t,this.dispatcher=n,this.coordinates=r.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(a),this.options=r}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(e,r){var n=this;this._loaded=!1,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),(function(a,i){n._loaded=!0,a?n.fire(new t.ErrorEvent(a)):i&&(n.image=i,e&&(n.coordinates=e),r&&r(),n._finishLoading())}))},r.prototype.loaded=function(){return this._loaded},r.prototype.updateImage=function(t){var e=this;return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(function(){e.texture=null})),this):this},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setCoordinates=function(e){var r=this;this.coordinates=e;var n=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=function(e){for(var r=1/0,n=1/0,a=-1/0,i=-1/0,o=0,s=e;o<s.length;o+=1){var l=s[o];r=Math.min(r,l.x),n=Math.min(n,l.y),a=Math.max(a,l.x),i=Math.max(i,l.y)}var c=Math.max(a-r,i-n),u=Math.max(0,Math.floor(-Math.log(c)/Math.LN2)),h=Math.pow(2,u);return new t.CanonicalTileID(u,Math.floor((r+a)/2*h),Math.floor((n+i)/2*h))}(n),this.minzoom=this.maxzoom=this.tileID.z;var a=n.map((function(t){return r.tileID.getTilePoint(t)._round()}));return this._boundsArray=new t.StructArrayLayout4i8,this._boundsArray.emplaceBack(a[0].x,a[0].y,0,0),this._boundsArray.emplaceBack(a[1].x,a[1].y,t.EXTENT,0),this._boundsArray.emplaceBack(a[3].x,a[3].y,0,t.EXTENT),this._boundsArray.emplaceBack(a[2].x,a[2].y,t.EXTENT,t.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})),this},r.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new t.Texture(e,this.image,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var a=this.tiles[n];\"loaded\"!==a.state&&(a.state=\"loaded\",a.texture=this.texture)}}},r.prototype.loadTile=function(t,e){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={},e(null)):(t.state=\"errored\",e(null))},r.prototype.serialize=function(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return!1},r}(t.Evented),z=function(e){function r(t,r,n,a){e.call(this,t,r,n,a),this.roundZoom=!0,this.type=\"video\",this.options=r}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1;var r=this.options;this.urls=[];for(var n=0,a=r.urls;n<a.length;n+=1)this.urls.push(this.map._requestManager.transformRequest(a[n],t.ResourceType.Source).url);t.getVideo(this.urls,(function(r,n){e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(e.video=n,e.video.loop=!0,e.video.addEventListener(\"playing\",(function(){e.map.triggerRepaint()})),e.map&&e.video.play(),e._finishLoading())}))},r.prototype.pause=function(){this.video&&this.video.pause()},r.prototype.play=function(){this.video&&this.video.play()},r.prototype.seek=function(e){if(this.video){var r=this.video.seekable;e<r.start(0)||e>r.end(0)?this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+this.id,null,\"Playback for this video can be set only between the \"+r.start(0)+\" and \"+r.end(0)+\"-second mark.\"))):this.video.currentTime=e}},r.prototype.getVideo=function(){return this.video},r.prototype.onAdd=function(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},r.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE),r.texSubImage2D(r.TEXTURE_2D,0,0,0,r.RGBA,r.UNSIGNED_BYTE,this.video)):(this.texture=new t.Texture(e,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var a=this.tiles[n];\"loaded\"!==a.state&&(a.state=\"loaded\",a.texture=this.texture)}}},r.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this.video&&!this.video.paused},r}(I),O=function(e){function r(r,n,a,i){e.call(this,r,n,a,i),n.coordinates?Array.isArray(n.coordinates)&&4===n.coordinates.length&&!n.coordinates.some((function(t){return!Array.isArray(t)||2!==t.length||t.some((function(t){return\"number\"!=typeof t}))}))||this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'\"coordinates\" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'missing required property \"coordinates\"'))),n.animate&&\"boolean\"!=typeof n.animate&&this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'optional \"animate\" property must be a boolean value'))),n.canvas?\"string\"==typeof n.canvas||n.canvas instanceof t.window.HTMLCanvasElement||this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'\"canvas\" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'missing required property \"canvas\"'))),this.options=n,this.animate=void 0===n.animate||n.animate}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.window.HTMLCanvasElement?this.options.canvas:t.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.ErrorEvent(new Error(\"Canvas dimensions cannot be less than or equal to zero.\"))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())},r.prototype.getCanvas=function(){return this.canvas},r.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},r.prototype.onRemove=function(){this.pause()},r.prototype.prepare=function(){var e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var r=this.map.painter.context,n=r.gl;for(var a in this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new t.Texture(r,this.canvas,n.RGBA,{premultiply:!0}),this.tiles){var i=this.tiles[a];\"loaded\"!==i.state&&(i.state=\"loaded\",i.texture=this.texture)}}},r.prototype.serialize=function(){return{type:\"canvas\",coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this._playing},r.prototype._hasInvalidDimensions=function(){for(var t=0,e=[this.canvas.width,this.canvas.height];t<e.length;t+=1){var r=e[t];if(isNaN(r)||r<=0)return!0}return!1},r}(I),D={vector:S,raster:E,\"raster-dem\":C,geojson:L,video:z,image:I,canvas:O};function R(e,r){var n=t.identity([]);return t.translate(n,n,[1,1,0]),t.scale(n,n,[.5*e.width,.5*e.height,1]),t.multiply(n,n,e.calculatePosMatrix(r.toUnwrapped()))}function F(t,e,r,n,a,i){var o=function(t,e,r){if(t)for(var n=0,a=t;n<a.length;n+=1){var i=e[a[n]];if(i&&i.source===r&&\"fill-extrusion\"===i.type)return!0}else for(var o in e){var s=e[o];if(s.source===r&&\"fill-extrusion\"===s.type)return!0}return!1}(a&&a.layers,e,t.id),s=i.maxPitchScaleFactor(),l=t.tilesIn(n,s,o);l.sort(B);for(var c=[],u=0,h=l;u<h.length;u+=1){var f=h[u];c.push({wrappedTileID:f.tileID.wrapped().key,queryResults:f.tile.queryRenderedFeatures(e,r,t._state,f.queryGeometry,f.cameraQueryGeometry,f.scale,a,i,s,R(t.transform,f.tileID))})}var p=function(t){for(var e={},r={},n=0,a=t;n<a.length;n+=1){var i=a[n],o=i.queryResults,s=i.wrappedTileID,l=r[s]=r[s]||{};for(var c in o)for(var u=o[c],h=l[c]=l[c]||{},f=e[c]=e[c]||[],p=0,d=u;p<d.length;p+=1){var g=d[p];h[g.featureIndex]||(h[g.featureIndex]=!0,f.push(g))}}return e}(c);for(var d in p)p[d].forEach((function(e){var r=e.feature,n=t.getFeatureState(r.layer[\"source-layer\"],r.id);r.source=r.layer.source,r.layer[\"source-layer\"]&&(r.sourceLayer=r.layer[\"source-layer\"]),r.state=n}));return p}function B(t,e){var r=t.tileID,n=e.tileID;return r.overscaledZ-n.overscaledZ||r.canonical.y-n.canonical.y||r.wrap-n.wrap||r.canonical.x-n.canonical.x}var N=function(t,e){this.max=t,this.onRemove=e,this.reset()};N.prototype.reset=function(){for(var t in this.data)for(var e=0,r=this.data[t];e<r.length;e+=1){var n=r[e];n.timeout&&clearTimeout(n.timeout),this.onRemove(n.value)}return this.data={},this.order=[],this},N.prototype.add=function(t,e,r){var n=this,a=t.wrapped().key;void 0===this.data[a]&&(this.data[a]=[]);var i={value:e,timeout:void 0};if(void 0!==r&&(i.timeout=setTimeout((function(){n.remove(t,i)}),r)),this.data[a].push(i),this.order.push(a),this.order.length>this.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},N.prototype.has=function(t){return t.wrapped().key in this.data},N.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},N.prototype._getAndRemoveByKey=function(t){var e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value},N.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},N.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},N.prototype.remove=function(t,e){if(!this.has(t))return this;var r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),a=this.data[r][n];return this.data[r].splice(n,1),a.timeout&&clearTimeout(a.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(a.value),this.order.splice(this.order.indexOf(r),1),this},N.prototype.setMaxSize=function(t){for(this.max=t;this.order.length>this.max;){var e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this},N.prototype.filter=function(t){var e=[];for(var r in this.data)for(var n=0,a=this.data[r];n<a.length;n+=1){var i=a[n];t(i.value)||e.push(i)}for(var o=0,s=e;o<s.length;o+=1){var l=s[o];this.remove(l.value.tileID,l)}};var j=function(t,e,r){this.context=t;var n=t.gl;this.buffer=n.createBuffer(),this.dynamicDraw=Boolean(r),this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};j.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},j.prototype.updateData=function(t){var e=this.context.gl;this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer)},j.prototype.destroy=function(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)};var U={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"},V=function(t,e,r,n){this.length=e.length,this.attributes=r,this.itemSize=e.bytesPerElement,this.dynamicDraw=n,this.context=t;var a=t.gl;this.buffer=a.createBuffer(),t.bindVertexBuffer.set(this.buffer),a.bufferData(a.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?a.DYNAMIC_DRAW:a.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};V.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},V.prototype.updateData=function(t){var e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer)},V.prototype.enableAttributes=function(t,e){for(var r=0;r<this.attributes.length;r++){var n=e.attributes[this.attributes[r].name];void 0!==n&&t.enableVertexAttribArray(n)}},V.prototype.setVertexAttribPointers=function(t,e,r){for(var n=0;n<this.attributes.length;n++){var a=this.attributes[n],i=e.attributes[a.name];void 0!==i&&t.vertexAttribPointer(i,a.components,t[U[a.type]],!1,this.itemSize,a.offset+this.itemSize*(r||0))}},V.prototype.destroy=function(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)};var q=function(t){this.gl=t.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};q.prototype.get=function(){return this.current},q.prototype.set=function(t){},q.prototype.getDefault=function(){return this.default},q.prototype.setDefault=function(){this.set(this.default)};var H=function(e){function r(){e.apply(this,arguments)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getDefault=function(){return t.Color.transparent},r.prototype.set=function(t){var e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.clearColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)},r}(q),G=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 1},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.clearDepth(t),this.current=t,this.dirty=!1)},e}(q),Y=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.clearStencil(t),this.current=t,this.dirty=!1)},e}(q),W=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return[!0,!0,!0,!0]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.colorMask(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)},e}(q),Z=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.depthMask(t),this.current=t,this.dirty=!1)},e}(q),X=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 255},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.stencilMask(t),this.current=t,this.dirty=!1)},e}(q),J=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},e.prototype.set=function(t){var e=this.current;(t.func!==e.func||t.ref!==e.ref||t.mask!==e.mask||this.dirty)&&(this.gl.stencilFunc(t.func,t.ref,t.mask),this.current=t,this.dirty=!1)},e}(q),K=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[t.KEEP,t.KEEP,t.KEEP]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||this.dirty)&&(this.gl.stencilOp(t[0],t[1],t[2]),this.current=t,this.dirty=!1)},e}(q),Q=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.STENCIL_TEST):e.disable(e.STENCIL_TEST),this.current=t,this.dirty=!1}},e}(q),$=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return[0,1]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.depthRange(t[0],t[1]),this.current=t,this.dirty=!1)},e}(q),tt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.DEPTH_TEST):e.disable(e.DEPTH_TEST),this.current=t,this.dirty=!1}},e}(q),et=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.LESS},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.depthFunc(t),this.current=t,this.dirty=!1)},e}(q),rt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.BLEND):e.disable(e.BLEND),this.current=t,this.dirty=!1}},e}(q),nt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[t.ONE,t.ZERO]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.blendFunc(t[0],t[1]),this.current=t,this.dirty=!1)},e}(q),at=function(e){function r(){e.apply(this,arguments)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getDefault=function(){return t.Color.transparent},r.prototype.set=function(t){var e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.blendColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)},r}(q),it=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.FUNC_ADD},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.blendEquation(t),this.current=t,this.dirty=!1)},e}(q),ot=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.CULL_FACE):e.disable(e.CULL_FACE),this.current=t,this.dirty=!1}},e}(q),st=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.BACK},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.cullFace(t),this.current=t,this.dirty=!1)},e}(q),lt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.CCW},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.frontFace(t),this.current=t,this.dirty=!1)},e}(q),ct=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.useProgram(t),this.current=t,this.dirty=!1)},e}(q),ut=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.TEXTURE0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.activeTexture(t),this.current=t,this.dirty=!1)},e}(q),ht=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[0,0,t.drawingBufferWidth,t.drawingBufferHeight]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.viewport(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)},e}(q),ft=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,t),this.current=t,this.dirty=!1}},e}(q),pt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindRenderbuffer(e.RENDERBUFFER,t),this.current=t,this.dirty=!1}},e}(q),dt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindTexture(e.TEXTURE_2D,t),this.current=t,this.dirty=!1}},e}(q),gt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindBuffer(e.ARRAY_BUFFER,t),this.current=t,this.dirty=!1}},e}(q),mt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){var e=this.gl;e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t),this.current=t,this.dirty=!1},e}(q),vt=function(t){function e(e){t.call(this,e),this.vao=e.extVertexArrayObject}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){this.vao&&(t!==this.current||this.dirty)&&(this.vao.bindVertexArrayOES(t),this.current=t,this.dirty=!1)},e}(q),yt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 4},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_ALIGNMENT,t),this.current=t,this.dirty=!1}},e}(q),xt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t),this.current=t,this.dirty=!1}},e}(q),bt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,t),this.current=t,this.dirty=!1}},e}(q),_t=function(t){function e(e,r){t.call(this,e),this.context=e,this.parent=r}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e}(q),wt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.setDirty=function(){this.dirty=!0},e.prototype.set=function(t){if(t!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var e=this.gl;e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t,0),this.current=t,this.dirty=!1}},e}(_t),Tt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){if(t!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var e=this.gl;e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t),this.current=t,this.dirty=!1}},e}(_t),kt=function(t,e,r,n){this.context=t,this.width=e,this.height=r;var a=this.framebuffer=t.gl.createFramebuffer();this.colorAttachment=new wt(t,a),n&&(this.depthAttachment=new Tt(t,a))};kt.prototype.destroy=function(){var t=this.context.gl,e=this.colorAttachment.get();if(e&&t.deleteTexture(e),this.depthAttachment){var r=this.depthAttachment.get();r&&t.deleteRenderbuffer(r)}t.deleteFramebuffer(this.framebuffer)};var Mt=function(t,e,r){this.func=t,this.mask=e,this.range=r};Mt.ReadOnly=!1,Mt.ReadWrite=!0,Mt.disabled=new Mt(519,Mt.ReadOnly,[0,1]);var At=function(t,e,r,n,a,i){this.test=t,this.ref=e,this.mask=r,this.fail=n,this.depthFail=a,this.pass=i};At.disabled=new At({func:519,mask:0},0,0,7680,7680,7680);var St=function(t,e,r){this.blendFunction=t,this.blendColor=e,this.mask=r};St.disabled=new St(St.Replace=[1,0],t.Color.transparent,[!1,!1,!1,!1]),St.unblended=new St(St.Replace,t.Color.transparent,[!0,!0,!0,!0]),St.alphaBlended=new St([1,771],t.Color.transparent,[!0,!0,!0,!0]);var Et=function(t,e,r){this.enable=t,this.mode=e,this.frontFace=r};Et.disabled=new Et(!1,1029,2305),Et.backCCW=new Et(!0,1029,2305);var Ct=function(t){this.gl=t,this.extVertexArrayObject=this.gl.getExtension(\"OES_vertex_array_object\"),this.clearColor=new H(this),this.clearDepth=new G(this),this.clearStencil=new Y(this),this.colorMask=new W(this),this.depthMask=new Z(this),this.stencilMask=new X(this),this.stencilFunc=new J(this),this.stencilOp=new K(this),this.stencilTest=new Q(this),this.depthRange=new $(this),this.depthTest=new tt(this),this.depthFunc=new et(this),this.blend=new rt(this),this.blendFunc=new nt(this),this.blendColor=new at(this),this.blendEquation=new it(this),this.cullFace=new ot(this),this.cullFaceSide=new st(this),this.frontFace=new lt(this),this.program=new ct(this),this.activeTexture=new ut(this),this.viewport=new ht(this),this.bindFramebuffer=new ft(this),this.bindRenderbuffer=new pt(this),this.bindTexture=new dt(this),this.bindVertexBuffer=new gt(this),this.bindElementBuffer=new mt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new vt(this),this.pixelStoreUnpack=new yt(this),this.pixelStoreUnpackPremultiplyAlpha=new xt(this),this.pixelStoreUnpackFlipY=new bt(this),this.extTextureFilterAnisotropic=t.getExtension(\"EXT_texture_filter_anisotropic\")||t.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||t.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=t.getExtension(\"OES_texture_half_float\"),this.extTextureHalfFloat&&(t.getExtension(\"OES_texture_half_float_linear\"),this.extRenderToTextureHalfFloat=t.getExtension(\"EXT_color_buffer_half_float\")),this.extTimerQuery=t.getExtension(\"EXT_disjoint_timer_query\")};Ct.prototype.setDefault=function(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()},Ct.prototype.setDirty=function(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.extVertexArrayObject&&(this.bindVertexArrayOES.dirty=!0),this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0},Ct.prototype.createIndexBuffer=function(t,e){return new j(this,t,e)},Ct.prototype.createVertexBuffer=function(t,e,r){return new V(this,t,e,r)},Ct.prototype.createRenderbuffer=function(t,e,r){var n=this.gl,a=n.createRenderbuffer();return this.bindRenderbuffer.set(a),n.renderbufferStorage(n.RENDERBUFFER,t,e,r),this.bindRenderbuffer.set(null),a},Ct.prototype.createFramebuffer=function(t,e,r){return new kt(this,t,e,r)},Ct.prototype.clear=function(t){var e=t.color,r=t.depth,n=this.gl,a=0;e&&(a|=n.COLOR_BUFFER_BIT,this.clearColor.set(e),this.colorMask.set([!0,!0,!0,!0])),void 0!==r&&(a|=n.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(r),this.depthMask.set(!0)),n.clear(a)},Ct.prototype.setCullFace=function(t){!1===t.enable?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(t.mode),this.frontFace.set(t.frontFace))},Ct.prototype.setDepthMode=function(t){t.func!==this.gl.ALWAYS||t.mask?(this.depthTest.set(!0),this.depthFunc.set(t.func),this.depthMask.set(t.mask),this.depthRange.set(t.range)):this.depthTest.set(!1)},Ct.prototype.setStencilMode=function(t){t.test.func!==this.gl.ALWAYS||t.mask?(this.stencilTest.set(!0),this.stencilMask.set(t.mask),this.stencilOp.set([t.fail,t.depthFail,t.pass]),this.stencilFunc.set({func:t.test.func,ref:t.ref,mask:t.test.mask})):this.stencilTest.set(!1)},Ct.prototype.setColorMode=function(e){t.deepEqual(e.blendFunction,St.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(e.blendFunction),this.blendColor.set(e.blendColor)),this.colorMask.set(e.mask)},Ct.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var Lt=function(e){function r(r,n,a){var i=this;e.call(this),this.id=r,this.dispatcher=a,this.on(\"data\",(function(t){\"source\"===t.dataType&&\"metadata\"===t.sourceDataType&&(i._sourceLoaded=!0),i._sourceLoaded&&!i._paused&&\"source\"===t.dataType&&\"content\"===t.sourceDataType&&(i.reload(),i.transform&&i.update(i.transform))})),this.on(\"error\",(function(){i._sourceErrored=!0})),this._source=function(e,r,n,a){var i=new D[r.type](e,r,n,a);if(i.id!==e)throw new Error(\"Expected Source id to be \"+e+\" instead of \"+i.id);return t.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],i),i}(r,n,a,this),this._tiles={},this._cache=new N(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new t.SourceFeatureState}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.onAdd=function(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(t)},r.prototype.onRemove=function(t){this._source&&this._source.onRemove&&this._source.onRemove(t)},r.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(var t in this._tiles){var e=this._tiles[t];if(\"loaded\"!==e.state&&\"errored\"!==e.state)return!1}return!0},r.prototype.getSource=function(){return this._source},r.prototype.pause=function(){this._paused=!0},r.prototype.resume=function(){if(this._paused){var t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform)}},r.prototype._loadTile=function(t,e){return this._source.loadTile(t,e)},r.prototype._unloadTile=function(t){if(this._source.unloadTile)return this._source.unloadTile(t,(function(){}))},r.prototype._abortTile=function(t){if(this._source.abortTile)return this._source.abortTile(t,(function(){}))},r.prototype.serialize=function(){return this._source.serialize()},r.prototype.prepare=function(t){for(var e in this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null),this._tiles){var r=this._tiles[e];r.upload(t),r.prepare(this.map.style.imageManager)}},r.prototype.getIds=function(){return t.values(this._tiles).map((function(t){return t.tileID})).sort(Pt).map((function(t){return t.key}))},r.prototype.getRenderableIds=function(e){var r=this,n=[];for(var a in this._tiles)this._isIdRenderable(a,e)&&n.push(this._tiles[a]);return e?n.sort((function(e,n){var a=e.tileID,i=n.tileID,o=new t.Point(a.canonical.x,a.canonical.y)._rotate(r.transform.angle),s=new t.Point(i.canonical.x,i.canonical.y)._rotate(r.transform.angle);return a.overscaledZ-i.overscaledZ||s.y-o.y||s.x-o.x})).map((function(t){return t.tileID.key})):n.map((function(t){return t.tileID})).sort(Pt).map((function(t){return t.key}))},r.prototype.hasRenderableParent=function(t){var e=this.findLoadedParent(t,0);return!!e&&this._isIdRenderable(e.tileID.key)},r.prototype._isIdRenderable=function(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())},r.prototype.reload=function(){if(this._paused)this._shouldReloadOnResume=!0;else for(var t in this._cache.reset(),this._tiles)\"errored\"!==this._tiles[t].state&&this._reloadTile(t,\"reloading\")},r.prototype._reloadTile=function(t,e){var r=this._tiles[t];r&&(\"loading\"!==r.state&&(r.state=e),this._loadTile(r,this._tileLoaded.bind(this,r,t,e)))},r.prototype._tileLoaded=function(e,r,n,a){if(a)return e.state=\"errored\",void(404!==a.status?this._source.fire(new t.ErrorEvent(a,{tile:e})):this.update(this.transform));e.timeAdded=t.browser.now(),\"expired\"===n&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(r,e),\"raster-dem\"===this.getSource().type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new t.Event(\"data\",{dataType:\"source\",tile:e,coord:e.tileID}))},r.prototype._backfillDEM=function(t){for(var e=this.getRenderableIds(),r=0;r<e.length;r++){var n=e[r];if(t.neighboringTiles&&t.neighboringTiles[n]){var a=this.getTileByID(n);i(t,a),i(a,t)}}function i(t,e){t.needsHillshadePrepare=!0;var r=e.tileID.canonical.x-t.tileID.canonical.x,n=e.tileID.canonical.y-t.tileID.canonical.y,a=Math.pow(2,t.tileID.canonical.z),i=e.tileID.key;0===r&&0===n||Math.abs(n)>1||(Math.abs(r)>1&&(1===Math.abs(r+a)?r+=a:1===Math.abs(r-a)&&(r-=a)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[i]&&(t.neighboringTiles[i].backfilled=!0)))}},r.prototype.getTile=function(t){return this.getTileByID(t.key)},r.prototype.getTileByID=function(t){return this._tiles[t]},r.prototype._retainLoadedChildren=function(t,e,r,n){for(var a in this._tiles){var i=this._tiles[a];if(!(n[a]||!i.hasData()||i.tileID.overscaledZ<=e||i.tileID.overscaledZ>r)){for(var o=i.tileID;i&&i.tileID.overscaledZ>e+1;){var s=i.tileID.scaledTo(i.tileID.overscaledZ-1);(i=this._tiles[s.key])&&i.hasData()&&(o=s)}for(var l=o;l.overscaledZ>e;)if(t[(l=l.scaledTo(l.overscaledZ-1)).key]){n[o.key]=o;break}}}},r.prototype.findLoadedParent=function(t,e){if(t.key in this._loadedParentTiles){var r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(var n=t.overscaledZ-1;n>=e;n--){var a=t.scaledTo(n),i=this._getLoadedTile(a);if(i)return i}},r.prototype._getLoadedTile=function(t){var e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)},r.prototype.updateCacheSize=function(t){var e=Math.ceil(t.width/this._source.tileSize)+1,r=Math.ceil(t.height/this._source.tileSize)+1,n=Math.floor(e*r*5),a=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,n):n;this._cache.setMaxSize(a)},r.prototype.handleWrapJump=function(t){var e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){var r={};for(var n in this._tiles){var a=this._tiles[n];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+e),r[a.tileID.key]=a}for(var i in this._tiles=r,this._timers)clearTimeout(this._timers[i]),delete this._timers[i];for(var o in this._tiles)this._setTileReloadTimer(o,this._tiles[o])}},r.prototype.update=function(e){var n=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var a;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?a=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(e){return new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y)})):(a=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(a=a.filter((function(t){return n._source.hasTile(t)})))):a=[];var i=e.coveringZoomLevel(this._source),o=Math.max(i-r.maxOverzooming,this._source.minzoom),s=Math.max(i+r.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(a,i);if(It(this._source.type)){for(var c={},u={},h=0,f=Object.keys(l);h<f.length;h+=1){var p=f[h],d=l[p],g=this._tiles[p];if(g&&!(g.fadeEndTime&&g.fadeEndTime<=t.browser.now())){var m=this.findLoadedParent(d,o);m&&(this._addTile(m.tileID),c[m.tileID.key]=m.tileID),u[p]=d}}for(var v in this._retainLoadedChildren(u,i,s,l),c)l[v]||(this._coveredTiles[v]=!0,l[v]=c[v])}for(var y in l)this._tiles[y].clearFadeHold();for(var x=0,b=t.keysDifference(this._tiles,l);x<b.length;x+=1){var _=b[x],w=this._tiles[_];w.hasSymbolBuckets&&!w.holdingForFade()?w.setHoldDuration(this.map._fadeDuration):w.hasSymbolBuckets&&!w.symbolFadeFinished()||this._removeTile(_)}this._updateLoadedParentTileCache()}},r.prototype.releaseSymbolFadeTiles=function(){for(var t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t)},r.prototype._updateRetainedTiles=function(t,e){for(var n={},a={},i=Math.max(e-r.maxOverzooming,this._source.minzoom),o=Math.max(e+r.maxUnderzooming,this._source.minzoom),s={},l=0,c=t;l<c.length;l+=1){var u=c[l],h=this._addTile(u);n[u.key]=u,h.hasData()||e<this._source.maxzoom&&(s[u.key]=u)}this._retainLoadedChildren(s,e,o,n);for(var f=0,p=t;f<p.length;f+=1){var d=p[f],g=this._tiles[d.key];if(!g.hasData()){if(e+1>this._source.maxzoom){var m=d.children(this._source.maxzoom)[0],v=this.getTile(m);if(v&&v.hasData()){n[m.key]=m;continue}}else{var y=d.children(this._source.maxzoom);if(n[y[0].key]&&n[y[1].key]&&n[y[2].key]&&n[y[3].key])continue}for(var x=g.wasRequested(),b=d.overscaledZ-1;b>=i;--b){var _=d.scaledTo(b);if(a[_.key])break;if(a[_.key]=!0,!(g=this.getTile(_))&&x&&(g=this._addTile(_)),g&&(n[_.key]=_,x=g.wasRequested(),g.hasData()))break}}}return n},r.prototype._updateLoadedParentTileCache=function(){for(var t in this._loadedParentTiles={},this._tiles){for(var e=[],r=void 0,n=this._tiles[t].tileID;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}e.push(n.key);var a=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(a))break;n=a}for(var i=0,o=e;i<o.length;i+=1)this._loadedParentTiles[o[i]]=r}},r.prototype._addTile=function(e){var r=this._tiles[e.key];if(r)return r;(r=this._cache.getAndRemove(e))&&(this._setTileReloadTimer(e.key,r),r.tileID=e,this._state.initializeTileState(r,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,r)));var n=Boolean(r);return n||(r=new t.Tile(e,this._source.tileSize*e.overscaleFactor()),this._loadTile(r,this._tileLoaded.bind(this,r,e.key,r.state))),r?(r.uses++,this._tiles[e.key]=r,n||this._source.fire(new t.Event(\"dataloading\",{tile:r,coord:r.tileID,dataType:\"source\"})),r):null},r.prototype._setTileReloadTimer=function(t,e){var r=this;t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);var n=e.getExpiryTimeout();n&&(this._timers[t]=setTimeout((function(){r._reloadTile(t,\"expired\"),delete r._timers[t]}),n))},r.prototype._removeTile=function(t){var e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&\"reloading\"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))},r.prototype.clearTiles=function(){for(var t in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(t);this._cache.reset()},r.prototype.tilesIn=function(e,r,n){var a=this,i=[],o=this.transform;if(!o)return i;for(var s=n?o.getCameraQueryGeometry(e):e,l=e.map((function(t){return o.pointCoordinate(t)})),c=s.map((function(t){return o.pointCoordinate(t)})),u=this.getIds(),h=1/0,f=1/0,p=-1/0,d=-1/0,g=0,m=c;g<m.length;g+=1){var v=m[g];h=Math.min(h,v.x),f=Math.min(f,v.y),p=Math.max(p,v.x),d=Math.max(d,v.y)}for(var y=function(e){var n=a._tiles[u[e]];if(!n.holdingForFade()){var s=n.tileID,g=Math.pow(2,o.zoom-n.tileID.overscaledZ),m=r*n.queryPadding*t.EXTENT/n.tileSize/g,v=[s.getTilePoint(new t.MercatorCoordinate(h,f)),s.getTilePoint(new t.MercatorCoordinate(p,d))];if(v[0].x-m<t.EXTENT&&v[0].y-m<t.EXTENT&&v[1].x+m>=0&&v[1].y+m>=0){var y=l.map((function(t){return s.getTilePoint(t)})),x=c.map((function(t){return s.getTilePoint(t)}));i.push({tile:n,tileID:s,queryGeometry:y,cameraQueryGeometry:x,scale:g})}}},x=0;x<u.length;x++)y(x);return i},r.prototype.getVisibleCoordinates=function(t){for(var e=this,r=this.getRenderableIds(t).map((function(t){return e._tiles[t].tileID})),n=0,a=r;n<a.length;n+=1){var i=a[n];i.posMatrix=this.transform.calculatePosMatrix(i.toUnwrapped())}return r},r.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(It(this._source.type))for(var e in this._tiles){var r=this._tiles[e];if(void 0!==r.fadeEndTime&&r.fadeEndTime>=t.browser.now())return!0}return!1},r.prototype.setFeatureState=function(t,e,r){this._state.updateState(t=t||\"_geojsonTileLayer\",e,r)},r.prototype.removeFeatureState=function(t,e,r){this._state.removeFeatureState(t=t||\"_geojsonTileLayer\",e,r)},r.prototype.getFeatureState=function(t,e){return this._state.getState(t=t||\"_geojsonTileLayer\",e)},r.prototype.setDependencies=function(t,e,r){var n=this._tiles[t];n&&n.setDependencies(e,r)},r.prototype.reloadTilesForDependencies=function(t,e){for(var r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(r,\"reloading\");this._cache.filter((function(r){return!r.hasDependency(t,e)}))},r}(t.Evented);function Pt(t,e){var r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function It(t){return\"raster\"===t||\"image\"===t||\"video\"===t}function zt(){return new t.window.Worker(Ya.workerUrl)}Lt.maxOverzooming=10,Lt.maxUnderzooming=3;var Ot=\"mapboxgl_preloaded_worker_pool\",Dt=function(){this.active={}};Dt.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length<Dt.workerCount;)this.workers.push(new zt);return this.active[t]=!0,this.workers.slice()},Dt.prototype.release=function(t){delete this.active[t],0===this.numActive()&&(this.workers.forEach((function(t){t.terminate()})),this.workers=null)},Dt.prototype.isPreloaded=function(){return!!this.active[Ot]},Dt.prototype.numActive=function(){return Object.keys(this.active).length};var Rt,Ft=Math.floor(t.browser.hardwareConcurrency/2);function Bt(){return Rt||(Rt=new Dt),Rt}function Nt(e,r){var n={};for(var a in e)\"ref\"!==a&&(n[a]=e[a]);return t.refProperties.forEach((function(t){t in r&&(n[t]=r[t])})),n}function jt(t){t=t.slice();for(var e=Object.create(null),r=0;r<t.length;r++)e[t[r].id]=t[r];for(var n=0;n<t.length;n++)\"ref\"in t[n]&&(t[n]=Nt(t[n],e[t[n].ref]));return t}Dt.workerCount=Math.max(Math.min(Ft,6),1);var Ut={setStyle:\"setStyle\",addLayer:\"addLayer\",removeLayer:\"removeLayer\",setPaintProperty:\"setPaintProperty\",setLayoutProperty:\"setLayoutProperty\",setFilter:\"setFilter\",addSource:\"addSource\",removeSource:\"removeSource\",setGeoJSONSourceData:\"setGeoJSONSourceData\",setLayerZoomRange:\"setLayerZoomRange\",setLayerProperty:\"setLayerProperty\",setCenter:\"setCenter\",setZoom:\"setZoom\",setBearing:\"setBearing\",setPitch:\"setPitch\",setSprite:\"setSprite\",setGlyphs:\"setGlyphs\",setTransition:\"setTransition\",setLight:\"setLight\"};function Vt(t,e,r){r.push({command:Ut.addSource,args:[t,e[t]]})}function qt(t,e,r){e.push({command:Ut.removeSource,args:[t]}),r[t]=!0}function Ht(t,e,r,n){qt(t,r,n),Vt(t,e,r)}function Gt(e,r,n){var a;for(a in e[n])if(e[n].hasOwnProperty(a)&&\"data\"!==a&&!t.deepEqual(e[n][a],r[n][a]))return!1;for(a in r[n])if(r[n].hasOwnProperty(a)&&\"data\"!==a&&!t.deepEqual(e[n][a],r[n][a]))return!1;return!0}function Yt(e,r,n,a,i,o){var s;for(s in r=r||{},e=e||{})e.hasOwnProperty(s)&&(t.deepEqual(e[s],r[s])||n.push({command:o,args:[a,s,r[s],i]}));for(s in r)r.hasOwnProperty(s)&&!e.hasOwnProperty(s)&&(t.deepEqual(e[s],r[s])||n.push({command:o,args:[a,s,r[s],i]}))}function Wt(t){return t.id}function Zt(t,e){return t[e.id]=e,t}var Xt=function(t,e){this.reset(t,e)};Xt.prototype.reset=function(t,e){this.points=t||[],this._distances=[0];for(var r=1;r<this.points.length;r++)this._distances[r]=this._distances[r-1]+this.points[r].dist(this.points[r-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(e||0,.5*this.length),this.paddedLength=this.length-2*this.padding},Xt.prototype.lerp=function(e){if(1===this.points.length)return this.points[0];e=t.clamp(e,0,1);for(var r=1,n=this._distances[r],a=e*this.paddedLength+this.padding;n<a&&r<this._distances.length;)n=this._distances[++r];var i=r-1,o=this._distances[i],s=n-o,l=s>0?(a-o)/s:0;return this.points[i].mult(1-l).add(this.points[r].mult(l))};var Jt=function(t,e,r){var n=this.boxCells=[],a=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(var i=0;i<this.xCellCount*this.yCellCount;i++)n.push([]),a.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=t,this.height=e,this.xScale=this.xCellCount/t,this.yScale=this.yCellCount/e,this.boxUid=0,this.circleUid=0};function Kt(e,r,n,a,i){var o=t.create();return r?(t.scale(o,o,[1/i,1/i,1]),n||t.rotateZ(o,o,a.angle)):t.multiply(o,a.labelPlaneMatrix,e),o}function Qt(e,r,n,a,i){if(r){var o=t.clone(e);return t.scale(o,o,[i,i,1]),n||t.rotateZ(o,o,-a.angle),o}return a.glCoordMatrix}function $t(e,r){var n=[e.x,e.y,0,1];ue(n,n,r);var a=n[3];return{point:new t.Point(n[0]/a,n[1]/a),signedDistanceFromCamera:a}}function te(t,e){return.5+t/e*.5}function ee(t,e){var r=t[0]/t[3],n=t[1]/t[3];return r>=-e[0]&&r<=e[0]&&n>=-e[1]&&n<=e[1]}function re(e,r,n,a,i,o,s,l){var c=a?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,n.transform.zoom),h=[256/n.width*2+1,256/n.height*2+1],f=a?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;f.clear();for(var p=e.lineVertexArray,d=a?e.text.placedSymbolArray:e.icon.placedSymbolArray,g=n.transform.width/n.transform.height,m=!1,v=0;v<d.length;v++){var y=d.get(v);if(y.hidden||y.writingMode===t.WritingMode.vertical&&!m)ce(y.numGlyphs,f);else{m=!1;var x=[y.anchorX,y.anchorY,0,1];if(t.transformMat4(x,x,r),ee(x,h)){var b=te(n.transform.cameraToCenterDistance,x[3]),_=t.evaluateSizeForFeature(c,u,y),w=s?_/b:_*b,T=new t.Point(y.anchorX,y.anchorY),k=$t(T,i).point,M={},A=ie(y,w,!1,l,r,i,o,e.glyphOffsetArray,p,f,k,T,M,g);m=A.useVertical,(A.notEnoughRoom||m||A.needsFlipping&&ie(y,w,!0,l,r,i,o,e.glyphOffsetArray,p,f,k,T,M,g).notEnoughRoom)&&ce(y.numGlyphs,f)}else ce(y.numGlyphs,f)}}a?e.text.dynamicLayoutVertexBuffer.updateData(f):e.icon.dynamicLayoutVertexBuffer.updateData(f)}function ne(t,e,r,n,a,i,o,s,l,c,u){var h=s.glyphStartIndex+s.numGlyphs,f=s.lineStartIndex,p=s.lineStartIndex+s.lineLength,d=e.getoffsetX(s.glyphStartIndex),g=e.getoffsetX(h-1),m=se(t*d,r,n,a,i,o,s.segment,f,p,l,c,u);if(!m)return null;var v=se(t*g,r,n,a,i,o,s.segment,f,p,l,c,u);return v?{first:m,last:v}:null}function ae(e,r,n,a){return e===t.WritingMode.horizontal&&Math.abs(n.y-r.y)>Math.abs(n.x-r.x)*a?{useVertical:!0}:(e===t.WritingMode.vertical?r.y<n.y:r.x>n.x)?{needsFlipping:!0}:null}function ie(e,r,n,a,i,o,s,l,c,u,h,f,p,d){var g,m=r/24,v=e.lineOffsetX*m,y=e.lineOffsetY*m;if(e.numGlyphs>1){var x=e.glyphStartIndex+e.numGlyphs,b=e.lineStartIndex,_=e.lineStartIndex+e.lineLength,w=ne(m,l,v,y,n,h,f,e,c,o,p);if(!w)return{notEnoughRoom:!0};var T=$t(w.first.point,s).point,k=$t(w.last.point,s).point;if(a&&!n){var M=ae(e.writingMode,T,k,d);if(M)return M}g=[w.first];for(var A=e.glyphStartIndex+1;A<x-1;A++)g.push(se(m*l.getoffsetX(A),v,y,n,h,f,e.segment,b,_,c,o,p));g.push(w.last)}else{if(a&&!n){var S=$t(f,i).point,E=e.lineStartIndex+e.segment+1,C=new t.Point(c.getx(E),c.gety(E)),L=$t(C,i),P=L.signedDistanceFromCamera>0?L.point:oe(f,C,S,1,i),I=ae(e.writingMode,S,P,d);if(I)return I}var z=se(m*l.getoffsetX(e.glyphStartIndex),v,y,n,h,f,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,p);if(!z)return{notEnoughRoom:!0};g=[z]}for(var O=0,D=g;O<D.length;O+=1){var R=D[O];t.addDynamicAttributes(u,R.point,R.angle)}return{}}function oe(t,e,r,n,a){var i=$t(t.add(t.sub(e)._unit()),a).point,o=r.sub(i);return r.add(o._mult(n/o.mag()))}function se(e,r,n,a,i,o,s,l,c,u,h,f){var p=a?e-r:e+r,d=p>0?1:-1,g=0;a&&(d*=-1,g=Math.PI),d<0&&(g+=Math.PI);for(var m=d>0?l+s:l+s+1,v=i,y=i,x=0,b=0,_=Math.abs(p),w=[];x+b<=_;){if((m+=d)<l||m>=c)return null;if(y=v,w.push(v),void 0===(v=f[m])){var T=new t.Point(u.getx(m),u.gety(m)),k=$t(T,h);if(k.signedDistanceFromCamera>0)v=f[m]=k.point;else{var M=m-d;v=oe(0===x?o:new t.Point(u.getx(M),u.gety(M)),T,y,_-x+1,h)}}x+=b,b=y.dist(v)}var A=(_-x)/b,S=v.sub(y),E=S.mult(A)._add(y);E._add(S._unit()._perp()._mult(n*d));var C=g+Math.atan2(v.y-y.y,v.x-y.x);return w.push(E),{point:E,angle:C,path:w}}Jt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},Jt.prototype.insert=function(t,e,r,n,a){this._forEachCell(e,r,n,a,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(a)},Jt.prototype.insertCircle=function(t,e,r,n){this._forEachCell(e-n,r-n,e+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(r),this.circles.push(n)},Jt.prototype._insertBoxCell=function(t,e,r,n,a,i){this.boxCells[a].push(i)},Jt.prototype._insertCircleCell=function(t,e,r,n,a,i){this.circleCells[a].push(i)},Jt.prototype._query=function(t,e,r,n,a,i){if(r<0||t>this.width||n<0||e>this.height)return!a&&[];var o=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(a)return!0;for(var s=0;s<this.boxKeys.length;s++)o.push({key:this.boxKeys[s],x1:this.bboxes[4*s],y1:this.bboxes[4*s+1],x2:this.bboxes[4*s+2],y2:this.bboxes[4*s+3]});for(var l=0;l<this.circleKeys.length;l++){var c=this.circles[3*l],u=this.circles[3*l+1],h=this.circles[3*l+2];o.push({key:this.circleKeys[l],x1:c-h,y1:u-h,x2:c+h,y2:u+h})}return i?o.filter(i):o}return this._forEachCell(t,e,r,n,this._queryCell,o,{hitTest:a,seenUids:{box:{},circle:{}}},i),a?o.length>0:o},Jt.prototype._queryCircle=function(t,e,r,n,a){var i=t-r,o=t+r,s=e-r,l=e+r;if(o<0||i>this.width||l<0||s>this.height)return!n&&[];var c=[];return this._forEachCell(i,s,o,l,this._queryCellCircle,c,{hitTest:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}},a),n?c.length>0:c},Jt.prototype.query=function(t,e,r,n,a){return this._query(t,e,r,n,!1,a)},Jt.prototype.hitTest=function(t,e,r,n,a){return this._query(t,e,r,n,!0,a)},Jt.prototype.hitTestCircle=function(t,e,r,n){return this._queryCircle(t,e,r,!0,n)},Jt.prototype._queryCell=function(t,e,r,n,a,i,o,s){var l=o.seenUids,c=this.boxCells[a];if(null!==c)for(var u=this.bboxes,h=0,f=c;h<f.length;h+=1){var p=f[h];if(!l.box[p]){l.box[p]=!0;var d=4*p;if(t<=u[d+2]&&e<=u[d+3]&&r>=u[d+0]&&n>=u[d+1]&&(!s||s(this.boxKeys[p]))){if(o.hitTest)return i.push(!0),!0;i.push({key:this.boxKeys[p],x1:u[d],y1:u[d+1],x2:u[d+2],y2:u[d+3]})}}}var g=this.circleCells[a];if(null!==g)for(var m=this.circles,v=0,y=g;v<y.length;v+=1){var x=y[v];if(!l.circle[x]){l.circle[x]=!0;var b=3*x;if(this._circleAndRectCollide(m[b],m[b+1],m[b+2],t,e,r,n)&&(!s||s(this.circleKeys[x]))){if(o.hitTest)return i.push(!0),!0;var _=m[b],w=m[b+1],T=m[b+2];i.push({key:this.circleKeys[x],x1:_-T,y1:w-T,x2:_+T,y2:w+T})}}}},Jt.prototype._queryCellCircle=function(t,e,r,n,a,i,o,s){var l=o.circle,c=o.seenUids,u=this.boxCells[a];if(null!==u)for(var h=this.bboxes,f=0,p=u;f<p.length;f+=1){var d=p[f];if(!c.box[d]){c.box[d]=!0;var g=4*d;if(this._circleAndRectCollide(l.x,l.y,l.radius,h[g+0],h[g+1],h[g+2],h[g+3])&&(!s||s(this.boxKeys[d])))return i.push(!0),!0}}var m=this.circleCells[a];if(null!==m)for(var v=this.circles,y=0,x=m;y<x.length;y+=1){var b=x[y];if(!c.circle[b]){c.circle[b]=!0;var _=3*b;if(this._circlesCollide(v[_],v[_+1],v[_+2],l.x,l.y,l.radius)&&(!s||s(this.circleKeys[b])))return i.push(!0),!0}}},Jt.prototype._forEachCell=function(t,e,r,n,a,i,o,s){for(var l=this._convertToXCellCoord(t),c=this._convertToYCellCoord(e),u=this._convertToXCellCoord(r),h=this._convertToYCellCoord(n),f=l;f<=u;f++)for(var p=c;p<=h;p++)if(a.call(this,t,e,r,n,this.xCellCount*p+f,i,o,s))return},Jt.prototype._convertToXCellCoord=function(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))},Jt.prototype._convertToYCellCoord=function(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))},Jt.prototype._circlesCollide=function(t,e,r,n,a,i){var o=n-t,s=a-e,l=r+i;return l*l>o*o+s*s},Jt.prototype._circleAndRectCollide=function(t,e,r,n,a,i,o){var s=(i-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;var c=(o-a)/2,u=Math.abs(e-(a+c));if(u>c+r)return!1;if(l<=s||u<=c)return!0;var h=l-s,f=u-c;return h*h+f*f<=r*r};var le=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ce(t,e){for(var r=0;r<t;r++){var n=e.length;e.resize(n+4),e.float32.set(le,3*n)}}function ue(t,e,r){var n=e[0],a=e[1];return t[0]=r[0]*n+r[4]*a+r[12],t[1]=r[1]*n+r[5]*a+r[13],t[3]=r[3]*n+r[7]*a+r[15],t}var he=function(t,e,r){void 0===e&&(e=new Jt(t.width+200,t.height+200,25)),void 0===r&&(r=new Jt(t.width+200,t.height+200,25)),this.transform=t,this.grid=e,this.ignoredGrid=r,this.pitchfactor=Math.cos(t._pitch)*t.cameraToCenterDistance,this.screenRightBoundary=t.width+100,this.screenBottomBoundary=t.height+100,this.gridRightBoundary=t.width+200,this.gridBottomBoundary=t.height+200};function fe(e,r,n){return r*(t.EXTENT/(e.tileSize*Math.pow(2,n-e.tileID.overscaledZ)))}he.prototype.placeCollisionBox=function(t,e,r,n,a){var i=this.projectAndGetPerspectiveRatio(n,t.anchorPointX,t.anchorPointY),o=r*i.perspectiveRatio,s=t.x1*o+i.point.x,l=t.y1*o+i.point.y,c=t.x2*o+i.point.x,u=t.y2*o+i.point.y;return!this.isInsideGrid(s,l,c,u)||!e&&this.grid.hitTest(s,l,c,u,a)?{box:[],offscreen:!1}:{box:[s,l,c,u],offscreen:this.isOffscreen(s,l,c,u)}},he.prototype.placeCollisionCircles=function(e,r,n,a,i,o,s,l,c,u,h,f,p){var d=[],g=new t.Point(r.anchorX,r.anchorY),m=$t(g,o),v=te(this.transform.cameraToCenterDistance,m.signedDistanceFromCamera),y=(u?i/v:i*v)/t.ONE_EM,x=$t(g,s).point,b=ne(y,a,r.lineOffsetX*y,r.lineOffsetY*y,!1,x,g,r,n,s,{}),_=!1,w=!1,T=!0;if(b){for(var k=.5*f*v+p,M=new t.Point(-100,-100),A=new t.Point(this.screenRightBoundary,this.screenBottomBoundary),S=new Xt,E=b.first,C=b.last,L=[],P=E.path.length-1;P>=1;P--)L.push(E.path[P]);for(var I=1;I<C.path.length;I++)L.push(C.path[I]);var z=2.5*k;if(l){var O=L.map((function(t){return $t(t,l)}));L=O.some((function(t){return t.signedDistanceFromCamera<=0}))?[]:O.map((function(t){return t.point}))}var D=[];if(L.length>0){for(var R=L[0].clone(),F=L[0].clone(),B=1;B<L.length;B++)R.x=Math.min(R.x,L[B].x),R.y=Math.min(R.y,L[B].y),F.x=Math.max(F.x,L[B].x),F.y=Math.max(F.y,L[B].y);D=R.x>=M.x&&F.x<=A.x&&R.y>=M.y&&F.y<=A.y?[L]:F.x<M.x||R.x>A.x||F.y<M.y||R.y>A.y?[]:t.clipLine([L],M.x,M.y,A.x,A.y)}for(var N=0,j=D;N<j.length;N+=1){var U;S.reset(j[N],.25*k),U=S.length<=.5*k?1:Math.ceil(S.paddedLength/z)+1;for(var V=0;V<U;V++){var q=V/Math.max(U-1,1),H=S.lerp(q),G=H.x+100,Y=H.y+100;d.push(G,Y,k,0);var W=G-k,Z=Y-k,X=G+k,J=Y+k;if(T=T&&this.isOffscreen(W,Z,X,J),w=w||this.isInsideGrid(W,Z,X,J),!e&&this.grid.hitTestCircle(G,Y,k,h)&&(_=!0,!c))return{circles:[],offscreen:!1,collisionDetected:_}}}}return{circles:!c&&_||!w?[]:d,offscreen:T,collisionDetected:_}},he.prototype.queryRenderedSymbols=function(e){if(0===e.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return{};for(var r=[],n=1/0,a=1/0,i=-1/0,o=-1/0,s=0,l=e;s<l.length;s+=1){var c=l[s],u=new t.Point(c.x+100,c.y+100);n=Math.min(n,u.x),a=Math.min(a,u.y),i=Math.max(i,u.x),o=Math.max(o,u.y),r.push(u)}for(var h={},f={},p=0,d=this.grid.query(n,a,i,o).concat(this.ignoredGrid.query(n,a,i,o));p<d.length;p+=1){var g=d[p],m=g.key;if(void 0===h[m.bucketInstanceId]&&(h[m.bucketInstanceId]={}),!h[m.bucketInstanceId][m.featureIndex]){var v=[new t.Point(g.x1,g.y1),new t.Point(g.x2,g.y1),new t.Point(g.x2,g.y2),new t.Point(g.x1,g.y2)];t.polygonIntersectsPolygon(r,v)&&(h[m.bucketInstanceId][m.featureIndex]=!0,void 0===f[m.bucketInstanceId]&&(f[m.bucketInstanceId]=[]),f[m.bucketInstanceId].push(m.featureIndex))}}return f},he.prototype.insertCollisionBox=function(t,e,r,n,a){(e?this.ignoredGrid:this.grid).insert({bucketInstanceId:r,featureIndex:n,collisionGroupID:a},t[0],t[1],t[2],t[3])},he.prototype.insertCollisionCircles=function(t,e,r,n,a){for(var i=e?this.ignoredGrid:this.grid,o={bucketInstanceId:r,featureIndex:n,collisionGroupID:a},s=0;s<t.length;s+=4)i.insertCircle(o,t[s],t[s+1],t[s+2])},he.prototype.projectAndGetPerspectiveRatio=function(e,r,n){var a=[r,n,0,1];return ue(a,a,e),{point:new t.Point((a[0]/a[3]+1)/2*this.transform.width+100,(-a[1]/a[3]+1)/2*this.transform.height+100),perspectiveRatio:.5+this.transform.cameraToCenterDistance/a[3]*.5}},he.prototype.isOffscreen=function(t,e,r,n){return r<100||t>=this.screenRightBoundary||n<100||e>this.screenBottomBoundary},he.prototype.isInsideGrid=function(t,e,r,n){return r>=0&&t<this.gridRightBoundary&&n>=0&&e<this.gridBottomBoundary},he.prototype.getViewportMatrix=function(){var e=t.identity([]);return t.translate(e,e,[-100,-100,0]),e};var pe=function(t,e,r,n){this.opacity=t?Math.max(0,Math.min(1,t.opacity+(t.placed?e:-e))):n&&r?1:0,this.placed=r};pe.prototype.isHidden=function(){return 0===this.opacity&&!this.placed};var de=function(t,e,r,n,a){this.text=new pe(t?t.text:null,e,r,a),this.icon=new pe(t?t.icon:null,e,n,a)};de.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var ge=function(t,e,r){this.text=t,this.icon=e,this.skipFade=r},me=function(){this.invProjMatrix=t.create(),this.viewportMatrix=t.create(),this.circles=[]},ve=function(t,e,r,n,a){this.bucketInstanceId=t,this.featureIndex=e,this.sourceLayerIndex=r,this.bucketIndex=n,this.tileID=a},ye=function(t){this.crossSourceCollisions=t,this.maxGroupID=0,this.collisionGroups={}};function xe(e,r,n,a,i){var o=t.getAnchorAlignment(e),s=-(o.horizontalAlign-.5)*r,l=-(o.verticalAlign-.5)*n,c=t.evaluateVariableOffset(e,a);return new t.Point(s+c[0]*i,l+c[1]*i)}function be(e,r,n,a,i,o){var s=e.x1,l=e.x2,c=e.y1,u=e.y2,h=e.anchorPointX,f=e.anchorPointY,p=new t.Point(r,n);return a&&p._rotate(i?o:-o),{x1:s+p.x,y1:c+p.y,x2:l+p.x,y2:u+p.y,anchorPointX:h,anchorPointY:f}}ye.prototype.get=function(t){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[t]){var e=++this.maxGroupID;this.collisionGroups[t]={ID:e,predicate:function(t){return t.collisionGroupID===e}}}return this.collisionGroups[t]};var _e=function(t,e,r,n){this.transform=t.clone(),this.collisionIndex=new he(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=e,this.retainedQueryData={},this.collisionGroups=new ye(r),this.collisionCircleArrays={},this.prevPlacement=n,n&&(n.prevPlacement=void 0),this.placedOrientations={}};function we(t,e,r,n,a){t.emplaceBack(e?1:0,r?1:0,n||0,a||0),t.emplaceBack(e?1:0,r?1:0,n||0,a||0),t.emplaceBack(e?1:0,r?1:0,n||0,a||0),t.emplaceBack(e?1:0,r?1:0,n||0,a||0)}_e.prototype.getBucketParts=function(e,r,n,a){var i=n.getBucket(r),o=n.latestFeatureIndex;if(i&&o&&r.id===i.layerIds[0]){var s=n.collisionBoxArray,l=i.layers[0].layout,c=Math.pow(2,this.transform.zoom-n.tileID.overscaledZ),u=n.tileSize/t.EXTENT,h=this.transform.calculatePosMatrix(n.tileID.toUnwrapped()),f=\"map\"===l.get(\"text-pitch-alignment\"),p=\"map\"===l.get(\"text-rotation-alignment\"),d=fe(n,1,this.transform.zoom),g=Kt(h,f,p,this.transform,d),m=null;if(f){var v=Qt(h,f,p,this.transform,d);m=t.multiply([],this.transform.labelPlaneMatrix,v)}this.retainedQueryData[i.bucketInstanceId]=new ve(i.bucketInstanceId,o,i.sourceLayerIndex,i.index,n.tileID);var y={bucket:i,layout:l,posMatrix:h,textLabelPlaneMatrix:g,labelToScreenMatrix:m,scale:c,textPixelRatio:u,holdingForFade:n.holdingForFade(),collisionBoxArray:s,partiallyEvaluatedTextSize:t.evaluateSizeForZoom(i.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(i.sourceID)};if(a)for(var x=0,b=i.sortKeyRanges;x<b.length;x+=1){var _=b[x];e.push({sortKey:_.sortKey,symbolInstanceStart:_.symbolInstanceStart,symbolInstanceEnd:_.symbolInstanceEnd,parameters:y})}else e.push({symbolInstanceStart:0,symbolInstanceEnd:i.symbolInstances.length,parameters:y})}},_e.prototype.attemptAnchorPlacement=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d){var g,m=[h.textOffset0,h.textOffset1],v=xe(t,r,n,m,a),y=this.collisionIndex.placeCollisionBox(be(e,v.x,v.y,i,o,this.transform.angle),u,s,l,c.predicate);if(!d||0!==this.collisionIndex.placeCollisionBox(be(d,v.x,v.y,i,o,this.transform.angle),u,s,l,c.predicate).box.length)return y.box.length>0?(this.prevPlacement&&this.prevPlacement.variableOffsets[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID].text&&(g=this.prevPlacement.variableOffsets[h.crossTileID].anchor),this.variableOffsets[h.crossTileID]={textOffset:m,width:r,height:n,anchor:t,textBoxScale:a,prevAnchor:g},this.markUsedJustification(f,t,h,p),f.allowVerticalPlacement&&(this.markUsedOrientation(f,p,h),this.placedOrientations[h.crossTileID]=p),{shift:v,placedGlyphBoxes:y}):void 0},_e.prototype.placeLayerBucketPart=function(e,r,n){var a=this,i=e.parameters,o=i.bucket,s=i.layout,l=i.posMatrix,c=i.textLabelPlaneMatrix,u=i.labelToScreenMatrix,h=i.textPixelRatio,f=i.holdingForFade,p=i.collisionBoxArray,d=i.partiallyEvaluatedTextSize,g=i.collisionGroup,m=s.get(\"text-optional\"),v=s.get(\"icon-optional\"),y=s.get(\"text-allow-overlap\"),x=s.get(\"icon-allow-overlap\"),b=\"map\"===s.get(\"text-rotation-alignment\"),_=\"map\"===s.get(\"text-pitch-alignment\"),w=\"none\"!==s.get(\"icon-text-fit\"),T=\"viewport-y\"===s.get(\"symbol-z-order\"),k=y&&(x||!o.hasIconData()||v),M=x&&(y||!o.hasTextData()||m);!o.collisionArrays&&p&&o.deserializeCollisionBoxes(p);var A=function(e,i){if(!r[e.crossTileID])if(f)a.placements[e.crossTileID]=new ge(!1,!1,!1);else{var p,T=!1,A=!1,S=!0,E=null,C={box:null,offscreen:null},L={box:null,offscreen:null},P=null,I=null,z=0,O=0,D=0;i.textFeatureIndex?z=i.textFeatureIndex:e.useRuntimeCollisionCircles&&(z=e.featureIndex),i.verticalTextFeatureIndex&&(O=i.verticalTextFeatureIndex);var R=i.textBox;if(R){var F=function(r){var n=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&a.prevPlacement){var i=a.prevPlacement.placedOrientations[e.crossTileID];i&&(a.placedOrientations[e.crossTileID]=i,a.markUsedOrientation(o,n=i,e))}return n},B=function(r,n){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&i.verticalTextBox)for(var a=0,s=o.writingModes;a<s.length&&(s[a]===t.WritingMode.vertical?(C=n(),L=C):C=r(),!(C&&C.box&&C.box.length));a+=1);else C=r()};if(s.get(\"text-variable-anchor\")){var N=s.get(\"text-variable-anchor\");if(a.prevPlacement&&a.prevPlacement.variableOffsets[e.crossTileID]){var j=a.prevPlacement.variableOffsets[e.crossTileID];N.indexOf(j.anchor)>0&&(N=N.filter((function(t){return t!==j.anchor}))).unshift(j.anchor)}var U=function(t,r,n){for(var i=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=w&&!x?r:null,f={box:[],offscreen:!1},p=y?2*N.length:N.length,d=0;d<p;++d){var m=a.attemptAnchorPlacement(N[d%N.length],t,i,s,c,b,_,h,l,g,d>=N.length,e,o,n,u);if(m&&(f=m.placedGlyphBoxes)&&f.box&&f.box.length){T=!0,E=m.shift;break}}return f};B((function(){return U(R,i.iconBox,t.WritingMode.horizontal)}),(function(){var r=i.verticalTextBox;return o.allowVerticalPlacement&&!(C&&C.box&&C.box.length)&&e.numVerticalGlyphVertices>0&&r?U(r,i.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),C&&(T=C.box,S=C.offscreen);var V=F(C&&C.box);if(!T&&a.prevPlacement){var q=a.prevPlacement.variableOffsets[e.crossTileID];q&&(a.variableOffsets[e.crossTileID]=q,a.markUsedJustification(o,q.anchor,e,V))}}else{var H=function(t,r){var n=a.collisionIndex.placeCollisionBox(t,y,h,l,g.predicate);return n&&n.box&&n.box.length&&(a.markUsedOrientation(o,r,e),a.placedOrientations[e.crossTileID]=r),n};B((function(){return H(R,t.WritingMode.horizontal)}),(function(){var r=i.verticalTextBox;return o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&r?H(r,t.WritingMode.vertical):{box:null,offscreen:null}})),F(C&&C.box&&C.box.length)}}if(T=(p=C)&&p.box&&p.box.length>0,S=p&&p.offscreen,e.useRuntimeCollisionCircles){var G=o.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),Y=t.evaluateSizeForFeature(o.textSizeData,d,G),W=s.get(\"text-padding\");P=a.collisionIndex.placeCollisionCircles(y,G,o.lineVertexArray,o.glyphOffsetArray,Y,l,c,u,n,_,g.predicate,e.collisionCircleDiameter,W),T=y||P.circles.length>0&&!P.collisionDetected,S=S&&P.offscreen}if(i.iconFeatureIndex&&(D=i.iconFeatureIndex),i.iconBox){var Z=function(t){var e=w&&E?be(t,E.x,E.y,b,_,a.transform.angle):t;return a.collisionIndex.placeCollisionBox(e,x,h,l,g.predicate)};A=L&&L.box&&L.box.length&&i.verticalIconBox?(I=Z(i.verticalIconBox)).box.length>0:(I=Z(i.iconBox)).box.length>0,S=S&&I.offscreen}var X=m||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,J=v||0===e.numIconVertices;if(X||J?J?X||(A=A&&T):T=A&&T:A=T=A&&T,T&&p&&p.box&&a.collisionIndex.insertCollisionBox(p.box,s.get(\"text-ignore-placement\"),o.bucketInstanceId,L&&L.box&&O?O:z,g.ID),A&&I&&a.collisionIndex.insertCollisionBox(I.box,s.get(\"icon-ignore-placement\"),o.bucketInstanceId,D,g.ID),P&&(T&&a.collisionIndex.insertCollisionCircles(P.circles,s.get(\"text-ignore-placement\"),o.bucketInstanceId,z,g.ID),n)){var K=o.bucketInstanceId,Q=a.collisionCircleArrays[K];void 0===Q&&(Q=a.collisionCircleArrays[K]=new me);for(var $=0;$<P.circles.length;$+=4)Q.circles.push(P.circles[$+0]),Q.circles.push(P.circles[$+1]),Q.circles.push(P.circles[$+2]),Q.circles.push(P.collisionDetected?1:0)}a.placements[e.crossTileID]=new ge(T||k,A||M,S||o.justReloaded),r[e.crossTileID]=!0}};if(T)for(var S=o.getSortedSymbolIndexes(this.transform.angle),E=S.length-1;E>=0;--E){var C=S[E];A(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var L=e.symbolInstanceStart;L<e.symbolInstanceEnd;L++)A(o.symbolInstances.get(L),o.collisionArrays[L]);if(n&&o.bucketInstanceId in this.collisionCircleArrays){var P=this.collisionCircleArrays[o.bucketInstanceId];t.invert(P.invProjMatrix,l),P.viewportMatrix=this.collisionIndex.getViewportMatrix()}o.justReloaded=!1},_e.prototype.markUsedJustification=function(e,r,n,a){var i;i=a===t.WritingMode.vertical?n.verticalPlacedTextSymbolIndex:{left:n.leftJustifiedTextSymbolIndex,center:n.centerJustifiedTextSymbolIndex,right:n.rightJustifiedTextSymbolIndex}[t.getAnchorJustification(r)];for(var o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex,n.verticalPlacedTextSymbolIndex];o<s.length;o+=1){var l=s[o];l>=0&&(e.text.placedSymbolArray.get(l).crossTileID=i>=0&&l!==i?0:n.crossTileID)}},_e.prototype.markUsedOrientation=function(e,r,n){for(var a=r===t.WritingMode.horizontal||r===t.WritingMode.horizontalOnly?r:0,i=r===t.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o<s.length;o+=1)e.text.placedSymbolArray.get(s[o]).placedOrientation=a;n.verticalPlacedTextSymbolIndex&&(e.text.placedSymbolArray.get(n.verticalPlacedTextSymbolIndex).placedOrientation=i)},_e.prototype.commit=function(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;var e=this.prevPlacement,r=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;var n=e?e.symbolFadeChange(t):1,a=e?e.opacities:{},i=e?e.variableOffsets:{},o=e?e.placedOrientations:{};for(var s in this.placements){var l=this.placements[s],c=a[s];c?(this.opacities[s]=new de(c,n,l.text,l.icon),r=r||l.text!==c.text.placed||l.icon!==c.icon.placed):(this.opacities[s]=new de(null,n,l.text,l.icon,l.skipFade),r=r||l.text||l.icon)}for(var u in a){var h=a[u];if(!this.opacities[u]){var f=new de(h,n,!1,!1);f.isHidden()||(this.opacities[u]=f,r=r||h.text.placed||h.icon.placed)}}for(var p in i)this.variableOffsets[p]||!this.opacities[p]||this.opacities[p].isHidden()||(this.variableOffsets[p]=i[p]);for(var d in o)this.placedOrientations[d]||!this.opacities[d]||this.opacities[d].isHidden()||(this.placedOrientations[d]=o[d]);r?this.lastPlacementChangeTime=t:\"number\"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t)},_e.prototype.updateLayerOpacities=function(t,e){for(var r={},n=0,a=e;n<a.length;n+=1){var i=a[n],o=i.getBucket(t);o&&i.latestFeatureIndex&&t.id===o.layerIds[0]&&this.updateBucketOpacities(o,r,i.collisionBoxArray)}},_e.prototype.updateBucketOpacities=function(e,r,n){var a=this;e.hasTextData()&&e.text.opacityVertexArray.clear(),e.hasIconData()&&e.icon.opacityVertexArray.clear(),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexArray.clear(),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexArray.clear();var i=e.layers[0].layout,o=new de(null,0,!1,!1,!0),s=i.get(\"text-allow-overlap\"),l=i.get(\"icon-allow-overlap\"),c=i.get(\"text-variable-anchor\"),u=\"map\"===i.get(\"text-rotation-alignment\"),h=\"map\"===i.get(\"text-pitch-alignment\"),f=\"none\"!==i.get(\"icon-text-fit\"),p=new de(null,0,s&&(l||!e.hasIconData()||i.get(\"icon-optional\")),l&&(s||!e.hasTextData()||i.get(\"text-optional\")),!0);!e.collisionArrays&&n&&(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData())&&e.deserializeCollisionBoxes(n);for(var d=function(t,e,r){for(var n=0;n<e/4;n++)t.opacityVertexArray.emplaceBack(r)},g=function(n){var i=e.symbolInstances.get(n),s=i.numHorizontalGlyphVertices,l=i.numVerticalGlyphVertices,g=i.crossTileID,m=a.opacities[g];r[g]?m=o:m||(a.opacities[g]=m=p),r[g]=!0;var v=i.numIconVertices>0,y=a.placedOrientations[i.crossTileID],x=y===t.WritingMode.vertical,b=y===t.WritingMode.horizontal||y===t.WritingMode.horizontalOnly;if(s>0||l>0){var _=Le(m.text);d(e.text,s,x?Pe:_),d(e.text,l,b?Pe:_);var w=m.text.isHidden();[i.rightJustifiedTextSymbolIndex,i.centerJustifiedTextSymbolIndex,i.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=w||x?1:0)})),i.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(i.verticalPlacedTextSymbolIndex).hidden=w||b?1:0);var T=a.variableOffsets[i.crossTileID];T&&a.markUsedJustification(e,T.anchor,i,y);var k=a.placedOrientations[i.crossTileID];k&&(a.markUsedJustification(e,\"left\",i,k),a.markUsedOrientation(e,k,i))}if(v){var M=Le(m.icon),A=!(f&&i.verticalPlacedIconSymbolIndex&&x);i.placedIconSymbolIndex>=0&&(d(e.icon,i.numIconVertices,A?M:Pe),e.icon.placedSymbolArray.get(i.placedIconSymbolIndex).hidden=m.icon.isHidden()),i.verticalPlacedIconSymbolIndex>=0&&(d(e.icon,i.numVerticalIconVertices,A?Pe:M),e.icon.placedSymbolArray.get(i.verticalPlacedIconSymbolIndex).hidden=m.icon.isHidden())}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var S=e.collisionArrays[n];if(S){var E=new t.Point(0,0);if(S.textBox||S.verticalTextBox){var C=!0;if(c){var L=a.variableOffsets[g];L?(E=xe(L.anchor,L.width,L.height,L.textOffset,L.textBoxScale),u&&E._rotate(h?a.transform.angle:-a.transform.angle)):C=!1}S.textBox&&we(e.textCollisionBox.collisionVertexArray,m.text.placed,!C||x,E.x,E.y),S.verticalTextBox&&we(e.textCollisionBox.collisionVertexArray,m.text.placed,!C||b,E.x,E.y)}var P=Boolean(!b&&S.verticalIconBox);S.iconBox&&we(e.iconCollisionBox.collisionVertexArray,m.icon.placed,P,f?E.x:0,f?E.y:0),S.verticalIconBox&&we(e.iconCollisionBox.collisionVertexArray,m.icon.placed,!P,f?E.x:0,f?E.y:0)}}},m=0;m<e.symbolInstances.length;m++)g(m);if(e.sortFeatures(this.transform.angle),this.retainedQueryData[e.bucketInstanceId]&&(this.retainedQueryData[e.bucketInstanceId].featureSortOrder=e.featureSortOrder),e.hasTextData()&&e.text.opacityVertexBuffer&&e.text.opacityVertexBuffer.updateData(e.text.opacityVertexArray),e.hasIconData()&&e.icon.opacityVertexBuffer&&e.icon.opacityVertexBuffer.updateData(e.icon.opacityVertexArray),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexBuffer&&e.iconCollisionBox.collisionVertexBuffer.updateData(e.iconCollisionBox.collisionVertexArray),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexBuffer&&e.textCollisionBox.collisionVertexBuffer.updateData(e.textCollisionBox.collisionVertexArray),e.bucketInstanceId in this.collisionCircleArrays){var v=this.collisionCircleArrays[e.bucketInstanceId];e.placementInvProjMatrix=v.invProjMatrix,e.placementViewportMatrix=v.viewportMatrix,e.collisionCircleArray=v.circles,delete this.collisionCircleArrays[e.bucketInstanceId]}},_e.prototype.symbolFadeChange=function(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},_e.prototype.zoomAdjustment=function(t){return Math.max(0,(this.transform.zoom-t)/1.5)},_e.prototype.hasTransitions=function(t){return this.stale||t-this.lastPlacementChangeTime<this.fadeDuration},_e.prototype.stillRecent=function(t,e){var r=this.zoomAtLastRecencyCheck===e?1-this.zoomAdjustment(e):1;return this.zoomAtLastRecencyCheck=e,this.commitTime+this.fadeDuration*r>t},_e.prototype.setStale=function(){this.stale=!0};var Te=Math.pow(2,25),ke=Math.pow(2,24),Me=Math.pow(2,17),Ae=Math.pow(2,16),Se=Math.pow(2,9),Ee=Math.pow(2,8),Ce=Math.pow(2,1);function Le(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;var e=t.placed?1:0,r=Math.floor(127*t.opacity);return r*Te+e*ke+r*Me+e*Ae+r*Se+e*Ee+r*Ce+e}var Pe=0,Ie=function(t){this._sortAcrossTiles=\"viewport-y\"!==t.layout.get(\"symbol-z-order\")&&void 0!==t.layout.get(\"symbol-sort-key\").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Ie.prototype.continuePlacement=function(t,e,r,n,a){for(var i=this._bucketParts;this._currentTileIndex<t.length;)if(e.getBucketParts(i,n,t[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,a())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,i.sort((function(t,e){return t.sortKey-e.sortKey})));this._currentPartIndex<i.length;)if(e.placeLayerBucketPart(i[this._currentPartIndex],this._seenCrossTileIDs,r),this._currentPartIndex++,a())return!0;return!1};var ze=function(t,e,r,n,a,i,o){this.placement=new _e(t,a,i,o),this._currentPlacementIndex=e.length-1,this._forceFullPlacement=r,this._showCollisionBoxes=n,this._done=!1};ze.prototype.isDone=function(){return this._done},ze.prototype.continuePlacement=function(e,r,n){for(var a=this,i=t.browser.now(),o=function(){var e=t.browser.now()-i;return!a._forceFullPlacement&&e>2};this._currentPlacementIndex>=0;){var s=r[e[this._currentPlacementIndex]],l=this.placement.collisionIndex.transform.zoom;if(\"symbol\"===s.type&&(!s.minzoom||s.minzoom<=l)&&(!s.maxzoom||s.maxzoom>l)){if(this._inProgressLayer||(this._inProgressLayer=new Ie(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},ze.prototype.commit=function(t){return this.placement.commit(t),this.placement};var Oe=512/t.EXTENT/2,De=function(t,e,r){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=r;for(var n=0;n<e.length;n++){var a=e.get(n),i=a.key;this.indexedSymbolInstances[i]||(this.indexedSymbolInstances[i]=[]),this.indexedSymbolInstances[i].push({crossTileID:a.crossTileID,coord:this.getScaledCoordinates(a,t)})}};De.prototype.getScaledCoordinates=function(e,r){var n=Oe/Math.pow(2,r.canonical.z-this.tileID.canonical.z);return{x:Math.floor((r.canonical.x*t.EXTENT+e.anchorX)*n),y:Math.floor((r.canonical.y*t.EXTENT+e.anchorY)*n)}},De.prototype.findMatches=function(t,e,r){for(var n=this.tileID.canonical.z<e.canonical.z?1:Math.pow(2,this.tileID.canonical.z-e.canonical.z),a=0;a<t.length;a++){var i=t.get(a);if(!i.crossTileID){var o=this.indexedSymbolInstances[i.key];if(o)for(var s=this.getScaledCoordinates(i,e),l=0,c=o;l<c.length;l+=1){var u=c[l];if(Math.abs(u.coord.x-s.x)<=n&&Math.abs(u.coord.y-s.y)<=n&&!r[u.crossTileID]){r[u.crossTileID]=!0,i.crossTileID=u.crossTileID;break}}}}};var Re=function(){this.maxCrossTileID=0};Re.prototype.generate=function(){return++this.maxCrossTileID};var Fe=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Fe.prototype.handleWrapJump=function(t){var e=Math.round((t-this.lng)/360);if(0!==e)for(var r in this.indexes){var n=this.indexes[r],a={};for(var i in n){var o=n[i];o.tileID=o.tileID.unwrapTo(o.tileID.wrap+e),a[o.tileID.key]=o}this.indexes[r]=a}this.lng=t},Fe.prototype.addBucket=function(t,e,r){if(this.indexes[t.overscaledZ]&&this.indexes[t.overscaledZ][t.key]){if(this.indexes[t.overscaledZ][t.key].bucketInstanceId===e.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(t.overscaledZ,this.indexes[t.overscaledZ][t.key])}for(var n=0;n<e.symbolInstances.length;n++)e.symbolInstances.get(n).crossTileID=0;this.usedCrossTileIDs[t.overscaledZ]||(this.usedCrossTileIDs[t.overscaledZ]={});var a=this.usedCrossTileIDs[t.overscaledZ];for(var i in this.indexes){var o=this.indexes[i];if(Number(i)>t.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(t)&&l.findMatches(e.symbolInstances,t,a)}else{var c=o[t.scaledTo(Number(i)).key];c&&c.findMatches(e.symbolInstances,t,a)}}for(var u=0;u<e.symbolInstances.length;u++){var h=e.symbolInstances.get(u);h.crossTileID||(h.crossTileID=r.generate(),a[h.crossTileID]=!0)}return void 0===this.indexes[t.overscaledZ]&&(this.indexes[t.overscaledZ]={}),this.indexes[t.overscaledZ][t.key]=new De(t,e.symbolInstances,e.bucketInstanceId),!0},Fe.prototype.removeBucketCrossTileIDs=function(t,e){for(var r in e.indexedSymbolInstances)for(var n=0,a=e.indexedSymbolInstances[r];n<a.length;n+=1)delete this.usedCrossTileIDs[t][a[n].crossTileID]},Fe.prototype.removeStaleBuckets=function(t){var e=!1;for(var r in this.indexes){var n=this.indexes[r];for(var a in n)t[n[a].bucketInstanceId]||(this.removeBucketCrossTileIDs(r,n[a]),delete n[a],e=!0)}return e};var Be=function(){this.layerIndexes={},this.crossTileIDs=new Re,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Be.prototype.addLayer=function(t,e,r){var n=this.layerIndexes[t.id];void 0===n&&(n=this.layerIndexes[t.id]=new Fe);var a=!1,i={};n.handleWrapJump(r);for(var o=0,s=e;o<s.length;o+=1){var l=s[o],c=l.getBucket(t);c&&t.id===c.layerIds[0]&&(c.bucketInstanceId||(c.bucketInstanceId=++this.maxBucketInstanceId),n.addBucket(l.tileID,c,this.crossTileIDs)&&(a=!0),i[c.bucketInstanceId]=!0)}return n.removeStaleBuckets(i)&&(a=!0),a},Be.prototype.pruneUnusedLayers=function(t){var e={};for(var r in t.forEach((function(t){e[t]=!0})),this.layerIndexes)e[r]||delete this.layerIndexes[r]};var Ne=function(e,r){return t.emitValidationErrors(e,r&&r.filter((function(t){return\"source.canvas\"!==t.identifier})))},je=t.pick(Ut,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\",\"setGeoJSONSourceData\"]),Ue=t.pick(Ut,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Ve=function(){var e={},r=t.styleSpec.$version;for(var n in t.styleSpec.$root){var a,i=t.styleSpec.$root[n];i.required&&null!=(a=\"version\"===n?r:\"array\"===i.type?[]:{})&&(e[n]=a)}return e}(),qe=function(e){function r(n,a){var i=this;void 0===a&&(a={}),e.call(this),this.map=n,this.dispatcher=new k(Bt(),this),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new x(n._requestManager,a.localIdeographFontFamily),this.lineAtlas=new T(256,512),this.crossTileSymbolIndex=new Be,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast(\"setReferrer\",t.getReferrer());var o=this;this._rtlTextPluginCallback=r.registerForPluginStateChange((function(e){o.dispatcher.broadcast(\"syncRTLPluginState\",{pluginStatus:e.pluginStatus,pluginURL:e.pluginURL},(function(e,r){if(t.triggerPluginCompletionEvent(e),r&&r.every((function(t){return t})))for(var n in o.sourceCaches)o.sourceCaches[n].reload()}))})),this.on(\"data\",(function(t){if(\"source\"===t.dataType&&\"metadata\"===t.sourceDataType){var e=i.sourceCaches[t.sourceId];if(e){var r=e.getSource();if(r&&r.vectorLayerIds)for(var n in i._layers){var a=i._layers[n];a.source===r.id&&i._validateLayer(a)}}}}))}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.loadURL=function(e,r){var n=this;void 0===r&&(r={}),this.fire(new t.Event(\"dataloading\",{dataType:\"style\"}));var a=\"boolean\"==typeof r.validate?r.validate:!t.isMapboxURL(e);e=this.map._requestManager.normalizeStyleURL(e,r.accessToken);var i=this.map._requestManager.transformRequest(e,t.ResourceType.Style);this._request=t.getJSON(i,(function(e,r){n._request=null,e?n.fire(new t.ErrorEvent(e)):r&&n._load(r,a)}))},r.prototype.loadJSON=function(e,r){var n=this;void 0===r&&(r={}),this.fire(new t.Event(\"dataloading\",{dataType:\"style\"})),this._request=t.browser.frame((function(){n._request=null,n._load(e,!1!==r.validate)}))},r.prototype.loadEmpty=function(){this.fire(new t.Event(\"dataloading\",{dataType:\"style\"})),this._load(Ve,!1)},r.prototype._load=function(e,r){if(!r||!Ne(this,t.validateStyle(e))){for(var n in this._loaded=!0,this.stylesheet=e,e.sources)this.addSource(n,e.sources[n],{validate:!1});e.sprite?this._loadSprite(e.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(e.glyphs);var a=jt(this.stylesheet.layers);this._order=a.map((function(t){return t.id})),this._layers={},this._serializedLayers={};for(var i=0,o=a;i<o.length;i+=1){var s=o[i];(s=t.createStyleLayer(s)).setEventedParent(this,{layer:{id:s.id}}),this._layers[s.id]=s,this._serializedLayers[s.id]=s.serialize()}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new w(this.stylesheet.light),this.fire(new t.Event(\"data\",{dataType:\"style\"})),this.fire(new t.Event(\"style.load\"))}},r.prototype._loadSprite=function(e){var r=this;this._spriteRequest=function(e,r,n){var a,i,o,s=t.browser.devicePixelRatio>1?\"@2x\":\"\",l=t.getJSON(r.transformRequest(r.normalizeSpriteURL(e,s,\".json\"),t.ResourceType.SpriteJSON),(function(t,e){l=null,o||(o=t,a=e,u())})),c=t.getImage(r.transformRequest(r.normalizeSpriteURL(e,s,\".png\"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,i=e,u())}));function u(){if(o)n(o);else if(a&&i){var e=t.browser.getImageData(i),r={};for(var s in a){var l=a[s],c=l.width,u=l.height,h=l.x,f=l.y,p=l.sdf,d=l.pixelRatio,g=l.stretchX,m=l.stretchY,v=l.content,y=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,y,{x:h,y:f},{x:0,y:0},{width:c,height:u}),r[s]={data:y,pixelRatio:d,sdf:p,stretchX:g,stretchY:m,content:v}}n(null,r)}}return{cancel:function(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}(e,this.map._requestManager,(function(e,n){if(r._spriteRequest=null,e)r.fire(new t.ErrorEvent(e));else if(n)for(var a in n)r.imageManager.addImage(a,n[a]);r.imageManager.setLoaded(!0),r._availableImages=r.imageManager.listImages(),r.dispatcher.broadcast(\"setImages\",r._availableImages),r.fire(new t.Event(\"data\",{dataType:\"style\"}))}))},r.prototype._validateLayer=function(e){var r=this.sourceCaches[e.source];if(r){var n=e.sourceLayer;if(n){var a=r.getSource();(\"geojson\"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(n))&&this.fire(new t.ErrorEvent(new Error('Source layer \"'+n+'\" does not exist on source \"'+a.id+'\" as specified by style layer \"'+e.id+'\"')))}}},r.prototype.loaded=function(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},r.prototype._serializeLayers=function(t){for(var e=[],r=0,n=t;r<n.length;r+=1){var a=this._layers[n[r]];\"custom\"!==a.type&&e.push(a.serialize())}return e},r.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return!0;for(var e in this._layers)if(this._layers[e].hasTransition())return!0;return!1},r.prototype._checkLoaded=function(){if(!this._loaded)throw new Error(\"Style is not done loading\")},r.prototype.update=function(e){if(this._loaded){var r=this._changed;if(this._changed){var n=Object.keys(this._updatedLayers),a=Object.keys(this._removedLayers);for(var i in(n.length||a.length)&&this._updateWorkerLayers(n,a),this._updatedSources){var o=this._updatedSources[i];\"reload\"===o?this._reloadSource(i):\"clear\"===o&&this._clearSource(i)}for(var s in this._updateTilesForChangedImages(),this._updatedPaintProps)this._layers[s].updateTransitions(e);this.light.updateTransitions(e),this._resetUpdates()}for(var l in this.sourceCaches)this.sourceCaches[l].used=!1;for(var c=0,u=this._order;c<u.length;c+=1){var h=this._layers[u[c]];h.recalculate(e,this._availableImages),!h.isHidden(e.zoom)&&h.source&&(this.sourceCaches[h.source].used=!0)}this.light.recalculate(e),this.z=e.zoom,r&&this.fire(new t.Event(\"data\",{dataType:\"style\"}))}},r.prototype._updateTilesForChangedImages=function(){var t=Object.keys(this._changedImages);if(t.length){for(var e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies([\"icons\",\"patterns\"],t);this._changedImages={}}},r.prototype._updateWorkerLayers=function(t,e){this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(t),removedIds:e})},r.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},r.prototype.setState=function(e){var r=this;if(this._checkLoaded(),Ne(this,t.validateStyle(e)))return!1;(e=t.clone$1(e)).layers=jt(e.layers);var n=function(e,r){if(!e)return[{command:Ut.setStyle,args:[r]}];var n=[];try{if(!t.deepEqual(e.version,r.version))return[{command:Ut.setStyle,args:[r]}];t.deepEqual(e.center,r.center)||n.push({command:Ut.setCenter,args:[r.center]}),t.deepEqual(e.zoom,r.zoom)||n.push({command:Ut.setZoom,args:[r.zoom]}),t.deepEqual(e.bearing,r.bearing)||n.push({command:Ut.setBearing,args:[r.bearing]}),t.deepEqual(e.pitch,r.pitch)||n.push({command:Ut.setPitch,args:[r.pitch]}),t.deepEqual(e.sprite,r.sprite)||n.push({command:Ut.setSprite,args:[r.sprite]}),t.deepEqual(e.glyphs,r.glyphs)||n.push({command:Ut.setGlyphs,args:[r.glyphs]}),t.deepEqual(e.transition,r.transition)||n.push({command:Ut.setTransition,args:[r.transition]}),t.deepEqual(e.light,r.light)||n.push({command:Ut.setLight,args:[r.light]});var a={},i=[];!function(e,r,n,a){var i;for(i in r=r||{},e=e||{})e.hasOwnProperty(i)&&(r.hasOwnProperty(i)||qt(i,n,a));for(i in r)r.hasOwnProperty(i)&&(e.hasOwnProperty(i)?t.deepEqual(e[i],r[i])||(\"geojson\"===e[i].type&&\"geojson\"===r[i].type&&Gt(e,r,i)?n.push({command:Ut.setGeoJSONSourceData,args:[i,r[i].data]}):Ht(i,r,n,a)):Vt(i,r,n))}(e.sources,r.sources,i,a);var o=[];e.layers&&e.layers.forEach((function(t){a[t.source]?n.push({command:Ut.removeLayer,args:[t.id]}):o.push(t)})),n=n.concat(i),function(e,r,n){r=r||[];var a,i,o,s,l,c,u,h=(e=e||[]).map(Wt),f=r.map(Wt),p=e.reduce(Zt,{}),d=r.reduce(Zt,{}),g=h.slice(),m=Object.create(null);for(a=0,i=0;a<h.length;a++)d.hasOwnProperty(o=h[a])?i++:(n.push({command:Ut.removeLayer,args:[o]}),g.splice(g.indexOf(o,i),1));for(a=0,i=0;a<f.length;a++)g[g.length-1-a]!==(o=f[f.length-1-a])&&(p.hasOwnProperty(o)?(n.push({command:Ut.removeLayer,args:[o]}),g.splice(g.lastIndexOf(o,g.length-i),1)):i++,n.push({command:Ut.addLayer,args:[d[o],c=g[g.length-a]]}),g.splice(g.length-a,0,o),m[o]=!0);for(a=0;a<f.length;a++)if(s=p[o=f[a]],l=d[o],!m[o]&&!t.deepEqual(s,l))if(t.deepEqual(s.source,l.source)&&t.deepEqual(s[\"source-layer\"],l[\"source-layer\"])&&t.deepEqual(s.type,l.type)){for(u in Yt(s.layout,l.layout,n,o,null,Ut.setLayoutProperty),Yt(s.paint,l.paint,n,o,null,Ut.setPaintProperty),t.deepEqual(s.filter,l.filter)||n.push({command:Ut.setFilter,args:[o,l.filter]}),t.deepEqual(s.minzoom,l.minzoom)&&t.deepEqual(s.maxzoom,l.maxzoom)||n.push({command:Ut.setLayerZoomRange,args:[o,l.minzoom,l.maxzoom]}),s)s.hasOwnProperty(u)&&\"layout\"!==u&&\"paint\"!==u&&\"filter\"!==u&&\"metadata\"!==u&&\"minzoom\"!==u&&\"maxzoom\"!==u&&(0===u.indexOf(\"paint.\")?Yt(s[u],l[u],n,o,u.slice(6),Ut.setPaintProperty):t.deepEqual(s[u],l[u])||n.push({command:Ut.setLayerProperty,args:[o,u,l[u]]}));for(u in l)l.hasOwnProperty(u)&&!s.hasOwnProperty(u)&&\"layout\"!==u&&\"paint\"!==u&&\"filter\"!==u&&\"metadata\"!==u&&\"minzoom\"!==u&&\"maxzoom\"!==u&&(0===u.indexOf(\"paint.\")?Yt(s[u],l[u],n,o,u.slice(6),Ut.setPaintProperty):t.deepEqual(s[u],l[u])||n.push({command:Ut.setLayerProperty,args:[o,u,l[u]]}))}else n.push({command:Ut.removeLayer,args:[o]}),c=g[g.lastIndexOf(o)+1],n.push({command:Ut.addLayer,args:[l,c]})}(o,r.layers,n)}catch(t){console.warn(\"Unable to compute style diff:\",t),n=[{command:Ut.setStyle,args:[r]}]}return n}(this.serialize(),e).filter((function(t){return!(t.command in Ue)}));if(0===n.length)return!1;var a=n.filter((function(t){return!(t.command in je)}));if(a.length>0)throw new Error(\"Unimplemented: \"+a.map((function(t){return t.command})).join(\", \")+\".\");return n.forEach((function(t){\"setTransition\"!==t.command&&r[t.command].apply(r,t.args)})),this.stylesheet=e,!0},r.prototype.addImage=function(e,r){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error(\"An image with this name already exists.\")));this.imageManager.addImage(e,r),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event(\"data\",{dataType:\"style\"}))},r.prototype.updateImage=function(t,e){this.imageManager.updateImage(t,e)},r.prototype.getImage=function(t){return this.imageManager.getImage(t)},r.prototype.removeImage=function(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error(\"No image with this name exists.\")));this.imageManager.removeImage(e),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event(\"data\",{dataType:\"style\"}))},r.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},r.prototype.addSource=function(e,r,n){var a=this;if(void 0===n&&(n={}),this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(\"There is already a source with this ID\");if(!r.type)throw new Error(\"The type property must be defined, but the only the following properties were given: \"+Object.keys(r).join(\", \")+\".\");if(!([\"vector\",\"raster\",\"geojson\",\"video\",\"image\"].indexOf(r.type)>=0&&this._validate(t.validateStyle.source,\"sources.\"+e,r,null,n))){this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);var i=this.sourceCaches[e]=new Lt(e,r,this.dispatcher);i.style=this,i.setEventedParent(this,(function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}})),i.onAdd(this.map),this._changed=!0}},r.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error(\"There is no source with this ID\");for(var r in this._layers)if(this._layers[r].source===e)return this.fire(new t.ErrorEvent(new Error('Source \"'+e+'\" cannot be removed while layer \"'+r+'\" is using it.')));var n=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],n.fire(new t.Event(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId:e})),n.setEventedParent(null),n.clearTiles(),n.onRemove&&n.onRemove(this.map),this._changed=!0},r.prototype.setGeoJSONSourceData=function(t,e){this._checkLoaded(),this.sourceCaches[t].getSource().setData(e),this._changed=!0},r.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},r.prototype.addLayer=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var a=e.id;if(this.getLayer(a))this.fire(new t.ErrorEvent(new Error('Layer with id \"'+a+'\" already exists on this map')));else{var i;if(\"custom\"===e.type){if(Ne(this,t.validateCustomStyleLayer(e)))return;i=t.createStyleLayer(e)}else{if(\"object\"==typeof e.source&&(this.addSource(a,e.source),e=t.clone$1(e),e=t.extend(e,{source:a})),this._validate(t.validateStyle.layer,\"layers.\"+a,e,{arrayIndex:-1},n))return;i=t.createStyleLayer(e),this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}}),this._serializedLayers[i.id]=i.serialize()}var o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new t.ErrorEvent(new Error('Layer with id \"'+r+'\" does not exist on this map.')));else{if(this._order.splice(o,0,a),this._layerOrderChanged=!0,this._layers[a]=i,this._removedLayers[a]&&i.source&&\"custom\"!==i.type){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]=\"clear\":(this._updatedSources[i.source]=\"reload\",this.sourceCaches[i.source].pause())}this._updateLayer(i),i.onAdd&&i.onAdd(this.map)}}},r.prototype.moveLayer=function(e,r){if(this._checkLoaded(),this._changed=!0,this._layers[e]){if(e!==r){var n=this._order.indexOf(e);this._order.splice(n,1);var a=r?this._order.indexOf(r):this._order.length;r&&-1===a?this.fire(new t.ErrorEvent(new Error('Layer with id \"'+r+'\" does not exist on this map.'))):(this._order.splice(a,0,e),this._layerOrderChanged=!0)}}else this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be moved.\")))},r.prototype.removeLayer=function(e){this._checkLoaded();var r=this._layers[e];if(r){r.setEventedParent(null);var n=this._order.indexOf(e);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=r,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],r.onRemove&&r.onRemove(this.map)}else this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be removed.\")))},r.prototype.getLayer=function(t){return this._layers[t]},r.prototype.hasLayer=function(t){return t in this._layers},r.prototype.setLayerZoomRange=function(e,r,n){this._checkLoaded();var a=this.getLayer(e);a?a.minzoom===r&&a.maxzoom===n||(null!=r&&(a.minzoom=r),null!=n&&(a.maxzoom=n),this._updateLayer(a)):this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")))},r.prototype.setFilter=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var a=this.getLayer(e);if(a){if(!t.deepEqual(a.filter,r))return null==r?(a.filter=void 0,void this._updateLayer(a)):void(this._validate(t.validateStyle.filter,\"layers.\"+a.id+\".filter\",r,null,n)||(a.filter=t.clone$1(r),this._updateLayer(a)))}else this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be filtered.\")))},r.prototype.getFilter=function(e){return t.clone$1(this.getLayer(e).filter)},r.prototype.setLayoutProperty=function(e,r,n,a){void 0===a&&(a={}),this._checkLoaded();var i=this.getLayer(e);i?t.deepEqual(i.getLayoutProperty(r),n)||(i.setLayoutProperty(r,n,a),this._updateLayer(i)):this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")))},r.prototype.getLayoutProperty=function(e,r){var n=this.getLayer(e);if(n)return n.getLayoutProperty(r);this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style.\")))},r.prototype.setPaintProperty=function(e,r,n,a){void 0===a&&(a={}),this._checkLoaded();var i=this.getLayer(e);i?t.deepEqual(i.getPaintProperty(r),n)||(i.setPaintProperty(r,n,a)&&this._updateLayer(i),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")))},r.prototype.getPaintProperty=function(t,e){return this.getLayer(t).getPaintProperty(e)},r.prototype.setFeatureState=function(e,r){this._checkLoaded();var n=e.source,a=e.sourceLayer,i=this.sourceCaches[n];if(void 0!==i){var o=i.getSource().type;\"geojson\"===o&&a?this.fire(new t.ErrorEvent(new Error(\"GeoJSON sources cannot have a sourceLayer parameter.\"))):\"vector\"!==o||a?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),i.setFeatureState(a,e.id,r)):this.fire(new t.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}else this.fire(new t.ErrorEvent(new Error(\"The source '\"+n+\"' does not exist in the map's style.\")))},r.prototype.removeFeatureState=function(e,r){this._checkLoaded();var n=e.source,a=this.sourceCaches[n];if(void 0!==a){var i=a.getSource().type,o=\"vector\"===i?e.sourceLayer:void 0;\"vector\"!==i||o?r&&\"string\"!=typeof e.id&&\"number\"!=typeof e.id?this.fire(new t.ErrorEvent(new Error(\"A feature id is requred to remove its specific state property.\"))):a.removeFeatureState(o,e.id,r):this.fire(new t.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}else this.fire(new t.ErrorEvent(new Error(\"The source '\"+n+\"' does not exist in the map's style.\")))},r.prototype.getFeatureState=function(e){this._checkLoaded();var r=e.source,n=e.sourceLayer,a=this.sourceCaches[r];if(void 0!==a){if(\"vector\"!==a.getSource().type||n)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),a.getFeatureState(n,e.id);this.fire(new t.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}else this.fire(new t.ErrorEvent(new Error(\"The source '\"+r+\"' does not exist in the map's style.\")))},r.prototype.getTransition=function(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},r.prototype.serialize=function(){return t.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:t.mapObject(this.sourceCaches,(function(t){return t.serialize()})),layers:this._serializeLayers(this._order)},(function(t){return void 0!==t}))},r.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&\"raster\"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]=\"reload\",this.sourceCaches[t.source].pause()),this._changed=!0},r.prototype._flattenAndSortRenderedFeatures=function(t){for(var e=this,r=function(t){return\"fill-extrusion\"===e._layers[t].type},n={},a=[],i=this._order.length-1;i>=0;i--){var o=this._order[i];if(r(o)){n[o]=i;for(var s=0,l=t;s<l.length;s+=1){var c=l[s][o];if(c)for(var u=0,h=c;u<h.length;u+=1)a.push(h[u])}}}a.sort((function(t,e){return e.intersectionZ-t.intersectionZ}));for(var f=[],p=this._order.length-1;p>=0;p--){var d=this._order[p];if(r(d))for(var g=a.length-1;g>=0;g--){var m=a[g].feature;if(n[m.layer.id]<p)break;f.push(m),a.pop()}else for(var v=0,y=t;v<y.length;v+=1){var x=y[v][d];if(x)for(var b=0,_=x;b<_.length;b+=1)f.push(_[b].feature)}}return f},r.prototype.queryRenderedFeatures=function(e,r,n){r&&r.filter&&this._validate(t.validateStyle.filter,\"queryRenderedFeatures.filter\",r.filter,null,r);var a={};if(r&&r.layers){if(!Array.isArray(r.layers))return this.fire(new t.ErrorEvent(new Error(\"parameters.layers must be an Array.\"))),[];for(var i=0,o=r.layers;i<o.length;i+=1){var s=o[i],l=this._layers[s];if(!l)return this.fire(new t.ErrorEvent(new Error(\"The layer '\"+s+\"' does not exist in the map's style and cannot be queried for features.\"))),[];a[l.source]=!0}}var c=[];for(var u in r.availableImages=this._availableImages,this.sourceCaches)r.layers&&!a[u]||c.push(F(this.sourceCaches[u],this._layers,this._serializedLayers,e,r,n));return this.placement&&c.push(function(t,e,r,n,a,i,o){for(var s={},l=i.queryRenderedSymbols(n),c=[],u=0,h=Object.keys(l).map(Number);u<h.length;u+=1)c.push(o[h[u]]);c.sort(B);for(var f=function(){var r=d[p],n=r.featureIndex.lookupSymbolFeatures(l[r.bucketInstanceId],e,r.bucketIndex,r.sourceLayerIndex,a.filter,a.layers,a.availableImages,t);for(var i in n){var o=s[i]=s[i]||[],c=n[i];c.sort((function(t,e){var n=r.featureSortOrder;if(n){var a=n.indexOf(t.featureIndex);return n.indexOf(e.featureIndex)-a}return e.featureIndex-t.featureIndex}));for(var u=0,h=c;u<h.length;u+=1)o.push(h[u])}},p=0,d=c;p<d.length;p+=1)f();var g=function(e){s[e].forEach((function(n){var a=n.feature,i=r[t[e].source].getFeatureState(a.layer[\"source-layer\"],a.id);a.source=a.layer.source,a.layer[\"source-layer\"]&&(a.sourceLayer=a.layer[\"source-layer\"]),a.state=i}))};for(var m in s)g(m);return s}(this._layers,this._serializedLayers,this.sourceCaches,e,r,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(c)},r.prototype.querySourceFeatures=function(e,r){r&&r.filter&&this._validate(t.validateStyle.filter,\"querySourceFeatures.filter\",r.filter,null,r);var n=this.sourceCaches[e];return n?function(t,e){for(var r=t.getRenderableIds().map((function(e){return t.getTileByID(e)})),n=[],a={},i=0;i<r.length;i++){var o=r[i],s=o.tileID.canonical.key;a[s]||(a[s]=!0,o.querySourceFeatures(n,e))}return n}(n,r):[]},r.prototype.addSourceType=function(t,e,n){return r.getSourceType(t)?n(new Error('A source type called \"'+t+'\" already exists.')):(r.setSourceType(t,e),e.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:t,url:e.workerSourceURL},n):n(null,null))},r.prototype.getLight=function(){return this.light.getLight()},r.prototype.setLight=function(e,r){void 0===r&&(r={}),this._checkLoaded();var n=this.light.getLight(),a=!1;for(var i in e)if(!t.deepEqual(e[i],n[i])){a=!0;break}if(a){var o={now:t.browser.now(),transition:t.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(e,r),this.light.updateTransitions(o)}},r.prototype._validate=function(e,r,n,a,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&Ne(this,e.call(t.validateStyle,t.extend({key:r,style:this.serialize(),value:n,styleSpec:t.styleSpec},a)))},r.prototype._remove=function(){for(var e in this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),t.evented.off(\"pluginStateChange\",this._rtlTextPluginCallback),this._layers)this._layers[e].setEventedParent(null);for(var r in this.sourceCaches)this.sourceCaches[r].clearTiles(),this.sourceCaches[r].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},r.prototype._clearSource=function(t){this.sourceCaches[t].clearTiles()},r.prototype._reloadSource=function(t){this.sourceCaches[t].resume(),this.sourceCaches[t].reload()},r.prototype._updateSources=function(t){for(var e in this.sourceCaches)this.sourceCaches[e].update(t)},r.prototype._generateCollisionBoxes=function(){for(var t in this.sourceCaches)this._reloadSource(t)},r.prototype._updatePlacement=function(e,r,n,a,i){void 0===i&&(i=!1);for(var o=!1,s=!1,l={},c=0,u=this._order;c<u.length;c+=1){var h=this._layers[u[c]];if(\"symbol\"===h.type){if(!l[h.source]){var f=this.sourceCaches[h.source];l[h.source]=f.getRenderableIds(!0).map((function(t){return f.getTileByID(t)})).sort((function(t,e){return e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)}))}var p=this.crossTileSymbolIndex.addLayer(h,l[h.source],e.center.lng);o=o||p}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((i=i||this._layerOrderChanged||0===n)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(t.browser.now(),e.zoom))&&(this.pauseablePlacement=new ze(e,this._order,i,r,n,a,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(t.browser.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(var d=0,g=this._order;d<g.length;d+=1){var m=this._layers[g[d]];\"symbol\"===m.type&&this.placement.updateLayerOpacities(m,l[m.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(t.browser.now())},r.prototype._releaseSymbolFadeTiles=function(){for(var t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles()},r.prototype.getImages=function(t,e,r){this.imageManager.getImages(e.icons,r),this._updateTilesForChangedImages();var n=this.sourceCaches[e.source];n&&n.setDependencies(e.tileID.key,e.type,e.icons)},r.prototype.getGlyphs=function(t,e,r){this.glyphManager.getGlyphs(e.stacks,r)},r.prototype.getResource=function(e,r,n){return t.makeRequest(r,n)},r}(t.Evented);qe.getSourceType=function(t){return D[t]},qe.setSourceType=function(t,e){D[t]=e},qe.registerForPluginStateChange=t.registerForPluginStateChange;var He=t.createLayout([{name:\"a_pos\",type:\"Int16\",components:2}]),Ge=vr(\"#ifdef GL_ES\\nprecision mediump float;\\n#else\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n#if !defined(highp)\\n#define highp\\n#endif\\n#endif\",\"#ifdef GL_ES\\nprecision highp float;\\n#else\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n#if !defined(highp)\\n#define highp\\n#endif\\n#endif\\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}\"),Ye=vr(\"uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),We=vr(\"uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}\"),Ze=vr(\"varying vec3 v_data;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main(void) {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,0,1);} else {gl_Position=u_matrix*vec4(circle_center,0,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}\"),Xe=vr(\"void main() {gl_FragColor=vec4(1.0);}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),Je=vr(\"uniform highp float u_intensity;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main() {\\n#pragma mapbox: initialize highp float weight\\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#pragma mapbox: define mediump float radius\\nconst highp float ZERO=1.0/255.0/16.0;\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main(void) {\\n#pragma mapbox: initialize highp float weight\\n#pragma mapbox: initialize mediump float radius\\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}\"),Ke=vr(\"uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(0.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}\"),Qe=vr(\"varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}\",\"attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}\"),$e=vr(\"varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}\",\"attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd  =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz  /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}\"),tr=vr(\"uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}\",\"attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}\"),er=vr(\"#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float opacity\\ngl_FragColor=color*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float opacity\\ngl_Position=u_matrix*vec4(a_pos,0,1);}\"),rr=vr(\"varying vec2 v_pos;\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 outline_color\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 outline_color\\n#pragma mapbox: initialize lowp float opacity\\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}\"),nr=vr(\"uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\n#pragma mapbox: define lowp float pixel_ratio_from\\n#pragma mapbox: define lowp float pixel_ratio_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\n#pragma mapbox: initialize lowp float pixel_ratio_from\\n#pragma mapbox: initialize lowp float pixel_ratio_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}\"),ar=vr(\"uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\n#pragma mapbox: define lowp float pixel_ratio_from\\n#pragma mapbox: define lowp float pixel_ratio_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\n#pragma mapbox: initialize lowp float pixel_ratio_from\\n#pragma mapbox: initialize lowp float pixel_ratio_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}\"),ir=vr(\"varying vec4 v_color;void main() {gl_FragColor=v_color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec4 v_color;\\n#pragma mapbox: define highp float base\\n#pragma mapbox: define highp float height\\n#pragma mapbox: define highp vec4 color\\nvoid main() {\\n#pragma mapbox: initialize highp float base\\n#pragma mapbox: initialize highp float height\\n#pragma mapbox: initialize highp vec4 color\\nvec3 normal=a_normal_ed.xyz;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}\"),or=vr(\"uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\n#pragma mapbox: define lowp float pixel_ratio_from\\n#pragma mapbox: define lowp float pixel_ratio_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float base\\n#pragma mapbox: initialize lowp float height\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\n#pragma mapbox: initialize lowp float pixel_ratio_from\\n#pragma mapbox: initialize lowp float pixel_ratio_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\n#pragma mapbox: define lowp float pixel_ratio_from\\n#pragma mapbox: define lowp float pixel_ratio_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float base\\n#pragma mapbox: initialize lowp float height\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\n#pragma mapbox: initialize lowp float pixel_ratio_from\\n#pragma mapbox: initialize lowp float pixel_ratio_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0\\n? a_pos\\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}\"),sr=vr(\"#ifdef GL_ES\\nprecision highp float;\\n#endif\\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform float u_maxzoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggeration=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/ pow(2.0,(u_zoom-u_maxzoom)*exaggeration+19.2562-u_zoom);gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}\"),lr=vr(\"uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;\\n#define PI 3.141592653589793\\nvoid main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}\"),cr=vr(\"uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define scale 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float width\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float width\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}\"),ur=vr(\"uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp float v_lineprogress;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,vec2(v_lineprogress,0.5));gl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define MAX_LINE_DISTANCE 32767.0\\n#define scale 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_lineprogress;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float width\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float width\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_lineprogress=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0/MAX_LINE_DISTANCE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}\"),hr=vr(\"uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\n#pragma mapbox: define lowp float pixel_ratio_from\\n#pragma mapbox: define lowp float pixel_ratio_to\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\n#pragma mapbox: initialize lowp float pixel_ratio_from\\n#pragma mapbox: initialize lowp float pixel_ratio_to\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define scale 0.015873016\\n#define LINE_DISTANCE_SCALE 2.0\\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\n#pragma mapbox: define lowp float pixel_ratio_from\\n#pragma mapbox: define lowp float pixel_ratio_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize mediump float width\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\n#pragma mapbox: initialize lowp float pixel_ratio_from\\n#pragma mapbox: initialize lowp float pixel_ratio_to\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}\"),fr=vr(\"uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float width\\n#pragma mapbox: initialize lowp float floorwidth\\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define scale 0.015873016\\n#define LINE_DISTANCE_SCALE 2.0\\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float width\\n#pragma mapbox: initialize lowp float floorwidth\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}\"),pr=vr(\"uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}\"),dr=vr(\"uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}\"),gr=vr(\"#define SDF_PX 8.0\\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}\"),mr=vr(\"#define SDF_PX 8.0\\n#define SDF 1.0\\n#define ICON 0.0\\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}\");function vr(t,e){var r=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,n={};return{fragmentSource:t=t.replace(r,(function(t,e,r,a,i){return n[i]=!0,\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+r+\" \"+a+\" \"+i+\";\\n#else\\nuniform \"+r+\" \"+a+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n    \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})),vertexSource:e=e.replace(r,(function(t,e,r,a,i){var o=\"float\"===a?\"vec2\":\"vec4\",s=i.match(/color/)?\"color\":o;return n[i]?\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float u_\"+i+\"_t;\\nattribute \"+r+\" \"+o+\" a_\"+i+\";\\nvarying \"+r+\" \"+a+\" \"+i+\";\\n#else\\nuniform \"+r+\" \"+a+\" u_\"+i+\";\\n#endif\\n\":\"vec4\"===s?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n    \"+i+\" = a_\"+i+\";\\n#else\\n    \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n    \"+i+\" = unpack_mix_\"+s+\"(a_\"+i+\", u_\"+i+\"_t);\\n#else\\n    \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float u_\"+i+\"_t;\\nattribute \"+r+\" \"+o+\" a_\"+i+\";\\n#else\\nuniform \"+r+\" \"+a+\" u_\"+i+\";\\n#endif\\n\":\"vec4\"===s?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n    \"+r+\" \"+a+\" \"+i+\" = a_\"+i+\";\\n#else\\n    \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n    \"+r+\" \"+a+\" \"+i+\" = unpack_mix_\"+s+\"(a_\"+i+\", u_\"+i+\"_t);\\n#else\\n    \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"}))}}var yr=Object.freeze({__proto__:null,prelude:Ge,background:Ye,backgroundPattern:We,circle:Ze,clippingMask:Xe,heatmap:Je,heatmapTexture:Ke,collisionBox:Qe,collisionCircle:$e,debug:tr,fill:er,fillOutline:rr,fillOutlinePattern:nr,fillPattern:ar,fillExtrusion:ir,fillExtrusionPattern:or,hillshadePrepare:sr,hillshade:lr,line:cr,lineGradient:ur,linePattern:hr,lineSDF:fr,raster:pr,symbolIcon:dr,symbolSDF:gr,symbolTextAndIcon:mr}),xr=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};xr.prototype.bind=function(t,e,r,n,a,i,o,s){this.context=t;for(var l=this.boundPaintVertexBuffers.length!==n.length,c=0;!l&&c<n.length;c++)this.boundPaintVertexBuffers[c]!==n[c]&&(l=!0);t.extVertexArrayObject&&this.vao&&this.boundProgram===e&&this.boundLayoutVertexBuffer===r&&!l&&this.boundIndexBuffer===a&&this.boundVertexOffset===i&&this.boundDynamicVertexBuffer===o&&this.boundDynamicVertexBuffer2===s?(t.bindVertexArrayOES.set(this.vao),o&&o.bind(),a&&a.dynamicDraw&&a.bind(),s&&s.bind()):this.freshBind(e,r,n,a,i,o,s)},xr.prototype.freshBind=function(t,e,r,n,a,i,o){var s,l=t.numAttributes,c=this.context,u=c.gl;if(c.extVertexArrayObject)this.vao&&this.destroy(),this.vao=c.extVertexArrayObject.createVertexArrayOES(),c.bindVertexArrayOES.set(this.vao),s=0,this.boundProgram=t,this.boundLayoutVertexBuffer=e,this.boundPaintVertexBuffers=r,this.boundIndexBuffer=n,this.boundVertexOffset=a,this.boundDynamicVertexBuffer=i,this.boundDynamicVertexBuffer2=o;else{s=c.currentNumAttributes||0;for(var h=l;h<s;h++)u.disableVertexAttribArray(h)}e.enableAttributes(u,t);for(var f=0,p=r;f<p.length;f+=1)p[f].enableAttributes(u,t);i&&i.enableAttributes(u,t),o&&o.enableAttributes(u,t),e.bind(),e.setVertexAttribPointers(u,t,a);for(var d=0,g=r;d<g.length;d+=1){var m=g[d];m.bind(),m.setVertexAttribPointers(u,t,a)}i&&(i.bind(),i.setVertexAttribPointers(u,t,a)),n&&n.bind(),o&&(o.bind(),o.setVertexAttribPointers(u,t,a)),c.currentNumAttributes=l},xr.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};var br=function(t,e,r,n,a){var i=t.gl;this.program=i.createProgram();var o=r?r.defines():[];a&&o.push(\"#define OVERDRAW_INSPECTOR;\");var s=o.concat(Ge.fragmentSource,e.fragmentSource).join(\"\\n\"),l=o.concat(Ge.vertexSource,e.vertexSource).join(\"\\n\"),c=i.createShader(i.FRAGMENT_SHADER);if(i.isContextLost())this.failedToCreate=!0;else{i.shaderSource(c,s),i.compileShader(c),i.attachShader(this.program,c);var u=i.createShader(i.VERTEX_SHADER);if(i.isContextLost())this.failedToCreate=!0;else{i.shaderSource(u,l),i.compileShader(u),i.attachShader(this.program,u);for(var h=r?r.layoutAttributes:[],f=0;f<h.length;f++)i.bindAttribLocation(this.program,f,h[f].name);i.linkProgram(this.program),i.deleteShader(u),i.deleteShader(c),this.numAttributes=i.getProgramParameter(this.program,i.ACTIVE_ATTRIBUTES),this.attributes={};for(var p={},d=0;d<this.numAttributes;d++){var g=i.getActiveAttrib(this.program,d);g&&(this.attributes[g.name]=i.getAttribLocation(this.program,g.name))}for(var m=i.getProgramParameter(this.program,i.ACTIVE_UNIFORMS),v=0;v<m;v++){var y=i.getActiveUniform(this.program,v);y&&(p[y.name]=i.getUniformLocation(this.program,y.name))}this.fixedUniforms=n(t,p),this.binderUniforms=r?r.getUniforms(t,p):[]}}};function _r(t,e,r){var n=1/fe(r,1,e.transform.tileZoom),a=Math.pow(2,r.tileID.overscaledZ),i=r.tileSize*Math.pow(2,e.transform.tileZoom)/a,o=i*(r.tileID.canonical.x+r.tileID.wrap*a),s=i*r.tileID.canonical.y;return{u_image:0,u_texsize:r.imageAtlasTexture.size,u_scale:[n,t.fromScale,t.toScale],u_fade:t.t,u_pixel_coord_upper:[o>>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}br.prototype.draw=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g){var m,v=t.gl;if(!this.failedToCreate){for(var y in t.program.set(this.program),t.setDepthMode(r),t.setStencilMode(n),t.setColorMode(a),t.setCullFace(i),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);p&&p.setUniforms(t,this.binderUniforms,h,{zoom:f});for(var x=(m={},m[v.LINES]=2,m[v.TRIANGLES]=3,m[v.LINE_STRIP]=1,m)[e],b=0,_=u.get();b<_.length;b+=1){var w=_[b],T=w.vaos||(w.vaos={});(T[s]||(T[s]=new xr)).bind(t,this,l,p?p.getPaintVertexBuffers():[],c,w.vertexOffset,d,g),v.drawElements(e,w.primitiveLength*x,v.UNSIGNED_SHORT,w.primitiveOffset*x*2)}}};var wr=function(e,r,n,a){var i=r.style.light,o=i.properties.get(\"position\"),s=[o.x,o.y,o.z],l=t.create$1();\"viewport\"===i.properties.get(\"anchor\")&&t.fromRotation(l,-r.transform.angle),t.transformMat3(s,s,l);var c=i.properties.get(\"color\");return{u_matrix:e,u_lightpos:s,u_lightintensity:i.properties.get(\"intensity\"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+n,u_opacity:a}},Tr=function(e,r,n,a,i,o,s){return t.extend(wr(e,r,n,a),_r(o,r,s),{u_height_factor:-Math.pow(2,i.overscaledZ)/s.tileSize/8})},kr=function(t){return{u_matrix:t}},Mr=function(e,r,n,a){return t.extend(kr(e),_r(n,r,a))},Ar=function(t,e){return{u_matrix:t,u_world:e}},Sr=function(e,r,n,a,i){return t.extend(Mr(e,r,n,a),{u_world:i})},Er=function(e,r,n,a){var i,o,s=e.transform;if(\"map\"===a.paint.get(\"circle-pitch-alignment\")){var l=fe(n,1,s.zoom);i=!0,o=[l,l]}else i=!1,o=s.pixelsToGLUnits;return{u_camera_to_center_distance:s.cameraToCenterDistance,u_scale_with_map:+(\"map\"===a.paint.get(\"circle-pitch-scale\")),u_matrix:e.translatePosMatrix(r.posMatrix,n,a.paint.get(\"circle-translate\"),a.paint.get(\"circle-translate-anchor\")),u_pitch_with_map:+i,u_device_pixel_ratio:t.browser.devicePixelRatio,u_extrude_scale:o}},Cr=function(t,e,r){var n=fe(r,1,e.zoom),a=Math.pow(2,e.zoom-r.tileID.overscaledZ),i=r.tileID.overscaleFactor();return{u_matrix:t,u_camera_to_center_distance:e.cameraToCenterDistance,u_pixels_to_tile_units:n,u_extrude_scale:[e.pixelsToGLUnits[0]/(n*a),e.pixelsToGLUnits[1]/(n*a)],u_overscale_factor:i}},Lr=function(t,e,r){return{u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}},Pr=function(t,e,r){return void 0===r&&(r=1),{u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:r}},Ir=function(t){return{u_matrix:t}},zr=function(t,e,r,n){return{u_matrix:t,u_extrude_scale:fe(e,1,r),u_intensity:n}},Or=function(e,r,n){var a=e.transform;return{u_matrix:Nr(e,r,n),u_ratio:1/fe(r,1,a.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},Dr=function(e,r,n){return t.extend(Or(e,r,n),{u_image:0})},Rr=function(e,r,n,a){var i=e.transform,o=Br(r,i);return{u_matrix:Nr(e,r,n),u_texsize:r.imageAtlasTexture.size,u_ratio:1/fe(r,1,i.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_image:0,u_scale:[o,a.fromScale,a.toScale],u_fade:a.t,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},Fr=function(e,r,n,a,i){var o=e.lineAtlas,s=Br(r,e.transform),l=\"round\"===n.layout.get(\"line-cap\"),c=o.getDash(a.from,l),u=o.getDash(a.to,l),h=c.width*i.fromScale,f=u.width*i.toScale;return t.extend(Or(e,r,n),{u_patternscale_a:[s/h,-c.height/2],u_patternscale_b:[s/f,-u.height/2],u_sdfgamma:o.width/(256*Math.min(h,f)*t.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:c.y,u_tex_y_b:u.y,u_mix:i.t})};function Br(t,e){return 1/fe(t,1,e.tileZoom)}function Nr(t,e,r){return t.translatePosMatrix(e.tileID.posMatrix,e,r.paint.get(\"line-translate\"),r.paint.get(\"line-translate-anchor\"))}var jr=function(t,e,r,n,a){return{u_matrix:t,u_tl_parent:e,u_scale_parent:r,u_buffer_scale:1,u_fade_t:n.mix,u_opacity:n.opacity*a.paint.get(\"raster-opacity\"),u_image0:0,u_image1:1,u_brightness_low:a.paint.get(\"raster-brightness-min\"),u_brightness_high:a.paint.get(\"raster-brightness-max\"),u_saturation_factor:(o=a.paint.get(\"raster-saturation\"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(i=a.paint.get(\"raster-contrast\"),i>0?1/(1-i):1+i),u_spin_weights:Ur(a.paint.get(\"raster-hue-rotate\"))};var i,o};function Ur(t){t*=Math.PI/180;var e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}var Vr,qr=function(t,e,r,n,a,i,o,s,l,c){var u=a.transform;return{u_is_size_zoom_constant:+(\"constant\"===t||\"source\"===t),u_is_size_feature_constant:+(\"constant\"===t||\"camera\"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:u.cameraToCenterDistance,u_pitch:u.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:u.width/u.height,u_fade_change:a.options.fadeDuration?a.symbolFadeChange:1,u_matrix:i,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+n,u_texsize:c,u_texture:0}},Hr=function(e,r,n,a,i,o,s,l,c,u,h){var f=i.transform;return t.extend(qr(e,r,n,a,i,o,s,l,c,u),{u_gamma_scale:a?Math.cos(f._pitch)*f.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+h})},Gr=function(e,r,n,a,i,o,s,l,c,u){return t.extend(Hr(e,r,n,a,i,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},Yr=function(t,e,r){return{u_matrix:t,u_opacity:e,u_color:r}},Wr=function(e,r,n,a,i,o){return t.extend(function(t,e,r,n){var a=r.imageManager.getPattern(t.from.toString()),i=r.imageManager.getPattern(t.to.toString()),o=r.imageManager.getPixelSize(),s=o.width,l=o.height,c=Math.pow(2,n.tileID.overscaledZ),u=n.tileSize*Math.pow(2,r.transform.tileZoom)/c,h=u*(n.tileID.canonical.x+n.tileID.wrap*c),f=u*n.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:a.tl,u_pattern_br_a:a.br,u_pattern_tl_b:i.tl,u_pattern_br_b:i.br,u_texsize:[s,l],u_mix:e.t,u_pattern_size_a:a.displaySize,u_pattern_size_b:i.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/fe(n,1,r.transform.tileZoom),u_pixel_coord_upper:[h>>16,f>>16],u_pixel_coord_lower:[65535&h,65535&f]}}(a,o,n,i),{u_matrix:e,u_opacity:r})},Zr={fillExtrusion:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fillExtrusionPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,r.u_height_factor),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fill:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},fillPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},fillOutline:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world)}},fillOutlinePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},circle:function(e,r){return{u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,r.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},collisionBox:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,r.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,r.u_overscale_factor)}},collisionCircle:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,r.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,r.u_viewport_size)}},debug:function(e,r){return{u_color:new t.UniformColor(e,r.u_color),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_overlay:new t.Uniform1i(e,r.u_overlay),u_overlay_scale:new t.Uniform1f(e,r.u_overlay_scale)}},clippingMask:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmap:function(e,r){return{u_extrude_scale:new t.Uniform1f(e,r.u_extrude_scale),u_intensity:new t.Uniform1f(e,r.u_intensity),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmapTexture:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_color_ramp:new t.Uniform1i(e,r.u_color_ramp),u_opacity:new t.Uniform1f(e,r.u_opacity)}},hillshade:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_latrange:new t.Uniform2f(e,r.u_latrange),u_light:new t.Uniform2f(e,r.u_light),u_shadow:new t.UniformColor(e,r.u_shadow),u_highlight:new t.UniformColor(e,r.u_highlight),u_accent:new t.UniformColor(e,r.u_accent)}},hillshadePrepare:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_dimension:new t.Uniform2f(e,r.u_dimension),u_zoom:new t.Uniform1f(e,r.u_zoom),u_maxzoom:new t.Uniform1f(e,r.u_maxzoom),u_unpack:new t.Uniform4f(e,r.u_unpack)}},line:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels)}},lineGradient:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_image:new t.Uniform1i(e,r.u_image)}},linePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_texsize:new t.Uniform2f(e,r.u_texsize),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_image:new t.Uniform1i(e,r.u_image),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},lineSDF:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,r.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,r.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,r.u_sdfgamma),u_image:new t.Uniform1i(e,r.u_image),u_tex_y_a:new t.Uniform1f(e,r.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,r.u_tex_y_b),u_mix:new t.Uniform1f(e,r.u_mix)}},raster:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_tl_parent:new t.Uniform2f(e,r.u_tl_parent),u_scale_parent:new t.Uniform1f(e,r.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,r.u_buffer_scale),u_fade_t:new t.Uniform1f(e,r.u_fade_t),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image0:new t.Uniform1i(e,r.u_image0),u_image1:new t.Uniform1i(e,r.u_image1),u_brightness_low:new t.Uniform1f(e,r.u_brightness_low),u_brightness_high:new t.Uniform1f(e,r.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,r.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,r.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,r.u_spin_weights)}},symbolIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture)}},symbolSDF:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},symbolTextAndIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texsize_icon:new t.Uniform2f(e,r.u_texsize_icon),u_texture:new t.Uniform1i(e,r.u_texture),u_texture_icon:new t.Uniform1i(e,r.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},background:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_color:new t.UniformColor(e,r.u_color)}},backgroundPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image:new t.Uniform1i(e,r.u_image),u_pattern_tl_a:new t.Uniform2f(e,r.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,r.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,r.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,r.u_pattern_br_b),u_texsize:new t.Uniform2f(e,r.u_texsize),u_mix:new t.Uniform1f(e,r.u_mix),u_pattern_size_a:new t.Uniform2f(e,r.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,r.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,r.u_scale_a),u_scale_b:new t.Uniform1f(e,r.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,r.u_tile_units_to_pixels)}}};function Xr(e,r,n,a,i,o,s){for(var l=e.context,c=l.gl,u=e.useProgram(\"collisionBox\"),h=[],f=0,p=0,d=0;d<a.length;d++){var g=a[d],m=r.getTile(g),v=m.getBucket(n);if(v){var y=g.posMatrix;0===i[0]&&0===i[1]||(y=e.translatePosMatrix(g.posMatrix,m,i,o));var x=s?v.textCollisionBox:v.iconCollisionBox,b=v.collisionCircleArray;if(b.length>0){var _=t.create(),w=y;t.mul(_,v.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(_,_,v.placementViewportMatrix),h.push({circleArray:b,circleOffset:p,transform:w,invTransform:_}),p=f+=b.length/4}x&&u.draw(l,c.LINES,Mt.disabled,At.disabled,e.colorModeForRenderPass(),Et.disabled,Cr(y,e.transform,m),n.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,e.transform.zoom,null,null,x.collisionVertexBuffer)}}if(s&&h.length){var T=e.useProgram(\"collisionCircle\"),k=new t.StructArrayLayout2f1f2i16;k.resize(4*f),k._trim();for(var M=0,A=0,S=h;A<S.length;A+=1)for(var E=S[A],C=0;C<E.circleArray.length/4;C++){var L=4*C,P=E.circleArray[L+0],I=E.circleArray[L+1],z=E.circleArray[L+2],O=E.circleArray[L+3];k.emplace(M++,P,I,z,O,0),k.emplace(M++,P,I,z,O,1),k.emplace(M++,P,I,z,O,2),k.emplace(M++,P,I,z,O,3)}(!Vr||Vr.length<2*f)&&(Vr=function(e){var r=2*e,n=new t.StructArrayLayout3ui6;n.resize(r),n._trim();for(var a=0;a<r;a++){var i=6*a;n.uint16[i+0]=4*a+0,n.uint16[i+1]=4*a+1,n.uint16[i+2]=4*a+2,n.uint16[i+3]=4*a+2,n.uint16[i+4]=4*a+3,n.uint16[i+5]=4*a+0}return n}(f));for(var D=l.createIndexBuffer(Vr,!0),R=l.createVertexBuffer(k,t.collisionCircleLayout.members,!0),F=0,B=h;F<B.length;F+=1){var N=B[F],j=Lr(N.transform,N.invTransform,e.transform);T.draw(l,c.TRIANGLES,Mt.disabled,At.disabled,e.colorModeForRenderPass(),Et.disabled,j,n.id,R,D,t.SegmentVector.simpleSegment(0,2*N.circleOffset,N.circleArray.length,N.circleArray.length/2),null,e.transform.zoom,null,null,null)}R.destroy(),D.destroy()}}var Jr=t.identity(new Float32Array(16));function Kr(e,r,n,a,i,o){var s=t.getAnchorAlignment(e),l=-(s.horizontalAlign-.5)*r,c=-(s.verticalAlign-.5)*n,u=t.evaluateVariableOffset(e,a);return new t.Point((l/i+u[0])*o,(c/i+u[1])*o)}function Qr(e,r,n,a,i,o,s,l,c,u,h){var f=e.text.placedSymbolArray,p=e.text.dynamicLayoutVertexArray,d=e.icon.dynamicLayoutVertexArray,g={};p.clear();for(var m=0;m<f.length;m++){var v=f.get(m),y=v.hidden||!v.crossTileID||e.allowVerticalPlacement&&!v.placedOrientation?null:a[v.crossTileID];if(y){var x=new t.Point(v.anchorX,v.anchorY),b=$t(x,n?l:s),_=te(o.cameraToCenterDistance,b.signedDistanceFromCamera),w=i.evaluateSizeForFeature(e.textSizeData,u,v)*_/t.ONE_EM;n&&(w*=e.tilePixelRatio/c);for(var T=Kr(y.anchor,y.width,y.height,y.textOffset,y.textBoxScale,w),k=n?$t(x.add(T),s).point:b.point.add(r?T.rotate(-o.angle):T),M=e.allowVerticalPlacement&&v.placedOrientation===t.WritingMode.vertical?Math.PI/2:0,A=0;A<v.numGlyphs;A++)t.addDynamicAttributes(p,k,M);h&&v.associatedIconIndex>=0&&(g[v.associatedIconIndex]={shiftedAnchor:k,angle:M})}else ce(v.numGlyphs,p)}if(h){d.clear();for(var S=e.icon.placedSymbolArray,E=0;E<S.length;E++){var C=S.get(E);if(C.hidden)ce(C.numGlyphs,d);else{var L=g[E];if(L)for(var P=0;P<C.numGlyphs;P++)t.addDynamicAttributes(d,L.shiftedAnchor,L.angle);else ce(C.numGlyphs,d)}}e.icon.dynamicLayoutVertexBuffer.updateData(d)}e.text.dynamicLayoutVertexBuffer.updateData(p)}function $r(t,e,r){return r.iconsInText&&e?\"symbolTextAndIcon\":t?\"symbolSDF\":\"symbolIcon\"}function tn(e,r,n,a,i,o,s,l,c,u,h,f){for(var p=e.context,d=p.gl,g=e.transform,m=\"map\"===l,v=\"map\"===c,y=m&&\"point\"!==n.layout.get(\"symbol-placement\"),x=m&&!v&&!y,b=void 0!==n.layout.get(\"symbol-sort-key\").constantOr(1),_=e.depthModeForSublayer(0,Mt.ReadOnly),w=n.layout.get(\"text-variable-anchor\"),T=[],k=0,M=a;k<M.length;k+=1){var A=M[k],S=r.getTile(A),E=S.getBucket(n);if(E){var C=i?E.text:E.icon;if(C&&C.segments.get().length){var L=C.programConfigurations.get(n.id),P=i||E.sdfIcons,I=i?E.textSizeData:E.iconSizeData,z=v||0!==g.pitch,O=e.useProgram($r(P,i,E),L),D=t.evaluateSizeForZoom(I,g.zoom),R=void 0,F=[0,0],B=void 0,N=void 0,j=null,U=void 0;if(i)B=S.glyphAtlasTexture,N=d.LINEAR,R=S.glyphAtlasTexture.size,E.iconsInText&&(F=S.imageAtlasTexture.size,j=S.imageAtlasTexture,U=z||e.options.rotating||e.options.zooming||\"composite\"===I.kind||\"camera\"===I.kind?d.LINEAR:d.NEAREST);else{var V=1!==n.layout.get(\"icon-size\").constantOr(0)||E.iconsNeedLinear;B=S.imageAtlasTexture,N=P||e.options.rotating||e.options.zooming||V||z?d.LINEAR:d.NEAREST,R=S.imageAtlasTexture.size}var q=fe(S,1,e.transform.zoom),H=Kt(A.posMatrix,v,m,e.transform,q),G=Qt(A.posMatrix,v,m,e.transform,q),Y=w&&E.hasTextData(),W=\"none\"!==n.layout.get(\"icon-text-fit\")&&Y&&E.hasIconData();y&&re(E,A.posMatrix,e,i,H,G,v,u);var Z=e.translatePosMatrix(A.posMatrix,S,o,s),X=y||i&&w||W?Jr:H,J=e.translatePosMatrix(G,S,o,s,!0),K=P&&0!==n.paint.get(i?\"text-halo-width\":\"icon-halo-width\").constantOr(1),Q={program:O,buffers:C,uniformValues:P?E.iconsInText?Gr(I.kind,D,x,v,e,Z,X,J,R,F):Hr(I.kind,D,x,v,e,Z,X,J,i,R,!0):qr(I.kind,D,x,v,e,Z,X,J,i,R),atlasTexture:B,atlasTextureIcon:j,atlasInterpolation:N,atlasInterpolationIcon:U,isSDF:P,hasHalo:K};if(b)for(var $=0,tt=C.segments.get();$<tt.length;$+=1){var et=tt[$];T.push({segments:new t.SegmentVector([et]),sortKey:et.sortKey,state:Q})}else T.push({segments:C.segments,sortKey:0,state:Q})}}}b&&T.sort((function(t,e){return t.sortKey-e.sortKey}));for(var rt=0,nt=T;rt<nt.length;rt+=1){var at=nt[rt],it=at.state;if(p.activeTexture.set(d.TEXTURE0),it.atlasTexture.bind(it.atlasInterpolation,d.CLAMP_TO_EDGE),it.atlasTextureIcon&&(p.activeTexture.set(d.TEXTURE1),it.atlasTextureIcon&&it.atlasTextureIcon.bind(it.atlasInterpolationIcon,d.CLAMP_TO_EDGE)),it.isSDF){var ot=it.uniformValues;it.hasHalo&&(ot.u_is_halo=1,en(it.buffers,at.segments,n,e,it.program,_,h,f,ot)),ot.u_is_halo=0}en(it.buffers,at.segments,n,e,it.program,_,h,f,it.uniformValues)}}function en(t,e,r,n,a,i,o,s,l){var c=n.context;a.draw(c,c.gl.TRIANGLES,i,o,s,Et.disabled,l,r.id,t.layoutVertexBuffer,t.indexBuffer,e,r.paint,n.transform.zoom,t.programConfigurations.get(r.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function rn(t,e,r,n,a,i,o){var s,l,c,u,h,f=t.context.gl,p=r.paint.get(\"fill-pattern\"),d=p&&p.constantOr(1),g=r.getCrossfadeParameters();o?(l=d&&!r.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\",s=f.LINES):(l=d?\"fillPattern\":\"fill\",s=f.TRIANGLES);for(var m=0,v=n;m<v.length;m+=1){var y=v[m],x=e.getTile(y);if(!d||x.patternsLoaded()){var b=x.getBucket(r);if(b){var _=b.programConfigurations.get(r.id),w=t.useProgram(l,_);d&&(t.context.activeTexture.set(f.TEXTURE0),x.imageAtlasTexture.bind(f.LINEAR,f.CLAMP_TO_EDGE),_.updatePaintBuffers(g));var T=p.constantOr(null);if(T&&x.imageAtlas){var k=x.imageAtlas,M=k.patternPositions[T.to.toString()],A=k.patternPositions[T.from.toString()];M&&A&&_.setConstantPatternPositions(M,A)}var S=t.translatePosMatrix(y.posMatrix,x,r.paint.get(\"fill-translate\"),r.paint.get(\"fill-translate-anchor\"));if(o){u=b.indexBuffer2,h=b.segments2;var E=[f.drawingBufferWidth,f.drawingBufferHeight];c=\"fillOutlinePattern\"===l&&d?Sr(S,t,g,x,E):Ar(S,E)}else u=b.indexBuffer,h=b.segments,c=d?Mr(S,t,g,x):kr(S);w.draw(t.context,s,a,t.stencilModeForClipping(y),i,Et.disabled,c,r.id,b.layoutVertexBuffer,u,h,r.paint,t.transform.zoom,_)}}}}function nn(t,e,r,n,a,i,o){for(var s=t.context,l=s.gl,c=r.paint.get(\"fill-extrusion-pattern\"),u=c.constantOr(1),h=r.getCrossfadeParameters(),f=r.paint.get(\"fill-extrusion-opacity\"),p=0,d=n;p<d.length;p+=1){var g=d[p],m=e.getTile(g),v=m.getBucket(r);if(v){var y=v.programConfigurations.get(r.id),x=t.useProgram(u?\"fillExtrusionPattern\":\"fillExtrusion\",y);u&&(t.context.activeTexture.set(l.TEXTURE0),m.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),y.updatePaintBuffers(h));var b=c.constantOr(null);if(b&&m.imageAtlas){var _=m.imageAtlas,w=_.patternPositions[b.to.toString()],T=_.patternPositions[b.from.toString()];w&&T&&y.setConstantPatternPositions(w,T)}var k=t.translatePosMatrix(g.posMatrix,m,r.paint.get(\"fill-extrusion-translate\"),r.paint.get(\"fill-extrusion-translate-anchor\")),M=r.paint.get(\"fill-extrusion-vertical-gradient\"),A=u?Tr(k,t,M,f,g,h,m):wr(k,t,M,f);x.draw(s,s.gl.TRIANGLES,a,i,o,Et.backCCW,A,r.id,v.layoutVertexBuffer,v.indexBuffer,v.segments,r.paint,t.transform.zoom,y)}}}function an(e,r,n,a,i,o){var s=e.context,l=s.gl,c=r.fbo;if(c){var u=e.useProgram(\"hillshade\");s.activeTexture.set(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,c.colorAttachment.get());var h=function(e,r,n){var a=n.paint.get(\"hillshade-shadow-color\"),i=n.paint.get(\"hillshade-highlight-color\"),o=n.paint.get(\"hillshade-accent-color\"),s=n.paint.get(\"hillshade-illumination-direction\")*(Math.PI/180);\"viewport\"===n.paint.get(\"hillshade-illumination-anchor\")&&(s-=e.transform.angle);var l,c,u,h=!e.options.moving;return{u_matrix:e.transform.calculatePosMatrix(r.tileID.toUnwrapped(),h),u_image:0,u_latrange:(l=r.tileID,c=Math.pow(2,l.canonical.z),u=l.canonical.y,[new t.MercatorCoordinate(0,u/c).toLngLat().lat,new t.MercatorCoordinate(0,(u+1)/c).toLngLat().lat]),u_light:[n.paint.get(\"hillshade-exaggeration\"),s],u_shadow:a,u_highlight:i,u_accent:o}}(e,r,n);u.draw(s,l.TRIANGLES,a,i,o,Et.disabled,h,n.id,e.rasterBoundsBuffer,e.quadTriangleIndexBuffer,e.rasterBoundsSegments)}}function on(e,r,n,a,i,o,s){var l=e.context,c=l.gl,u=r.dem;if(u&&u.data){var h=u.dim,f=u.stride,p=u.getPixels();if(l.activeTexture.set(c.TEXTURE1),l.pixelStoreUnpackPremultiplyAlpha.set(!1),r.demTexture=r.demTexture||e.getTileTexture(f),r.demTexture){var d=r.demTexture;d.update(p,{premultiply:!1}),d.bind(c.NEAREST,c.CLAMP_TO_EDGE)}else r.demTexture=new t.Texture(l,p,c.RGBA,{premultiply:!1}),r.demTexture.bind(c.NEAREST,c.CLAMP_TO_EDGE);l.activeTexture.set(c.TEXTURE0);var g=r.fbo;if(!g){var m=new t.Texture(l,{width:h,height:h,data:null},c.RGBA);m.bind(c.LINEAR,c.CLAMP_TO_EDGE),(g=r.fbo=l.createFramebuffer(h,h,!0)).colorAttachment.set(m.texture)}l.bindFramebuffer.set(g.framebuffer),l.viewport.set([0,0,h,h]),e.useProgram(\"hillshadePrepare\").draw(l,c.TRIANGLES,i,o,s,Et.disabled,function(e,r,n){var a=r.stride,i=t.create();return t.ortho(i,0,t.EXTENT,-t.EXTENT,0,0,1),t.translate(i,i,[0,-t.EXTENT,0]),{u_matrix:i,u_image:1,u_dimension:[a,a],u_zoom:e.overscaledZ,u_maxzoom:n,u_unpack:r.getUnpackVector()}}(r.tileID,u,a),n.id,e.rasterBoundsBuffer,e.quadTriangleIndexBuffer,e.rasterBoundsSegments),r.needsHillshadePrepare=!1}}function sn(e,r,n,a,i){var o=a.paint.get(\"raster-fade-duration\");if(o>0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=r?(s-r.timeAdded)/o:-1,u=n.getSource(),h=i.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),f=!r||Math.abs(r.tileID.overscaledZ-h)>Math.abs(e.tileID.overscaledZ-h),p=f&&e.refreshedUponExpiration?1:t.clamp(f?l:1-c,0,1);return e.refreshedUponExpiration&&l>=1&&(e.refreshedUponExpiration=!1),r?{opacity:1,mix:1-p}:{opacity:p,mix:0}}return{opacity:1,mix:0}}var ln=new t.Color(1,0,0,1),cn=new t.Color(0,1,0,1),un=new t.Color(0,0,1,1),hn=new t.Color(1,0,1,1),fn=new t.Color(0,1,1,1);function pn(t,e,r,n){gn(t,0,e+r/2,t.transform.width,r,n)}function dn(t,e,r,n){gn(t,e-r/2,0,r,t.transform.height,n)}function gn(e,r,n,a,i,o){var s=e.context,l=s.gl;l.enable(l.SCISSOR_TEST),l.scissor(r*t.browser.devicePixelRatio,n*t.browser.devicePixelRatio,a*t.browser.devicePixelRatio,i*t.browser.devicePixelRatio),s.clear({color:o}),l.disable(l.SCISSOR_TEST)}function mn(e,r,n){var a=e.context,i=a.gl,o=n.posMatrix,s=e.useProgram(\"debug\"),l=Mt.disabled,c=At.disabled,u=e.colorModeForRenderPass();a.activeTexture.set(i.TEXTURE0),e.emptyTexture.bind(i.LINEAR,i.CLAMP_TO_EDGE),s.draw(a,i.LINE_STRIP,l,c,u,Et.disabled,Pr(o,t.Color.red),\"$debug\",e.debugBuffer,e.tileBorderIndexBuffer,e.debugSegments);var h=r.getTileByID(n.key).latestRawTileData,f=Math.floor((h&&h.byteLength||0)/1024),p=r.getTile(n).tileSize,d=512/Math.min(p,512)*(n.overscaledZ/e.transform.zoom)*.5,g=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(g+=\" => \"+n.overscaledZ),function(t,e){t.initDebugOverlayCanvas();var r=t.debugOverlayCanvas,n=t.context.gl,a=t.debugOverlayCanvas.getContext(\"2d\");a.clearRect(0,0,r.width,r.height),a.shadowColor=\"white\",a.shadowBlur=2,a.lineWidth=1.5,a.strokeStyle=\"white\",a.textBaseline=\"top\",a.font=\"bold 36px Open Sans, sans-serif\",a.fillText(e,5,5),a.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(e,g+\" \"+f+\"kb\"),s.draw(a,i.TRIANGLES,l,c,St.alphaBlended,Et.disabled,Pr(o,t.Color.transparent,d),\"$debug\",e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}var vn={symbol:function(e,r,n,a,i){if(\"translucent\"===e.renderPass){var o=At.disabled,s=e.colorModeForRenderPass();n.layout.get(\"text-variable-anchor\")&&function(e,r,n,a,i,o,s){for(var l=r.transform,c=\"map\"===i,u=\"map\"===o,h=0,f=e;h<f.length;h+=1){var p=f[h],d=a.getTile(p),g=d.getBucket(n);if(g&&g.text&&g.text.segments.get().length){var m=t.evaluateSizeForZoom(g.textSizeData,l.zoom),v=fe(d,1,r.transform.zoom),y=Kt(p.posMatrix,u,c,r.transform,v),x=\"none\"!==n.layout.get(\"icon-text-fit\")&&g.hasIconData();if(m){var b=Math.pow(2,l.zoom-d.tileID.overscaledZ);Qr(g,c,u,s,t.symbolSize,l,y,p.posMatrix,b,m,x)}}}}(a,e,n,r,n.layout.get(\"text-rotation-alignment\"),n.layout.get(\"text-pitch-alignment\"),i),0!==n.paint.get(\"icon-opacity\").constantOr(1)&&tn(e,r,n,a,!1,n.paint.get(\"icon-translate\"),n.paint.get(\"icon-translate-anchor\"),n.layout.get(\"icon-rotation-alignment\"),n.layout.get(\"icon-pitch-alignment\"),n.layout.get(\"icon-keep-upright\"),o,s),0!==n.paint.get(\"text-opacity\").constantOr(1)&&tn(e,r,n,a,!0,n.paint.get(\"text-translate\"),n.paint.get(\"text-translate-anchor\"),n.layout.get(\"text-rotation-alignment\"),n.layout.get(\"text-pitch-alignment\"),n.layout.get(\"text-keep-upright\"),o,s),r.map.showCollisionBoxes&&(Xr(e,r,n,a,n.paint.get(\"text-translate\"),n.paint.get(\"text-translate-anchor\"),!0),Xr(e,r,n,a,n.paint.get(\"icon-translate\"),n.paint.get(\"icon-translate-anchor\"),!1))}},circle:function(e,r,n,a){if(\"translucent\"===e.renderPass){var i=n.paint.get(\"circle-opacity\"),o=n.paint.get(\"circle-stroke-width\"),s=n.paint.get(\"circle-stroke-opacity\"),l=void 0!==n.layout.get(\"circle-sort-key\").constantOr(1);if(0!==i.constantOr(1)||0!==o.constantOr(1)&&0!==s.constantOr(1)){for(var c=e.context,u=c.gl,h=e.depthModeForSublayer(0,Mt.ReadOnly),f=At.disabled,p=e.colorModeForRenderPass(),d=[],g=0;g<a.length;g++){var m=a[g],v=r.getTile(m),y=v.getBucket(n);if(y){var x=y.programConfigurations.get(n.id),b={programConfiguration:x,program:e.useProgram(\"circle\",x),layoutVertexBuffer:y.layoutVertexBuffer,indexBuffer:y.indexBuffer,uniformValues:Er(e,m,v,n)};if(l)for(var _=0,w=y.segments.get();_<w.length;_+=1){var T=w[_];d.push({segments:new t.SegmentVector([T]),sortKey:T.sortKey,state:b})}else d.push({segments:y.segments,sortKey:0,state:b})}}l&&d.sort((function(t,e){return t.sortKey-e.sortKey}));for(var k=0,M=d;k<M.length;k+=1){var A=M[k],S=A.state;S.program.draw(c,u.TRIANGLES,h,f,p,Et.disabled,S.uniformValues,n.id,S.layoutVertexBuffer,S.indexBuffer,A.segments,n.paint,e.transform.zoom,S.programConfiguration)}}}},heatmap:function(e,r,n,a){if(0!==n.paint.get(\"heatmap-opacity\"))if(\"offscreen\"===e.renderPass){var i=e.context,o=i.gl,s=At.disabled,l=new St([o.ONE,o.ONE],t.Color.transparent,[!0,!0,!0,!0]);!function(t,e,r){var n=t.gl;t.activeTexture.set(n.TEXTURE1),t.viewport.set([0,0,e.width/4,e.height/4]);var a=r.heatmapFbo;if(a)n.bindTexture(n.TEXTURE_2D,a.colorAttachment.get()),t.bindFramebuffer.set(a.framebuffer);else{var i=n.createTexture();n.bindTexture(n.TEXTURE_2D,i),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),a=r.heatmapFbo=t.createFramebuffer(e.width/4,e.height/4,!1),function(t,e,r,n){var a=t.gl;a.texImage2D(a.TEXTURE_2D,0,a.RGBA,e.width/4,e.height/4,0,a.RGBA,t.extRenderToTextureHalfFloat?t.extTextureHalfFloat.HALF_FLOAT_OES:a.UNSIGNED_BYTE,null),n.colorAttachment.set(r)}(t,e,i,a)}}(i,e,n),i.clear({color:t.Color.transparent});for(var c=0;c<a.length;c++){var u=a[c];if(!r.hasRenderableParent(u)){var h=r.getTile(u),f=h.getBucket(n);if(f){var p=f.programConfigurations.get(n.id);e.useProgram(\"heatmap\",p).draw(i,o.TRIANGLES,Mt.disabled,s,l,Et.disabled,zr(u.posMatrix,h,e.transform.zoom,n.paint.get(\"heatmap-intensity\")),n.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,n.paint,e.transform.zoom,p)}}}i.viewport.set([0,0,e.width,e.height])}else\"translucent\"===e.renderPass&&(e.context.setColorMode(e.colorModeForRenderPass()),function(e,r){var n=e.context,a=n.gl,i=r.heatmapFbo;if(i){n.activeTexture.set(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,i.colorAttachment.get()),n.activeTexture.set(a.TEXTURE1);var o=r.colorRampTexture;o||(o=r.colorRampTexture=new t.Texture(n,r.colorRamp,a.RGBA)),o.bind(a.LINEAR,a.CLAMP_TO_EDGE),e.useProgram(\"heatmapTexture\").draw(n,a.TRIANGLES,Mt.disabled,At.disabled,e.colorModeForRenderPass(),Et.disabled,function(e,r,n,a){var i=t.create();t.ortho(i,0,e.width,e.height,0,0,1);var o=e.context.gl;return{u_matrix:i,u_world:[o.drawingBufferWidth,o.drawingBufferHeight],u_image:0,u_color_ramp:1,u_opacity:r.paint.get(\"heatmap-opacity\")}}(e,r),r.id,e.viewportBuffer,e.quadTriangleIndexBuffer,e.viewportSegments,r.paint,e.transform.zoom)}}(e,n))},line:function(e,r,n,a){if(\"translucent\"===e.renderPass){var i=n.paint.get(\"line-opacity\"),o=n.paint.get(\"line-width\");if(0!==i.constantOr(1)&&0!==o.constantOr(1)){var s=e.depthModeForSublayer(0,Mt.ReadOnly),l=e.colorModeForRenderPass(),c=n.paint.get(\"line-dasharray\"),u=n.paint.get(\"line-pattern\"),h=u.constantOr(1),f=n.paint.get(\"line-gradient\"),p=n.getCrossfadeParameters(),d=h?\"linePattern\":c?\"lineSDF\":f?\"lineGradient\":\"line\",g=e.context,m=g.gl,v=!0;if(f){g.activeTexture.set(m.TEXTURE0);var y=n.gradientTexture;if(!n.gradient)return;y||(y=n.gradientTexture=new t.Texture(g,n.gradient,m.RGBA)),y.bind(m.LINEAR,m.CLAMP_TO_EDGE)}for(var x=0,b=a;x<b.length;x+=1){var _=b[x],w=r.getTile(_);if(!h||w.patternsLoaded()){var T=w.getBucket(n);if(T){var k=T.programConfigurations.get(n.id),M=e.context.program.get(),A=e.useProgram(d,k),S=v||A.program!==M,E=u.constantOr(null);if(E&&w.imageAtlas){var C=w.imageAtlas,L=C.patternPositions[E.to.toString()],P=C.patternPositions[E.from.toString()];L&&P&&k.setConstantPatternPositions(L,P)}var I=h?Rr(e,w,n,p):c?Fr(e,w,n,c,p):f?Dr(e,w,n):Or(e,w,n);h?(g.activeTexture.set(m.TEXTURE0),w.imageAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),k.updatePaintBuffers(p)):c&&(S||e.lineAtlas.dirty)&&(g.activeTexture.set(m.TEXTURE0),e.lineAtlas.bind(g)),A.draw(g,m.TRIANGLES,s,e.stencilModeForClipping(_),l,Et.disabled,I,n.id,T.layoutVertexBuffer,T.indexBuffer,T.segments,n.paint,e.transform.zoom,k),v=!1}}}}}},fill:function(e,r,n,a){var i=n.paint.get(\"fill-color\"),o=n.paint.get(\"fill-opacity\");if(0!==o.constantOr(1)){var s=e.colorModeForRenderPass(),l=n.paint.get(\"fill-pattern\"),c=e.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===i.constantOr(t.Color.transparent).a&&1===o.constantOr(0)?\"opaque\":\"translucent\";if(e.renderPass===c){var u=e.depthModeForSublayer(1,\"opaque\"===e.renderPass?Mt.ReadWrite:Mt.ReadOnly);rn(e,r,n,a,u,s,!1)}if(\"translucent\"===e.renderPass&&n.paint.get(\"fill-antialias\")){var h=e.depthModeForSublayer(n.getPaintProperty(\"fill-outline-color\")?2:0,Mt.ReadOnly);rn(e,r,n,a,h,s,!0)}}},\"fill-extrusion\":function(t,e,r,n){var a=r.paint.get(\"fill-extrusion-opacity\");if(0!==a&&\"translucent\"===t.renderPass){var i=new Mt(t.context.gl.LEQUAL,Mt.ReadWrite,t.depthRangeFor3D);if(1!==a||r.paint.get(\"fill-extrusion-pattern\").constantOr(1))nn(t,e,r,n,i,At.disabled,St.disabled),nn(t,e,r,n,i,t.stencilModeFor3D(),t.colorModeForRenderPass());else{var o=t.colorModeForRenderPass();nn(t,e,r,n,i,At.disabled,o)}}},hillshade:function(t,e,r,n){if(\"offscreen\"===t.renderPass||\"translucent\"===t.renderPass){for(var a=t.context,i=e.getSource().maxzoom,o=t.depthModeForSublayer(0,Mt.ReadOnly),s=t.colorModeForRenderPass(),l=\"translucent\"===t.renderPass?t.stencilConfigForOverlap(n):[{},n],c=l[0],u=0,h=l[1];u<h.length;u+=1){var f=h[u],p=e.getTile(f);p.needsHillshadePrepare&&\"offscreen\"===t.renderPass?on(t,p,r,i,o,At.disabled,s):\"translucent\"===t.renderPass&&an(t,p,r,o,c[f.overscaledZ],s)}a.viewport.set([0,0,t.width,t.height])}},raster:function(t,e,r,n){if(\"translucent\"===t.renderPass&&0!==r.paint.get(\"raster-opacity\")&&n.length)for(var a=t.context,i=a.gl,o=e.getSource(),s=t.useProgram(\"raster\"),l=t.colorModeForRenderPass(),c=o instanceof I?[{},n]:t.stencilConfigForOverlap(n),u=c[0],h=c[1],f=h[h.length-1].overscaledZ,p=!t.options.moving,d=0,g=h;d<g.length;d+=1){var m=g[d],v=t.depthModeForSublayer(m.overscaledZ-f,1===r.paint.get(\"raster-opacity\")?Mt.ReadWrite:Mt.ReadOnly,i.LESS),y=e.getTile(m),x=t.transform.calculatePosMatrix(m.toUnwrapped(),p);y.registerFadeDuration(r.paint.get(\"raster-fade-duration\"));var b=e.findLoadedParent(m,0),_=sn(y,b,e,r,t.transform),w=void 0,T=void 0,k=\"nearest\"===r.paint.get(\"raster-resampling\")?i.NEAREST:i.LINEAR;a.activeTexture.set(i.TEXTURE0),y.texture.bind(k,i.CLAMP_TO_EDGE,i.LINEAR_MIPMAP_NEAREST),a.activeTexture.set(i.TEXTURE1),b?(b.texture.bind(k,i.CLAMP_TO_EDGE,i.LINEAR_MIPMAP_NEAREST),w=Math.pow(2,b.tileID.overscaledZ-y.tileID.overscaledZ),T=[y.tileID.canonical.x*w%1,y.tileID.canonical.y*w%1]):y.texture.bind(k,i.CLAMP_TO_EDGE,i.LINEAR_MIPMAP_NEAREST);var M=jr(x,T||[0,0],w||1,_,r);o instanceof I?s.draw(a,i.TRIANGLES,v,At.disabled,l,Et.disabled,M,r.id,o.boundsBuffer,t.quadTriangleIndexBuffer,o.boundsSegments):s.draw(a,i.TRIANGLES,v,u[m.overscaledZ],l,Et.disabled,M,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}},background:function(t,e,r){var n=r.paint.get(\"background-color\"),a=r.paint.get(\"background-opacity\");if(0!==a){var i=t.context,o=i.gl,s=t.transform,l=s.tileSize,c=r.paint.get(\"background-pattern\");if(!t.isPatternMissing(c)){var u=!c&&1===n.a&&1===a&&t.opaquePassEnabledForLayer()?\"opaque\":\"translucent\";if(t.renderPass===u){var h=At.disabled,f=t.depthModeForSublayer(0,\"opaque\"===u?Mt.ReadWrite:Mt.ReadOnly),p=t.colorModeForRenderPass(),d=t.useProgram(c?\"backgroundPattern\":\"background\"),g=s.coveringTiles({tileSize:l});c&&(i.activeTexture.set(o.TEXTURE0),t.imageManager.bind(t.context));for(var m=r.getCrossfadeParameters(),v=0,y=g;v<y.length;v+=1){var x=y[v],b=t.transform.calculatePosMatrix(x.toUnwrapped()),_=c?Wr(b,a,t,c,{tileID:x,tileSize:l},m):Yr(b,a,n);d.draw(i,o.TRIANGLES,f,h,p,Et.disabled,_,r.id,t.tileExtentBuffer,t.quadTriangleIndexBuffer,t.tileExtentSegments)}}}}},debug:function(t,e,r){for(var n=0;n<r.length;n++)mn(t,e,r[n])},custom:function(t,e,r){var n=t.context,a=r.implementation;if(\"offscreen\"===t.renderPass){var i=a.prerender;i&&(t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),i.call(a,n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState())}else if(\"translucent\"===t.renderPass){t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),n.setStencilMode(At.disabled);var o=\"3d\"===a.renderingMode?new Mt(t.context.gl.LEQUAL,Mt.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,Mt.ReadOnly);n.setDepthMode(o),a.render(n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState(),n.bindFramebuffer.set(null)}}},yn=function(t,e){this.context=new Ct(t),this.transform=e,this._tileTextures={},this.setup(),this.numSublayers=Lt.maxUnderzooming+Lt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Be,this.gpuTimers={}};yn.prototype.resize=function(e,r){if(this.width=e*t.browser.devicePixelRatio,this.height=r*t.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var n=0,a=this.style._order;n<a.length;n+=1)this.style._layers[a[n]].resize()},yn.prototype.setup=function(){var e=this.context,r=new t.StructArrayLayout2i4;r.emplaceBack(0,0),r.emplaceBack(t.EXTENT,0),r.emplaceBack(0,t.EXTENT),r.emplaceBack(t.EXTENT,t.EXTENT),this.tileExtentBuffer=e.createVertexBuffer(r,He.members),this.tileExtentSegments=t.SegmentVector.simpleSegment(0,0,4,2);var n=new t.StructArrayLayout2i4;n.emplaceBack(0,0),n.emplaceBack(t.EXTENT,0),n.emplaceBack(0,t.EXTENT),n.emplaceBack(t.EXTENT,t.EXTENT),this.debugBuffer=e.createVertexBuffer(n,He.members),this.debugSegments=t.SegmentVector.simpleSegment(0,0,4,5);var a=new t.StructArrayLayout4i8;a.emplaceBack(0,0,0,0),a.emplaceBack(t.EXTENT,0,t.EXTENT,0),a.emplaceBack(0,t.EXTENT,0,t.EXTENT),a.emplaceBack(t.EXTENT,t.EXTENT,t.EXTENT,t.EXTENT),this.rasterBoundsBuffer=e.createVertexBuffer(a,P.members),this.rasterBoundsSegments=t.SegmentVector.simpleSegment(0,0,4,2);var i=new t.StructArrayLayout2i4;i.emplaceBack(0,0),i.emplaceBack(1,0),i.emplaceBack(0,1),i.emplaceBack(1,1),this.viewportBuffer=e.createVertexBuffer(i,He.members),this.viewportSegments=t.SegmentVector.simpleSegment(0,0,4,2);var o=new t.StructArrayLayout1ui2;o.emplaceBack(0),o.emplaceBack(1),o.emplaceBack(3),o.emplaceBack(2),o.emplaceBack(0),this.tileBorderIndexBuffer=e.createIndexBuffer(o);var s=new t.StructArrayLayout3ui6;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=e.createIndexBuffer(s),this.emptyTexture=new t.Texture(e,{width:1,height:1,data:new Uint8Array([0,0,0,0])},e.gl.RGBA);var l=this.context.gl;this.stencilClearMode=new At({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO)},yn.prototype.clearStencil=function(){var e=this.context,r=e.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var n=t.create();t.ortho(n,0,this.width,this.height,0,0,1),t.scale(n,n,[r.drawingBufferWidth,r.drawingBufferHeight,0]),this.useProgram(\"clippingMask\").draw(e,r.TRIANGLES,Mt.disabled,this.stencilClearMode,St.disabled,Et.disabled,Ir(n),\"$clipping\",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},yn.prototype._renderTileClippingMasks=function(t,e){if(this.currentStencilSource!==t.source&&t.isTileClipped()&&e&&e.length){this.currentStencilSource=t.source;var r=this.context,n=r.gl;this.nextStencilID+e.length>256&&this.clearStencil(),r.setColorMode(St.disabled),r.setDepthMode(Mt.disabled);var a=this.useProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(var i=0,o=e;i<o.length;i+=1){var s=o[i],l=this._tileClippingMaskIDs[s.key]=this.nextStencilID++;a.draw(r,n.TRIANGLES,Mt.disabled,new At({func:n.ALWAYS,mask:0},l,255,n.KEEP,n.KEEP,n.REPLACE),St.disabled,Et.disabled,Ir(s.posMatrix),\"$clipping\",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},yn.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new At({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},yn.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new At({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},yn.prototype.stencilConfigForOverlap=function(t){var e,r=this.context.gl,n=t.sort((function(t,e){return e.overscaledZ-t.overscaledZ})),a=n[n.length-1].overscaledZ,i=n[0].overscaledZ-a+1;if(i>1){this.currentStencilSource=void 0,this.nextStencilID+i>256&&this.clearStencil();for(var o={},s=0;s<i;s++)o[s+a]=new At({func:r.GEQUAL,mask:255},s+this.nextStencilID,255,r.KEEP,r.KEEP,r.REPLACE);return this.nextStencilID+=i,[o,n]}return[(e={},e[a]=At.disabled,e),n]},yn.prototype.colorModeForRenderPass=function(){var e=this.context.gl;return this._showOverdrawInspector?new St([e.CONSTANT_COLOR,e.ONE],new t.Color(1/8,1/8,1/8,0),[!0,!0,!0,!0]):\"opaque\"===this.renderPass?St.unblended:St.alphaBlended},yn.prototype.depthModeForSublayer=function(t,e,r){if(!this.opaquePassEnabledForLayer())return Mt.disabled;var n=1-((1+this.currentLayer)*this.numSublayers+t)*this.depthEpsilon;return new Mt(r||this.context.gl.LEQUAL,e,[n,n])},yn.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},yn.prototype.render=function(e,r){var n=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.symbolFadeChange=e.placement.symbolFadeChange(t.browser.now()),this.imageManager.beginFrame();var a=this.style._order,i=this.style.sourceCaches;for(var o in i){var s=i[o];s.used&&s.prepare(this.context)}var l,c,u={},h={},f={};for(var p in i){var d=i[p];u[p]=d.getVisibleCoordinates(),h[p]=u[p].slice().reverse(),f[p]=d.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var g=0;g<a.length;g++)if(this.style._layers[a[g]].is3D()){this.opaquePassCutoff=g;break}this.renderPass=\"offscreen\";for(var m=0,v=a;m<v.length;m+=1){var y=this.style._layers[v[m]];if(y.hasOffscreenPass()&&!y.isHidden(this.transform.zoom)){var x=h[y.source];(\"custom\"===y.type||x.length)&&this.renderLayer(this,i[y.source],y,x)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:r.showOverdrawInspector?t.Color.black:t.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=r.showOverdrawInspector,this.depthRangeFor3D=[0,1-(e._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass=\"opaque\",this.currentLayer=a.length-1;this.currentLayer>=0;this.currentLayer--){var b=this.style._layers[a[this.currentLayer]],_=i[b.source],w=u[b.source];this._renderTileClippingMasks(b,w),this.renderLayer(this,_,b,w)}for(this.renderPass=\"translucent\",this.currentLayer=0;this.currentLayer<a.length;this.currentLayer++){var T=this.style._layers[a[this.currentLayer]],k=i[T.source],M=(\"symbol\"===T.type?f:h)[T.source];this._renderTileClippingMasks(T,u[T.source]),this.renderLayer(this,k,T,M)}this.options.showTileBoundaries&&(t.values(this.style._layers).forEach((function(t){t.source&&!t.isHidden(n.transform.zoom)&&(t.source!==(c&&c.id)&&(c=n.style.sourceCaches[t.source]),(!l||l.getSource().maxzoom<c.getSource().maxzoom)&&(l=c))})),l&&vn.debug(this,l,l.getVisibleCoordinates())),this.options.showPadding&&function(t){var e=t.transform.padding;pn(t,t.transform.height-(e.top||0),3,ln),pn(t,e.bottom||0,3,cn),dn(t,e.left||0,3,un),dn(t,t.transform.width-(e.right||0),3,hn);var r=t.transform.centerPoint;!function(t,e,r,n){gn(t,e-1,r-10,2,20,n),gn(t,e-10,r-1,20,2,n)}(t,r.x,t.transform.height-r.y,fn)}(this),this.context.setDefault()},yn.prototype.renderLayer=function(t,e,r,n){r.isHidden(this.transform.zoom)||(\"background\"===r.type||\"custom\"===r.type||n.length)&&(this.id=r.id,this.gpuTimingStart(r),vn[r.type](t,e,r,n,this.style.placement.variableOffsets),this.gpuTimingEnd())},yn.prototype.gpuTimingStart=function(t){if(this.options.gpuTiming){var e=this.context.extTimerQuery,r=this.gpuTimers[t.id];r||(r=this.gpuTimers[t.id]={calls:0,cpuTime:0,query:e.createQueryEXT()}),r.calls++,e.beginQueryEXT(e.TIME_ELAPSED_EXT,r.query)}},yn.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var t=this.context.extTimerQuery;t.endQueryEXT(t.TIME_ELAPSED_EXT)}},yn.prototype.collectGpuTimers=function(){var t=this.gpuTimers;return this.gpuTimers={},t},yn.prototype.queryGpuTimers=function(t){var e={};for(var r in t){var n=t[r],a=this.context.extTimerQuery,i=a.getQueryObjectEXT(n.query,a.QUERY_RESULT_EXT)/1e6;a.deleteQueryEXT(n.query),e[r]=i}return e},yn.prototype.translatePosMatrix=function(e,r,n,a,i){if(!n[0]&&!n[1])return e;var o=i?\"map\"===a?this.transform.angle:0:\"viewport\"===a?-this.transform.angle:0;if(o){var s=Math.sin(o),l=Math.cos(o);n=[n[0]*l-n[1]*s,n[0]*s+n[1]*l]}var c=[i?n[0]:fe(r,n[0],this.transform.zoom),i?n[1]:fe(r,n[1],this.transform.zoom),0],u=new Float32Array(16);return t.translate(u,e,c),u},yn.prototype.saveTileTexture=function(t){var e=this._tileTextures[t.size[0]];e?e.push(t):this._tileTextures[t.size[0]]=[t]},yn.prototype.getTileTexture=function(t){var e=this._tileTextures[t];return e&&e.length>0?e.pop():null},yn.prototype.isPatternMissing=function(t){if(!t)return!1;if(!t.from||!t.to)return!0;var e=this.imageManager.getPattern(t.from.toString()),r=this.imageManager.getPattern(t.to.toString());return!e||!r},yn.prototype.useProgram=function(t,e){this.cache=this.cache||{};var r=\"\"+t+(e?e.cacheKey:\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\");return this.cache[r]||(this.cache[r]=new br(this.context,yr[t],e,Zr[t],this._showOverdrawInspector)),this.cache[r]},yn.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},yn.prototype.setBaseState=function(){var t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)},yn.prototype.initDebugOverlayCanvas=function(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=t.window.document.createElement(\"canvas\"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))},yn.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var xn=function(t,e){this.points=t,this.planes=e};xn.fromInvProjectionMatrix=function(e,r,n){var a=Math.pow(2,n),i=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((function(r){return t.transformMat4([],r,e)})).map((function(e){return t.scale$1([],e,1/e[3]/r*a)})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(e){var r=t.sub([],i[e[0]],i[e[1]]),n=t.sub([],i[e[2]],i[e[1]]),a=t.normalize([],t.cross([],r,n)),o=-t.dot(a,i[e[1]]);return a.concat(o)}));return new xn(i,o)};var bn=function(e,r){this.min=e,this.max=r,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};bn.prototype.quadrant=function(e){for(var r=[e%2==0,e<2],n=t.clone$2(this.min),a=t.clone$2(this.max),i=0;i<r.length;i++)n[i]=r[i]?this.min[i]:this.center[i],a[i]=r[i]?this.center[i]:this.max[i];return a[2]=this.max[2],new bn(n,a)},bn.prototype.distanceX=function(t){return Math.max(Math.min(this.max[0],t[0]),this.min[0])-t[0]},bn.prototype.distanceY=function(t){return Math.max(Math.min(this.max[1],t[1]),this.min[1])-t[1]},bn.prototype.intersects=function(e){for(var r=[[this.min[0],this.min[1],0,1],[this.max[0],this.min[1],0,1],[this.max[0],this.max[1],0,1],[this.min[0],this.max[1],0,1]],n=!0,a=0;a<e.planes.length;a++){for(var i=e.planes[a],o=0,s=0;s<r.length;s++)o+=t.dot$1(i,r[s])>=0;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(var l=0;l<3;l++){for(var c=Number.MAX_VALUE,u=-Number.MAX_VALUE,h=0;h<e.points.length;h++){var f=e.points[h][l]-this.min[l];c=Math.min(c,f),u=Math.max(u,f)}if(u<0||c>this.max[l]-this.min[l])return 0}return 1};var _n=function(t,e,r,n){if(void 0===t&&(t=0),void 0===e&&(e=0),void 0===r&&(r=0),void 0===n&&(n=0),isNaN(t)||t<0||isNaN(e)||e<0||isNaN(r)||r<0||isNaN(n)||n<0)throw new Error(\"Invalid value for edge-insets, top, bottom, left and right must all be numbers\");this.top=t,this.bottom=e,this.left=r,this.right=n};_n.prototype.interpolate=function(e,r,n){return null!=r.top&&null!=e.top&&(this.top=t.number(e.top,r.top,n)),null!=r.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,r.bottom,n)),null!=r.left&&null!=e.left&&(this.left=t.number(e.left,r.left,n)),null!=r.right&&null!=e.right&&(this.right=t.number(e.right,r.right,n)),this},_n.prototype.getCenter=function(e,r){var n=t.clamp((this.left+e-this.right)/2,0,e),a=t.clamp((this.top+r-this.bottom)/2,0,r);return new t.Point(n,a)},_n.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},_n.prototype.clone=function(){return new _n(this.top,this.bottom,this.left,this.right)},_n.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var wn=function(e,r,n,a,i){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===i||i,this._minZoom=e||0,this._maxZoom=r||22,this._minPitch=null==n?0:n,this._maxPitch=null==a?60:a,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new _n,this._posMatrixCache={},this._alignedPosMatrixCache={}},Tn={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};wn.prototype.clone=function(){var t=new wn(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t},Tn.minZoom.get=function(){return this._minZoom},Tn.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},Tn.maxZoom.get=function(){return this._maxZoom},Tn.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},Tn.minPitch.get=function(){return this._minPitch},Tn.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},Tn.maxPitch.get=function(){return this._maxPitch},Tn.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},Tn.renderWorldCopies.get=function(){return this._renderWorldCopies},Tn.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},Tn.worldSize.get=function(){return this.tileSize*this.scale},Tn.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Tn.size.get=function(){return new t.Point(this.width,this.height)},Tn.bearing.get=function(){return-this.angle/Math.PI*180},Tn.bearing.set=function(e){var r=-t.wrap(e,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=t.create$2(),t.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Tn.pitch.get=function(){return this._pitch/Math.PI*180},Tn.pitch.set=function(e){var r=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())},Tn.fov.get=function(){return this._fov/Math.PI*180},Tn.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},Tn.zoom.get=function(){return this._zoom},Tn.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},Tn.center.get=function(){return this._center},Tn.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Tn.padding.get=function(){return this._edgeInsets.toJSON()},Tn.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},Tn.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wn.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},wn.prototype.interpolatePadding=function(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()},wn.prototype.coveringZoomLevel=function(t){var e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)},wn.prototype.getVisibleUnwrappedCoordinates=function(e){var r=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new t.Point(0,0)),a=this.pointCoordinate(new t.Point(this.width,0)),i=this.pointCoordinate(new t.Point(this.width,this.height)),o=this.pointCoordinate(new t.Point(0,this.height)),s=Math.floor(Math.min(n.x,a.x,i.x,o.x)),l=Math.floor(Math.max(n.x,a.x,i.x,o.x)),c=s-1;c<=l+1;c++)0!==c&&r.push(new t.UnwrappedTileID(c,e));return r},wn.prototype.coveringTiles=function(e){var r=this.coveringZoomLevel(e),n=r;if(void 0!==e.minzoom&&r<e.minzoom)return[];void 0!==e.maxzoom&&r>e.maxzoom&&(r=e.maxzoom);var a=t.MercatorCoordinate.fromLngLat(this.center),i=Math.pow(2,r),o=[i*a.x,i*a.y,0],s=xn.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,r),l=e.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=r);var c=function(t){return{aabb:new bn([t*i,0,0],[(t+1)*i,i,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}},u=[],h=[],f=r,p=e.reparseOverscaled?n:r;if(this._renderWorldCopies)for(var d=1;d<=3;d++)u.push(c(-d)),u.push(c(d));for(u.push(c(0));u.length>0;){var g=u.pop(),m=g.x,v=g.y,y=g.fullyVisible;if(!y){var x=g.aabb.intersects(s);if(0===x)continue;y=2===x}var b=g.aabb.distanceX(o),_=g.aabb.distanceY(o),w=Math.max(Math.abs(b),Math.abs(_));if(g.zoom===f||w>3+(1<<f-g.zoom)-2&&g.zoom>=l)h.push({tileID:new t.OverscaledTileID(g.zoom===f?p:g.zoom,g.wrap,g.zoom,m,v),distanceSq:t.sqrLen([o[0]-.5-m,o[1]-.5-v])});else for(var T=0;T<4;T++){var k=(m<<1)+T%2,M=(v<<1)+(T>>1);u.push({aabb:g.aabb.quadrant(T),zoom:g.zoom+1,x:k,y:M,wrap:g.wrap,fullyVisible:y})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},wn.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},Tn.unmodified.get=function(){return this._unmodified},wn.prototype.zoomScale=function(t){return Math.pow(2,t)},wn.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},wn.prototype.project=function(e){var r=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.Point(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(r)*this.worldSize)},wn.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},Tn.point.get=function(){return this.project(this.center)},wn.prototype.setLocationAtPoint=function(e,r){var n=this.pointCoordinate(r),a=this.pointCoordinate(this.centerPoint),i=this.locationCoordinate(e),o=new t.MercatorCoordinate(i.x-(n.x-a.x),i.y-(n.y-a.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},wn.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},wn.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},wn.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},wn.prototype.coordinateLocation=function(t){return t.toLngLat()},wn.prototype.pointCoordinate=function(e){var r=[e.x,e.y,0,1],n=[e.x,e.y,1,1];t.transformMat4(r,r,this.pixelMatrixInverse),t.transformMat4(n,n,this.pixelMatrixInverse);var a=r[3],i=n[3],o=r[1]/a,s=n[1]/i,l=r[2]/a,c=n[2]/i,u=l===c?0:(0-l)/(c-l);return new t.MercatorCoordinate(t.number(r[0]/a,n[0]/i,u)/this.worldSize,t.number(o,s,u)/this.worldSize)},wn.prototype.coordinatePoint=function(e){var r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix),new t.Point(r[0]/r[3],r[1]/r[3])},wn.prototype.getBounds=function(){return(new t.LngLatBounds).extend(this.pointLocation(new t.Point(0,0))).extend(this.pointLocation(new t.Point(this.width,0))).extend(this.pointLocation(new t.Point(this.width,this.height))).extend(this.pointLocation(new t.Point(0,this.height)))},wn.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new t.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},wn.prototype.setMaxBounds=function(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},wn.prototype.calculatePosMatrix=function(e,r){void 0===r&&(r=!1);var n=e.key,a=r?this._alignedPosMatrixCache:this._posMatrixCache;if(a[n])return a[n];var i=e.canonical,o=this.worldSize/this.zoomScale(i.z),s=i.x+Math.pow(2,i.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,i.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),a[n]=new Float32Array(l),a[n]},wn.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wn.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,r,n,a,i=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var h=this.latRange;i=t.mercatorYfromLat(h[1])*this.worldSize,e=(o=t.mercatorYfromLat(h[0])*this.worldSize)-i<c.y?c.y/(o-i):0}if(this.lngRange){var f=this.lngRange;s=t.mercatorXfromLng(f[0])*this.worldSize,r=(l=t.mercatorXfromLng(f[1])*this.worldSize)-s<c.x?c.x/(l-s):0}var p=this.point,d=Math.max(r||0,e||0);if(d)return this.center=this.unproject(new t.Point(r?(l+s)/2:p.x,e?(o+i)/2:p.y)),this.zoom+=this.scaleZoom(d),this._unmodified=u,void(this._constraining=!1);if(this.latRange){var g=p.y,m=c.y/2;g-m<i&&(a=i+m),g+m>o&&(a=o-m)}if(this.lngRange){var v=p.x,y=c.x/2;v-y<s&&(n=s+y),v+y>l&&(n=l-y)}void 0===n&&void 0===a||(this.center=this.unproject(new t.Point(void 0!==n?n:p.x,void 0!==a?a:p.y))),this._unmodified=u,this._constraining=!1}},wn.prototype._calcMatrices=function(){if(this.height){var e=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var r=Math.PI/2+this._pitch,n=this._fov*(.5+e.y/this.height),a=Math.sin(n)*this.cameraToCenterDistance/Math.sin(t.clamp(Math.PI-r-n,.01,Math.PI-.01)),i=this.point,o=i.x,s=i.y,l=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),c=this.height/50,u=new Float64Array(16);t.perspective(u,this._fov,this.width/this.height,c,l),u[8]=2*-e.x/this.width,u[9]=2*e.y/this.height,t.scale(u,u,[1,-1,1]),t.translate(u,u,[0,0,-this.cameraToCenterDistance]),t.rotateX(u,u,this._pitch),t.rotateZ(u,u,this.angle),t.translate(u,u,[-o,-s,0]),this.mercatorMatrix=t.scale([],u,[this.worldSize,this.worldSize,this.worldSize]),t.scale(u,u,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=u,this.invProjMatrix=t.invert([],this.projMatrix);var h=this.width%2/2,f=this.height%2/2,p=Math.cos(this.angle),d=Math.sin(this.angle),g=o-Math.round(o)+p*h+d*f,m=s-Math.round(s)+p*f+d*h,v=new Float64Array(u);if(t.translate(v,v,[g>.5?g-1:g,m>.5?m-1:m,0]),this.alignedProjMatrix=v,u=t.create(),t.scale(u,u,[this.width/2,-this.height/2,1]),t.translate(u,u,[1,-1,0]),this.labelPlaneMatrix=u,u=t.create(),t.scale(u,u,[1,-1,1]),t.translate(u,u,[-1,-1,0]),t.scale(u,u,[2/this.width,2/this.height,1]),this.glCoordMatrix=u,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(u=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=u,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wn.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var e=this.pointCoordinate(new t.Point(0,0)),r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance},wn.prototype.getCameraPoint=function(){var e=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,e))},wn.prototype.getCameraQueryGeometry=function(e){var r=this.getCameraPoint();if(1===e.length)return[e[0],r];for(var n=r.x,a=r.y,i=r.x,o=r.y,s=0,l=e;s<l.length;s+=1){var c=l[s];n=Math.min(n,c.x),a=Math.min(a,c.y),i=Math.max(i,c.x),o=Math.max(o,c.y)}return[new t.Point(n,a),new t.Point(i,a),new t.Point(i,o),new t.Point(n,o),new t.Point(n,a)]},Object.defineProperties(wn.prototype,Tn);var kn=function(e){var r,n,a,i;this._hashName=e&&encodeURIComponent(e),t.bindAll([\"_getCurrentHash\",\"_onHashChange\",\"_updateHash\"],this),this._updateHash=(r=this._updateHashUnthrottled.bind(this),n=!1,a=null,i=function(){a=null,n&&(r(),a=setTimeout(i,300),n=!1)},function(){return n=!0,a||i(),a})};kn.prototype.addTo=function(e){return this._map=e,t.window.addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this},kn.prototype.remove=function(){return t.window.removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},kn.prototype.getHashString=function(e){var r=this._map.getCenter(),n=Math.round(100*this._map.getZoom())/100,a=Math.ceil((n*Math.LN2+Math.log(512/360/.5))/Math.LN10),i=Math.pow(10,a),o=Math.round(r.lng*i)/i,s=Math.round(r.lat*i)/i,l=this._map.getBearing(),c=this._map.getPitch(),u=\"\";if(u+=e?\"/\"+o+\"/\"+s+\"/\"+n:n+\"/\"+s+\"/\"+o,(l||c)&&(u+=\"/\"+Math.round(10*l)/10),c&&(u+=\"/\"+Math.round(c)),this._hashName){var h=this._hashName,f=!1,p=t.window.location.hash.slice(1).split(\"&\").map((function(t){var e=t.split(\"=\")[0];return e===h?(f=!0,e+\"=\"+u):t})).filter((function(t){return t}));return f||p.push(h+\"=\"+u),\"#\"+p.join(\"&\")}return\"#\"+u},kn.prototype._getCurrentHash=function(){var e,r=this,n=t.window.location.hash.replace(\"#\",\"\");return this._hashName?(n.split(\"&\").map((function(t){return t.split(\"=\")})).forEach((function(t){t[0]===r._hashName&&(e=t)})),(e&&e[1]||\"\").split(\"/\")):n.split(\"/\")},kn.prototype._onHashChange=function(){var t=this._getCurrentHash();if(t.length>=3&&!t.some((function(t){return isNaN(t)}))){var e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},kn.prototype._updateHashUnthrottled=function(){var e=this.getHashString();try{t.window.history.replaceState(t.window.history.state,\"\",e)}catch(t){}};var Mn={linearity:.3,easing:t.bezier(0,0,.3,1)},An=t.extend({deceleration:2500,maxSpeed:1400},Mn),Sn=t.extend({deceleration:20,maxSpeed:1400},Mn),En=t.extend({deceleration:1e3,maxSpeed:360},Mn),Cn=t.extend({deceleration:1e3,maxSpeed:90},Mn),Ln=function(t){this._map=t,this.clear()};function Pn(t,e){(!t.duration||t.duration<e.duration)&&(t.duration=e.duration,t.easing=e.easing)}function In(e,r,n){var a=n.maxSpeed,i=n.linearity,o=n.deceleration,s=t.clamp(e*i/(r/1e3),-a,a),l=Math.abs(s)/(o*i);return{easing:n.easing,duration:1e3*l,amount:s*(l/2)}}Ln.prototype.clear=function(){this._inertiaBuffer=[]},Ln.prototype.record=function(e){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:t.browser.now(),settings:e})},Ln.prototype._drainInertiaBuffer=function(){for(var e=this._inertiaBuffer,r=t.browser.now();e.length>0&&r-e[0].time>160;)e.shift()},Ln.prototype._onMoveEnd=function(e){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var r={zoom:0,bearing:0,pitch:0,pan:new t.Point(0,0),pinchAround:void 0,around:void 0},n=0,a=this._inertiaBuffer;n<a.length;n+=1){var i=a[n].settings;r.zoom+=i.zoomDelta||0,r.bearing+=i.bearingDelta||0,r.pitch+=i.pitchDelta||0,i.panDelta&&r.pan._add(i.panDelta),i.around&&(r.around=i.around),i.pinchAround&&(r.pinchAround=i.pinchAround)}var o=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,s={};if(r.pan.mag()){var l=In(r.pan.mag(),o,t.extend({},An,e||{}));s.offset=r.pan.mult(l.amount/r.pan.mag()),s.center=this._map.transform.center,Pn(s,l)}if(r.zoom){var c=In(r.zoom,o,Sn);s.zoom=this._map.transform.zoom+c.amount,Pn(s,c)}if(r.bearing){var u=In(r.bearing,o,En);s.bearing=this._map.transform.bearing+t.clamp(u.amount,-179,179),Pn(s,u)}if(r.pitch){var h=In(r.pitch,o,Cn);s.pitch=this._map.transform.pitch+h.amount,Pn(s,h)}if(s.zoom||s.bearing){var f=void 0===r.pinchAround?r.around:r.pinchAround;s.around=f?this._map.unproject(f):this._map.getCenter()}return this.clear(),t.extend(s,{noMoveStart:!0})}};var zn=function(e){function n(n,a,i,o){void 0===o&&(o={});var s=r.mousePos(a.getCanvasContainer(),i),l=a.unproject(s);e.call(this,n,t.extend({point:s,lngLat:l,originalEvent:i},o)),this._defaultPrevented=!1,this.target=a}e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n;var a={defaultPrevented:{configurable:!0}};return n.prototype.preventDefault=function(){this._defaultPrevented=!0},a.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(n.prototype,a),n}(t.Event),On=function(e){function n(n,a,i){var o=\"touchend\"===n?i.changedTouches:i.touches,s=r.touchPos(a.getCanvasContainer(),o),l=s.map((function(t){return a.unproject(t)})),c=s.reduce((function(t,e,r,n){return t.add(e.div(n.length))}),new t.Point(0,0)),u=a.unproject(c);e.call(this,n,{points:s,point:c,lngLats:l,lngLat:u,originalEvent:i}),this._defaultPrevented=!1}e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n;var a={defaultPrevented:{configurable:!0}};return n.prototype.preventDefault=function(){this._defaultPrevented=!0},a.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(n.prototype,a),n}(t.Event),Dn=function(t){function e(e,r,n){t.call(this,e,{originalEvent:n}),this._defaultPrevented=!1}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={defaultPrevented:{configurable:!0}};return e.prototype.preventDefault=function(){this._defaultPrevented=!0},r.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(e.prototype,r),e}(t.Event),Rn=function(t,e){this._map=t,this._clickTolerance=e.clickTolerance};Rn.prototype.reset=function(){delete this._mousedownPos},Rn.prototype.wheel=function(t){return this._firePreventable(new Dn(t.type,this._map,t))},Rn.prototype.mousedown=function(t,e){return this._mousedownPos=e,this._firePreventable(new zn(t.type,this._map,t))},Rn.prototype.mouseup=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.click=function(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.dblclick=function(t){return this._firePreventable(new zn(t.type,this._map,t))},Rn.prototype.mouseover=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.mouseout=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.touchstart=function(t){return this._firePreventable(new On(t.type,this._map,t))},Rn.prototype.touchmove=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype.touchend=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype.touchcancel=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Rn.prototype.isEnabled=function(){return!0},Rn.prototype.isActive=function(){return!1},Rn.prototype.enable=function(){},Rn.prototype.disable=function(){};var Fn=function(t){this._map=t};Fn.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Fn.prototype.mousemove=function(t){this._map.fire(new zn(t.type,this._map,t))},Fn.prototype.mousedown=function(){this._delayContextMenu=!0},Fn.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new zn(\"contextmenu\",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Fn.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new zn(t.type,this._map,t)),this._map.listens(\"contextmenu\")&&t.preventDefault()},Fn.prototype.isEnabled=function(){return!0},Fn.prototype.isActive=function(){return!1},Fn.prototype.enable=function(){},Fn.prototype.disable=function(){};var Bn=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Nn(t,e){for(var r={},n=0;n<t.length;n++)r[t[n].identifier]=e[n];return r}Bn.prototype.isEnabled=function(){return!!this._enabled},Bn.prototype.isActive=function(){return!!this._active},Bn.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Bn.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Bn.prototype.mousedown=function(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(r.disableDrag(),this._startPos=this._lastPos=e,this._active=!0)},Bn.prototype.mousemoveWindow=function(t,e){if(this._active){var n=e;if(!(this._lastPos.equals(n)||!this._box&&n.dist(this._startPos)<this._clickTolerance)){var a=this._startPos;this._lastPos=n,this._box||(this._box=r.create(\"div\",\"mapboxgl-boxzoom\",this._container),this._container.classList.add(\"mapboxgl-crosshair\"),this._fireEvent(\"boxzoomstart\",t));var i=Math.min(a.x,n.x),o=Math.max(a.x,n.x),s=Math.min(a.y,n.y),l=Math.max(a.y,n.y);r.setTransform(this._box,\"translate(\"+i+\"px,\"+s+\"px)\"),this._box.style.width=o-i+\"px\",this._box.style.height=l-s+\"px\"}}},Bn.prototype.mouseupWindow=function(e,n){var a=this;if(this._active&&0===e.button){var i=this._startPos,o=n;if(this.reset(),r.suppressClick(),i.x!==o.x||i.y!==o.y)return this._map.fire(new t.Event(\"boxzoomend\",{originalEvent:e})),{cameraAnimation:function(t){return t.fitScreenCoordinates(i,o,a._map.getBearing(),{linear:!0})}};this._fireEvent(\"boxzoomcancel\",e)}},Bn.prototype.keydown=function(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent(\"boxzoomcancel\",t))},Bn.prototype.reset=function(){this._active=!1,this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(r.remove(this._box),this._box=null),r.enableDrag(),delete this._startPos,delete this._lastPos},Bn.prototype._fireEvent=function(e,r){return this._map.fire(new t.Event(e,{originalEvent:r}))};var jn=function(t){this.reset(),this.numTouches=t.numTouches};jn.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},jn.prototype.touchstart=function(e,r,n){(this.centroid||n.length>this.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=e.timeStamp),n.length===this.numTouches&&(this.centroid=function(e){for(var r=new t.Point(0,0),n=0,a=e;n<a.length;n+=1)r._add(a[n]);return r.div(e.length)}(r),this.touches=Nn(n,r)))},jn.prototype.touchmove=function(t,e,r){if(!this.aborted&&this.centroid){var n=Nn(r,e);for(var a in this.touches){var i=n[a];(!i||i.dist(this.touches[a])>30)&&(this.aborted=!0)}}},jn.prototype.touchend=function(t,e,r){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===r.length){var n=!this.aborted&&this.centroid;if(this.reset(),n)return n}};var Un=function(t){this.singleTap=new jn(t),this.numTaps=t.numTaps,this.reset()};Un.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Un.prototype.touchstart=function(t,e,r){this.singleTap.touchstart(t,e,r)},Un.prototype.touchmove=function(t,e,r){this.singleTap.touchmove(t,e,r)},Un.prototype.touchend=function(t,e,r){var n=this.singleTap.touchend(t,e,r);if(n){var a=t.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(n)<30;if(a&&i||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}};var Vn=function(){this._zoomIn=new Un({numTouches:1,numTaps:2}),this._zoomOut=new Un({numTouches:2,numTaps:1}),this.reset()};Vn.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Vn.prototype.touchstart=function(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)},Vn.prototype.touchmove=function(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)},Vn.prototype.touchend=function(t,e,r){var n=this,a=this._zoomIn.touchend(t,e,r),i=this._zoomOut.touchend(t,e,r);return a?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()+1,around:e.unproject(a)},{originalEvent:t})}}):i?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()-1,around:e.unproject(i)},{originalEvent:t})}}):void 0},Vn.prototype.touchcancel=function(){this.reset()},Vn.prototype.enable=function(){this._enabled=!0},Vn.prototype.disable=function(){this._enabled=!1,this.reset()},Vn.prototype.isEnabled=function(){return this._enabled},Vn.prototype.isActive=function(){return this._active};var qn=function(t){this.reset(),this._clickTolerance=t.clickTolerance||1};qn.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},qn.prototype._correctButton=function(t,e){return!1},qn.prototype._move=function(t,e){return{}},qn.prototype.mousedown=function(t,e){if(!this._lastPoint){var n=r.mouseButton(t);this._correctButton(t,n)&&(this._lastPoint=e,this._eventButton=n)}},qn.prototype.mousemoveWindow=function(t,e){var r=this._lastPoint;if(r&&(t.preventDefault(),this._moved||!(e.dist(r)<this._clickTolerance)))return this._moved=!0,this._lastPoint=e,this._move(r,e)},qn.prototype.mouseupWindow=function(t){r.mouseButton(t)===this._eventButton&&(this._moved&&r.suppressClick(),this.reset())},qn.prototype.enable=function(){this._enabled=!0},qn.prototype.disable=function(){this._enabled=!1,this.reset()},qn.prototype.isEnabled=function(){return this._enabled},qn.prototype.isActive=function(){return this._active};var Hn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.mousedown=function(e,r){t.prototype.mousedown.call(this,e,r),this._lastPoint&&(this._active=!0)},e.prototype._correctButton=function(t,e){return 0===e&&!t.ctrlKey},e.prototype._move=function(t,e){return{around:e,panDelta:e.sub(t)}},e}(qn),Gn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._correctButton=function(t,e){return 0===e&&t.ctrlKey||2===e},e.prototype._move=function(t,e){var r=.8*(e.x-t.x);if(r)return this._active=!0,{bearingDelta:r}},e.prototype.contextmenu=function(t){t.preventDefault()},e}(qn),Yn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._correctButton=function(t,e){return 0===e&&t.ctrlKey||2===e},e.prototype._move=function(t,e){var r=-.5*(e.y-t.y);if(r)return this._active=!0,{pitchDelta:r}},e.prototype.contextmenu=function(t){t.preventDefault()},e}(qn),Wn=function(t){this._minTouches=1,this._clickTolerance=t.clickTolerance||1,this.reset()};Wn.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new t.Point(0,0)},Wn.prototype.touchstart=function(t,e,r){return this._calculateTransform(t,e,r)},Wn.prototype.touchmove=function(t,e,r){if(this._active)return t.preventDefault(),this._calculateTransform(t,e,r)},Wn.prototype.touchend=function(t,e,r){this._calculateTransform(t,e,r),this._active&&r.length<this._minTouches&&this.reset()},Wn.prototype.touchcancel=function(){this.reset()},Wn.prototype._calculateTransform=function(e,r,n){n.length>0&&(this._active=!0);var a=Nn(n,r),i=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in a){var c=a[l],u=this._touches[l];u&&(i._add(c),o._add(c.sub(u)),s++,a[l]=c)}if(this._touches=a,!(s<this._minTouches)&&o.mag()){var h=o.div(s);if(this._sum._add(h),!(this._sum.mag()<this._clickTolerance))return{around:i.div(s),panDelta:h}}},Wn.prototype.enable=function(){this._enabled=!0},Wn.prototype.disable=function(){this._enabled=!1,this.reset()},Wn.prototype.isEnabled=function(){return this._enabled},Wn.prototype.isActive=function(){return this._active};var Zn=function(){this.reset()};function Xn(t,e,r){for(var n=0;n<t.length;n++)if(t[n].identifier===r)return e[n]}function Jn(t,e){return Math.log(t/e)/Math.LN2}Zn.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},Zn.prototype._start=function(t){},Zn.prototype._move=function(t,e,r){return{}},Zn.prototype.touchstart=function(t,e,r){this._firstTwoTouches||r.length<2||(this._firstTwoTouches=[r[0].identifier,r[1].identifier],this._start([e[0],e[1]]))},Zn.prototype.touchmove=function(t,e,r){if(this._firstTwoTouches){t.preventDefault();var n=this._firstTwoTouches,a=n[1],i=Xn(r,e,n[0]),o=Xn(r,e,a);if(i&&o){var s=this._aroundCenter?null:i.add(o).div(2);return this._move([i,o],s,t)}}},Zn.prototype.touchend=function(t,e,n){if(this._firstTwoTouches){var a=this._firstTwoTouches,i=a[1],o=Xn(n,e,a[0]),s=Xn(n,e,i);o&&s||(this._active&&r.suppressClick(),this.reset())}},Zn.prototype.touchcancel=function(){this.reset()},Zn.prototype.enable=function(t){this._enabled=!0,this._aroundCenter=!!t&&\"center\"===t.around},Zn.prototype.disable=function(){this._enabled=!1,this.reset()},Zn.prototype.isEnabled=function(){return this._enabled},Zn.prototype.isActive=function(){return this._active};var Kn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),delete this._distance,delete this._startDistance},e.prototype._start=function(t){this._startDistance=this._distance=t[0].dist(t[1])},e.prototype._move=function(t,e){var r=this._distance;if(this._distance=t[0].dist(t[1]),this._active||!(Math.abs(Jn(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:Jn(this._distance,r),pinchAround:e}},e}(Zn);function Qn(t,e){return 180*t.angleWith(e)/Math.PI}var $n=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},e.prototype._start=function(t){this._startVector=this._vector=t[0].sub(t[1]),this._minDiameter=t[0].dist(t[1])},e.prototype._move=function(t,e){var r=this._vector;if(this._vector=t[0].sub(t[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:Qn(this._vector,r),pinchAround:e}},e.prototype._isBelowThreshold=function(t){this._minDiameter=Math.min(this._minDiameter,t.mag());var e=25/(Math.PI*this._minDiameter)*360,r=Qn(t,this._startVector);return Math.abs(r)<e},e}(Zn);function ta(t){return Math.abs(t.y)>Math.abs(t.x)}var ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},e.prototype._start=function(t){this._lastPoints=t,ta(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,r){var n=t[0].sub(this._lastPoints[0]),a=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,a,r.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+a.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,r){if(void 0!==this._valid)return this._valid;var n=t.mag()>=2,a=e.mag()>=2;if(n||a){if(!n||!a)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;var i=t.y>0==e.y>0;return ta(t)&&ta(e)&&i}},e}(Zn),ra={panStep:100,bearingStep:15,pitchStep:10},na=function(){var t=ra;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep};function aa(t){return t*(2-t)}na.prototype.reset=function(){this._active=!1},na.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var r=0,n=0,a=0,i=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:r=1;break;case 189:case 109:case 173:r=-1;break;case 37:t.shiftKey?n=-1:(t.preventDefault(),i=-1);break;case 39:t.shiftKey?n=1:(t.preventDefault(),i=1);break;case 38:t.shiftKey?a=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?a=-1:(t.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:\"keyboardHandler\",easing:aa,zoom:r?Math.round(l)+r*(t.shiftKey?2:1):l,bearing:s.getBearing()+n*e._bearingStep,pitch:s.getPitch()+a*e._pitchStep,offset:[-i*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},na.prototype.enable=function(){this._enabled=!0},na.prototype.disable=function(){this._enabled=!1,this.reset()},na.prototype.isEnabled=function(){return this._enabled},na.prototype.isActive=function(){return this._active};var ia=function(e,r){this._map=e,this._el=e.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=1/450,t.bindAll([\"_onWheel\",\"_onTimeout\",\"_onScrollFrame\",\"_onScrollFinished\"],this)};ia.prototype.setZoomRate=function(t){this._defaultZoomRate=t},ia.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},ia.prototype.isEnabled=function(){return!!this._enabled},ia.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},ia.prototype.isZooming=function(){return!!this._zooming},ia.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},ia.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},ia.prototype.wheel=function(e){if(this.isEnabled()){var r=e.deltaMode===t.window.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY,n=t.browser.now(),a=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%4.000244140625==0?this._type=\"wheel\":0!==r&&Math.abs(r)<4?this._type=\"trackpad\":a>400?(this._type=null,this._lastValue=r,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(a*r)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,r+=this._lastValue)),e.shiftKey&&r&&(r/=4),this._type&&(this._lastWheelEvent=e,this._delta-=r,this._active||this._start(e)),e.preventDefault()}},ia.prototype._onTimeout=function(t){this._type=\"wheel\",this._delta-=this._lastValue,this._active||this._start(t)},ia.prototype._start=function(e){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var n=r.mousePos(this._el,e);this._around=t.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(n)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},ia.prototype.renderFrame=function(){return this._onScrollFrame()},ia.prototype._onScrollFrame=function(){var e=this;if(this._frameId&&(this._frameId=null,this.isActive())){var r=this._map.transform;if(0!==this._delta){var n=\"wheel\"===this._type&&Math.abs(this._delta)>4.000244140625?this._wheelZoomRate:this._defaultZoomRate,a=2/(1+Math.exp(-Math.abs(this._delta*n)));this._delta<0&&0!==a&&(a=1/a);var i=\"number\"==typeof this._targetZoom?r.zoomScale(this._targetZoom):r.scale;this._targetZoom=Math.min(r.maxZoom,Math.max(r.minZoom,r.scaleZoom(i*a))),\"wheel\"===this._type&&(this._startZoom=r.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s=\"number\"==typeof this._targetZoom?this._targetZoom:r.zoom,l=this._startZoom,c=this._easing,u=!1;if(\"wheel\"===this._type&&l&&c){var h=Math.min((t.browser.now()-this._lastWheelEventTime)/200,1),f=c(h);o=t.number(l,s,f),h<1?this._frameId||(this._frameId=!0):u=!0}else o=s,u=!0;return this._active=!0,u&&(this._active=!1,this._finishTimeout=setTimeout((function(){e._zooming=!1,e._handler._triggerRenderFrame(),delete e._targetZoom,delete e._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!u,zoomDelta:o-r.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},ia.prototype._smoothOutEasing=function(e){var r=t.ease;if(this._prevEase){var n=this._prevEase,a=(t.browser.now()-n.start)/n.duration,i=n.easing(a+.01)-n.easing(a),o=.27/Math.sqrt(i*i+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=t.bezier(o,s,.25,1)}return this._prevEase={start:t.browser.now(),duration:e,easing:r},r},ia.prototype.reset=function(){this._active=!1};var oa=function(t,e){this._clickZoom=t,this._tapZoom=e};oa.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},oa.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},oa.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},oa.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var sa=function(){this.reset()};sa.prototype.reset=function(){this._active=!1},sa.prototype.dblclick=function(t,e){return t.preventDefault(),{cameraAnimation:function(r){r.easeTo({duration:300,zoom:r.getZoom()+(t.shiftKey?-1:1),around:r.unproject(e)},{originalEvent:t})}}},sa.prototype.enable=function(){this._enabled=!0},sa.prototype.disable=function(){this._enabled=!1,this.reset()},sa.prototype.isEnabled=function(){return this._enabled},sa.prototype.isActive=function(){return this._active};var la=function(){this._tap=new Un({numTouches:1,numTaps:1}),this.reset()};la.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},la.prototype.touchstart=function(t,e,r){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?r.length>0&&(this._swipePoint=e[0],this._swipeTouch=r[0].identifier):this._tap.touchstart(t,e,r))},la.prototype.touchmove=function(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=e[0],a=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:a/128}}}else this._tap.touchmove(t,e,r)},la.prototype.touchend=function(t,e,r){this._tapTime?this._swipePoint&&0===r.length&&this.reset():this._tap.touchend(t,e,r)&&(this._tapTime=t.timeStamp)},la.prototype.touchcancel=function(){this.reset()},la.prototype.enable=function(){this._enabled=!0},la.prototype.disable=function(){this._enabled=!1,this.reset()},la.prototype.isEnabled=function(){return this._enabled},la.prototype.isActive=function(){return this._active};var ca=function(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r};ca.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add(\"mapboxgl-touch-drag-pan\")},ca.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove(\"mapboxgl-touch-drag-pan\")},ca.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},ca.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var ua=function(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r};ua.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},ua.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},ua.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},ua.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var ha=function(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};ha.prototype.enable=function(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add(\"mapboxgl-touch-zoom-rotate\")},ha.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\")},ha.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},ha.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},ha.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},ha.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var fa=function(t){return t.zoom||t.drag||t.pitch||t.rotate},pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(t.Event);function da(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var ga=function(e,n){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Ln(e),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),t.bindAll([\"handleEvent\",\"handleWindowEvent\"],this);var a=this._el;this._listeners=[[a,\"touchstart\",{passive:!1}],[a,\"touchmove\",{passive:!1}],[a,\"touchend\",void 0],[a,\"touchcancel\",void 0],[a,\"mousedown\",void 0],[a,\"mousemove\",void 0],[a,\"mouseup\",void 0],[t.window.document,\"mousemove\",{capture:!0}],[t.window.document,\"mouseup\",void 0],[a,\"mouseover\",void 0],[a,\"mouseout\",void 0],[a,\"dblclick\",void 0],[a,\"click\",void 0],[a,\"keydown\",{capture:!1}],[a,\"keyup\",void 0],[a,\"wheel\",{passive:!1}],[a,\"contextmenu\",void 0],[t.window,\"blur\",void 0]];for(var i=0,o=this._listeners;i<o.length;i+=1){var s=o[i],l=s[0];r.addEventListener(l,s[1],l===t.window.document?this.handleWindowEvent:this.handleEvent,s[2])}};ga.prototype.destroy=function(){for(var e=0,n=this._listeners;e<n.length;e+=1){var a=n[e],i=a[0];r.removeEventListener(i,a[1],i===t.window.document?this.handleWindowEvent:this.handleEvent,a[2])}},ga.prototype._addDefaultHandlers=function(t){var e=this._map,r=e.getCanvasContainer();this._add(\"mapEvent\",new Rn(e,t));var n=e.boxZoom=new Bn(e,t);this._add(\"boxZoom\",n);var a=new Vn,i=new sa;e.doubleClickZoom=new oa(i,a),this._add(\"tapZoom\",a),this._add(\"clickZoom\",i);var o=new la;this._add(\"tapDragZoom\",o);var s=e.touchPitch=new ea;this._add(\"touchPitch\",s);var l=new Gn(t),c=new Yn(t);e.dragRotate=new ua(t,l,c),this._add(\"mouseRotate\",l,[\"mousePitch\"]),this._add(\"mousePitch\",c,[\"mouseRotate\"]);var u=new Hn(t),h=new Wn(t);e.dragPan=new ca(r,u,h),this._add(\"mousePan\",u),this._add(\"touchPan\",h,[\"touchZoom\",\"touchRotate\"]);var f=new $n,p=new Kn;e.touchZoomRotate=new ha(r,p,f,o),this._add(\"touchRotate\",f,[\"touchPan\",\"touchZoom\"]),this._add(\"touchZoom\",p,[\"touchPan\",\"touchRotate\"]);var d=e.scrollZoom=new ia(e,this);this._add(\"scrollZoom\",d,[\"mousePan\"]);var g=e.keyboard=new na;this._add(\"keyboard\",g),this._add(\"blockableMapEvent\",new Fn(e));for(var m=0,v=[\"boxZoom\",\"doubleClickZoom\",\"tapDragZoom\",\"touchPitch\",\"dragRotate\",\"dragPan\",\"touchZoomRotate\",\"scrollZoom\",\"keyboard\"];m<v.length;m+=1){var y=v[m];t.interactive&&t[y]&&e[y].enable(t[y])}},ga.prototype._add=function(t,e,r){this._handlers.push({handlerName:t,handler:e,allowed:r}),this._handlersById[t]=e},ga.prototype.stop=function(){if(!this._updatingCamera){for(var t=0,e=this._handlers;t<e.length;t+=1)e[t].handler.reset();this._inertia.clear(),this._fireEvents({},{}),this._changes=[]}},ga.prototype.isActive=function(){for(var t=0,e=this._handlers;t<e.length;t+=1)if(e[t].handler.isActive())return!0;return!1},ga.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},ga.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},ga.prototype.isMoving=function(){return Boolean(fa(this._eventsInProgress))||this.isZooming()},ga.prototype._blockedByActive=function(t,e,r){for(var n in t)if(n!==r&&(!e||e.indexOf(n)<0))return!0;return!1},ga.prototype.handleWindowEvent=function(t){this.handleEvent(t,t.type+\"Window\")},ga.prototype._getMapTouches=function(t){for(var e=[],r=0,n=t;r<n.length;r+=1){var a=n[r];this._el.contains(a.target)&&e.push(a)}return e},ga.prototype.handleEvent=function(t,e){if(\"blur\"!==t.type){this._updatingCamera=!0;for(var n=\"renderFrame\"===t.type?void 0:t,a={needsRenderFrame:!1},i={},o={},s=t.touches?this._getMapTouches(t.touches):void 0,l=s?r.touchPos(this._el,s):r.mousePos(this._el,t),c=0,u=this._handlers;c<u.length;c+=1){var h=u[c],f=h.handlerName,p=h.handler,d=h.allowed;if(p.isEnabled()){var g=void 0;this._blockedByActive(o,d,f)?p.reset():p[e||t.type]&&(g=p[e||t.type](t,l,s),this.mergeHandlerResult(a,i,g,f,n),g&&g.needsRenderFrame&&this._triggerRenderFrame()),(g||p.isActive())&&(o[f]=p)}}var m={};for(var v in this._previousActiveHandlers)o[v]||(m[v]=n);this._previousActiveHandlers=o,(Object.keys(m).length||da(a))&&(this._changes.push([a,i,m]),this._triggerRenderFrame()),(Object.keys(o).length||da(a))&&this._map._stop(!0),this._updatingCamera=!1;var y=a.cameraAnimation;y&&(this._inertia.clear(),this._fireEvents({},{}),this._changes=[],y(this._map))}else this.stop()},ga.prototype.mergeHandlerResult=function(e,r,n,a,i){if(n){t.extend(e,n);var o={handlerName:a,originalEvent:n.originalEvent||i};void 0!==n.zoomDelta&&(r.zoom=o),void 0!==n.panDelta&&(r.drag=o),void 0!==n.pitchDelta&&(r.pitch=o),void 0!==n.bearingDelta&&(r.rotate=o)}},ga.prototype._applyChanges=function(){for(var e={},r={},n={},a=0,i=this._changes;a<i.length;a+=1){var o=i[a],s=o[0],l=o[1],c=o[2];s.panDelta&&(e.panDelta=(e.panDelta||new t.Point(0,0))._add(s.panDelta)),s.zoomDelta&&(e.zoomDelta=(e.zoomDelta||0)+s.zoomDelta),s.bearingDelta&&(e.bearingDelta=(e.bearingDelta||0)+s.bearingDelta),s.pitchDelta&&(e.pitchDelta=(e.pitchDelta||0)+s.pitchDelta),void 0!==s.around&&(e.around=s.around),void 0!==s.pinchAround&&(e.pinchAround=s.pinchAround),s.noInertia&&(e.noInertia=s.noInertia),t.extend(r,l),t.extend(n,c)}this._updateMapTransform(e,r,n),this._changes=[]},ga.prototype._updateMapTransform=function(t,e,r){var n=this._map,a=n.transform;if(!da(t))return this._fireEvents(e,r);var i=t.panDelta,o=t.zoomDelta,s=t.bearingDelta,l=t.pitchDelta,c=t.around,u=t.pinchAround;void 0!==u&&(c=u),n._stop(!0),c=c||n.transform.centerPoint;var h=a.pointLocation(i?c.sub(i):c);s&&(a.bearing+=s),l&&(a.pitch+=l),o&&(a.zoom+=o),a.setLocationAtPoint(h,c),this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(e,r)},ga.prototype._fireEvents=function(e,r){var n=this,a=fa(this._eventsInProgress),i=fa(e),o={};for(var s in e)this._eventsInProgress[s]||(o[s+\"start\"]=e[s].originalEvent),this._eventsInProgress[s]=e[s];for(var l in!a&&i&&this._fireEvent(\"movestart\",i.originalEvent),o)this._fireEvent(l,o[l]);for(var c in e.rotate&&(this._bearingChanged=!0),i&&this._fireEvent(\"move\",i.originalEvent),e)this._fireEvent(c,e[c].originalEvent);var u,h={};for(var f in this._eventsInProgress){var p=this._eventsInProgress[f],d=p.handlerName,g=p.originalEvent;this._handlersById[d].isActive()||(delete this._eventsInProgress[f],h[f+\"end\"]=u=r[d]||g)}for(var m in h)this._fireEvent(m,h[m]);var v=fa(this._eventsInProgress);if((a||i)&&!v){this._updatingCamera=!0;var y=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),x=function(t){return 0!==t&&-n._bearingSnap<t&&t<n._bearingSnap};y?(x(y.bearing||this._map.getBearing())&&(y.bearing=0),this._map.easeTo(y,{originalEvent:u})):(this._map.fire(new t.Event(\"moveend\",{originalEvent:u})),x(this._map.getBearing())&&this._map.resetNorth()),this._bearingChanged=!1,this._updatingCamera=!1}},ga.prototype._fireEvent=function(e,r){this._map.fire(new t.Event(e,r?{originalEvent:r}:{}))},ga.prototype._triggerRenderFrame=function(){var t=this;void 0===this._frameId&&(this._frameId=this._map._requestRenderFrame((function(e){delete t._frameId,t.handleEvent(new pa(\"renderFrame\",{timeStamp:e})),t._applyChanges()})))};var ma=function(e){function r(r,n){e.call(this),this._moving=!1,this._zooming=!1,this.transform=r,this._bearingSnap=n.bearingSnap,t.bindAll([\"_renderFrameCallback\"],this)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getCenter=function(){return new t.LngLat(this.transform.center.lng,this.transform.center.lat)},r.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},r.prototype.panBy=function(e,r,n){return e=t.Point.convert(e).mult(-1),this.panTo(this.transform.center,t.extend({offset:e},r),n)},r.prototype.panTo=function(e,r,n){return this.easeTo(t.extend({center:e},r),n)},r.prototype.getZoom=function(){return this.transform.zoom},r.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},r.prototype.zoomTo=function(e,r,n){return this.easeTo(t.extend({zoom:e},r),n)},r.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},r.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},r.prototype.getBearing=function(){return this.transform.bearing},r.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},r.prototype.getPadding=function(){return this.transform.padding},r.prototype.setPadding=function(t,e){return this.jumpTo({padding:t},e),this},r.prototype.rotateTo=function(e,r,n){return this.easeTo(t.extend({bearing:e},r),n)},r.prototype.resetNorth=function(e,r){return this.rotateTo(0,t.extend({duration:1e3},e),r),this},r.prototype.resetNorthPitch=function(e,r){return this.easeTo(t.extend({bearing:0,pitch:0,duration:1e3},e),r),this},r.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(t,e):this},r.prototype.getPitch=function(){return this.transform.pitch},r.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},r.prototype.cameraForBounds=function(e,r){return e=t.LngLatBounds.convert(e),this._cameraForBoxAndBearing(e.getNorthWest(),e.getSouthEast(),0,r)},r.prototype._cameraForBoxAndBearing=function(e,r,n,a){var i={top:0,bottom:0,right:0,left:0};if(\"number\"==typeof(a=t.extend({padding:i,offset:[0,0],maxZoom:this.transform.maxZoom},a)).padding){var o=a.padding;a.padding={top:o,bottom:o,right:o,left:o}}a.padding=t.extend(i,a.padding);var s=this.transform,l=s.padding,c=s.project(t.LngLat.convert(e)),u=s.project(t.LngLat.convert(r)),h=c.rotate(-n*Math.PI/180),f=u.rotate(-n*Math.PI/180),p=new t.Point(Math.max(h.x,f.x),Math.max(h.y,f.y)),d=new t.Point(Math.min(h.x,f.x),Math.min(h.y,f.y)),g=p.sub(d),m=(s.width-(l.left+l.right+a.padding.left+a.padding.right))/g.x,v=(s.height-(l.top+l.bottom+a.padding.top+a.padding.bottom))/g.y;if(!(v<0||m<0)){var y=Math.min(s.scaleZoom(s.scale*Math.min(m,v)),a.maxZoom),x=t.Point.convert(a.offset),b=new t.Point(x.x+(a.padding.left-a.padding.right)/2,x.y+(a.padding.top-a.padding.bottom)/2).mult(s.scale/s.zoomScale(y));return{center:s.unproject(c.add(u).div(2).sub(b)),zoom:y,bearing:n}}t.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\")},r.prototype.fitBounds=function(t,e,r){return this._fitInternal(this.cameraForBounds(t,e),e,r)},r.prototype.fitScreenCoordinates=function(e,r,n,a,i){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(t.Point.convert(e)),this.transform.pointLocation(t.Point.convert(r)),n,a),a,i)},r.prototype._fitInternal=function(e,r,n){return e?(delete(r=t.extend(e,r)).padding,r.linear?this.easeTo(r,n):this.flyTo(r,n)):this},r.prototype.jumpTo=function(e,r){this.stop();var n=this.transform,a=!1,i=!1,o=!1;return\"zoom\"in e&&n.zoom!==+e.zoom&&(a=!0,n.zoom=+e.zoom),void 0!==e.center&&(n.center=t.LngLat.convert(e.center)),\"bearing\"in e&&n.bearing!==+e.bearing&&(i=!0,n.bearing=+e.bearing),\"pitch\"in e&&n.pitch!==+e.pitch&&(o=!0,n.pitch=+e.pitch),null==e.padding||n.isPaddingEqual(e.padding)||(n.padding=e.padding),this.fire(new t.Event(\"movestart\",r)).fire(new t.Event(\"move\",r)),a&&this.fire(new t.Event(\"zoomstart\",r)).fire(new t.Event(\"zoom\",r)).fire(new t.Event(\"zoomend\",r)),i&&this.fire(new t.Event(\"rotatestart\",r)).fire(new t.Event(\"rotate\",r)).fire(new t.Event(\"rotateend\",r)),o&&this.fire(new t.Event(\"pitchstart\",r)).fire(new t.Event(\"pitch\",r)).fire(new t.Event(\"pitchend\",r)),this.fire(new t.Event(\"moveend\",r))},r.prototype.easeTo=function(e,r){var n=this;this._stop(!1,e.easeId),(!1===(e=t.extend({offset:[0,0],duration:500,easing:t.ease},e)).animate||!e.essential&&t.browser.prefersReducedMotion)&&(e.duration=0);var a=this.transform,i=this.getZoom(),o=this.getBearing(),s=this.getPitch(),l=this.getPadding(),c=\"zoom\"in e?+e.zoom:i,u=\"bearing\"in e?this._normalizeBearing(e.bearing,o):o,h=\"pitch\"in e?+e.pitch:s,f=\"padding\"in e?e.padding:a.padding,p=t.Point.convert(e.offset),d=a.centerPoint.add(p),g=a.pointLocation(d),m=t.LngLat.convert(e.center||g);this._normalizeCenter(m);var v,y,x=a.project(g),b=a.project(m).sub(x),_=a.zoomScale(c-i);e.around&&(v=t.LngLat.convert(e.around),y=a.locationPoint(v));var w={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||c!==i,this._rotating=this._rotating||o!==u,this._pitching=this._pitching||h!==s,this._padding=!a.isPaddingEqual(f),this._easeId=e.easeId,this._prepareEase(r,e.noMoveStart,w),clearTimeout(this._easeEndTimeoutID),this._ease((function(e){if(n._zooming&&(a.zoom=t.number(i,c,e)),n._rotating&&(a.bearing=t.number(o,u,e)),n._pitching&&(a.pitch=t.number(s,h,e)),n._padding&&(a.interpolatePadding(l,f,e),d=a.centerPoint.add(p)),v)a.setLocationAtPoint(v,y);else{var g=a.zoomScale(a.zoom-i),m=c>i?Math.min(2,_):Math.max(.5,_),w=Math.pow(m,1-e),T=a.unproject(x.add(b.mult(e*w)).mult(g));a.setLocationAtPoint(a.renderWorldCopies?T.wrap():T,d)}n._fireMoveEvents(r)}),(function(t){n._afterEase(r,t)}),e),this},r.prototype._prepareEase=function(e,r,n){void 0===n&&(n={}),this._moving=!0,r||n.moving||this.fire(new t.Event(\"movestart\",e)),this._zooming&&!n.zooming&&this.fire(new t.Event(\"zoomstart\",e)),this._rotating&&!n.rotating&&this.fire(new t.Event(\"rotatestart\",e)),this._pitching&&!n.pitching&&this.fire(new t.Event(\"pitchstart\",e))},r.prototype._fireMoveEvents=function(e){this.fire(new t.Event(\"move\",e)),this._zooming&&this.fire(new t.Event(\"zoom\",e)),this._rotating&&this.fire(new t.Event(\"rotate\",e)),this._pitching&&this.fire(new t.Event(\"pitch\",e))},r.prototype._afterEase=function(e,r){if(!this._easeId||!r||this._easeId!==r){delete this._easeId;var n=this._zooming,a=this._rotating,i=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,n&&this.fire(new t.Event(\"zoomend\",e)),a&&this.fire(new t.Event(\"rotateend\",e)),i&&this.fire(new t.Event(\"pitchend\",e)),this.fire(new t.Event(\"moveend\",e))}},r.prototype.flyTo=function(e,r){var n=this;if(!e.essential&&t.browser.prefersReducedMotion){var a=t.pick(e,[\"center\",\"zoom\",\"bearing\",\"pitch\",\"around\"]);return this.jumpTo(a,r)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var i=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u=\"zoom\"in e?t.clamp(+e.zoom,i.minZoom,i.maxZoom):o,h=\"bearing\"in e?this._normalizeBearing(e.bearing,s):s,f=\"pitch\"in e?+e.pitch:l,p=\"padding\"in e?e.padding:i.padding,d=i.zoomScale(u-o),g=t.Point.convert(e.offset),m=i.centerPoint.add(g),v=i.pointLocation(m),y=t.LngLat.convert(e.center||v);this._normalizeCenter(y);var x=i.project(v),b=i.project(y).sub(x),_=e.curve,w=Math.max(i.width,i.height),T=w/d,k=b.mag();if(\"minZoom\"in e){var M=t.clamp(Math.min(e.minZoom,o,u),i.minZoom,i.maxZoom),A=w/i.zoomScale(M-o);_=Math.sqrt(A/k*2)}var S=_*_;function E(t){var e=(T*T-w*w+(t?-1:1)*S*S*k*k)/(2*(t?T:w)*S*k);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return(Math.exp(t)-Math.exp(-t))/2}function L(t){return(Math.exp(t)+Math.exp(-t))/2}var P=E(0),I=function(t){return L(P)/L(P+_*t)},z=function(t){return w*((L(P)*(C(e=P+_*t)/L(e))-C(P))/S)/k;var e},O=(E(1)-P)/_;if(Math.abs(k)<1e-6||!isFinite(O)){if(Math.abs(w-T)<1e-6)return this.easeTo(e,r);var D=T<w?-1:1;O=Math.abs(Math.log(T/w))/_,z=function(){return 0},I=function(t){return Math.exp(D*_*t)}}return e.duration=\"duration\"in e?+e.duration:1e3*O/(\"screenSpeed\"in e?+e.screenSpeed/_:+e.speed),e.maxDuration&&e.duration>e.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=s!==h,this._pitching=f!==l,this._padding=!i.isPaddingEqual(p),this._prepareEase(r,!1),this._ease((function(e){var a=e*O,d=1/I(a);i.zoom=1===e?u:o+i.scaleZoom(d),n._rotating&&(i.bearing=t.number(s,h,e)),n._pitching&&(i.pitch=t.number(l,f,e)),n._padding&&(i.interpolatePadding(c,p,e),m=i.centerPoint.add(g));var v=1===e?y:i.unproject(x.add(b.mult(z(a))).mult(d));i.setLocationAtPoint(i.renderWorldCopies?v.wrap():v,m),n._fireMoveEvents(r)}),(function(){return n._afterEase(r)}),e),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){return this._stop()},r.prototype._stop=function(t,e){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var r=this._onEaseEnd;delete this._onEaseEnd,r.call(this,e)}if(!t){var n=this.handlers;n&&n.stop()}return this},r.prototype._ease=function(e,r,n){!1===n.animate||0===n.duration?(e(1),r()):(this._easeStart=t.browser.now(),this._easeOptions=n,this._onEaseFrame=e,this._onEaseEnd=r,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var e=Math.min((t.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(e,r){e=t.wrap(e,-180,180);var n=Math.abs(e-r);return Math.abs(e-360-r)<n&&(e-=360),Math.abs(e+360-r)<n&&(e+=360),e},r.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var r=t.lng-e.center.lng;t.lng+=r>180?-360:r<-180?360:0}},r}(t.Evented),va=function(e){void 0===e&&(e={}),this.options=e,t.bindAll([\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this)};va.prototype.getDefaultPosition=function(){return\"bottom-right\"},va.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-attrib\"),this._innerContainer=r.create(\"div\",\"mapboxgl-ctrl-attrib-inner\",this._container),e&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"styledata\",this._updateData),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===e&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container},va.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"styledata\",this._updateData),this._map.off(\"sourcedata\",this._updateData),this._map.off(\"moveend\",this._updateEditLink),this._map.off(\"resize\",this._updateCompact),this._map=void 0,this._attribHTML=void 0},va.prototype._updateEditLink=function(){var e=this._editLink;e||(e=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));var r=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:this._map._requestManager._customAccessToken||t.config.ACCESS_TOKEN}];if(e){var n=r.reduce((function(t,e,n){return e.value&&(t+=e.key+\"=\"+e.value+(n<r.length-1?\"&\":\"\")),t}),\"?\");e.href=t.config.FEEDBACK_URL+\"/\"+n+(this._map._hash?this._map._hash.getHashString(!0):\"\"),e.rel=\"noopener nofollow\"}},va.prototype._updateData=function(t){!t||\"metadata\"!==t.sourceDataType&&\"style\"!==t.dataType||(this._updateAttributions(),this._updateEditLink())},va.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((function(t){return\"string\"!=typeof t?\"\":t}))):\"string\"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){var e=this._map.style.stylesheet;this.styleOwner=e.owner,this.styleId=e.id}var r=this._map.style.sourceCaches;for(var n in r){var a=r[n];if(a.used){var i=a.getSource();i.attribution&&t.indexOf(i.attribution)<0&&t.push(i.attribution)}}t.sort((function(t,e){return t.length-e.length}));var o=(t=t.filter((function(e,r){for(var n=r+1;n<t.length;n++)if(t[n].indexOf(e)>=0)return!1;return!0}))).join(\" | \");o!==this._attribHTML&&(this._attribHTML=o,t.length?(this._innerContainer.innerHTML=o,this._container.classList.remove(\"mapboxgl-attrib-empty\")):this._container.classList.add(\"mapboxgl-attrib-empty\"),this._editLink=null)}},va.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\")};var ya=function(){t.bindAll([\"_updateLogo\"],this),t.bindAll([\"_updateCompact\"],this)};ya.prototype.onAdd=function(t){this._map=t,this._container=r.create(\"div\",\"mapboxgl-ctrl\");var e=r.create(\"a\",\"mapboxgl-ctrl-logo\");return e.target=\"_blank\",e.rel=\"noopener nofollow\",e.href=\"https://www.mapbox.com/\",e.setAttribute(\"aria-label\",this._map._getUIString(\"LogoControl.Title\")),e.setAttribute(\"rel\",\"noopener nofollow\"),this._container.appendChild(e),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._map.on(\"resize\",this._updateCompact),this._updateCompact(),this._container},ya.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo),this._map.off(\"resize\",this._updateCompact)},ya.prototype.getDefaultPosition=function(){return\"bottom-left\"},ya.prototype._updateLogo=function(t){t&&\"metadata\"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},ya.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},ya.prototype._updateCompact=function(){var t=this._container.children;if(t.length){var e=t[0];this._map.getCanvasContainer().offsetWidth<250?e.classList.add(\"mapboxgl-compact\"):e.classList.remove(\"mapboxgl-compact\")}};var xa=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};xa.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},xa.prototype.remove=function(t){for(var e=this._currentlyRunning,r=0,n=e?this._queue.concat(e):this._queue;r<n.length;r+=1){var a=n[r];if(a.id===t)return void(a.cancelled=!0)}},xa.prototype.run=function(t){void 0===t&&(t=0);var e=this._currentlyRunning=this._queue;this._queue=[];for(var r=0,n=e;r<n.length;r+=1){var a=n[r];if(!a.cancelled&&(a.callback(t),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},xa.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var ba={\"FullscreenControl.Enter\":\"Enter fullscreen\",\"FullscreenControl.Exit\":\"Exit fullscreen\",\"GeolocateControl.FindMyLocation\":\"Find my location\",\"GeolocateControl.LocationNotAvailable\":\"Location not available\",\"LogoControl.Title\":\"Mapbox logo\",\"NavigationControl.ResetBearing\":\"Reset bearing to north\",\"NavigationControl.ZoomIn\":\"Zoom in\",\"NavigationControl.ZoomOut\":\"Zoom out\",\"ScaleControl.Feet\":\"ft\",\"ScaleControl.Meters\":\"m\",\"ScaleControl.Kilometers\":\"km\",\"ScaleControl.Miles\":\"mi\",\"ScaleControl.NauticalMiles\":\"nm\"},_a=t.window.HTMLImageElement,wa=t.window.HTMLElement,Ta=t.window.ImageBitmap,ka={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:\"sans-serif\",transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0},Ma=function(n){function a(e){var r=this;if(null!=(e=t.extend({},ka,e)).minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error(\"maxZoom must be greater than or equal to minZoom\");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error(\"maxPitch must be greater than or equal to minPitch\");if(null!=e.minPitch&&e.minPitch<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(null!=e.maxPitch&&e.maxPitch>60)throw new Error(\"maxPitch must be less than or equal to 60\");var a=new wn(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(n.call(this,a,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new xa,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},ba,e.locale),this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),\"string\"==typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else{if(!(e.container instanceof wa))throw new Error(\"Invalid type: 'container' must be a String or HTMLElement.\");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_contextLost\",\"_contextRestored\"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error(\"Failed to initialize WebGL.\");this.on(\"move\",(function(){return r._update(!1)})),this.on(\"moveend\",(function(){return r._update(!1)})),this.on(\"zoom\",(function(){return r._update(!0)})),void 0!==t.window&&(t.window.addEventListener(\"online\",this._onWindowOnline,!1),t.window.addEventListener(\"resize\",this._onWindowResize,!1)),this.handlers=new ga(this,e),this._hash=e.hash&&new kn(\"string\"==typeof e.hash&&e.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new va({customAttribution:e.customAttribution})),this.addControl(new ya,e.logoPosition),this.on(\"style.load\",(function(){r.transform.unmodified&&r.jumpTo(r.style.stylesheet)})),this.on(\"data\",(function(e){r._update(\"style\"===e.dataType),r.fire(new t.Event(e.dataType+\"data\",e))})),this.on(\"dataloading\",(function(e){r.fire(new t.Event(e.dataType+\"dataloading\",e))}))}n&&(a.__proto__=n),(a.prototype=Object.create(n&&n.prototype)).constructor=a;var i={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return a.prototype._getMapId=function(){return this._mapId},a.prototype.addControl=function(e,r){if(void 0===r&&e.getDefaultPosition&&(r=e.getDefaultPosition()),void 0===r&&(r=\"top-right\"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error(\"Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.\")));var n=e.onAdd(this);this._controls.push(e);var a=this._controlPositions[r];return-1!==r.indexOf(\"bottom\")?a.insertBefore(n,a.firstChild):a.appendChild(n),this},a.prototype.removeControl=function(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error(\"Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.\")));var r=this._controls.indexOf(e);return r>-1&&this._controls.splice(r,1),e.onRemove(this),this},a.prototype.resize=function(e){var r=this._containerDimensions(),n=r[0],a=r[1];this._resizeCanvas(n,a),this.transform.resize(n,a),this.painter.resize(n,a);var i=!this._moving;return i&&(this.stop(),this.fire(new t.Event(\"movestart\",e)).fire(new t.Event(\"move\",e))),this.fire(new t.Event(\"resize\",e)),i&&this.fire(new t.Event(\"moveend\",e)),this},a.prototype.getBounds=function(){return this.transform.getBounds()},a.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},a.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},a.prototype.setMinZoom=function(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between -2 and the current maxZoom, inclusive\")},a.prototype.getMinZoom=function(){return this.transform.minZoom},a.prototype.setMaxZoom=function(t){if((t=null==t?22:t)>=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error(\"maxZoom must be greater than the current minZoom\")},a.prototype.getMaxZoom=function(){return this.transform.maxZoom},a.prototype.setMinPitch=function(t){if((t=null==t?0:t)<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()<t&&this.setPitch(t),this;throw new Error(\"minPitch must be between 0 and the current maxPitch, inclusive\")},a.prototype.getMinPitch=function(){return this.transform.minPitch},a.prototype.setMaxPitch=function(t){if((t=null==t?60:t)>60)throw new Error(\"maxPitch must be less than or equal to 60\");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error(\"maxPitch must be greater than the current minPitch\")},a.prototype.getMaxPitch=function(){return this.transform.maxPitch},a.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},a.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},a.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},a.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},a.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},a.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},a.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},a.prototype._createDelegatedListener=function(t,e,r){var n,a=this;if(\"mouseenter\"===t||\"mouseover\"===t){var i=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){var o=a.getLayer(e)?a.queryRenderedFeatures(n.point,{layers:[e]}):[];o.length?i||(i=!0,r.call(a,new zn(t,a,n.originalEvent,{features:o}))):i=!1},mouseout:function(){i=!1}}}}if(\"mouseleave\"===t||\"mouseout\"===t){var o=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){(a.getLayer(e)?a.queryRenderedFeatures(n.point,{layers:[e]}):[]).length?o=!0:o&&(o=!1,r.call(a,new zn(t,a,n.originalEvent)))},mouseout:function(e){o&&(o=!1,r.call(a,new zn(t,a,e.originalEvent)))}}}}return{layer:e,listener:r,delegates:(n={},n[t]=function(t){var n=a.getLayer(e)?a.queryRenderedFeatures(t.point,{layers:[e]}):[];n.length&&(t.features=n,r.call(a,t),delete t.features)},n)}},a.prototype.on=function(t,e,r){if(void 0===r)return n.prototype.on.call(this,t,e);var a=this._createDelegatedListener(t,e,r);for(var i in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(a),a.delegates)this.on(i,a.delegates[i]);return this},a.prototype.once=function(t,e,r){if(void 0===r)return n.prototype.once.call(this,t,e);var a=this._createDelegatedListener(t,e,r);for(var i in a.delegates)this.once(i,a.delegates[i]);return this},a.prototype.off=function(t,e,r){var a=this;return void 0===r?n.prototype.off.call(this,t,e):(this._delegatedListeners&&this._delegatedListeners[t]&&function(n){for(var i=n[t],o=0;o<i.length;o++){var s=i[o];if(s.layer===e&&s.listener===r){for(var l in s.delegates)a.off(l,s.delegates[l]);return i.splice(o,1),a}}}(this._delegatedListeners),this)},a.prototype.queryRenderedFeatures=function(e,r){if(!this.style)return[];var n;if(void 0!==r||void 0===e||e instanceof t.Point||Array.isArray(e)||(r=e,e=void 0),r=r||{},(e=e||[[0,0],[this.transform.width,this.transform.height]])instanceof t.Point||\"number\"==typeof e[0])n=[t.Point.convert(e)];else{var a=t.Point.convert(e[0]),i=t.Point.convert(e[1]);n=[a,new t.Point(i.x,a.y),i,new t.Point(a.x,i.y),a]}return this.style.queryRenderedFeatures(n,r,this.transform)},a.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},a.prototype.setStyle=function(e,r){return!1!==(r=t.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},r)).diff&&r.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&e?(this._diffStyle(e,r),this):(this._localIdeographFontFamily=r.localIdeographFontFamily,this._updateStyle(e,r))},a.prototype._getUIString=function(t){var e=this._locale[t];if(null==e)throw new Error(\"Missing UI string '\"+t+\"'\");return e},a.prototype._updateStyle=function(t,e){return this.style&&(this.style.setEventedParent(null),this.style._remove()),t?(this.style=new qe(this,e||{}),this.style.setEventedParent(this,{style:this.style}),\"string\"==typeof t?this.style.loadURL(t):this.style.loadJSON(t),this):(delete this.style,this)},a.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new qe(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},a.prototype._diffStyle=function(e,r){var n=this;if(\"string\"==typeof e){var a=this._requestManager.normalizeStyleURL(e),i=this._requestManager.transformRequest(a,t.ResourceType.Style);t.getJSON(i,(function(e,a){e?n.fire(new t.ErrorEvent(e)):a&&n._updateDiff(a,r)}))}else\"object\"==typeof e&&this._updateDiff(e,r)},a.prototype._updateDiff=function(e,r){try{this.style.setState(e)&&this._update(!0)}catch(n){t.warnOnce(\"Unable to perform style diff: \"+(n.message||n.error||n)+\".  Rebuilding the style from scratch.\"),this._updateStyle(e,r)}},a.prototype.getStyle=function(){if(this.style)return this.style.serialize()},a.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():t.warnOnce(\"There is no style added to the map.\")},a.prototype.addSource=function(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)},a.prototype.isSourceLoaded=function(e){var r=this.style&&this.style.sourceCaches[e];if(void 0!==r)return r.loaded();this.fire(new t.ErrorEvent(new Error(\"There is no source with ID '\"+e+\"'\")))},a.prototype.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var r=t[e]._tiles;for(var n in r){var a=r[n];if(\"loaded\"!==a.state&&\"errored\"!==a.state)return!1}}return!0},a.prototype.addSourceType=function(t,e,r){return this._lazyInitEmptyStyle(),this.style.addSourceType(t,e,r)},a.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0)},a.prototype.getSource=function(t){return this.style.getSource(t)},a.prototype.addImage=function(e,r,n){void 0===n&&(n={});var a=n.pixelRatio;void 0===a&&(a=1);var i=n.sdf;void 0===i&&(i=!1);var o=n.stretchX,s=n.stretchY,l=n.content;if(this._lazyInitEmptyStyle(),r instanceof _a||Ta&&r instanceof Ta){var c=t.browser.getImageData(r);this.style.addImage(e,{data:new t.RGBAImage({width:c.width,height:c.height},c.data),pixelRatio:a,stretchX:o,stretchY:s,content:l,sdf:i,version:0})}else{if(void 0===r.width||void 0===r.height)return this.fire(new t.ErrorEvent(new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));var u=r;this.style.addImage(e,{data:new t.RGBAImage({width:r.width,height:r.height},new Uint8Array(r.data)),pixelRatio:a,stretchX:o,stretchY:s,content:l,sdf:i,version:0,userImage:u}),u.onAdd&&u.onAdd(this,e)}},a.prototype.updateImage=function(e,r){var n=this.style.getImage(e);if(!n)return this.fire(new t.ErrorEvent(new Error(\"The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.\")));var a=r instanceof _a||Ta&&r instanceof Ta?t.browser.getImageData(r):r,i=a.width,o=a.height,s=a.data;return void 0===i||void 0===o?this.fire(new t.ErrorEvent(new Error(\"Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\"))):i!==n.data.width||o!==n.data.height?this.fire(new t.ErrorEvent(new Error(\"The width and height of the updated image must be that same as the previous version of the image\"))):(n.data.replace(s,!(r instanceof _a||Ta&&r instanceof Ta)),void this.style.updateImage(e,n))},a.prototype.hasImage=function(e){return e?!!this.style.getImage(e):(this.fire(new t.ErrorEvent(new Error(\"Missing required image id\"))),!1)},a.prototype.removeImage=function(t){this.style.removeImage(t)},a.prototype.loadImage=function(e,r){t.getImage(this._requestManager.transformRequest(e,t.ResourceType.Image),r)},a.prototype.listImages=function(){return this.style.listImages()},a.prototype.addLayer=function(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)},a.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0)},a.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0)},a.prototype.getLayer=function(t){return this.style.getLayer(t)},a.prototype.setLayerZoomRange=function(t,e,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0)},a.prototype.setFilter=function(t,e,r){return void 0===r&&(r={}),this.style.setFilter(t,e,r),this._update(!0)},a.prototype.getFilter=function(t){return this.style.getFilter(t)},a.prototype.setPaintProperty=function(t,e,r,n){return void 0===n&&(n={}),this.style.setPaintProperty(t,e,r,n),this._update(!0)},a.prototype.getPaintProperty=function(t,e){return this.style.getPaintProperty(t,e)},a.prototype.setLayoutProperty=function(t,e,r,n){return void 0===n&&(n={}),this.style.setLayoutProperty(t,e,r,n),this._update(!0)},a.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},a.prototype.setLight=function(t,e){return void 0===e&&(e={}),this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)},a.prototype.getLight=function(){return this.style.getLight()},a.prototype.setFeatureState=function(t,e){return this.style.setFeatureState(t,e),this._update()},a.prototype.removeFeatureState=function(t,e){return this.style.removeFeatureState(t,e),this._update()},a.prototype.getFeatureState=function(t){return this.style.getFeatureState(t)},a.prototype.getContainer=function(){return this._container},a.prototype.getCanvasContainer=function(){return this._canvasContainer},a.prototype.getCanvas=function(){return this._canvas},a.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]},a.prototype._detectMissingCSS=function(){\"rgb(250, 128, 114)\"!==t.window.getComputedStyle(this._missingCSSCanary).getPropertyValue(\"background-color\")&&t.warnOnce(\"This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.\")},a.prototype._setupContainer=function(){var t=this._container;t.classList.add(\"mapboxgl-map\"),(this._missingCSSCanary=r.create(\"div\",\"mapboxgl-canary\",t)).style.visibility=\"hidden\",this._detectMissingCSS();var e=this._canvasContainer=r.create(\"div\",\"mapboxgl-canvas-container\",t);this._interactive&&e.classList.add(\"mapboxgl-interactive\"),this._canvas=r.create(\"canvas\",\"mapboxgl-canvas\",e),this._canvas.addEventListener(\"webglcontextlost\",this._contextLost,!1),this._canvas.addEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.setAttribute(\"tabindex\",\"0\"),this._canvas.setAttribute(\"aria-label\",\"Map\");var n=this._containerDimensions();this._resizeCanvas(n[0],n[1]);var a=this._controlContainer=r.create(\"div\",\"mapboxgl-control-container\",t),i=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach((function(t){i[t]=r.create(\"div\",\"mapboxgl-ctrl-\"+t,a)}))},a.prototype._resizeCanvas=function(e,r){var n=t.browser.devicePixelRatio||1;this._canvas.width=n*e,this._canvas.height=n*r,this._canvas.style.width=e+\"px\",this._canvas.style.height=r+\"px\"},a.prototype._setupPainter=function(){var r=t.extend({},e.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),n=this._canvas.getContext(\"webgl\",r)||this._canvas.getContext(\"experimental-webgl\",r);n?(this.painter=new yn(n,this.transform),t.webpSupported.testSupport(n)):this.fire(new t.ErrorEvent(new Error(\"Failed to initialize WebGL\")))},a.prototype._contextLost=function(e){e.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new t.Event(\"webglcontextlost\",{originalEvent:e}))},a.prototype._contextRestored=function(e){this._setupPainter(),this.resize(),this._update(),this.fire(new t.Event(\"webglcontextrestored\",{originalEvent:e}))},a.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},a.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this},a.prototype._requestRenderFrame=function(t){return this._update(),this._renderTaskQueue.add(t)},a.prototype._cancelRenderFrame=function(t){this._renderTaskQueue.remove(t)},a.prototype._render=function(e){var r,n=this,a=0,i=this.painter.context.extTimerQuery;if(this.listens(\"gpu-timing-frame\")&&(r=i.createQueryEXT(),i.beginQueryEXT(i.TIME_ELAPSED_EXT,r),a=t.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(e),!this._removed){var o=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var s=this.transform.zoom,l=t.browser.now();this.style.zoomHistory.update(s,l);var c=new t.EvaluationParameters(s,{now:l,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),u=c.crossFadingFactor();1===u&&u===this._crossFadingFactor||(o=!0,this._crossFadingFactor=u),this.style.update(c)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens(\"gpu-timing-layer\")}),this.fire(new t.Event(\"render\")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new t.Event(\"load\"))),this.style&&(this.style.hasTransitions()||o)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens(\"gpu-timing-frame\")){var h=t.browser.now()-a;i.endQueryEXT(i.TIME_ELAPSED_EXT,r),setTimeout((function(){var e=i.getQueryObjectEXT(r,i.QUERY_RESULT_EXT)/1e6;i.deleteQueryEXT(r),n.fire(new t.Event(\"gpu-timing-frame\",{cpuTime:h,gpuTime:e}))}),50)}if(this.listens(\"gpu-timing-layer\")){var f=this.painter.collectGpuTimers();setTimeout((function(){var e=n.painter.queryGpuTimers(f);n.fire(new t.Event(\"gpu-timing-layer\",{layerTimes:e}))}),50)}return this._sourcesDirty||this._styleDirty||this._placementDirty||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&(this._fullyLoaded||(this._fullyLoaded=!0),this.fire(new t.Event(\"idle\"))),this}},a.prototype.remove=function(){this._hash&&this._hash.remove();for(var e=0,r=this._controls;e<r.length;e+=1)r[e].onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),void 0!==t.window&&(t.window.removeEventListener(\"resize\",this._onWindowResize,!1),t.window.removeEventListener(\"online\",this._onWindowOnline,!1));var n=this.painter.context.gl.getExtension(\"WEBGL_lose_context\");n&&n.loseContext(),Aa(this._canvasContainer),Aa(this._controlContainer),Aa(this._missingCSSCanary),this._container.classList.remove(\"mapboxgl-map\"),this._removed=!0,this.fire(new t.Event(\"remove\"))},a.prototype.triggerRepaint=function(){var e=this;this.style&&!this._frame&&(this._frame=t.browser.frame((function(t){e._frame=null,e._render(t)})))},a.prototype._onWindowOnline=function(){this._update()},a.prototype._onWindowResize=function(t){this._trackResize&&this.resize({originalEvent:t})._update()},i.showTileBoundaries.get=function(){return!!this._showTileBoundaries},i.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},i.showPadding.get=function(){return!!this._showPadding},i.showPadding.set=function(t){this._showPadding!==t&&(this._showPadding=t,this._update())},i.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},i.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())},i.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},i.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},i.repaint.get=function(){return!!this._repaint},i.repaint.set=function(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())},i.vertices.get=function(){return!!this._vertices},i.vertices.set=function(t){this._vertices=t,this._update()},a.prototype._setCacheLimits=function(e,r){t.setCacheLimits(e,r)},i.version.get=function(){return t.version},Object.defineProperties(a.prototype,i),a}(ma);function Aa(t){t.parentNode&&t.parentNode.removeChild(t)}var Sa={showCompass:!0,showZoom:!0,visualizePitch:!1},Ea=function(e){var n=this;this.options=t.extend({},Sa,e),this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",(function(t){return t.preventDefault()})),this.options.showZoom&&(t.bindAll([\"_setButtonTitle\",\"_updateZoomButtons\"],this),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-zoom-in\",(function(t){return n._map.zoomIn({},{originalEvent:t})})),r.create(\"span\",\"mapboxgl-ctrl-icon\",this._zoomInButton).setAttribute(\"aria-hidden\",!0),this._zoomOutButton=this._createButton(\"mapboxgl-ctrl-zoom-out\",(function(t){return n._map.zoomOut({},{originalEvent:t})})),r.create(\"span\",\"mapboxgl-ctrl-icon\",this._zoomOutButton).setAttribute(\"aria-hidden\",!0)),this.options.showCompass&&(t.bindAll([\"_rotateCompassArrow\"],this),this._compass=this._createButton(\"mapboxgl-ctrl-compass\",(function(t){n.options.visualizePitch?n._map.resetNorthPitch({},{originalEvent:t}):n._map.resetNorth({},{originalEvent:t})})),this._compassIcon=r.create(\"span\",\"mapboxgl-ctrl-icon\",this._compass),this._compassIcon.setAttribute(\"aria-hidden\",!0))};Ea.prototype._updateZoomButtons=function(){var t=this._map.getZoom();this._zoomInButton.disabled=t===this._map.getMaxZoom(),this._zoomOutButton.disabled=t===this._map.getMinZoom()},Ea.prototype._rotateCompassArrow=function(){var t=this.options.visualizePitch?\"scale(\"+1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)+\") rotateX(\"+this._map.transform.pitch+\"deg) rotateZ(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\":\"rotate(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\";this._compassIcon.style.transform=t},Ea.prototype.onAdd=function(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,\"ZoomIn\"),this._setButtonTitle(this._zoomOutButton,\"ZoomOut\"),this._map.on(\"zoom\",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,\"ResetBearing\"),this.options.visualizePitch&&this._map.on(\"pitch\",this._rotateCompassArrow),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ca(this._map,this._compass,this.options.visualizePitch)),this._container},Ea.prototype.onRemove=function(){r.remove(this._container),this.options.showZoom&&this._map.off(\"zoom\",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off(\"pitch\",this._rotateCompassArrow),this._map.off(\"rotate\",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map},Ea.prototype._createButton=function(t,e){var n=r.create(\"button\",t,this._container);return n.type=\"button\",n.addEventListener(\"click\",e),n},Ea.prototype._setButtonTitle=function(t,e){var r=this._map._getUIString(\"NavigationControl.\"+e);t.title=r,t.setAttribute(\"aria-label\",r)};var Ca=function(e,n,a){void 0===a&&(a=!1),this._clickTolerance=10,this.element=n,this.mouseRotate=new Gn({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,a&&(this.mousePitch=new Yn({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),t.bindAll([\"mousedown\",\"mousemove\",\"mouseup\",\"touchstart\",\"touchmove\",\"touchend\",\"reset\"],this),r.addEventListener(n,\"mousedown\",this.mousedown),r.addEventListener(n,\"touchstart\",this.touchstart,{passive:!1}),r.addEventListener(n,\"touchmove\",this.touchmove),r.addEventListener(n,\"touchend\",this.touchend),r.addEventListener(n,\"touchcancel\",this.reset)};function La(e,r,n){if(e=new t.LngLat(e.lng,e.lat),r){var a=new t.LngLat(e.lng-360,e.lat),i=new t.LngLat(e.lng+360,e.lat),o=n.locationPoint(e).distSqr(r);n.locationPoint(a).distSqr(r)<o?e=a:n.locationPoint(i).distSqr(r)<o&&(e=i)}for(;Math.abs(e.lng-n.center.lng)>180;){var s=n.locationPoint(e);if(s.x>=0&&s.y>=0&&s.x<=n.width&&s.y<=n.height)break;e.lng>n.center.lng?e.lng-=360:e.lng+=360}return e}Ca.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),r.disableDrag()},Ca.prototype.move=function(t,e){var r=this.map,n=this.mouseRotate.mousemoveWindow(t,e);if(n&&n.bearingDelta&&r.setBearing(r.getBearing()+n.bearingDelta),this.mousePitch){var a=this.mousePitch.mousemoveWindow(t,e);a&&a.pitchDelta&&r.setPitch(r.getPitch()+a.pitchDelta)}},Ca.prototype.off=function(){var t=this.element;r.removeEventListener(t,\"mousedown\",this.mousedown),r.removeEventListener(t,\"touchstart\",this.touchstart,{passive:!1}),r.removeEventListener(t,\"touchmove\",this.touchmove),r.removeEventListener(t,\"touchend\",this.touchend),r.removeEventListener(t,\"touchcancel\",this.reset),this.offTemp()},Ca.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(t.window,\"mousemove\",this.mousemove),r.removeEventListener(t.window,\"mouseup\",this.mouseup)},Ca.prototype.mousedown=function(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:function(){return e.preventDefault()}}),r.mousePos(this.element,e)),r.addEventListener(t.window,\"mousemove\",this.mousemove),r.addEventListener(t.window,\"mouseup\",this.mouseup)},Ca.prototype.mousemove=function(t){this.move(t,r.mousePos(this.element,t))},Ca.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Ca.prototype.touchstart=function(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.down({type:\"mousedown\",button:0,ctrlKey:!0,preventDefault:function(){return t.preventDefault()}},this._startPos))},Ca.prototype.touchmove=function(t){1!==t.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:function(){return t.preventDefault()}},this._lastPos))},Ca.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},Ca.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};var Pa={center:\"translate(-50%,-50%)\",top:\"translate(-50%,0)\",\"top-left\":\"translate(0,0)\",\"top-right\":\"translate(-100%,0)\",bottom:\"translate(-50%,-100%)\",\"bottom-left\":\"translate(0,-100%)\",\"bottom-right\":\"translate(-100%,-100%)\",left:\"translate(0,-50%)\",right:\"translate(-100%,-50%)\"};function Ia(t,e,r){var n=t.classList;for(var a in Pa)n.remove(\"mapboxgl-\"+r+\"-anchor-\"+a);n.add(\"mapboxgl-\"+r+\"-anchor-\"+e)}var za,Oa=function(e){function n(n,a){var i=this;if(e.call(this),(n instanceof t.window.HTMLElement||a)&&(n=t.extend({element:n},a)),t.bindAll([\"_update\",\"_onMove\",\"_onUp\",\"_addDragHandler\",\"_onMapClick\",\"_onKeyPress\"],this),this._anchor=n&&n.anchor||\"center\",this._color=n&&n.color||\"#3FB1CE\",this._draggable=n&&n.draggable||!1,this._state=\"inactive\",this._rotation=n&&n.rotation||0,this._rotationAlignment=n&&n.rotationAlignment||\"auto\",this._pitchAlignment=n&&n.pitchAlignment&&\"auto\"!==n.pitchAlignment?n.pitchAlignment:this._rotationAlignment,n&&n.element)this._element=n.element,this._offset=t.Point.convert(n&&n.offset||[0,0]);else{this._defaultMarker=!0,this._element=r.create(\"div\"),this._element.setAttribute(\"aria-label\",\"Map marker\");var o=r.createNS(\"http://www.w3.org/2000/svg\",\"svg\");o.setAttributeNS(null,\"display\",\"block\"),o.setAttributeNS(null,\"height\",\"41px\"),o.setAttributeNS(null,\"width\",\"27px\"),o.setAttributeNS(null,\"viewBox\",\"0 0 27 41\");var s=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");s.setAttributeNS(null,\"stroke\",\"none\"),s.setAttributeNS(null,\"stroke-width\",\"1\"),s.setAttributeNS(null,\"fill\",\"none\"),s.setAttributeNS(null,\"fill-rule\",\"evenodd\");var l=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");l.setAttributeNS(null,\"fill-rule\",\"nonzero\");var c=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");c.setAttributeNS(null,\"transform\",\"translate(3.0, 29.0)\"),c.setAttributeNS(null,\"fill\",\"#000000\");for(var u=0,h=[{rx:\"10.5\",ry:\"5.25002273\"},{rx:\"10.5\",ry:\"5.25002273\"},{rx:\"9.5\",ry:\"4.77275007\"},{rx:\"8.5\",ry:\"4.29549936\"},{rx:\"7.5\",ry:\"3.81822308\"},{rx:\"6.5\",ry:\"3.34094679\"},{rx:\"5.5\",ry:\"2.86367051\"},{rx:\"4.5\",ry:\"2.38636864\"}];u<h.length;u+=1){var f=h[u],p=r.createNS(\"http://www.w3.org/2000/svg\",\"ellipse\");p.setAttributeNS(null,\"opacity\",\"0.04\"),p.setAttributeNS(null,\"cx\",\"10.5\"),p.setAttributeNS(null,\"cy\",\"5.80029008\"),p.setAttributeNS(null,\"rx\",f.rx),p.setAttributeNS(null,\"ry\",f.ry),c.appendChild(p)}var d=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");d.setAttributeNS(null,\"fill\",this._color);var g=r.createNS(\"http://www.w3.org/2000/svg\",\"path\");g.setAttributeNS(null,\"d\",\"M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z\"),d.appendChild(g);var m=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");m.setAttributeNS(null,\"opacity\",\"0.25\"),m.setAttributeNS(null,\"fill\",\"#000000\");var v=r.createNS(\"http://www.w3.org/2000/svg\",\"path\");v.setAttributeNS(null,\"d\",\"M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z\"),m.appendChild(v);var y=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");y.setAttributeNS(null,\"transform\",\"translate(6.0, 7.0)\"),y.setAttributeNS(null,\"fill\",\"#FFFFFF\");var x=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");x.setAttributeNS(null,\"transform\",\"translate(8.0, 8.0)\");var b=r.createNS(\"http://www.w3.org/2000/svg\",\"circle\");b.setAttributeNS(null,\"fill\",\"#000000\"),b.setAttributeNS(null,\"opacity\",\"0.25\"),b.setAttributeNS(null,\"cx\",\"5.5\"),b.setAttributeNS(null,\"cy\",\"5.5\"),b.setAttributeNS(null,\"r\",\"5.4999962\");var _=r.createNS(\"http://www.w3.org/2000/svg\",\"circle\");_.setAttributeNS(null,\"fill\",\"#FFFFFF\"),_.setAttributeNS(null,\"cx\",\"5.5\"),_.setAttributeNS(null,\"cy\",\"5.5\"),_.setAttributeNS(null,\"r\",\"5.4999962\"),x.appendChild(b),x.appendChild(_),l.appendChild(c),l.appendChild(d),l.appendChild(m),l.appendChild(y),l.appendChild(x),o.appendChild(l),this._element.appendChild(o),this._offset=t.Point.convert(n&&n.offset||[0,-14])}this._element.classList.add(\"mapboxgl-marker\"),this._element.addEventListener(\"dragstart\",(function(t){t.preventDefault()})),this._element.addEventListener(\"mousedown\",(function(t){t.preventDefault()})),this._element.addEventListener(\"focus\",(function(){var t=i._map.getContainer();t.scrollTop=0,t.scrollLeft=0})),Ia(this._element,this._anchor,\"marker\"),this._popup=null}return e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n,n.prototype.addTo=function(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on(\"move\",this._update),t.on(\"moveend\",this._update),this.setDraggable(this._draggable),this._update(),this._map.on(\"click\",this._onMapClick),this},n.prototype.remove=function(){return this._map&&(this._map.off(\"click\",this._onMapClick),this._map.off(\"move\",this._update),this._map.off(\"moveend\",this._update),this._map.off(\"mousedown\",this._addDragHandler),this._map.off(\"touchstart\",this._addDragHandler),this._map.off(\"mouseup\",this._onUp),this._map.off(\"touchend\",this._onUp),this._map.off(\"mousemove\",this._onMove),this._map.off(\"touchmove\",this._onMove),delete this._map),r.remove(this._element),this._popup&&this._popup.remove(),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},n.prototype.getElement=function(){return this._element},n.prototype.setPopup=function(t){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener(\"keypress\",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute(\"tabindex\")),t){if(!(\"offset\"in t.options)){var e=Math.sqrt(Math.pow(13.5,2)/2);t.options.offset=this._defaultMarker?{top:[0,0],\"top-left\":[0,0],\"top-right\":[0,0],bottom:[0,-38.1],\"bottom-left\":[e,-1*(24.6+e)],\"bottom-right\":[-e,-1*(24.6+e)],left:[13.5,-24.6],right:[-13.5,-24.6]}:this._offset}this._popup=t,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute(\"tabindex\"),this._originalTabIndex||this._element.setAttribute(\"tabindex\",\"0\"),this._element.addEventListener(\"keypress\",this._onKeyPress)}return this},n.prototype._onKeyPress=function(t){var e=t.code,r=t.charCode||t.keyCode;\"Space\"!==e&&\"Enter\"!==e&&32!==r&&13!==r||this.togglePopup()},n.prototype._onMapClick=function(t){var e=t.originalEvent.target,r=this._element;this._popup&&(e===r||r.contains(e))&&this.togglePopup()},n.prototype.getPopup=function(){return this._popup},n.prototype.togglePopup=function(){var t=this._popup;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},n.prototype._update=function(t){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=La(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var e=\"\";\"viewport\"===this._rotationAlignment||\"auto\"===this._rotationAlignment?e=\"rotateZ(\"+this._rotation+\"deg)\":\"map\"===this._rotationAlignment&&(e=\"rotateZ(\"+(this._rotation-this._map.getBearing())+\"deg)\");var n=\"\";\"viewport\"===this._pitchAlignment||\"auto\"===this._pitchAlignment?n=\"rotateX(0deg)\":\"map\"===this._pitchAlignment&&(n=\"rotateX(\"+this._map.getPitch()+\"deg)\"),t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),r.setTransform(this._element,Pa[this._anchor]+\" translate(\"+this._pos.x+\"px, \"+this._pos.y+\"px) \"+n+\" \"+e)}},n.prototype.getOffset=function(){return this._offset},n.prototype.setOffset=function(e){return this._offset=t.Point.convert(e),this._update(),this},n.prototype._onMove=function(e){this._pos=e.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents=\"none\",\"pending\"===this._state&&(this._state=\"active\",this.fire(new t.Event(\"dragstart\"))),this.fire(new t.Event(\"drag\"))},n.prototype._onUp=function(){this._element.style.pointerEvents=\"auto\",this._positionDelta=null,this._map.off(\"mousemove\",this._onMove),this._map.off(\"touchmove\",this._onMove),\"active\"===this._state&&this.fire(new t.Event(\"dragend\")),this._state=\"inactive\"},n.prototype._addDragHandler=function(t){this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._state=\"pending\",this._map.on(\"mousemove\",this._onMove),this._map.on(\"touchmove\",this._onMove),this._map.once(\"mouseup\",this._onUp),this._map.once(\"touchend\",this._onUp))},n.prototype.setDraggable=function(t){return this._draggable=!!t,this._map&&(t?(this._map.on(\"mousedown\",this._addDragHandler),this._map.on(\"touchstart\",this._addDragHandler)):(this._map.off(\"mousedown\",this._addDragHandler),this._map.off(\"touchstart\",this._addDragHandler))),this},n.prototype.isDraggable=function(){return this._draggable},n.prototype.setRotation=function(t){return this._rotation=t||0,this._update(),this},n.prototype.getRotation=function(){return this._rotation},n.prototype.setRotationAlignment=function(t){return this._rotationAlignment=t||\"auto\",this._update(),this},n.prototype.getRotationAlignment=function(){return this._rotationAlignment},n.prototype.setPitchAlignment=function(t){return this._pitchAlignment=t&&\"auto\"!==t?t:this._rotationAlignment,this._update(),this},n.prototype.getPitchAlignment=function(){return this._pitchAlignment},n}(t.Evented),Da={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Ra=0,Fa=!1,Ba=function(e){function n(r){e.call(this),this.options=t.extend({},Da,r),t.bindAll([\"_onSuccess\",\"_onError\",\"_onZoom\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\"],this)}return e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n,n.prototype.onAdd=function(e){var n;return this._map=e,this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),n=this._setupUI,void 0!==za?n(za):void 0!==t.window.navigator.permissions?t.window.navigator.permissions.query({name:\"geolocation\"}).then((function(t){n(za=\"denied\"!==t.state)})):n(za=!!t.window.navigator.geolocation),this._container},n.prototype.onRemove=function(){void 0!==this._geolocationWatchID&&(t.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off(\"zoom\",this._onZoom),this._map=void 0,Ra=0,Fa=!1},n.prototype._isOutOfMapMaxBounds=function(t){var e=this._map.getMaxBounds(),r=t.coords;return e&&(r.longitude<e.getWest()||r.longitude>e.getEast()||r.latitude<e.getSouth()||r.latitude>e.getNorth())},n.prototype._setErrorState=function(){switch(this._watchState){case\"WAITING_ACTIVE\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"ACTIVE_LOCK\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\");break;case\"BACKGROUND\":this._watchState=\"BACKGROUND_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\")}},n.prototype._onSuccess=function(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event(\"outofmaxbounds\",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,this._watchState){case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\")}this.options.showUserLocation&&\"OFF\"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(new t.Event(\"geolocate\",e)),this._finish()}},n.prototype._updateCamera=function(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude),n=e.coords.accuracy,a=this._map.getBearing(),i=t.extend({bearing:a},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),i,{geolocateSource:!0})},n.prototype._updateMarker=function(e){if(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(r).addTo(this._map),this._userLocationDotMarker.setLngLat(r).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},n.prototype._updateCircleRadius=function(){var t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),r=this._map.unproject([1,t]),n=e.distanceTo(r),a=Math.ceil(2*this._accuracy/n);this._circleElement.style.width=a+\"px\",this._circleElement.style.height=a+\"px\"},n.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},n.prototype._onError=function(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.disabled=!0;var r=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.title=r,this._geolocateButton.setAttribute(\"aria-label\",r),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&Fa)return;this._setErrorState()}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(new t.Event(\"error\",e)),this._finish()}},n.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},n.prototype._setupUI=function(e){var n=this;if(this._container.addEventListener(\"contextmenu\",(function(t){return t.preventDefault()})),this._geolocateButton=r.create(\"button\",\"mapboxgl-ctrl-geolocate\",this._container),r.create(\"span\",\"mapboxgl-ctrl-icon\",this._geolocateButton).setAttribute(\"aria-hidden\",!0),this._geolocateButton.type=\"button\",!1===e){t.warnOnce(\"Geolocation support is not available so the GeolocateControl will be disabled.\");var a=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.disabled=!0,this._geolocateButton.title=a,this._geolocateButton.setAttribute(\"aria-label\",a)}else{var i=this._map._getUIString(\"GeolocateControl.FindMyLocation\");this._geolocateButton.title=i,this._geolocateButton.setAttribute(\"aria-label\",i)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=r.create(\"div\",\"mapboxgl-user-location-dot\"),this._userLocationDotMarker=new Oa(this._dotElement),this._circleElement=r.create(\"div\",\"mapboxgl-user-location-accuracy-circle\"),this._accuracyCircleMarker=new Oa({element:this._circleElement,pitchAlignment:\"map\"}),this.options.trackUserLocation&&(this._watchState=\"OFF\"),this._map.on(\"zoom\",this._onZoom)),this._geolocateButton.addEventListener(\"click\",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on(\"movestart\",(function(e){e.geolocateSource||\"ACTIVE_LOCK\"!==n._watchState||e.originalEvent&&\"resize\"===e.originalEvent.type||(n._watchState=\"BACKGROUND\",n._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),n._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),n.fire(new t.Event(\"trackuserlocationend\")))}))},n.prototype.trigger=function(){if(!this._setup)return t.warnOnce(\"Geolocate control triggered before added to a map\"),!1;if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(new t.Event(\"trackuserlocationstart\"));break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":Ra--,Fa=!1,this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this.fire(new t.Event(\"trackuserlocationend\"));break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.Event(\"trackuserlocationstart\"))}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"BACKGROUND\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\");break;case\"BACKGROUND_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\")}if(\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){var e;this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),++Ra>1?(e={maximumAge:6e5,timeout:0},Fa=!0):(e=this.options.positionOptions,Fa=!1),this._geolocationWatchID=t.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,e)}}else t.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},n.prototype._clearWatch=function(){t.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)},n}(t.Evented),Na={maxWidth:100,unit:\"metric\"},ja=function(e){this.options=t.extend({},Na,e),t.bindAll([\"_onMove\",\"setUnit\"],this)};function Ua(t,e,r){var n=r&&r.maxWidth||100,a=t._container.clientHeight/2,i=t.unproject([0,a]),o=t.unproject([n,a]),s=i.distanceTo(o);if(r&&\"imperial\"===r.unit){var l=3.2808*s;l>5280?Va(e,n,l/5280,t._getUIString(\"ScaleControl.Miles\")):Va(e,n,l,t._getUIString(\"ScaleControl.Feet\"))}else r&&\"nautical\"===r.unit?Va(e,n,s/1852,t._getUIString(\"ScaleControl.NauticalMiles\")):s>=1e3?Va(e,n,s/1e3,t._getUIString(\"ScaleControl.Kilometers\")):Va(e,n,s,t._getUIString(\"ScaleControl.Meters\"))}function Va(t,e,r,n){var a,i,o,s=(a=r,(i=Math.pow(10,(\"\"+Math.floor(a)).length-1))*(o=(o=a/i)>=10?10:o>=5?5:o>=3?3:o>=2?2:o>=1?1:function(t){var e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(o)));t.style.width=e*(s/r)+\"px\",t.innerHTML=s+\"&nbsp;\"+n}ja.prototype.getDefaultPosition=function(){return\"bottom-left\"},ja.prototype._onMove=function(){Ua(this._map,this._container,this.options)},ja.prototype.onAdd=function(t){return this._map=t,this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container},ja.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},ja.prototype.setUnit=function(t){this.options.unit=t,Ua(this._map,this._container,this.options)};var qa=function(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.window.HTMLElement?this._container=e.container:t.warnOnce(\"Full screen control 'container' must be a DOM element.\")),t.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in t.window.document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in t.window.document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in t.window.document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in t.window.document&&(this._fullscreenchange=\"MSFullscreenChange\")};qa.prototype.onAdd=function(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display=\"none\",t.warnOnce(\"This device does not support fullscreen mode.\")),this._controlContainer},qa.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},qa.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},qa.prototype._setupUI=function(){var e=this._fullscreenButton=r.create(\"button\",\"mapboxgl-ctrl-fullscreen\",this._controlContainer);r.create(\"span\",\"mapboxgl-ctrl-icon\",e).setAttribute(\"aria-hidden\",!0),e.type=\"button\",this._updateTitle(),this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),t.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},qa.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute(\"aria-label\",t),this._fullscreenButton.title=t},qa.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?\"FullscreenControl.Exit\":\"FullscreenControl.Enter\")},qa.prototype._isFullscreen=function(){return this._fullscreen},qa.prototype._changeIcon=function(){(t.window.document.fullscreenElement||t.window.document.mozFullScreenElement||t.window.document.webkitFullscreenElement||t.window.document.msFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(\"mapboxgl-ctrl-shrink\"),this._fullscreenButton.classList.toggle(\"mapboxgl-ctrl-fullscreen\"),this._updateTitle())},qa.prototype._onClickFullscreen=function(){this._isFullscreen()?t.window.document.exitFullscreen?t.window.document.exitFullscreen():t.window.document.mozCancelFullScreen?t.window.document.mozCancelFullScreen():t.window.document.msExitFullscreen?t.window.document.msExitFullscreen():t.window.document.webkitCancelFullScreen&&t.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Ha={closeButton:!0,closeOnClick:!0,className:\"\",maxWidth:\"240px\"},Ga=function(e){function n(r){e.call(this),this.options=t.extend(Object.create(Ha),r),t.bindAll([\"_update\",\"_onClose\",\"remove\",\"_onMouseMove\",\"_onMouseUp\",\"_onDrag\"],this)}return e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n,n.prototype.addTo=function(e){return this._map&&this.remove(),this._map=e,this.options.closeOnClick&&this._map.on(\"click\",this._onClose),this.options.closeOnMove&&this._map.on(\"move\",this._onClose),this._map.on(\"remove\",this.remove),this._update(),this._trackPointer?(this._map.on(\"mousemove\",this._onMouseMove),this._map.on(\"mouseup\",this._onMouseUp),this._container&&this._container.classList.add(\"mapboxgl-popup-track-pointer\"),this._map._canvasContainer.classList.add(\"mapboxgl-track-pointer\")):this._map.on(\"move\",this._update),this.fire(new t.Event(\"open\")),this},n.prototype.isOpen=function(){return!!this._map},n.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off(\"move\",this._update),this._map.off(\"move\",this._onClose),this._map.off(\"click\",this._onClose),this._map.off(\"remove\",this.remove),this._map.off(\"mousemove\",this._onMouseMove),this._map.off(\"mouseup\",this._onMouseUp),this._map.off(\"drag\",this._onDrag),delete this._map),this.fire(new t.Event(\"close\")),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on(\"move\",this._update),this._map.off(\"mousemove\",this._onMouseMove),this._container&&this._container.classList.remove(\"mapboxgl-popup-track-pointer\"),this._map._canvasContainer.classList.remove(\"mapboxgl-track-pointer\")),this},n.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off(\"move\",this._update),this._map.on(\"mousemove\",this._onMouseMove),this._map.on(\"drag\",this._onDrag),this._container&&this._container.classList.add(\"mapboxgl-popup-track-pointer\"),this._map._canvasContainer.classList.add(\"mapboxgl-track-pointer\")),this},n.prototype.getElement=function(){return this._container},n.prototype.setText=function(e){return this.setDOMContent(t.window.document.createTextNode(e))},n.prototype.setHTML=function(e){var r,n=t.window.document.createDocumentFragment(),a=t.window.document.createElement(\"body\");for(a.innerHTML=e;r=a.firstChild;)n.appendChild(r);return this.setDOMContent(n)},n.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},n.prototype.setMaxWidth=function(t){return this.options.maxWidth=t,this._update(),this},n.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},n.prototype.addClassName=function(t){this._container&&this._container.classList.add(t)},n.prototype.removeClassName=function(t){this._container&&this._container.classList.remove(t)},n.prototype.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},n.prototype._createContent=function(){this._content&&r.remove(this._content),this._content=r.create(\"div\",\"mapboxgl-popup-content\",this._container),this.options.closeButton&&(this._closeButton=r.create(\"button\",\"mapboxgl-popup-close-button\",this._content),this._closeButton.type=\"button\",this._closeButton.setAttribute(\"aria-label\",\"Close popup\"),this._closeButton.innerHTML=\"&#215;\",this._closeButton.addEventListener(\"click\",this._onClose))},n.prototype._onMouseUp=function(t){this._update(t.point)},n.prototype._onMouseMove=function(t){this._update(t.point)},n.prototype._onDrag=function(t){this._update(t.point)},n.prototype._update=function(e){var n=this;if(this._map&&(this._lngLat||this._trackPointer)&&this._content&&(this._container||(this._container=r.create(\"div\",\"mapboxgl-popup\",this._map.getContainer()),this._tip=r.create(\"div\",\"mapboxgl-popup-tip\",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(\" \").forEach((function(t){return n._container.classList.add(t)})),this._trackPointer&&this._container.classList.add(\"mapboxgl-popup-track-pointer\")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=La(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||e)){var a=this._pos=this._trackPointer&&e?e:this._map.project(this._lngLat),i=this.options.anchor,o=function e(r){if(r){if(\"number\"==typeof r){var n=Math.round(Math.sqrt(.5*Math.pow(r,2)));return{center:new t.Point(0,0),top:new t.Point(0,r),\"top-left\":new t.Point(n,n),\"top-right\":new t.Point(-n,n),bottom:new t.Point(0,-r),\"bottom-left\":new t.Point(n,-n),\"bottom-right\":new t.Point(-n,-n),left:new t.Point(r,0),right:new t.Point(-r,0)}}if(r instanceof t.Point||Array.isArray(r)){var a=t.Point.convert(r);return{center:a,top:a,\"top-left\":a,\"top-right\":a,bottom:a,\"bottom-left\":a,\"bottom-right\":a,left:a,right:a}}return{center:t.Point.convert(r.center||[0,0]),top:t.Point.convert(r.top||[0,0]),\"top-left\":t.Point.convert(r[\"top-left\"]||[0,0]),\"top-right\":t.Point.convert(r[\"top-right\"]||[0,0]),bottom:t.Point.convert(r.bottom||[0,0]),\"bottom-left\":t.Point.convert(r[\"bottom-left\"]||[0,0]),\"bottom-right\":t.Point.convert(r[\"bottom-right\"]||[0,0]),left:t.Point.convert(r.left||[0,0]),right:t.Point.convert(r.right||[0,0])}}return e(new t.Point(0,0))}(this.options.offset);if(!i){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=a.y+o.bottom.y<c?[\"top\"]:a.y>this._map.transform.height-c?[\"bottom\"]:[],a.x<l/2?s.push(\"left\"):a.x>this._map.transform.width-l/2&&s.push(\"right\"),i=0===s.length?\"bottom\":s.join(\"-\")}var u=a.add(o[i]).round();r.setTransform(this._container,Pa[i]+\" translate(\"+u.x+\"px,\"+u.y+\"px)\"),Ia(this._container,i,\"popup\")}},n.prototype._onClose=function(){this.remove()},n}(t.Evented),Ya={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Ma,NavigationControl:Ea,GeolocateControl:Ba,AttributionControl:va,ScaleControl:ja,FullscreenControl:qa,Popup:Ga,Marker:Oa,Style:qe,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:function(){Bt().acquire(Ot)},clearPrewarmedResources:function(){var t=Rt;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(Ot),Rt=null):console.warn(\"Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()\"))},get accessToken(){return t.config.ACCESS_TOKEN},set accessToken(e){t.config.ACCESS_TOKEN=e},get baseApiUrl(){return t.config.API_URL},set baseApiUrl(e){t.config.API_URL=e},get workerCount(){return Dt.workerCount},set workerCount(t){Dt.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage:function(e){t.clearTileCache(e)},workerUrl:\"\"};return Ya})),r}))},{}],448:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=1<<t+1,r=new Array(e),n=0;n<e;++n)r[n]=i(t,n);return r};var n=t(\"convex-hull\");function a(t,e,r){for(var n=new Array(t),a=0;a<t;++a)n[a]=0,a===e&&(n[a]+=.5),a===r&&(n[a]+=.5);return n}function i(t,e){if(0===e||e===(1<<t+1)-1)return[];for(var r=[],i=[],o=0;o<=t;++o)if(e&1<<o){r.push(a(t,o-1,o-1)),i.push(null);for(var s=0;s<=t;++s)~e&1<<s&&(r.push(a(t,o-1,s-1)),i.push([o,s]))}var l=n(r),c=[];t:for(o=0;o<l.length;++o){var u=l[o],h=[];for(s=0;s<u.length;++s){if(!i[u[s]])continue t;h.push(i[u[s]].slice())}c.push(h)}return c}},{\"convex-hull\":135}],449:[function(t,e,r){var n=t(\"./normalize\"),a=t(\"gl-mat4/create\"),i=t(\"gl-mat4/clone\"),o=t(\"gl-mat4/determinant\"),s=t(\"gl-mat4/invert\"),l=t(\"gl-mat4/transpose\"),c={length:t(\"gl-vec3/length\"),normalize:t(\"gl-vec3/normalize\"),dot:t(\"gl-vec3/dot\"),cross:t(\"gl-vec3/cross\")},u=a(),h=a(),f=[0,0,0,0],p=[[0,0,0],[0,0,0],[0,0,0]],d=[0,0,0];function g(t,e,r,n,a){t[0]=e[0]*n+r[0]*a,t[1]=e[1]*n+r[1]*a,t[2]=e[2]*n+r[2]*a}e.exports=function(t,e,r,a,m,v){if(e||(e=[0,0,0]),r||(r=[0,0,0]),a||(a=[0,0,0]),m||(m=[0,0,0,1]),v||(v=[0,0,0,1]),!n(u,t))return!1;if(i(h,u),h[3]=0,h[7]=0,h[11]=0,h[15]=1,Math.abs(o(h)<1e-8))return!1;var y,x,b,_,w,T,k,M=u[3],A=u[7],S=u[11],E=u[12],C=u[13],L=u[14],P=u[15];if(0!==M||0!==A||0!==S){if(f[0]=M,f[1]=A,f[2]=S,f[3]=P,!s(h,h))return!1;l(h,h),y=m,b=h,_=(x=f)[0],w=x[1],T=x[2],k=x[3],y[0]=b[0]*_+b[4]*w+b[8]*T+b[12]*k,y[1]=b[1]*_+b[5]*w+b[9]*T+b[13]*k,y[2]=b[2]*_+b[6]*w+b[10]*T+b[14]*k,y[3]=b[3]*_+b[7]*w+b[11]*T+b[15]*k}else m[0]=m[1]=m[2]=0,m[3]=1;if(e[0]=E,e[1]=C,e[2]=L,function(t,e){t[0][0]=e[0],t[0][1]=e[1],t[0][2]=e[2],t[1][0]=e[4],t[1][1]=e[5],t[1][2]=e[6],t[2][0]=e[8],t[2][1]=e[9],t[2][2]=e[10]}(p,u),r[0]=c.length(p[0]),c.normalize(p[0],p[0]),a[0]=c.dot(p[0],p[1]),g(p[1],p[1],p[0],1,-a[0]),r[1]=c.length(p[1]),c.normalize(p[1],p[1]),a[0]/=r[1],a[1]=c.dot(p[0],p[2]),g(p[2],p[2],p[0],1,-a[1]),a[2]=c.dot(p[1],p[2]),g(p[2],p[2],p[1],1,-a[2]),r[2]=c.length(p[2]),c.normalize(p[2],p[2]),a[1]/=r[2],a[2]/=r[2],c.cross(d,p[1],p[2]),c.dot(p[0],d)<0)for(var I=0;I<3;I++)r[I]*=-1,p[I][0]*=-1,p[I][1]*=-1,p[I][2]*=-1;return v[0]=.5*Math.sqrt(Math.max(1+p[0][0]-p[1][1]-p[2][2],0)),v[1]=.5*Math.sqrt(Math.max(1-p[0][0]+p[1][1]-p[2][2],0)),v[2]=.5*Math.sqrt(Math.max(1-p[0][0]-p[1][1]+p[2][2],0)),v[3]=.5*Math.sqrt(Math.max(1+p[0][0]+p[1][1]+p[2][2],0)),p[2][1]>p[1][2]&&(v[0]=-v[0]),p[0][2]>p[2][0]&&(v[1]=-v[1]),p[1][0]>p[0][1]&&(v[2]=-v[2]),!0}},{\"./normalize\":450,\"gl-mat4/clone\":272,\"gl-mat4/create\":273,\"gl-mat4/determinant\":274,\"gl-mat4/invert\":278,\"gl-mat4/transpose\":289,\"gl-vec3/cross\":339,\"gl-vec3/dot\":344,\"gl-vec3/length\":354,\"gl-vec3/normalize\":361}],450:[function(t,e,r){e.exports=function(t,e){var r=e[15];if(0===r)return!1;for(var n=1/r,a=0;a<16;a++)t[a]=e[a]*n;return!0}},{}],451:[function(t,e,r){var n=t(\"gl-vec3/lerp\"),a=t(\"mat4-recompose\"),i=t(\"mat4-decompose\"),o=t(\"gl-mat4/determinant\"),s=t(\"quat-slerp\"),l=h(),c=h(),u=h();function h(){return{translate:f(),scale:f(1),skew:f(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function f(t){return[t||0,t||0,t||0]}e.exports=function(t,e,r,h){if(0===o(e)||0===o(r))return!1;var f=i(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),p=i(r,c.translate,c.scale,c.skew,c.perspective,c.quaternion);return!(!f||!p)&&(n(u.translate,l.translate,c.translate,h),n(u.skew,l.skew,c.skew,h),n(u.scale,l.scale,c.scale,h),n(u.perspective,l.perspective,c.perspective,h),s(u.quaternion,l.quaternion,c.quaternion,h),a(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),!0)}},{\"gl-mat4/determinant\":274,\"gl-vec3/lerp\":355,\"mat4-decompose\":449,\"mat4-recompose\":452,\"quat-slerp\":501}],452:[function(t,e,r){var n={identity:t(\"gl-mat4/identity\"),translate:t(\"gl-mat4/translate\"),multiply:t(\"gl-mat4/multiply\"),create:t(\"gl-mat4/create\"),scale:t(\"gl-mat4/scale\"),fromRotationTranslation:t(\"gl-mat4/fromRotationTranslation\")},a=(n.create(),n.create());e.exports=function(t,e,r,i,o,s){return n.identity(t),n.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],n.identity(a),0!==i[2]&&(a[9]=i[2],n.multiply(t,t,a)),0!==i[1]&&(a[9]=0,a[8]=i[1],n.multiply(t,t,a)),0!==i[0]&&(a[8]=0,a[4]=i[0],n.multiply(t,t,a)),n.scale(t,t,r),t}},{\"gl-mat4/create\":273,\"gl-mat4/fromRotationTranslation\":276,\"gl-mat4/identity\":277,\"gl-mat4/multiply\":280,\"gl-mat4/scale\":287,\"gl-mat4/translate\":288}],453:[function(t,e,r){\"use strict\";e.exports=Math.log2||function(t){return Math.log(t)*Math.LOG2E}},{}],454:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\"),a=t(\"mat4-interpolate\"),i=t(\"gl-mat4/invert\"),o=t(\"gl-mat4/rotateX\"),s=t(\"gl-mat4/rotateY\"),l=t(\"gl-mat4/rotateZ\"),c=t(\"gl-mat4/lookAt\"),u=t(\"gl-mat4/translate\"),h=(t(\"gl-mat4/scale\"),t(\"gl-vec3/normalize\")),f=[0,0,0];function p(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}e.exports=function(t){return new p((t=t||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var d=p.prototype;d.recalcMatrix=function(t){var e=this._time,r=n.le(e,t),o=this.computedMatrix;if(!(r<0)){var s=this._components;if(r===e.length-1)for(var l=16*r,c=0;c<16;++c)o[c]=s[l++];else{var u=e[r+1]-e[r],f=(l=16*r,this.prevMatrix),p=!0;for(c=0;c<16;++c)f[c]=s[l++];var d=this.nextMatrix;for(c=0;c<16;++c)d[c]=s[l++],p=p&&f[c]===d[c];if(u<1e-6||p)for(c=0;c<16;++c)o[c]=f[c];else a(o,f,d,(t-e[r])/u)}var g=this.computedUp;g[0]=o[1],g[1]=o[5],g[2]=o[9],h(g,g);var m=this.computedInverse;i(m,o);var v=this.computedEye,y=m[15];v[0]=m[12]/y,v[1]=m[13]/y,v[2]=m[14]/y;var x=this.computedCenter,b=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)x[c]=v[c]-o[2+4*c]*b}},d.idle=function(t){if(!(t<this.lastT())){for(var e=this._components,r=e.length-16,n=0;n<16;++n)e.push(e[r++]);this._time.push(t)}},d.flush=function(t){var e=n.gt(this._time,t)-2;e<0||(this._time.splice(0,e),this._components.splice(0,16*e))},d.lastT=function(){return this._time[this._time.length-1]},d.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||f,n=n||this.computedUp,this.setMatrix(t,c(this.computedMatrix,e,r,n));for(var a=0,i=0;i<3;++i)a+=Math.pow(r[i]-e[i],2);a=Math.log(Math.sqrt(a)),this.computedRadius[0]=a},d.rotate=function(t,e,r,n){this.recalcMatrix(t);var a=this.computedInverse;e&&s(a,a,e),r&&o(a,a,r),n&&l(a,a,n),this.setMatrix(t,i(this.computedMatrix,a))};var g=[0,0,0];d.pan=function(t,e,r,n){g[0]=-(e||0),g[1]=-(r||0),g[2]=-(n||0),this.recalcMatrix(t);var a=this.computedInverse;u(a,a,g),this.setMatrix(t,i(a,a))},d.translate=function(t,e,r,n){g[0]=e||0,g[1]=r||0,g[2]=n||0,this.recalcMatrix(t);var a=this.computedMatrix;u(a,a,g),this.setMatrix(t,a)},d.setMatrix=function(t,e){if(!(t<this.lastT())){this._time.push(t);for(var r=0;r<16;++r)this._components.push(e[r])}},d.setDistance=function(t,e){this.computedRadius[0]=e},d.setDistanceLimits=function(t,e){var r=this._limits;r[0]=t,r[1]=e},d.getDistanceLimits=function(t){var e=this._limits;return t?(t[0]=e[0],t[1]=e[1],t):e}},{\"binary-search-bounds\":455,\"gl-mat4/invert\":278,\"gl-mat4/lookAt\":279,\"gl-mat4/rotateX\":284,\"gl-mat4/rotateY\":285,\"gl-mat4/rotateZ\":286,\"gl-mat4/scale\":287,\"gl-mat4/translate\":288,\"gl-vec3/normalize\":361,\"mat4-interpolate\":451}],455:[function(t,e,r){arguments[4][243][0].apply(r,arguments)},{dup:243}],456:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.length;if(e<3){for(var r=new Array(e),a=0;a<e;++a)r[a]=a;return 2===e&&t[0][0]===t[1][0]&&t[0][1]===t[1][1]?[0]:r}var i=new Array(e);for(a=0;a<e;++a)i[a]=a;i.sort((function(e,r){var n=t[e][0]-t[r][0];return n||t[e][1]-t[r][1]}));var o=[i[0],i[1]],s=[i[0],i[1]];for(a=2;a<e;++a){for(var l=i[a],c=t[l],u=o.length;u>1&&n(t[o[u-2]],t[o[u-1]],c)<=0;)u-=1,o.pop();for(o.push(l),u=s.length;u>1&&n(t[s[u-2]],t[s[u-1]],c)>=0;)u-=1,s.pop();s.push(l)}r=new Array(s.length+o.length-2);for(var h=0,f=(a=0,o.length);a<f;++a)r[h++]=o[a];for(var p=s.length-2;p>0;--p)r[h++]=s[p];return r};var n=t(\"robust-orientation\")[3]},{\"robust-orientation\":520}],457:[function(t,e,r){\"use strict\";e.exports=function(t,e){e||(e=t,t=window);var r=0,a=0,i=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return\"altKey\"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),\"shiftKey\"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),\"ctrlKey\"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),\"metaKey\"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=n.x(s),u=n.y(s);\"buttons\"in s&&(t=0|s.buttons),(t!==r||c!==a||u!==i||l(s))&&(r=0|t,a=c||0,i=u||0,e&&e(r,a,i,o))}function u(t){c(0,t)}function h(){(r||a||i||o.shift||o.alt||o.meta||o.control)&&(a=i=0,r=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function f(t){l(t)&&e&&e(r,a,i,o)}function p(t){0===n.buttons(t)?c(0,t):c(r,t)}function d(t){c(r|n.buttons(t),t)}function g(t){c(r&~n.buttons(t),t)}function m(){s||(s=!0,t.addEventListener(\"mousemove\",p),t.addEventListener(\"mousedown\",d),t.addEventListener(\"mouseup\",g),t.addEventListener(\"mouseleave\",u),t.addEventListener(\"mouseenter\",u),t.addEventListener(\"mouseout\",u),t.addEventListener(\"mouseover\",u),t.addEventListener(\"blur\",h),t.addEventListener(\"keyup\",f),t.addEventListener(\"keydown\",f),t.addEventListener(\"keypress\",f),t!==window&&(window.addEventListener(\"blur\",h),window.addEventListener(\"keyup\",f),window.addEventListener(\"keydown\",f),window.addEventListener(\"keypress\",f)))}m();var v={element:t};return Object.defineProperties(v,{enabled:{get:function(){return s},set:function(e){e?m():function(){if(!s)return;s=!1,t.removeEventListener(\"mousemove\",p),t.removeEventListener(\"mousedown\",d),t.removeEventListener(\"mouseup\",g),t.removeEventListener(\"mouseleave\",u),t.removeEventListener(\"mouseenter\",u),t.removeEventListener(\"mouseout\",u),t.removeEventListener(\"mouseover\",u),t.removeEventListener(\"blur\",h),t.removeEventListener(\"keyup\",f),t.removeEventListener(\"keydown\",f),t.removeEventListener(\"keypress\",f),t!==window&&(window.removeEventListener(\"blur\",h),window.removeEventListener(\"keyup\",f),window.removeEventListener(\"keydown\",f),window.removeEventListener(\"keypress\",f))}()},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return a},enumerable:!0},y:{get:function(){return i},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),v};var n=t(\"mouse-event\")},{\"mouse-event\":459}],458:[function(t,e,r){var n={left:0,top:0};e.exports=function(t,e,r){e=e||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var a=t.clientX||0,i=t.clientY||0,o=(s=e,s===window||s===document||s===document.body?n:s.getBoundingClientRect());var s;return r[0]=a-o.left,r[1]=i-o.top,r}},{}],459:[function(t,e,r){\"use strict\";function n(t){return t.target||t.srcElement||window}r.buttons=function(t){if(\"object\"==typeof t){if(\"buttons\"in t)return t.buttons;if(\"which\"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<<e-1}else if(\"button\"in t){var e;if(1===(e=t.button))return 4;if(2===e)return 2;if(e>=0)return 1<<e}}return 0},r.element=n,r.x=function(t){if(\"object\"==typeof t){if(\"offsetX\"in t)return t.offsetX;var e=n(t).getBoundingClientRect();return t.clientX-e.left}return 0},r.y=function(t){if(\"object\"==typeof t){if(\"offsetY\"in t)return t.offsetY;var e=n(t).getBoundingClientRect();return t.clientY-e.top}return 0}},{}],460:[function(t,e,r){\"use strict\";var n=t(\"to-px\");e.exports=function(t,e,r){\"function\"==typeof t&&(r=!!e,e=t,t=window);var a=n(\"ex\",t),i=function(t){r&&t.preventDefault();var n=t.deltaX||0,i=t.deltaY||0,o=t.deltaZ||0,s=1;switch(t.deltaMode){case 1:s=a;break;case 2:s=window.innerHeight}if(i*=s,o*=s,(n*=s)||i||o)return e(n,i,o,t)};return t.addEventListener(\"wheel\",i),i}},{\"to-px\":550}],461:[function(t,e,r){\"use strict\";var n=t(\"typedarray-pool\");function a(t){return\"a\"+t}function i(t){return\"d\"+t}function o(t,e){return\"c\"+t+\"_\"+e}function s(t){return\"s\"+t}function l(t,e){return\"t\"+t+\"_\"+e}function c(t){return\"o\"+t}function u(t){return\"x\"+t}function h(t){return\"p\"+t}function f(t,e){return\"d\"+t+\"_\"+e}function p(t){return\"i\"+t}function d(t,e){return\"u\"+t+\"_\"+e}function g(t){return\"b\"+t}function m(t){return\"y\"+t}function v(t){return\"e\"+t}function y(t){return\"v\"+t}e.exports=function(t){function e(t){throw new Error(\"ndarray-extract-contour: \"+t)}\"object\"!=typeof t&&e(\"Must specify arguments\");var r=t.order;Array.isArray(r)||e(\"Must specify order\");var b=t.arrayArguments||1;b<1&&e(\"Must have at least one array argument\");var _=t.scalarArguments||0;_<0&&e(\"Scalar arg count must be > 0\");\"function\"!=typeof t.vertex&&e(\"Must specify vertex creation function\");\"function\"!=typeof t.cell&&e(\"Must specify cell creation function\");\"function\"!=typeof t.phase&&e(\"Must specify phase function\");for(var w=t.getters||[],T=new Array(b),k=0;k<b;++k)w.indexOf(k)>=0?T[k]=!0:T[k]=!1;return function(t,e,r,b,_,w){var T=w.length,k=_.length;if(k<2)throw new Error(\"ndarray-extract-contour: Dimension must be at least 2\");for(var M=\"extractContour\"+_.join(\"_\"),A=[],S=[],E=[],C=0;C<T;++C)E.push(a(C));for(C=0;C<b;++C)E.push(u(C));for(C=0;C<k;++C)S.push(s(C)+\"=\"+a(0)+\".shape[\"+C+\"]|0\");for(C=0;C<T;++C){S.push(i(C)+\"=\"+a(C)+\".data\",c(C)+\"=\"+a(C)+\".offset|0\");for(var L=0;L<k;++L)S.push(l(C,L)+\"=\"+a(C)+\".stride[\"+L+\"]|0\")}for(C=0;C<T;++C){S.push(h(C)+\"=\"+c(C)),S.push(o(C,0));for(L=1;L<1<<k;++L){for(var P=[],I=0;I<k;++I)L&1<<I&&P.push(\"-\"+l(C,I));S.push(f(C,L)+\"=(\"+P.join(\"\")+\")|0\"),S.push(o(C,L)+\"=0\")}}for(C=0;C<T;++C)for(L=0;L<k;++L){var z=[l(C,_[L])];L>0&&z.push(l(C,_[L-1])+\"*\"+s(_[L-1])),S.push(d(C,_[L])+\"=(\"+z.join(\"-\")+\")|0\")}for(C=0;C<k;++C)S.push(p(C)+\"=0\");S.push(\"N=0\");var O=[\"2\"];for(C=k-2;C>=0;--C)O.push(s(_[C]));S.push(\"Q=(\"+O.join(\"*\")+\")|0\",\"P=mallocUint32(Q)\",\"V=mallocUint32(Q)\",\"X=0\"),S.push(g(0)+\"=0\");for(L=1;L<1<<k;++L){var D=[],R=[];for(I=0;I<k;++I)L&1<<I&&(0===R.length?D.push(\"1\"):D.unshift(R.join(\"*\"))),R.push(s(_[I]));var F=\"\";D[0].indexOf(s(_[k-2]))<0&&(F=\"-\");var B=x(k,L,_);S.push(v(B)+\"=(-\"+D.join(\"-\")+\")|0\",m(B)+\"=(\"+F+D.join(\"-\")+\")|0\",g(B)+\"=0\")}function N(t,e){A.push(\"for(\",p(_[t]),\"=\",e,\";\",p(_[t]),\"<\",s(_[t]),\";\",\"++\",p(_[t]),\"){\")}function j(t){for(var e=0;e<T;++e)A.push(h(e),\"+=\",d(e,_[t]),\";\");A.push(\"}\")}function U(){for(var t=1;t<1<<k;++t)A.push(\"T\",\"=\",v(t),\";\",v(t),\"=\",m(t),\";\",m(t),\"=\",\"T\",\";\")}S.push(y(0)+\"=0\",\"T=0\"),function t(e,r){if(e<0)!function(t){for(var e=0;e<T;++e)w[e]?A.push(o(e,0),\"=\",i(e),\".get(\",h(e),\");\"):A.push(o(e,0),\"=\",i(e),\"[\",h(e),\"];\");var r=[];for(e=0;e<T;++e)r.push(o(e,0));for(e=0;e<b;++e)r.push(u(e));A.push(g(0),\"=\",\"P\",\"[\",\"X\",\"]=phase(\",r.join(),\");\");for(var n=1;n<1<<k;++n)A.push(g(n),\"=\",\"P\",\"[\",\"X\",\"+\",v(n),\"];\");var a=[];for(n=1;n<1<<k;++n)a.push(\"(\"+g(0)+\"!==\"+g(n)+\")\");A.push(\"if(\",a.join(\"||\"),\"){\");var s=[];for(e=0;e<k;++e)s.push(p(e));for(e=0;e<T;++e){s.push(o(e,0));for(n=1;n<1<<k;++n)w[e]?A.push(o(e,n),\"=\",i(e),\".get(\",h(e),\"+\",f(e,n),\");\"):A.push(o(e,n),\"=\",i(e),\"[\",h(e),\"+\",f(e,n),\"];\"),s.push(o(e,n))}for(e=0;e<1<<k;++e)s.push(g(e));for(e=0;e<b;++e)s.push(u(e));A.push(\"vertex(\",s.join(),\");\",y(0),\"=\",\"V\",\"[\",\"X\",\"]=\",\"N\",\"++;\");var l=(1<<k)-1,c=g(l);for(n=0;n<k;++n)if(0==(t&~(1<<n))){for(var d=l^1<<n,m=g(d),x=[],_=d;_>0;_=_-1&d)x.push(\"V[X+\"+v(_)+\"]\");x.push(y(0));for(_=0;_<T;++_)1&n?x.push(o(_,l),o(_,d)):x.push(o(_,d),o(_,l));1&n?x.push(c,m):x.push(m,c);for(_=0;_<b;++_)x.push(u(_));A.push(\"if(\",c,\"!==\",m,\"){\",\"face(\",x.join(),\")}\")}A.push(\"}\",\"X\",\"+=1;\")}(r);else{!function(t){for(var e=t-1;e>=0;--e)N(e,0);var r=[];for(e=0;e<T;++e)w[e]?r.push(i(e)+\".get(\"+h(e)+\")\"):r.push(i(e)+\"[\"+h(e)+\"]\");for(e=0;e<b;++e)r.push(u(e));for(A.push(\"P\",\"[\",\"X\",\"++]=phase(\",r.join(),\");\"),e=0;e<t;++e)j(e);for(var n=0;n<T;++n)A.push(h(n),\"+=\",d(n,_[t]),\";\")}(e),A.push(\"if(\",s(_[e]),\">0){\",p(_[e]),\"=1;\"),t(e-1,r|1<<_[e]);for(var n=0;n<T;++n)A.push(h(n),\"+=\",d(n,_[e]),\";\");e===k-1&&(A.push(\"X\",\"=0;\"),U()),N(e,2),t(e-1,r),e===k-1&&(A.push(\"if(\",p(_[k-1]),\"&1){\",\"X\",\"=0;}\"),U()),j(e),A.push(\"}\")}}(k-1,0),A.push(\"freeUint32(\",\"V\",\");freeUint32(\",\"P\",\");\");var V=[\"'use strict';\",\"function \",M,\"(\",E.join(),\"){\",\"var \",S.join(),\";\",A.join(\"\"),\"}\",\"return \",M].join(\"\");return new Function(\"vertex\",\"face\",\"phase\",\"mallocUint32\",\"freeUint32\",V)(t,e,r,n.mallocUint32,n.freeUint32)}(t.vertex,t.cell,t.phase,_,r,T)};function x(t,e,r){for(var n=0,a=0;a<t;++a)e&1<<a&&(n|=1<<r[a]);return n}},{\"typedarray-pool\":567}],462:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){if(Array.isArray(r)){if(r.length!==e.dimension)throw new Error(\"ndarray-gradient: invalid boundary conditions\")}else r=n(e.dimension,\"string\"==typeof r?r:\"clamp\");if(t.dimension!==e.dimension+1)throw new Error(\"ndarray-gradient: output dimension must be +1 input dimension\");if(t.shape[e.dimension]!==e.dimension)throw new Error(\"ndarray-gradient: output shape must match input shape\");for(var a=0;a<e.dimension;++a)if(t.shape[a]!==e.shape[a])throw new Error(\"ndarray-gradient: shape mismatch\");if(0===e.size)return t;if(e.dimension<=0)return t.set(0),t;return function(t){var e=t.join();if(v=o[e])return v;var r=t.length,n=[\"function gradient(dst,src){var s=src.shape.slice();\"];function a(e){for(var a=r-e.length,i=[],o=[],s=[],l=0;l<r;++l)e.indexOf(l+1)>=0?s.push(\"0\"):e.indexOf(-(l+1))>=0?s.push(\"s[\"+l+\"]-1\"):(s.push(\"-1\"),i.push(\"1\"),o.push(\"s[\"+l+\"]-2\"));var c=\".lo(\"+i.join()+\").hi(\"+o.join()+\")\";if(0===i.length&&(c=\"\"),a>0){n.push(\"if(1\");for(l=0;l<r;++l)e.indexOf(l+1)>=0||e.indexOf(-(l+1))>=0||n.push(\"&&s[\",l,\"]>2\");n.push(\"){grad\",a,\"(src.pick(\",s.join(),\")\",c);for(l=0;l<r;++l)e.indexOf(l+1)>=0||e.indexOf(-(l+1))>=0||n.push(\",dst.pick(\",s.join(),\",\",l,\")\",c);n.push(\");\")}for(l=0;l<e.length;++l){var u=Math.abs(e[l])-1,h=\"dst.pick(\"+s.join()+\",\"+u+\")\"+c;switch(t[u]){case\"clamp\":var f=s.slice(),p=s.slice();e[l]<0?f[u]=\"s[\"+u+\"]-2\":p[u]=\"1\",0===a?n.push(\"if(s[\",u,\"]>1){dst.set(\",s.join(),\",\",u,\",0.5*(src.get(\",f.join(),\")-src.get(\",p.join(),\")))}else{dst.set(\",s.join(),\",\",u,\",0)};\"):n.push(\"if(s[\",u,\"]>1){diff(\",h,\",src.pick(\",f.join(),\")\",c,\",src.pick(\",p.join(),\")\",c,\");}else{zero(\",h,\");};\");break;case\"mirror\":0===a?n.push(\"dst.set(\",s.join(),\",\",u,\",0);\"):n.push(\"zero(\",h,\");\");break;case\"wrap\":var d=s.slice(),g=s.slice();e[l]<0?(d[u]=\"s[\"+u+\"]-2\",g[u]=\"0\"):(d[u]=\"s[\"+u+\"]-1\",g[u]=\"1\"),0===a?n.push(\"if(s[\",u,\"]>2){dst.set(\",s.join(),\",\",u,\",0.5*(src.get(\",d.join(),\")-src.get(\",g.join(),\")))}else{dst.set(\",s.join(),\",\",u,\",0)};\"):n.push(\"if(s[\",u,\"]>2){diff(\",h,\",src.pick(\",d.join(),\")\",c,\",src.pick(\",g.join(),\")\",c,\");}else{zero(\",h,\");};\");break;default:throw new Error(\"ndarray-gradient: Invalid boundary condition\")}}a>0&&n.push(\"};\")}for(var s=0;s<1<<r;++s){for(var h=[],f=0;f<r;++f)s&1<<f&&h.push(f+1);for(var p=0;p<1<<h.length;++p){var d=h.slice();for(f=0;f<h.length;++f)p&1<<f&&(d[f]=-d[f]);a(d)}}n.push(\"return dst;};return gradient\");var g=[\"diff\",\"zero\"],m=[l,c];for(s=1;s<=r;++s)g.push(\"grad\"+s),m.push(u(s));g.push(n.join(\"\"));var v=Function.apply(void 0,g).apply(void 0,m);return i[e]=v,v}(r)(t,e)};var n=t(\"dup\"),a=t(\"cwise-compiler\"),i={},o={},s={body:\"\",args:[],thisVars:[],localVars:[]},l=a({args:[\"array\",\"array\",\"array\"],pre:s,post:s,body:{args:[{name:\"out\",lvalue:!0,rvalue:!1,count:1},{name:\"left\",lvalue:!1,rvalue:!0,count:1},{name:\"right\",lvalue:!1,rvalue:!0,count:1}],body:\"out=0.5*(left-right)\",thisVars:[],localVars:[]},funcName:\"cdiff\"}),c=a({args:[\"array\"],pre:s,post:s,body:{args:[{name:\"out\",lvalue:!0,rvalue:!1,count:1}],body:\"out=0\",thisVars:[],localVars:[]},funcName:\"zero\"});function u(t){if(t in i)return i[t];for(var e=[],r=0;r<t;++r)e.push(\"out\",r,\"s=0.5*(inp\",r,\"l-inp\",r,\"r);\");var o=[\"array\"],l=[\"junk\"];for(r=0;r<t;++r){o.push(\"array\"),l.push(\"out\"+r+\"s\");var c=n(t);c[r]=-1,o.push({array:0,offset:c.slice()}),c[r]=1,o.push({array:0,offset:c.slice()}),l.push(\"inp\"+r+\"l\",\"inp\"+r+\"r\")}return i[t]=a({args:o,pre:s,post:s,body:{body:e.join(\"\"),args:l.map((function(t){return{name:t,lvalue:0===t.indexOf(\"out\"),rvalue:0===t.indexOf(\"inp\"),count:\"junk\"!==t|0}})),thisVars:[],localVars:[]},funcName:\"fdTemplate\"+t})}},{\"cwise-compiler\":151,dup:176}],463:[function(t,e,r){\"use strict\";function n(t,e){var r=Math.floor(e),n=e-r,a=0<=r&&r<t.shape[0],i=0<=r+1&&r+1<t.shape[0];return(1-n)*(a?+t.get(r):0)+n*(i?+t.get(r+1):0)}function a(t,e,r){var n=Math.floor(e),a=e-n,i=0<=n&&n<t.shape[0],o=0<=n+1&&n+1<t.shape[0],s=Math.floor(r),l=r-s,c=0<=s&&s<t.shape[1],u=0<=s+1&&s+1<t.shape[1],h=i&&c?t.get(n,s):0,f=i&&u?t.get(n,s+1):0;return(1-l)*((1-a)*h+a*(o&&c?t.get(n+1,s):0))+l*((1-a)*f+a*(o&&u?t.get(n+1,s+1):0))}function i(t,e,r,n){var a=Math.floor(e),i=e-a,o=0<=a&&a<t.shape[0],s=0<=a+1&&a+1<t.shape[0],l=Math.floor(r),c=r-l,u=0<=l&&l<t.shape[1],h=0<=l+1&&l+1<t.shape[1],f=Math.floor(n),p=n-f,d=0<=f&&f<t.shape[2],g=0<=f+1&&f+1<t.shape[2],m=o&&u&&d?t.get(a,l,f):0,v=o&&h&&d?t.get(a,l+1,f):0,y=s&&u&&d?t.get(a+1,l,f):0,x=s&&h&&d?t.get(a+1,l+1,f):0,b=o&&u&&g?t.get(a,l,f+1):0,_=o&&h&&g?t.get(a,l+1,f+1):0;return(1-p)*((1-c)*((1-i)*m+i*y)+c*((1-i)*v+i*x))+p*((1-c)*((1-i)*b+i*(s&&u&&g?t.get(a+1,l,f+1):0))+c*((1-i)*_+i*(s&&h&&g?t.get(a+1,l+1,f+1):0)))}function o(t){var e,r,n=0|t.shape.length,a=new Array(n),i=new Array(n),o=new Array(n),s=new Array(n);for(e=0;e<n;++e)r=+arguments[e+1],a[e]=Math.floor(r),i[e]=r-a[e],o[e]=0<=a[e]&&a[e]<t.shape[e],s[e]=0<=a[e]+1&&a[e]+1<t.shape[e];var l,c,u,h=0;t:for(e=0;e<1<<n;++e){for(c=1,u=t.offset,l=0;l<n;++l)if(e&1<<l){if(!s[l])continue t;c*=i[l],u+=t.stride[l]*(a[l]+1)}else{if(!o[l])continue t;c*=1-i[l],u+=t.stride[l]*a[l]}h+=c*t.data[u]}return h}e.exports=function(t,e,r,s){switch(t.shape.length){case 0:return 0;case 1:return n(t,e);case 2:return a(t,e,r);case 3:return i(t,e,r,s);default:return o.apply(void 0,arguments)}},e.exports.d1=n,e.exports.d2=a,e.exports.d3=i},{}],464:[function(t,e,r){\"use strict\";var n=t(\"cwise-compiler\"),a={body:\"\",args:[],thisVars:[],localVars:[]};function i(t){if(!t)return a;for(var e=0;e<t.args.length;++e){var r=t.args[e];t.args[e]=0===e?{name:r,lvalue:!0,rvalue:!!t.rvalue,count:t.count||1}:{name:r,lvalue:!1,rvalue:!0,count:1}}return t.thisVars||(t.thisVars=[]),t.localVars||(t.localVars=[]),t}function o(t){for(var e=[],r=0;r<t.args.length;++r)e.push(\"a\"+r);return new Function(\"P\",[\"return function \",t.funcName,\"_ndarrayops(\",e.join(\",\"),\") {P(\",e.join(\",\"),\");return a0}\"].join(\"\"))(function(t){return n({args:t.args,pre:i(t.pre),body:i(t.body),post:i(t.proc),funcName:t.funcName})}(t))}var s={add:\"+\",sub:\"-\",mul:\"*\",div:\"/\",mod:\"%\",band:\"&\",bor:\"|\",bxor:\"^\",lshift:\"<<\",rshift:\">>\",rrshift:\">>>\"};!function(){for(var t in s){var e=s[t];r[t]=o({args:[\"array\",\"array\",\"array\"],body:{args:[\"a\",\"b\",\"c\"],body:\"a=b\"+e+\"c\"},funcName:t}),r[t+\"eq\"]=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a\"+e+\"=b\"},rvalue:!0,funcName:t+\"eq\"}),r[t+\"s\"]=o({args:[\"array\",\"array\",\"scalar\"],body:{args:[\"a\",\"b\",\"s\"],body:\"a=b\"+e+\"s\"},funcName:t+\"s\"}),r[t+\"seq\"]=o({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"s\"],body:\"a\"+e+\"=s\"},rvalue:!0,funcName:t+\"seq\"})}}();var l={not:\"!\",bnot:\"~\",neg:\"-\",recip:\"1.0/\"};!function(){for(var t in l){var e=l[t];r[t]=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=\"+e+\"b\"},funcName:t}),r[t+\"eq\"]=o({args:[\"array\"],body:{args:[\"a\"],body:\"a=\"+e+\"a\"},rvalue:!0,count:2,funcName:t+\"eq\"})}}();var c={and:\"&&\",or:\"||\",eq:\"===\",neq:\"!==\",lt:\"<\",gt:\">\",leq:\"<=\",geq:\">=\"};!function(){for(var t in c){var e=c[t];r[t]=o({args:[\"array\",\"array\",\"array\"],body:{args:[\"a\",\"b\",\"c\"],body:\"a=b\"+e+\"c\"},funcName:t}),r[t+\"s\"]=o({args:[\"array\",\"array\",\"scalar\"],body:{args:[\"a\",\"b\",\"s\"],body:\"a=b\"+e+\"s\"},funcName:t+\"s\"}),r[t+\"eq\"]=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=a\"+e+\"b\"},rvalue:!0,count:2,funcName:t+\"eq\"}),r[t+\"seq\"]=o({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"s\"],body:\"a=a\"+e+\"s\"},rvalue:!0,count:2,funcName:t+\"seq\"})}}();var u=[\"abs\",\"acos\",\"asin\",\"atan\",\"ceil\",\"cos\",\"exp\",\"floor\",\"log\",\"round\",\"sin\",\"sqrt\",\"tan\"];!function(){for(var t=0;t<u.length;++t){var e=u[t];r[e]=o({args:[\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(b)\",thisVars:[\"this_f\"]},funcName:e}),r[e+\"eq\"]=o({args:[\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\"],body:\"a=this_f(a)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"eq\"})}}();var h=[\"max\",\"min\",\"atan2\",\"pow\"];!function(){for(var t=0;t<h.length;++t){var e=h[t];r[e]=o({args:[\"array\",\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(b,c)\",thisVars:[\"this_f\"]},funcName:e}),r[e+\"s\"]=o({args:[\"array\",\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(b,c)\",thisVars:[\"this_f\"]},funcName:e+\"s\"}),r[e+\"eq\"]=o({args:[\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(a,b)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"eq\"}),r[e+\"seq\"]=o({args:[\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(a,b)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"seq\"})}}();var f=[\"atan2\",\"pow\"];!function(){for(var t=0;t<f.length;++t){var e=f[t];r[e+\"op\"]=o({args:[\"array\",\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(c,b)\",thisVars:[\"this_f\"]},funcName:e+\"op\"}),r[e+\"ops\"]=o({args:[\"array\",\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(c,b)\",thisVars:[\"this_f\"]},funcName:e+\"ops\"}),r[e+\"opeq\"]=o({args:[\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(b,a)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"opeq\"}),r[e+\"opseq\"]=o({args:[\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(b,a)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"opseq\"})}}(),r.any=n({args:[\"array\"],pre:a,body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:1}],body:\"if(a){return true}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return false\"},funcName:\"any\"}),r.all=n({args:[\"array\"],pre:a,body:{args:[{name:\"x\",lvalue:!1,rvalue:!0,count:1}],body:\"if(!x){return false}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return true\"},funcName:\"all\"}),r.sum=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:1}],body:\"this_s+=a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"sum\"}),r.prod=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=1\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:1}],body:\"this_s*=a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"prod\"}),r.norm2squared=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:2}],body:\"this_s+=a*a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norm2squared\"}),r.norm2=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:2}],body:\"this_s+=a*a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return Math.sqrt(this_s)\"},funcName:\"norm2\"}),r.norminf=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:4}],body:\"if(-a>this_s){this_s=-a}else if(a>this_s){this_s=a}\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norminf\"}),r.norm1=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:3}],body:\"this_s+=a<0?-a:a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norm1\"}),r.sup=n({args:[\"array\"],pre:{body:\"this_h=-Infinity\",args:[],thisVars:[\"this_h\"],localVars:[]},body:{body:\"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_h\"],localVars:[]},post:{body:\"return this_h\",args:[],thisVars:[\"this_h\"],localVars:[]}}),r.inf=n({args:[\"array\"],pre:{body:\"this_h=Infinity\",args:[],thisVars:[\"this_h\"],localVars:[]},body:{body:\"if(_inline_1_arg0_<this_h)this_h=_inline_1_arg0_\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_h\"],localVars:[]},post:{body:\"return this_h\",args:[],thisVars:[\"this_h\"],localVars:[]}}),r.argmin=n({args:[\"index\",\"array\",\"shape\"],pre:{body:\"{this_v=Infinity;this_i=_inline_0_arg2_.slice(0)}\",args:[{name:\"_inline_0_arg0_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg1_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg2_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_i\",\"this_v\"],localVars:[]},body:{body:\"{if(_inline_1_arg1_<this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_i\",\"this_v\"],localVars:[\"_inline_1_k\"]},post:{body:\"{return this_i}\",args:[],thisVars:[\"this_i\"],localVars:[]}}),r.argmax=n({args:[\"index\",\"array\",\"shape\"],pre:{body:\"{this_v=-Infinity;this_i=_inline_0_arg2_.slice(0)}\",args:[{name:\"_inline_0_arg0_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg1_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg2_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_i\",\"this_v\"],localVars:[]},body:{body:\"{if(_inline_1_arg1_>this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_i\",\"this_v\"],localVars:[\"_inline_1_k\"]},post:{body:\"{return this_i}\",args:[],thisVars:[\"this_i\"],localVars:[]}}),r.random=o({args:[\"array\"],pre:{args:[],body:\"this_f=Math.random\",thisVars:[\"this_f\"]},body:{args:[\"a\"],body:\"a=this_f()\",thisVars:[\"this_f\"]},funcName:\"random\"}),r.assign=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=b\"},funcName:\"assign\"}),r.assigns=o({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"b\"],body:\"a=b\"},funcName:\"assigns\"}),r.equals=n({args:[\"array\",\"array\"],pre:a,body:{args:[{name:\"x\",lvalue:!1,rvalue:!0,count:1},{name:\"y\",lvalue:!1,rvalue:!0,count:1}],body:\"if(x!==y){return false}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return true\"},funcName:\"equals\"})},{\"cwise-compiler\":151}],465:[function(t,e,r){\"use strict\";var n=t(\"ndarray\"),a=t(\"./doConvert.js\");e.exports=function(t,e){for(var r=[],i=t,o=1;Array.isArray(i);)r.push(i.length),o*=i.length,i=i[0];return 0===r.length?n():(e||(e=n(new Float64Array(o),r)),a(e,t),e)}},{\"./doConvert.js\":466,ndarray:469}],466:[function(t,e,r){e.exports=t(\"cwise-compiler\")({args:[\"array\",\"scalar\",\"index\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{\\nvar _inline_1_v=_inline_1_arg1_,_inline_1_i\\nfor(_inline_1_i=0;_inline_1_i<_inline_1_arg2_.length-1;++_inline_1_i) {\\n_inline_1_v=_inline_1_v[_inline_1_arg2_[_inline_1_i]]\\n}\\n_inline_1_arg0_=_inline_1_v[_inline_1_arg2_[_inline_1_arg2_.length-1]]\\n}\",args:[{name:\"_inline_1_arg0_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:4}],thisVars:[],localVars:[\"_inline_1_i\",\"_inline_1_v\"]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},funcName:\"convert\",blockSize:64})},{\"cwise-compiler\":151}],467:[function(t,e,r){\"use strict\";var n=t(\"typedarray-pool\"),a=32;function i(t){switch(t){case\"uint8\":return[n.mallocUint8,n.freeUint8];case\"uint16\":return[n.mallocUint16,n.freeUint16];case\"uint32\":return[n.mallocUint32,n.freeUint32];case\"int8\":return[n.mallocInt8,n.freeInt8];case\"int16\":return[n.mallocInt16,n.freeInt16];case\"int32\":return[n.mallocInt32,n.freeInt32];case\"float32\":return[n.mallocFloat,n.freeFloat];case\"float64\":return[n.mallocDouble,n.freeDouble];default:return null}}function o(t){for(var e=[],r=0;r<t;++r)e.push(\"s\"+r);for(r=0;r<t;++r)e.push(\"n\"+r);for(r=1;r<t;++r)e.push(\"d\"+r);for(r=1;r<t;++r)e.push(\"e\"+r);for(r=1;r<t;++r)e.push(\"f\"+r);return e}e.exports=function(t,e){var r=[\"'use strict'\"],n=[\"ndarraySortWrapper\",t.join(\"d\"),e].join(\"\");r.push([\"function \",n,\"(\",[\"array\"].join(\",\"),\"){\"].join(\"\"));for(var s=[\"data=array.data,offset=array.offset|0,shape=array.shape,stride=array.stride\"],l=0;l<t.length;++l)s.push([\"s\",l,\"=stride[\",l,\"]|0,n\",l,\"=shape[\",l,\"]|0\"].join(\"\"));var c=new Array(t.length),u=[];for(l=0;l<t.length;++l){0!==(p=t[l])&&(0===u.length?c[p]=\"1\":c[p]=u.join(\"*\"),u.push(\"n\"+p))}var h=-1,f=-1;for(l=0;l<t.length;++l){var p,d=t[l];0!==d&&(h>0?s.push([\"d\",d,\"=s\",d,\"-d\",h,\"*n\",h].join(\"\")):s.push([\"d\",d,\"=s\",d].join(\"\")),h=d),0!==(p=t.length-1-l)&&(f>0?s.push([\"e\",p,\"=s\",p,\"-e\",f,\"*n\",f,\",f\",p,\"=\",c[p],\"-f\",f,\"*n\",f].join(\"\")):s.push([\"e\",p,\"=s\",p,\",f\",p,\"=\",c[p]].join(\"\")),f=p)}r.push(\"var \"+s.join(\",\"));var g=[\"0\",\"n0-1\",\"data\",\"offset\"].concat(o(t.length));r.push([\"if(n0<=\",a,\"){\",\"insertionSort(\",g.join(\",\"),\")}else{\",\"quickSort(\",g.join(\",\"),\")}\"].join(\"\")),r.push(\"}return \"+n);var m=new Function(\"insertionSort\",\"quickSort\",r.join(\"\\n\")),v=function(t,e){var r=[\"'use strict'\"],n=[\"ndarrayInsertionSort\",t.join(\"d\"),e].join(\"\"),a=[\"left\",\"right\",\"data\",\"offset\"].concat(o(t.length)),s=i(e),l=[\"i,j,cptr,ptr=left*s0+offset\"];if(t.length>1){for(var c=[],u=1;u<t.length;++u)l.push(\"i\"+u),c.push(\"n\"+u);s?l.push(\"scratch=malloc(\"+c.join(\"*\")+\")\"):l.push(\"scratch=new Array(\"+c.join(\"*\")+\")\"),l.push(\"dptr\",\"sptr\",\"a\",\"b\")}else l.push(\"scratch\");function h(t){return\"generic\"===e?[\"data.get(\",t,\")\"].join(\"\"):[\"data[\",t,\"]\"].join(\"\")}function f(t,r){return\"generic\"===e?[\"data.set(\",t,\",\",r,\")\"].join(\"\"):[\"data[\",t,\"]=\",r].join(\"\")}if(r.push([\"function \",n,\"(\",a.join(\",\"),\"){var \",l.join(\",\")].join(\"\"),\"for(i=left+1;i<=right;++i){\",\"j=i;ptr+=s0\",\"cptr=ptr\"),t.length>1){r.push(\"dptr=0;sptr=ptr\");for(u=t.length-1;u>=0;--u){0!==(p=t[u])&&r.push([\"for(i\",p,\"=0;i\",p,\"<n\",p,\";++i\",p,\"){\"].join(\"\"))}r.push(\"scratch[dptr++]=\",h(\"sptr\"));for(u=0;u<t.length;++u){0!==(p=t[u])&&r.push(\"sptr+=d\"+p,\"}\")}r.push(\"__g:while(j--\\x3eleft){\",\"dptr=0\",\"sptr=cptr-s0\");for(u=1;u<t.length;++u)1===u&&r.push(\"__l:\"),r.push([\"for(i\",u,\"=0;i\",u,\"<n\",u,\";++i\",u,\"){\"].join(\"\"));r.push([\"a=\",h(\"sptr\"),\"\\nb=scratch[dptr]\\nif(a<b){break __g}\\nif(a>b){break __l}\"].join(\"\"));for(u=t.length-1;u>=1;--u)r.push(\"sptr+=e\"+u,\"dptr+=f\"+u,\"}\");r.push(\"dptr=cptr;sptr=cptr-s0\");for(u=t.length-1;u>=0;--u){0!==(p=t[u])&&r.push([\"for(i\",p,\"=0;i\",p,\"<n\",p,\";++i\",p,\"){\"].join(\"\"))}r.push(f(\"dptr\",h(\"sptr\")));for(u=0;u<t.length;++u){0!==(p=t[u])&&r.push([\"dptr+=d\",p,\";sptr+=d\",p].join(\"\"),\"}\")}r.push(\"cptr-=s0\\n}\"),r.push(\"dptr=cptr;sptr=0\");for(u=t.length-1;u>=0;--u){0!==(p=t[u])&&r.push([\"for(i\",p,\"=0;i\",p,\"<n\",p,\";++i\",p,\"){\"].join(\"\"))}r.push(f(\"dptr\",\"scratch[sptr++]\"));for(u=0;u<t.length;++u){var p;0!==(p=t[u])&&r.push(\"dptr+=d\"+p,\"}\")}}else r.push(\"scratch=\"+h(\"ptr\"),\"while((j--\\x3eleft)&&(\"+h(\"cptr-s0\")+\">scratch)){\",f(\"cptr\",h(\"cptr-s0\")),\"cptr-=s0\",\"}\",f(\"cptr\",\"scratch\"));return r.push(\"}\"),t.length>1&&s&&r.push(\"free(scratch)\"),r.push(\"} return \"+n),s?new Function(\"malloc\",\"free\",r.join(\"\\n\"))(s[0],s[1]):new Function(r.join(\"\\n\"))()}(t,e),y=function(t,e,r){var n=[\"'use strict'\"],s=[\"ndarrayQuickSort\",t.join(\"d\"),e].join(\"\"),l=[\"left\",\"right\",\"data\",\"offset\"].concat(o(t.length)),c=i(e),u=0;n.push([\"function \",s,\"(\",l.join(\",\"),\"){\"].join(\"\"));var h=[\"sixth=((right-left+1)/6)|0\",\"index1=left+sixth\",\"index5=right-sixth\",\"index3=(left+right)>>1\",\"index2=index3-sixth\",\"index4=index3+sixth\",\"el1=index1\",\"el2=index2\",\"el3=index3\",\"el4=index4\",\"el5=index5\",\"less=left+1\",\"great=right-1\",\"pivots_are_equal=true\",\"tmp\",\"tmp0\",\"x\",\"y\",\"z\",\"k\",\"ptr0\",\"ptr1\",\"ptr2\",\"comp_pivot1=0\",\"comp_pivot2=0\",\"comp=0\"];if(t.length>1){for(var f=[],p=1;p<t.length;++p)f.push(\"n\"+p),h.push(\"i\"+p);for(p=0;p<8;++p)h.push(\"b_ptr\"+p);h.push(\"ptr3\",\"ptr4\",\"ptr5\",\"ptr6\",\"ptr7\",\"pivot_ptr\",\"ptr_shift\",\"elementSize=\"+f.join(\"*\")),c?h.push(\"pivot1=malloc(elementSize)\",\"pivot2=malloc(elementSize)\"):h.push(\"pivot1=new Array(elementSize),pivot2=new Array(elementSize)\")}else h.push(\"pivot1\",\"pivot2\");function d(t){return[\"(offset+\",t,\"*s0)\"].join(\"\")}function g(t){return\"generic\"===e?[\"data.get(\",t,\")\"].join(\"\"):[\"data[\",t,\"]\"].join(\"\")}function m(t,r){return\"generic\"===e?[\"data.set(\",t,\",\",r,\")\"].join(\"\"):[\"data[\",t,\"]=\",r].join(\"\")}function v(e,r,a){if(1===e.length)n.push(\"ptr0=\"+d(e[0]));else for(var i=0;i<e.length;++i)n.push([\"b_ptr\",i,\"=s0*\",e[i]].join(\"\"));r&&n.push(\"pivot_ptr=0\"),n.push(\"ptr_shift=offset\");for(i=t.length-1;i>=0;--i){0!==(o=t[i])&&n.push([\"for(i\",o,\"=0;i\",o,\"<n\",o,\";++i\",o,\"){\"].join(\"\"))}if(e.length>1)for(i=0;i<e.length;++i)n.push([\"ptr\",i,\"=b_ptr\",i,\"+ptr_shift\"].join(\"\"));n.push(a),r&&n.push(\"++pivot_ptr\");for(i=0;i<t.length;++i){var o;0!==(o=t[i])&&(e.length>1?n.push(\"ptr_shift+=d\"+o):n.push(\"ptr0+=d\"+o),n.push(\"}\"))}}function y(e,r,a,i){if(1===r.length)n.push(\"ptr0=\"+d(r[0]));else{for(var o=0;o<r.length;++o)n.push([\"b_ptr\",o,\"=s0*\",r[o]].join(\"\"));n.push(\"ptr_shift=offset\")}a&&n.push(\"pivot_ptr=0\"),e&&n.push(e+\":\");for(o=1;o<t.length;++o)n.push([\"for(i\",o,\"=0;i\",o,\"<n\",o,\";++i\",o,\"){\"].join(\"\"));if(r.length>1)for(o=0;o<r.length;++o)n.push([\"ptr\",o,\"=b_ptr\",o,\"+ptr_shift\"].join(\"\"));n.push(i);for(o=t.length-1;o>=1;--o)a&&n.push(\"pivot_ptr+=f\"+o),r.length>1?n.push(\"ptr_shift+=e\"+o):n.push(\"ptr0+=e\"+o),n.push(\"}\")}function x(){t.length>1&&c&&n.push(\"free(pivot1)\",\"free(pivot2)\")}function b(e,r){var a=\"el\"+e,i=\"el\"+r;if(t.length>1){var o=\"__l\"+ ++u;y(o,[a,i],!1,[\"comp=\",g(\"ptr0\"),\"-\",g(\"ptr1\"),\"\\n\",\"if(comp>0){tmp0=\",a,\";\",a,\"=\",i,\";\",i,\"=tmp0;break \",o,\"}\\n\",\"if(comp<0){break \",o,\"}\"].join(\"\"))}else n.push([\"if(\",g(d(a)),\">\",g(d(i)),\"){tmp0=\",a,\";\",a,\"=\",i,\";\",i,\"=tmp0}\"].join(\"\"))}function _(e,r){t.length>1?v([e,r],!1,m(\"ptr0\",g(\"ptr1\"))):n.push(m(d(e),g(d(r))))}function w(e,r,a){if(t.length>1){var i=\"__l\"+ ++u;y(i,[r],!0,[e,\"=\",g(\"ptr0\"),\"-pivot\",a,\"[pivot_ptr]\\n\",\"if(\",e,\"!==0){break \",i,\"}\"].join(\"\"))}else n.push([e,\"=\",g(d(r)),\"-pivot\",a].join(\"\"))}function T(e,r){t.length>1?v([e,r],!1,[\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",\"tmp\")].join(\"\")):n.push([\"ptr0=\",d(e),\"\\n\",\"ptr1=\",d(r),\"\\n\",\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",\"tmp\")].join(\"\"))}function k(e,r,a){t.length>1?(v([e,r,a],!1,[\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",g(\"ptr2\")),\"\\n\",m(\"ptr2\",\"tmp\")].join(\"\")),n.push(\"++\"+r,\"--\"+a)):n.push([\"ptr0=\",d(e),\"\\n\",\"ptr1=\",d(r),\"\\n\",\"ptr2=\",d(a),\"\\n\",\"++\",r,\"\\n\",\"--\",a,\"\\n\",\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",g(\"ptr2\")),\"\\n\",m(\"ptr2\",\"tmp\")].join(\"\"))}function M(t,e){T(t,e),n.push(\"--\"+e)}function A(e,r,a){t.length>1?v([e,r],!0,[m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",[\"pivot\",a,\"[pivot_ptr]\"].join(\"\"))].join(\"\")):n.push(m(d(e),g(d(r))),m(d(r),\"pivot\"+a))}function S(e,r){n.push([\"if((\",r,\"-\",e,\")<=\",a,\"){\\n\",\"insertionSort(\",e,\",\",r,\",data,offset,\",o(t.length).join(\",\"),\")\\n\",\"}else{\\n\",s,\"(\",e,\",\",r,\",data,offset,\",o(t.length).join(\",\"),\")\\n\",\"}\"].join(\"\"))}function E(e,r,a){t.length>1?(n.push([\"__l\",++u,\":while(true){\"].join(\"\")),v([e],!0,[\"if(\",g(\"ptr0\"),\"!==pivot\",r,\"[pivot_ptr]){break __l\",u,\"}\"].join(\"\")),n.push(a,\"}\")):n.push([\"while(\",g(d(e)),\"===pivot\",r,\"){\",a,\"}\"].join(\"\"))}return n.push(\"var \"+h.join(\",\")),b(1,2),b(4,5),b(1,3),b(2,3),b(1,4),b(3,4),b(2,5),b(2,3),b(4,5),t.length>1?v([\"el1\",\"el2\",\"el3\",\"el4\",\"el5\",\"index1\",\"index3\",\"index5\"],!0,[\"pivot1[pivot_ptr]=\",g(\"ptr1\"),\"\\n\",\"pivot2[pivot_ptr]=\",g(\"ptr3\"),\"\\n\",\"pivots_are_equal=pivots_are_equal&&(pivot1[pivot_ptr]===pivot2[pivot_ptr])\\n\",\"x=\",g(\"ptr0\"),\"\\n\",\"y=\",g(\"ptr2\"),\"\\n\",\"z=\",g(\"ptr4\"),\"\\n\",m(\"ptr5\",\"x\"),\"\\n\",m(\"ptr6\",\"y\"),\"\\n\",m(\"ptr7\",\"z\")].join(\"\")):n.push([\"pivot1=\",g(d(\"el2\")),\"\\n\",\"pivot2=\",g(d(\"el4\")),\"\\n\",\"pivots_are_equal=pivot1===pivot2\\n\",\"x=\",g(d(\"el1\")),\"\\n\",\"y=\",g(d(\"el3\")),\"\\n\",\"z=\",g(d(\"el5\")),\"\\n\",m(d(\"index1\"),\"x\"),\"\\n\",m(d(\"index3\"),\"y\"),\"\\n\",m(d(\"index5\"),\"z\")].join(\"\")),_(\"index2\",\"left\"),_(\"index4\",\"right\"),n.push(\"if(pivots_are_equal){\"),n.push(\"for(k=less;k<=great;++k){\"),w(\"comp\",\"k\",1),n.push(\"if(comp===0){continue}\"),n.push(\"if(comp<0){\"),n.push(\"if(k!==less){\"),T(\"k\",\"less\"),n.push(\"}\"),n.push(\"++less\"),n.push(\"}else{\"),n.push(\"while(true){\"),w(\"comp\",\"great\",1),n.push(\"if(comp>0){\"),n.push(\"great--\"),n.push(\"}else if(comp<0){\"),k(\"k\",\"less\",\"great\"),n.push(\"break\"),n.push(\"}else{\"),M(\"k\",\"great\"),n.push(\"break\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}else{\"),n.push(\"for(k=less;k<=great;++k){\"),w(\"comp_pivot1\",\"k\",1),n.push(\"if(comp_pivot1<0){\"),n.push(\"if(k!==less){\"),T(\"k\",\"less\"),n.push(\"}\"),n.push(\"++less\"),n.push(\"}else{\"),w(\"comp_pivot2\",\"k\",2),n.push(\"if(comp_pivot2>0){\"),n.push(\"while(true){\"),w(\"comp\",\"great\",2),n.push(\"if(comp>0){\"),n.push(\"if(--great<k){break}\"),n.push(\"continue\"),n.push(\"}else{\"),w(\"comp\",\"great\",1),n.push(\"if(comp<0){\"),k(\"k\",\"less\",\"great\"),n.push(\"}else{\"),M(\"k\",\"great\"),n.push(\"}\"),n.push(\"break\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),A(\"left\",\"(less-1)\",1),A(\"right\",\"(great+1)\",2),S(\"left\",\"(less-2)\"),S(\"(great+2)\",\"right\"),n.push(\"if(pivots_are_equal){\"),x(),n.push(\"return\"),n.push(\"}\"),n.push(\"if(less<index1&&great>index5){\"),E(\"less\",1,\"++less\"),E(\"great\",2,\"--great\"),n.push(\"for(k=less;k<=great;++k){\"),w(\"comp_pivot1\",\"k\",1),n.push(\"if(comp_pivot1===0){\"),n.push(\"if(k!==less){\"),T(\"k\",\"less\"),n.push(\"}\"),n.push(\"++less\"),n.push(\"}else{\"),w(\"comp_pivot2\",\"k\",2),n.push(\"if(comp_pivot2===0){\"),n.push(\"while(true){\"),w(\"comp\",\"great\",2),n.push(\"if(comp===0){\"),n.push(\"if(--great<k){break}\"),n.push(\"continue\"),n.push(\"}else{\"),w(\"comp\",\"great\",1),n.push(\"if(comp<0){\"),k(\"k\",\"less\",\"great\"),n.push(\"}else{\"),M(\"k\",\"great\"),n.push(\"}\"),n.push(\"break\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),x(),S(\"less\",\"great\"),n.push(\"}return \"+s),t.length>1&&c?new Function(\"insertionSort\",\"malloc\",\"free\",n.join(\"\\n\"))(r,c[0],c[1]):new Function(\"insertionSort\",n.join(\"\\n\"))(r)}(t,e,v);return m(v,y)}},{\"typedarray-pool\":567}],468:[function(t,e,r){\"use strict\";var n=t(\"./lib/compile_sort.js\"),a={};e.exports=function(t){var e=t.order,r=t.dtype,i=[e,r].join(\":\"),o=a[i];return o||(a[i]=o=n(e,r)),o(t),t}},{\"./lib/compile_sort.js\":467}],469:[function(t,e,r){var n=t(\"iota-array\"),a=t(\"is-buffer\"),i=\"undefined\"!=typeof Float64Array;function o(t,e){return t[0]-e[0]}function s(){var t,e=this.stride,r=new Array(e.length);for(t=0;t<r.length;++t)r[t]=[Math.abs(e[t]),t];r.sort(o);var n=new Array(r.length);for(t=0;t<n.length;++t)n[t]=r[t][1];return n}function l(t,e){var r=[\"View\",e,\"d\",t].join(\"\");e<0&&(r=\"View_Nil\"+t);var a=\"generic\"===t;if(-1===e){var i=\"function \"+r+\"(a){this.data=a;};var proto=\"+r+\".prototype;proto.dtype='\"+t+\"';proto.index=function(){return -1};proto.size=0;proto.dimension=-1;proto.shape=proto.stride=proto.order=[];proto.lo=proto.hi=proto.transpose=proto.step=function(){return new \"+r+\"(this.data);};proto.get=proto.set=function(){};proto.pick=function(){return null};return function construct_\"+r+\"(a){return new \"+r+\"(a);}\";return new Function(i)()}if(0===e){i=\"function \"+r+\"(a,d) {this.data = a;this.offset = d};var proto=\"+r+\".prototype;proto.dtype='\"+t+\"';proto.index=function(){return this.offset};proto.dimension=0;proto.size=1;proto.shape=proto.stride=proto.order=[];proto.lo=proto.hi=proto.transpose=proto.step=function \"+r+\"_copy() {return new \"+r+\"(this.data,this.offset)};proto.pick=function \"+r+\"_pick(){return TrivialArray(this.data);};proto.valueOf=proto.get=function \"+r+\"_get(){return \"+(a?\"this.data.get(this.offset)\":\"this.data[this.offset]\")+\"};proto.set=function \"+r+\"_set(v){return \"+(a?\"this.data.set(this.offset,v)\":\"this.data[this.offset]=v\")+\"};return function construct_\"+r+\"(a,b,c,d){return new \"+r+\"(a,d)}\";return new Function(\"TrivialArray\",i)(c[t][0])}i=[\"'use strict'\"];var o=n(e),l=o.map((function(t){return\"i\"+t})),u=\"this.offset+\"+o.map((function(t){return\"this.stride[\"+t+\"]*i\"+t})).join(\"+\"),h=o.map((function(t){return\"b\"+t})).join(\",\"),f=o.map((function(t){return\"c\"+t})).join(\",\");i.push(\"function \"+r+\"(a,\"+h+\",\"+f+\",d){this.data=a\",\"this.shape=[\"+h+\"]\",\"this.stride=[\"+f+\"]\",\"this.offset=d|0}\",\"var proto=\"+r+\".prototype\",\"proto.dtype='\"+t+\"'\",\"proto.dimension=\"+e),i.push(\"Object.defineProperty(proto,'size',{get:function \"+r+\"_size(){return \"+o.map((function(t){return\"this.shape[\"+t+\"]\"})).join(\"*\"),\"}})\"),1===e?i.push(\"proto.order=[0]\"):(i.push(\"Object.defineProperty(proto,'order',{get:\"),e<4?(i.push(\"function \"+r+\"_order(){\"),2===e?i.push(\"return (Math.abs(this.stride[0])>Math.abs(this.stride[1]))?[1,0]:[0,1]}})\"):3===e&&i.push(\"var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})\")):i.push(\"ORDER})\")),i.push(\"proto.set=function \"+r+\"_set(\"+l.join(\",\")+\",v){\"),a?i.push(\"return this.data.set(\"+u+\",v)}\"):i.push(\"return this.data[\"+u+\"]=v}\"),i.push(\"proto.get=function \"+r+\"_get(\"+l.join(\",\")+\"){\"),a?i.push(\"return this.data.get(\"+u+\")}\"):i.push(\"return this.data[\"+u+\"]}\"),i.push(\"proto.index=function \"+r+\"_index(\",l.join(),\"){return \"+u+\"}\"),i.push(\"proto.hi=function \"+r+\"_hi(\"+l.join(\",\")+\"){return new \"+r+\"(this.data,\"+o.map((function(t){return[\"(typeof i\",t,\"!=='number'||i\",t,\"<0)?this.shape[\",t,\"]:i\",t,\"|0\"].join(\"\")})).join(\",\")+\",\"+o.map((function(t){return\"this.stride[\"+t+\"]\"})).join(\",\")+\",this.offset)}\");var p=o.map((function(t){return\"a\"+t+\"=this.shape[\"+t+\"]\"})),d=o.map((function(t){return\"c\"+t+\"=this.stride[\"+t+\"]\"}));i.push(\"proto.lo=function \"+r+\"_lo(\"+l.join(\",\")+\"){var b=this.offset,d=0,\"+p.join(\",\")+\",\"+d.join(\",\"));for(var g=0;g<e;++g)i.push(\"if(typeof i\"+g+\"==='number'&&i\"+g+\">=0){d=i\"+g+\"|0;b+=c\"+g+\"*d;a\"+g+\"-=d}\");i.push(\"return new \"+r+\"(this.data,\"+o.map((function(t){return\"a\"+t})).join(\",\")+\",\"+o.map((function(t){return\"c\"+t})).join(\",\")+\",b)}\"),i.push(\"proto.step=function \"+r+\"_step(\"+l.join(\",\")+\"){var \"+o.map((function(t){return\"a\"+t+\"=this.shape[\"+t+\"]\"})).join(\",\")+\",\"+o.map((function(t){return\"b\"+t+\"=this.stride[\"+t+\"]\"})).join(\",\")+\",c=this.offset,d=0,ceil=Math.ceil\");for(g=0;g<e;++g)i.push(\"if(typeof i\"+g+\"==='number'){d=i\"+g+\"|0;if(d<0){c+=b\"+g+\"*(a\"+g+\"-1);a\"+g+\"=ceil(-a\"+g+\"/d)}else{a\"+g+\"=ceil(a\"+g+\"/d)}b\"+g+\"*=d}\");i.push(\"return new \"+r+\"(this.data,\"+o.map((function(t){return\"a\"+t})).join(\",\")+\",\"+o.map((function(t){return\"b\"+t})).join(\",\")+\",c)}\");var m=new Array(e),v=new Array(e);for(g=0;g<e;++g)m[g]=\"a[i\"+g+\"]\",v[g]=\"b[i\"+g+\"]\";i.push(\"proto.transpose=function \"+r+\"_transpose(\"+l+\"){\"+l.map((function(t,e){return t+\"=(\"+t+\"===undefined?\"+e+\":\"+t+\"|0)\"})).join(\";\"),\"var a=this.shape,b=this.stride;return new \"+r+\"(this.data,\"+m.join(\",\")+\",\"+v.join(\",\")+\",this.offset)}\"),i.push(\"proto.pick=function \"+r+\"_pick(\"+l+\"){var a=[],b=[],c=this.offset\");for(g=0;g<e;++g)i.push(\"if(typeof i\"+g+\"==='number'&&i\"+g+\">=0){c=(c+this.stride[\"+g+\"]*i\"+g+\")|0}else{a.push(this.shape[\"+g+\"]);b.push(this.stride[\"+g+\"])}\");return i.push(\"var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}\"),i.push(\"return function construct_\"+r+\"(data,shape,stride,offset){return new \"+r+\"(data,\"+o.map((function(t){return\"shape[\"+t+\"]\"})).join(\",\")+\",\"+o.map((function(t){return\"stride[\"+t+\"]\"})).join(\",\")+\",offset)}\"),new Function(\"CTOR_LIST\",\"ORDER\",i.join(\"\\n\"))(c[t],s)}var c={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};e.exports=function(t,e,r,n){if(void 0===t)return(0,c.array[0])([]);\"number\"==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var o=e.length;if(void 0===r){r=new Array(o);for(var s=o-1,u=1;s>=0;--s)r[s]=u,u*=e[s]}if(void 0===n){n=0;for(s=0;s<o;++s)r[s]<0&&(n-=(e[s]-1)*r[s])}for(var h=function(t){if(a(t))return\"buffer\";if(i)switch(Object.prototype.toString.call(t)){case\"[object Float64Array]\":return\"float64\";case\"[object Float32Array]\":return\"float32\";case\"[object Int8Array]\":return\"int8\";case\"[object Int16Array]\":return\"int16\";case\"[object Int32Array]\":return\"int32\";case\"[object Uint8Array]\":return\"uint8\";case\"[object Uint16Array]\":return\"uint16\";case\"[object Uint32Array]\":return\"uint32\";case\"[object Uint8ClampedArray]\":return\"uint8_clamped\";case\"[object BigInt64Array]\":return\"bigint64\";case\"[object BigUint64Array]\":return\"biguint64\"}return Array.isArray(t)?\"array\":\"generic\"}(t),f=c[h];f.length<=o+1;)f.push(l(h,f.length-1));return(0,f[o+1])(t,e,r,n)}},{\"iota-array\":437,\"is-buffer\":439}],470:[function(t,e,r){\"use strict\";var n=t(\"double-bits\"),a=Math.pow(2,-1074);e.exports=function(t,e){if(isNaN(t)||isNaN(e))return NaN;if(t===e)return t;if(0===t)return e<0?-a:a;var r=n.hi(t),i=n.lo(t);e>t==t>0?i===-1>>>0?(r+=1,i=0):i+=1:0===i?(i=-1>>>0,r-=1):i-=1;return n.pack(i,r)}},{\"double-bits\":173}],471:[function(t,e,r){var n=Math.PI,a=c(120);function i(t,e,r,n){return[\"C\",t,e,r,n,r,n]}function o(t,e,r,n,a,i){return[\"C\",t/3+2/3*r,e/3+2/3*n,a/3+2/3*r,i/3+2/3*n,a,i]}function s(t,e,r,i,o,c,u,h,f,p){if(p)T=p[0],k=p[1],_=p[2],w=p[3];else{var d=l(t,e,-o);t=d.x,e=d.y;var g=(t-(h=(d=l(h,f,-o)).x))/2,m=(e-(f=d.y))/2,v=g*g/(r*r)+m*m/(i*i);v>1&&(r*=v=Math.sqrt(v),i*=v);var y=r*r,x=i*i,b=(c==u?-1:1)*Math.sqrt(Math.abs((y*x-y*m*m-x*g*g)/(y*m*m+x*g*g)));b==1/0&&(b=1);var _=b*r*m/i+(t+h)/2,w=b*-i*g/r+(e+f)/2,T=Math.asin(((e-w)/i).toFixed(9)),k=Math.asin(((f-w)/i).toFixed(9));(T=t<_?n-T:T)<0&&(T=2*n+T),(k=h<_?n-k:k)<0&&(k=2*n+k),u&&T>k&&(T-=2*n),!u&&k>T&&(k-=2*n)}if(Math.abs(k-T)>a){var M=k,A=h,S=f;k=T+a*(u&&k>T?1:-1);var E=s(h=_+r*Math.cos(k),f=w+i*Math.sin(k),r,i,o,0,u,A,S,[k,M,_,w])}var C=Math.tan((k-T)/4),L=4/3*r*C,P=4/3*i*C,I=[2*t-(t+L*Math.sin(T)),2*e-(e-P*Math.cos(T)),h+L*Math.sin(k),f-P*Math.cos(k),h,f];if(p)return I;E&&(I=I.concat(E));for(var z=0;z<I.length;){var O=l(I[z],I[z+1],o);I[z++]=O.x,I[z++]=O.y}return I}function l(t,e,r){return{x:t*Math.cos(r)-e*Math.sin(r),y:t*Math.sin(r)+e*Math.cos(r)}}function c(t){return t*(n/180)}e.exports=function(t){for(var e,r=[],n=0,a=0,l=0,u=0,h=null,f=null,p=0,d=0,g=0,m=t.length;g<m;g++){var v=t[g],y=v[0];switch(y){case\"M\":l=v[1],u=v[2];break;case\"A\":(v=s(p,d,v[1],v[2],c(v[3]),v[4],v[5],v[6],v[7])).unshift(\"C\"),v.length>7&&(r.push(v.splice(0,7)),v.unshift(\"C\"));break;case\"S\":var x=p,b=d;\"C\"!=e&&\"S\"!=e||(x+=x-n,b+=b-a),v=[\"C\",x,b,v[1],v[2],v[3],v[4]];break;case\"T\":\"Q\"==e||\"T\"==e?(h=2*p-h,f=2*d-f):(h=p,f=d),v=o(p,d,h,f,v[1],v[2]);break;case\"Q\":h=v[1],f=v[2],v=o(p,d,v[1],v[2],v[3],v[4]);break;case\"L\":v=i(p,d,v[1],v[2]);break;case\"H\":v=i(p,d,v[1],d);break;case\"V\":v=i(p,d,p,v[1]);break;case\"Z\":v=i(p,d,l,u)}e=y,p=v[v.length-2],d=v[v.length-1],v.length>4?(n=v[v.length-4],a=v[v.length-3]):(n=p,a=d),r.push(v)}return r}},{}],472:[function(t,e,r){r.vertexNormals=function(t,e,r){for(var n=e.length,a=new Array(n),i=void 0===r?1e-6:r,o=0;o<n;++o)a[o]=[0,0,0];for(o=0;o<t.length;++o)for(var s=t[o],l=0,c=s[s.length-1],u=s[0],h=0;h<s.length;++h){l=c,c=u,u=s[(h+1)%s.length];for(var f=e[l],p=e[c],d=e[u],g=new Array(3),m=0,v=new Array(3),y=0,x=0;x<3;++x)g[x]=f[x]-p[x],m+=g[x]*g[x],v[x]=d[x]-p[x],y+=v[x]*v[x];if(m*y>i){var b=a[c],_=1/Math.sqrt(m*y);for(x=0;x<3;++x){var w=(x+1)%3,T=(x+2)%3;b[x]+=_*(v[w]*g[T]-v[T]*g[w])}}}for(o=0;o<n;++o){b=a[o];var k=0;for(x=0;x<3;++x)k+=b[x]*b[x];if(k>i)for(_=1/Math.sqrt(k),x=0;x<3;++x)b[x]*=_;else for(x=0;x<3;++x)b[x]=0}return a},r.faceNormals=function(t,e,r){for(var n=t.length,a=new Array(n),i=void 0===r?1e-6:r,o=0;o<n;++o){for(var s=t[o],l=new Array(3),c=0;c<3;++c)l[c]=e[s[c]];var u=new Array(3),h=new Array(3);for(c=0;c<3;++c)u[c]=l[1][c]-l[0][c],h[c]=l[2][c]-l[0][c];var f=new Array(3),p=0;for(c=0;c<3;++c){var d=(c+1)%3,g=(c+2)%3;f[c]=u[d]*h[g]-u[g]*h[d],p+=f[c]*f[c]}p=p>i?1/Math.sqrt(p):0;for(c=0;c<3;++c)f[c]*=p;a[o]=f}return a}},{}],473:[function(t,e,r){\n",
       "/*\n",
       "object-assign\n",
       "(c) Sindre Sorhus\n",
       "@license MIT\n",
       "*/\n",
       "\"use strict\";var n=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function o(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}e.exports=function(){try{if(!Object.assign)return!1;var t=new String(\"abc\");if(t[5]=\"de\",\"5\"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e[\"_\"+String.fromCharCode(r)]=r;if(\"0123456789\"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(\"\"))return!1;var n={};return\"abcdefghijklmnopqrst\".split(\"\").forEach((function(t){n[t]=t})),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},n)).join(\"\")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,s,l=o(t),c=1;c<arguments.length;c++){for(var u in r=Object(arguments[c]))a.call(r,u)&&(l[u]=r[u]);if(n){s=n(r);for(var h=0;h<s.length;h++)i.call(r,s[h])&&(l[s[h]]=r[s[h]])}}return l}},{}],474:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a,i,o,s,l,c){var u=e+i+c;if(h>0){var h=Math.sqrt(u+1);t[0]=.5*(o-l)/h,t[1]=.5*(s-n)/h,t[2]=.5*(r-i)/h,t[3]=.5*h}else{var f=Math.max(e,i,c);h=Math.sqrt(2*f-u+1);e>=f?(t[0]=.5*h,t[1]=.5*(a+r)/h,t[2]=.5*(s+n)/h,t[3]=.5*(o-l)/h):i>=f?(t[0]=.5*(r+a)/h,t[1]=.5*h,t[2]=.5*(l+o)/h,t[3]=.5*(s-n)/h):(t[0]=.5*(n+s)/h,t[1]=.5*(o+l)/h,t[2]=.5*h,t[3]=.5*(r-a)/h)}return t}},{}],475:[function(t,e,r){\"use strict\";e.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.rotation||[0,0,0,1],n=t.radius||1;e=[].slice.call(e,0,3),u(r=[].slice.call(r,0,4),r);var a=new h(r,e,Math.log(n));a.setDistanceLimits(t.zoomMin,t.zoomMax),(\"eye\"in t||\"up\"in t)&&a.lookAt(0,t.eye,t.center,t.up);return a};var n=t(\"filtered-vector\"),a=t(\"gl-mat4/lookAt\"),i=t(\"gl-mat4/fromQuat\"),o=t(\"gl-mat4/invert\"),s=t(\"./lib/quatFromFrame\");function l(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function c(t,e,r,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2)+Math.pow(n,2))}function u(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=c(r,n,a,i);o>1e-6?(t[0]=r/o,t[1]=n/o,t[2]=a/o,t[3]=i/o):(t[0]=t[1]=t[2]=0,t[3]=1)}function h(t,e,r){this.radius=n([r]),this.center=n(e),this.rotation=n(t),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var f=h.prototype;f.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},f.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;u(e,e);var r=this.computedMatrix;i(r,e);var n=this.computedCenter,a=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);a[0]=n[0]+s*r[2],a[1]=n[1]+s*r[6],a[2]=n[2]+s*r[10],o[0]=r[1],o[1]=r[5],o[2]=r[9];for(var l=0;l<3;++l){for(var c=0,h=0;h<3;++h)c+=r[l+4*h]*a[h];r[12+l]=-c}},f.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r},f.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},f.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},f.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var a=this.computedMatrix,i=a[1],o=a[5],s=a[9],c=l(i,o,s);i/=c,o/=c,s/=c;var u=a[0],h=a[4],f=a[8],p=u*i+h*o+f*s,d=l(u-=i*p,h-=o*p,f-=s*p);u/=d,h/=d,f/=d;var g=a[2],m=a[6],v=a[10],y=g*i+m*o+v*s,x=g*u+m*h+v*f,b=l(g-=y*i+x*u,m-=y*o+x*h,v-=y*s+x*f);g/=b,m/=b,v/=b;var _=u*e+i*r,w=h*e+o*r,T=f*e+s*r;this.center.move(t,_,w,T);var k=Math.exp(this.computedRadius[0]);k=Math.max(1e-4,k+n),this.radius.set(t,Math.log(k))},f.rotate=function(t,e,r,n){this.recalcMatrix(t),e=e||0,r=r||0;var a=this.computedMatrix,i=a[0],o=a[4],s=a[8],u=a[1],h=a[5],f=a[9],p=a[2],d=a[6],g=a[10],m=e*i+r*u,v=e*o+r*h,y=e*s+r*f,x=-(d*y-g*v),b=-(g*m-p*y),_=-(p*v-d*m),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(b,2)-Math.pow(_,2))),T=c(x,b,_,w);T>1e-6?(x/=T,b/=T,_/=T,w/=T):(x=b=_=0,w=1);var k=this.computedRotation,M=k[0],A=k[1],S=k[2],E=k[3],C=M*w+E*x+A*_-S*b,L=A*w+E*b+S*x-M*_,P=S*w+E*_+M*b-A*x,I=E*w-M*x-A*b-S*_;if(n){x=p,b=d,_=g;var z=Math.sin(n)/l(x,b,_);x*=z,b*=z,_*=z,I=I*(w=Math.cos(e))-(C=C*w+I*x+L*_-P*b)*x-(L=L*w+I*b+P*x-C*_)*b-(P=P*w+I*_+C*b-L*x)*_}var O=c(C,L,P,I);O>1e-6?(C/=O,L/=O,P/=O,I/=O):(C=L=P=0,I=1),this.rotation.set(t,C,L,P,I)},f.lookAt=function(t,e,r,n){this.recalcMatrix(t),r=r||this.computedCenter,e=e||this.computedEye,n=n||this.computedUp;var i=this.computedMatrix;a(i,e,r,n);var o=this.computedRotation;s(o,i[0],i[1],i[2],i[4],i[5],i[6],i[8],i[9],i[10]),u(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var l=0,c=0;c<3;++c)l+=Math.pow(r[c]-e[c],2);this.radius.set(t,.5*Math.log(Math.max(l,1e-6))),this.center.set(t,r[0],r[1],r[2])},f.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},f.setMatrix=function(t,e){var r=this.computedRotation;s(r,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),u(r,r),this.rotation.set(t,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;o(n,e);var a=n[15];if(Math.abs(a)>1e-6){var i=n[12]/a,l=n[13]/a,c=n[14]/a;this.recalcMatrix(t);var h=Math.exp(this.computedRadius[0]);this.center.set(t,i-n[2]*h,l-n[6]*h,c-n[10]*h),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},f.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},f.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},f.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},f.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},f.fromJSON=function(t){var e=this.lastT(),r=t.center;r&&this.center.set(e,r[0],r[1],r[2]);var n=t.rotation;n&&this.rotation.set(e,n[0],n[1],n[2],n[3]);var a=t.distance;a&&a>0&&this.radius.set(e,Math.log(a)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},{\"./lib/quatFromFrame\":474,\"filtered-vector\":242,\"gl-mat4/fromQuat\":275,\"gl-mat4/invert\":278,\"gl-mat4/lookAt\":279}],476:[function(t,e,r){\n",
       "/*!\n",
       " * pad-left <https://github.com/jonschlinkert/pad-left>\n",
       " *\n",
       " * Copyright (c) 2014-2015, Jon Schlinkert.\n",
       " * Licensed under the MIT license.\n",
       " */\n",
       "\"use strict\";var n=t(\"repeat-string\");e.exports=function(t,e,r){return n(r=\"undefined\"!=typeof r?r+\"\":\" \",e)+t}},{\"repeat-string\":513}],477:[function(t,e,r){\"use strict\";function n(t,e){if(\"string\"!=typeof t)return[t];var r=[t];\"string\"==typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var n=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:[\"{}\",\"[]\",\"()\"],a=e.escape||\"___\",i=!!e.flat;n.forEach((function(t){var e=new RegExp([\"\\\\\",t[0],\"[^\\\\\",t[0],\"\\\\\",t[1],\"]*\\\\\",t[1]].join(\"\")),n=[];function i(e,i,o){var s=r.push(e.slice(t[0].length,-t[1].length))-1;return n.push(s),a+s+a}r.forEach((function(t,n){for(var a,o=0;t!=a;)if(a=t,t=t.replace(e,i),o++>1e4)throw Error(\"References have circular dependency. Please, check them.\");r[n]=t})),n=n.reverse(),r=r.map((function(e){return n.forEach((function(r){e=e.replace(new RegExp(\"(\\\\\"+a+r+\"\\\\\"+a+\")\",\"g\"),t[0]+\"$1\"+t[1])})),e}))}));var o=new RegExp(\"\\\\\"+a+\"([0-9]+)\\\\\"+a);return i?r:function t(e,r,n){for(var a,i=[],s=0;a=o.exec(e);){if(s++>1e4)throw Error(\"Circular references in parenthesis\");i.push(e.slice(0,a.index)),i.push(t(r[a[1]],r)),e=e.slice(a.index+a[0].length)}return i.push(e),i}(r[0],r)}function a(t,e){if(e&&e.flat){var r,n=e&&e.escape||\"___\",a=t[0];if(!a)return\"\";for(var i=new RegExp(\"\\\\\"+n+\"([0-9]+)\\\\\"+n),o=0;a!=r;){if(o++>1e4)throw Error(\"Circular references in \"+t);r=a,a=a.replace(i,s)}return a}return t.reduce((function t(e,r){return Array.isArray(r)&&(r=r.reduce(t,\"\")),e+r}),\"\");function s(e,r){if(null==t[r])throw Error(\"Reference \"+r+\"is undefined\");return t[r]}}function i(t,e){return Array.isArray(t)?a(t,e):n(t,e)}i.parse=n,i.stringify=a,e.exports=i},{}],478:[function(t,e,r){\"use strict\";var n=t(\"pick-by-alias\");e.exports=function(t){var e;arguments.length>1&&(t=arguments);\"string\"==typeof t?t=t.split(/\\s/).map(parseFloat):\"number\"==typeof t&&(t=[t]);t.length&&\"number\"==typeof t[0]?e=1===t.length?{width:t[0],height:t[0],x:0,y:0}:2===t.length?{width:t[0],height:t[1],x:0,y:0}:{x:t[0],y:t[1],width:t[2]-t[0]||0,height:t[3]-t[1]||0}:t&&(t=n(t,{left:\"x l left Left\",top:\"y t top Top\",width:\"w width W Width\",height:\"h height W Width\",bottom:\"b bottom Bottom\",right:\"r right Right\"}),e={x:t.left||0,y:t.top||0},null==t.width?t.right?e.width=t.right-e.x:e.width=0:e.width=t.width,null==t.height?t.bottom?e.height=t.bottom-e.y:e.height=0:e.height=t.height);return e}},{\"pick-by-alias\":485}],479:[function(t,e,r){e.exports=function(t){var e=[];return t.replace(a,(function(t,r,a){var o=r.toLowerCase();for(a=function(t){var e=t.match(i);return e?e.map(Number):[]}(a),\"m\"==o&&a.length>2&&(e.push([r].concat(a.splice(0,2))),o=\"l\",r=\"m\"==r?\"l\":\"L\");;){if(a.length==n[o])return a.unshift(r),e.push(a);if(a.length<n[o])throw new Error(\"malformed path data\");e.push([r].concat(a.splice(0,n[o])))}})),e};var n={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},a=/([astvzqmhlc])([^astvzqmhlc]*)/gi;var i=/-?[0-9]*\\.?[0-9]+(?:e[-+]?\\d+)?/gi},{}],480:[function(t,e,r){e.exports=function(t,e){e||(e=[0,\"\"]),t=String(t);var r=parseFloat(t,10);return e[0]=r,e[1]=t.match(/[\\d.\\-\\+]*\\s*(.*)/)[1]||\"\",e}},{}],481:[function(t,e,r){(function(t){function e(t,e){for(var r=0,n=t.length-1;n>=0;n--){var a=t[n];\".\"===a?t.splice(n,1):\"..\"===a?(t.splice(n,1),r++):r&&(t.splice(n,1),r--)}if(e)for(;r--;r)t.unshift(\"..\");return t}function n(t,e){if(t.filter)return t.filter(e);for(var r=[],n=0;n<t.length;n++)e(t[n],n,t)&&r.push(t[n]);return r}r.resolve=function(){for(var r=\"\",a=!1,i=arguments.length-1;i>=-1&&!a;i--){var o=i>=0?arguments[i]:t.cwd();if(\"string\"!=typeof o)throw new TypeError(\"Arguments to path.resolve must be strings\");o&&(r=o+\"/\"+r,a=\"/\"===o.charAt(0))}return(a?\"/\":\"\")+(r=e(n(r.split(\"/\"),(function(t){return!!t})),!a).join(\"/\"))||\".\"},r.normalize=function(t){var i=r.isAbsolute(t),o=\"/\"===a(t,-1);return(t=e(n(t.split(\"/\"),(function(t){return!!t})),!i).join(\"/\"))||i||(t=\".\"),t&&o&&(t+=\"/\"),(i?\"/\":\"\")+t},r.isAbsolute=function(t){return\"/\"===t.charAt(0)},r.join=function(){var t=Array.prototype.slice.call(arguments,0);return r.normalize(n(t,(function(t,e){if(\"string\"!=typeof t)throw new TypeError(\"Arguments to path.join must be strings\");return t})).join(\"/\"))},r.relative=function(t,e){function n(t){for(var e=0;e<t.length&&\"\"===t[e];e++);for(var r=t.length-1;r>=0&&\"\"===t[r];r--);return e>r?[]:t.slice(e,r-e+1)}t=r.resolve(t).substr(1),e=r.resolve(e).substr(1);for(var a=n(t.split(\"/\")),i=n(e.split(\"/\")),o=Math.min(a.length,i.length),s=o,l=0;l<o;l++)if(a[l]!==i[l]){s=l;break}var c=[];for(l=s;l<a.length;l++)c.push(\"..\");return(c=c.concat(i.slice(s))).join(\"/\")},r.sep=\"/\",r.delimiter=\":\",r.dirname=function(t){if(\"string\"!=typeof t&&(t+=\"\"),0===t.length)return\".\";for(var e=t.charCodeAt(0),r=47===e,n=-1,a=!0,i=t.length-1;i>=1;--i)if(47===(e=t.charCodeAt(i))){if(!a){n=i;break}}else a=!1;return-1===n?r?\"/\":\".\":r&&1===n?\"/\":t.slice(0,n)},r.basename=function(t,e){var r=function(t){\"string\"!=typeof t&&(t+=\"\");var e,r=0,n=-1,a=!0;for(e=t.length-1;e>=0;--e)if(47===t.charCodeAt(e)){if(!a){r=e+1;break}}else-1===n&&(a=!1,n=e+1);return-1===n?\"\":t.slice(r,n)}(t);return e&&r.substr(-1*e.length)===e&&(r=r.substr(0,r.length-e.length)),r},r.extname=function(t){\"string\"!=typeof t&&(t+=\"\");for(var e=-1,r=0,n=-1,a=!0,i=0,o=t.length-1;o>=0;--o){var s=t.charCodeAt(o);if(47!==s)-1===n&&(a=!1,n=o+1),46===s?-1===e?e=o:1!==i&&(i=1):-1!==e&&(i=-1);else if(!a){r=o+1;break}}return-1===e||-1===n||0===i||1===i&&e===n-1&&e===r+1?\"\":t.slice(e,n)};var a=\"b\"===\"ab\".substr(-1)?function(t,e,r){return t.substr(e,r)}:function(t,e,r){return e<0&&(e=t.length+e),t.substr(e,r)}}).call(this,t(\"_process\"))},{_process:500}],482:[function(t,e,r){(function(t){(function(){var r,n,a,i,o,s;\"undefined\"!=typeof performance&&null!==performance&&performance.now?e.exports=function(){return performance.now()}:\"undefined\"!=typeof t&&null!==t&&t.hrtime?(e.exports=function(){return(r()-o)/1e6},n=t.hrtime,i=(r=function(){var t;return 1e9*(t=n())[0]+t[1]})(),s=1e9*t.uptime(),o=i-s):Date.now?(e.exports=function(){return Date.now()-a},a=Date.now()):(e.exports=function(){return(new Date).getTime()-a},a=(new Date).getTime())}).call(this)}).call(this,t(\"_process\"))},{_process:500}],483:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.length;if(e<32){for(var r=1,a=0;a<e;++a)for(var i=0;i<a;++i)if(t[a]<t[i])r=-r;else if(t[a]===t[i])return 0;return r}var o=n.mallocUint8(e);for(a=0;a<e;++a)o[a]=0;for(r=1,a=0;a<e;++a)if(!o[a]){var s=1;o[a]=1;for(i=t[a];i!==a;i=t[i]){if(o[i])return n.freeUint8(o),0;s+=1,o[i]=1}1&s||(r=-r)}return n.freeUint8(o),r};var n=t(\"typedarray-pool\")},{\"typedarray-pool\":567}],484:[function(t,e,r){\"use strict\";var n=t(\"typedarray-pool\"),a=t(\"invert-permutation\");r.rank=function(t){var e=t.length;switch(e){case 0:case 1:return 0;case 2:return t[1]}var r,i,o,s=n.mallocUint32(e),l=n.mallocUint32(e),c=0;for(a(t,l),o=0;o<e;++o)s[o]=t[o];for(o=e-1;o>0;--o)i=l[o],r=s[o],s[o]=s[i],s[i]=r,l[o]=l[r],l[r]=i,c=(c+r)*o;return n.freeUint32(l),n.freeUint32(s),c},r.unrank=function(t,e,r){switch(t){case 0:return r||[];case 1:return r?(r[0]=0,r):[0];case 2:return r?(e?(r[0]=0,r[1]=1):(r[0]=1,r[1]=0),r):e?[0,1]:[1,0]}var n,a,i,o=1;for((r=r||new Array(t))[0]=0,i=1;i<t;++i)r[i]=i,o=o*i|0;for(i=t-1;i>0;--i)e=e-(n=e/o|0)*o|0,o=o/i|0,a=0|r[i],r[i]=0|r[n],r[n]=0|a;return r}},{\"invert-permutation\":436,\"typedarray-pool\":567}],485:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var n,i,o={};if(\"string\"==typeof e&&(e=a(e)),Array.isArray(e)){var s={};for(i=0;i<e.length;i++)s[e[i]]=!0;e=s}for(n in e)e[n]=a(e[n]);var l={};for(n in e){var c=e[n];if(Array.isArray(c))for(i=0;i<c.length;i++){var u=c[i];if(r&&(l[u]=!0),u in t){if(o[n]=t[u],r)for(var h=i;h<c.length;h++)l[c[h]]=!0;break}}else n in t&&(e[n]&&(o[n]=t[n]),r&&(l[n]=!0))}if(r)for(n in t)l[n]||(o[n]=t[n]);return o};var n={};function a(t){return n[t]?n[t]:(\"string\"==typeof t&&(t=n[t]=t.split(/\\s*,\\s*|\\s+/)),t)}},{}],486:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=0|e.length,a=t.length,i=[new Array(r),new Array(r)],o=0;o<r;++o)i[0][o]=[],i[1][o]=[];for(o=0;o<a;++o){var s=t[o];i[0][s[0]].push(s),i[1][s[1]].push(s)}var l=[];for(o=0;o<r;++o)i[0][o].length+i[1][o].length===0&&l.push([o]);function c(t,e){var r=i[e][t[e]];r.splice(r.indexOf(t),1)}function u(t,r,a){for(var o,s,l,u=0;u<2;++u)if(i[u][r].length>0){o=i[u][r][0],l=u;break}s=o[1^l];for(var h=0;h<2;++h)for(var f=i[h][r],p=0;p<f.length;++p){var d=f[p],g=d[1^h];n(e[t],e[r],e[s],e[g])>0&&(o=d,s=g,l=h)}return a||o&&c(o,l),s}function h(t,r){var a=i[r][t][0],o=[t];c(a,r);for(var s=a[1^r];;){for(;s!==t;)o.push(s),s=u(o[o.length-2],s,!1);if(i[0][t].length+i[1][t].length===0)break;var l=o[o.length-1],h=t,f=o[1],p=u(l,h,!0);if(n(e[l],e[h],e[f],e[p])<0)break;o.push(t),s=u(l,h)}return o}function f(t,e){return e[1]===e[e.length-1]}for(o=0;o<r;++o)for(var p=0;p<2;++p){for(var d=[];i[p][o].length>0;){i[0][o].length;var g=h(o,p);f(0,g)?d.push.apply(d,g):(d.length>0&&l.push(d),d=g)}d.length>0&&l.push(d)}return l};var n=t(\"compare-angle\")},{\"compare-angle\":132}],487:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=n(t,e.length),a=new Array(e.length),i=new Array(e.length),o=[],s=0;s<e.length;++s){var l=r[s].length;i[s]=l,a[s]=!0,l<=1&&o.push(s)}for(;o.length>0;){var c=o.pop();a[c]=!1;var u=r[c];for(s=0;s<u.length;++s){var h=u[s];0==--i[h]&&o.push(h)}}var f=new Array(e.length),p=[];for(s=0;s<e.length;++s)if(a[s]){c=p.length;f[s]=c,p.push(e[s])}else f[s]=-1;var d=[];for(s=0;s<t.length;++s){var g=t[s];a[g[0]]&&a[g[1]]&&d.push([f[g[0]],f[g[1]]])}return[d,p]};var n=t(\"edges-to-adjacency-list\")},{\"edges-to-adjacency-list\":178}],488:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=c(t,e);t=r[0];for(var h=(e=r[1]).length,f=(t.length,n(t,e.length)),p=0;p<h;++p)if(f[p].length%2==1)throw new Error(\"planar-graph-to-polyline: graph must be manifold\");var d=a(t,e);var g=(d=d.filter((function(t){for(var r=t.length,n=[0],a=0;a<r;++a){var i=e[t[a]],l=e[t[(a+1)%r]],c=o(-i[0],i[1]),u=o(-i[0],l[1]),h=o(l[0],i[1]),f=o(l[0],l[1]);n=s(n,s(s(c,u),s(h,f)))}return n[n.length-1]>0}))).length,m=new Array(g),v=new Array(g);for(p=0;p<g;++p){m[p]=p;var y=new Array(g),x=d[p].map((function(t){return e[t]})),b=i([x]),_=0;t:for(var w=0;w<g;++w)if(y[w]=0,p!==w){for(var T=(q=d[w]).length,k=0;k<T;++k){var M=b(e[q[k]]);if(0!==M){M<0&&(y[w]=1,_+=1);continue t}}y[w]=1,_+=1}v[p]=[_,p,y]}v.sort((function(t,e){return e[0]-t[0]}));for(p=0;p<g;++p){var A=(y=v[p])[1],S=y[2];for(w=0;w<g;++w)S[w]&&(m[w]=A)}var E=function(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=[];return e}(g);for(p=0;p<g;++p)E[p].push(m[p]),E[m[p]].push(p);var C={},L=u(h,!1);for(p=0;p<g;++p)for(T=(q=d[p]).length,w=0;w<T;++w){var P=q[w],I=q[(w+1)%T],z=Math.min(P,I)+\":\"+Math.max(P,I);if(z in C){var O=C[z];E[O].push(p),E[p].push(O),L[P]=L[I]=!0}else C[z]=p}function D(t){for(var e=t.length,r=0;r<e;++r)if(!L[t[r]])return!1;return!0}var R=[],F=u(g,-1);for(p=0;p<g;++p)m[p]!==p||D(d[p])?F[p]=-1:(R.push(p),F[p]=0);r=[];for(;R.length>0;){var B=R.pop(),N=E[B];l(N,(function(t,e){return t-e}));var j,U=N.length,V=F[B];if(0===V){var q=d[B];j=[q]}for(p=0;p<U;++p){var H=N[p];if(!(F[H]>=0))if(F[H]=1^V,R.push(H),0===V)D(q=d[H])||(q.reverse(),j.push(q))}0===V&&r.push(j)}return r};var n=t(\"edges-to-adjacency-list\"),a=t(\"planar-dual\"),i=t(\"point-in-big-polygon\"),o=t(\"two-product\"),s=t(\"robust-sum\"),l=t(\"uniq\"),c=t(\"./lib/trim-leaves\");function u(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=e;return r}},{\"./lib/trim-leaves\":487,\"edges-to-adjacency-list\":178,\"planar-dual\":486,\"point-in-big-polygon\":490,\"robust-sum\":525,\"two-product\":554,uniq:569}],489:[function(t,e,r){arguments[4][243][0].apply(r,arguments)},{dup:243}],490:[function(t,e,r){e.exports=function(t){for(var e=t.length,r=[],i=[],s=0;s<e;++s)for(var u=t[s],h=u.length,f=h-1,p=0;p<h;f=p++){var d=u[f],g=u[p];d[0]===g[0]?i.push([d,g]):r.push([d,g])}if(0===r.length)return 0===i.length?c:(m=l(i),function(t){return m(t[0],t[1])?0:1});var m;var v=a(r),y=function(t,e){return function(r){var a=o.le(e,r[0]);if(a<0)return 1;var i=t[a];if(!i){if(!(a>0&&e[a]===r[0]))return 1;i=t[a-1]}for(var s=1;i;){var l=i.key,c=n(r,l[0],l[1]);if(l[0][0]<l[1][0])if(c<0)i=i.left;else{if(!(c>0))return 0;s=-1,i=i.right}else if(c>0)i=i.left;else{if(!(c<0))return 0;s=1,i=i.right}}return s}}(v.slabs,v.coordinates);return 0===i.length?y:function(t,e){return function(r){return t(r[0],r[1])?0:e(r)}}(l(i),y)};var n=t(\"robust-orientation\")[3],a=t(\"slab-decomposition\"),i=t(\"interval-tree-1d\"),o=t(\"binary-search-bounds\");function s(){return!0}function l(t){for(var e={},r=0;r<t.length;++r){var n=t[r],a=n[0][0],o=n[0][1],l=n[1][1],c=[Math.min(o,l),Math.max(o,l)];a in e?e[a].push(c):e[a]=[c]}var u={},h=Object.keys(e);for(r=0;r<h.length;++r){var f=e[h[r]];u[h[r]]=i(f)}return function(t){return function(e,r){var n=t[e];return!!n&&!!n.queryPoint(r,s)}}(u)}function c(t){return 1}},{\"binary-search-bounds\":489,\"interval-tree-1d\":434,\"robust-orientation\":520,\"slab-decomposition\":537}],491:[function(t,e,r){\n",
       "/*\n",
       " * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc\n",
       " * @license MIT\n",
       " * @preserve Project Home: https://github.com/voidqk/polybooljs\n",
       " */\n",
       "var n,a=t(\"./lib/build-log\"),i=t(\"./lib/epsilon\"),o=t(\"./lib/intersecter\"),s=t(\"./lib/segment-chainer\"),l=t(\"./lib/segment-selector\"),c=t(\"./lib/geojson\"),u=!1,h=i();function f(t,e,r){var a=n.segments(t),i=n.segments(e),o=r(n.combine(a,i));return n.polygon(o)}n={buildLog:function(t){return!0===t?u=a():!1===t&&(u=!1),!1!==u&&u.list},epsilon:function(t){return h.epsilon(t)},segments:function(t){var e=o(!0,h,u);return t.regions.forEach(e.addRegion),{segments:e.calculate(t.inverted),inverted:t.inverted}},combine:function(t,e){return{combined:o(!1,h,u).calculate(t.segments,t.inverted,e.segments,e.inverted),inverted1:t.inverted,inverted2:e.inverted}},selectUnion:function(t){return{segments:l.union(t.combined,u),inverted:t.inverted1||t.inverted2}},selectIntersect:function(t){return{segments:l.intersect(t.combined,u),inverted:t.inverted1&&t.inverted2}},selectDifference:function(t){return{segments:l.difference(t.combined,u),inverted:t.inverted1&&!t.inverted2}},selectDifferenceRev:function(t){return{segments:l.differenceRev(t.combined,u),inverted:!t.inverted1&&t.inverted2}},selectXor:function(t){return{segments:l.xor(t.combined,u),inverted:t.inverted1!==t.inverted2}},polygon:function(t){return{regions:s(t.segments,h,u),inverted:t.inverted}},polygonFromGeoJSON:function(t){return c.toPolygon(n,t)},polygonToGeoJSON:function(t){return c.fromPolygon(n,h,t)},union:function(t,e){return f(t,e,n.selectUnion)},intersect:function(t,e){return f(t,e,n.selectIntersect)},difference:function(t,e){return f(t,e,n.selectDifference)},differenceRev:function(t,e){return f(t,e,n.selectDifferenceRev)},xor:function(t,e){return f(t,e,n.selectXor)}},\"object\"==typeof window&&(window.PolyBool=n),e.exports=n},{\"./lib/build-log\":492,\"./lib/epsilon\":493,\"./lib/geojson\":494,\"./lib/intersecter\":495,\"./lib/segment-chainer\":497,\"./lib/segment-selector\":498}],492:[function(t,e,r){e.exports=function(){var t,e=0,r=!1;function n(e,r){return t.list.push({type:e,data:r?JSON.parse(JSON.stringify(r)):void 0}),t}return t={list:[],segmentId:function(){return e++},checkIntersection:function(t,e){return n(\"check\",{seg1:t,seg2:e})},segmentChop:function(t,e){return n(\"div_seg\",{seg:t,pt:e}),n(\"chop\",{seg:t,pt:e})},statusRemove:function(t){return n(\"pop_seg\",{seg:t})},segmentUpdate:function(t){return n(\"seg_update\",{seg:t})},segmentNew:function(t,e){return n(\"new_seg\",{seg:t,primary:e})},segmentRemove:function(t){return n(\"rem_seg\",{seg:t})},tempStatus:function(t,e,r){return n(\"temp_status\",{seg:t,above:e,below:r})},rewind:function(t){return n(\"rewind\",{seg:t})},status:function(t,e,r){return n(\"status\",{seg:t,above:e,below:r})},vert:function(e){return e===r?t:(r=e,n(\"vert\",{x:e}))},log:function(t){return\"string\"!=typeof t&&(t=JSON.stringify(t,!1,\"  \")),n(\"log\",{txt:t})},reset:function(){return n(\"reset\")},selected:function(t){return n(\"selected\",{segs:t})},chainStart:function(t){return n(\"chain_start\",{seg:t})},chainRemoveHead:function(t,e){return n(\"chain_rem_head\",{index:t,pt:e})},chainRemoveTail:function(t,e){return n(\"chain_rem_tail\",{index:t,pt:e})},chainNew:function(t,e){return n(\"chain_new\",{pt1:t,pt2:e})},chainMatch:function(t){return n(\"chain_match\",{index:t})},chainClose:function(t){return n(\"chain_close\",{index:t})},chainAddHead:function(t,e){return n(\"chain_add_head\",{index:t,pt:e})},chainAddTail:function(t,e){return n(\"chain_add_tail\",{index:t,pt:e})},chainConnect:function(t,e){return n(\"chain_con\",{index1:t,index2:e})},chainReverse:function(t){return n(\"chain_rev\",{index:t})},chainJoin:function(t,e){return n(\"chain_join\",{index1:t,index2:e})},done:function(){return n(\"done\")}}}},{}],493:[function(t,e,r){e.exports=function(t){\"number\"!=typeof t&&(t=1e-10);var e={epsilon:function(e){return\"number\"==typeof e&&(t=e),t},pointAboveOrOnLine:function(e,r,n){var a=r[0],i=r[1],o=n[0],s=n[1],l=e[0];return(o-a)*(e[1]-i)-(s-i)*(l-a)>=-t},pointBetween:function(e,r,n){var a=e[1]-r[1],i=n[0]-r[0],o=e[0]-r[0],s=n[1]-r[1],l=o*i+a*s;return!(l<t)&&!(l-(i*i+s*s)>-t)},pointsSameX:function(e,r){return Math.abs(e[0]-r[0])<t},pointsSameY:function(e,r){return Math.abs(e[1]-r[1])<t},pointsSame:function(t,r){return e.pointsSameX(t,r)&&e.pointsSameY(t,r)},pointsCompare:function(t,r){return e.pointsSameX(t,r)?e.pointsSameY(t,r)?0:t[1]<r[1]?-1:1:t[0]<r[0]?-1:1},pointsCollinear:function(e,r,n){var a=e[0]-r[0],i=e[1]-r[1],o=r[0]-n[0],s=r[1]-n[1];return Math.abs(a*s-o*i)<t},linesIntersect:function(e,r,n,a){var i=r[0]-e[0],o=r[1]-e[1],s=a[0]-n[0],l=a[1]-n[1],c=i*l-o*s;if(Math.abs(c)<t)return!1;var u=e[0]-n[0],h=e[1]-n[1],f=(s*h-l*u)/c,p=(i*h-o*u)/c,d={alongA:0,alongB:0,pt:[e[0]+f*i,e[1]+f*o]};return d.alongA=f<=-t?-2:f<t?-1:f-1<=-t?0:f-1<t?1:2,d.alongB=p<=-t?-2:p<t?-1:p-1<=-t?0:p-1<t?1:2,d},pointInsideRegion:function(e,r){for(var n=e[0],a=e[1],i=r[r.length-1][0],o=r[r.length-1][1],s=!1,l=0;l<r.length;l++){var c=r[l][0],u=r[l][1];u-a>t!=o-a>t&&(i-c)*(a-u)/(o-u)+c-n>t&&(s=!s),i=c,o=u}return s}};return e}},{}],494:[function(t,e,r){var n={toPolygon:function(t,e){function r(e){if(e.length<=0)return t.segments({inverted:!1,regions:[]});function r(e){var r=e.slice(0,e.length-1);return t.segments({inverted:!1,regions:[r]})}for(var n=r(e[0]),a=1;a<e.length;a++)n=t.selectDifference(t.combine(n,r(e[a])));return n}if(\"Polygon\"===e.type)return t.polygon(r(e.coordinates));if(\"MultiPolygon\"===e.type){for(var n=t.segments({inverted:!1,regions:[]}),a=0;a<e.coordinates.length;a++)n=t.selectUnion(t.combine(n,r(e.coordinates[a])));return t.polygon(n)}throw new Error(\"PolyBool: Cannot convert GeoJSON object to PolyBool polygon\")},fromPolygon:function(t,e,r){function n(t,r){return e.pointInsideRegion([.5*(t[0][0]+t[1][0]),.5*(t[0][1]+t[1][1])],r)}function a(t){return{region:t,children:[]}}r=t.polygon(t.segments(r));var i=a(null);function o(t,e){for(var r=0;r<t.children.length;r++){if(n(e,(s=t.children[r]).region))return void o(s,e)}var i=a(e);for(r=0;r<t.children.length;r++){var s;n((s=t.children[r]).region,e)&&(i.children.push(s),t.children.splice(r,1),r--)}t.children.push(i)}for(var s=0;s<r.regions.length;s++){var l=r.regions[s];l.length<3||o(i,l)}function c(t,e){for(var r=0,n=t[t.length-1][0],a=t[t.length-1][1],i=[],o=0;o<t.length;o++){var s=t[o][0],l=t[o][1];i.push([s,l]),r+=l*n-s*a,n=s,a=l}return r<0!==e&&i.reverse(),i.push([i[0][0],i[0][1]]),i}var u=[];function h(t){var e=[c(t.region,!1)];u.push(e);for(var r=0;r<t.children.length;r++)e.push(f(t.children[r]))}function f(t){for(var e=0;e<t.children.length;e++)h(t.children[e]);return c(t.region,!0)}for(s=0;s<i.children.length;s++)h(i.children[s]);return u.length<=0?{type:\"Polygon\",coordinates:[]}:1==u.length?{type:\"Polygon\",coordinates:u[0]}:{type:\"MultiPolygon\",coordinates:u}}};e.exports=n},{}],495:[function(t,e,r){var n=t(\"./linked-list\");e.exports=function(t,e,r){function a(t,e,n){return{id:r?r.segmentId():-1,start:t,end:e,myFill:{above:n.myFill.above,below:n.myFill.below},otherFill:null}}var i=n.create();function o(t,r){i.insertBefore(t,(function(n){return function(t,r,n,a,i,o){var s=e.pointsCompare(r,i);return 0!==s?s:e.pointsSame(n,o)?0:t!==a?t?1:-1:e.pointAboveOrOnLine(n,a?i:o,a?o:i)?1:-1}(t.isStart,t.pt,r,n.isStart,n.pt,n.other.pt)<0}))}function s(t,e){var r=function(t,e){var r=n.node({isStart:!0,pt:t.start,seg:t,primary:e,other:null,status:null});return o(r,t.end),r}(t,e);return function(t,e,r){var a=n.node({isStart:!1,pt:e.end,seg:e,primary:r,other:t,status:null});t.other=a,o(a,t.pt)}(r,t,e),r}function l(t,e){var n=a(e,t.seg.end,t.seg);return function(t,e){r&&r.segmentChop(t.seg,e),t.other.remove(),t.seg.end=e,t.other.pt=e,o(t.other,t.pt)}(t,e),s(n,t.primary)}function c(a,o){var s=n.create();function c(t){return s.findTransition((function(r){var n,a,i,o,s,l;return(n=t,a=r.ev,i=n.seg.start,o=n.seg.end,s=a.seg.start,l=a.seg.end,e.pointsCollinear(i,s,l)?e.pointsCollinear(o,s,l)||e.pointAboveOrOnLine(o,s,l)?1:-1:e.pointAboveOrOnLine(i,s,l)?1:-1)>0}))}function u(t,n){var a=t.seg,i=n.seg,o=a.start,s=a.end,c=i.start,u=i.end;r&&r.checkIntersection(a,i);var h=e.linesIntersect(o,s,c,u);if(!1===h){if(!e.pointsCollinear(o,s,c))return!1;if(e.pointsSame(o,u)||e.pointsSame(s,c))return!1;var f=e.pointsSame(o,c),p=e.pointsSame(s,u);if(f&&p)return n;var d=!f&&e.pointBetween(o,c,u),g=!p&&e.pointBetween(s,c,u);if(f)return g?l(n,s):l(t,u),n;d&&(p||(g?l(n,s):l(t,u)),l(n,o))}else 0===h.alongA&&(-1===h.alongB?l(t,c):0===h.alongB?l(t,h.pt):1===h.alongB&&l(t,u)),0===h.alongB&&(-1===h.alongA?l(n,o):0===h.alongA?l(n,h.pt):1===h.alongA&&l(n,s));return!1}for(var h=[];!i.isEmpty();){var f=i.getHead();if(r&&r.vert(f.pt[0]),f.isStart){r&&r.segmentNew(f.seg,f.primary);var p=c(f),d=p.before?p.before.ev:null,g=p.after?p.after.ev:null;function m(){if(d){var t=u(f,d);if(t)return t}return!!g&&u(f,g)}r&&r.tempStatus(f.seg,!!d&&d.seg,!!g&&g.seg);var v,y=m();if(y){var x;if(t)(x=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below)&&(y.seg.myFill.above=!y.seg.myFill.above);else y.seg.otherFill=f.seg.myFill;r&&r.segmentUpdate(y.seg),f.other.remove(),f.remove()}if(i.getHead()!==f){r&&r.rewind(f.seg);continue}if(t)x=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below,f.seg.myFill.below=g?g.seg.myFill.above:a,f.seg.myFill.above=x?!f.seg.myFill.below:f.seg.myFill.below;else if(null===f.seg.otherFill)v=g?f.primary===g.primary?g.seg.otherFill.above:g.seg.myFill.above:f.primary?o:a,f.seg.otherFill={above:v,below:v};r&&r.status(f.seg,!!d&&d.seg,!!g&&g.seg),f.other.status=p.insert(n.node({ev:f}))}else{var b=f.status;if(null===b)throw new Error(\"PolyBool: Zero-length segment detected; your epsilon is probably too small or too large\");if(s.exists(b.prev)&&s.exists(b.next)&&u(b.prev.ev,b.next.ev),r&&r.statusRemove(b.ev.seg),b.remove(),!f.primary){var _=f.seg.myFill;f.seg.myFill=f.seg.otherFill,f.seg.otherFill=_}h.push(f.seg)}i.getHead().remove()}return r&&r.done(),h}return t?{addRegion:function(t){for(var n,a,i,o=t[t.length-1],l=0;l<t.length;l++){n=o,o=t[l];var c=e.pointsCompare(n,o);0!==c&&s((a=c<0?n:o,i=c<0?o:n,{id:r?r.segmentId():-1,start:a,end:i,myFill:{above:null,below:null},otherFill:null}),!0)}},calculate:function(t){return c(t,!1)}}:{calculate:function(t,e,r,n){return t.forEach((function(t){s(a(t.start,t.end,t),!0)})),r.forEach((function(t){s(a(t.start,t.end,t),!1)})),c(e,n)}}}},{\"./linked-list\":496}],496:[function(t,e,r){e.exports={create:function(){var t={root:{root:!0,next:null},exists:function(e){return null!==e&&e!==t.root},isEmpty:function(){return null===t.root.next},getHead:function(){return t.root.next},insertBefore:function(e,r){for(var n=t.root,a=t.root.next;null!==a;){if(r(a))return e.prev=a.prev,e.next=a,a.prev.next=e,void(a.prev=e);n=a,a=a.next}n.next=e,e.prev=n,e.next=null},findTransition:function(e){for(var r=t.root,n=t.root.next;null!==n&&!e(n);)r=n,n=n.next;return{before:r===t.root?null:r,after:n,insert:function(t){return t.prev=r,t.next=n,r.next=t,null!==n&&(n.prev=t),t}}}};return t},node:function(t){return t.prev=null,t.next=null,t.remove=function(){t.prev.next=t.next,t.next&&(t.next.prev=t.prev),t.prev=null,t.next=null},t}}},{}],497:[function(t,e,r){e.exports=function(t,e,r){var n=[],a=[];return t.forEach((function(t){var i=t.start,o=t.end;if(e.pointsSame(i,o))console.warn(\"PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large\");else{r&&r.chainStart(t);for(var s={index:0,matches_head:!1,matches_pt1:!1},l={index:0,matches_head:!1,matches_pt1:!1},c=s,u=0;u<n.length;u++){var h=(m=n[u])[0],f=(m[1],m[m.length-1]);m[m.length-2];if(e.pointsSame(h,i)){if(k(u,!0,!0))break}else if(e.pointsSame(h,o)){if(k(u,!0,!1))break}else if(e.pointsSame(f,i)){if(k(u,!1,!0))break}else if(e.pointsSame(f,o)&&k(u,!1,!1))break}if(c===s)return n.push([i,o]),void(r&&r.chainNew(i,o));if(c===l){r&&r.chainMatch(s.index);var p=s.index,d=s.matches_pt1?o:i,g=s.matches_head,m=n[p],v=g?m[0]:m[m.length-1],y=g?m[1]:m[m.length-2],x=g?m[m.length-1]:m[0],b=g?m[m.length-2]:m[1];return e.pointsCollinear(y,v,d)&&(g?(r&&r.chainRemoveHead(s.index,d),m.shift()):(r&&r.chainRemoveTail(s.index,d),m.pop()),v=y),e.pointsSame(x,d)?(n.splice(p,1),e.pointsCollinear(b,x,v)&&(g?(r&&r.chainRemoveTail(s.index,v),m.pop()):(r&&r.chainRemoveHead(s.index,v),m.shift())),r&&r.chainClose(s.index),void a.push(m)):void(g?(r&&r.chainAddHead(s.index,d),m.unshift(d)):(r&&r.chainAddTail(s.index,d),m.push(d)))}var _=s.index,w=l.index;r&&r.chainConnect(_,w);var T=n[_].length<n[w].length;s.matches_head?l.matches_head?T?(M(_),A(_,w)):(M(w),A(w,_)):A(w,_):l.matches_head?A(_,w):T?(M(_),A(w,_)):(M(w),A(_,w))}function k(t,e,r){return c.index=t,c.matches_head=e,c.matches_pt1=r,c===s?(c=l,!1):(c=null,!0)}function M(t){r&&r.chainReverse(t),n[t].reverse()}function A(t,a){var i=n[t],o=n[a],s=i[i.length-1],l=i[i.length-2],c=o[0],u=o[1];e.pointsCollinear(l,s,c)&&(r&&r.chainRemoveTail(t,s),i.pop(),s=l),e.pointsCollinear(s,c,u)&&(r&&r.chainRemoveHead(a,c),o.shift()),r&&r.chainJoin(t,a),n[t]=i.concat(o),n.splice(a,1)}})),a}},{}],498:[function(t,e,r){function n(t,e,r){var n=[];return t.forEach((function(t){var a=(t.myFill.above?8:0)+(t.myFill.below?4:0)+(t.otherFill&&t.otherFill.above?2:0)+(t.otherFill&&t.otherFill.below?1:0);0!==e[a]&&n.push({id:r?r.segmentId():-1,start:t.start,end:t.end,myFill:{above:1===e[a],below:2===e[a]},otherFill:null})})),r&&r.selected(n),n}var a={union:function(t,e){return n(t,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],e)},intersect:function(t,e){return n(t,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],e)},difference:function(t,e){return n(t,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],e)},differenceRev:function(t,e){return n(t,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],e)},xor:function(t,e){return n(t,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],e)}};e.exports=a},{}],499:[function(t,e,r){\"use strict\";var n=new Float64Array(4),a=new Float64Array(4),i=new Float64Array(4);e.exports=function(t,e,r,o,s){n.length<o.length&&(n=new Float64Array(o.length),a=new Float64Array(o.length),i=new Float64Array(o.length));for(var l=0;l<o.length;++l)n[l]=t[l]-o[l],a[l]=e[l]-t[l],i[l]=r[l]-t[l];var c=0,u=0,h=0,f=0,p=0,d=0;for(l=0;l<o.length;++l){var g=a[l],m=i[l],v=n[l];c+=g*g,u+=g*m,h+=m*m,f+=v*g,p+=v*m,d+=v*v}var y,x,b,_,w,T=Math.abs(c*h-u*u),k=u*p-h*f,M=u*f-c*p;if(k+M<=T)if(k<0)M<0&&f<0?(M=0,-f>=c?(k=1,y=c+2*f+d):y=f*(k=-f/c)+d):(k=0,p>=0?(M=0,y=d):-p>=h?(M=1,y=h+2*p+d):y=p*(M=-p/h)+d);else if(M<0)M=0,f>=0?(k=0,y=d):-f>=c?(k=1,y=c+2*f+d):y=f*(k=-f/c)+d;else{var A=1/T;y=(k*=A)*(c*k+u*(M*=A)+2*f)+M*(u*k+h*M+2*p)+d}else k<0?(b=h+p)>(x=u+f)?(_=b-x)>=(w=c-2*u+h)?(k=1,M=0,y=c+2*f+d):y=(k=_/w)*(c*k+u*(M=1-k)+2*f)+M*(u*k+h*M+2*p)+d:(k=0,b<=0?(M=1,y=h+2*p+d):p>=0?(M=0,y=d):y=p*(M=-p/h)+d):M<0?(b=c+f)>(x=u+p)?(_=b-x)>=(w=c-2*u+h)?(M=1,k=0,y=h+2*p+d):y=(k=1-(M=_/w))*(c*k+u*M+2*f)+M*(u*k+h*M+2*p)+d:(M=0,b<=0?(k=1,y=c+2*f+d):f>=0?(k=0,y=d):y=f*(k=-f/c)+d):(_=h+p-u-f)<=0?(k=0,M=1,y=h+2*p+d):_>=(w=c-2*u+h)?(k=1,M=0,y=c+2*f+d):y=(k=_/w)*(c*k+u*(M=1-k)+2*f)+M*(u*k+h*M+2*p)+d;var S=1-k-M;for(l=0;l<o.length;++l)s[l]=S*t[l]+k*e[l]+M*r[l];return y<0?0:y}},{}],500:[function(t,e,r){var n,a,i=e.exports={};function o(){throw new Error(\"setTimeout has not been defined\")}function s(){throw new Error(\"clearTimeout has not been defined\")}function l(t){if(n===setTimeout)return setTimeout(t,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n=\"function\"==typeof setTimeout?setTimeout:o}catch(t){n=o}try{a=\"function\"==typeof clearTimeout?clearTimeout:s}catch(t){a=s}}();var c,u=[],h=!1,f=-1;function p(){h&&c&&(h=!1,c.length?u=c.concat(u):f=-1,u.length&&d())}function d(){if(!h){var t=l(p);h=!0;for(var e=u.length;e;){for(c=u,u=[];++f<e;)c&&c[f].run();f=-1,e=u.length}c=null,h=!1,function(t){if(a===clearTimeout)return clearTimeout(t);if((a===s||!a)&&clearTimeout)return a=clearTimeout,clearTimeout(t);try{a(t)}catch(e){try{return a.call(null,t)}catch(e){return a.call(this,t)}}}(t)}}function g(t,e){this.fun=t,this.array=e}function m(){}i.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];u.push(new g(t,e)),1!==u.length||h||l(d)},g.prototype.run=function(){this.fun.apply(null,this.array)},i.title=\"browser\",i.browser=!0,i.env={},i.argv=[],i.version=\"\",i.versions={},i.on=m,i.addListener=m,i.once=m,i.off=m,i.removeListener=m,i.removeAllListeners=m,i.emit=m,i.prependListener=m,i.prependOnceListener=m,i.listeners=function(t){return[]},i.binding=function(t){throw new Error(\"process.binding is not supported\")},i.cwd=function(){return\"/\"},i.chdir=function(t){throw new Error(\"process.chdir is not supported\")},i.umask=function(){return 0}},{}],501:[function(t,e,r){e.exports=t(\"gl-quat/slerp\")},{\"gl-quat/slerp\":304}],502:[function(t,e,r){(function(r){for(var n=t(\"performance-now\"),a=\"undefined\"==typeof window?r:window,i=[\"moz\",\"webkit\"],o=\"AnimationFrame\",s=a[\"request\"+o],l=a[\"cancel\"+o]||a[\"cancelRequest\"+o],c=0;!s&&c<i.length;c++)s=a[i[c]+\"Request\"+o],l=a[i[c]+\"Cancel\"+o]||a[i[c]+\"CancelRequest\"+o];if(!s||!l){var u=0,h=0,f=[];s=function(t){if(0===f.length){var e=n(),r=Math.max(0,1e3/60-(e-u));u=r+e,setTimeout((function(){var t=f.slice(0);f.length=0;for(var e=0;e<t.length;e++)if(!t[e].cancelled)try{t[e].callback(u)}catch(t){setTimeout((function(){throw t}),0)}}),Math.round(r))}return f.push({handle:++h,callback:t,cancelled:!1}),h},l=function(t){for(var e=0;e<f.length;e++)f[e].handle===t&&(f[e].cancelled=!0)}}e.exports=function(t){return s.call(a,t)},e.exports.cancel=function(){l.apply(a,arguments)},e.exports.polyfill=function(t){t||(t=a),t.requestAnimationFrame=s,t.cancelAnimationFrame=l}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"performance-now\":482}],503:[function(t,e,r){\"use strict\";var n=t(\"big-rat/add\");e.exports=function(t,e){for(var r=t.length,a=new Array(r),i=0;i<r;++i)a[i]=n(t[i],e[i]);return a}},{\"big-rat/add\":80}],504:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=new Array(t.length),r=0;r<t.length;++r)e[r]=n(t[r]);return e};var n=t(\"big-rat\")},{\"big-rat\":83}],505:[function(t,e,r){\"use strict\";var n=t(\"big-rat\"),a=t(\"big-rat/mul\");e.exports=function(t,e){for(var r=n(e),i=t.length,o=new Array(i),s=0;s<i;++s)o[s]=a(t[s],r);return o}},{\"big-rat\":83,\"big-rat/mul\":92}],506:[function(t,e,r){\"use strict\";var n=t(\"big-rat/sub\");e.exports=function(t,e){for(var r=t.length,a=new Array(r),i=0;i<r;++i)a[i]=n(t[i],e[i]);return a}},{\"big-rat/sub\":94}],507:[function(t,e,r){\"use strict\";var n=t(\"compare-cell\"),a=t(\"compare-oriented-cell\"),i=t(\"cell-orientation\");e.exports=function(t){t.sort(a);for(var e=t.length,r=0,o=0;o<e;++o){var s=t[o],l=i(s);if(0!==l){if(r>0){var c=t[r-1];if(0===n(s,c)&&i(c)!==l){r-=1;continue}}t[r++]=s}}return t.length=r,t}},{\"cell-orientation\":117,\"compare-cell\":133,\"compare-oriented-cell\":134}],508:[function(t,e,r){\"use strict\";var n=t(\"array-bounds\"),a=t(\"color-normalize\"),i=t(\"update-diff\"),o=t(\"pick-by-alias\"),s=t(\"object-assign\"),l=t(\"flatten-vertex-data\"),c=t(\"to-float32\"),u=c.float32,h=c.fract32;e.exports=function(t,e){\"function\"==typeof t?(e||(e={}),e.regl=t):e=t;e.length&&(e.positions=e);if(!(t=e.regl).hasExtension(\"ANGLE_instanced_arrays\"))throw Error(\"regl-error2d: `ANGLE_instanced_arrays` extension should be enabled\");var r,c,p,d,g,m,v=t._gl,y={color:\"black\",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},x=[];return d=t.buffer({usage:\"dynamic\",type:\"uint8\",data:new Uint8Array(0)}),c=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),p=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),g=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),m=t.buffer({usage:\"static\",type:\"float\",data:f}),T(e),r=t({vert:\"\\n\\t\\tprecision highp float;\\n\\n\\t\\tattribute vec2 position, positionFract;\\n\\t\\tattribute vec4 error;\\n\\t\\tattribute vec4 color;\\n\\n\\t\\tattribute vec2 direction, lineOffset, capOffset;\\n\\n\\t\\tuniform vec4 viewport;\\n\\t\\tuniform float lineWidth, capSize;\\n\\t\\tuniform vec2 scale, scaleFract, translate, translateFract;\\n\\n\\t\\tvarying vec4 fragColor;\\n\\n\\t\\tvoid main() {\\n\\t\\t\\tfragColor = color / 255.;\\n\\n\\t\\t\\tvec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;\\n\\n\\t\\t\\tvec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;\\n\\n\\t\\t\\tvec2 position = position + dxy;\\n\\n\\t\\t\\tvec2 pos = (position + translate) * scale\\n\\t\\t\\t\\t+ (positionFract + translateFract) * scale\\n\\t\\t\\t\\t+ (position + translate) * scaleFract\\n\\t\\t\\t\\t+ (positionFract + translateFract) * scaleFract;\\n\\n\\t\\t\\tpos += pixelOffset / viewport.zw;\\n\\n\\t\\t\\tgl_Position = vec4(pos * 2. - 1., 0, 1);\\n\\t\\t}\\n\\t\\t\",frag:\"\\n\\t\\tprecision highp float;\\n\\n\\t\\tvarying vec4 fragColor;\\n\\n\\t\\tuniform float opacity;\\n\\n\\t\\tvoid main() {\\n\\t\\t\\tgl_FragColor = fragColor;\\n\\t\\t\\tgl_FragColor.a *= opacity;\\n\\t\\t}\\n\\t\\t\",uniforms:{range:t.prop(\"range\"),lineWidth:t.prop(\"lineWidth\"),capSize:t.prop(\"capSize\"),opacity:t.prop(\"opacity\"),scale:t.prop(\"scale\"),translate:t.prop(\"translate\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{color:{buffer:d,offset:function(t,e){return 4*e.offset},divisor:1},position:{buffer:c,offset:function(t,e){return 8*e.offset},divisor:1},positionFract:{buffer:p,offset:function(t,e){return 8*e.offset},divisor:1},error:{buffer:g,offset:function(t,e){return 16*e.offset},divisor:1},direction:{buffer:m,stride:24,offset:0},lineOffset:{buffer:m,stride:24,offset:8},capOffset:{buffer:m,stride:24,offset:16}},primitive:\"triangles\",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:\"add\",alpha:\"add\"},func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},depth:{enable:!1},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\"),stencil:!1,instances:t.prop(\"count\"),count:f.length}),s(b,{update:T,draw:_,destroy:k,regl:t,gl:v,canvas:v.canvas,groups:x}),b;function b(t){t?T(t):null===t&&k(),_()}function _(e){if(\"number\"==typeof e)return w(e);e&&!Array.isArray(e)&&(e=[e]),t._refresh(),x.forEach((function(t,r){t&&(e&&(e[r]?t.draw=!0:t.draw=!1),t.draw?w(r):t.draw=!0)}))}function w(t){\"number\"==typeof t&&(t=x[t]),null!=t&&t&&t.count&&t.color&&t.opacity&&t.positions&&t.positions.length>1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]*t.viewport.height],r(t),t.after&&t.after(t))}function T(t){if(t){null!=t.length?\"number\"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var e=0,r=0;if(b.groups=x=t.map((function(t,c){var u=x[c];return t?(\"function\"==typeof t?t={after:t}:\"number\"==typeof t[0]&&(t={positions:t}),t=o(t,{color:\"color colors fill\",capSize:\"capSize cap capsize cap-size\",lineWidth:\"lineWidth line-width width line thickness\",opacity:\"opacity alpha\",range:\"range dataBox\",viewport:\"viewport viewBox\",errors:\"errors error\",positions:\"positions position data points\"}),u||(x[c]=u={id:c,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},t=s({},y,t)),i(u,t,[{lineWidth:function(t){return.5*+t},capSize:function(t){return.5*+t},opacity:parseFloat,errors:function(t){return t=l(t),r+=t.length,t},positions:function(t,r){return t=l(t,\"float64\"),r.count=Math.floor(t.length/2),r.bounds=n(t,2),r.offset=e,e+=r.count,t}},{color:function(t,e){var r=e.count;if(t||(t=\"transparent\"),!Array.isArray(t)||\"number\"==typeof t[0]){var n=t;t=Array(r);for(var i=0;i<r;i++)t[i]=n}if(t.length<r)throw Error(\"Not enough colors\");for(var o=new Uint8Array(4*r),s=0;s<r;s++){var l=a(t[s],\"uint8\");o.set(l,4*s)}return o},range:function(t,e,r){var n=e.bounds;return t||(t=n),e.scale=[1/(t[2]-t[0]),1/(t[3]-t[1])],e.translate=[-t[0],-t[1]],e.scaleFract=h(e.scale),e.translateFract=h(e.translate),t},viewport:function(t){var e;return Array.isArray(t)?e={x:t[0],y:t[1],width:t[2]-t[0],height:t[3]-t[1]}:t?(e={x:t.x||t.left||0,y:t.y||t.top||0},t.right?e.width=t.right-e.x:e.width=t.w||t.width||0,t.bottom?e.height=t.bottom-e.y:e.height=t.h||t.height||0):e={x:0,y:0,width:v.drawingBufferWidth,height:v.drawingBufferHeight},e}}]),u):u})),e||r){var f=x.reduce((function(t,e,r){return t+(e?e.count:0)}),0),m=new Float64Array(2*f),_=new Uint8Array(4*f),w=new Float32Array(4*f);x.forEach((function(t,e){if(t){var r=t.positions,n=t.count,a=t.offset,i=t.color,o=t.errors;n&&(_.set(i,4*a),w.set(o,4*a),m.set(r,2*a))}})),c(u(m)),p(h(m)),d(_),g(w)}}}function k(){c.destroy(),p.destroy(),d.destroy(),g.destroy(),m.destroy()}};var f=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]]},{\"array-bounds\":70,\"color-normalize\":125,\"flatten-vertex-data\":244,\"object-assign\":473,\"pick-by-alias\":485,\"to-float32\":549,\"update-diff\":571}],509:[function(t,e,r){\"use strict\";var n=t(\"color-normalize\"),a=t(\"array-bounds\"),i=t(\"object-assign\"),o=t(\"glslify\"),s=t(\"pick-by-alias\"),l=t(\"flatten-vertex-data\"),c=t(\"earcut\"),u=t(\"array-normalize\"),h=t(\"to-float32\"),f=h.float32,p=h.fract32,d=t(\"es6-weak-map\"),g=t(\"parse-rect\");function m(t,e){if(!(this instanceof m))return new m(t,e);if(\"function\"==typeof t?(e||(e={}),e.regl=t):e=t,e.length&&(e.positions=e),!(t=e.regl).hasExtension(\"ANGLE_instanced_arrays\"))throw Error(\"regl-error2d: `ANGLE_instanced_arrays` extension should be enabled\");this.gl=t._gl,this.regl=t,this.passes=[],this.shaders=m.shaders.has(t)?m.shaders.get(t):m.shaders.set(t,m.createShaders(t)).get(t),this.update(e)}e.exports=m,m.dashMult=2,m.maxPatternLength=256,m.precisionThreshold=3e6,m.maxPoints=1e4,m.maxLines=2048,m.shaders=new d,m.createShaders=function(t){var e,r=t.buffer({usage:\"static\",type:\"float\",data:[0,1,0,0,1,1,1,0]}),n={primitive:\"triangle strip\",instances:t.prop(\"count\"),count:4,offset:0,uniforms:{miterMode:function(t,e){return\"round\"===e.join?2:1},miterLimit:t.prop(\"miterLimit\"),scale:t.prop(\"scale\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),translate:t.prop(\"translate\"),thickness:t.prop(\"thickness\"),dashPattern:t.prop(\"dashTexture\"),opacity:t.prop(\"opacity\"),pixelRatio:t.context(\"pixelRatio\"),id:t.prop(\"id\"),dashSize:t.prop(\"dashLength\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]},depth:t.prop(\"depth\")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:\"add\",alpha:\"add\"},func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},depth:{enable:function(t,e){return!e.overlay}},stencil:{enable:!1},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\")},a=t(i({vert:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;\\nattribute vec4 color;\\nattribute float lineEnd, lineTop;\\n\\nuniform vec2 scale, scaleFract, translate, translateFract;\\nuniform float thickness, pixelRatio, id, depth;\\nuniform vec4 viewport;\\n\\nvarying vec4 fragColor;\\nvarying vec2 tangent;\\n\\nvec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {\\n\\t// the order is important\\n\\treturn position * scale + translate\\n       + positionFract * scale + translateFract\\n       + position * scaleFract\\n       + positionFract * scaleFract;\\n}\\n\\nvoid main() {\\n\\tfloat lineStart = 1. - lineEnd;\\n\\tfloat lineOffset = lineTop * 2. - 1.;\\n\\n\\tvec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);\\n\\ttangent = normalize(diff * scale * viewport.zw);\\n\\tvec2 normal = vec2(-tangent.y, tangent.x);\\n\\n\\tvec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart\\n\\t\\t+ project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd\\n\\n\\t\\t+ thickness * normal * .5 * lineOffset / viewport.zw;\\n\\n\\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\\n\\n\\tfragColor = color / 255.;\\n}\\n\"]),frag:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform sampler2D dashPattern;\\n\\nuniform float dashSize, pixelRatio, thickness, opacity, id;\\n\\nvarying vec4 fragColor;\\nvarying vec2 tangent;\\n\\nvoid main() {\\n\\tfloat alpha = 1.;\\n\\n\\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashSize) * .5 + .25;\\n\\tfloat dash = texture2D(dashPattern, vec2(t, .5)).r;\\n\\n\\tgl_FragColor = fragColor;\\n\\tgl_FragColor.a *= alpha * opacity * dash;\\n}\\n\"]),attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:16,divisor:1},color:{buffer:t.prop(\"colorBuffer\"),stride:4,offset:0,divisor:1}}},n));try{e=t(i({cull:{enable:!0,face:\"back\"},vert:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec2 aCoord, bCoord, nextCoord, prevCoord;\\nattribute vec4 aColor, bColor;\\nattribute float lineEnd, lineTop;\\n\\nuniform vec2 scale, translate;\\nuniform float thickness, pixelRatio, id, depth;\\nuniform vec4 viewport;\\nuniform float miterLimit, miterMode;\\n\\nvarying vec4 fragColor;\\nvarying vec4 startCutoff, endCutoff;\\nvarying vec2 tangent;\\nvarying vec2 startCoord, endCoord;\\nvarying float enableStartMiter, enableEndMiter;\\n\\nconst float REVERSE_THRESHOLD = -.875;\\nconst float MIN_DIFF = 1e-6;\\n\\n// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead\\n// TODO: precalculate dot products, normalize things beforehead etc.\\n// TODO: refactor to rectangular algorithm\\n\\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\\n\\tvec2 diff = b - a;\\n\\tvec2 perp = normalize(vec2(-diff.y, diff.x));\\n\\treturn dot(p - a, perp);\\n}\\n\\nbool isNaN( float val ){\\n  return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;\\n}\\n\\nvoid main() {\\n\\tvec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;\\n\\n  vec2 adjustedScale;\\n  adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;\\n  adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;\\n\\n  vec2 scaleRatio = adjustedScale * viewport.zw;\\n\\tvec2 normalWidth = thickness / scaleRatio;\\n\\n\\tfloat lineStart = 1. - lineEnd;\\n\\tfloat lineBot = 1. - lineTop;\\n\\n\\tfragColor = (lineStart * aColor + lineEnd * bColor) / 255.;\\n\\n\\tif (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;\\n\\n\\tif (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);\\n\\tif (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);\\n\\n\\tvec2 prevDiff = aCoord - prevCoord;\\n\\tvec2 currDiff = bCoord - aCoord;\\n\\tvec2 nextDiff = nextCoord - bCoord;\\n\\n\\tvec2 prevTangent = normalize(prevDiff * scaleRatio);\\n\\tvec2 currTangent = normalize(currDiff * scaleRatio);\\n\\tvec2 nextTangent = normalize(nextDiff * scaleRatio);\\n\\n\\tvec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);\\n\\tvec2 currNormal = vec2(-currTangent.y, currTangent.x);\\n\\tvec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);\\n\\n\\tvec2 startJoinDirection = normalize(prevTangent - currTangent);\\n\\tvec2 endJoinDirection = normalize(currTangent - nextTangent);\\n\\n\\t// collapsed/unidirectional segment cases\\n\\t// FIXME: there should be more elegant solution\\n\\tvec2 prevTanDiff = abs(prevTangent - currTangent);\\n\\tvec2 nextTanDiff = abs(nextTangent - currTangent);\\n\\tif (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {\\n\\t\\tstartJoinDirection = currNormal;\\n\\t}\\n\\tif (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {\\n\\t\\tendJoinDirection = currNormal;\\n\\t}\\n\\tif (aCoord == bCoord) {\\n\\t\\tendJoinDirection = startJoinDirection;\\n\\t\\tcurrNormal = prevNormal;\\n\\t\\tcurrTangent = prevTangent;\\n\\t}\\n\\n\\ttangent = currTangent;\\n\\n\\t//calculate join shifts relative to normals\\n\\tfloat startJoinShift = dot(currNormal, startJoinDirection);\\n\\tfloat endJoinShift = dot(currNormal, endJoinDirection);\\n\\n\\tfloat startMiterRatio = abs(1. / startJoinShift);\\n\\tfloat endMiterRatio = abs(1. / endJoinShift);\\n\\n\\tvec2 startJoin = startJoinDirection * startMiterRatio;\\n\\tvec2 endJoin = endJoinDirection * endMiterRatio;\\n\\n\\tvec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;\\n\\tstartTopJoin = sign(startJoinShift) * startJoin * .5;\\n\\tstartBotJoin = -startTopJoin;\\n\\n\\tendTopJoin = sign(endJoinShift) * endJoin * .5;\\n\\tendBotJoin = -endTopJoin;\\n\\n\\tvec2 aTopCoord = aCoord + normalWidth * startTopJoin;\\n\\tvec2 bTopCoord = bCoord + normalWidth * endTopJoin;\\n\\tvec2 aBotCoord = aCoord + normalWidth * startBotJoin;\\n\\tvec2 bBotCoord = bCoord + normalWidth * endBotJoin;\\n\\n\\t//miter anti-clipping\\n\\tfloat baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));\\n\\tfloat abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));\\n\\n\\t//prevent close to reverse direction switch\\n\\tbool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) <  length(normalWidth * currNormal);\\n\\tbool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) <  length(normalWidth * currNormal);\\n\\n\\tif (prevReverse) {\\n\\t\\t//make join rectangular\\n\\t\\tvec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;\\n\\t\\tfloat normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);\\n\\t\\taBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\\n\\t\\taTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\\n\\t}\\n\\telse if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {\\n\\t\\t//handle miter clipping\\n\\t\\tbTopCoord -= normalWidth * endTopJoin;\\n\\t\\tbTopCoord += normalize(endTopJoin * normalWidth) * baClipping;\\n\\t}\\n\\n\\tif (nextReverse) {\\n\\t\\t//make join rectangular\\n\\t\\tvec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;\\n\\t\\tfloat normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);\\n\\t\\tbBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\\n\\t\\tbTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\\n\\t}\\n\\telse if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {\\n\\t\\t//handle miter clipping\\n\\t\\taBotCoord -= normalWidth * startBotJoin;\\n\\t\\taBotCoord += normalize(startBotJoin * normalWidth) * abClipping;\\n\\t}\\n\\n\\tvec2 aTopPosition = (aTopCoord) * adjustedScale + translate;\\n\\tvec2 aBotPosition = (aBotCoord) * adjustedScale + translate;\\n\\n\\tvec2 bTopPosition = (bTopCoord) * adjustedScale + translate;\\n\\tvec2 bBotPosition = (bBotCoord) * adjustedScale + translate;\\n\\n\\t//position is normalized 0..1 coord on the screen\\n\\tvec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;\\n\\n\\tstartCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;\\n\\tendCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;\\n\\n\\tgl_Position = vec4(position  * 2.0 - 1.0, depth, 1);\\n\\n\\tenableStartMiter = step(dot(currTangent, prevTangent), .5);\\n\\tenableEndMiter = step(dot(currTangent, nextTangent), .5);\\n\\n\\t//bevel miter cutoffs\\n\\tif (miterMode == 1.) {\\n\\t\\tif (enableStartMiter == 1.) {\\n\\t\\t\\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;\\n\\t\\t\\tstartCutoff = vec4(aCoord, aCoord);\\n\\t\\t\\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\\n\\t\\t\\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tstartCutoff += viewport.xyxy;\\n\\t\\t\\tstartCutoff += startMiterWidth.xyxy;\\n\\t\\t}\\n\\n\\t\\tif (enableEndMiter == 1.) {\\n\\t\\t\\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;\\n\\t\\t\\tendCutoff = vec4(bCoord, bCoord);\\n\\t\\t\\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x)  / scaleRatio;\\n\\t\\t\\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tendCutoff += viewport.xyxy;\\n\\t\\t\\tendCutoff += endMiterWidth.xyxy;\\n\\t\\t}\\n\\t}\\n\\n\\t//round miter cutoffs\\n\\telse if (miterMode == 2.) {\\n\\t\\tif (enableStartMiter == 1.) {\\n\\t\\t\\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;\\n\\t\\t\\tstartCutoff = vec4(aCoord, aCoord);\\n\\t\\t\\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\\n\\t\\t\\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tstartCutoff += viewport.xyxy;\\n\\t\\t\\tstartCutoff += startMiterWidth.xyxy;\\n\\t\\t}\\n\\n\\t\\tif (enableEndMiter == 1.) {\\n\\t\\t\\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;\\n\\t\\t\\tendCutoff = vec4(bCoord, bCoord);\\n\\t\\t\\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x)  / scaleRatio;\\n\\t\\t\\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tendCutoff += viewport.xyxy;\\n\\t\\t\\tendCutoff += endMiterWidth.xyxy;\\n\\t\\t}\\n\\t}\\n}\\n\"]),frag:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform sampler2D dashPattern;\\nuniform float dashSize, pixelRatio, thickness, opacity, id, miterMode;\\n\\nvarying vec4 fragColor;\\nvarying vec2 tangent;\\nvarying vec4 startCutoff, endCutoff;\\nvarying vec2 startCoord, endCoord;\\nvarying float enableStartMiter, enableEndMiter;\\n\\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\\n\\tvec2 diff = b - a;\\n\\tvec2 perp = normalize(vec2(-diff.y, diff.x));\\n\\treturn dot(p - a, perp);\\n}\\n\\nvoid main() {\\n\\tfloat alpha = 1., distToStart, distToEnd;\\n\\tfloat cutoff = thickness * .5;\\n\\n\\t//bevel miter\\n\\tif (miterMode == 1.) {\\n\\t\\tif (enableStartMiter == 1.) {\\n\\t\\t\\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\\n\\t\\t\\tif (distToStart < -1.) {\\n\\t\\t\\t\\tdiscard;\\n\\t\\t\\t\\treturn;\\n\\t\\t\\t}\\n\\t\\t\\talpha *= min(max(distToStart + 1., 0.), 1.);\\n\\t\\t}\\n\\n\\t\\tif (enableEndMiter == 1.) {\\n\\t\\t\\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\\n\\t\\t\\tif (distToEnd < -1.) {\\n\\t\\t\\t\\tdiscard;\\n\\t\\t\\t\\treturn;\\n\\t\\t\\t}\\n\\t\\t\\talpha *= min(max(distToEnd + 1., 0.), 1.);\\n\\t\\t}\\n\\t}\\n\\n\\t// round miter\\n\\telse if (miterMode == 2.) {\\n\\t\\tif (enableStartMiter == 1.) {\\n\\t\\t\\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\\n\\t\\t\\tif (distToStart < 0.) {\\n\\t\\t\\t\\tfloat radius = length(gl_FragCoord.xy - startCoord);\\n\\n\\t\\t\\t\\tif(radius > cutoff + .5) {\\n\\t\\t\\t\\t\\tdiscard;\\n\\t\\t\\t\\t\\treturn;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\tif (enableEndMiter == 1.) {\\n\\t\\t\\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\\n\\t\\t\\tif (distToEnd < 0.) {\\n\\t\\t\\t\\tfloat radius = length(gl_FragCoord.xy - endCoord);\\n\\n\\t\\t\\t\\tif(radius > cutoff + .5) {\\n\\t\\t\\t\\t\\tdiscard;\\n\\t\\t\\t\\t\\treturn;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashSize) * .5 + .25;\\n\\tfloat dash = texture2D(dashPattern, vec2(t, .5)).r;\\n\\n\\tgl_FragColor = fragColor;\\n\\tgl_FragColor.a *= alpha * opacity * dash;\\n}\\n\"]),attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:t.prop(\"colorBuffer\"),stride:4,offset:0,divisor:1},bColor:{buffer:t.prop(\"colorBuffer\"),stride:4,offset:4,divisor:1},prevCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:0,divisor:1},aCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:16,divisor:1},nextCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:24,divisor:1}}},n))}catch(t){e=a}return{fill:t({primitive:\"triangle\",elements:function(t,e){return e.triangles},offset:0,vert:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position, positionFract;\\n\\nuniform vec4 color;\\nuniform vec2 scale, scaleFract, translate, translateFract;\\nuniform float pixelRatio, id;\\nuniform vec4 viewport;\\nuniform float opacity;\\n\\nvarying vec4 fragColor;\\n\\nconst float MAX_LINES = 256.;\\n\\nvoid main() {\\n\\tfloat depth = (MAX_LINES - 4. - id) / (MAX_LINES);\\n\\n\\tvec2 position = position * scale + translate\\n       + positionFract * scale + translateFract\\n       + position * scaleFract\\n       + positionFract * scaleFract;\\n\\n\\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\\n\\n\\tfragColor = color / 255.;\\n\\tfragColor.a *= opacity;\\n}\\n\"]),frag:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n\\tgl_FragColor = fragColor;\\n}\\n\"]),uniforms:{scale:t.prop(\"scale\"),color:t.prop(\"fill\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),translate:t.prop(\"translate\"),opacity:t.prop(\"opacity\"),pixelRatio:t.context(\"pixelRatio\"),id:t.prop(\"id\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{position:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8},positionFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:a,miter:e}},m.defaults={dashes:null,join:\"miter\",miterLimit:1,thickness:10,cap:\"square\",color:\"black\",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},m.prototype.render=function(){for(var t,e=[],r=arguments.length;r--;)e[r]=arguments[r];e.length&&(t=this).update.apply(t,e),this.draw()},m.prototype.draw=function(){for(var t=this,e=[],r=arguments.length;r--;)e[r]=arguments[r];return(e.length?e:this.passes).forEach((function(e,r){var n;if(e&&Array.isArray(e))return(n=t).draw.apply(n,e);\"number\"==typeof e&&(e=t.passes[e]),e&&e.count>1&&e.opacity&&(t.regl._refresh(),e.fill&&e.triangles&&e.triangles.length>2&&t.shaders.fill(e),e.thickness&&(e.scale[0]*e.viewport.width>m.precisionThreshold||e.scale[1]*e.viewport.height>m.precisionThreshold||\"rect\"===e.join||!e.join&&(e.thickness<=2||e.count>=m.maxPoints)?t.shaders.rect(e):t.shaders.miter(e)))})),this},m.prototype.update=function(t){var e=this;if(t){null!=t.length?\"number\"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var r=this.regl,o=this.gl;if(t.forEach((function(t,h){var d=e.passes[h];if(void 0!==t)if(null!==t){if(\"number\"==typeof t[0]&&(t={positions:t}),t=s(t,{positions:\"positions points data coords\",thickness:\"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth\",join:\"lineJoin linejoin join type mode\",miterLimit:\"miterlimit miterLimit\",dashes:\"dash dashes dasharray dash-array dashArray\",color:\"color colour stroke colors colours stroke-color strokeColor\",fill:\"fill fill-color fillColor\",opacity:\"alpha opacity\",overlay:\"overlay crease overlap intersect\",close:\"closed close closed-path closePath\",range:\"range dataBox\",viewport:\"viewport viewBox\",hole:\"holes hole hollow\"}),d||(e.passes[h]=d={id:h,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:r.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:\"linear\",min:\"linear\"}),colorBuffer:r.buffer({usage:\"dynamic\",type:\"uint8\",data:new Uint8Array}),positionBuffer:r.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array}),positionFractBuffer:r.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array})},t=i({},m.defaults,t)),null!=t.thickness&&(d.thickness=parseFloat(t.thickness)),null!=t.opacity&&(d.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(d.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(d.overlay=!!t.overlay,h<m.maxLines&&(d.depth=2*(m.maxLines-1-h%m.maxLines)/m.maxLines-1)),null!=t.join&&(d.join=t.join),null!=t.hole&&(d.hole=t.hole),null!=t.fill&&(d.fill=t.fill?n(t.fill,\"uint8\"):null),null!=t.viewport&&(d.viewport=g(t.viewport)),d.viewport||(d.viewport=g([o.drawingBufferWidth,o.drawingBufferHeight])),null!=t.close&&(d.close=t.close),null===t.positions&&(t.positions=[]),t.positions){var v,y;if(t.positions.x&&t.positions.y){var x=t.positions.x,b=t.positions.y;y=d.count=Math.max(x.length,b.length),v=new Float64Array(2*y);for(var _=0;_<y;_++)v[2*_]=x[_],v[2*_+1]=b[_]}else v=l(t.positions,\"float64\"),y=d.count=Math.floor(v.length/2);var w=d.bounds=a(v,2);if(d.fill){for(var T=[],k={},M=0,A=0,S=0,E=d.count;A<E;A++){var C=v[2*A],L=v[2*A+1];isNaN(C)||isNaN(L)||null==C||null==L?(C=v[2*M],L=v[2*M+1],k[A]=M):M=A,T[S++]=C,T[S++]=L}for(var P=c(T,d.hole||[]),I=0,z=P.length;I<z;I++)null!=k[P[I]]&&(P[I]=k[P[I]]);d.triangles=P}var O=new Float64Array(v);u(O,2,w);var D=new Float64Array(2*y+6);d.close?v[0]===v[2*y-2]&&v[1]===v[2*y-1]?(D[0]=O[2*y-4],D[1]=O[2*y-3]):(D[0]=O[2*y-2],D[1]=O[2*y-1]):(D[0]=O[0],D[1]=O[1]),D.set(O,2),d.close?v[0]===v[2*y-2]&&v[1]===v[2*y-1]?(D[2*y+2]=O[2],D[2*y+3]=O[3],d.count-=1):(D[2*y+2]=O[0],D[2*y+3]=O[1],D[2*y+4]=O[2],D[2*y+5]=O[3]):(D[2*y+2]=O[2*y-2],D[2*y+3]=O[2*y-1],D[2*y+4]=O[2*y-2],D[2*y+5]=O[2*y-1]),d.positionBuffer(f(D)),d.positionFractBuffer(p(D))}if(t.range?d.range=t.range:d.range||(d.range=d.bounds),(t.range||t.positions)&&d.count){var R=d.bounds,F=R[2]-R[0],B=R[3]-R[1],N=d.range[2]-d.range[0],j=d.range[3]-d.range[1];d.scale=[F/N,B/j],d.translate=[-d.range[0]/N+R[0]/N||0,-d.range[1]/j+R[1]/j||0],d.scaleFract=p(d.scale),d.translateFract=p(d.translate)}if(t.dashes){var U,V=0;if(!t.dashes||t.dashes.length<2)V=1,U=new Uint8Array([255,255,255,255,255,255,255,255]);else{V=0;for(var q=0;q<t.dashes.length;++q)V+=t.dashes[q];U=new Uint8Array(V*m.dashMult);for(var H=0,G=255,Y=0;Y<2;Y++)for(var W=0;W<t.dashes.length;++W){for(var Z=0,X=t.dashes[W]*m.dashMult*.5;Z<X;++Z)U[H++]=G;G^=255}}d.dashLength=V,d.dashTexture({channels:1,data:U,width:U.length,height:1,mag:\"linear\",min:\"linear\"},0,0)}if(t.color){var J=d.count,K=t.color;K||(K=\"transparent\");var Q=new Uint8Array(4*J+4);if(Array.isArray(K)&&\"number\"!=typeof K[0]){for(var $=0;$<J;$++){var tt=n(K[$],\"uint8\");Q.set(tt,4*$)}Q.set(n(K[0],\"uint8\"),4*J)}else for(var et=n(K,\"uint8\"),rt=0;rt<J+1;rt++)Q.set(et,4*rt);d.colorBuffer({usage:\"dynamic\",type:\"uint8\",data:Q})}}else e.passes[h]=null})),t.length<this.passes.length){for(var h=t.length;h<this.passes.length;h++){var d=this.passes[h];d&&(d.colorBuffer.destroy(),d.positionBuffer.destroy(),d.dashTexture.destroy())}this.passes.length=t.length}for(var v=[],y=0;y<this.passes.length;y++)null!==this.passes[y]&&v.push(this.passes[y]);return this.passes=v,this}},m.prototype.destroy=function(){return this.passes.forEach((function(t){t.colorBuffer.destroy(),t.positionBuffer.destroy(),t.dashTexture.destroy()})),this.passes.length=0,this}},{\"array-bounds\":70,\"array-normalize\":71,\"color-normalize\":125,earcut:177,\"es6-weak-map\":233,\"flatten-vertex-data\":244,glslify:413,\"object-assign\":473,\"parse-rect\":478,\"pick-by-alias\":485,\"to-float32\":549}],510:[function(t,e,r){\"use strict\";function n(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if(\"undefined\"==typeof Symbol||!(Symbol.iterator in Object(t)))return;var r=[],n=!0,a=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!e||r.length!==e);n=!0);}catch(t){a=!0,i=t}finally{try{n||null==s.return||s.return()}finally{if(a)throw i}}return r}(t,e)||i(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function a(t){return function(t){if(Array.isArray(t))return o(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||i(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){if(t){if(\"string\"==typeof t)return o(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===r&&t.constructor&&(r=t.constructor.name),\"Map\"===r||\"Set\"===r?Array.from(t):\"Arguments\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(t,e):void 0}}function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var s=t(\"color-normalize\"),l=t(\"array-bounds\"),c=t(\"color-id\"),u=t(\"@plotly/point-cluster\"),h=t(\"object-assign\"),f=t(\"glslify\"),p=t(\"pick-by-alias\"),d=t(\"update-diff\"),g=t(\"flatten-vertex-data\"),m=t(\"is-iexplorer\"),v=t(\"to-float32\"),y=t(\"parse-rect\"),x=b;function b(t,e){var r=this;if(!(this instanceof b))return new b(t,e);\"function\"==typeof t?(e||(e={}),e.regl=t):(e=t,t=null),e&&e.length&&(e.positions=e);var n,a=(t=e.regl)._gl,i=[];this.tooManyColors=m,n=t.texture({data:new Uint8Array(1020),width:255,height:1,type:\"uint8\",format:\"rgba\",wrapS:\"clamp\",wrapT:\"clamp\",mag:\"nearest\",min:\"nearest\"}),h(this,{regl:t,gl:a,groups:[],markerCache:[null],markerTextures:[null],palette:i,paletteIds:{},paletteTexture:n,maxColors:255,maxSize:100,canvas:a.canvas}),this.update(e);var o={uniforms:{constPointSize:!!e.constPointSize,pixelRatio:t.context(\"pixelRatio\"),palette:n,paletteSize:function(t,e){return[r.tooManyColors?0:255,n.height]},scale:t.prop(\"scale\"),scaleFract:t.prop(\"scaleFract\"),translate:t.prop(\"translate\"),translateFract:t.prop(\"translateFract\"),opacity:t.prop(\"opacity\"),marker:t.prop(\"markerTexture\")},attributes:{x:function(t,e){return e.xAttr||{buffer:e.positionBuffer,stride:8,offset:0}},y:function(t,e){return e.yAttr||{buffer:e.positionBuffer,stride:8,offset:4}},xFract:function(t,e){return e.xAttr?{constant:[0,0]}:{buffer:e.positionFractBuffer,stride:8,offset:0}},yFract:function(t,e){return e.yAttr?{constant:[0,0]}:{buffer:e.positionFractBuffer,stride:8,offset:4}},size:function(t,e){return e.size.length?{buffer:e.sizeBuffer,stride:2,offset:0}:{constant:[Math.round(255*e.size/r.maxSize)]}},borderSize:function(t,e){return e.borderSize.length?{buffer:e.sizeBuffer,stride:2,offset:1}:{constant:[Math.round(255*e.borderSize/r.maxSize)]}},colorId:function(t,e){return e.color.length?{buffer:e.colorBuffer,stride:r.tooManyColors?8:4,offset:0}:{constant:r.tooManyColors?i.slice(4*e.color,4*e.color+4):[e.color]}},borderColorId:function(t,e){return e.borderColor.length?{buffer:e.colorBuffer,stride:r.tooManyColors?8:4,offset:r.tooManyColors?4:2}:{constant:r.tooManyColors?i.slice(4*e.borderColor,4*e.borderColor+4):[e.borderColor]}},isActive:function(t,e){return!0===e.activation?{constant:[1]}:e.activation?e.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\"),stencil:{enable:!1},depth:{enable:!1},elements:t.prop(\"elements\"),count:t.prop(\"count\"),offset:t.prop(\"offset\"),primitive:\"points\"},s=h({},o);s.frag=f([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragWidth, fragBorderColorLevel, fragColorLevel;\\n\\nuniform sampler2D marker;\\nuniform float opacity;\\n\\nfloat smoothStep(float x, float y) {\\n  return 1.0 / (1.0 + exp(50.0*(x - y)));\\n}\\n\\nvoid main() {\\n  float dist = texture2D(marker, gl_PointCoord).r, delta = fragWidth;\\n\\n  // max-distance alpha\\n  if (dist < 0.003) discard;\\n\\n  // null-border case\\n  if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {\\n    float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);\\n    gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);\\n  }\\n  else {\\n    float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);\\n    float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);\\n\\n    vec4 color = fragBorderColor;\\n    color.a *= borderColorAmt;\\n    color = mix(color, fragColor, colorAmt);\\n    color.a *= opacity;\\n\\n    gl_FragColor = color;\\n  }\\n\\n}\\n\"]),s.vert=f([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute float x, y, xFract, yFract;\\nattribute float size, borderSize;\\nattribute vec4 colorId, borderColorId;\\nattribute float isActive;\\n\\nuniform vec2 scale, scaleFract, translate, translateFract, paletteSize;\\nuniform float pixelRatio;\\nuniform bool constPointSize;\\nuniform sampler2D palette;\\n\\nconst float maxSize = 100.;\\nconst float borderLevel = .5;\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;\\n\\nfloat pointSizeScale = (constPointSize) ? 2. : pixelRatio;\\n\\nbool isDirect = (paletteSize.x < 1.);\\n\\nvec4 getColor(vec4 id) {\\n  return isDirect ? id / 255. : texture2D(palette,\\n    vec2(\\n      (id.x + .5) / paletteSize.x,\\n      (id.y + .5) / paletteSize.y\\n    )\\n  );\\n}\\n\\nvoid main() {\\n  // ignore inactive points\\n  if (isActive == 0.) return;\\n\\n  vec2 position = vec2(x, y);\\n  vec2 positionFract = vec2(xFract, yFract);\\n\\n  vec4 color = getColor(colorId);\\n  vec4 borderColor = getColor(borderColorId);\\n\\n  float size = size * maxSize / 255.;\\n  float borderSize = borderSize * maxSize / 255.;\\n\\n  gl_PointSize = 2. * size * pointSizeScale;\\n  fragPointSize = size * pixelRatio;\\n\\n  vec2 pos = (position + translate) * scale\\n      + (positionFract + translateFract) * scale\\n      + (position + translate) * scaleFract\\n      + (positionFract + translateFract) * scaleFract;\\n\\n  gl_Position = vec4(pos * 2. - 1., 0., 1.);\\n\\n  fragColor = color;\\n  fragBorderColor = borderColor;\\n  fragWidth = 1. / gl_PointSize;\\n\\n  fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);\\n  fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);\\n}\"]),this.drawMarker=t(s);var l=h({},o);l.frag=f([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor, fragBorderColor;\\n\\nuniform float opacity;\\nvarying float fragBorderRadius, fragWidth;\\n\\nfloat smoothStep(float edge0, float edge1, float x) {\\n\\tfloat t;\\n\\tt = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);\\n\\treturn t * t * (3.0 - 2.0 * t);\\n}\\n\\nvoid main() {\\n\\tfloat radius, alpha = 1.0, delta = fragWidth;\\n\\n\\tradius = length(2.0 * gl_PointCoord.xy - 1.0);\\n\\n\\tif (radius > 1.0 + delta) {\\n\\t\\tdiscard;\\n\\t}\\n\\n\\talpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);\\n\\n\\tfloat borderRadius = fragBorderRadius;\\n\\tfloat ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);\\n\\tvec4 color = mix(fragColor, fragBorderColor, ratio);\\n\\tcolor.a *= alpha * opacity;\\n\\tgl_FragColor = color;\\n}\\n\"]),l.vert=f([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute float x, y, xFract, yFract;\\nattribute float size, borderSize;\\nattribute vec4 colorId, borderColorId;\\nattribute float isActive;\\n\\nuniform vec2 scale, scaleFract, translate, translateFract;\\nuniform float pixelRatio;\\nuniform bool constPointSize;\\nuniform sampler2D palette;\\nuniform vec2 paletteSize;\\n\\nconst float maxSize = 100.;\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragBorderRadius, fragWidth;\\n\\nfloat pointSizeScale = (constPointSize) ? 2. : pixelRatio;\\n\\nbool isDirect = (paletteSize.x < 1.);\\n\\nvec4 getColor(vec4 id) {\\n  return isDirect ? id / 255. : texture2D(palette,\\n    vec2(\\n      (id.x + .5) / paletteSize.x,\\n      (id.y + .5) / paletteSize.y\\n    )\\n  );\\n}\\n\\nvoid main() {\\n  // ignore inactive points\\n  if (isActive == 0.) return;\\n\\n  vec2 position = vec2(x, y);\\n  vec2 positionFract = vec2(xFract, yFract);\\n\\n  vec4 color = getColor(colorId);\\n  vec4 borderColor = getColor(borderColorId);\\n\\n  float size = size * maxSize / 255.;\\n  float borderSize = borderSize * maxSize / 255.;\\n\\n  gl_PointSize = (size + borderSize) * pointSizeScale;\\n\\n  vec2 pos = (position + translate) * scale\\n      + (positionFract + translateFract) * scale\\n      + (position + translate) * scaleFract\\n      + (positionFract + translateFract) * scaleFract;\\n\\n  gl_Position = vec4(pos * 2. - 1., 0., 1.);\\n\\n  fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);\\n  fragColor = color;\\n  fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;\\n  fragWidth = 1. / gl_PointSize;\\n}\\n\"]),m&&(l.frag=l.frag.replace(\"smoothstep\",\"smoothStep\"),s.frag=s.frag.replace(\"smoothstep\",\"smoothStep\")),this.drawCircle=t(l)}b.defaults={color:\"black\",borderColor:\"transparent\",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];var a=this.groups;if(1===r.length&&Array.isArray(r[0])&&(null===r[0][0]||Array.isArray(r[0][0]))&&(r=r[0]),this.regl._refresh(),r.length)for(var i=0;i<r.length;i++)this.drawItem(i,r[i]);else a.forEach((function(e,r){t.drawItem(r)}));return this},b.prototype.drawItem=function(t,e){var r=this.groups,n=r[t];if(\"number\"==typeof e&&(t=e,n=r[e],e=null),n&&n.count&&n.opacity){n.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,n,e));for(var i=[],o=1;o<n.activation.length;o++)n.activation[o]&&(!0===n.activation[o]||n.activation[o].data.length)&&i.push.apply(i,a(this.getMarkerDrawOptions(o,n,e)));i.length&&this.drawMarker(i)}},b.prototype.getMarkerDrawOptions=function(t,e,r){var a=e.range,i=e.tree,o=e.viewport,s=e.activation,l=e.selectionBuffer,c=e.count;this.regl;if(!i)return r?[h({},e,{markerTexture:this.markerTextures[t],activation:s[t],count:r.length,elements:r,offset:0})]:[h({},e,{markerTexture:this.markerTextures[t],activation:s[t],offset:0})];var u=[],f=i.range(a,{lod:!0,px:[(a[2]-a[0])/o.width,(a[3]-a[1])/o.height]});if(r){for(var p=s[t].data,d=new Uint8Array(c),g=0;g<r.length;g++){var m=r[g];d[m]=p?p[m]:1}l.subdata(d)}for(var v=f.length;v--;){var y=n(f[v],2),x=y[0],b=y[1];u.push(h({},e,{markerTexture:this.markerTextures[t],activation:r?l:s[t],offset:x,count:b-x}))}return u},b.prototype.update=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];if(r.length){1===r.length&&Array.isArray(r[0])&&(r=r[0]);var a=this.groups,i=this.gl,o=this.regl,s=this.maxSize,c=this.maxColors,f=this.palette;this.groups=a=r.map((function(e,r){var n=a[r];if(void 0===e)return n;null===e?e={positions:null}:\"function\"==typeof e?e={ondraw:e}:\"number\"==typeof e[0]&&(e={positions:e}),null===(e=p(e,{positions:\"positions data points\",snap:\"snap cluster lod tree\",size:\"sizes size radius\",borderSize:\"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline\",color:\"colors color fill fill-color fillColor\",borderColor:\"borderColors borderColor stroke stroke-color strokeColor\",marker:\"markers marker shape\",range:\"range dataBox databox\",viewport:\"viewport viewPort viewBox viewbox\",opacity:\"opacity alpha transparency\",bounds:\"bound bounds boundaries limits\",tooManyColors:\"tooManyColors palette paletteMode optimizePalette enablePalette\"})).positions&&(e.positions=[]),null!=e.tooManyColors&&(t.tooManyColors=e.tooManyColors),n||(a[r]=n={id:r,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:o.buffer({data:new Uint8Array(0),usage:\"stream\",type:\"uint8\"}),sizeBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"uint8\"}),colorBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"uint8\"}),positionBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"float\"}),positionFractBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"float\"})},e=h({},b.defaults,e)),e.positions&&!(\"marker\"in e)&&(e.marker=n.marker,delete n.marker),e.marker&&!(\"positions\"in e)&&(e.positions=n.positions,delete n.positions);var m=0,x=0;if(d(n,e,[{snap:!0,size:function(t,e){return null==t&&(t=b.defaults.size),m+=t&&t.length?1:0,t},borderSize:function(t,e){return null==t&&(t=b.defaults.borderSize),m+=t&&t.length?1:0,t},opacity:parseFloat,color:function(e,r){return null==e&&(e=b.defaults.color),e=t.updateColor(e),x++,e},borderColor:function(e,r){return null==e&&(e=b.defaults.borderColor),e=t.updateColor(e),x++,e},bounds:function(t,e,r){return\"range\"in r||(r.range=null),t},positions:function(t,e,r){var n=e.snap,a=e.positionBuffer,i=e.positionFractBuffer,s=e.selectionBuffer;if(t.x||t.y)return t.x.length?e.xAttr={buffer:o.buffer(t.x),offset:0,stride:4,count:t.x.length}:e.xAttr={buffer:t.x.buffer,offset:4*t.x.offset||0,stride:4*(t.x.stride||1),count:t.x.count},t.y.length?e.yAttr={buffer:o.buffer(t.y),offset:0,stride:4,count:t.y.length}:e.yAttr={buffer:t.y.buffer,offset:4*t.y.offset||0,stride:4*(t.y.stride||1),count:t.y.count},e.count=Math.max(e.xAttr.count,e.yAttr.count),t;t=g(t,\"float64\");var c=e.count=Math.floor(t.length/2),h=e.bounds=c?l(t,2):null;if(r.range||e.range||(delete e.range,r.range=h),r.marker||e.marker||(delete e.marker,r.marker=null),n&&(!0===n||c>n)?e.tree=u(t,{bounds:h}):n&&n.length&&(e.tree=n),e.tree){var f={primitive:\"points\",usage:\"static\",data:e.tree,type:\"uint32\"};e.elements?e.elements(f):e.elements=o.elements(f)}return a({data:v.float(t),usage:\"dynamic\"}),i({data:v.fract(t),usage:\"dynamic\"}),s({data:new Uint8Array(c),type:\"uint8\",usage:\"stream\"}),t}},{marker:function(e,r,n){var a=r.activation;if(a.forEach((function(t){return t&&t.destroy&&t.destroy()})),a.length=0,e&&\"number\"!=typeof e[0]){for(var i=[],s=0,l=Math.min(e.length,r.count);s<l;s++){var c=t.addMarker(e[s]);i[c]||(i[c]=new Uint8Array(r.count)),i[c][s]=1}for(var u=0;u<i.length;u++)if(i[u]){var h={data:i[u],type:\"uint8\",usage:\"static\"};a[u]?a[u](h):a[u]=o.buffer(h),a[u].data=i[u]}}else{a[t.addMarker(e)]=!0}return e},range:function(t,e,r){var n=e.bounds;if(n)return t||(t=n),e.scale=[1/(t[2]-t[0]),1/(t[3]-t[1])],e.translate=[-t[0],-t[1]],e.scaleFract=v.fract(e.scale),e.translateFract=v.fract(e.translate),t},viewport:function(t){return y(t||[i.drawingBufferWidth,i.drawingBufferHeight])}}]),m){var _=n,w=_.count,T=_.size,k=_.borderSize,M=_.sizeBuffer,A=new Uint8Array(2*w);if(T.length||k.length)for(var S=0;S<w;S++)A[2*S]=Math.round(255*(null==T[S]?T:T[S])/s),A[2*S+1]=Math.round(255*(null==k[S]?k:k[S])/s);M({data:A,usage:\"dynamic\"})}if(x){var E,C=n,L=C.count,P=C.color,I=C.borderColor,z=C.colorBuffer;if(t.tooManyColors){if(P.length||I.length){E=new Uint8Array(8*L);for(var O=0;O<L;O++){var D=P[O];E[8*O]=f[4*D],E[8*O+1]=f[4*D+1],E[8*O+2]=f[4*D+2],E[8*O+3]=f[4*D+3];var R=I[O];E[8*O+4]=f[4*R],E[8*O+5]=f[4*R+1],E[8*O+6]=f[4*R+2],E[8*O+7]=f[4*R+3]}}}else if(P.length||I.length){E=new Uint8Array(4*L+2);for(var F=0;F<L;F++)null!=P[F]&&(E[4*F]=P[F]%c,E[4*F+1]=Math.floor(P[F]/c)),null!=I[F]&&(E[4*F+2]=I[F]%c,E[4*F+3]=Math.floor(I[F]/c))}z({data:E||new Uint8Array(0),type:\"uint8\",usage:\"dynamic\"})}return n}))}},b.prototype.addMarker=function(t){var e,r=this.markerTextures,n=this.regl,a=this.markerCache,i=null==t?0:a.indexOf(t);if(i>=0)return i;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o<s;o++)e[o]=255*t[o]}var l=Math.floor(Math.sqrt(e.length));return i=r.length,a.push(t),r.push(n.texture({channels:1,data:e,radius:l,mag:\"linear\",min:\"linear\"})),i},b.prototype.updateColor=function(t){var e=this.paletteIds,r=this.palette,n=this.maxColors;Array.isArray(t)||(t=[t]);var a=[];if(\"number\"==typeof t[0]){var i=[];if(Array.isArray(t))for(var o=0;o<t.length;o+=4)i.push(t.slice(o,o+4));else for(var l=0;l<t.length;l+=4)i.push(t.subarray(l,l+4));t=i}for(var u=0;u<t.length;u++){var h=t[u];h=s(h,\"uint8\");var f=c(h,!1);if(null==e[f]){var p=r.length;e[f]=Math.floor(p/4),r[p]=h[0],r[p+1]=h[1],r[p+2]=h[2],r[p+3]=h[3]}a[u]=e[f]}return!this.tooManyColors&&r.length>4*n&&(this.tooManyColors=!0),this.updatePalette(r),1===a.length?a[0]:a},b.prototype.updatePalette=function(t){if(!this.tooManyColors){var e=this.maxColors,r=this.paletteTexture,n=Math.ceil(.25*t.length/e);if(n>1)for(var a=.25*(t=t.slice()).length%e;a<n*e;a++)t.push(0,0,0,0);r.height<n&&r.resize(e,n),r.subimage({width:Math.min(.25*t.length,e),height:n,data:t},0,0)}},b.prototype.destroy=function(){return this.groups.forEach((function(t){t.sizeBuffer.destroy(),t.positionBuffer.destroy(),t.positionFractBuffer.destroy(),t.colorBuffer.destroy(),t.activation.forEach((function(t){return t&&t.destroy&&t.destroy()})),t.selectionBuffer.destroy(),t.elements&&t.elements.destroy()})),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach((function(t){return t&&t.destroy&&t.destroy()})),this};var _=t(\"object-assign\");e.exports=function(t,e){var r=new x(t,e),n=r.render.bind(r);return _(n,{render:n,update:r.update.bind(r),draw:r.draw.bind(r),destroy:r.destroy.bind(r),regl:r.regl,gl:r.gl,canvas:r.gl.canvas,groups:r.groups,markers:r.markerCache,palette:r.palette}),n}},{\"@plotly/point-cluster\":57,\"array-bounds\":70,\"color-id\":123,\"color-normalize\":125,\"flatten-vertex-data\":244,glslify:413,\"is-iexplorer\":440,\"object-assign\":473,\"parse-rect\":478,\"pick-by-alias\":485,\"to-float32\":549,\"update-diff\":571}],511:[function(t,e,r){\"use strict\";var n=t(\"regl-scatter2d\"),a=t(\"pick-by-alias\"),i=t(\"array-bounds\"),o=t(\"raf\"),s=t(\"array-range\"),l=t(\"parse-rect\"),c=t(\"flatten-vertex-data\");function u(t,e){if(!(this instanceof u))return new u(t,e);this.traces=[],this.passes={},this.regl=t,this.scatter=n(t),this.canvas=this.scatter.canvas}function h(t,e,r){return(null!=t.id?t.id:t)<<16|(255&e)<<8|255&r}function f(t,e,r){var n,a,i,o,s=t[e],l=t[r];return s.length>2?(s[0],s[2],n=s[1],a=s[3]):s.length?(n=s[0],a=s[1]):(s.x,n=s.y,s.x+s.width,a=s.y+s.height),l.length>2?(i=l[0],o=l[2],l[1],l[3]):l.length?(i=l[0],o=l[1]):(i=l.x,l.y,o=l.x+l.width,l.y+l.height),[i,n,o,a]}function p(t){if(\"number\"==typeof t)return[t,t,t,t];if(2===t.length)return[t[0],t[1],t[0],t[1]];var e=l(t);return[e.x,e.y,e.x+e.width,e.y+e.height]}e.exports=u,u.prototype.render=function(){for(var t,e=this,r=[],n=arguments.length;n--;)r[n]=arguments[n];return r.length&&(t=this).update.apply(t,r),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){e.draw(),e.dirty=!0,e.planned=null}))):(this.draw(),this.dirty=!0,o((function(){e.dirty=!1}))),this)},u.prototype.update=function(){for(var t,e=[],r=arguments.length;r--;)e[r]=arguments[r];if(e.length){for(var n=0;n<e.length;n++)this.updateItem(n,e[n]);this.traces=this.traces.filter(Boolean);for(var a=[],i=0,o=0;o<this.traces.length;o++){for(var s=this.traces[o],l=this.traces[o].passes,c=0;c<l.length;c++)a.push(this.passes[l[c]]);s.passOffset=i,i+=s.passes.length}return(t=this.scatter).update.apply(t,a),this}},u.prototype.updateItem=function(t,e){var r=this.regl;if(null===e)return this.traces[t]=null,this;if(!e)return this;var n,o=a(e,{data:\"data items columns rows values dimensions samples x\",snap:\"snap cluster\",size:\"sizes size radius\",color:\"colors color fill fill-color fillColor\",opacity:\"opacity alpha transparency opaque\",borderSize:\"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline\",borderColor:\"borderColors borderColor bordercolor stroke stroke-color strokeColor\",marker:\"markers marker shape\",range:\"range ranges databox dataBox\",viewport:\"viewport viewBox viewbox\",domain:\"domain domains area areas\",padding:\"pad padding paddings pads margin margins\",transpose:\"transpose transposed\",diagonal:\"diagonal diag showDiagonal\",upper:\"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf\",lower:\"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower\"}),s=this.traces[t]||(this.traces[t]={id:t,buffer:r.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array}),color:\"black\",marker:null,size:12,borderColor:\"transparent\",borderSize:1,viewport:l([r._gl.drawingBufferWidth,r._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(null!=o.color&&(s.color=o.color),null!=o.size&&(s.size=o.size),null!=o.marker&&(s.marker=o.marker),null!=o.borderColor&&(s.borderColor=o.borderColor),null!=o.borderSize&&(s.borderSize=o.borderSize),null!=o.opacity&&(s.opacity=o.opacity),o.viewport&&(s.viewport=l(o.viewport)),null!=o.diagonal&&(s.diagonal=o.diagonal),null!=o.upper&&(s.upper=o.upper),null!=o.lower&&(s.lower=o.lower),o.data){s.buffer(c(o.data)),s.columns=o.data.length,s.count=o.data[0].length,s.bounds=[];for(var u=0;u<s.columns;u++)s.bounds[u]=i(o.data[u],1)}o.range&&(s.range=o.range,n=s.range&&\"number\"!=typeof s.range[0]),o.domain&&(s.domain=o.domain);var d=!1;null!=o.padding&&(Array.isArray(o.padding)&&o.padding.length===s.columns&&\"number\"==typeof o.padding[o.padding.length-1]?(s.padding=o.padding.map(p),d=!0):s.padding=p(o.padding));var g=s.columns,m=s.count,v=s.viewport.width,y=s.viewport.height,x=s.viewport.x,b=s.viewport.y,_=v/g,w=y/g;s.passes=[];for(var T=0;T<g;T++)for(var k=0;k<g;k++)if((s.diagonal||k!==T)&&(s.upper||!(T>k))&&(s.lower||!(T<k))){var M=h(s.id,T,k),A=this.passes[M]||(this.passes[M]={});if(o.data&&(o.transpose?A.positions={x:{buffer:s.buffer,offset:k,count:m,stride:g},y:{buffer:s.buffer,offset:T,count:m,stride:g}}:A.positions={x:{buffer:s.buffer,offset:k*m,count:m},y:{buffer:s.buffer,offset:T*m,count:m}},A.bounds=f(s.bounds,T,k)),o.domain||o.viewport||o.data){var S=d?f(s.padding,T,k):s.padding;if(s.domain){var E=f(s.domain,T,k),C=E[0],L=E[1],P=E[2],I=E[3];A.viewport=[x+C*v+S[0],b+L*y+S[1],x+P*v-S[2],b+I*y-S[3]]}else A.viewport=[x+k*_+_*S[0],b+T*w+w*S[1],x+(k+1)*_-_*S[2],b+(T+1)*w-w*S[3]]}o.color&&(A.color=s.color),o.size&&(A.size=s.size),o.marker&&(A.marker=s.marker),o.borderSize&&(A.borderSize=s.borderSize),o.borderColor&&(A.borderColor=s.borderColor),o.opacity&&(A.opacity=s.opacity),o.range&&(A.range=n?f(s.range,T,k):s.range||A.bounds),s.passes.push(M)}return this},u.prototype.draw=function(){for(var t,e=[],r=arguments.length;r--;)e[r]=arguments[r];if(e.length){for(var n=[],a=0;a<e.length;a++)if(\"number\"==typeof e[a]){var i=this.traces[e[a]],o=i.passes,l=i.passOffset;n.push.apply(n,s(l,l+o.length))}else if(e[a].length){var c=e[a],u=this.traces[a],h=u.passes,f=u.passOffset;h=h.map((function(t,e){n[f+e]=c}))}(t=this.scatter).draw.apply(t,n)}else this.scatter.draw();return this},u.prototype.destroy=function(){return this.traces.forEach((function(t){t.buffer&&t.buffer.destroy&&t.buffer.destroy()})),this.traces=null,this.passes=null,this.scatter.destroy(),this}},{\"array-bounds\":70,\"array-range\":72,\"flatten-vertex-data\":244,\"parse-rect\":478,\"pick-by-alias\":485,raf:502,\"regl-scatter2d\":510}],512:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?e.exports=n():t.createREGL=n()}(this,(function(){function t(t,e){this.id=V++,this.type=t,this.data=e}function e(t){return\"[\"+function t(e){if(0===e.length)return[];var r=e.charAt(0),n=e.charAt(e.length-1);if(1<e.length&&r===n&&('\"'===r||\"'\"===r))return['\"'+e.substr(1,e.length-2).replace(/\\\\/g,\"\\\\\\\\\").replace(/\"/g,'\\\\\"')+'\"'];if(r=/\\[(false|true|null|\\d+|'[^']*'|\"[^\"]*\")\\]/.exec(e))return t(e.substr(0,r.index)).concat(t(r[1])).concat(t(e.substr(r.index+r[0].length)));if(1===(r=e.split(\".\")).length)return['\"'+e.replace(/\\\\/g,\"\\\\\\\\\").replace(/\"/g,'\\\\\"')+'\"'];for(e=[],n=0;n<r.length;++n)e=e.concat(t(r[n]));return e}(t).join(\"][\")+\"]\"}function r(t){return\"string\"==typeof t?t.split():t}function n(t){return\"string\"==typeof t?document.querySelector(t):t}function a(t){var e,a,i,o,s=t||{};t={};var l=[],c=[],u=\"undefined\"==typeof window?1:window.devicePixelRatio,h=!1,f=function(t){},p=function(){};if(\"string\"==typeof s?e=document.querySelector(s):\"object\"==typeof s&&(\"string\"==typeof s.nodeName&&\"function\"==typeof s.appendChild&&\"function\"==typeof s.getBoundingClientRect?e=s:\"function\"==typeof s.drawArrays||\"function\"==typeof s.drawElements?i=(o=s).canvas:(\"gl\"in s?o=s.gl:\"canvas\"in s?i=n(s.canvas):\"container\"in s&&(a=n(s.container)),\"attributes\"in s&&(t=s.attributes),\"extensions\"in s&&(l=r(s.extensions)),\"optionalExtensions\"in s&&(c=r(s.optionalExtensions)),\"onDone\"in s&&(f=s.onDone),\"profile\"in s&&(h=!!s.profile),\"pixelRatio\"in s&&(u=+s.pixelRatio))),e&&(\"canvas\"===e.nodeName.toLowerCase()?i=e:a=e),!o){if(!i){if(!(e=function(t,e,r){function n(){var e=window.innerWidth,n=window.innerHeight;t!==document.body&&(e=(n=t.getBoundingClientRect()).right-n.left,n=n.bottom-n.top),i.width=r*e,i.height=r*n,U(i.style,{width:e+\"px\",height:n+\"px\"})}var a,i=document.createElement(\"canvas\");return U(i.style,{border:0,margin:0,padding:0,top:0,left:0}),t.appendChild(i),t===document.body&&(i.style.position=\"absolute\",U(t.style,{margin:0,padding:0})),t!==document.body&&\"function\"==typeof ResizeObserver?(a=new ResizeObserver((function(){setTimeout(n)}))).observe(t):window.addEventListener(\"resize\",n,!1),n(),{canvas:i,onDestroy:function(){a?a.disconnect():window.removeEventListener(\"resize\",n),t.removeChild(i)}}}(a||document.body,0,u)))return null;i=e.canvas,p=e.onDestroy}void 0===t.premultipliedAlpha&&(t.premultipliedAlpha=!0),o=function(t,e){function r(r){try{return t.getContext(r,e)}catch(t){return null}}return r(\"webgl\")||r(\"experimental-webgl\")||r(\"webgl-experimental\")}(i,t)}return o?{gl:o,canvas:i,container:a,extensions:l,optionalExtensions:c,pixelRatio:u,profile:h,onDone:f,onDestroy:p}:(p(),f(\"webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org\"),null)}function i(t,e){for(var r=Array(t),n=0;n<t;++n)r[n]=e(n);return r}function o(t){var e,r;return e=(65535<t)<<4,e|=r=(255<(t>>>=e))<<3,(e|=r=(15<(t>>>=r))<<2)|(r=(3<(t>>>=r))<<1)|t>>>r>>1}function s(){function t(t){t:{for(var e=16;268435456>=e;e*=16)if(t<=e){t=e;break t}t=0}return 0<(e=r[o(t)>>2]).length?e.pop():new ArrayBuffer(t)}function e(t){r[o(t.byteLength)>>2].push(t)}var r=i(8,(function(){return[]}));return{alloc:t,free:e,allocType:function(e,r){var n=null;switch(e){case 5120:n=new Int8Array(t(r),0,r);break;case 5121:n=new Uint8Array(t(r),0,r);break;case 5122:n=new Int16Array(t(2*r),0,r);break;case 5123:n=new Uint16Array(t(2*r),0,r);break;case 5124:n=new Int32Array(t(4*r),0,r);break;case 5125:n=new Uint32Array(t(4*r),0,r);break;case 5126:n=new Float32Array(t(4*r),0,r);break;default:return null}return n.length!==r?n.subarray(0,r):n},freeType:function(t){e(t.buffer)}}}function l(t){return!!t&&\"object\"==typeof t&&Array.isArray(t.shape)&&Array.isArray(t.stride)&&\"number\"==typeof t.offset&&t.shape.length===t.stride.length&&(Array.isArray(t.data)||Z(t.data))}function c(t,e,r,n,a,i){for(var o=0;o<e;++o)for(var s=t[o],l=0;l<r;++l)for(var c=s[l],u=0;u<n;++u)a[i++]=c[u]}function u(t){return 0|K[Object.prototype.toString.call(t)]}function h(t,e){for(var r=0;r<e.length;++r)t[r]=e[r]}function f(t,e,r,n,a,i,o){for(var s=0,l=0;l<r;++l)for(var c=0;c<n;++c)t[s++]=e[a*l+i*c+o]}function p(t,e,r,n){function a(e){this.id=c++,this.buffer=t.createBuffer(),this.type=e,this.usage=35044,this.byteLength=0,this.dimension=1,this.dtype=5121,this.persistentData=null,r.profile&&(this.stats={size:0})}function i(e,r,n){e.byteLength=r.byteLength,t.bufferData(e.type,r,n)}function o(t,e,r,n,a,o){if(t.usage=r,Array.isArray(e)){if(t.dtype=n||5126,0<e.length)if(Array.isArray(e[0])){a=et(e);for(var s=n=1;s<a.length;++s)n*=a[s];t.dimension=n,i(t,e=tt(e,a,t.dtype),r),o?t.persistentData=e:Y.freeType(e)}else\"number\"==typeof e[0]?(t.dimension=a,h(a=Y.allocType(t.dtype,e.length),e),i(t,a,r),o?t.persistentData=a:Y.freeType(a)):Z(e[0])&&(t.dimension=e[0].length,t.dtype=n||u(e[0])||5126,i(t,e=tt(e,[e.length,e[0].length],t.dtype),r),o?t.persistentData=e:Y.freeType(e))}else if(Z(e))t.dtype=n||u(e),t.dimension=a,i(t,e,r),o&&(t.persistentData=new Uint8Array(new Uint8Array(e.buffer)));else if(l(e)){a=e.shape;var c=e.stride,p=(s=e.offset,0),d=0,g=0,m=0;1===a.length?(p=a[0],d=1,g=c[0],m=0):2===a.length&&(p=a[0],d=a[1],g=c[0],m=c[1]),t.dtype=n||u(e.data)||5126,t.dimension=d,f(a=Y.allocType(t.dtype,p*d),e.data,p,d,g,m,s),i(t,a,r),o?t.persistentData=a:Y.freeType(a)}else e instanceof ArrayBuffer&&(t.dtype=5121,t.dimension=a,i(t,e,r),o&&(t.persistentData=new Uint8Array(new Uint8Array(e))))}function s(r){e.bufferCount--,n(r),t.deleteBuffer(r.buffer),r.buffer=null,delete p[r.id]}var c=0,p={};a.prototype.bind=function(){t.bindBuffer(this.type,this.buffer)},a.prototype.destroy=function(){s(this)};var d=[];return r.profile&&(e.getTotalBufferSize=function(){var t=0;return Object.keys(p).forEach((function(e){t+=p[e].stats.size})),t}),{create:function(n,i,c,d){function g(e){var n=35044,a=null,i=0,s=0,c=1;return Array.isArray(e)||Z(e)||l(e)||e instanceof ArrayBuffer?a=e:\"number\"==typeof e?i=0|e:e&&(\"data\"in e&&(a=e.data),\"usage\"in e&&(n=$[e.usage]),\"type\"in e&&(s=Q[e.type]),\"dimension\"in e&&(c=0|e.dimension),\"length\"in e&&(i=0|e.length)),m.bind(),a?o(m,a,n,s,c,d):(i&&t.bufferData(m.type,i,n),m.dtype=s||5121,m.usage=n,m.dimension=c,m.byteLength=i),r.profile&&(m.stats.size=m.byteLength*rt[m.dtype]),g}e.bufferCount++;var m=new a(i);return p[m.id]=m,c||g(n),g._reglType=\"buffer\",g._buffer=m,g.subdata=function(e,r){var n,a=0|(r||0);if(m.bind(),Z(e)||e instanceof ArrayBuffer)t.bufferSubData(m.type,a,e);else if(Array.isArray(e)){if(0<e.length)if(\"number\"==typeof e[0]){var i=Y.allocType(m.dtype,e.length);h(i,e),t.bufferSubData(m.type,a,i),Y.freeType(i)}else(Array.isArray(e[0])||Z(e[0]))&&(n=et(e),i=tt(e,n,m.dtype),t.bufferSubData(m.type,a,i),Y.freeType(i))}else if(l(e)){n=e.shape;var o=e.stride,s=i=0,c=0,p=0;1===n.length?(i=n[0],s=1,c=o[0],p=0):2===n.length&&(i=n[0],s=n[1],c=o[0],p=o[1]),n=Array.isArray(e.data)?m.dtype:u(e.data),f(n=Y.allocType(n,i*s),e.data,i,s,c,p,e.offset),t.bufferSubData(m.type,a,n),Y.freeType(n)}return g},r.profile&&(g.stats=m.stats),g.destroy=function(){s(m)},g},createStream:function(t,e){var r=d.pop();return r||(r=new a(t)),r.bind(),o(r,e,35040,0,1,!1),r},destroyStream:function(t){d.push(t)},clear:function(){X(p).forEach(s),d.forEach(s)},getBuffer:function(t){return t&&t._buffer instanceof a?t._buffer:null},restore:function(){X(p).forEach((function(e){e.buffer=t.createBuffer(),t.bindBuffer(e.type,e.buffer),t.bufferData(e.type,e.persistentData||e.byteLength,e.usage)}))},_initBuffer:o}}function d(t,e,r,n){function a(t){this.id=c++,s[this.id]=this,this.buffer=t,this.primType=4,this.type=this.vertCount=0}function i(n,a,i,o,s,c,u){var h;if(n.buffer.bind(),a?((h=u)||Z(a)&&(!l(a)||Z(a.data))||(h=e.oes_element_index_uint?5125:5123),r._initBuffer(n.buffer,a,i,h,3)):(t.bufferData(34963,c,i),n.buffer.dtype=h||5121,n.buffer.usage=i,n.buffer.dimension=3,n.buffer.byteLength=c),h=u,!u){switch(n.buffer.dtype){case 5121:case 5120:h=5121;break;case 5123:case 5122:h=5123;break;case 5125:case 5124:h=5125}n.buffer.dtype=h}n.type=h,0>(a=s)&&(a=n.buffer.byteLength,5123===h?a>>=1:5125===h&&(a>>=2)),n.vertCount=a,a=o,0>o&&(a=4,1===(o=n.buffer.dimension)&&(a=0),2===o&&(a=1),3===o&&(a=4)),n.primType=a}function o(t){n.elementsCount--,delete s[t.id],t.buffer.destroy(),t.buffer=null}var s={},c=0,u={uint8:5121,uint16:5123};e.oes_element_index_uint&&(u.uint32=5125),a.prototype.bind=function(){this.buffer.bind()};var h=[];return{create:function(t,e){function s(t){if(t)if(\"number\"==typeof t)c(t),h.primType=4,h.vertCount=0|t,h.type=5121;else{var e=null,r=35044,n=-1,a=-1,o=0,f=0;Array.isArray(t)||Z(t)||l(t)?e=t:(\"data\"in t&&(e=t.data),\"usage\"in t&&(r=$[t.usage]),\"primitive\"in t&&(n=nt[t.primitive]),\"count\"in t&&(a=0|t.count),\"type\"in t&&(f=u[t.type]),\"length\"in t?o=0|t.length:(o=a,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),i(h,e,r,n,a,o,f)}else c(),h.primType=4,h.vertCount=0,h.type=5121;return s}var c=r.create(null,34963,!0),h=new a(c._buffer);return n.elementsCount++,s(t),s._reglType=\"elements\",s._elements=h,s.subdata=function(t,e){return c.subdata(t,e),s},s.destroy=function(){o(h)},s},createStream:function(t){var e=h.pop();return e||(e=new a(r.create(null,34963,!0,!1)._buffer)),i(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){h.push(t)},getElements:function(t){return\"function\"==typeof t&&t._elements instanceof a?t._elements:null},clear:function(){X(s).forEach(o)}}}function g(t){for(var e=Y.allocType(5123,t.length),r=0;r<t.length;++r)if(isNaN(t[r]))e[r]=65535;else if(1/0===t[r])e[r]=31744;else if(-1/0===t[r])e[r]=64512;else{at[0]=t[r];var n=(i=it[0])>>>31<<15,a=(i<<1>>>24)-127,i=i>>13&1023;e[r]=-24>a?n:-14>a?n+(i+1024>>-14-a):15<a?n+31744:n+(a+15<<10)+i}return e}function m(t){return Array.isArray(t)||Z(t)}function v(t){return\"[object \"+t+\"]\"}function y(t){return Array.isArray(t)&&(0===t.length||\"number\"==typeof t[0])}function x(t){return!(!Array.isArray(t)||0===t.length||!m(t[0]))}function b(t){return Object.prototype.toString.call(t)}function _(t){if(!t)return!1;var e=b(t);return 0<=gt.indexOf(e)||(y(t)||x(t)||l(t))}function w(t,e){36193===t.type?(t.data=g(e),Y.freeType(e)):t.data=e}function T(t,e,r,n,a,i){if(t=\"undefined\"!=typeof vt[t]?vt[t]:lt[t]*mt[e],i&&(t*=6),a){for(n=0;1<=r;)n+=t*r*r,r/=2;return n}return t*r*n}function k(t,e,r,n,a,i,o){function s(){this.format=this.internalformat=6408,this.type=5121,this.flipY=this.premultiplyAlpha=this.compressed=!1,this.unpackAlignment=1,this.colorSpace=37444,this.channels=this.height=this.width=0}function c(t,e){t.internalformat=e.internalformat,t.format=e.format,t.type=e.type,t.compressed=e.compressed,t.premultiplyAlpha=e.premultiplyAlpha,t.flipY=e.flipY,t.unpackAlignment=e.unpackAlignment,t.colorSpace=e.colorSpace,t.width=e.width,t.height=e.height,t.channels=e.channels}function u(t,e){if(\"object\"==typeof e&&e){\"premultiplyAlpha\"in e&&(t.premultiplyAlpha=e.premultiplyAlpha),\"flipY\"in e&&(t.flipY=e.flipY),\"alignment\"in e&&(t.unpackAlignment=e.alignment),\"colorSpace\"in e&&(t.colorSpace=q[e.colorSpace]),\"type\"in e&&(t.type=H[e.type]);var r=t.width,n=t.height,a=t.channels,i=!1;\"shape\"in e?(r=e.shape[0],n=e.shape[1],3===e.shape.length&&(a=e.shape[2],i=!0)):(\"radius\"in e&&(r=n=e.radius),\"width\"in e&&(r=e.width),\"height\"in e&&(n=e.height),\"channels\"in e&&(a=e.channels,i=!0)),t.width=0|r,t.height=0|n,t.channels=0|a,r=!1,\"format\"in e&&(r=e.format,n=t.internalformat=G[r],t.format=it[n],r in H&&!(\"type\"in e)&&(t.type=H[r]),r in W&&(t.compressed=!0),r=!0),!i&&r?t.channels=lt[t.format]:i&&!r&&t.channels!==st[t.format]&&(t.format=t.internalformat=st[t.channels])}}function h(e){t.pixelStorei(37440,e.flipY),t.pixelStorei(37441,e.premultiplyAlpha),t.pixelStorei(37443,e.colorSpace),t.pixelStorei(3317,e.unpackAlignment)}function f(){s.call(this),this.yOffset=this.xOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function p(t,e){var r=null;if(_(e)?r=e:e&&(u(t,e),\"x\"in e&&(t.xOffset=0|e.x),\"y\"in e&&(t.yOffset=0|e.y),_(e.data)&&(r=e.data)),e.copy){var n=a.viewportWidth,i=a.viewportHeight;t.width=t.width||n-t.xOffset,t.height=t.height||i-t.yOffset,t.needsCopy=!0}else if(r){if(Z(r))t.channels=t.channels||4,t.data=r,\"type\"in e||5121!==t.type||(t.type=0|K[Object.prototype.toString.call(r)]);else if(y(r)){switch(t.channels=t.channels||4,i=(n=r).length,t.type){case 5121:case 5123:case 5125:case 5126:(i=Y.allocType(t.type,i)).set(n),t.data=i;break;case 36193:t.data=g(n)}t.alignment=1,t.needsFree=!0}else if(l(r)){n=r.data,Array.isArray(n)||5121!==t.type||(t.type=0|K[Object.prototype.toString.call(n)]);i=r.shape;var o,s,c,h,f=r.stride;3===i.length?(c=i[2],h=f[2]):h=c=1,o=i[0],s=i[1],i=f[0],f=f[1],t.alignment=1,t.width=o,t.height=s,t.channels=c,t.format=t.internalformat=st[c],t.needsFree=!0,o=h,r=r.offset,c=t.width,h=t.height,s=t.channels;for(var p=Y.allocType(36193===t.type?5126:t.type,c*h*s),d=0,v=0;v<h;++v)for(var T=0;T<c;++T)for(var k=0;k<s;++k)p[d++]=n[i*T+f*v+o*k+r];w(t,p)}else if(b(r)===ct||b(r)===ut||b(r)===ht)b(r)===ct||b(r)===ut?t.element=r:t.element=r.canvas,t.width=t.element.width,t.height=t.element.height,t.channels=4;else if(b(r)===ft)t.element=r,t.width=r.width,t.height=r.height,t.channels=4;else if(b(r)===pt)t.element=r,t.width=r.naturalWidth,t.height=r.naturalHeight,t.channels=4;else if(b(r)===dt)t.element=r,t.width=r.videoWidth,t.height=r.videoHeight,t.channels=4;else if(x(r)){for(n=t.width||r[0].length,i=t.height||r.length,f=t.channels,f=m(r[0][0])?f||r[0][0].length:f||1,o=J.shape(r),c=1,h=0;h<o.length;++h)c*=o[h];c=Y.allocType(36193===t.type?5126:t.type,c),J.flatten(r,o,\"\",c),w(t,c),t.alignment=1,t.width=n,t.height=i,t.channels=f,t.format=t.internalformat=st[f],t.needsFree=!0}}else t.width=t.width||1,t.height=t.height||1,t.channels=t.channels||4}function d(e,r,a,i,o){var s=e.element,l=e.data,c=e.internalformat,u=e.format,f=e.type,p=e.width,d=e.height;h(e),s?t.texSubImage2D(r,o,a,i,u,f,s):e.compressed?t.compressedTexSubImage2D(r,o,a,i,c,p,d,l):e.needsCopy?(n(),t.copyTexSubImage2D(r,o,a,i,e.xOffset,e.yOffset,p,d)):t.texSubImage2D(r,o,a,i,p,d,u,f,l)}function v(){return gt.pop()||new f}function k(t){t.needsFree&&Y.freeType(t.data),f.call(t),gt.push(t)}function M(){s.call(this),this.genMipmaps=!1,this.mipmapHint=4352,this.mipmask=0,this.images=Array(16)}function A(t,e,r){var n=t.images[0]=v();t.mipmask=1,n.width=t.width=e,n.height=t.height=r,n.channels=t.channels=4}function S(t,e){var r=null;if(_(e))c(r=t.images[0]=v(),t),p(r,e),t.mipmask=1;else if(u(t,e),Array.isArray(e.mipmap))for(var n=e.mipmap,a=0;a<n.length;++a)c(r=t.images[a]=v(),t),r.width>>=a,r.height>>=a,p(r,n[a]),t.mipmask|=1<<a;else c(r=t.images[0]=v(),t),p(r,e),t.mipmask=1;c(t,t.images[0])}function E(e,r){for(var a=e.images,i=0;i<a.length&&a[i];++i){var o=a[i],s=r,l=i,c=o.element,u=o.data,f=o.internalformat,p=o.format,d=o.type,g=o.width,m=o.height;h(o),c?t.texImage2D(s,l,p,p,d,c):o.compressed?t.compressedTexImage2D(s,l,f,g,m,0,u):o.needsCopy?(n(),t.copyTexImage2D(s,l,p,o.xOffset,o.yOffset,g,m,0)):t.texImage2D(s,l,p,g,m,0,p,d,u||null)}}function C(){var t=mt.pop()||new M;s.call(t);for(var e=t.mipmask=0;16>e;++e)t.images[e]=null;return t}function L(t){for(var e=t.images,r=0;r<e.length;++r)e[r]&&k(e[r]),e[r]=null;mt.push(t)}function P(){this.magFilter=this.minFilter=9728,this.wrapT=this.wrapS=33071,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=4352}function I(t,e){\"min\"in e&&(t.minFilter=V[e.min],0<=ot.indexOf(t.minFilter)&&!(\"faces\"in e)&&(t.genMipmaps=!0)),\"mag\"in e&&(t.magFilter=j[e.mag]);var r=t.wrapS,n=t.wrapT;if(\"wrap\"in e){var a=e.wrap;\"string\"==typeof a?r=n=N[a]:Array.isArray(a)&&(r=N[a[0]],n=N[a[1]])}else\"wrapS\"in e&&(r=N[e.wrapS]),\"wrapT\"in e&&(n=N[e.wrapT]);if(t.wrapS=r,t.wrapT=n,\"anisotropic\"in e&&(t.anisotropic=e.anisotropic),\"mipmap\"in e){switch(r=!1,typeof e.mipmap){case\"string\":t.mipmapHint=B[e.mipmap],r=t.genMipmaps=!0;break;case\"boolean\":r=t.genMipmaps=e.mipmap;break;case\"object\":t.genMipmaps=!1,r=!0}!r||\"min\"in e||(t.minFilter=9984)}}function z(r,n){t.texParameteri(n,10241,r.minFilter),t.texParameteri(n,10240,r.magFilter),t.texParameteri(n,10242,r.wrapS),t.texParameteri(n,10243,r.wrapT),e.ext_texture_filter_anisotropic&&t.texParameteri(n,34046,r.anisotropic),r.genMipmaps&&(t.hint(33170,r.mipmapHint),t.generateMipmap(n))}function O(e){s.call(this),this.mipmask=0,this.internalformat=6408,this.id=vt++,this.refCount=1,this.target=e,this.texture=t.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new P,o.profile&&(this.stats={size:0})}function D(e){t.activeTexture(33984),t.bindTexture(e.target,e.texture)}function R(){var e=bt[0];e?t.bindTexture(e.target,e.texture):t.bindTexture(3553,null)}function F(e){var r=e.texture,n=e.unit,a=e.target;0<=n&&(t.activeTexture(33984+n),t.bindTexture(a,null),bt[n]=null),t.deleteTexture(r),e.texture=null,e.params=null,e.pixels=null,e.refCount=0,delete yt[e.id],i.textureCount--}var B={\"don't care\":4352,\"dont care\":4352,nice:4354,fast:4353},N={repeat:10497,clamp:33071,mirror:33648},j={nearest:9728,linear:9729},V=U({mipmap:9987,\"nearest mipmap nearest\":9984,\"linear mipmap nearest\":9985,\"nearest mipmap linear\":9986,\"linear mipmap linear\":9987},j),q={none:0,browser:37444},H={uint8:5121,rgba4:32819,rgb565:33635,\"rgb5 a1\":32820},G={alpha:6406,luminance:6409,\"luminance alpha\":6410,rgb:6407,rgba:6408,rgba4:32854,\"rgb5 a1\":32855,rgb565:36194},W={};e.ext_srgb&&(G.srgb=35904,G.srgba=35906),e.oes_texture_float&&(H.float32=H.float=5126),e.oes_texture_half_float&&(H.float16=H[\"half float\"]=36193),e.webgl_depth_texture&&(U(G,{depth:6402,\"depth stencil\":34041}),U(H,{uint16:5123,uint32:5125,\"depth stencil\":34042})),e.webgl_compressed_texture_s3tc&&U(W,{\"rgb s3tc dxt1\":33776,\"rgba s3tc dxt1\":33777,\"rgba s3tc dxt3\":33778,\"rgba s3tc dxt5\":33779}),e.webgl_compressed_texture_atc&&U(W,{\"rgb atc\":35986,\"rgba atc explicit alpha\":35987,\"rgba atc interpolated alpha\":34798}),e.webgl_compressed_texture_pvrtc&&U(W,{\"rgb pvrtc 4bppv1\":35840,\"rgb pvrtc 2bppv1\":35841,\"rgba pvrtc 4bppv1\":35842,\"rgba pvrtc 2bppv1\":35843}),e.webgl_compressed_texture_etc1&&(W[\"rgb etc1\"]=36196);var Q=Array.prototype.slice.call(t.getParameter(34467));Object.keys(W).forEach((function(t){var e=W[t];0<=Q.indexOf(e)&&(G[t]=e)}));var $=Object.keys(G);r.textureFormats=$;var tt=[];Object.keys(G).forEach((function(t){tt[G[t]]=t}));var et=[];Object.keys(H).forEach((function(t){et[H[t]]=t}));var rt=[];Object.keys(j).forEach((function(t){rt[j[t]]=t}));var nt=[];Object.keys(V).forEach((function(t){nt[V[t]]=t}));var at=[];Object.keys(N).forEach((function(t){at[N[t]]=t}));var it=$.reduce((function(t,r){var n=G[r];return 6409===n||6406===n||6409===n||6410===n||6402===n||34041===n||e.ext_srgb&&(35904===n||35906===n)?t[n]=n:32855===n||0<=r.indexOf(\"rgba\")?t[n]=6408:t[n]=6407,t}),{}),gt=[],mt=[],vt=0,yt={},xt=r.maxTextureUnits,bt=Array(xt).map((function(){return null}));return U(O.prototype,{bind:function(){this.bindCount+=1;var e=this.unit;if(0>e){for(var r=0;r<xt;++r){var n=bt[r];if(n){if(0<n.bindCount)continue;n.unit=-1}bt[r]=this,e=r;break}o.profile&&i.maxTextureUnits<e+1&&(i.maxTextureUnits=e+1),this.unit=e,t.activeTexture(33984+e),t.bindTexture(this.target,this.texture)}return e},unbind:function(){--this.bindCount},decRef:function(){0>=--this.refCount&&F(this)}}),o.profile&&(i.getTotalTextureSize=function(){var t=0;return Object.keys(yt).forEach((function(e){t+=yt[e].stats.size})),t}),{create2D:function(e,r){function n(t,e){var r=a.texInfo;P.call(r);var i=C();return\"number\"==typeof t?A(i,0|t,\"number\"==typeof e?0|e:0|t):t?(I(r,t),S(i,t)):A(i,1,1),r.genMipmaps&&(i.mipmask=(i.width<<1)-1),a.mipmask=i.mipmask,c(a,i),a.internalformat=i.internalformat,n.width=i.width,n.height=i.height,D(a),E(i,3553),z(r,3553),R(),L(i),o.profile&&(a.stats.size=T(a.internalformat,a.type,i.width,i.height,r.genMipmaps,!1)),n.format=tt[a.internalformat],n.type=et[a.type],n.mag=rt[r.magFilter],n.min=nt[r.minFilter],n.wrapS=at[r.wrapS],n.wrapT=at[r.wrapT],n}var a=new O(3553);return yt[a.id]=a,i.textureCount++,n(e,r),n.subimage=function(t,e,r,i){e|=0,r|=0,i|=0;var o=v();return c(o,a),o.width=0,o.height=0,p(o,t),o.width=o.width||(a.width>>i)-e,o.height=o.height||(a.height>>i)-r,D(a),d(o,3553,e,r,i),R(),k(o),n},n.resize=function(e,r){var i=0|e,s=0|r||i;if(i===a.width&&s===a.height)return n;n.width=a.width=i,n.height=a.height=s,D(a);for(var l=0;a.mipmask>>l;++l){var c=i>>l,u=s>>l;if(!c||!u)break;t.texImage2D(3553,l,a.format,c,u,0,a.format,a.type,null)}return R(),o.profile&&(a.stats.size=T(a.internalformat,a.type,i,s,!1,!1)),n},n._reglType=\"texture2d\",n._texture=a,o.profile&&(n.stats=a.stats),n.destroy=function(){a.decRef()},n},createCube:function(e,r,n,a,s,l){function h(t,e,r,n,a,i){var s,l=f.texInfo;for(P.call(l),s=0;6>s;++s)g[s]=C();if(\"number\"!=typeof t&&t){if(\"object\"==typeof t)if(e)S(g[0],t),S(g[1],e),S(g[2],r),S(g[3],n),S(g[4],a),S(g[5],i);else if(I(l,t),u(f,t),\"faces\"in t)for(t=t.faces,s=0;6>s;++s)c(g[s],f),S(g[s],t[s]);else for(s=0;6>s;++s)S(g[s],t)}else for(t=0|t||1,s=0;6>s;++s)A(g[s],t,t);for(c(f,g[0]),f.mipmask=l.genMipmaps?(g[0].width<<1)-1:g[0].mipmask,f.internalformat=g[0].internalformat,h.width=g[0].width,h.height=g[0].height,D(f),s=0;6>s;++s)E(g[s],34069+s);for(z(l,34067),R(),o.profile&&(f.stats.size=T(f.internalformat,f.type,h.width,h.height,l.genMipmaps,!0)),h.format=tt[f.internalformat],h.type=et[f.type],h.mag=rt[l.magFilter],h.min=nt[l.minFilter],h.wrapS=at[l.wrapS],h.wrapT=at[l.wrapT],s=0;6>s;++s)L(g[s]);return h}var f=new O(34067);yt[f.id]=f,i.cubeCount++;var g=Array(6);return h(e,r,n,a,s,l),h.subimage=function(t,e,r,n,a){r|=0,n|=0,a|=0;var i=v();return c(i,f),i.width=0,i.height=0,p(i,e),i.width=i.width||(f.width>>a)-r,i.height=i.height||(f.height>>a)-n,D(f),d(i,34069+t,r,n,a),R(),k(i),h},h.resize=function(e){if((e|=0)!==f.width){h.width=f.width=e,h.height=f.height=e,D(f);for(var r=0;6>r;++r)for(var n=0;f.mipmask>>n;++n)t.texImage2D(34069+r,n,f.format,e>>n,e>>n,0,f.format,f.type,null);return R(),o.profile&&(f.stats.size=T(f.internalformat,f.type,h.width,h.height,!1,!0)),h}},h._reglType=\"textureCube\",h._texture=f,o.profile&&(h.stats=f.stats),h.destroy=function(){f.decRef()},h},clear:function(){for(var e=0;e<xt;++e)t.activeTexture(33984+e),t.bindTexture(3553,null),bt[e]=null;X(yt).forEach(F),i.cubeCount=0,i.textureCount=0},getTexture:function(t){return null},restore:function(){for(var e=0;e<xt;++e){var r=bt[e];r&&(r.bindCount=0,r.unit=-1,bt[e]=null)}X(yt).forEach((function(e){e.texture=t.createTexture(),t.bindTexture(e.target,e.texture);for(var r=0;32>r;++r)if(0!=(e.mipmask&1<<r))if(3553===e.target)t.texImage2D(3553,r,e.internalformat,e.width>>r,e.height>>r,0,e.internalformat,e.type,null);else for(var n=0;6>n;++n)t.texImage2D(34069+n,r,e.internalformat,e.width>>r,e.height>>r,0,e.internalformat,e.type,null);z(e.texInfo,e.target)}))}}}function M(t,e,r,n,a,i){function o(t,e,r){this.target=t,this.texture=e,this.renderbuffer=r;var n=t=0;e?(t=e.width,n=e.height):r&&(t=r.width,n=r.height),this.width=t,this.height=n}function s(t){t&&(t.texture&&t.texture._texture.decRef(),t.renderbuffer&&t.renderbuffer._renderbuffer.decRef())}function l(t,e,r){t&&(t.texture?t.texture._texture.refCount+=1:t.renderbuffer._renderbuffer.refCount+=1)}function c(e,r){r&&(r.texture?t.framebufferTexture2D(36160,e,r.target,r.texture._texture.texture,0):t.framebufferRenderbuffer(36160,e,36161,r.renderbuffer._renderbuffer.renderbuffer))}function u(t){var e=3553,r=null,n=null,a=t;return\"object\"==typeof t&&(a=t.data,\"target\"in t&&(e=0|t.target)),\"texture2d\"===(t=a._reglType)||\"textureCube\"===t?r=a:\"renderbuffer\"===t&&(n=a,e=36161),new o(e,r,n)}function h(t,e,r,i,s){return r?((t=n.create2D({width:t,height:e,format:i,type:s}))._texture.refCount=0,new o(3553,t,null)):((t=a.create({width:t,height:e,format:i}))._renderbuffer.refCount=0,new o(36161,null,t))}function f(t){return t&&(t.texture||t.renderbuffer)}function p(t,e,r){t&&(t.texture?t.texture.resize(e,r):t.renderbuffer&&t.renderbuffer.resize(e,r),t.width=e,t.height=r)}function d(){this.id=T++,k[this.id]=this,this.framebuffer=t.createFramebuffer(),this.height=this.width=0,this.colorAttachments=[],this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function g(t){t.colorAttachments.forEach(s),s(t.depthAttachment),s(t.stencilAttachment),s(t.depthStencilAttachment)}function m(e){t.deleteFramebuffer(e.framebuffer),e.framebuffer=null,i.framebufferCount--,delete k[e.id]}function v(e){var n;t.bindFramebuffer(36160,e.framebuffer);var a=e.colorAttachments;for(n=0;n<a.length;++n)c(36064+n,a[n]);for(n=a.length;n<r.maxColorAttachments;++n)t.framebufferTexture2D(36160,36064+n,3553,null,0);t.framebufferTexture2D(36160,33306,3553,null,0),t.framebufferTexture2D(36160,36096,3553,null,0),t.framebufferTexture2D(36160,36128,3553,null,0),c(36096,e.depthAttachment),c(36128,e.stencilAttachment),c(33306,e.depthStencilAttachment),t.checkFramebufferStatus(36160),t.isContextLost(),t.bindFramebuffer(36160,x.next?x.next.framebuffer:null),x.cur=x.next,t.getError()}function y(t,e){function r(t,e){var a,i=0,o=0,s=!0,c=!0;a=null;var p=!0,d=\"rgba\",m=\"uint8\",y=1,x=null,w=null,T=null,k=!1;\"number\"==typeof t?(i=0|t,o=0|e||i):t?(\"shape\"in t?(i=(o=t.shape)[0],o=o[1]):(\"radius\"in t&&(i=o=t.radius),\"width\"in t&&(i=t.width),\"height\"in t&&(o=t.height)),(\"color\"in t||\"colors\"in t)&&(a=t.color||t.colors,Array.isArray(a)),a||(\"colorCount\"in t&&(y=0|t.colorCount),\"colorTexture\"in t&&(p=!!t.colorTexture,d=\"rgba4\"),\"colorType\"in t&&(m=t.colorType,!p)&&(\"half float\"===m||\"float16\"===m?d=\"rgba16f\":\"float\"!==m&&\"float32\"!==m||(d=\"rgba32f\")),\"colorFormat\"in t&&(d=t.colorFormat,0<=b.indexOf(d)?p=!0:0<=_.indexOf(d)&&(p=!1))),(\"depthTexture\"in t||\"depthStencilTexture\"in t)&&(k=!(!t.depthTexture&&!t.depthStencilTexture)),\"depth\"in t&&(\"boolean\"==typeof t.depth?s=t.depth:(x=t.depth,c=!1)),\"stencil\"in t&&(\"boolean\"==typeof t.stencil?c=t.stencil:(w=t.stencil,s=!1)),\"depthStencil\"in t&&(\"boolean\"==typeof t.depthStencil?s=c=t.depthStencil:(T=t.depthStencil,c=s=!1))):i=o=1;var M=null,A=null,S=null,E=null;if(Array.isArray(a))M=a.map(u);else if(a)M=[u(a)];else for(M=Array(y),a=0;a<y;++a)M[a]=h(i,o,p,d,m);for(i=i||M[0].width,o=o||M[0].height,x?A=u(x):s&&!c&&(A=h(i,o,k,\"depth\",\"uint32\")),w?S=u(w):c&&!s&&(S=h(i,o,!1,\"stencil\",\"uint8\")),T?E=u(T):!x&&!w&&c&&s&&(E=h(i,o,k,\"depth stencil\",\"depth stencil\")),s=null,a=0;a<M.length;++a)l(M[a]),M[a]&&M[a].texture&&(c=bt[M[a].texture._texture.format]*_t[M[a].texture._texture.type],null===s&&(s=c));return l(A),l(S),l(E),g(n),n.width=i,n.height=o,n.colorAttachments=M,n.depthAttachment=A,n.stencilAttachment=S,n.depthStencilAttachment=E,r.color=M.map(f),r.depth=f(A),r.stencil=f(S),r.depthStencil=f(E),r.width=n.width,r.height=n.height,v(n),r}var n=new d;return i.framebufferCount++,r(t,e),U(r,{resize:function(t,e){var a=Math.max(0|t,1),i=Math.max(0|e||a,1);if(a===n.width&&i===n.height)return r;for(var o=n.colorAttachments,s=0;s<o.length;++s)p(o[s],a,i);return p(n.depthAttachment,a,i),p(n.stencilAttachment,a,i),p(n.depthStencilAttachment,a,i),n.width=r.width=a,n.height=r.height=i,v(n),r},_reglType:\"framebuffer\",_framebuffer:n,destroy:function(){m(n),g(n)},use:function(t){x.setFBO({framebuffer:r},t)}})}var x={cur:null,next:null,dirty:!1,setFBO:null},b=[\"rgba\"],_=[\"rgba4\",\"rgb565\",\"rgb5 a1\"];e.ext_srgb&&_.push(\"srgba\"),e.ext_color_buffer_half_float&&_.push(\"rgba16f\",\"rgb16f\"),e.webgl_color_buffer_float&&_.push(\"rgba32f\");var w=[\"uint8\"];e.oes_texture_half_float&&w.push(\"half float\",\"float16\"),e.oes_texture_float&&w.push(\"float\",\"float32\");var T=0,k={};return U(x,{getFramebuffer:function(t){return\"function\"==typeof t&&\"framebuffer\"===t._reglType&&(t=t._framebuffer)instanceof d?t:null},create:y,createCube:function(t){function e(t){var a,i={color:null},o=0,s=null;a=\"rgba\";var l=\"uint8\",c=1;if(\"number\"==typeof t?o=0|t:t?(\"shape\"in t?o=t.shape[0]:(\"radius\"in t&&(o=0|t.radius),\"width\"in t?o=0|t.width:\"height\"in t&&(o=0|t.height)),(\"color\"in t||\"colors\"in t)&&(s=t.color||t.colors,Array.isArray(s)),s||(\"colorCount\"in t&&(c=0|t.colorCount),\"colorType\"in t&&(l=t.colorType),\"colorFormat\"in t&&(a=t.colorFormat)),\"depth\"in t&&(i.depth=t.depth),\"stencil\"in t&&(i.stencil=t.stencil),\"depthStencil\"in t&&(i.depthStencil=t.depthStencil)):o=1,s)if(Array.isArray(s))for(t=[],a=0;a<s.length;++a)t[a]=s[a];else t=[s];else for(t=Array(c),s={radius:o,format:a,type:l},a=0;a<c;++a)t[a]=n.createCube(s);for(i.color=Array(t.length),a=0;a<t.length;++a)c=t[a],o=o||c.width,i.color[a]={target:34069,data:t[a]};for(a=0;6>a;++a){for(c=0;c<t.length;++c)i.color[c].target=34069+a;0<a&&(i.depth=r[0].depth,i.stencil=r[0].stencil,i.depthStencil=r[0].depthStencil),r[a]?r[a](i):r[a]=y(i)}return U(e,{width:o,height:o,color:t})}var r=Array(6);return e(t),U(e,{faces:r,resize:function(t){var n=0|t;if(n===e.width)return e;var a=e.color;for(t=0;t<a.length;++t)a[t].resize(n);for(t=0;6>t;++t)r[t].resize(n);return e.width=e.height=n,e},_reglType:\"framebufferCube\",destroy:function(){r.forEach((function(t){t.destroy()}))}})},clear:function(){X(k).forEach(m)},restore:function(){x.cur=null,x.next=null,x.dirty=!0,X(k).forEach((function(e){e.framebuffer=t.createFramebuffer(),v(e)}))}})}function A(){this.w=this.z=this.y=this.x=this.state=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=5126,this.divisor=this.stride=this.offset=0}function S(t,e,r,n,a){function i(){this.id=++c,this.attributes=[];var t=e.oes_vertex_array_object;this.vao=t?t.createVertexArrayOES():null,u[this.id]=this,this.buffers=[]}var o=r.maxAttributes,s=Array(o);for(r=0;r<o;++r)s[r]=new A;var c=0,u={},h={Record:A,scope:{},state:s,currentVAO:null,targetVAO:null,restore:e.oes_vertex_array_object?function(){e.oes_vertex_array_object&&X(u).forEach((function(t){t.refresh()}))}:function(){},createVAO:function(t){function e(t){for(var n=0;n<r.buffers.length;++n)r.buffers[n].destroy();r.buffers.length=0,(n=r.attributes).length=t.length;for(var i=0;i<t.length;++i){var o=t[i],s=n[i]=new A;Array.isArray(o)||Z(o)||l(o)?(o=a.create(o,34962,!1,!0),s.buffer=a.getBuffer(o),s.size=0|s.buffer.dimension,s.normalized=!1,s.type=s.buffer.dtype,s.offset=0,s.stride=0,s.divisor=0,s.state=1,r.buffers.push(o)):a.getBuffer(o)?(s.buffer=a.getBuffer(o),s.size=0|s.buffer.dimension,s.normalized=!1,s.type=s.buffer.dtype,s.offset=0,s.stride=0,s.divisor=0,s.state=1):a.getBuffer(o.buffer)?(s.buffer=a.getBuffer(o.buffer),s.size=0|(+o.size||s.buffer.dimension),s.normalized=!!o.normalized||!1,s.type=\"type\"in o?Q[o.type]:s.buffer.dtype,s.offset=0|(o.offset||0),s.stride=0|(o.stride||0),s.divisor=0|(o.divisor||0),s.state=1):\"x\"in o&&(s.x=+o.x||0,s.y=+o.y||0,s.z=+o.z||0,s.w=+o.w||0,s.state=2)}return r.refresh(),e}var r=new i;return n.vaoCount+=1,e.destroy=function(){r.destroy()},e._vao=r,e._reglType=\"vao\",e(t)},getVAO:function(t){return\"function\"==typeof t&&t._vao?t._vao:null},destroyBuffer:function(e){for(var r=0;r<s.length;++r){var n=s[r];n.buffer===e&&(t.disableVertexAttribArray(r),n.buffer=null)}},setVAO:e.oes_vertex_array_object?function(t){if(t!==h.currentVAO){var r=e.oes_vertex_array_object;t?r.bindVertexArrayOES(t.vao):r.bindVertexArrayOES(null),h.currentVAO=t}}:function(r){if(r!==h.currentVAO){if(r)r.bindAttrs();else for(var n=e.angle_instanced_arrays,a=0;a<s.length;++a){var i=s[a];i.buffer?(t.enableVertexAttribArray(a),t.vertexAttribPointer(a,i.size,i.type,i.normalized,i.stride,i.offfset),n&&n.vertexAttribDivisorANGLE(a,i.divisor)):(t.disableVertexAttribArray(a),t.vertexAttrib4f(a,i.x,i.y,i.z,i.w))}h.currentVAO=r}},clear:e.oes_vertex_array_object?function(){X(u).forEach((function(t){t.destroy()}))}:function(){}};return i.prototype.bindAttrs=function(){for(var r=e.angle_instanced_arrays,n=this.attributes,a=0;a<n.length;++a){var i=n[a];i.buffer?(t.enableVertexAttribArray(a),t.bindBuffer(34962,i.buffer.buffer),t.vertexAttribPointer(a,i.size,i.type,i.normalized,i.stride,i.offset),r&&r.vertexAttribDivisorANGLE(a,i.divisor)):(t.disableVertexAttribArray(a),t.vertexAttrib4f(a,i.x,i.y,i.z,i.w))}for(r=n.length;r<o;++r)t.disableVertexAttribArray(r)},i.prototype.refresh=function(){var t=e.oes_vertex_array_object;t&&(t.bindVertexArrayOES(this.vao),this.bindAttrs(),h.currentVAO=this)},i.prototype.destroy=function(){if(this.vao){var t=e.oes_vertex_array_object;this===h.currentVAO&&(h.currentVAO=null,t.bindVertexArrayOES(null)),t.deleteVertexArrayOES(this.vao),this.vao=null}u[this.id]&&(delete u[this.id],--n.vaoCount)},h}function E(t,e,r,n){function a(t,e,r,n){this.name=t,this.id=e,this.location=r,this.info=n}function i(t,e){for(var r=0;r<t.length;++r)if(t[r].id===e.id)return void(t[r].location=e.location);t.push(e)}function o(r,n,a){if(!(o=(a=35632===r?c:u)[n])){var i=e.str(n),o=t.createShader(r);t.shaderSource(o,i),t.compileShader(o),a[n]=o}return o}function s(t,e){this.id=p++,this.fragId=t,this.vertId=e,this.program=null,this.uniforms=[],this.attributes=[],n.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function l(r,s,l){var c;c=o(35632,r.fragId);var u=o(35633,r.vertId);if(s=r.program=t.createProgram(),t.attachShader(s,c),t.attachShader(s,u),l)for(c=0;c<l.length;++c)u=l[c],t.bindAttribLocation(s,u[0],u[1]);t.linkProgram(s),u=t.getProgramParameter(s,35718),n.profile&&(r.stats.uniformsCount=u);var h=r.uniforms;for(c=0;c<u;++c)if(l=t.getActiveUniform(s,c))if(1<l.size)for(var f=0;f<l.size;++f){var p=l.name.replace(\"[0]\",\"[\"+f+\"]\");i(h,new a(p,e.id(p),t.getUniformLocation(s,p),l))}else i(h,new a(l.name,e.id(l.name),t.getUniformLocation(s,l.name),l));for(u=t.getProgramParameter(s,35721),n.profile&&(r.stats.attributesCount=u),r=r.attributes,c=0;c<u;++c)(l=t.getActiveAttrib(s,c))&&i(r,new a(l.name,e.id(l.name),t.getAttribLocation(s,l.name),l))}var c={},u={},h={},f=[],p=0;return n.profile&&(r.getMaxUniformsCount=function(){var t=0;return f.forEach((function(e){e.stats.uniformsCount>t&&(t=e.stats.uniformsCount)})),t},r.getMaxAttributesCount=function(){var t=0;return f.forEach((function(e){e.stats.attributesCount>t&&(t=e.stats.attributesCount)})),t}),{clear:function(){var e=t.deleteShader.bind(t);X(c).forEach(e),c={},X(u).forEach(e),u={},f.forEach((function(e){t.deleteProgram(e.program)})),f.length=0,h={},r.shaderCount=0},program:function(t,e,n,a){var i=h[e];i||(i=h[e]={});var o=i[t];return o&&!a?o:(e=new s(e,t),r.shaderCount++,l(e,n,a),o||(i[t]=e),f.push(e),e)},restore:function(){c={},u={};for(var t=0;t<f.length;++t)l(f[t],null,f[t].attributes.map((function(t){return[t.location,t.name]})))},shader:o,frag:-1,vert:-1}}function C(t,e,r,n,a,i,o){function s(a){var i;i=null===e.next?5121:e.next.colorAttachments[0].texture._texture.type;var o=0,s=0,l=n.framebufferWidth,c=n.framebufferHeight,u=null;return Z(a)?u=a:a&&(o=0|a.x,s=0|a.y,l=0|(a.width||n.framebufferWidth-o),c=0|(a.height||n.framebufferHeight-s),u=a.data||null),r(),a=l*c*4,u||(5121===i?u=new Uint8Array(a):5126===i&&(u=u||new Float32Array(a))),t.pixelStorei(3333,4),t.readPixels(o,s,l,c,6408,i,u),u}return function(t){return t&&\"framebuffer\"in t?function(t){var r;return e.setFBO({framebuffer:t.framebuffer},(function(){r=s(t)})),r}(t):s(t)}}function L(t){return Array.prototype.slice.call(t)}function P(t){return L(t).join(\"\")}function I(){function t(){var t=[],e=[];return U((function(){t.push.apply(t,L(arguments))}),{def:function(){var n=\"v\"+r++;return e.push(n),0<arguments.length&&(t.push(n,\"=\"),t.push.apply(t,L(arguments)),t.push(\";\")),n},toString:function(){return P([0<e.length?\"var \"+e.join(\",\")+\";\":\"\",P(t)])}})}function e(){function e(t,e){n(t,e,\"=\",r.def(t,e),\";\")}var r=t(),n=t(),a=r.toString,i=n.toString;return U((function(){r.apply(r,L(arguments))}),{def:r.def,entry:r,exit:n,save:e,set:function(t,n,a){e(t,n),r(t,n,\"=\",a,\";\")},toString:function(){return a()+i()}})}var r=0,n=[],a=[],i=t(),o={};return{global:i,link:function(t){for(var e=0;e<a.length;++e)if(a[e]===t)return n[e];return e=\"g\"+r++,n.push(e),a.push(t),e},block:t,proc:function(t,r){function n(){var t=\"a\"+a.length;return a.push(t),t}var a=[];r=r||0;for(var i=0;i<r;++i)n();var s=(i=e()).toString;return o[t]=U(i,{arg:n,toString:function(){return P([\"function(\",a.join(),\"){\",s(),\"}\"])}})},scope:e,cond:function(){var t=P(arguments),r=e(),n=e(),a=r.toString,i=n.toString;return U(r,{then:function(){return r.apply(r,L(arguments)),this},else:function(){return n.apply(n,L(arguments)),this},toString:function(){var e=i();return e&&(e=\"else{\"+e+\"}\"),P([\"if(\",t,\"){\",a(),\"}\",e])}})},compile:function(){var t=['\"use strict\";',i,\"return {\"];Object.keys(o).forEach((function(e){t.push('\"',e,'\":',o[e].toString(),\",\")})),t.push(\"}\");var e=P(t).replace(/;/g,\";\\n\").replace(/}/g,\"}\\n\").replace(/{/g,\"{\\n\");return Function.apply(null,n.concat(e)).apply(null,a)}}}function z(t){return Array.isArray(t)||Z(t)||l(t)}function O(t){return t.sort((function(t,e){return\"viewport\"===t?-1:\"viewport\"===e?1:t<e?-1:1}))}function D(t,e,r,n){this.thisDep=t,this.contextDep=e,this.propDep=r,this.append=n}function R(t){return t&&!(t.thisDep||t.contextDep||t.propDep)}function F(t){return new D(!1,!1,!1,t)}function B(t,e){var r=t.type;return 0===r?new D(!0,1<=(r=t.data.length),2<=r,e):4===r?new D((r=t.data).thisDep,r.contextDep,r.propDep,e):new D(3===r,2===r,1===r,e)}function N(t,e,r,n,a,o,s,l,c,u,h,f,p,d,g){function v(t){return t.replace(\".\",\"_\")}function y(t,e,r){var n=v(t);rt.push(t),et[n]=tt[n]=!!r,at[n]=e}function x(t,e,r){var n=v(t);rt.push(t),Array.isArray(r)?(tt[n]=r.slice(),et[n]=r.slice()):tt[n]=et[n]=r,it[n]=e}function b(){var t=I(),r=t.link,n=t.global;t.id=lt++,t.batchId=\"0\";var a=r(ot),i=t.shared={props:\"a0\"};Object.keys(ot).forEach((function(t){i[t]=n.def(a,\".\",t)}));var o=t.next={},s=t.current={};Object.keys(it).forEach((function(t){Array.isArray(tt[t])&&(o[t]=n.def(i.next,\".\",t),s[t]=n.def(i.current,\".\",t))}));var l=t.constants={};Object.keys(st).forEach((function(t){l[t]=n.def(JSON.stringify(st[t]))})),t.invoke=function(e,n){switch(n.type){case 0:var a=[\"this\",i.context,i.props,t.batchId];return e.def(r(n.data),\".call(\",a.slice(0,Math.max(n.data.length+1,4)),\")\");case 1:return e.def(i.props,n.data);case 2:return e.def(i.context,n.data);case 3:return e.def(\"this\",n.data);case 4:return n.data.append(t,e),n.data.ref}},t.attribCache={};var c={};return t.scopeAttrib=function(t){if((t=e.id(t))in c)return c[t];var n=u.scope[t];return n||(n=u.scope[t]=new X),c[t]=r(n)},t}function _(t,e){var r=t.static,n=t.dynamic;if(\"framebuffer\"in r){var a=r.framebuffer;return a?(a=l.getFramebuffer(a),F((function(t,e){var r=t.link(a),n=t.shared;return e.set(n.framebuffer,\".next\",r),n=n.context,e.set(n,\".framebufferWidth\",r+\".width\"),e.set(n,\".framebufferHeight\",r+\".height\"),r}))):F((function(t,e){var r=t.shared;return e.set(r.framebuffer,\".next\",\"null\"),r=r.context,e.set(r,\".framebufferWidth\",r+\".drawingBufferWidth\"),e.set(r,\".framebufferHeight\",r+\".drawingBufferHeight\"),\"null\"}))}if(\"framebuffer\"in n){var i=n.framebuffer;return B(i,(function(t,e){var r=t.invoke(e,i),n=t.shared,a=n.framebuffer;r=e.def(a,\".getFramebuffer(\",r,\")\");return e.set(a,\".next\",r),n=n.context,e.set(n,\".framebufferWidth\",r+\"?\"+r+\".width:\"+n+\".drawingBufferWidth\"),e.set(n,\".framebufferHeight\",r+\"?\"+r+\".height:\"+n+\".drawingBufferHeight\"),r}))}return null}function w(t,r,n){function a(t){if(t in i){var r=e.id(i[t]);return(t=F((function(){return r}))).id=r,t}if(t in o){var n=o[t];return B(n,(function(t,e){var r=t.invoke(e,n);return e.def(t.shared.strings,\".id(\",r,\")\")}))}return null}var i=t.static,o=t.dynamic,s=a(\"frag\"),l=a(\"vert\"),c=null;return R(s)&&R(l)?(c=h.program(l.id,s.id,null,n),t=F((function(t,e){return t.link(c)}))):t=new D(s&&s.thisDep||l&&l.thisDep,s&&s.contextDep||l&&l.contextDep,s&&s.propDep||l&&l.propDep,(function(t,e){var r,n,a=t.shared.shader;return r=s?s.append(t,e):e.def(a,\".\",\"frag\"),n=l?l.append(t,e):e.def(a,\".\",\"vert\"),e.def(a+\".program(\"+n+\",\"+r+\")\")})),{frag:s,vert:l,progVar:t,program:c}}function T(t,e){function r(t,e){if(t in n){var r=0|n[t];return F((function(t,n){return e&&(t.OFFSET=r),r}))}if(t in a){var o=a[t];return B(o,(function(t,r){var n=t.invoke(r,o);return e&&(t.OFFSET=n),n}))}return e&&i?F((function(t,e){return t.OFFSET=\"0\",0})):null}var n=t.static,a=t.dynamic,i=function(){if(\"elements\"in n){var t=n.elements;z(t)?t=o.getElements(o.create(t,!0)):t&&(t=o.getElements(t));var e=F((function(e,r){if(t){var n=e.link(t);return e.ELEMENTS=n}return e.ELEMENTS=null}));return e.value=t,e}if(\"elements\"in a){var r=a.elements;return B(r,(function(t,e){var n=(a=t.shared).isBufferArgs,a=a.elements,i=t.invoke(e,r),o=e.def(\"null\");n=e.def(n,\"(\",i,\")\"),i=t.cond(n).then(o,\"=\",a,\".createStream(\",i,\");\").else(o,\"=\",a,\".getElements(\",i,\");\");return e.entry(i),e.exit(t.cond(n).then(a,\".destroyStream(\",o,\");\")),t.ELEMENTS=o}))}return null}(),s=r(\"offset\",!0);return{elements:i,primitive:function(){if(\"primitive\"in n){var t=n.primitive;return F((function(e,r){return nt[t]}))}if(\"primitive\"in a){var e=a.primitive;return B(e,(function(t,r){var n=t.constants.primTypes,a=t.invoke(r,e);return r.def(n,\"[\",a,\"]\")}))}return i?R(i)?i.value?F((function(t,e){return e.def(t.ELEMENTS,\".primType\")})):F((function(){return 4})):new D(i.thisDep,i.contextDep,i.propDep,(function(t,e){var r=t.ELEMENTS;return e.def(r,\"?\",r,\".primType:\",4)})):null}(),count:function(){if(\"count\"in n){var t=0|n.count;return F((function(){return t}))}if(\"count\"in a){var e=a.count;return B(e,(function(t,r){return t.invoke(r,e)}))}return i?R(i)?i?s?new D(s.thisDep,s.contextDep,s.propDep,(function(t,e){return e.def(t.ELEMENTS,\".vertCount-\",t.OFFSET)})):F((function(t,e){return e.def(t.ELEMENTS,\".vertCount\")})):F((function(){return-1})):new D(i.thisDep||s.thisDep,i.contextDep||s.contextDep,i.propDep||s.propDep,(function(t,e){var r=t.ELEMENTS;return t.OFFSET?e.def(r,\"?\",r,\".vertCount-\",t.OFFSET,\":-1\"):e.def(r,\"?\",r,\".vertCount:-1\")})):null}(),instances:r(\"instances\",!1),offset:s}}function k(t,r){var n=t.static,i=t.dynamic,o={};return Object.keys(n).forEach((function(t){var r=n[t],i=e.id(t),s=new X;if(z(r))s.state=1,s.buffer=a.getBuffer(a.create(r,34962,!1,!0)),s.type=0;else if(c=a.getBuffer(r))s.state=1,s.buffer=c,s.type=0;else if(\"constant\"in r){var l=r.constant;s.buffer=\"null\",s.state=2,\"number\"==typeof l?s.x=l:wt.forEach((function(t,e){e<l.length&&(s[t]=l[e])}))}else{var c=z(r.buffer)?a.getBuffer(a.create(r.buffer,34962,!1,!0)):a.getBuffer(r.buffer),u=0|r.offset,h=0|r.stride,f=0|r.size,p=!!r.normalized,d=0;\"type\"in r&&(d=Q[r.type]),r=0|r.divisor,s.buffer=c,s.state=1,s.size=f,s.normalized=p,s.type=d||c.dtype,s.offset=u,s.stride=h,s.divisor=r}o[t]=F((function(t,e){var r=t.attribCache;if(i in r)return r[i];var n={isStream:!1};return Object.keys(s).forEach((function(t){n[t]=s[t]})),s.buffer&&(n.buffer=t.link(s.buffer),n.type=n.type||n.buffer+\".dtype\"),r[i]=n}))})),Object.keys(i).forEach((function(t){var e=i[t];o[t]=B(e,(function(t,r){function n(t){r(l[t],\"=\",a,\".\",t,\"|0;\")}var a=t.invoke(r,e),i=t.shared,o=t.constants,s=i.isBufferArgs,l=(i=i.buffer,{isStream:r.def(!1)}),c=new X;c.state=1,Object.keys(c).forEach((function(t){l[t]=r.def(\"\"+c[t])}));var u=l.buffer,h=l.type;return r(\"if(\",s,\"(\",a,\")){\",l.isStream,\"=true;\",u,\"=\",i,\".createStream(\",34962,\",\",a,\");\",h,\"=\",u,\".dtype;\",\"}else{\",u,\"=\",i,\".getBuffer(\",a,\");\",\"if(\",u,\"){\",h,\"=\",u,\".dtype;\",'}else if(\"constant\" in ',a,\"){\",l.state,\"=\",2,\";\",\"if(typeof \"+a+'.constant === \"number\"){',l[wt[0]],\"=\",a,\".constant;\",wt.slice(1).map((function(t){return l[t]})).join(\"=\"),\"=0;\",\"}else{\",wt.map((function(t,e){return l[t]+\"=\"+a+\".constant.length>\"+e+\"?\"+a+\".constant[\"+e+\"]:0;\"})).join(\"\"),\"}}else{\",\"if(\",s,\"(\",a,\".buffer)){\",u,\"=\",i,\".createStream(\",34962,\",\",a,\".buffer);\",\"}else{\",u,\"=\",i,\".getBuffer(\",a,\".buffer);\",\"}\",h,'=\"type\" in ',a,\"?\",o.glTypes,\"[\",a,\".type]:\",u,\".dtype;\",l.normalized,\"=!!\",a,\".normalized;\"),n(\"size\"),n(\"offset\"),n(\"stride\"),n(\"divisor\"),r(\"}}\"),r.exit(\"if(\",l.isStream,\"){\",i,\".destroyStream(\",u,\");\",\"}\"),l}))})),o}function M(t,e,n,a,o){function s(t){var e=c[t];e&&(f[t]=e)}var l=function(t,e){if(\"string\"==typeof(r=t.static).frag&&\"string\"==typeof r.vert){if(0<Object.keys(e.dynamic).length)return null;var r=e.static,n=Object.keys(r);if(0<n.length&&\"number\"==typeof r[n[0]]){for(var a=[],i=0;i<n.length;++i)a.push([0|r[n[i]],n[i]]);return a}}return null}(t,e),c=function(t,e,r){function n(t){if(t in a){var r=a[t];t=!0;var n,o,s=0|r.x,l=0|r.y;return\"width\"in r?n=0|r.width:t=!1,\"height\"in r?o=0|r.height:t=!1,new D(!t&&e&&e.thisDep,!t&&e&&e.contextDep,!t&&e&&e.propDep,(function(t,e){var a=t.shared.context,i=n;\"width\"in r||(i=e.def(a,\".\",\"framebufferWidth\",\"-\",s));var c=o;return\"height\"in r||(c=e.def(a,\".\",\"framebufferHeight\",\"-\",l)),[s,l,i,c]}))}if(t in i){var c=i[t];return t=B(c,(function(t,e){var r=t.invoke(e,c),n=t.shared.context,a=e.def(r,\".x|0\"),i=e.def(r,\".y|0\");return[a,i,e.def('\"width\" in ',r,\"?\",r,\".width|0:\",\"(\",n,\".\",\"framebufferWidth\",\"-\",a,\")\"),r=e.def('\"height\" in ',r,\"?\",r,\".height|0:\",\"(\",n,\".\",\"framebufferHeight\",\"-\",i,\")\")]})),e&&(t.thisDep=t.thisDep||e.thisDep,t.contextDep=t.contextDep||e.contextDep,t.propDep=t.propDep||e.propDep),t}return e?new D(e.thisDep,e.contextDep,e.propDep,(function(t,e){var r=t.shared.context;return[0,0,e.def(r,\".\",\"framebufferWidth\"),e.def(r,\".\",\"framebufferHeight\")]})):null}var a=t.static,i=t.dynamic;if(t=n(\"viewport\")){var o=t;t=new D(t.thisDep,t.contextDep,t.propDep,(function(t,e){var r=o.append(t,e),n=t.shared.context;return e.set(n,\".viewportWidth\",r[2]),e.set(n,\".viewportHeight\",r[3]),r}))}return{viewport:t,scissor_box:n(\"scissor.box\")}}(t,d=_(t)),h=T(t),f=function(t,e){var r=t.static,n=t.dynamic,a={};return rt.forEach((function(t){function e(e,i){if(t in r){var s=e(r[t]);a[o]=F((function(){return s}))}else if(t in n){var l=n[t];a[o]=B(l,(function(t,e){return i(t,e,t.invoke(e,l))}))}}var o=v(t);switch(t){case\"cull.enable\":case\"blend.enable\":case\"dither\":case\"stencil.enable\":case\"depth.enable\":case\"scissor.enable\":case\"polygonOffset.enable\":case\"sample.alpha\":case\"sample.enable\":case\"depth.mask\":return e((function(t){return t}),(function(t,e,r){return r}));case\"depth.func\":return e((function(t){return Mt[t]}),(function(t,e,r){return e.def(t.constants.compareFuncs,\"[\",r,\"]\")}));case\"depth.range\":return e((function(t){return t}),(function(t,e,r){return[e.def(\"+\",r,\"[0]\"),e=e.def(\"+\",r,\"[1]\")]}));case\"blend.func\":return e((function(t){return[kt[\"srcRGB\"in t?t.srcRGB:t.src],kt[\"dstRGB\"in t?t.dstRGB:t.dst],kt[\"srcAlpha\"in t?t.srcAlpha:t.src],kt[\"dstAlpha\"in t?t.dstAlpha:t.dst]]}),(function(t,e,r){function n(t,n){return e.def('\"',t,n,'\" in ',r,\"?\",r,\".\",t,n,\":\",r,\".\",t)}t=t.constants.blendFuncs;var a=n(\"src\",\"RGB\"),i=n(\"dst\",\"RGB\"),o=(a=e.def(t,\"[\",a,\"]\"),e.def(t,\"[\",n(\"src\",\"Alpha\"),\"]\"));return[a,i=e.def(t,\"[\",i,\"]\"),o,t=e.def(t,\"[\",n(\"dst\",\"Alpha\"),\"]\")]}));case\"blend.equation\":return e((function(t){return\"string\"==typeof t?[J[t],J[t]]:\"object\"==typeof t?[J[t.rgb],J[t.alpha]]:void 0}),(function(t,e,r){var n=t.constants.blendEquations,a=e.def(),i=e.def();return(t=t.cond(\"typeof \",r,'===\"string\"')).then(a,\"=\",i,\"=\",n,\"[\",r,\"];\"),t.else(a,\"=\",n,\"[\",r,\".rgb];\",i,\"=\",n,\"[\",r,\".alpha];\"),e(t),[a,i]}));case\"blend.color\":return e((function(t){return i(4,(function(e){return+t[e]}))}),(function(t,e,r){return i(4,(function(t){return e.def(\"+\",r,\"[\",t,\"]\")}))}));case\"stencil.mask\":return e((function(t){return 0|t}),(function(t,e,r){return e.def(r,\"|0\")}));case\"stencil.func\":return e((function(t){return[Mt[t.cmp||\"keep\"],t.ref||0,\"mask\"in t?t.mask:-1]}),(function(t,e,r){return[t=e.def('\"cmp\" in ',r,\"?\",t.constants.compareFuncs,\"[\",r,\".cmp]\",\":\",7680),e.def(r,\".ref|0\"),e=e.def('\"mask\" in ',r,\"?\",r,\".mask|0:-1\")]}));case\"stencil.opFront\":case\"stencil.opBack\":return e((function(e){return[\"stencil.opBack\"===t?1029:1028,At[e.fail||\"keep\"],At[e.zfail||\"keep\"],At[e.zpass||\"keep\"]]}),(function(e,r,n){function a(t){return r.def('\"',t,'\" in ',n,\"?\",i,\"[\",n,\".\",t,\"]:\",7680)}var i=e.constants.stencilOps;return[\"stencil.opBack\"===t?1029:1028,a(\"fail\"),a(\"zfail\"),a(\"zpass\")]}));case\"polygonOffset.offset\":return e((function(t){return[0|t.factor,0|t.units]}),(function(t,e,r){return[e.def(r,\".factor|0\"),e=e.def(r,\".units|0\")]}));case\"cull.face\":return e((function(t){var e=0;return\"front\"===t?e=1028:\"back\"===t&&(e=1029),e}),(function(t,e,r){return e.def(r,'===\"front\"?',1028,\":\",1029)}));case\"lineWidth\":return e((function(t){return t}),(function(t,e,r){return r}));case\"frontFace\":return e((function(t){return St[t]}),(function(t,e,r){return e.def(r+'===\"cw\"?2304:2305')}));case\"colorMask\":return e((function(t){return t.map((function(t){return!!t}))}),(function(t,e,r){return i(4,(function(t){return\"!!\"+r+\"[\"+t+\"]\"}))}));case\"sample.coverage\":return e((function(t){return[\"value\"in t?t.value:1,!!t.invert]}),(function(t,e,r){return[e.def('\"value\" in ',r,\"?+\",r,\".value:1\"),e=e.def(\"!!\",r,\".invert\")]}))}})),a}(t),p=w(t,0,l);s(\"viewport\"),s(v(\"scissor.box\"));var d,g=0<Object.keys(f).length;if((d={framebuffer:d,draw:h,shader:p,state:f,dirty:g,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}}).profile=function(t){var e,r=t.static;if(t=t.dynamic,\"profile\"in r){var n=!!r.profile;(e=F((function(t,e){return n}))).enable=n}else if(\"profile\"in t){var a=t.profile;e=B(a,(function(t,e){return t.invoke(e,a)}))}return e}(t),d.uniforms=function(t,e){var r=t.static,n=t.dynamic,a={};return Object.keys(r).forEach((function(t){var e,n=r[t];if(\"number\"==typeof n||\"boolean\"==typeof n)e=F((function(){return n}));else if(\"function\"==typeof n){var o=n._reglType;\"texture2d\"===o||\"textureCube\"===o?e=F((function(t){return t.link(n)})):\"framebuffer\"!==o&&\"framebufferCube\"!==o||(e=F((function(t){return t.link(n.color[0])})))}else m(n)&&(e=F((function(t){return t.global.def(\"[\",i(n.length,(function(t){return n[t]})),\"]\")})));e.value=n,a[t]=e})),Object.keys(n).forEach((function(t){var e=n[t];a[t]=B(e,(function(t,r){return t.invoke(r,e)}))})),a}(n),d.drawVAO=d.scopeVAO=function(t,e){var r=t.static,n=t.dynamic;if(\"vao\"in r){var a=r.vao;return null!==a&&null===u.getVAO(a)&&(a=u.createVAO(a)),F((function(t){return t.link(u.getVAO(a))}))}if(\"vao\"in n){var i=n.vao;return B(i,(function(t,e){var r=t.invoke(e,i);return e.def(t.shared.vao+\".getVAO(\"+r+\")\")}))}return null}(t),!d.drawVAO&&p.program&&!l&&r.angle_instanced_arrays){var y=!0;if(t=p.program.attributes.map((function(t){return t=e.static[t],y=y&&!!t,t})),y&&0<t.length){var x=u.getVAO(u.createVAO(t));d.drawVAO=new D(null,null,null,(function(t,e){return t.link(x)})),d.useVAO=!0}}return l?d.useVAO=!0:d.attributes=k(e),d.context=function(t){var e=t.static,r=t.dynamic,n={};return Object.keys(e).forEach((function(t){var r=e[t];n[t]=F((function(t,e){return\"number\"==typeof r||\"boolean\"==typeof r?\"\"+r:t.link(r)}))})),Object.keys(r).forEach((function(t){var e=r[t];n[t]=B(e,(function(t,r){return t.invoke(r,e)}))})),n}(a),d}function A(t,e,r){var n=t.shared.context,a=t.scope();Object.keys(r).forEach((function(i){e.save(n,\".\"+i),a(n,\".\",i,\"=\",r[i].append(t,e),\";\")})),e(a)}function S(t,e,r,n){var a,i=(s=t.shared).gl,o=s.framebuffer;$&&(a=e.def(s.extensions,\".webgl_draw_buffers\"));var s=(l=t.constants).drawBuffer,l=l.backBuffer;t=r?r.append(t,e):e.def(o,\".next\"),n||e(\"if(\",t,\"!==\",o,\".cur){\"),e(\"if(\",t,\"){\",i,\".bindFramebuffer(\",36160,\",\",t,\".framebuffer);\"),$&&e(a,\".drawBuffersWEBGL(\",s,\"[\",t,\".colorAttachments.length]);\"),e(\"}else{\",i,\".bindFramebuffer(\",36160,\",null);\"),$&&e(a,\".drawBuffersWEBGL(\",l,\");\"),e(\"}\",o,\".cur=\",t,\";\"),n||e(\"}\")}function E(t,e,r){var n=t.shared,a=n.gl,o=t.current,s=t.next,l=n.current,c=n.next,u=t.cond(l,\".dirty\");rt.forEach((function(e){var n,h;if(!((e=v(e))in r.state))if(e in s){n=s[e],h=o[e];var f=i(tt[e].length,(function(t){return u.def(n,\"[\",t,\"]\")}));u(t.cond(f.map((function(t,e){return t+\"!==\"+h+\"[\"+e+\"]\"})).join(\"||\")).then(a,\".\",it[e],\"(\",f,\");\",f.map((function(t,e){return h+\"[\"+e+\"]=\"+t})).join(\";\"),\";\"))}else n=u.def(c,\".\",e),f=t.cond(n,\"!==\",l,\".\",e),u(f),e in at?f(t.cond(n).then(a,\".enable(\",at[e],\");\").else(a,\".disable(\",at[e],\");\"),l,\".\",e,\"=\",n,\";\"):f(a,\".\",it[e],\"(\",n,\");\",l,\".\",e,\"=\",n,\";\")})),0===Object.keys(r.state).length&&u(l,\".dirty=false;\"),e(u)}function C(t,e,r,n){var a=t.shared,i=t.current,o=a.current,s=a.gl;O(Object.keys(r)).forEach((function(a){var l=r[a];if(!n||n(l)){var c=l.append(t,e);if(at[a]){var u=at[a];R(l)?e(s,c?\".enable(\":\".disable(\",u,\");\"):e(t.cond(c).then(s,\".enable(\",u,\");\").else(s,\".disable(\",u,\");\")),e(o,\".\",a,\"=\",c,\";\")}else if(m(c)){var h=i[a];e(s,\".\",it[a],\"(\",c,\");\",c.map((function(t,e){return h+\"[\"+e+\"]=\"+t})).join(\";\"),\";\")}else e(s,\".\",it[a],\"(\",c,\");\",o,\".\",a,\"=\",c,\";\")}}))}function L(t,e){K&&(t.instancing=e.def(t.shared.extensions,\".angle_instanced_arrays\"))}function P(t,e,r,n,a){function i(){return\"undefined\"==typeof performance?\"Date.now()\":\"performance.now()\"}function o(t){t(c=e.def(),\"=\",i(),\";\"),\"string\"==typeof a?t(f,\".count+=\",a,\";\"):t(f,\".count++;\"),d&&(n?t(u=e.def(),\"=\",g,\".getNumPendingQueries();\"):t(g,\".beginQuery(\",f,\");\"))}function s(t){t(f,\".cpuTime+=\",i(),\"-\",c,\";\"),d&&(n?t(g,\".pushScopeStats(\",u,\",\",g,\".getNumPendingQueries(),\",f,\");\"):t(g,\".endQuery();\"))}function l(t){var r=e.def(p,\".profile\");e(p,\".profile=\",t,\";\"),e.exit(p,\".profile=\",r,\";\")}var c,u,h=t.shared,f=t.stats,p=h.current,g=h.timer;if(r=r.profile){if(R(r))return void(r.enable?(o(e),s(e.exit),l(\"true\")):l(\"false\"));l(r=r.append(t,e))}else r=e.def(p,\".profile\");o(h=t.block()),e(\"if(\",r,\"){\",h,\"}\"),s(t=t.block()),e.exit(\"if(\",r,\"){\",t,\"}\")}function N(t,e,r,n,a){function i(r,n,a){function i(){e(\"if(!\",u,\".buffer){\",l,\".enableVertexAttribArray(\",c,\");}\");var r,i=a.type;r=a.size?e.def(a.size,\"||\",n):n,e(\"if(\",u,\".type!==\",i,\"||\",u,\".size!==\",r,\"||\",p.map((function(t){return u+\".\"+t+\"!==\"+a[t]})).join(\"||\"),\"){\",l,\".bindBuffer(\",34962,\",\",h,\".buffer);\",l,\".vertexAttribPointer(\",[c,r,i,a.normalized,a.stride,a.offset],\");\",u,\".type=\",i,\";\",u,\".size=\",r,\";\",p.map((function(t){return u+\".\"+t+\"=\"+a[t]+\";\"})).join(\"\"),\"}\"),K&&(i=a.divisor,e(\"if(\",u,\".divisor!==\",i,\"){\",t.instancing,\".vertexAttribDivisorANGLE(\",[c,i],\");\",u,\".divisor=\",i,\";}\"))}function s(){e(\"if(\",u,\".buffer){\",l,\".disableVertexAttribArray(\",c,\");\",u,\".buffer=null;\",\"}if(\",wt.map((function(t,e){return u+\".\"+t+\"!==\"+f[e]})).join(\"||\"),\"){\",l,\".vertexAttrib4f(\",c,\",\",f,\");\",wt.map((function(t,e){return u+\".\"+t+\"=\"+f[e]+\";\"})).join(\"\"),\"}\")}var l=o.gl,c=e.def(r,\".location\"),u=e.def(o.attributes,\"[\",c,\"]\");r=a.state;var h=a.buffer,f=[a.x,a.y,a.z,a.w],p=[\"buffer\",\"normalized\",\"offset\",\"stride\"];1===r?i():2===r?s():(e(\"if(\",r,\"===\",1,\"){\"),i(),e(\"}else{\"),s(),e(\"}\"))}var o=t.shared;n.forEach((function(n){var o,s=n.name,l=r.attributes[s];if(l){if(!a(l))return;o=l.append(t,e)}else{if(!a(Et))return;var c=t.scopeAttrib(s);o={},Object.keys(new X).forEach((function(t){o[t]=e.def(c,\".\",t)}))}i(t.link(n),function(t){switch(t){case 35664:case 35667:case 35671:return 2;case 35665:case 35668:case 35672:return 3;case 35666:case 35669:case 35673:return 4;default:return 1}}(n.info.type),o)}))}function j(t,r,n,a,o){for(var s,l=t.shared,c=l.gl,u=0;u<a.length;++u){var h,f=(g=a[u]).name,p=g.info.type,d=n.uniforms[f],g=t.link(g)+\".location\";if(d){if(!o(d))continue;if(R(d)){if(f=d.value,35678===p||35680===p)r(c,\".uniform1i(\",g,\",\",(p=t.link(f._texture||f.color[0]._texture))+\".bind());\"),r.exit(p,\".unbind();\");else if(35674===p||35675===p||35676===p)d=2,35675===p?d=3:35676===p&&(d=4),r(c,\".uniformMatrix\",d,\"fv(\",g,\",false,\",f=t.global.def(\"new Float32Array([\"+Array.prototype.slice.call(f)+\"])\"),\");\");else{switch(p){case 5126:s=\"1f\";break;case 35664:s=\"2f\";break;case 35665:s=\"3f\";break;case 35666:s=\"4f\";break;case 35670:case 5124:s=\"1i\";break;case 35671:case 35667:s=\"2i\";break;case 35672:case 35668:s=\"3i\";break;case 35673:s=\"4i\";break;case 35669:s=\"4i\"}r(c,\".uniform\",s,\"(\",g,\",\",m(f)?Array.prototype.slice.call(f):f,\");\")}continue}h=d.append(t,r)}else{if(!o(Et))continue;h=r.def(l.uniforms,\"[\",e.id(f),\"]\")}switch(35678===p?r(\"if(\",h,\"&&\",h,'._reglType===\"framebuffer\"){',h,\"=\",h,\".color[0];\",\"}\"):35680===p&&r(\"if(\",h,\"&&\",h,'._reglType===\"framebufferCube\"){',h,\"=\",h,\".color[0];\",\"}\"),f=1,p){case 35678:case 35680:p=r.def(h,\"._texture\"),r(c,\".uniform1i(\",g,\",\",p,\".bind());\"),r.exit(p,\".unbind();\");continue;case 5124:case 35670:s=\"1i\";break;case 35667:case 35671:s=\"2i\",f=2;break;case 35668:case 35672:s=\"3i\",f=3;break;case 35669:case 35673:s=\"4i\",f=4;break;case 5126:s=\"1f\";break;case 35664:s=\"2f\",f=2;break;case 35665:s=\"3f\",f=3;break;case 35666:s=\"4f\",f=4;break;case 35674:s=\"Matrix2fv\";break;case 35675:s=\"Matrix3fv\";break;case 35676:s=\"Matrix4fv\"}if(r(c,\".uniform\",s,\"(\",g,\",\"),\"M\"===s.charAt(0)){g=Math.pow(p-35674+2,2);var v=t.global.def(\"new Float32Array(\",g,\")\");r(\"false,(Array.isArray(\",h,\")||\",h,\" instanceof Float32Array)?\",h,\":(\",i(g,(function(t){return v+\"[\"+t+\"]=\"+h+\"[\"+t+\"]\"})),\",\",v,\")\")}else r(1<f?i(f,(function(t){return h+\"[\"+t+\"]\"})):h);r(\");\")}}function U(t,e,r,n){function a(a){var i=f[a];return i?i.contextDep&&n.contextDynamic||i.propDep?i.append(t,r):i.append(t,e):e.def(h,\".\",a)}function i(){function t(){r(l,\".drawElementsInstancedANGLE(\",[d,m,v,g+\"<<((\"+v+\"-5121)>>1)\",s],\");\")}function e(){r(l,\".drawArraysInstancedANGLE(\",[d,g,m,s],\");\")}p?y?t():(r(\"if(\",p,\"){\"),t(),r(\"}else{\"),e(),r(\"}\")):e()}function o(){function t(){r(u+\".drawElements(\"+[d,m,v,g+\"<<((\"+v+\"-5121)>>1)\"]+\");\")}function e(){r(u+\".drawArrays(\"+[d,g,m]+\");\")}p?y?t():(r(\"if(\",p,\"){\"),t(),r(\"}else{\"),e(),r(\"}\")):e()}var s,l,c=t.shared,u=c.gl,h=c.draw,f=n.draw,p=function(){var a=f.elements,i=e;return a?((a.contextDep&&n.contextDynamic||a.propDep)&&(i=r),a=a.append(t,i)):a=i.def(h,\".\",\"elements\"),a&&i(\"if(\"+a+\")\"+u+\".bindBuffer(34963,\"+a+\".buffer.buffer);\"),a}(),d=a(\"primitive\"),g=a(\"offset\"),m=function(){var a=f.count,i=e;return a?((a.contextDep&&n.contextDynamic||a.propDep)&&(i=r),a=a.append(t,i)):a=i.def(h,\".\",\"count\"),a}();if(\"number\"==typeof m){if(0===m)return}else r(\"if(\",m,\"){\"),r.exit(\"}\");K&&(s=a(\"instances\"),l=t.instancing);var v=p+\".type\",y=f.elements&&R(f.elements);K&&(\"number\"!=typeof s||0<=s)?\"string\"==typeof s?(r(\"if(\",s,\">0){\"),i(),r(\"}else if(\",s,\"<0){\"),o(),r(\"}\")):i():o()}function V(t,e,r,n,a){return a=(e=b()).proc(\"body\",a),K&&(e.instancing=a.def(e.shared.extensions,\".angle_instanced_arrays\")),t(e,a,r,n),e.compile().body}function H(t,e,r,n){L(t,e),r.useVAO?r.drawVAO?e(t.shared.vao,\".setVAO(\",r.drawVAO.append(t,e),\");\"):e(t.shared.vao,\".setVAO(\",t.shared.vao,\".targetVAO);\"):(e(t.shared.vao,\".setVAO(null);\"),N(t,e,r,n.attributes,(function(){return!0}))),j(t,e,r,n.uniforms,(function(){return!0})),U(t,e,e,r)}function G(t,e,r,n){function a(){return!0}t.batchId=\"a1\",L(t,e),N(t,e,r,n.attributes,a),j(t,e,r,n.uniforms,a),U(t,e,e,r)}function Y(t,e,r,n){function a(t){return t.contextDep&&o||t.propDep}function i(t){return!a(t)}L(t,e);var o=r.contextDep,s=e.def(),l=e.def();t.shared.props=l,t.batchId=s;var c=t.scope(),u=t.scope();e(c.entry,\"for(\",s,\"=0;\",s,\"<\",\"a1\",\";++\",s,\"){\",l,\"=\",\"a0\",\"[\",s,\"];\",u,\"}\",c.exit),r.needsContext&&A(t,u,r.context),r.needsFramebuffer&&S(t,u,r.framebuffer),C(t,u,r.state,a),r.profile&&a(r.profile)&&P(t,u,r,!1,!0),n?(r.useVAO?r.drawVAO?a(r.drawVAO)?u(t.shared.vao,\".setVAO(\",r.drawVAO.append(t,u),\");\"):c(t.shared.vao,\".setVAO(\",r.drawVAO.append(t,c),\");\"):c(t.shared.vao,\".setVAO(\",t.shared.vao,\".targetVAO);\"):(c(t.shared.vao,\".setVAO(null);\"),N(t,c,r,n.attributes,i),N(t,u,r,n.attributes,a)),j(t,c,r,n.uniforms,i),j(t,u,r,n.uniforms,a),U(t,c,u,r)):(e=t.global.def(\"{}\"),n=r.shader.progVar.append(t,u),l=u.def(n,\".id\"),c=u.def(e,\"[\",l,\"]\"),u(t.shared.gl,\".useProgram(\",n,\".program);\",\"if(!\",c,\"){\",c,\"=\",e,\"[\",l,\"]=\",t.link((function(e){return V(G,t,r,e,2)})),\"(\",n,\");}\",c,\".call(this,a0[\",s,\"],\",s,\");\"))}function W(t,r){function n(e){var n=r.shader[e];n&&a.set(i.shader,\".\"+e,n.append(t,a))}var a=t.proc(\"scope\",3);t.batchId=\"a2\";var i=t.shared,o=i.current;A(t,a,r.context),r.framebuffer&&r.framebuffer.append(t,a),O(Object.keys(r.state)).forEach((function(e){var n=r.state[e].append(t,a);m(n)?n.forEach((function(r,n){a.set(t.next[e],\"[\"+n+\"]\",r)})):a.set(i.next,\".\"+e,n)})),P(t,a,r,!0,!0),[\"elements\",\"offset\",\"count\",\"instances\",\"primitive\"].forEach((function(e){var n=r.draw[e];n&&a.set(i.draw,\".\"+e,\"\"+n.append(t,a))})),Object.keys(r.uniforms).forEach((function(n){a.set(i.uniforms,\"[\"+e.id(n)+\"]\",r.uniforms[n].append(t,a))})),Object.keys(r.attributes).forEach((function(e){var n=r.attributes[e].append(t,a),i=t.scopeAttrib(e);Object.keys(new X).forEach((function(t){a.set(i,\".\"+t,n[t])}))})),r.scopeVAO&&a.set(i.vao,\".targetVAO\",r.scopeVAO.append(t,a)),n(\"vert\"),n(\"frag\"),0<Object.keys(r.state).length&&(a(o,\".dirty=true;\"),a.exit(o,\".dirty=true;\")),a(\"a1(\",t.shared.context,\",a0,\",t.batchId,\");\")}function Z(t,e,r){var n=e.static[r];if(n&&function(t){if(\"object\"==typeof t&&!m(t)){for(var e=Object.keys(t),r=0;r<e.length;++r)if(q.isDynamic(t[e[r]]))return!0;return!1}}(n)){var a=t.global,i=Object.keys(n),o=!1,s=!1,l=!1,c=t.global.def(\"{}\");i.forEach((function(e){var r=n[e];if(q.isDynamic(r))\"function\"==typeof r&&(r=n[e]=q.unbox(r)),e=B(r,null),o=o||e.thisDep,l=l||e.propDep,s=s||e.contextDep;else{switch(a(c,\".\",e,\"=\"),typeof r){case\"number\":a(r);break;case\"string\":a('\"',r,'\"');break;case\"object\":Array.isArray(r)&&a(\"[\",r.join(),\"]\");break;default:a(t.link(r))}a(\";\")}})),e.dynamic[r]=new q.DynamicVariable(4,{thisDep:o,contextDep:s,propDep:l,ref:c,append:function(t,e){i.forEach((function(r){var a=n[r];q.isDynamic(a)&&(a=t.invoke(e,a),e(c,\".\",r,\"=\",a,\";\"))}))}}),delete e.static[r]}}var X=u.Record,J={add:32774,subtract:32778,\"reverse subtract\":32779};r.ext_blend_minmax&&(J.min=32775,J.max=32776);var K=r.angle_instanced_arrays,$=r.webgl_draw_buffers,tt={dirty:!0,profile:g.profile},et={},rt=[],at={},it={};y(\"dither\",3024),y(\"blend.enable\",3042),x(\"blend.color\",\"blendColor\",[0,0,0,0]),x(\"blend.equation\",\"blendEquationSeparate\",[32774,32774]),x(\"blend.func\",\"blendFuncSeparate\",[1,0,1,0]),y(\"depth.enable\",2929,!0),x(\"depth.func\",\"depthFunc\",513),x(\"depth.range\",\"depthRange\",[0,1]),x(\"depth.mask\",\"depthMask\",!0),x(\"colorMask\",\"colorMask\",[!0,!0,!0,!0]),y(\"cull.enable\",2884),x(\"cull.face\",\"cullFace\",1029),x(\"frontFace\",\"frontFace\",2305),x(\"lineWidth\",\"lineWidth\",1),y(\"polygonOffset.enable\",32823),x(\"polygonOffset.offset\",\"polygonOffset\",[0,0]),y(\"sample.alpha\",32926),y(\"sample.enable\",32928),x(\"sample.coverage\",\"sampleCoverage\",[1,!1]),y(\"stencil.enable\",2960),x(\"stencil.mask\",\"stencilMask\",-1),x(\"stencil.func\",\"stencilFunc\",[519,0,-1]),x(\"stencil.opFront\",\"stencilOpSeparate\",[1028,7680,7680,7680]),x(\"stencil.opBack\",\"stencilOpSeparate\",[1029,7680,7680,7680]),y(\"scissor.enable\",3089),x(\"scissor.box\",\"scissor\",[0,0,t.drawingBufferWidth,t.drawingBufferHeight]),x(\"viewport\",\"viewport\",[0,0,t.drawingBufferWidth,t.drawingBufferHeight]);var ot={gl:t,context:p,strings:e,next:et,current:tt,draw:f,elements:o,buffer:a,shader:h,attributes:u.state,vao:u,uniforms:c,framebuffer:l,extensions:r,timer:d,isBufferArgs:z},st={primTypes:nt,compareFuncs:Mt,blendFuncs:kt,blendEquations:J,stencilOps:At,glTypes:Q,orientationType:St};$&&(st.backBuffer=[1029],st.drawBuffer=i(n.maxDrawbuffers,(function(t){return 0===t?[0]:i(t,(function(t){return 36064+t}))})));var lt=0;return{next:et,current:tt,procs:function(){var t=b(),e=t.proc(\"poll\"),a=t.proc(\"refresh\"),o=t.block();e(o),a(o);var s,l=t.shared,c=l.gl,u=l.next,h=l.current;o(h,\".dirty=false;\"),S(t,e),S(t,a,null,!0),K&&(s=t.link(K)),r.oes_vertex_array_object&&a(t.link(r.oes_vertex_array_object),\".bindVertexArrayOES(null);\");for(var f=0;f<n.maxAttributes;++f){var p=a.def(l.attributes,\"[\",f,\"]\"),d=t.cond(p,\".buffer\");d.then(c,\".enableVertexAttribArray(\",f,\");\",c,\".bindBuffer(\",34962,\",\",p,\".buffer.buffer);\",c,\".vertexAttribPointer(\",f,\",\",p,\".size,\",p,\".type,\",p,\".normalized,\",p,\".stride,\",p,\".offset);\").else(c,\".disableVertexAttribArray(\",f,\");\",c,\".vertexAttrib4f(\",f,\",\",p,\".x,\",p,\".y,\",p,\".z,\",p,\".w);\",p,\".buffer=null;\"),a(d),K&&a(s,\".vertexAttribDivisorANGLE(\",f,\",\",p,\".divisor);\")}return a(t.shared.vao,\".currentVAO=null;\",t.shared.vao,\".setVAO(\",t.shared.vao,\".targetVAO);\"),Object.keys(at).forEach((function(r){var n=at[r],i=o.def(u,\".\",r),s=t.block();s(\"if(\",i,\"){\",c,\".enable(\",n,\")}else{\",c,\".disable(\",n,\")}\",h,\".\",r,\"=\",i,\";\"),a(s),e(\"if(\",i,\"!==\",h,\".\",r,\"){\",s,\"}\")})),Object.keys(it).forEach((function(r){var n,s,l=it[r],f=tt[r],p=t.block();p(c,\".\",l,\"(\"),m(f)?(l=f.length,n=t.global.def(u,\".\",r),s=t.global.def(h,\".\",r),p(i(l,(function(t){return n+\"[\"+t+\"]\"})),\");\",i(l,(function(t){return s+\"[\"+t+\"]=\"+n+\"[\"+t+\"];\"})).join(\"\")),e(\"if(\",i(l,(function(t){return n+\"[\"+t+\"]!==\"+s+\"[\"+t+\"]\"})).join(\"||\"),\"){\",p,\"}\")):(n=o.def(u,\".\",r),s=o.def(h,\".\",r),p(n,\");\",h,\".\",r,\"=\",n,\";\"),e(\"if(\",n,\"!==\",s,\"){\",p,\"}\")),a(p)})),t.compile()}(),compile:function(t,e,r,n,a){var i=b();return i.stats=i.link(a),Object.keys(e.static).forEach((function(t){Z(i,e,t)})),Tt.forEach((function(e){Z(i,t,e)})),r=M(t,e,r,n),function(t,e){var r=t.proc(\"draw\",1);L(t,r),A(t,r,e.context),S(t,r,e.framebuffer),E(t,r,e),C(t,r,e.state),P(t,r,e,!1,!0);var n=e.shader.progVar.append(t,r);if(r(t.shared.gl,\".useProgram(\",n,\".program);\"),e.shader.program)H(t,r,e,e.shader.program);else{r(t.shared.vao,\".setVAO(null);\");var a=t.global.def(\"{}\"),i=r.def(n,\".id\"),o=r.def(a,\"[\",i,\"]\");r(t.cond(o).then(o,\".call(this,a0);\").else(o,\"=\",a,\"[\",i,\"]=\",t.link((function(r){return V(H,t,e,r,1)})),\"(\",n,\");\",o,\".call(this,a0);\"))}0<Object.keys(e.state).length&&r(t.shared.current,\".dirty=true;\")}(i,r),W(i,r),function(t,e){function r(t){return t.contextDep&&a||t.propDep}var n=t.proc(\"batch\",2);t.batchId=\"0\",L(t,n);var a=!1,i=!0;Object.keys(e.context).forEach((function(t){a=a||e.context[t].propDep})),a||(A(t,n,e.context),i=!1);var o=!1;if((s=e.framebuffer)?(s.propDep?a=o=!0:s.contextDep&&a&&(o=!0),o||S(t,n,s)):S(t,n,null),e.state.viewport&&e.state.viewport.propDep&&(a=!0),E(t,n,e),C(t,n,e.state,(function(t){return!r(t)})),e.profile&&r(e.profile)||P(t,n,e,!1,\"a1\"),e.contextDep=a,e.needsContext=i,e.needsFramebuffer=o,(i=e.shader.progVar).contextDep&&a||i.propDep)Y(t,n,e,null);else if(i=i.append(t,n),n(t.shared.gl,\".useProgram(\",i,\".program);\"),e.shader.program)Y(t,n,e,e.shader.program);else{n(t.shared.vao,\".setVAO(null);\");var s=t.global.def(\"{}\"),l=(o=n.def(i,\".id\"),n.def(s,\"[\",o,\"]\"));n(t.cond(l).then(l,\".call(this,a0,a1);\").else(l,\"=\",s,\"[\",o,\"]=\",t.link((function(r){return V(Y,t,e,r,2)})),\"(\",i,\");\",l,\".call(this,a0,a1);\"))}0<Object.keys(e.state).length&&n(t.shared.current,\".dirty=true;\")}(i,r),i.compile()}}}function j(t,e){for(var r=0;r<t.length;++r)if(t[r]===e)return r;return-1}var U=function(t,e){for(var r=Object.keys(e),n=0;n<r.length;++n)t[r[n]]=e[r[n]];return t},V=0,q={DynamicVariable:t,define:function(r,n){return new t(r,e(n+\"\"))},isDynamic:function(e){return\"function\"==typeof e&&!e._reglType||e instanceof t},unbox:function(e,r){return\"function\"==typeof e?new t(0,e):e},accessor:e},H={next:\"function\"==typeof requestAnimationFrame?function(t){return requestAnimationFrame(t)}:function(t){return setTimeout(t,16)},cancel:\"function\"==typeof cancelAnimationFrame?function(t){return cancelAnimationFrame(t)}:clearTimeout},G=\"undefined\"!=typeof performance&&performance.now?function(){return performance.now()}:function(){return+new Date},Y=s();Y.zero=s();var W=function(t,e){var r=1;e.ext_texture_filter_anisotropic&&(r=t.getParameter(34047));var n=1,a=1;e.webgl_draw_buffers&&(n=t.getParameter(34852),a=t.getParameter(36063));var i=!!e.oes_texture_float;if(i){i=t.createTexture(),t.bindTexture(3553,i),t.texImage2D(3553,0,6408,1,1,0,6408,5126,null);var o=t.createFramebuffer();if(t.bindFramebuffer(36160,o),t.framebufferTexture2D(36160,36064,3553,i,0),t.bindTexture(3553,null),36053!==t.checkFramebufferStatus(36160))i=!1;else{t.viewport(0,0,1,1),t.clearColor(1,0,0,1),t.clear(16384);var s=Y.allocType(5126,4);t.readPixels(0,0,1,1,6408,5126,s),t.getError()?i=!1:(t.deleteFramebuffer(o),t.deleteTexture(i),i=1===s[0]),Y.freeType(s)}}return s=!0,\"undefined\"!=typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent))||(s=t.createTexture(),o=Y.allocType(5121,36),t.activeTexture(33984),t.bindTexture(34067,s),t.texImage2D(34069,0,6408,3,3,0,6408,5121,o),Y.freeType(o),t.bindTexture(34067,null),t.deleteTexture(s),s=!t.getError()),{colorBits:[t.getParameter(3410),t.getParameter(3411),t.getParameter(3412),t.getParameter(3413)],depthBits:t.getParameter(3414),stencilBits:t.getParameter(3415),subpixelBits:t.getParameter(3408),extensions:Object.keys(e).filter((function(t){return!!e[t]})),maxAnisotropic:r,maxDrawbuffers:n,maxColorAttachments:a,pointSizeDims:t.getParameter(33901),lineWidthDims:t.getParameter(33902),maxViewportDims:t.getParameter(3386),maxCombinedTextureUnits:t.getParameter(35661),maxCubeMapSize:t.getParameter(34076),maxRenderbufferSize:t.getParameter(34024),maxTextureUnits:t.getParameter(34930),maxTextureSize:t.getParameter(3379),maxAttributes:t.getParameter(34921),maxVertexUniforms:t.getParameter(36347),maxVertexTextureUnits:t.getParameter(35660),maxVaryingVectors:t.getParameter(36348),maxFragmentUniforms:t.getParameter(36349),glsl:t.getParameter(35724),renderer:t.getParameter(7937),vendor:t.getParameter(7936),version:t.getParameter(7938),readFloat:i,npotTextureCube:s}},Z=function(t){return t instanceof Uint8Array||t instanceof Uint16Array||t instanceof Uint32Array||t instanceof Int8Array||t instanceof Int16Array||t instanceof Int32Array||t instanceof Float32Array||t instanceof Float64Array||t instanceof Uint8ClampedArray},X=function(t){return Object.keys(t).map((function(e){return t[e]}))},J={shape:function(t){for(var e=[];t.length;t=t[0])e.push(t.length);return e},flatten:function(t,e,r,n){var a=1;if(e.length)for(var i=0;i<e.length;++i)a*=e[i];else a=0;switch(r=n||Y.allocType(r,a),e.length){case 0:break;case 1:for(n=e[0],e=0;e<n;++e)r[e]=t[e];break;case 2:for(n=e[0],e=e[1],i=a=0;i<n;++i)for(var o=t[i],s=0;s<e;++s)r[a++]=o[s];break;case 3:c(t,e[0],e[1],e[2],r,0);break;default:!function t(e,r,n,a,i){for(var o=1,s=n+1;s<r.length;++s)o*=r[s];var l=r[n];if(4==r.length-n){var u=r[n+1],h=r[n+2];for(r=r[n+3],s=0;s<l;++s)c(e[s],u,h,r,a,i),i+=o}else for(s=0;s<l;++s)t(e[s],r,n+1,a,i),i+=o}(t,e,0,r,0)}return r}},K={\"[object Int8Array]\":5120,\"[object Int16Array]\":5122,\"[object Int32Array]\":5124,\"[object Uint8Array]\":5121,\"[object Uint8ClampedArray]\":5121,\"[object Uint16Array]\":5123,\"[object Uint32Array]\":5125,\"[object Float32Array]\":5126,\"[object Float64Array]\":5121,\"[object ArrayBuffer]\":5121},Q={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},$={dynamic:35048,stream:35040,static:35044},tt=J.flatten,et=J.shape,rt=[];rt[5120]=1,rt[5122]=2,rt[5124]=4,rt[5121]=1,rt[5123]=2,rt[5125]=4,rt[5126]=4;var nt={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,\"line loop\":2,\"line strip\":3,\"triangle strip\":5,\"triangle fan\":6},at=new Float32Array(1),it=new Uint32Array(at.buffer),ot=[9984,9986,9985,9987],st=[0,6409,6410,6407,6408],lt={};lt[6409]=lt[6406]=lt[6402]=1,lt[34041]=lt[6410]=2,lt[6407]=lt[35904]=3,lt[6408]=lt[35906]=4;var ct=v(\"HTMLCanvasElement\"),ut=v(\"OffscreenCanvas\"),ht=v(\"CanvasRenderingContext2D\"),ft=v(\"ImageBitmap\"),pt=v(\"HTMLImageElement\"),dt=v(\"HTMLVideoElement\"),gt=Object.keys(K).concat([ct,ut,ht,ft,pt,dt]),mt=[];mt[5121]=1,mt[5126]=4,mt[36193]=2,mt[5123]=2,mt[5125]=4;var vt=[];vt[32854]=2,vt[32855]=2,vt[36194]=2,vt[34041]=4,vt[33776]=.5,vt[33777]=.5,vt[33778]=1,vt[33779]=1,vt[35986]=.5,vt[35987]=1,vt[34798]=1,vt[35840]=.5,vt[35841]=.25,vt[35842]=.5,vt[35843]=.25,vt[36196]=.5;var yt=[];yt[32854]=2,yt[32855]=2,yt[36194]=2,yt[33189]=2,yt[36168]=1,yt[34041]=4,yt[35907]=4,yt[34836]=16,yt[34842]=8,yt[34843]=6;var xt=function(t,e,r,n,a){function i(t){this.id=c++,this.refCount=1,this.renderbuffer=t,this.format=32854,this.height=this.width=0,a.profile&&(this.stats={size:0})}function o(e){var r=e.renderbuffer;t.bindRenderbuffer(36161,null),t.deleteRenderbuffer(r),e.renderbuffer=null,e.refCount=0,delete u[e.id],n.renderbufferCount--}var s={rgba4:32854,rgb565:36194,\"rgb5 a1\":32855,depth:33189,stencil:36168,\"depth stencil\":34041};e.ext_srgb&&(s.srgba=35907),e.ext_color_buffer_half_float&&(s.rgba16f=34842,s.rgb16f=34843),e.webgl_color_buffer_float&&(s.rgba32f=34836);var l=[];Object.keys(s).forEach((function(t){l[s[t]]=t}));var c=0,u={};return i.prototype.decRef=function(){0>=--this.refCount&&o(this)},a.profile&&(n.getTotalRenderbufferSize=function(){var t=0;return Object.keys(u).forEach((function(e){t+=u[e].stats.size})),t}),{create:function(e,r){function o(e,r){var n=0,i=0,u=32854;if(\"object\"==typeof e&&e?(\"shape\"in e?(n=0|(i=e.shape)[0],i=0|i[1]):(\"radius\"in e&&(n=i=0|e.radius),\"width\"in e&&(n=0|e.width),\"height\"in e&&(i=0|e.height)),\"format\"in e&&(u=s[e.format])):\"number\"==typeof e?(n=0|e,i=\"number\"==typeof r?0|r:n):e||(n=i=1),n!==c.width||i!==c.height||u!==c.format)return o.width=c.width=n,o.height=c.height=i,c.format=u,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,u,n,i),a.profile&&(c.stats.size=yt[c.format]*c.width*c.height),o.format=l[c.format],o}var c=new i(t.createRenderbuffer());return u[c.id]=c,n.renderbufferCount++,o(e,r),o.resize=function(e,r){var n=0|e,i=0|r||n;return n===c.width&&i===c.height||(o.width=c.width=n,o.height=c.height=i,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,c.format,n,i),a.profile&&(c.stats.size=yt[c.format]*c.width*c.height)),o},o._reglType=\"renderbuffer\",o._renderbuffer=c,a.profile&&(o.stats=c.stats),o.destroy=function(){c.decRef()},o},clear:function(){X(u).forEach(o)},restore:function(){X(u).forEach((function(e){e.renderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,e.renderbuffer),t.renderbufferStorage(36161,e.format,e.width,e.height)})),t.bindRenderbuffer(36161,null)}}},bt=[];bt[6408]=4,bt[6407]=3;var _t=[];_t[5121]=1,_t[5126]=4,_t[36193]=2;var wt=[\"x\",\"y\",\"z\",\"w\"],Tt=\"blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset\".split(\" \"),kt={0:0,1:1,zero:0,one:1,\"src color\":768,\"one minus src color\":769,\"src alpha\":770,\"one minus src alpha\":771,\"dst color\":774,\"one minus dst color\":775,\"dst alpha\":772,\"one minus dst alpha\":773,\"constant color\":32769,\"one minus constant color\":32770,\"constant alpha\":32771,\"one minus constant alpha\":32772,\"src alpha saturate\":776},Mt={never:512,less:513,\"<\":513,equal:514,\"=\":514,\"==\":514,\"===\":514,lequal:515,\"<=\":515,greater:516,\">\":516,notequal:517,\"!=\":517,\"!==\":517,gequal:518,\">=\":518,always:519},At={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,\"increment wrap\":34055,\"decrement wrap\":34056,invert:5386},St={cw:2304,ccw:2305},Et=new D(!1,!1,!1,(function(){}));return function(t){function e(){if(0===J.length)w&&w.update(),tt=null;else{tt=H.next(e),h();for(var t=J.length-1;0<=t;--t){var r=J[t];r&&r(P,null,0)}m.flush(),w&&w.update()}}function r(){!tt&&0<J.length&&(tt=H.next(e))}function n(){tt&&(H.cancel(e),tt=null)}function i(t){t.preventDefault(),n(),K.forEach((function(t){t()}))}function o(t){m.getError(),y.restore(),R.restore(),z.restore(),F.restore(),B.restore(),V.restore(),O.restore(),w&&w.restore(),Y.procs.refresh(),r(),Q.forEach((function(t){t()}))}function s(t){function e(t){var e={},r={};return Object.keys(t).forEach((function(n){var a=t[n];q.isDynamic(a)?r[n]=q.unbox(a,n):e[n]=a})),{dynamic:r,static:e}}var r=e(t.context||{}),n=e(t.uniforms||{}),a=e(t.attributes||{}),i=e(function(t){function e(t){if(t in r){var e=r[t];delete r[t],Object.keys(e).forEach((function(n){r[t+\".\"+n]=e[n]}))}}var r=U({},t);return delete r.uniforms,delete r.attributes,delete r.context,delete r.vao,\"stencil\"in r&&r.stencil.op&&(r.stencil.opBack=r.stencil.opFront=r.stencil.op,delete r.stencil.op),e(\"blend\"),e(\"depth\"),e(\"cull\"),e(\"stencil\"),e(\"polygonOffset\"),e(\"scissor\"),e(\"sample\"),\"vao\"in t&&(r.vao=t.vao),r}(t));t={gpuTime:0,cpuTime:0,count:0};var o=(r=Y.compile(i,a,n,r,t)).draw,s=r.batch,l=r.scope,c=[];return U((function(t,e){var r;if(\"function\"==typeof t)return l.call(this,null,t,0);if(\"function\"==typeof e)if(\"number\"==typeof t)for(r=0;r<t;++r)l.call(this,null,e,r);else{if(!Array.isArray(t))return l.call(this,t,e,0);for(r=0;r<t.length;++r)l.call(this,t[r],e,r)}else if(\"number\"==typeof t){if(0<t)return s.call(this,function(t){for(;c.length<t;)c.push(null);return c}(0|t),0|t)}else{if(!Array.isArray(t))return o.call(this,t);if(t.length)return s.call(this,t,t.length)}}),{stats:t})}function l(t,e){var r=0;Y.procs.poll();var n=e.color;n&&(m.clearColor(+n[0]||0,+n[1]||0,+n[2]||0,+n[3]||0),r|=16384),\"depth\"in e&&(m.clearDepth(+e.depth),r|=256),\"stencil\"in e&&(m.clearStencil(0|e.stencil),r|=1024),m.clear(r)}function c(t){return J.push(t),r(),{cancel:function(){var e=j(J,t);J[e]=function t(){var e=j(J,t);J[e]=J[J.length-1],--J.length,0>=J.length&&n()}}}}function u(){var t=Z.viewport,e=Z.scissor_box;t[0]=t[1]=e[0]=e[1]=0,P.viewportWidth=P.framebufferWidth=P.drawingBufferWidth=t[2]=e[2]=m.drawingBufferWidth,P.viewportHeight=P.framebufferHeight=P.drawingBufferHeight=t[3]=e[3]=m.drawingBufferHeight}function h(){P.tick+=1,P.time=g(),u(),Y.procs.poll()}function f(){u(),Y.procs.refresh(),w&&w.update()}function g(){return(G()-T)/1e3}if(!(t=a(t)))return null;var m=t.gl,v=m.getContextAttributes();m.isContextLost();var y=function(t,e){function r(e){var r;e=e.toLowerCase();try{r=n[e]=t.getExtension(e)}catch(t){}return!!r}for(var n={},a=0;a<e.extensions.length;++a){var i=e.extensions[a];if(!r(i))return e.onDestroy(),e.onDone('\"'+i+'\" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return e.optionalExtensions.forEach(r),{extensions:n,restore:function(){Object.keys(n).forEach((function(t){if(n[t]&&!r(t))throw Error(\"(regl): error restoring extension \"+t)}))}}}(m,t);if(!y)return null;var x=function(){var t={\"\":0},e=[\"\"];return{id:function(r){var n=t[r];return n||(n=t[r]=e.length,e.push(r),n)},str:function(t){return e[t]}}}(),b={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},_=y.extensions,w=function(t,e){function r(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function n(t,e,n){var a=o.pop()||new r;a.startQueryIndex=t,a.endQueryIndex=e,a.sum=0,a.stats=n,s.push(a)}if(!e.ext_disjoint_timer_query)return null;var a=[],i=[],o=[],s=[],l=[],c=[];return{beginQuery:function(t){var r=a.pop()||e.ext_disjoint_timer_query.createQueryEXT();e.ext_disjoint_timer_query.beginQueryEXT(35007,r),i.push(r),n(i.length-1,i.length,t)},endQuery:function(){e.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:n,update:function(){var t,r;if(0!==(t=i.length)){c.length=Math.max(c.length,t+1),l.length=Math.max(l.length,t+1),l[0]=0;var n=c[0]=0;for(r=t=0;r<i.length;++r){var u=i[r];e.ext_disjoint_timer_query.getQueryObjectEXT(u,34919)?(n+=e.ext_disjoint_timer_query.getQueryObjectEXT(u,34918),a.push(u)):i[t++]=u,l[r+1]=n,c[r+1]=t}for(i.length=t,r=t=0;r<s.length;++r){var h=(n=s[r]).startQueryIndex;u=n.endQueryIndex;n.sum+=l[u]-l[h],h=c[h],(u=c[u])===h?(n.stats.gpuTime+=n.sum/1e6,o.push(n)):(n.startQueryIndex=h,n.endQueryIndex=u,s[t++]=n)}s.length=t}},getNumPendingQueries:function(){return i.length},clear:function(){a.push.apply(a,i);for(var t=0;t<a.length;t++)e.ext_disjoint_timer_query.deleteQueryEXT(a[t]);i.length=0,a.length=0},restore:function(){i.length=0,a.length=0}}}(0,_),T=G(),A=m.drawingBufferWidth,L=m.drawingBufferHeight,P={tick:0,time:0,viewportWidth:A,viewportHeight:L,framebufferWidth:A,framebufferHeight:L,drawingBufferWidth:A,drawingBufferHeight:L,pixelRatio:t.pixelRatio},I=W(m,_),z=p(m,b,t,(function(t){return O.destroyBuffer(t)})),O=S(m,_,I,b,z),D=d(m,_,z,b),R=E(m,x,b,t),F=k(m,_,I,(function(){Y.procs.poll()}),P,b,t),B=xt(m,_,0,b,t),V=M(m,_,I,F,B,b),Y=N(m,x,_,I,z,D,0,V,{},O,R,{elements:null,primitive:4,count:-1,offset:0,instances:-1},P,w,t),Z=(x=C(m,V,Y.procs.poll,P),Y.next),X=m.canvas,J=[],K=[],Q=[],$=[t.onDestroy],tt=null;X&&(X.addEventListener(\"webglcontextlost\",i,!1),X.addEventListener(\"webglcontextrestored\",o,!1));var et=V.setFBO=s({framebuffer:q.define.call(null,1,\"framebuffer\")});return f(),v=U(s,{clear:function(t){if(\"framebuffer\"in t)if(t.framebuffer&&\"framebufferCube\"===t.framebuffer_reglType)for(var e=0;6>e;++e)et(U({framebuffer:t.framebuffer.faces[e]},t),l);else et(t,l);else l(0,t)},prop:q.define.bind(null,1),context:q.define.bind(null,2),this:q.define.bind(null,3),draw:s({}),buffer:function(t){return z.create(t,34962,!1,!1)},elements:function(t){return D.create(t,!1)},texture:F.create2D,cube:F.createCube,renderbuffer:B.create,framebuffer:V.create,framebufferCube:V.createCube,vao:O.createVAO,attributes:v,frame:c,on:function(t,e){var r;switch(t){case\"frame\":return c(e);case\"lost\":r=K;break;case\"restore\":r=Q;break;case\"destroy\":r=$}return r.push(e),{cancel:function(){for(var t=0;t<r.length;++t)if(r[t]===e){r[t]=r[r.length-1],r.pop();break}}}},limits:I,hasExtension:function(t){return 0<=I.extensions.indexOf(t.toLowerCase())},read:x,destroy:function(){J.length=0,n(),X&&(X.removeEventListener(\"webglcontextlost\",i),X.removeEventListener(\"webglcontextrestored\",o)),R.clear(),V.clear(),B.clear(),F.clear(),D.clear(),z.clear(),O.clear(),w&&w.clear(),$.forEach((function(t){t()}))},_gl:m,_refresh:f,poll:function(){h(),w&&w.update()},now:g,stats:b}),t.onDone(null,v),v}}))},{}],513:[function(t,e,r){\n",
       "/*!\n",
       " * repeat-string <https://github.com/jonschlinkert/repeat-string>\n",
       " *\n",
       " * Copyright (c) 2014-2015, Jon Schlinkert.\n",
       " * Licensed under the MIT License.\n",
       " */\n",
       "\"use strict\";var n,a=\"\";e.exports=function(t,e){if(\"string\"!=typeof t)throw new TypeError(\"expected a string\");if(1===e)return t;if(2===e)return t+t;var r=t.length*e;if(n!==t||\"undefined\"==typeof n)n=t,a=\"\";else if(a.length>=r)return a.substr(0,r);for(;r>a.length&&e>1;)1&e&&(a+=t),e>>=1,t+=t;return a=(a+=t).substr(0,r)}},{}],514:[function(t,e,r){(function(t){e.exports=t.performance&&t.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{}],515:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=t.length,r=t[t.length-1],n=e,a=e-2;a>=0;--a){var i=r,o=t[a];(l=o-((r=i+o)-i))&&(t[--n]=r,r=l)}var s=0;for(a=n;a<e;++a){var l;i=t[a];(l=(o=r)-((r=i+o)-i))&&(t[s++]=l)}return t[s++]=r,t.length=s,t}},{}],516:[function(t,e,r){\"use strict\";var n=t(\"two-product\"),a=t(\"robust-sum\"),i=t(\"robust-scale\"),o=t(\"robust-compress\");function s(t,e){for(var r=new Array(t.length-1),n=1;n<t.length;++n)for(var a=r[n-1]=new Array(t.length-1),i=0,o=0;i<t.length;++i)i!==e&&(a[o++]=t[n][i]);return r}function l(t){for(var e=new Array(t),r=0;r<t;++r){e[r]=new Array(t);for(var n=0;n<t;++n)e[r][n]=[\"m[\",r,\"][\",n,\"]\"].join(\"\")}return e}function c(t){if(2===t.length)return[\"sum(prod(\",t[0][0],\",\",t[1][1],\"),prod(-\",t[0][1],\",\",t[1][0],\"))\"].join(\"\");for(var e=[],r=0;r<t.length;++r)e.push([\"scale(\",c(s(t,r)),\",\",(n=r,1&n?\"-\":\"\"),t[0][r],\")\"].join(\"\"));return function t(e){if(1===e.length)return e[0];if(2===e.length)return[\"sum(\",e[0],\",\",e[1],\")\"].join(\"\");var r=e.length>>1;return[\"sum(\",t(e.slice(0,r)),\",\",t(e.slice(r)),\")\"].join(\"\")}(e);var n}function u(t){return new Function(\"sum\",\"scale\",\"prod\",\"compress\",[\"function robustDeterminant\",t,\"(m){return compress(\",c(l(t)),\")};return robustDeterminant\",t].join(\"\"))(a,i,n,o)}var h=[function(){return[0]},function(t){return[t[0][0]]}];!function(){for(;h.length<6;)h.push(u(h.length));for(var t=[],r=[\"function robustDeterminant(m){switch(m.length){\"],n=0;n<6;++n)t.push(\"det\"+n),r.push(\"case \",n,\":return det\",n,\"(m);\");r.push(\"}var det=CACHE[m.length];if(!det)det=CACHE[m.length]=gen(m.length);return det(m);}return robustDeterminant\"),t.push(\"CACHE\",\"gen\",r.join(\"\"));var a=Function.apply(void 0,t);for(e.exports=a.apply(void 0,h.concat([h,u])),n=0;n<h.length;++n)e.exports[n]=h[n]}()},{\"robust-compress\":515,\"robust-scale\":522,\"robust-sum\":525,\"two-product\":554}],517:[function(t,e,r){\"use strict\";var n=t(\"two-product\"),a=t(\"robust-sum\");e.exports=function(t,e){for(var r=n(t[0],e[0]),i=1;i<t.length;++i)r=a(r,n(t[i],e[i]));return r}},{\"robust-sum\":525,\"two-product\":554}],518:[function(t,e,r){\"use strict\";var n=t(\"two-product\"),a=t(\"robust-sum\"),i=t(\"robust-subtract\"),o=t(\"robust-scale\");function s(t,e){for(var r=new Array(t.length-1),n=1;n<t.length;++n)for(var a=r[n-1]=new Array(t.length-1),i=0,o=0;i<t.length;++i)i!==e&&(a[o++]=t[n][i]);return r}function l(t){if(1===t.length)return t[0];if(2===t.length)return[\"sum(\",t[0],\",\",t[1],\")\"].join(\"\");var e=t.length>>1;return[\"sum(\",l(t.slice(0,e)),\",\",l(t.slice(e)),\")\"].join(\"\")}function c(t,e){if(\"m\"===t.charAt(0)){if(\"w\"===e.charAt(0)){var r=t.split(\"[\");return[\"w\",e.substr(1),\"m\",r[0].substr(1)].join(\"\")}return[\"prod(\",t,\",\",e,\")\"].join(\"\")}return c(e,t)}function u(t){if(2===t.length)return[[\"diff(\",c(t[0][0],t[1][1]),\",\",c(t[1][0],t[0][1]),\")\"].join(\"\")];for(var e=[],r=0;r<t.length;++r)e.push([\"scale(\",l(u(s(t,r))),\",\",(n=r,!0&n?\"-\":\"\"),t[0][r],\")\"].join(\"\"));return e;var n}function h(t,e){for(var r=[],n=0;n<e-2;++n)r.push([\"prod(m\",t,\"[\",n,\"],m\",t,\"[\",n,\"])\"].join(\"\"));return l(r)}function f(t){for(var e=[],r=[],c=function(t){for(var e=new Array(t),r=0;r<t;++r){e[r]=new Array(t);for(var n=0;n<t;++n)e[r][n]=[\"m\",n,\"[\",t-r-2,\"]\"].join(\"\")}return e}(t),f=0;f<t;++f)c[0][f]=\"1\",c[t-1][f]=\"w\"+f;for(f=0;f<t;++f)0==(1&f)?e.push.apply(e,u(s(c,f))):r.push.apply(r,u(s(c,f)));var p=l(e),d=l(r),g=\"exactInSphere\"+t,m=[];for(f=0;f<t;++f)m.push(\"m\"+f);var v=[\"function \",g,\"(\",m.join(),\"){\"];for(f=0;f<t;++f){v.push(\"var w\",f,\"=\",h(f,t),\";\");for(var y=0;y<t;++y)y!==f&&v.push(\"var w\",f,\"m\",y,\"=scale(w\",f,\",m\",y,\"[0]);\")}return v.push(\"var p=\",p,\",n=\",d,\",d=diff(p,n);return d[d.length-1];}return \",g),new Function(\"sum\",\"diff\",\"prod\",\"scale\",v.join(\"\"))(a,i,n,o)}var p=[function(){return 0},function(){return 0},function(){return 0}];function d(t){var e=p[t.length];return e||(e=p[t.length]=f(t.length)),e.apply(void 0,t)}!function(){for(;p.length<=6;)p.push(f(p.length));for(var t=[],r=[\"slow\"],n=0;n<=6;++n)t.push(\"a\"+n),r.push(\"o\"+n);var a=[\"function testInSphere(\",t.join(),\"){switch(arguments.length){case 0:case 1:return 0;\"];for(n=2;n<=6;++n)a.push(\"case \",n,\":return o\",n,\"(\",t.slice(0,n).join(),\");\");a.push(\"}var s=new Array(arguments.length);for(var i=0;i<arguments.length;++i){s[i]=arguments[i]};return slow(s);}return testInSphere\"),r.push(a.join(\"\"));var i=Function.apply(void 0,r);for(e.exports=i.apply(void 0,[d].concat(p)),n=0;n<=6;++n)e.exports[n]=p[n]}()},{\"robust-scale\":522,\"robust-subtract\":524,\"robust-sum\":525,\"two-product\":554}],519:[function(t,e,r){\"use strict\";var n=t(\"robust-determinant\");function a(t){for(var e=\"robustLinearSolve\"+t+\"d\",r=[\"function \",e,\"(A,b){return [\"],a=0;a<t;++a){r.push(\"det([\");for(var i=0;i<t;++i){i>0&&r.push(\",\"),r.push(\"[\");for(var o=0;o<t;++o)o>0&&r.push(\",\"),o===a?r.push(\"+b[\",i,\"]\"):r.push(\"+A[\",i,\"][\",o,\"]\");r.push(\"]\")}r.push(\"]),\")}r.push(\"det(A)]}return \",e);var s=new Function(\"det\",r.join(\"\"));return s(t<6?n[t]:n)}var i=[function(){return[0]},function(t,e){return[[e[0]],[t[0][0]]]}];!function(){for(;i.length<6;)i.push(a(i.length));for(var t=[],r=[\"function dispatchLinearSolve(A,b){switch(A.length){\"],n=0;n<6;++n)t.push(\"s\"+n),r.push(\"case \",n,\":return s\",n,\"(A,b);\");r.push(\"}var s=CACHE[A.length];if(!s)s=CACHE[A.length]=g(A.length);return s(A,b)}return dispatchLinearSolve\"),t.push(\"CACHE\",\"g\",r.join(\"\"));var o=Function.apply(void 0,t);for(e.exports=o.apply(void 0,i.concat([i,a])),n=0;n<6;++n)e.exports[n]=i[n]}()},{\"robust-determinant\":516}],520:[function(t,e,r){\"use strict\";var n=t(\"two-product\"),a=t(\"robust-sum\"),i=t(\"robust-scale\"),o=t(\"robust-subtract\");function s(t,e){for(var r=new Array(t.length-1),n=1;n<t.length;++n)for(var a=r[n-1]=new Array(t.length-1),i=0,o=0;i<t.length;++i)i!==e&&(a[o++]=t[n][i]);return r}function l(t){if(1===t.length)return t[0];if(2===t.length)return[\"sum(\",t[0],\",\",t[1],\")\"].join(\"\");var e=t.length>>1;return[\"sum(\",l(t.slice(0,e)),\",\",l(t.slice(e)),\")\"].join(\"\")}function c(t){if(2===t.length)return[[\"sum(prod(\",t[0][0],\",\",t[1][1],\"),prod(-\",t[0][1],\",\",t[1][0],\"))\"].join(\"\")];for(var e=[],r=0;r<t.length;++r)e.push([\"scale(\",l(c(s(t,r))),\",\",(n=r,1&n?\"-\":\"\"),t[0][r],\")\"].join(\"\"));return e;var n}function u(t){for(var e=[],r=[],u=function(t){for(var e=new Array(t),r=0;r<t;++r){e[r]=new Array(t);for(var n=0;n<t;++n)e[r][n]=[\"m\",n,\"[\",t-r-1,\"]\"].join(\"\")}return e}(t),h=[],f=0;f<t;++f)0==(1&f)?e.push.apply(e,c(s(u,f))):r.push.apply(r,c(s(u,f))),h.push(\"m\"+f);var p=l(e),d=l(r),g=\"orientation\"+t+\"Exact\",m=[\"function \",g,\"(\",h.join(),\"){var p=\",p,\",n=\",d,\",d=sub(p,n);return d[d.length-1];};return \",g].join(\"\");return new Function(\"sum\",\"prod\",\"scale\",\"sub\",m)(a,n,i,o)}var h=u(3),f=u(4),p=[function(){return 0},function(){return 0},function(t,e){return e[0]-t[0]},function(t,e,r){var n,a=(t[1]-r[1])*(e[0]-r[0]),i=(t[0]-r[0])*(e[1]-r[1]),o=a-i;if(a>0){if(i<=0)return o;n=a+i}else{if(!(a<0))return o;if(i>=0)return o;n=-(a+i)}var s=33306690738754716e-32*n;return o>=s||o<=-s?o:h(t,e,r)},function(t,e,r,n){var a=t[0]-n[0],i=e[0]-n[0],o=r[0]-n[0],s=t[1]-n[1],l=e[1]-n[1],c=r[1]-n[1],u=t[2]-n[2],h=e[2]-n[2],p=r[2]-n[2],d=i*c,g=o*l,m=o*s,v=a*c,y=a*l,x=i*s,b=u*(d-g)+h*(m-v)+p*(y-x),_=7771561172376103e-31*((Math.abs(d)+Math.abs(g))*Math.abs(u)+(Math.abs(m)+Math.abs(v))*Math.abs(h)+(Math.abs(y)+Math.abs(x))*Math.abs(p));return b>_||-b>_?b:f(t,e,r,n)}];function d(t){var e=p[t.length];return e||(e=p[t.length]=u(t.length)),e.apply(void 0,t)}!function(){for(;p.length<=5;)p.push(u(p.length));for(var t=[],r=[\"slow\"],n=0;n<=5;++n)t.push(\"a\"+n),r.push(\"o\"+n);var a=[\"function getOrientation(\",t.join(),\"){switch(arguments.length){case 0:case 1:return 0;\"];for(n=2;n<=5;++n)a.push(\"case \",n,\":return o\",n,\"(\",t.slice(0,n).join(),\");\");a.push(\"}var s=new Array(arguments.length);for(var i=0;i<arguments.length;++i){s[i]=arguments[i]};return slow(s);}return getOrientation\"),r.push(a.join(\"\"));var i=Function.apply(void 0,r);for(e.exports=i.apply(void 0,[d].concat(p)),n=0;n<=5;++n)e.exports[n]=p[n]}()},{\"robust-scale\":522,\"robust-subtract\":524,\"robust-sum\":525,\"two-product\":554}],521:[function(t,e,r){\"use strict\";var n=t(\"robust-sum\"),a=t(\"robust-scale\");e.exports=function(t,e){if(1===t.length)return a(e,t[0]);if(1===e.length)return a(t,e[0]);if(0===t.length||0===e.length)return[0];var r=[0];if(t.length<e.length)for(var i=0;i<t.length;++i)r=n(r,a(e,t[i]));else for(i=0;i<e.length;++i)r=n(r,a(t,e[i]));return r}},{\"robust-scale\":522,\"robust-sum\":525}],522:[function(t,e,r){\"use strict\";var n=t(\"two-product\"),a=t(\"two-sum\");e.exports=function(t,e){var r=t.length;if(1===r){var i=n(t[0],e);return i[0]?i:[i[1]]}var o=new Array(2*r),s=[.1,.1],l=[.1,.1],c=0;n(t[0],e,s),s[0]&&(o[c++]=s[0]);for(var u=1;u<r;++u){n(t[u],e,l);var h=s[1];a(h,l[0],s),s[0]&&(o[c++]=s[0]);var f=l[1],p=s[1],d=f+p,g=p-(d-f);s[1]=d,g&&(o[c++]=g)}s[1]&&(o[c++]=s[1]);0===c&&(o[c++]=0);return o.length=c,o}},{\"two-product\":554,\"two-sum\":555}],523:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,a){var i=n(t,r,a),o=n(e,r,a);if(i>0&&o>0||i<0&&o<0)return!1;var s=n(r,t,e),l=n(a,t,e);if(s>0&&l>0||s<0&&l<0)return!1;if(0===i&&0===o&&0===s&&0===l)return function(t,e,r,n){for(var a=0;a<2;++a){var i=t[a],o=e[a],s=Math.min(i,o),l=Math.max(i,o),c=r[a],u=n[a],h=Math.min(c,u);if(Math.max(c,u)<s||l<h)return!1}return!0}(t,e,r,a);return!0};var n=t(\"robust-orientation\")[3]},{\"robust-orientation\":520}],524:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=0|t.length,n=0|e.length;if(1===r&&1===n)return function(t,e){var r=t+e,n=r-t,a=t-(r-n)+(e-n);if(a)return[a,r];return[r]}(t[0],-e[0]);var a,i,o=new Array(r+n),s=0,l=0,c=0,u=Math.abs,h=t[l],f=u(h),p=-e[c],d=u(p);f<d?(i=h,(l+=1)<r&&(h=t[l],f=u(h))):(i=p,(c+=1)<n&&(p=-e[c],d=u(p)));l<r&&f<d||c>=n?(a=h,(l+=1)<r&&(h=t[l],f=u(h))):(a=p,(c+=1)<n&&(p=-e[c],d=u(p)));var g,m,v=a+i,y=v-a,x=i-y,b=x,_=v;for(;l<r&&c<n;)f<d?(a=h,(l+=1)<r&&(h=t[l],f=u(h))):(a=p,(c+=1)<n&&(p=-e[c],d=u(p))),(x=(i=b)-(y=(v=a+i)-a))&&(o[s++]=x),b=_-((g=_+v)-(m=g-_))+(v-m),_=g;for(;l<r;)(x=(i=b)-(y=(v=(a=h)+i)-a))&&(o[s++]=x),b=_-((g=_+v)-(m=g-_))+(v-m),_=g,(l+=1)<r&&(h=t[l]);for(;c<n;)(x=(i=b)-(y=(v=(a=p)+i)-a))&&(o[s++]=x),b=_-((g=_+v)-(m=g-_))+(v-m),_=g,(c+=1)<n&&(p=-e[c]);b&&(o[s++]=b);_&&(o[s++]=_);s||(o[s++]=0);return o.length=s,o}},{}],525:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=0|t.length,n=0|e.length;if(1===r&&1===n)return function(t,e){var r=t+e,n=r-t,a=t-(r-n)+(e-n);if(a)return[a,r];return[r]}(t[0],e[0]);var a,i,o=new Array(r+n),s=0,l=0,c=0,u=Math.abs,h=t[l],f=u(h),p=e[c],d=u(p);f<d?(i=h,(l+=1)<r&&(h=t[l],f=u(h))):(i=p,(c+=1)<n&&(p=e[c],d=u(p)));l<r&&f<d||c>=n?(a=h,(l+=1)<r&&(h=t[l],f=u(h))):(a=p,(c+=1)<n&&(p=e[c],d=u(p)));var g,m,v=a+i,y=v-a,x=i-y,b=x,_=v;for(;l<r&&c<n;)f<d?(a=h,(l+=1)<r&&(h=t[l],f=u(h))):(a=p,(c+=1)<n&&(p=e[c],d=u(p))),(x=(i=b)-(y=(v=a+i)-a))&&(o[s++]=x),b=_-((g=_+v)-(m=g-_))+(v-m),_=g;for(;l<r;)(x=(i=b)-(y=(v=(a=h)+i)-a))&&(o[s++]=x),b=_-((g=_+v)-(m=g-_))+(v-m),_=g,(l+=1)<r&&(h=t[l]);for(;c<n;)(x=(i=b)-(y=(v=(a=p)+i)-a))&&(o[s++]=x),b=_-((g=_+v)-(m=g-_))+(v-m),_=g,(c+=1)<n&&(p=e[c]);b&&(o[s++]=b);_&&(o[s++]=_);s||(o[s++]=0);return o.length=s,o}},{}],526:[function(t,e,r){\"use strict\";e.exports=function(t){return t<0?-1:t>0?1:0}},{}],527:[function(t,e,r){\"use strict\";e.exports=function(t){return a(n(t))};var n=t(\"boundary-cells\"),a=t(\"reduce-simplicial-complex\")},{\"boundary-cells\":100,\"reduce-simplicial-complex\":507}],528:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,s){r=r||0,\"undefined\"==typeof s&&(s=function(t){for(var e=t.length,r=0,n=0;n<e;++n)r=0|Math.max(r,t[n].length);return r-1}(t));if(0===t.length||s<1)return{cells:[],vertexIds:[],vertexWeights:[]};var l=function(t,e){for(var r=t.length,n=a.mallocUint8(r),i=0;i<r;++i)n[i]=t[i]<e|0;return n}(e,+r),c=function(t,e){for(var r=t.length,o=e*(e+1)/2*r|0,s=a.mallocUint32(2*o),l=0,c=0;c<r;++c)for(var u=t[c],h=(e=u.length,0);h<e;++h)for(var f=0;f<h;++f){var p=u[f],d=u[h];s[l++]=0|Math.min(p,d),s[l++]=0|Math.max(p,d)}i(n(s,[l/2|0,2]));var g=2;for(c=2;c<l;c+=2)s[c-2]===s[c]&&s[c-1]===s[c+1]||(s[g++]=s[c],s[g++]=s[c+1]);return n(s,[g/2|0,2])}(t,s),u=function(t,e,r,i){for(var o=t.data,s=t.shape[0],l=a.mallocDouble(s),c=0,u=0;u<s;++u){var h=o[2*u],f=o[2*u+1];if(r[h]!==r[f]){var p=e[h],d=e[f];o[2*c]=h,o[2*c+1]=f,l[c++]=(d-i)/(d-p)}}return t.shape[0]=c,n(l,[c])}(c,e,l,+r),h=function(t,e){var r=a.mallocInt32(2*e),n=t.shape[0],i=t.data;r[0]=0;for(var o=0,s=0;s<n;++s){var l=i[2*s];if(l!==o){for(r[2*o+1]=s;++o<l;)r[2*o]=s,r[2*o+1]=s;r[2*o]=s}}r[2*o+1]=n;for(;++o<e;)r[2*o]=r[2*o+1]=n;return r}(c,0|e.length),f=o(s)(t,c.data,h,l),p=function(t){for(var e=0|t.shape[0],r=t.data,n=new Array(e),a=0;a<e;++a)n[a]=[r[2*a],r[2*a+1]];return n}(c),d=[].slice.call(u.data,0,u.shape[0]);return a.free(l),a.free(c.data),a.free(u.data),a.free(h),{cells:f,vertexIds:p,vertexWeights:d}};var n=t(\"ndarray\"),a=t(\"typedarray-pool\"),i=t(\"ndarray-sort\"),o=t(\"./lib/codegen\")},{\"./lib/codegen\":529,ndarray:469,\"ndarray-sort\":468,\"typedarray-pool\":567}],529:[function(t,e,r){\"use strict\";e.exports=function(t){var e=i[t];e||(e=i[t]=function(t){var e=0,r=new Array(t+1);r[0]=[[]];for(var i=1;i<=t;++i)for(var o=r[i]=a(i),s=0;s<o.length;++s)e=Math.max(e,o[i].length);var l=[\"function B(C,E,i,j){\",\"var a=Math.min(i,j)|0,b=Math.max(i,j)|0,l=C[2*a],h=C[2*a+1];\",\"while(l<h){\",\"var m=(l+h)>>1,v=E[2*m+1];\",\"if(v===b){return m}\",\"if(b<v){h=m}else{l=m+1}\",\"}\",\"return l;\",\"};\",\"function getContour\",t,\"d(F,E,C,S){\",\"var n=F.length,R=[];\",\"for(var i=0;i<n;++i){var c=F[i],l=c.length;\"];function c(t){if(!(t.length<=0)){l.push(\"R.push(\");for(var e=0;e<t.length;++e){var r=t[e];e>0&&l.push(\",\"),l.push(\"[\");for(var n=0;n<r.length;++n){var a=r[n];n>0&&l.push(\",\"),l.push(\"B(C,E,c[\",a[0],\"],c[\",a[1],\"])\")}l.push(\"]\")}l.push(\");\")}}for(i=t+1;i>1;--i){i<t+1&&l.push(\"else \"),l.push(\"if(l===\",i,\"){\");var u=[];for(s=0;s<i;++s)u.push(\"(S[c[\"+s+\"]]<<\"+s+\")\");l.push(\"var M=\",u.join(\"+\"),\";if(M===0||M===\",(1<<i)-1,\"){continue}switch(M){\");for(o=r[i-1],s=0;s<o.length;++s)l.push(\"case \",s,\":\"),c(o[s]),l.push(\"break;\");l.push(\"}}\")}return l.push(\"}return R;};return getContour\",t,\"d\"),new Function(\"pool\",l.join(\"\"))(n)}(t));return e};var n=t(\"typedarray-pool\"),a=t(\"marching-simplex-table\"),i={}},{\"marching-simplex-table\":448,\"typedarray-pool\":567}],530:[function(t,e,r){\"use strict\";var n=t(\"bit-twiddle\"),a=t(\"union-find\");function i(t,e){var r=t.length,n=t.length-e.length,a=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:return(s=t[0]+t[1]-e[0]-e[1])||a(t[0],t[1])-a(e[0],e[1]);case 3:var i=t[0]+t[1],o=e[0]+e[1];if(s=i+t[2]-(o+e[2]))return s;var s,l=a(t[0],t[1]),c=a(e[0],e[1]);return(s=a(l,t[2])-a(c,e[2]))||a(l+t[2],i)-a(c+e[2],o);default:var u=t.slice(0);u.sort();var h=e.slice(0);h.sort();for(var f=0;f<r;++f)if(n=u[f]-h[f])return n;return 0}}function o(t,e){return i(t[0],e[0])}function s(t,e){if(e){for(var r=t.length,n=new Array(r),a=0;a<r;++a)n[a]=[t[a],e[a]];n.sort(o);for(a=0;a<r;++a)t[a]=n[a][0],e[a]=n[a][1];return t}return t.sort(i),t}function l(t){if(0===t.length)return[];for(var e=1,r=t.length,n=1;n<r;++n){var a=t[n];if(i(a,t[n-1])){if(n===e){e++;continue}t[e++]=a}}return t.length=e,t}function c(t,e){for(var r=0,n=t.length-1,a=-1;r<=n;){var o=r+n>>1,s=i(t[o],e);s<=0?(0===s&&(a=o),r=o+1):s>0&&(n=o-1)}return a}function u(t,e){for(var r=new Array(t.length),a=0,o=r.length;a<o;++a)r[a]=[];for(var s=[],l=(a=0,e.length);a<l;++a)for(var u=e[a],h=u.length,f=1,p=1<<h;f<p;++f){s.length=n.popCount(f);for(var d=0,g=0;g<h;++g)f&1<<g&&(s[d++]=u[g]);var m=c(t,s);if(!(m<0))for(;r[m++].push(a),!(m>=t.length||0!==i(t[m],s)););}return r}function h(t,e){if(e<0)return[];for(var r=[],a=(1<<e+1)-1,i=0;i<t.length;++i)for(var o=t[i],l=a;l<1<<o.length;l=n.nextCombination(l)){for(var c=new Array(e+1),u=0,h=0;h<o.length;++h)l&1<<h&&(c[u++]=o[h]);r.push(c)}return s(r)}r.dimension=function(t){for(var e=0,r=Math.max,n=0,a=t.length;n<a;++n)e=r(e,t[n].length);return e-1},r.countVertices=function(t){for(var e=-1,r=Math.max,n=0,a=t.length;n<a;++n)for(var i=t[n],o=0,s=i.length;o<s;++o)e=r(e,i[o]);return e+1},r.cloneCells=function(t){for(var e=new Array(t.length),r=0,n=t.length;r<n;++r)e[r]=t[r].slice(0);return e},r.compareCells=i,r.normalize=s,r.unique=l,r.findCell=c,r.incidence=u,r.dual=function(t,e){if(!e)return u(l(h(t,0)),t);for(var r=new Array(e),n=0;n<e;++n)r[n]=[];n=0;for(var a=t.length;n<a;++n)for(var i=t[n],o=0,s=i.length;o<s;++o)r[i[o]].push(n);return r},r.explode=function(t){for(var e=[],r=0,n=t.length;r<n;++r)for(var a=t[r],i=0|a.length,o=1,l=1<<i;o<l;++o){for(var c=[],u=0;u<i;++u)o>>>u&1&&c.push(a[u]);e.push(c)}return s(e)},r.skeleton=h,r.boundary=function(t){for(var e=[],r=0,n=t.length;r<n;++r)for(var a=t[r],i=0,o=a.length;i<o;++i){for(var l=new Array(a.length-1),c=0,u=0;c<o;++c)c!==i&&(l[u++]=a[c]);e.push(l)}return s(e)},r.connectedComponents=function(t,e){return e?function(t,e){for(var r=new a(e),n=0;n<t.length;++n)for(var i=t[n],o=0;o<i.length;++o)for(var s=o+1;s<i.length;++s)r.link(i[o],i[s]);var l=[],c=r.ranks;for(n=0;n<c.length;++n)c[n]=-1;for(n=0;n<t.length;++n){var u=r.find(t[n][0]);c[u]<0?(c[u]=l.length,l.push([t[n].slice(0)])):l[c[u]].push(t[n].slice(0))}return l}(t,e):function(t){for(var e=l(s(h(t,0))),r=new a(e.length),n=0;n<t.length;++n)for(var i=t[n],o=0;o<i.length;++o)for(var u=c(e,[i[o]]),f=o+1;f<i.length;++f)r.link(u,c(e,[i[f]]));var p=[],d=r.ranks;for(n=0;n<d.length;++n)d[n]=-1;for(n=0;n<t.length;++n){var g=r.find(c(e,[t[n][0]]));d[g]<0?(d[g]=p.length,p.push([t[n].slice(0)])):p[d[g]].push(t[n].slice(0))}return p}(t)}},{\"bit-twiddle\":97,\"union-find\":568}],531:[function(t,e,r){arguments[4][97][0].apply(r,arguments)},{dup:97}],532:[function(t,e,r){arguments[4][530][0].apply(r,arguments)},{\"bit-twiddle\":531,dup:530,\"union-find\":533}],533:[function(t,e,r){\"use strict\";function n(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e<t;++e)this.roots[e]=e,this.ranks[e]=0}e.exports=n,n.prototype.length=function(){return this.roots.length},n.prototype.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},n.prototype.find=function(t){for(var e=this.roots;e[t]!==t;){var r=e[t];e[t]=e[r],t=r}return t},n.prototype.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var a=this.ranks,i=this.roots,o=a[r],s=a[n];o<s?i[r]=n:s<o?i[n]=r:(i[n]=r,++a[r])}}},{}],534:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){for(var i=e.length,o=t.length,s=new Array(i),l=new Array(i),c=new Array(i),u=new Array(i),h=0;h<i;++h)s[h]=l[h]=-1,c[h]=1/0,u[h]=!1;for(h=0;h<o;++h){var f=t[h];if(2!==f.length)throw new Error(\"Input must be a graph\");var p=f[1],d=f[0];-1!==l[d]?l[d]=-2:l[d]=p,-1!==s[p]?s[p]=-2:s[p]=d}function g(t){if(u[t])return 1/0;var r,a,i,o,c,h=s[t],f=l[t];return h<0||f<0?1/0:(r=e[t],a=e[h],i=e[f],o=Math.abs(n(r,a,i)),c=Math.sqrt(Math.pow(a[0]-i[0],2)+Math.pow(a[1]-i[1],2)),o/c)}function m(t,e){var r=k[t],n=k[e];k[t]=n,k[e]=r,M[r]=e,M[n]=t}function v(t){return c[k[t]]}function y(t){return 1&t?t-1>>1:(t>>1)-1}function x(t){for(var e=v(t);;){var r=e,n=2*t+1,a=2*(t+1),i=t;if(n<A){var o=v(n);o<r&&(i=n,r=o)}if(a<A)v(a)<r&&(i=a);if(i===t)return t;m(t,i),t=i}}function b(t){for(var e=v(t);t>0;){var r=y(t);if(r>=0)if(e<v(r)){m(t,r),t=r;continue}return t}}function _(){if(A>0){var t=k[0];return m(0,A-1),A-=1,x(0),t}return-1}function w(t,e){var r=k[t];return c[r]===e?t:(c[r]=-1/0,b(t),_(),c[r]=e,b((A+=1)-1))}function T(t){if(!u[t]){u[t]=!0;var e=s[t],r=l[t];s[r]>=0&&(s[r]=e),l[e]>=0&&(l[e]=r),M[e]>=0&&w(M[e],g(e)),M[r]>=0&&w(M[r],g(r))}}var k=[],M=new Array(i);for(h=0;h<i;++h){(c[h]=g(h))<1/0?(M[h]=k.length,k.push(h)):M[h]=-1}var A=k.length;for(h=A>>1;h>=0;--h)x(h);for(;;){var S=_();if(S<0||c[S]>r)break;T(S)}var E=[];for(h=0;h<i;++h)u[h]||(M[h]=E.length,E.push(e[h].slice()));E.length;function C(t,e){if(t[e]<0)return e;var r=e,n=e;do{var a=t[n];if(!u[n]||a<0||a===n)break;if(a=t[n=a],!u[n]||a<0||a===n)break;n=a,r=t[r]}while(r!==n);for(var i=e;i!==n;i=t[i])t[i]=n;return n}var L=[];return t.forEach((function(t){var e=C(s,t[0]),r=C(l,t[1]);if(e>=0&&r>=0&&e!==r){var n=M[e],a=M[r];n!==a&&L.push([n,a])}})),a.unique(a.normalize(L)),{positions:E,edges:L}};var n=t(\"robust-orientation\"),a=t(\"simplicial-complex\")},{\"robust-orientation\":520,\"simplicial-complex\":532}],535:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,i,o,s;if(e[0][0]<e[1][0])r=e[0],i=e[1];else{if(!(e[0][0]>e[1][0]))return a(e,t);r=e[1],i=e[0]}if(t[0][0]<t[1][0])o=t[0],s=t[1];else{if(!(t[0][0]>t[1][0]))return-a(t,e);o=t[1],s=t[0]}var l=n(r,i,s),c=n(r,i,o);if(l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;if(l=n(s,o,i),c=n(s,o,r),l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;return i[0]-s[0]};var n=t(\"robust-orientation\");function a(t,e){var r,a,i,o;if(e[0][0]<e[1][0])r=e[0],a=e[1];else{if(!(e[0][0]>e[1][0])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return l<c?l-c:s>u?s-u:l-u}r=e[1],a=e[0]}t[0][1]<t[1][1]?(i=t[0],o=t[1]):(i=t[1],o=t[0]);var h=n(a,r,i);return h||((h=n(a,r,o))||o-a)}},{\"robust-orientation\":520}],536:[function(t,e,r){arguments[4][243][0].apply(r,arguments)},{dup:243}],537:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=t.length,r=2*e,n=new Array(r),i=0;i<e;++i){var l=t[i],c=l[0][0]<l[1][0];n[2*i]=new h(l[0][0],l,c,i),n[2*i+1]=new h(l[1][0],l,!c,i)}n.sort((function(t,e){var r=t.x-e.x;return r||((r=t.create-e.create)||Math.min(t.segment[0][1],t.segment[1][1])-Math.min(e.segment[0][1],e.segment[1][1]))}));var f=a(o),p=[],d=[],g=[];for(i=0;i<r;){for(var m=n[i].x,v=[];i<r;){var y=n[i];if(y.x!==m)break;i+=1,y.segment[0][0]===y.x&&y.segment[1][0]===y.x?y.create&&(y.segment[0][1]<y.segment[1][1]?(v.push(new u(y.segment[0][1],y.index,!0,!0)),v.push(new u(y.segment[1][1],y.index,!1,!1))):(v.push(new u(y.segment[1][1],y.index,!0,!1)),v.push(new u(y.segment[0][1],y.index,!1,!0)))):f=y.create?f.insert(y.segment,y.index):f.remove(y.segment)}p.push(f.root),d.push(m),g.push(v)}return new s(p,d,g)};var n=t(\"binary-search-bounds\"),a=t(\"functional-red-black-tree\"),i=t(\"robust-orientation\"),o=t(\"./lib/order-segments\");function s(t,e,r){this.slabs=t,this.coordinates=e,this.horizontal=r}function l(t,e){return t.y-e}function c(t,e){for(var r=null;t;){var n,a,o=t.key;o[0][0]<o[1][0]?(n=o[0],a=o[1]):(n=o[1],a=o[0]);var s=i(n,a,e);if(s<0)t=t.left;else if(s>0)if(e[0]!==o[1][0])r=t,t=t.right;else{if(l=c(t.right,e))return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l;if(l=c(t.right,e))return l;t=t.left}}return r}function u(t,e,r,n){this.y=t,this.index=e,this.start=r,this.closed=n}function h(t,e,r,n){this.x=t,this.segment=e,this.create=r,this.index=n}s.prototype.castUp=function(t){var e=n.le(this.coordinates,t[0]);if(e<0)return-1;this.slabs[e];var r=c(this.slabs[e],t),a=-1;if(r&&(a=r.value),this.coordinates[e]===t[0]){var s=null;if(r&&(s=r.key),e>0){var u=c(this.slabs[e-1],t);u&&(s?o(u.key,s)>0&&(s=u.key,a=u.value):(a=u.value,s=u.key))}var h=this.horizontal[e];if(h.length>0){var f=n.ge(h,t[1],l);if(f<h.length){var p=h[f];if(t[1]===p.y){if(p.closed)return p.index;for(;f<h.length-1&&h[f+1].y===t[1];)if((p=h[f+=1]).closed)return p.index;if(p.y===t[1]&&!p.start){if((f+=1)>=h.length)return a;p=h[f]}}if(p.start)if(s){var d=i(s[0],s[1],[t[0],p.y]);s[0][0]>s[1][0]&&(d=-d),d>0&&(a=p.index)}else a=p.index;else p.y!==t[1]&&(a=p.index)}}}return a}},{\"./lib/order-segments\":535,\"binary-search-bounds\":536,\"functional-red-black-tree\":247,\"robust-orientation\":520}],538:[function(t,e,r){\"use strict\";var n=t(\"robust-dot-product\"),a=t(\"robust-sum\");function i(t,e){var r=a(n(t,e),[e[e.length-1]]);return r[r.length-1]}function o(t,e,r,n){var a=-e/(n-e);a<0?a=0:a>1&&(a=1);for(var i=1-a,o=t.length,s=new Array(o),l=0;l<o;++l)s[l]=a*t[l]+i*r[l];return s}e.exports=function(t,e){for(var r=[],n=[],a=i(t[t.length-1],e),s=t[t.length-1],l=t[0],c=0;c<t.length;++c,s=l){var u=i(l=t[c],e);if(a<0&&u>0||a>0&&u<0){var h=o(s,u,l,a);r.push(h),n.push(h.slice())}u<0?n.push(l.slice()):u>0?r.push(l.slice()):(r.push(l.slice()),n.push(l.slice())),a=u}return{positive:r,negative:n}},e.exports.positive=function(t,e){for(var r=[],n=i(t[t.length-1],e),a=t[t.length-1],s=t[0],l=0;l<t.length;++l,a=s){var c=i(s=t[l],e);(n<0&&c>0||n>0&&c<0)&&r.push(o(a,c,s,n)),c>=0&&r.push(s.slice()),n=c}return r},e.exports.negative=function(t,e){for(var r=[],n=i(t[t.length-1],e),a=t[t.length-1],s=t[0],l=0;l<t.length;++l,a=s){var c=i(s=t[l],e);(n<0&&c>0||n>0&&c<0)&&r.push(o(a,c,s,n)),c<=0&&r.push(s.slice()),n=c}return r}},{\"robust-dot-product\":517,\"robust-sum\":525}],539:[function(t,e,r){!function(){\"use strict\";var t={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\\x25]+/,modulo:/^\\x25{2}/,placeholder:/^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\\d]*)/i,key_access:/^\\.([a-z_][a-z_\\d]*)/i,index_access:/^\\[(\\d+)\\]/,sign:/^[+-]/};function e(t){return a(o(t),arguments)}function n(t,r){return e.apply(null,[t].concat(r||[]))}function a(r,n){var a,i,o,s,l,c,u,h,f,p=1,d=r.length,g=\"\";for(i=0;i<d;i++)if(\"string\"==typeof r[i])g+=r[i];else if(\"object\"==typeof r[i]){if((s=r[i]).keys)for(a=n[p],o=0;o<s.keys.length;o++){if(null==a)throw new Error(e('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"',s.keys[o],s.keys[o-1]));a=a[s.keys[o]]}else a=s.param_no?n[s.param_no]:n[p++];if(t.not_type.test(s.type)&&t.not_primitive.test(s.type)&&a instanceof Function&&(a=a()),t.numeric_arg.test(s.type)&&\"number\"!=typeof a&&isNaN(a))throw new TypeError(e(\"[sprintf] expecting number but found %T\",a));switch(t.number.test(s.type)&&(h=a>=0),s.type){case\"b\":a=parseInt(a,10).toString(2);break;case\"c\":a=String.fromCharCode(parseInt(a,10));break;case\"d\":case\"i\":a=parseInt(a,10);break;case\"j\":a=JSON.stringify(a,null,s.width?parseInt(s.width):0);break;case\"e\":a=s.precision?parseFloat(a).toExponential(s.precision):parseFloat(a).toExponential();break;case\"f\":a=s.precision?parseFloat(a).toFixed(s.precision):parseFloat(a);break;case\"g\":a=s.precision?String(Number(a.toPrecision(s.precision))):parseFloat(a);break;case\"o\":a=(parseInt(a,10)>>>0).toString(8);break;case\"s\":a=String(a),a=s.precision?a.substring(0,s.precision):a;break;case\"t\":a=String(!!a),a=s.precision?a.substring(0,s.precision):a;break;case\"T\":a=Object.prototype.toString.call(a).slice(8,-1).toLowerCase(),a=s.precision?a.substring(0,s.precision):a;break;case\"u\":a=parseInt(a,10)>>>0;break;case\"v\":a=a.valueOf(),a=s.precision?a.substring(0,s.precision):a;break;case\"x\":a=(parseInt(a,10)>>>0).toString(16);break;case\"X\":a=(parseInt(a,10)>>>0).toString(16).toUpperCase()}t.json.test(s.type)?g+=a:(!t.number.test(s.type)||h&&!s.sign?f=\"\":(f=h?\"+\":\"-\",a=a.toString().replace(t.sign,\"\")),c=s.pad_char?\"0\"===s.pad_char?\"0\":s.pad_char.charAt(1):\" \",u=s.width-(f+a).length,l=s.width&&u>0?c.repeat(u):\"\",g+=s.align?f+a+l:\"0\"===c?f+l+a:l+f+a)}return g}var i=Object.create(null);function o(e){if(i[e])return i[e];for(var r,n=e,a=[],o=0;n;){if(null!==(r=t.text.exec(n)))a.push(r[0]);else if(null!==(r=t.modulo.exec(n)))a.push(\"%\");else{if(null===(r=t.placeholder.exec(n)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(r[2]){o|=1;var s=[],l=r[2],c=[];if(null===(c=t.key.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(s.push(c[1]);\"\"!==(l=l.substring(c[0].length));)if(null!==(c=t.key_access.exec(l)))s.push(c[1]);else{if(null===(c=t.index_access.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");s.push(c[1])}r[2]=s}else o|=2;if(3===o)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");a.push({placeholder:r[0],param_no:r[1],keys:r[2],sign:r[3],pad_char:r[4],align:r[5],width:r[6],precision:r[7],type:r[8]})}n=n.substring(r[0].length)}return i[e]=a}\"undefined\"!=typeof r&&(r.sprintf=e,r.vsprintf=n),\"undefined\"!=typeof window&&(window.sprintf=e,window.vsprintf=n)}()},{}],540:[function(t,e,r){\"use strict\";var n=t(\"parenthesis\");e.exports=function(t,e,r){if(null==t)throw Error(\"First argument should be a string\");if(null==e)throw Error(\"Separator should be a string or a RegExp\");r?(\"string\"==typeof r||Array.isArray(r))&&(r={ignore:r}):r={},null==r.escape&&(r.escape=!0),null==r.ignore?r.ignore=[\"[]\",\"()\",\"{}\",\"<>\",'\"\"',\"''\",\"``\",\"\\u201c\\u201d\",\"\\xab\\xbb\"]:(\"string\"==typeof r.ignore&&(r.ignore=[r.ignore]),r.ignore=r.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var a=n.parse(t,{flat:!0,brackets:r.ignore}),i=a[0].split(e);if(r.escape){for(var o=[],s=0;s<i.length;s++){var l=i[s],c=i[s+1];\"\\\\\"===l[l.length-1]&&\"\\\\\"!==l[l.length-2]?(o.push(l+e+c),s++):o.push(l)}i=o}for(s=0;s<i.length;s++)a[0]=i[s],i[s]=n.stringify(a,{flat:!0});return i}},{parenthesis:477}],541:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=t.length,r=new Array(e),n=new Array(e),a=new Array(e),i=new Array(e),o=new Array(e),s=new Array(e),l=0;l<e;++l)r[l]=-1,n[l]=0,a[l]=!1,i[l]=0,o[l]=-1,s[l]=[];var c,u=0,h=[],f=[];function p(e){var l=[e],c=[e];for(r[e]=n[e]=u,a[e]=!0,u+=1;c.length>0;){e=c[c.length-1];var p=t[e];if(i[e]<p.length){for(var d=i[e];d<p.length;++d){var g=p[d];if(r[g]<0){r[g]=n[g]=u,a[g]=!0,u+=1,l.push(g),c.push(g);break}a[g]&&(n[e]=0|Math.min(n[e],n[g])),o[g]>=0&&s[e].push(o[g])}i[e]=d}else{if(n[e]===r[e]){var m=[],v=[],y=0;for(d=l.length-1;d>=0;--d){var x=l[d];if(a[x]=!1,m.push(x),v.push(s[x]),y+=s[x].length,o[x]=h.length,x===e){l.length=d;break}}h.push(m);var b=new Array(y);for(d=0;d<v.length;d++)for(var _=0;_<v[d].length;_++)b[--y]=v[d][_];f.push(b)}c.pop()}}}for(l=0;l<e;++l)r[l]<0&&p(l);for(l=0;l<f.length;l++){var d=f[l];if(0!==d.length){d.sort((function(t,e){return t-e})),c=[d[0]];for(var g=1;g<d.length;g++)d[g]!==d[g-1]&&c.push(d[g]);f[l]=c}}return{components:h,adjacencyList:f}}},{}],542:[function(t,e,r){\"use strict\";e.exports=function(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return function(t,e){for(var r=i(t,e),n=r.length,a=new Array(n),o=new Array(n),s=0;s<n;++s)a[s]=[r[s]],o[s]=[s];return{positions:a,cells:o}}(t,e);var r=t.order.join()+\"-\"+t.dtype,s=o[r];e=+e||0;s||(s=o[r]=function(t,e){var r=t.length,i=[\"'use strict';\"],o=\"surfaceNets\"+t.join(\"_\")+\"d\"+e;i.push(\"var contour=genContour({\",\"order:[\",t.join(),\"],\",\"scalarArguments: 3,\",\"phase:function phaseFunc(p,a,b,c) { return (p > c)|0 },\"),\"generic\"===e&&i.push(\"getters:[0],\");for(var s=[],l=[],c=0;c<r;++c)s.push(\"d\"+c),l.push(\"d\"+c);for(c=0;c<1<<r;++c)s.push(\"v\"+c),l.push(\"v\"+c);for(c=0;c<1<<r;++c)s.push(\"p\"+c),l.push(\"p\"+c);s.push(\"a\",\"b\",\"c\"),l.push(\"a\",\"c\"),i.push(\"vertex:function vertexFunc(\",s.join(),\"){\");var u=[];for(c=0;c<1<<r;++c)u.push(\"(p\"+c+\"<<\"+c+\")\");i.push(\"var m=(\",u.join(\"+\"),\")|0;if(m===0||m===\",(1<<(1<<r))-1,\"){return}\");var h=[],f=[];1<<(1<<r)<=128?(i.push(\"switch(m){\"),f=i):i.push(\"switch(m>>>7){\");for(c=0;c<1<<(1<<r);++c){if(1<<(1<<r)>128&&c%128==0){h.length>0&&f.push(\"}}\");var p=\"vExtra\"+h.length;i.push(\"case \",c>>>7,\":\",p,\"(m&0x7f,\",l.join(),\");break;\"),f=[\"function \",p,\"(m,\",l.join(),\"){switch(m){\"],h.push(f)}f.push(\"case \",127&c,\":\");for(var d=new Array(r),g=new Array(r),m=new Array(r),v=new Array(r),y=0,x=0;x<r;++x)d[x]=[],g[x]=[],m[x]=0,v[x]=0;for(x=0;x<1<<r;++x)for(var b=0;b<r;++b){var _=x^1<<b;if(!(_>x)&&!(c&1<<_)!=!(c&1<<x)){var w=1;c&1<<_?g[b].push(\"v\"+_+\"-v\"+x):(g[b].push(\"v\"+x+\"-v\"+_),w=-w),w<0?(d[b].push(\"-v\"+x+\"-v\"+_),m[b]+=2):(d[b].push(\"v\"+x+\"+v\"+_),m[b]-=2),y+=1;for(var T=0;T<r;++T)T!==b&&(_&1<<T?v[T]+=1:v[T]-=1)}}var k=[];for(b=0;b<r;++b)if(0===d[b].length)k.push(\"d\"+b+\"-0.5\");else{var M=\"\";m[b]<0?M=m[b]+\"*c\":m[b]>0&&(M=\"+\"+m[b]+\"*c\");var A=d[b].length/y*.5,S=.5+v[b]/y*.5;k.push(\"d\"+b+\"-\"+S+\"-\"+A+\"*(\"+d[b].join(\"+\")+M+\")/(\"+g[b].join(\"+\")+\")\")}f.push(\"a.push([\",k.join(),\"]);\",\"break;\")}i.push(\"}},\"),h.length>0&&f.push(\"}}\");var E=[];for(c=0;c<1<<r-1;++c)E.push(\"v\"+c);E.push(\"c0\",\"c1\",\"p0\",\"p1\",\"a\",\"b\",\"c\"),i.push(\"cell:function cellFunc(\",E.join(),\"){\");var C=a(r-1);i.push(\"if(p0){b.push(\",C.map((function(t){return\"[\"+t.map((function(t){return\"v\"+t}))+\"]\"})).join(),\")}else{b.push(\",C.map((function(t){var e=t.slice();return e.reverse(),\"[\"+e.map((function(t){return\"v\"+t}))+\"]\"})).join(),\")}}});function \",o,\"(array,level){var verts=[],cells=[];contour(array,verts,cells,level);return {positions:verts,cells:cells};} return \",o,\";\");for(c=0;c<h.length;++c)i.push(h[c].join(\"\"));return new Function(\"genContour\",i.join(\"\"))(n)}(t.order,t.dtype));return s(t,e)};var n=t(\"ndarray-extract-contour\"),a=t(\"triangulate-hypercube\"),i=t(\"zero-crossings\");var o={}},{\"ndarray-extract-contour\":461,\"triangulate-hypercube\":552,\"zero-crossings\":596}],543:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var r=[],n=!0,a=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!e||r.length!==e);n=!0);}catch(t){a=!0,i=t}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return r}(t,e);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")},a=2*Math.PI,i=function(t,e,r,n,a,i,o){var s=t.x,l=t.y;return{x:n*(s*=e)-a*(l*=r)+i,y:a*s+n*l+o}},o=function(t,e){var r=1.5707963267948966===e?.551915024494:-1.5707963267948966===e?-.551915024494:4/3*Math.tan(e/4),n=Math.cos(t),a=Math.sin(t),i=Math.cos(t+e),o=Math.sin(t+e);return[{x:n-a*r,y:a+n*r},{x:i+o*r,y:o-i*r},{x:i,y:o}]},s=function(t,e,r,n){var a=t*r+e*n;return a>1&&(a=1),a<-1&&(a=-1),(t*n-e*r<0?-1:1)*Math.acos(a)};r.default=function(t){var e=t.px,r=t.py,l=t.cx,c=t.cy,u=t.rx,h=t.ry,f=t.xAxisRotation,p=void 0===f?0:f,d=t.largeArcFlag,g=void 0===d?0:d,m=t.sweepFlag,v=void 0===m?0:m,y=[];if(0===u||0===h)return[];var x=Math.sin(p*a/360),b=Math.cos(p*a/360),_=b*(e-l)/2+x*(r-c)/2,w=-x*(e-l)/2+b*(r-c)/2;if(0===_&&0===w)return[];u=Math.abs(u),h=Math.abs(h);var T=Math.pow(_,2)/Math.pow(u,2)+Math.pow(w,2)/Math.pow(h,2);T>1&&(u*=Math.sqrt(T),h*=Math.sqrt(T));var k=function(t,e,r,n,i,o,l,c,u,h,f,p){var d=Math.pow(i,2),g=Math.pow(o,2),m=Math.pow(f,2),v=Math.pow(p,2),y=d*g-d*v-g*m;y<0&&(y=0),y/=d*v+g*m;var x=(y=Math.sqrt(y)*(l===c?-1:1))*i/o*p,b=y*-o/i*f,_=h*x-u*b+(t+r)/2,w=u*x+h*b+(e+n)/2,T=(f-x)/i,k=(p-b)/o,M=(-f-x)/i,A=(-p-b)/o,S=s(1,0,T,k),E=s(T,k,M,A);return 0===c&&E>0&&(E-=a),1===c&&E<0&&(E+=a),[_,w,S,E]}(e,r,l,c,u,h,g,v,x,b,_,w),M=n(k,4),A=M[0],S=M[1],E=M[2],C=M[3],L=Math.abs(C)/(a/4);Math.abs(1-L)<1e-7&&(L=1);var P=Math.max(Math.ceil(L),1);C/=P;for(var I=0;I<P;I++)y.push(o(E,C)),E+=C;return y.map((function(t){var e=i(t[0],u,h,b,x,A,S),r=e.x,n=e.y,a=i(t[1],u,h,b,x,A,S),o=a.x,s=a.y,l=i(t[2],u,h,b,x,A,S);return{x1:r,y1:n,x2:o,y2:s,x:l.x,y:l.y}}))},e.exports=r.default},{}],544:[function(t,e,r){\"use strict\";var n=t(\"parse-svg-path\"),a=t(\"abs-svg-path\"),i=t(\"normalize-svg-path\"),o=t(\"is-svg-path\"),s=t(\"assert\");e.exports=function(t){Array.isArray(t)&&1===t.length&&\"string\"==typeof t[0]&&(t=t[0]);\"string\"==typeof t&&(s(o(t),\"String is not an SVG path.\"),t=n(t));if(s(Array.isArray(t),\"Argument should be a string or an array of path segments.\"),t=a(t),!(t=i(t)).length)return[0,0,0,0];for(var e=[1/0,1/0,-1/0,-1/0],r=0,l=t.length;r<l;r++)for(var c=t[r].slice(1),u=0;u<c.length;u+=2)c[u+0]<e[0]&&(e[0]=c[u+0]),c[u+1]<e[1]&&(e[1]=c[u+1]),c[u+0]>e[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}},{\"abs-svg-path\":65,assert:73,\"is-svg-path\":445,\"normalize-svg-path\":545,\"parse-svg-path\":479}],545:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e,r=[],o=0,s=0,l=0,c=0,u=null,h=null,f=0,p=0,d=0,g=t.length;d<g;d++){var m=t[d],v=m[0];switch(v){case\"M\":l=m[1],c=m[2];break;case\"A\":var y=n({px:f,py:p,cx:m[6],cy:m[7],rx:m[1],ry:m[2],xAxisRotation:m[3],largeArcFlag:m[4],sweepFlag:m[5]});if(!y.length)continue;for(var x,b=0;b<y.length;b++)x=y[b],m=[\"C\",x.x1,x.y1,x.x2,x.y2,x.x,x.y],b<y.length-1&&r.push(m);break;case\"S\":var _=f,w=p;\"C\"!=e&&\"S\"!=e||(_+=_-o,w+=w-s),m=[\"C\",_,w,m[1],m[2],m[3],m[4]];break;case\"T\":\"Q\"==e||\"T\"==e?(u=2*f-u,h=2*p-h):(u=f,h=p),m=i(f,p,u,h,m[1],m[2]);break;case\"Q\":u=m[1],h=m[2],m=i(f,p,m[1],m[2],m[3],m[4]);break;case\"L\":m=a(f,p,m[1],m[2]);break;case\"H\":m=a(f,p,m[1],p);break;case\"V\":m=a(f,p,f,m[1]);break;case\"Z\":m=a(f,p,l,c)}e=v,f=m[m.length-2],p=m[m.length-1],m.length>4?(o=m[m.length-4],s=m[m.length-3]):(o=f,s=p),r.push(m)}return r};var n=t(\"svg-arc-to-cubic-bezier\");function a(t,e,r,n){return[\"C\",t,e,r,n,r,n]}function i(t,e,r,n,a,i){return[\"C\",t/3+2/3*r,e/3+2/3*n,a/3+2/3*r,i/3+2/3*n,a,i]}},{\"svg-arc-to-cubic-bezier\":543}],546:[function(t,e,r){\"use strict\";var n,a=t(\"svg-path-bounds\"),i=t(\"parse-svg-path\"),o=t(\"draw-svg-path\"),s=t(\"is-svg-path\"),l=t(\"bitmap-sdf\"),c=document.createElement(\"canvas\"),u=c.getContext(\"2d\");e.exports=function(t,e){if(!s(t))throw Error(\"Argument should be valid svg path string\");e||(e={});var r,h;e.shape?(r=e.shape[0],h=e.shape[1]):(r=c.width=e.w||e.width||200,h=c.height=e.h||e.height||200);var f=Math.min(r,h),p=e.stroke||0,d=e.viewbox||e.viewBox||a(t),g=[r/(d[2]-d[0]),h/(d[3]-d[1])],m=Math.min(g[0]||0,g[1]||0)/2;u.fillStyle=\"black\",u.fillRect(0,0,r,h),u.fillStyle=\"white\",p&&(\"number\"!=typeof p&&(p=1),u.strokeStyle=p>0?\"white\":\"black\",u.lineWidth=Math.abs(p));if(u.translate(.5*r,.5*h),u.scale(m,m),function(){if(null!=n)return n;var t=document.createElement(\"canvas\").getContext(\"2d\");if(t.canvas.width=t.canvas.height=1,!window.Path2D)return n=!1;var e=new Path2D(\"M0,0h1v1h-1v-1Z\");t.fillStyle=\"black\",t.fill(e);var r=t.getImageData(0,0,1,1);return n=r&&r.data&&255===r.data[3]}()){var v=new Path2D(t);u.fill(v),p&&u.stroke(v)}else{var y=i(t);o(u,y),u.fill(),p&&u.stroke()}return u.setTransform(1,0,0,1,0,0),l(u,{cutoff:null!=e.cutoff?e.cutoff:.5,radius:null!=e.radius?e.radius:.5*f})}},{\"bitmap-sdf\":98,\"draw-svg-path\":174,\"is-svg-path\":445,\"parse-svg-path\":479,\"svg-path-bounds\":544}],547:[function(t,e,r){(function(r){\"use strict\";e.exports=function t(e,r,a){a=a||{};var o=i[e];o||(o=i[e]={\" \":{data:new Float32Array(0),shape:.2}});var s=o[r];if(!s)if(r.length<=1||!/\\d/.test(r))s=o[r]=function(t){for(var e=t.cells,r=t.positions,n=new Float32Array(6*e.length),a=0,i=0,o=0;o<e.length;++o)for(var s=e[o],l=0;l<3;++l){var c=r[s[l]];n[a++]=c[0],n[a++]=c[1]+1.4,i=Math.max(c[0],i)}return{data:n,shape:i}}(n(r,{triangles:!0,font:e,textAlign:a.textAlign||\"left\",textBaseline:\"alphabetic\",styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}}));else{for(var l=r.split(/(\\d|\\s)/),c=new Array(l.length),u=0,h=0,f=0;f<l.length;++f)c[f]=t(e,l[f]),u+=c[f].data.length,h+=c[f].shape,f>0&&(h+=.02);var p=new Float32Array(u),d=0,g=-.5*h;for(f=0;f<c.length;++f){for(var m=c[f].data,v=0;v<m.length;v+=2)p[d++]=m[v]+g,p[d++]=m[v+1];g+=c[f].shape+.02}s=o[r]={data:p,shape:h}}return s};var n=t(\"vectorize-text\"),a=window||r.global||{},i=a.__TEXT_CACHE||{};a.__TEXT_CACHE={}}).call(this,t(\"_process\"))},{_process:500,\"vectorize-text\":572}],548:[function(t,e,r){!function(t){var r=/^\\s+/,n=/\\s+$/,a=0,i=t.round,o=t.min,s=t.max,l=t.random;function c(e,l){if(l=l||{},(e=e||\"\")instanceof c)return e;if(!(this instanceof c))return new c(e,l);var u=function(e){var a={r:0,g:0,b:0},i=1,l=null,c=null,u=null,h=!1,f=!1;\"string\"==typeof e&&(e=function(t){t=t.replace(r,\"\").replace(n,\"\").toLowerCase();var e,a=!1;if(S[t])t=S[t],a=!0;else if(\"transparent\"==t)return{r:0,g:0,b:0,a:0,format:\"name\"};if(e=j.rgb.exec(t))return{r:e[1],g:e[2],b:e[3]};if(e=j.rgba.exec(t))return{r:e[1],g:e[2],b:e[3],a:e[4]};if(e=j.hsl.exec(t))return{h:e[1],s:e[2],l:e[3]};if(e=j.hsla.exec(t))return{h:e[1],s:e[2],l:e[3],a:e[4]};if(e=j.hsv.exec(t))return{h:e[1],s:e[2],v:e[3]};if(e=j.hsva.exec(t))return{h:e[1],s:e[2],v:e[3],a:e[4]};if(e=j.hex8.exec(t))return{r:I(e[1]),g:I(e[2]),b:I(e[3]),a:R(e[4]),format:a?\"name\":\"hex8\"};if(e=j.hex6.exec(t))return{r:I(e[1]),g:I(e[2]),b:I(e[3]),format:a?\"name\":\"hex\"};if(e=j.hex4.exec(t))return{r:I(e[1]+\"\"+e[1]),g:I(e[2]+\"\"+e[2]),b:I(e[3]+\"\"+e[3]),a:R(e[4]+\"\"+e[4]),format:a?\"name\":\"hex8\"};if(e=j.hex3.exec(t))return{r:I(e[1]+\"\"+e[1]),g:I(e[2]+\"\"+e[2]),b:I(e[3]+\"\"+e[3]),format:a?\"name\":\"hex\"};return!1}(e));\"object\"==typeof e&&(U(e.r)&&U(e.g)&&U(e.b)?(p=e.r,d=e.g,g=e.b,a={r:255*L(p,255),g:255*L(d,255),b:255*L(g,255)},h=!0,f=\"%\"===String(e.r).substr(-1)?\"prgb\":\"rgb\"):U(e.h)&&U(e.s)&&U(e.v)?(l=O(e.s),c=O(e.v),a=function(e,r,n){e=6*L(e,360),r=L(r,100),n=L(n,100);var a=t.floor(e),i=e-a,o=n*(1-r),s=n*(1-i*r),l=n*(1-(1-i)*r),c=a%6;return{r:255*[n,s,o,o,l,n][c],g:255*[l,n,n,s,o,o][c],b:255*[o,o,l,n,n,s][c]}}(e.h,l,c),h=!0,f=\"hsv\"):U(e.h)&&U(e.s)&&U(e.l)&&(l=O(e.s),u=O(e.l),a=function(t,e,r){var n,a,i;function o(t,e,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t}if(t=L(t,360),e=L(e,100),r=L(r,100),0===e)n=a=i=r;else{var s=r<.5?r*(1+e):r+e-r*e,l=2*r-s;n=o(l,s,t+1/3),a=o(l,s,t),i=o(l,s,t-1/3)}return{r:255*n,g:255*a,b:255*i}}(e.h,l,u),h=!0,f=\"hsl\"),e.hasOwnProperty(\"a\")&&(i=e.a));var p,d,g;return i=C(i),{ok:h,format:e.format||f,r:o(255,s(a.r,0)),g:o(255,s(a.g,0)),b:o(255,s(a.b,0)),a:i}}(e);this._originalInput=e,this._r=u.r,this._g=u.g,this._b=u.b,this._a=u.a,this._roundA=i(100*this._a)/100,this._format=l.format||u.format,this._gradientType=l.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=u.ok,this._tc_id=a++}function u(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,a,i=s(t,e,r),l=o(t,e,r),c=(i+l)/2;if(i==l)n=a=0;else{var u=i-l;switch(a=c>.5?u/(2-i-l):u/(i+l),i){case t:n=(e-r)/u+(e<r?6:0);break;case e:n=(r-t)/u+2;break;case r:n=(t-e)/u+4}n/=6}return{h:n,s:a,l:c}}function h(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,a,i=s(t,e,r),l=o(t,e,r),c=i,u=i-l;if(a=0===i?0:u/i,i==l)n=0;else{switch(i){case t:n=(e-r)/u+(e<r?6:0);break;case e:n=(r-t)/u+2;break;case r:n=(t-e)/u+4}n/=6}return{h:n,s:a,v:c}}function f(t,e,r,n){var a=[z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16))];return n&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0):a.join(\"\")}function p(t,e,r,n){return[z(D(n)),z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16))].join(\"\")}function d(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.s-=e/100,r.s=P(r.s),c(r)}function g(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.s+=e/100,r.s=P(r.s),c(r)}function m(t){return c(t).desaturate(100)}function v(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.l+=e/100,r.l=P(r.l),c(r)}function y(t,e){e=0===e?0:e||10;var r=c(t).toRgb();return r.r=s(0,o(255,r.r-i(-e/100*255))),r.g=s(0,o(255,r.g-i(-e/100*255))),r.b=s(0,o(255,r.b-i(-e/100*255))),c(r)}function x(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.l-=e/100,r.l=P(r.l),c(r)}function b(t,e){var r=c(t).toHsl(),n=(r.h+e)%360;return r.h=n<0?360+n:n,c(r)}function _(t){var e=c(t).toHsl();return e.h=(e.h+180)%360,c(e)}function w(t){var e=c(t).toHsl(),r=e.h;return[c(t),c({h:(r+120)%360,s:e.s,l:e.l}),c({h:(r+240)%360,s:e.s,l:e.l})]}function T(t){var e=c(t).toHsl(),r=e.h;return[c(t),c({h:(r+90)%360,s:e.s,l:e.l}),c({h:(r+180)%360,s:e.s,l:e.l}),c({h:(r+270)%360,s:e.s,l:e.l})]}function k(t){var e=c(t).toHsl(),r=e.h;return[c(t),c({h:(r+72)%360,s:e.s,l:e.l}),c({h:(r+216)%360,s:e.s,l:e.l})]}function M(t,e,r){e=e||6,r=r||30;var n=c(t).toHsl(),a=360/r,i=[c(t)];for(n.h=(n.h-(a*e>>1)+720)%360;--e;)n.h=(n.h+a)%360,i.push(c(n));return i}function A(t,e){e=e||6;for(var r=c(t).toHsv(),n=r.h,a=r.s,i=r.v,o=[],s=1/e;e--;)o.push(c({h:n,s:a,v:i})),i=(i+s)%1;return o}c.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var e,r,n,a=this.toRgb();return e=a.r/255,r=a.g/255,n=a.b/255,.2126*(e<=.03928?e/12.92:t.pow((e+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:t.pow((r+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:t.pow((n+.055)/1.055,2.4))},setAlpha:function(t){return this._a=C(t),this._roundA=i(100*this._a)/100,this},toHsv:function(){var t=h(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=h(this._r,this._g,this._b),e=i(360*t.h),r=i(100*t.s),n=i(100*t.v);return 1==this._a?\"hsv(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsva(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHsl:function(){var t=u(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=u(this._r,this._g,this._b),e=i(360*t.h),r=i(100*t.s),n=i(100*t.l);return 1==this._a?\"hsl(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsla(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHex:function(t){return f(this._r,this._g,this._b,t)},toHexString:function(t){return\"#\"+this.toHex(t)},toHex8:function(t){return function(t,e,r,n,a){var o=[z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16)),z(D(n))];if(a&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)&&o[3].charAt(0)==o[3].charAt(1))return o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0)+o[3].charAt(0);return o.join(\"\")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return\"#\"+this.toHex8(t)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return 1==this._a?\"rgb(\"+i(this._r)+\", \"+i(this._g)+\", \"+i(this._b)+\")\":\"rgba(\"+i(this._r)+\", \"+i(this._g)+\", \"+i(this._b)+\", \"+this._roundA+\")\"},toPercentageRgb:function(){return{r:i(100*L(this._r,255))+\"%\",g:i(100*L(this._g,255))+\"%\",b:i(100*L(this._b,255))+\"%\",a:this._a}},toPercentageRgbString:function(){return 1==this._a?\"rgb(\"+i(100*L(this._r,255))+\"%, \"+i(100*L(this._g,255))+\"%, \"+i(100*L(this._b,255))+\"%)\":\"rgba(\"+i(100*L(this._r,255))+\"%, \"+i(100*L(this._g,255))+\"%, \"+i(100*L(this._b,255))+\"%, \"+this._roundA+\")\"},toName:function(){return 0===this._a?\"transparent\":!(this._a<1)&&(E[f(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e=\"#\"+p(this._r,this._g,this._b,this._a),r=e,n=this._gradientType?\"GradientType = 1, \":\"\";if(t){var a=c(t);r=\"#\"+p(a._r,a._g,a._b,a._a)}return\"progid:DXImageTransform.Microsoft.gradient(\"+n+\"startColorstr=\"+e+\",endColorstr=\"+r+\")\"},toString:function(t){var e=!!t;t=t||this._format;var r=!1,n=this._a<1&&this._a>=0;return e||!n||\"hex\"!==t&&\"hex6\"!==t&&\"hex3\"!==t&&\"hex4\"!==t&&\"hex8\"!==t&&\"name\"!==t?(\"rgb\"===t&&(r=this.toRgbString()),\"prgb\"===t&&(r=this.toPercentageRgbString()),\"hex\"!==t&&\"hex6\"!==t||(r=this.toHexString()),\"hex3\"===t&&(r=this.toHexString(!0)),\"hex4\"===t&&(r=this.toHex8String(!0)),\"hex8\"===t&&(r=this.toHex8String()),\"name\"===t&&(r=this.toName()),\"hsl\"===t&&(r=this.toHslString()),\"hsv\"===t&&(r=this.toHsvString()),r||this.toHexString()):\"name\"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return c(this.toString())},_applyModification:function(t,e){var r=t.apply(null,[this].concat([].slice.call(e)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(v,arguments)},brighten:function(){return this._applyModification(y,arguments)},darken:function(){return this._applyModification(x,arguments)},desaturate:function(){return this._applyModification(d,arguments)},saturate:function(){return this._applyModification(g,arguments)},greyscale:function(){return this._applyModification(m,arguments)},spin:function(){return this._applyModification(b,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(M,arguments)},complement:function(){return this._applyCombination(_,arguments)},monochromatic:function(){return this._applyCombination(A,arguments)},splitcomplement:function(){return this._applyCombination(k,arguments)},triad:function(){return this._applyCombination(w,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},c.fromRatio=function(t,e){if(\"object\"==typeof t){var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]=\"a\"===n?t[n]:O(t[n]));t=r}return c(t,e)},c.equals=function(t,e){return!(!t||!e)&&c(t).toRgbString()==c(e).toRgbString()},c.random=function(){return c.fromRatio({r:l(),g:l(),b:l()})},c.mix=function(t,e,r){r=0===r?0:r||50;var n=c(t).toRgb(),a=c(e).toRgb(),i=r/100;return c({r:(a.r-n.r)*i+n.r,g:(a.g-n.g)*i+n.g,b:(a.b-n.b)*i+n.b,a:(a.a-n.a)*i+n.a})},c.readability=function(e,r){var n=c(e),a=c(r);return(t.max(n.getLuminance(),a.getLuminance())+.05)/(t.min(n.getLuminance(),a.getLuminance())+.05)},c.isReadable=function(t,e,r){var n,a,i=c.readability(t,e);switch(a=!1,(n=function(t){var e,r;e=((t=t||{level:\"AA\",size:\"small\"}).level||\"AA\").toUpperCase(),r=(t.size||\"small\").toLowerCase(),\"AA\"!==e&&\"AAA\"!==e&&(e=\"AA\");\"small\"!==r&&\"large\"!==r&&(r=\"small\");return{level:e,size:r}}(r)).level+n.size){case\"AAsmall\":case\"AAAlarge\":a=i>=4.5;break;case\"AAlarge\":a=i>=3;break;case\"AAAsmall\":a=i>=7}return a},c.mostReadable=function(t,e,r){var n,a,i,o,s=null,l=0;a=(r=r||{}).includeFallbackColors,i=r.level,o=r.size;for(var u=0;u<e.length;u++)(n=c.readability(t,e[u]))>l&&(l=n,s=c(e[u]));return c.isReadable(t,s,{level:i,size:o})||!a?s:(r.includeFallbackColors=!1,c.mostReadable(t,[\"#fff\",\"#000\"],r))};var S=c.names={aliceblue:\"f0f8ff\",antiquewhite:\"faebd7\",aqua:\"0ff\",aquamarine:\"7fffd4\",azure:\"f0ffff\",beige:\"f5f5dc\",bisque:\"ffe4c4\",black:\"000\",blanchedalmond:\"ffebcd\",blue:\"00f\",blueviolet:\"8a2be2\",brown:\"a52a2a\",burlywood:\"deb887\",burntsienna:\"ea7e5d\",cadetblue:\"5f9ea0\",chartreuse:\"7fff00\",chocolate:\"d2691e\",coral:\"ff7f50\",cornflowerblue:\"6495ed\",cornsilk:\"fff8dc\",crimson:\"dc143c\",cyan:\"0ff\",darkblue:\"00008b\",darkcyan:\"008b8b\",darkgoldenrod:\"b8860b\",darkgray:\"a9a9a9\",darkgreen:\"006400\",darkgrey:\"a9a9a9\",darkkhaki:\"bdb76b\",darkmagenta:\"8b008b\",darkolivegreen:\"556b2f\",darkorange:\"ff8c00\",darkorchid:\"9932cc\",darkred:\"8b0000\",darksalmon:\"e9967a\",darkseagreen:\"8fbc8f\",darkslateblue:\"483d8b\",darkslategray:\"2f4f4f\",darkslategrey:\"2f4f4f\",darkturquoise:\"00ced1\",darkviolet:\"9400d3\",deeppink:\"ff1493\",deepskyblue:\"00bfff\",dimgray:\"696969\",dimgrey:\"696969\",dodgerblue:\"1e90ff\",firebrick:\"b22222\",floralwhite:\"fffaf0\",forestgreen:\"228b22\",fuchsia:\"f0f\",gainsboro:\"dcdcdc\",ghostwhite:\"f8f8ff\",gold:\"ffd700\",goldenrod:\"daa520\",gray:\"808080\",green:\"008000\",greenyellow:\"adff2f\",grey:\"808080\",honeydew:\"f0fff0\",hotpink:\"ff69b4\",indianred:\"cd5c5c\",indigo:\"4b0082\",ivory:\"fffff0\",khaki:\"f0e68c\",lavender:\"e6e6fa\",lavenderblush:\"fff0f5\",lawngreen:\"7cfc00\",lemonchiffon:\"fffacd\",lightblue:\"add8e6\",lightcoral:\"f08080\",lightcyan:\"e0ffff\",lightgoldenrodyellow:\"fafad2\",lightgray:\"d3d3d3\",lightgreen:\"90ee90\",lightgrey:\"d3d3d3\",lightpink:\"ffb6c1\",lightsalmon:\"ffa07a\",lightseagreen:\"20b2aa\",lightskyblue:\"87cefa\",lightslategray:\"789\",lightslategrey:\"789\",lightsteelblue:\"b0c4de\",lightyellow:\"ffffe0\",lime:\"0f0\",limegreen:\"32cd32\",linen:\"faf0e6\",magenta:\"f0f\",maroon:\"800000\",mediumaquamarine:\"66cdaa\",mediumblue:\"0000cd\",mediumorchid:\"ba55d3\",mediumpurple:\"9370db\",mediumseagreen:\"3cb371\",mediumslateblue:\"7b68ee\",mediumspringgreen:\"00fa9a\",mediumturquoise:\"48d1cc\",mediumvioletred:\"c71585\",midnightblue:\"191970\",mintcream:\"f5fffa\",mistyrose:\"ffe4e1\",moccasin:\"ffe4b5\",navajowhite:\"ffdead\",navy:\"000080\",oldlace:\"fdf5e6\",olive:\"808000\",olivedrab:\"6b8e23\",orange:\"ffa500\",orangered:\"ff4500\",orchid:\"da70d6\",palegoldenrod:\"eee8aa\",palegreen:\"98fb98\",paleturquoise:\"afeeee\",palevioletred:\"db7093\",papayawhip:\"ffefd5\",peachpuff:\"ffdab9\",peru:\"cd853f\",pink:\"ffc0cb\",plum:\"dda0dd\",powderblue:\"b0e0e6\",purple:\"800080\",rebeccapurple:\"663399\",red:\"f00\",rosybrown:\"bc8f8f\",royalblue:\"4169e1\",saddlebrown:\"8b4513\",salmon:\"fa8072\",sandybrown:\"f4a460\",seagreen:\"2e8b57\",seashell:\"fff5ee\",sienna:\"a0522d\",silver:\"c0c0c0\",skyblue:\"87ceeb\",slateblue:\"6a5acd\",slategray:\"708090\",slategrey:\"708090\",snow:\"fffafa\",springgreen:\"00ff7f\",steelblue:\"4682b4\",tan:\"d2b48c\",teal:\"008080\",thistle:\"d8bfd8\",tomato:\"ff6347\",turquoise:\"40e0d0\",violet:\"ee82ee\",wheat:\"f5deb3\",white:\"fff\",whitesmoke:\"f5f5f5\",yellow:\"ff0\",yellowgreen:\"9acd32\"},E=c.hexNames=function(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}(S);function C(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function L(e,r){(function(t){return\"string\"==typeof t&&-1!=t.indexOf(\".\")&&1===parseFloat(t)})(e)&&(e=\"100%\");var n=function(t){return\"string\"==typeof t&&-1!=t.indexOf(\"%\")}(e);return e=o(r,s(0,parseFloat(e))),n&&(e=parseInt(e*r,10)/100),t.abs(e-r)<1e-6?1:e%r/parseFloat(r)}function P(t){return o(1,s(0,t))}function I(t){return parseInt(t,16)}function z(t){return 1==t.length?\"0\"+t:\"\"+t}function O(t){return t<=1&&(t=100*t+\"%\"),t}function D(e){return t.round(255*parseFloat(e)).toString(16)}function R(t){return I(t)/255}var F,B,N,j=(B=\"[\\\\s|\\\\(]+(\"+(F=\"(?:[-\\\\+]?\\\\d*\\\\.\\\\d+%?)|(?:[-\\\\+]?\\\\d+%?)\")+\")[,|\\\\s]+(\"+F+\")[,|\\\\s]+(\"+F+\")\\\\s*\\\\)?\",N=\"[\\\\s|\\\\(]+(\"+F+\")[,|\\\\s]+(\"+F+\")[,|\\\\s]+(\"+F+\")[,|\\\\s]+(\"+F+\")\\\\s*\\\\)?\",{CSS_UNIT:new RegExp(F),rgb:new RegExp(\"rgb\"+B),rgba:new RegExp(\"rgba\"+N),hsl:new RegExp(\"hsl\"+B),hsla:new RegExp(\"hsla\"+N),hsv:new RegExp(\"hsv\"+B),hsva:new RegExp(\"hsva\"+N),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function U(t){return!!j.CSS_UNIT.exec(t)}\"undefined\"!=typeof e&&e.exports?e.exports=c:window.tinycolor=c}(Math)},{}],549:[function(t,e,r){\"use strict\";e.exports=a,e.exports.float32=e.exports.float=a,e.exports.fract32=e.exports.fract=function(t){if(t.length){for(var e=a(t),r=0,n=e.length;r<n;r++)e[r]=t[r]-e[r];return e}return a(t-a(t))};var n=new Float32Array(1);function a(t){if(t.length){if(t instanceof Float32Array)return t;var e=new Float32Array(t);return e.set(t),e}return n[0]=t,n[0]}},{}],550:[function(t,e,r){\"use strict\";var n=t(\"parse-unit\");e.exports=i;function a(t,e){var r=n(getComputedStyle(t).getPropertyValue(e));return r[0]*i(r[1],t)}function i(t,e){switch(e=e||document.body,t=(t||\"px\").trim().toLowerCase(),e!==window&&e!==document||(e=document.body),t){case\"%\":return e.clientHeight/100;case\"ch\":case\"ex\":return function(t,e){var r=document.createElement(\"div\");r.style[\"font-size\"]=\"128\"+t,e.appendChild(r);var n=a(r,\"font-size\")/128;return e.removeChild(r),n}(t,e);case\"em\":return a(e,\"font-size\");case\"rem\":return a(document.body,\"font-size\");case\"vw\":return window.innerWidth/100;case\"vh\":return window.innerHeight/100;case\"vmin\":return Math.min(window.innerWidth,window.innerHeight)/100;case\"vmax\":return Math.max(window.innerWidth,window.innerHeight)/100;case\"in\":return 96;case\"cm\":return 96/2.54;case\"mm\":return 96/25.4;case\"pt\":return 96/72;case\"pc\":return 16}return 1}},{\"parse-unit\":480}],551:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).topojson=t.topojson||{})}(this,(function(t){\"use strict\";function e(t){return t}function r(t){if(null==t)return e;var r,n,a=t.scale[0],i=t.scale[1],o=t.translate[0],s=t.translate[1];return function(t,e){e||(r=n=0);var l=2,c=t.length,u=new Array(c);for(u[0]=(r+=t[0])*a+o,u[1]=(n+=t[1])*i+s;l<c;)u[l]=t[l],++l;return u}}function n(t){var e,n=r(t.transform),a=1/0,i=a,o=-a,s=-a;function l(t){(t=n(t))[0]<a&&(a=t[0]),t[0]>o&&(o=t[0]),t[1]<i&&(i=t[1]),t[1]>s&&(s=t[1])}function c(t){switch(t.type){case\"GeometryCollection\":t.geometries.forEach(c);break;case\"Point\":l(t.coordinates);break;case\"MultiPoint\":t.coordinates.forEach(l)}}for(e in t.arcs.forEach((function(t){for(var e,r=-1,l=t.length;++r<l;)(e=n(t[r],r))[0]<a&&(a=e[0]),e[0]>o&&(o=e[0]),e[1]<i&&(i=e[1]),e[1]>s&&(s=e[1])})),t.objects)c(t.objects[e]);return[a,i,o,s]}function a(t,e){var r=e.id,n=e.bbox,a=null==e.properties?{}:e.properties,o=i(t,e);return null==r&&null==n?{type:\"Feature\",properties:a,geometry:o}:null==n?{type:\"Feature\",id:r,properties:a,geometry:o}:{type:\"Feature\",id:r,bbox:n,properties:a,geometry:o}}function i(t,e){var n=r(t.transform),a=t.arcs;function i(t,e){e.length&&e.pop();for(var r=a[t<0?~t:t],i=0,o=r.length;i<o;++i)e.push(n(r[i],i));t<0&&function(t,e){for(var r,n=t.length,a=n-e;a<--n;)r=t[a],t[a++]=t[n],t[n]=r}(e,o)}function o(t){return n(t)}function s(t){for(var e=[],r=0,n=t.length;r<n;++r)i(t[r],e);return e.length<2&&e.push(e[0]),e}function l(t){for(var e=s(t);e.length<4;)e.push(e[0]);return e}function c(t){return t.map(l)}return function t(e){var r,n=e.type;switch(n){case\"GeometryCollection\":return{type:n,geometries:e.geometries.map(t)};case\"Point\":r=o(e.coordinates);break;case\"MultiPoint\":r=e.coordinates.map(o);break;case\"LineString\":r=s(e.arcs);break;case\"MultiLineString\":r=e.arcs.map(s);break;case\"Polygon\":r=c(e.arcs);break;case\"MultiPolygon\":r=e.arcs.map(c);break;default:return null}return{type:n,coordinates:r}}(e)}function o(t,e){var r={},n={},a={},i=[],o=-1;function s(t,e){for(var n in t){var a=t[n];delete e[a.start],delete a.start,delete a.end,a.forEach((function(t){r[t<0?~t:t]=1})),i.push(a)}}return e.forEach((function(r,n){var a,i=t.arcs[r<0?~r:r];i.length<3&&!i[1][0]&&!i[1][1]&&(a=e[++o],e[o]=r,e[n]=a)})),e.forEach((function(e){var r,i,o=function(e){var r,n=t.arcs[e<0?~e:e],a=n[0];t.transform?(r=[0,0],n.forEach((function(t){r[0]+=t[0],r[1]+=t[1]}))):r=n[n.length-1];return e<0?[r,a]:[a,r]}(e),s=o[0],l=o[1];if(r=a[s])if(delete a[r.end],r.push(e),r.end=l,i=n[l]){delete n[i.start];var c=i===r?r:r.concat(i);n[c.start=r.start]=a[c.end=i.end]=c}else n[r.start]=a[r.end]=r;else if(r=n[l])if(delete n[r.start],r.unshift(e),r.start=s,i=a[s]){delete a[i.end];var u=i===r?r:i.concat(r);n[u.start=i.start]=a[u.end=r.end]=u}else n[r.start]=a[r.end]=r;else n[(r=[e]).start=s]=a[r.end=l]=r})),s(a,n),s(n,a),e.forEach((function(t){r[t<0?~t:t]||i.push([t])})),i}function s(t,e,r){var n,a,i;if(arguments.length>1)n=l(t,e,r);else for(a=0,n=new Array(i=t.arcs.length);a<i;++a)n[a]=a;return{type:\"MultiLineString\",arcs:o(t,n)}}function l(t,e,r){var n,a=[],i=[];function o(t){var e=t<0?~t:t;(i[e]||(i[e]=[])).push({i:t,g:n})}function s(t){t.forEach(o)}function l(t){t.forEach(s)}return function t(e){switch(n=e,e.type){case\"GeometryCollection\":e.geometries.forEach(t);break;case\"LineString\":s(e.arcs);break;case\"MultiLineString\":case\"Polygon\":l(e.arcs);break;case\"MultiPolygon\":!function(t){t.forEach(l)}(e.arcs)}}(e),i.forEach(null==r?function(t){a.push(t[0].i)}:function(t){r(t[0].g,t[t.length-1].g)&&a.push(t[0].i)}),a}function c(t,e){var r={},n=[],a=[];function s(t){t.forEach((function(e){e.forEach((function(e){(r[e=e<0?~e:e]||(r[e]=[])).push(t)}))})),n.push(t)}function l(e){return function(t){for(var e,r=-1,n=t.length,a=t[n-1],i=0;++r<n;)e=a,a=t[r],i+=e[0]*a[1]-e[1]*a[0];return Math.abs(i)}(i(t,{type:\"Polygon\",arcs:[e]}).coordinates[0])}return e.forEach((function t(e){switch(e.type){case\"GeometryCollection\":e.geometries.forEach(t);break;case\"Polygon\":s(e.arcs);break;case\"MultiPolygon\":e.arcs.forEach(s)}})),n.forEach((function(t){if(!t._){var e=[],n=[t];for(t._=1,a.push(e);t=n.pop();)e.push(t),t.forEach((function(t){t.forEach((function(t){r[t<0?~t:t].forEach((function(t){t._||(t._=1,n.push(t))}))}))}))}})),n.forEach((function(t){delete t._})),{type:\"MultiPolygon\",arcs:a.map((function(e){var n,a=[];if(e.forEach((function(t){t.forEach((function(t){t.forEach((function(t){r[t<0?~t:t].length<2&&a.push(t)}))}))})),(n=(a=o(t,a)).length)>1)for(var i,s,c=1,u=l(a[0]);c<n;++c)(i=l(a[c]))>u&&(s=a[0],a[0]=a[c],a[c]=s,u=i);return a})).filter((function(t){return t.length>0}))}}function u(t,e){for(var r=0,n=t.length;r<n;){var a=r+n>>>1;t[a]<e?r=a+1:n=a}return r}function h(t){if(null==t)return e;var r,n,a=t.scale[0],i=t.scale[1],o=t.translate[0],s=t.translate[1];return function(t,e){e||(r=n=0);var l=2,c=t.length,u=new Array(c),h=Math.round((t[0]-o)/a),f=Math.round((t[1]-s)/i);for(u[0]=h-r,r=h,u[1]=f-n,n=f;l<c;)u[l]=t[l],++l;return u}}t.bbox=n,t.feature=function(t,e){return\"string\"==typeof e&&(e=t.objects[e]),\"GeometryCollection\"===e.type?{type:\"FeatureCollection\",features:e.geometries.map((function(e){return a(t,e)}))}:a(t,e)},t.merge=function(t){return i(t,c.apply(this,arguments))},t.mergeArcs=c,t.mesh=function(t){return i(t,s.apply(this,arguments))},t.meshArcs=s,t.neighbors=function(t){var e={},r=t.map((function(){return[]}));function n(t,r){t.forEach((function(t){t<0&&(t=~t);var n=e[t];n?n.push(r):e[t]=[r]}))}function a(t,e){t.forEach((function(t){n(t,e)}))}var i={LineString:n,MultiLineString:a,Polygon:a,MultiPolygon:function(t,e){t.forEach((function(t){a(t,e)}))}};for(var o in t.forEach((function t(e,r){\"GeometryCollection\"===e.type?e.geometries.forEach((function(e){t(e,r)})):e.type in i&&i[e.type](e.arcs,r)})),e)for(var s=e[o],l=s.length,c=0;c<l;++c)for(var h=c+1;h<l;++h){var f,p=s[c],d=s[h];(f=r[p])[o=u(f,d)]!==d&&f.splice(o,0,d),(f=r[d])[o=u(f,p)]!==p&&f.splice(o,0,p)}return r},t.quantize=function(t,e){if(t.transform)throw new Error(\"already quantized\");if(e&&e.scale)l=t.bbox;else{if(!((r=Math.floor(e))>=2))throw new Error(\"n must be \\u22652\");var r,a=(l=t.bbox||n(t))[0],i=l[1],o=l[2],s=l[3];e={scale:[o-a?(o-a)/(r-1):1,s-i?(s-i)/(r-1):1],translate:[a,i]}}var l,c,u=h(e),f=t.objects,p={};function d(t){return u(t)}function g(t){var e;switch(t.type){case\"GeometryCollection\":e={type:\"GeometryCollection\",geometries:t.geometries.map(g)};break;case\"Point\":e={type:\"Point\",coordinates:d(t.coordinates)};break;case\"MultiPoint\":e={type:\"MultiPoint\",coordinates:t.coordinates.map(d)};break;default:return t}return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),null!=t.properties&&(e.properties=t.properties),e}for(c in f)p[c]=g(f[c]);return{type:\"Topology\",bbox:l,transform:e,objects:p,arcs:t.arcs.map((function(t){var e,r=0,n=1,a=t.length,i=new Array(a);for(i[0]=u(t[0],0);++r<a;)((e=u(t[r],r))[0]||e[1])&&(i[n++]=e);return 1===n&&(i[n++]=[0,0]),i.length=n,i}))}},t.transform=r,t.untransform=h,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],552:[function(t,e,r){\"use strict\";e.exports=function(t){if(t<0)return[];if(0===t)return[[0]];for(var e=0|Math.round(i(t+1)),r=[],o=0;o<e;++o){for(var s=n.unrank(t,o),l=[0],c=0,u=0;u<s.length;++u)c+=1<<s[u],l.push(c);a(s)<1&&(l[0]=c,l[t]=0),r.push(l)}return r};var n=t(\"permutation-rank\"),a=t(\"permutation-parity\"),i=t(\"gamma\")},{gamma:248,\"permutation-parity\":483,\"permutation-rank\":484}],553:[function(t,e,r){\"use strict\";e.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.up||[0,1,0],n=t.right||h(r),a=t.radius||1,i=t.theta||0,u=t.phi||0;if(e=[].slice.call(e,0,3),r=[].slice.call(r,0,3),s(r,r),n=[].slice.call(n,0,3),s(n,n),\"eye\"in t){var p=t.eye,d=[p[0]-e[0],p[1]-e[1],p[2]-e[2]];o(n,d,r),c(n[0],n[1],n[2])<1e-6?n=h(r):s(n,n),a=c(d[0],d[1],d[2]);var g=l(r,d)/a,m=l(n,d)/a;u=Math.acos(g),i=Math.acos(m)}return a=Math.log(a),new f(t.zoomMin,t.zoomMax,e,r,n,a,i,u)};var n=t(\"filtered-vector\"),a=t(\"gl-mat4/invert\"),i=t(\"gl-mat4/rotate\"),o=t(\"gl-vec3/cross\"),s=t(\"gl-vec3/normalize\"),l=t(\"gl-vec3/dot\");function c(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function u(t){return Math.min(1,Math.max(-1,t))}function h(t){var e=Math.abs(t[0]),r=Math.abs(t[1]),n=Math.abs(t[2]),a=[0,0,0];e>Math.max(r,n)?a[2]=1:r>Math.max(e,n)?a[0]=1:a[1]=1;for(var i=0,o=0,l=0;l<3;++l)i+=t[l]*t[l],o+=a[l]*t[l];for(l=0;l<3;++l)a[l]-=o/i*t[l];return s(a,a),a}function f(t,e,r,a,i,o,s,l){this.center=n(r),this.up=n(a),this.right=n(i),this.radius=n([o]),this.angle=n([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(t,e),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var c=0;c<16;++c)this.computedMatrix[c]=.5;this.recalcMatrix(0)}var p=f.prototype;p.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},p.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},p.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,r=this.computedRight,n=0,a=0,i=0;i<3;++i)a+=e[i]*r[i],n+=e[i]*e[i];var l=Math.sqrt(n),u=0;for(i=0;i<3;++i)r[i]-=e[i]*a/n,u+=r[i]*r[i],e[i]/=l;var h=Math.sqrt(u);for(i=0;i<3;++i)r[i]/=h;var f=this.computedToward;o(f,e,r),s(f,f);var p=Math.exp(this.computedRadius[0]),d=this.computedAngle[0],g=this.computedAngle[1],m=Math.cos(d),v=Math.sin(d),y=Math.cos(g),x=Math.sin(g),b=this.computedCenter,_=m*y,w=v*y,T=x,k=-m*x,M=-v*x,A=y,S=this.computedEye,E=this.computedMatrix;for(i=0;i<3;++i){var C=_*r[i]+w*f[i]+T*e[i];E[4*i+1]=k*r[i]+M*f[i]+A*e[i],E[4*i+2]=C,E[4*i+3]=0}var L=E[1],P=E[5],I=E[9],z=E[2],O=E[6],D=E[10],R=P*D-I*O,F=I*z-L*D,B=L*O-P*z,N=c(R,F,B);R/=N,F/=N,B/=N,E[0]=R,E[4]=F,E[8]=B;for(i=0;i<3;++i)S[i]=b[i]+E[2+4*i]*p;for(i=0;i<3;++i){u=0;for(var j=0;j<3;++j)u+=E[i+4*j]*S[j];E[12+i]=-u}E[15]=1},p.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r};var d=[0,0,0];p.rotate=function(t,e,r,n){if(this.angle.move(t,e,r),n){this.recalcMatrix(t);var a=this.computedMatrix;d[0]=a[2],d[1]=a[6],d[2]=a[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)a[4*c]=o[c],a[4*c+1]=s[c],a[4*c+2]=l[c];i(a,a,n,d);for(c=0;c<3;++c)o[c]=a[4*c],s[c]=a[4*c+1];this.up.set(t,o[0],o[1],o[2]),this.right.set(t,s[0],s[1],s[2])}},p.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var a=this.computedMatrix,i=(Math.exp(this.computedRadius[0]),a[1]),o=a[5],s=a[9],l=c(i,o,s);i/=l,o/=l,s/=l;var u=a[0],h=a[4],f=a[8],p=u*i+h*o+f*s,d=c(u-=i*p,h-=o*p,f-=s*p),g=(u/=d)*e+i*r,m=(h/=d)*e+o*r,v=(f/=d)*e+s*r;this.center.move(t,g,m,v);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+n),this.radius.set(t,Math.log(y))},p.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},p.setMatrix=function(t,e,r,n){var i=1;\"number\"==typeof r&&(i=0|r),(i<0||i>3)&&(i=1);var o=(i+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[i],l=e[i+4],h=e[i+8];if(n){var f=Math.abs(s),p=Math.abs(l),d=Math.abs(h),g=Math.max(f,p,d);f===g?(s=s<0?-1:1,l=h=0):d===g?(h=h<0?-1:1,s=l=0):(l=l<0?-1:1,s=h=0)}else{var m=c(s,l,h);s/=m,l/=m,h/=m}var v,y,x=e[o],b=e[o+4],_=e[o+8],w=x*s+b*l+_*h,T=c(x-=s*w,b-=l*w,_-=h*w),k=l*(_/=T)-h*(b/=T),M=h*(x/=T)-s*_,A=s*b-l*x,S=c(k,M,A);if(k/=S,M/=S,A/=S,this.center.jump(t,H,G,Y),this.radius.idle(t),this.up.jump(t,s,l,h),this.right.jump(t,x,b,_),2===i){var E=e[1],C=e[5],L=e[9],P=E*x+C*b+L*_,I=E*k+C*M+L*A;v=R<0?-Math.PI/2:Math.PI/2,y=Math.atan2(I,P)}else{var z=e[2],O=e[6],D=e[10],R=z*s+O*l+D*h,F=z*x+O*b+D*_,B=z*k+O*M+D*A;v=Math.asin(u(R)),y=Math.atan2(B,F)}this.angle.jump(t,y,v),this.recalcMatrix(t);var N=e[2],j=e[6],U=e[10],V=this.computedMatrix;a(V,e);var q=V[15],H=V[12]/q,G=V[13]/q,Y=V[14]/q,W=Math.exp(this.computedRadius[0]);this.center.jump(t,H-N*W,G-j*W,Y-U*W)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},p.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},p.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},p.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||this.computedCenter;var a=(n=n||this.computedUp)[0],i=n[1],o=n[2],s=c(a,i,o);if(!(s<1e-6)){a/=s,i/=s,o/=s;var l=e[0]-r[0],h=e[1]-r[1],f=e[2]-r[2],p=c(l,h,f);if(!(p<1e-6)){l/=p,h/=p,f/=p;var d=this.computedRight,g=d[0],m=d[1],v=d[2],y=a*g+i*m+o*v,x=c(g-=y*a,m-=y*i,v-=y*o);if(!(x<.01&&(x=c(g=i*f-o*h,m=o*l-a*f,v=a*h-i*l))<1e-6)){g/=x,m/=x,v/=x,this.up.set(t,a,i,o),this.right.set(t,g,m,v),this.center.set(t,r[0],r[1],r[2]),this.radius.set(t,Math.log(p));var b=i*v-o*m,_=o*g-a*v,w=a*m-i*g,T=c(b,_,w),k=a*l+i*h+o*f,M=g*l+m*h+v*f,A=(b/=T)*l+(_/=T)*h+(w/=T)*f,S=Math.asin(u(k)),E=Math.atan2(A,M),C=this.angle._state,L=C[C.length-1],P=C[C.length-2];L%=2*Math.PI;var I=Math.abs(L+2*Math.PI-E),z=Math.abs(L-E),O=Math.abs(L-2*Math.PI-E);I<z&&(L+=2*Math.PI),O<z&&(L-=2*Math.PI),this.angle.jump(this.angle.lastT(),L,P),this.angle.set(t,E,S)}}}}},{\"filtered-vector\":242,\"gl-mat4/invert\":278,\"gl-mat4/rotate\":283,\"gl-vec3/cross\":339,\"gl-vec3/dot\":344,\"gl-vec3/normalize\":361}],554:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var a=t*e,i=n*t,o=i-(i-t),s=t-o,l=n*e,c=l-(l-e),u=e-c,h=s*u-(a-o*c-s*c-o*u);if(r)return r[0]=h,r[1]=a,r;return[h,a]};var n=+(Math.pow(2,27)+1)},{}],555:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var n=t+e,a=n-t,i=e-a,o=t-(n-a);if(r)return r[0]=o+i,r[1]=n,r;return[o+i,n]}},{}],556:[function(t,e,r){\"use strict\";var n=t(\"../prototype/is\");e.exports=function(t){if(\"function\"!=typeof t)return!1;if(!hasOwnProperty.call(t,\"length\"))return!1;try{if(\"number\"!=typeof t.length)return!1;if(\"function\"!=typeof t.call)return!1;if(\"function\"!=typeof t.apply)return!1}catch(t){return!1}return!n(t)}},{\"../prototype/is\":563}],557:[function(t,e,r){\"use strict\";var n=t(\"../value/is\"),a=t(\"../object/is\"),i=t(\"../string/coerce\"),o=t(\"./to-short-string\"),s=function(t,e){return t.replace(\"%v\",o(e))};e.exports=function(t,e,r){if(!a(r))throw new TypeError(s(e,t));if(!n(t)){if(\"default\"in r)return r.default;if(r.isOptional)return null}var o=i(r.errorMessage);throw n(o)||(o=e),new TypeError(s(o,t))}},{\"../object/is\":560,\"../string/coerce\":564,\"../value/is\":566,\"./to-short-string\":559}],558:[function(t,e,r){\"use strict\";e.exports=function(t){try{return t.toString()}catch(e){try{return String(t)}catch(t){return null}}}},{}],559:[function(t,e,r){\"use strict\";var n=t(\"./safe-to-string\"),a=/[\\n\\r\\u2028\\u2029]/g;e.exports=function(t){var e=n(t);return null===e?\"<Non-coercible to string value>\":(e.length>100&&(e=e.slice(0,99)+\"\\u2026\"),e=e.replace(a,(function(t){switch(t){case\"\\n\":return\"\\\\n\";case\"\\r\":return\"\\\\r\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw new Error(\"Unexpected character\")}})))}},{\"./safe-to-string\":558}],560:[function(t,e,r){\"use strict\";var n=t(\"../value/is\"),a={object:!0,function:!0,undefined:!0};e.exports=function(t){return!!n(t)&&hasOwnProperty.call(a,typeof t)}},{\"../value/is\":566}],561:[function(t,e,r){\"use strict\";var n=t(\"../lib/resolve-exception\"),a=t(\"./is\");e.exports=function(t){return a(t)?t:n(t,\"%v is not a plain function\",arguments[1])}},{\"../lib/resolve-exception\":557,\"./is\":562}],562:[function(t,e,r){\"use strict\";var n=t(\"../function/is\"),a=/^\\s*class[\\s{/}]/,i=Function.prototype.toString;e.exports=function(t){return!!n(t)&&!a.test(i.call(t))}},{\"../function/is\":556}],563:[function(t,e,r){\"use strict\";var n=t(\"../object/is\");e.exports=function(t){if(!n(t))return!1;try{return!!t.constructor&&t.constructor.prototype===t}catch(t){return!1}}},{\"../object/is\":560}],564:[function(t,e,r){\"use strict\";var n=t(\"../value/is\"),a=t(\"../object/is\"),i=Object.prototype.toString;e.exports=function(t){if(!n(t))return null;if(a(t)){var e=t.toString;if(\"function\"!=typeof e)return null;if(e===i)return null}try{return\"\"+t}catch(t){return null}}},{\"../object/is\":560,\"../value/is\":566}],565:[function(t,e,r){\"use strict\";var n=t(\"../lib/resolve-exception\"),a=t(\"./is\");e.exports=function(t){return a(t)?t:n(t,\"Cannot use %v\",arguments[1])}},{\"../lib/resolve-exception\":557,\"./is\":566}],566:[function(t,e,r){\"use strict\";e.exports=function(t){return null!=t}},{}],567:[function(t,e,r){(function(e){\"use strict\";var n=t(\"bit-twiddle\"),a=t(\"dup\"),i=t(\"buffer\").Buffer;e.__TYPEDARRAY_POOL||(e.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),BIGUINT64:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),BIGINT64:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var o=\"undefined\"!=typeof Uint8ClampedArray,s=\"undefined\"!=typeof BigUint64Array,l=\"undefined\"!=typeof BigInt64Array,c=e.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=a([32,0])),c.BIGUINT64||(c.BIGUINT64=a([32,0])),c.BIGINT64||(c.BIGINT64=a([32,0])),c.BUFFER||(c.BUFFER=a([32,0]));var u=c.DATA,h=c.BUFFER;function f(t){if(t){var e=t.length||t.byteLength,r=n.log2(e);u[r].push(t)}}function p(t){t=n.nextPow2(t);var e=n.log2(t),r=u[e];return r.length>0?r.pop():new ArrayBuffer(t)}function d(t){return new Uint8Array(p(t),0,t)}function g(t){return new Uint16Array(p(2*t),0,t)}function m(t){return new Uint32Array(p(4*t),0,t)}function v(t){return new Int8Array(p(t),0,t)}function y(t){return new Int16Array(p(2*t),0,t)}function x(t){return new Int32Array(p(4*t),0,t)}function b(t){return new Float32Array(p(4*t),0,t)}function _(t){return new Float64Array(p(8*t),0,t)}function w(t){return o?new Uint8ClampedArray(p(t),0,t):d(t)}function T(t){return s?new BigUint64Array(p(8*t),0,t):null}function k(t){return l?new BigInt64Array(p(8*t),0,t):null}function M(t){return new DataView(p(t),0,t)}function A(t){t=n.nextPow2(t);var e=n.log2(t),r=h[e];return r.length>0?r.pop():new i(t)}r.free=function(t){if(i.isBuffer(t))h[n.log2(t.length)].push(t);else{if(\"[object ArrayBuffer]\"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|n.log2(e);u[r].push(t)}},r.freeUint8=r.freeUint16=r.freeUint32=r.freeBigUint64=r.freeInt8=r.freeInt16=r.freeInt32=r.freeBigInt64=r.freeFloat32=r.freeFloat=r.freeFloat64=r.freeDouble=r.freeUint8Clamped=r.freeDataView=function(t){f(t.buffer)},r.freeArrayBuffer=f,r.freeBuffer=function(t){h[n.log2(t.length)].push(t)},r.malloc=function(t,e){if(void 0===e||\"arraybuffer\"===e)return p(t);switch(e){case\"uint8\":return d(t);case\"uint16\":return g(t);case\"uint32\":return m(t);case\"int8\":return v(t);case\"int16\":return y(t);case\"int32\":return x(t);case\"float\":case\"float32\":return b(t);case\"double\":case\"float64\":return _(t);case\"uint8_clamped\":return w(t);case\"bigint64\":return k(t);case\"biguint64\":return T(t);case\"buffer\":return A(t);case\"data\":case\"dataview\":return M(t);default:return null}return null},r.mallocArrayBuffer=p,r.mallocUint8=d,r.mallocUint16=g,r.mallocUint32=m,r.mallocInt8=v,r.mallocInt16=y,r.mallocInt32=x,r.mallocFloat32=r.mallocFloat=b,r.mallocFloat64=r.mallocDouble=_,r.mallocUint8Clamped=w,r.mallocBigUint64=T,r.mallocBigInt64=k,r.mallocDataView=M,r.mallocBuffer=A,r.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,h[t].length=0}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"bit-twiddle\":97,buffer:111,dup:176}],568:[function(t,e,r){\"use strict\";function n(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e<t;++e)this.roots[e]=e,this.ranks[e]=0}e.exports=n;var a=n.prototype;Object.defineProperty(a,\"length\",{get:function(){return this.roots.length}}),a.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},a.find=function(t){for(var e=t,r=this.roots;r[t]!==t;)t=r[t];for(;r[e]!==t;){var n=r[e];r[e]=t,e=n}return t},a.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var a=this.ranks,i=this.roots,o=a[r],s=a[n];o<s?i[r]=n:s<o?i[n]=r:(i[n]=r,++a[r])}}},{}],569:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){return 0===t.length?t:e?(r||t.sort(e),function(t,e){for(var r=1,n=t.length,a=t[0],i=t[0],o=1;o<n;++o)if(i=a,e(a=t[o],i)){if(o===r){r++;continue}t[r++]=a}return t.length=r,t}(t,e)):(r||t.sort(),function(t){for(var e=1,r=t.length,n=t[0],a=t[0],i=1;i<r;++i,a=n)if(a=n,(n=t[i])!==a){if(i===e){e++;continue}t[e++]=n}return t.length=e,t}(t))}},{}],570:[function(t,e,r){var n=/[\\'\\\"]/;e.exports=function(t){return t?(n.test(t.charAt(0))&&(t=t.substr(1)),n.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):\"\"}},{}],571:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){Array.isArray(r)||(r=[].slice.call(arguments,2));for(var n=0,a=r.length;n<a;n++){var i=r[n];for(var o in i)if((void 0===e[o]||Array.isArray(e[o])||t[o]!==e[o])&&o in e){var s;if(!0===i[o])s=e[o];else{if(!1===i[o])continue;if(\"function\"==typeof i[o]&&void 0===(s=i[o](e[o],t,e)))continue}t[o]=s}}return t}},{}],572:[function(t,e,r){\"use strict\";e.exports=function(t,e){\"object\"==typeof e&&null!==e||(e={});return n(t,e.canvas||a,e.context||i,e)};var n=t(\"./lib/vtext\"),a=null,i=null;\"undefined\"!=typeof document&&((a=document.createElement(\"canvas\")).width=8192,a.height=1024,i=a.getContext(\"2d\"))},{\"./lib/vtext\":573}],573:[function(t,e,r){e.exports=function(t,e,r,n){var i=64,o=1.25,s={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};n&&(n.size&&n.size>0&&(i=n.size),n.lineSpacing&&n.lineSpacing>0&&(o=n.lineSpacing),n.styletags&&n.styletags.breaklines&&(s.breaklines=!!n.styletags.breaklines),n.styletags&&n.styletags.bolds&&(s.bolds=!!n.styletags.bolds),n.styletags&&n.styletags.italics&&(s.italics=!!n.styletags.italics),n.styletags&&n.styletags.subscripts&&(s.subscripts=!!n.styletags.subscripts),n.styletags&&n.styletags.superscripts&&(s.superscripts=!!n.styletags.superscripts));return r.font=[n.fontStyle,n.fontVariant,n.fontWeight,i+\"px\",n.font].filter((function(t){return t})).join(\" \"),r.textAlign=\"start\",r.textBaseline=\"alphabetic\",r.direction=\"ltr\",f(function(t,e,r,n,i,o){r=r.replace(/\\n/g,\"\"),r=!0===o.breaklines?r.replace(/\\<br\\>/g,\"\\n\"):r.replace(/\\<br\\>/g,\" \");var s=\"\",l=[];for(p=0;p<r.length;++p)l[p]=s;!0===o.bolds&&(l=c(\"b\",\"b|\",r,l));!0===o.italics&&(l=c(\"i\",\"i|\",r,l));!0===o.superscripts&&(l=c(\"sup\",\"+1\",r,l));!0===o.subscripts&&(l=c(\"sub\",\"-1\",r,l));var u=[],h=\"\";for(p=0;p<r.length;++p)null!==l[p]&&(h+=r[p],u.push(l[p]));var f,p,d,g,m,v=h.split(\"\\n\"),y=v.length,x=Math.round(i*n),b=n,_=2*n,w=0,T=y*x+_;t.height<T&&(t.height=T);e.fillStyle=\"#000\",e.fillRect(0,0,t.width,t.height),e.fillStyle=\"#fff\";var k=0,M=\"\";function A(){if(\"\"!==M){var t=e.measureText(M).width;e.fillText(M,b+d,_+g),d+=t}}function S(){return Math.round(m)+\"px \"}function E(t,r){var n=\"\"+e.font;if(!0===o.subscripts){var a=t.indexOf(\"-\"),i=r.indexOf(\"-\"),s=a>-1?parseInt(t[1+a]):0,l=i>-1?parseInt(r[1+i]):0;s!==l&&(n=n.replace(S(),\"?px \"),m*=Math.pow(.75,l-s),n=n.replace(\"?px \",S())),g+=.25*x*(l-s)}if(!0===o.superscripts){var c=t.indexOf(\"+\"),u=r.indexOf(\"+\"),h=c>-1?parseInt(t[1+c]):0,f=u>-1?parseInt(r[1+u]):0;h!==f&&(n=n.replace(S(),\"?px \"),m*=Math.pow(.75,f-h),n=n.replace(\"?px \",S())),g-=.25*x*(f-h)}if(!0===o.bolds){var p=t.indexOf(\"b|\")>-1,d=r.indexOf(\"b|\")>-1;!p&&d&&(n=v?n.replace(\"italic \",\"italic bold \"):\"bold \"+n),p&&!d&&(n=n.replace(\"bold \",\"\"))}if(!0===o.italics){var v=t.indexOf(\"i|\")>-1,y=r.indexOf(\"i|\")>-1;!v&&y&&(n=\"italic \"+n),v&&!y&&(n=n.replace(\"italic \",\"\"))}e.font=n}for(f=0;f<y;++f){var C=v[f]+\"\\n\";for(d=0,g=f*x,m=n,M=\"\",p=0;p<C.length;++p){var L=p+k<u.length?u[p+k]:u[u.length-1];s===L?M+=C[p]:(A(),M=C[p],void 0!==L&&(E(s,L),s=L))}A(),k+=C.length;var P=0|Math.round(d+2*b);w<P&&(w=P)}var I=w,z=_+x*y;return a(e.getImageData(0,0,I,z).data,[z,I,4]).pick(-1,-1,0).transpose(1,0)}(e,r,t,i,o,s),n,i)},e.exports.processPixels=f;var n=t(\"surface-nets\"),a=t(\"ndarray\"),i=t(\"simplify-planar-graph\"),o=t(\"clean-pslg\"),s=t(\"cdt2d\"),l=t(\"planar-graph-to-polyline\");function c(t,e,r,n){for(var a=\"<\"+t+\">\",i=\"</\"+t+\">\",o=a.length,s=i.length,l=\"+\"===e[0]||\"-\"===e[0],c=0,u=-s;c>-1&&-1!==(c=r.indexOf(a,c))&&-1!==(u=r.indexOf(i,c+o))&&!(u<=c);){for(var h=c;h<u+s;++h)if(h<c+o||h>=u)n[h]=null,r=r.substr(0,h)+\" \"+r.substr(h+1);else if(null!==n[h]){var f=n[h].indexOf(e[0]);-1===f?n[h]+=e:l&&(n[h]=n[h].substr(0,f+1)+(1+parseInt(n[h][f+1]))+n[h].substr(f+2))}var p=c+o,d=r.substr(p,u-p).indexOf(a);c=-1!==d?d:u+s}return n}function u(t,e){var r=n(t,128);return e?i(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function h(t,e,r,n){var a=u(t,n),i=function(t,e,r){for(var n=e.textAlign||\"start\",a=e.textBaseline||\"alphabetic\",i=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l<s;++l)for(var c=t[l],u=0;u<2;++u)i[u]=0|Math.min(i[u],c[u]),o[u]=0|Math.max(o[u],c[u]);var h=0;switch(n){case\"center\":h=-.5*(i[0]+o[0]);break;case\"right\":case\"end\":h=-o[0];break;case\"left\":case\"start\":h=-i[0];break;default:throw new Error(\"vectorize-text: Unrecognized textAlign: '\"+n+\"'\")}var f=0;switch(a){case\"hanging\":case\"top\":f=-i[1];break;case\"middle\":f=-.5*(i[1]+o[1]);break;case\"alphabetic\":case\"ideographic\":f=-3*r;break;case\"bottom\":f=-o[1];break;default:throw new Error(\"vectorize-text: Unrecoginized textBaseline: '\"+a+\"'\")}var p=1/r;return\"lineHeight\"in e?p*=+e.lineHeight:\"width\"in e?p=e.width/(o[0]-i[0]):\"height\"in e&&(p=e.height/(o[1]-i[1])),t.map((function(t){return[p*(t[0]+h),p*(t[1]+f)]}))}(a.positions,e,r),c=a.edges,h=\"ccw\"===e.orientation;if(o(i,c),e.polygons||e.polygon||e.polyline){for(var f=l(c,i),p=new Array(f.length),d=0;d<f.length;++d){for(var g=f[d],m=new Array(g.length),v=0;v<g.length;++v){for(var y=g[v],x=new Array(y.length),b=0;b<y.length;++b)x[b]=i[y[b]].slice();h&&x.reverse(),m[v]=x}p[d]=m}return p}return e.triangles||e.triangulate||e.triangle?{cells:s(i,c,{delaunay:!1,exterior:!1,interior:!0}),positions:i}:{edges:c,positions:i}}function f(t,e,r){try{return h(t,e,r,!0)}catch(t){}try{return h(t,e,r,!1)}catch(t){}return e.polygons||e.polyline||e.polygon?[]:e.triangles||e.triangulate||e.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}},{cdt2d:112,\"clean-pslg\":121,ndarray:469,\"planar-graph-to-polyline\":488,\"simplify-planar-graph\":534,\"surface-nets\":542}],574:[function(t,e,r){!function(){\"use strict\";if(\"undefined\"==typeof ses||!ses.ok||ses.ok()){\"undefined\"!=typeof ses&&(ses.weakMapPermitHostObjects=g);var t=!1;if(\"function\"==typeof WeakMap){var r=WeakMap;if(\"undefined\"!=typeof navigator&&/Firefox/.test(navigator.userAgent));else{var n=new r,a=Object.freeze({});if(n.set(a,1),1===n.get(a))return void(e.exports=WeakMap);t=!0}}Object.prototype.hasOwnProperty;var i=Object.getOwnPropertyNames,o=Object.defineProperty,s=Object.isExtensible,l=\"weakmap:ident:\"+Math.random()+\"___\";if(\"undefined\"!=typeof crypto&&\"function\"==typeof crypto.getRandomValues&&\"function\"==typeof ArrayBuffer&&\"function\"==typeof Uint8Array){var c=new ArrayBuffer(25),u=new Uint8Array(c);crypto.getRandomValues(u),l=\"weakmap:rand:\"+Array.prototype.map.call(u,(function(t){return(t%36).toString(36)})).join(\"\")+\"___\"}if(o(Object,\"getOwnPropertyNames\",{value:function(t){return i(t).filter(m)}}),\"getPropertyNames\"in Object){var h=Object.getPropertyNames;o(Object,\"getPropertyNames\",{value:function(t){return h(t).filter(m)}})}!function(){var t=Object.freeze;o(Object,\"freeze\",{value:function(e){return v(e),t(e)}});var e=Object.seal;o(Object,\"seal\",{value:function(t){return v(t),e(t)}});var r=Object.preventExtensions;o(Object,\"preventExtensions\",{value:function(t){return v(t),r(t)}})}();var f=!1,p=0,d=function(){this instanceof d||x();var t=[],e=[],r=p++;return Object.create(d.prototype,{get___:{value:y((function(n,a){var i,o=v(n);return o?r in o?o[r]:a:(i=t.indexOf(n))>=0?e[i]:a}))},has___:{value:y((function(e){var n=v(e);return n?r in n:t.indexOf(e)>=0}))},set___:{value:y((function(n,a){var i,o=v(n);return o?o[r]=a:(i=t.indexOf(n))>=0?e[i]=a:(i=t.length,e[i]=a,t[i]=n),this}))},delete___:{value:y((function(n){var a,i,o=v(n);return o?r in o&&delete o[r]:!((a=t.indexOf(n))<0)&&(i=t.length-1,t[a]=void 0,e[a]=e[i],t[a]=t[i],t.length=i,e.length=i,!0)}))}})};d.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),\"function\"==typeof r?function(){function n(){this instanceof d||x();var e,n=new r,a=void 0,i=!1;return e=t?function(t,e){return n.set(t,e),n.has(t)||(a||(a=new d),a.set(t,e)),this}:function(t,e){if(i)try{n.set(t,e)}catch(r){a||(a=new d),a.set___(t,e)}else n.set(t,e);return this},Object.create(d.prototype,{get___:{value:y((function(t,e){return a?n.has(t)?n.get(t):a.get___(t,e):n.get(t,e)}))},has___:{value:y((function(t){return n.has(t)||!!a&&a.has___(t)}))},set___:{value:y(e)},delete___:{value:y((function(t){var e=!!n.delete(t);return a&&a.delete___(t)||e}))},permitHostObjects___:{value:y((function(t){if(t!==g)throw new Error(\"bogus call to permitHostObjects___\");i=!0}))}})}t&&\"undefined\"!=typeof Proxy&&(Proxy=void 0),n.prototype=d.prototype,e.exports=n,Object.defineProperty(WeakMap.prototype,\"constructor\",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(\"undefined\"!=typeof Proxy&&(Proxy=void 0),e.exports=d)}function g(t){t.permitHostObjects___&&t.permitHostObjects___(g)}function m(t){return!(\"weakmap:\"==t.substr(0,\"weakmap:\".length)&&\"___\"===t.substr(t.length-3))}function v(t){if(t!==Object(t))throw new TypeError(\"Not an object: \"+t);var e=t[l];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,l,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(t){return}}}function y(t){return t.prototype=null,Object.freeze(t)}function x(){f||\"undefined\"==typeof console||(f=!0,console.warn(\"WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future.\"))}}()},{}],575:[function(t,e,r){var n=t(\"./hidden-store.js\");e.exports=function(){var t={};return function(e){if((\"object\"!=typeof e||null===e)&&\"function\"!=typeof e)throw new Error(\"Weakmap-shim: Key must be object\");var r=e.valueOf(t);return r&&r.identity===t?r:n(e,t)}}},{\"./hidden-store.js\":576}],576:[function(t,e,r){e.exports=function(t,e){var r={identity:e},n=t.valueOf;return Object.defineProperty(t,\"valueOf\",{value:function(t){return t!==e?n.apply(this,arguments):r},writable:!0}),r}},{}],577:[function(t,e,r){var n=t(\"./create-store.js\");e.exports=function(){var t=n();return{get:function(e,r){var n=t(e);return n.hasOwnProperty(\"value\")?n.value:r},set:function(e,r){return t(e).value=r,this},has:function(e){return\"value\"in t(e)},delete:function(e){return delete t(e).value}}}},{\"./create-store.js\":575}],578:[function(t,e,r){var n=t(\"get-canvas-context\");e.exports=function(t){return n(\"webgl\",t)}},{\"get-canvas-context\":249}],579:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\"),i=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,a(o.prototype,{name:\"Chinese\",jdEpoch:1721425.5,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{\"\":{name:\"Chinese\",epochs:[\"BEC\",\"EC\"],monthNumbers:function(t,e){if(\"string\"==typeof t){var r=t.match(l);return r?r[0]:\"\"}var n=this._validateYear(t),a=t.month(),i=\"\"+this.toChineseMonth(n,a);return e&&i.length<2&&(i=\"0\"+i),this.isIntercalaryMonth(n,a)&&(i+=\"i\"),i},monthNames:function(t){if(\"string\"==typeof t){var e=t.match(c);return e?e[0]:\"\"}var r=this._validateYear(t),n=t.month(),a=[\"\\u4e00\\u6708\",\"\\u4e8c\\u6708\",\"\\u4e09\\u6708\",\"\\u56db\\u6708\",\"\\u4e94\\u6708\",\"\\u516d\\u6708\",\"\\u4e03\\u6708\",\"\\u516b\\u6708\",\"\\u4e5d\\u6708\",\"\\u5341\\u6708\",\"\\u5341\\u4e00\\u6708\",\"\\u5341\\u4e8c\\u6708\"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(a=\"\\u95f0\"+a),a},monthNamesShort:function(t){if(\"string\"==typeof t){var e=t.match(u);return e?e[0]:\"\"}var r=this._validateYear(t),n=t.month(),a=[\"\\u4e00\",\"\\u4e8c\",\"\\u4e09\",\"\\u56db\",\"\\u4e94\",\"\\u516d\",\"\\u4e03\",\"\\u516b\",\"\\u4e5d\",\"\\u5341\",\"\\u5341\\u4e00\",\"\\u5341\\u4e8c\"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(a=\"\\u95f0\"+a),a},parseMonth:function(t,e){t=this._validateYear(t);var r,n=parseInt(e);if(isNaN(n))\"\\u95f0\"===e[0]&&(r=!0,e=e.substring(1)),\"\\u6708\"===e[e.length-1]&&(e=e.substring(0,e.length-1)),n=1+[\"\\u4e00\",\"\\u4e8c\",\"\\u4e09\",\"\\u56db\",\"\\u4e94\",\"\\u516d\",\"\\u4e03\",\"\\u516b\",\"\\u4e5d\",\"\\u5341\",\"\\u5341\\u4e00\",\"\\u5341\\u4e8c\"].indexOf(e);else{var a=e[e.length-1];r=\"i\"===a||\"I\"===a}return this.toMonthIndex(t,n,r)},dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:1,isRTL:!1}},_validateYear:function(t,e){if(t.year&&(t=t.year()),\"number\"!=typeof t||t<1888||t>2111)throw e.replace(/\\{0\\}/,this.local.name);return t},toMonthIndex:function(t,e,r){var a=this.intercalaryMonth(t);if(r&&e!==a||e<1||e>12)throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return a?!r&&e<=a?e-1:e:e-1},toChineseMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);if(e<0||e>(r?12:11))throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return r?e<r?e+1:e:e+1},intercalaryMonth:function(t){return t=this._validateYear(t),h[t-h[0]]>>13},isIntercalaryMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);return!!r&&r===e},leapYear:function(t){return 0!==this.intercalaryMonth(t)},weekOfYear:function(t,e,r){var a,o=this._validateYear(t,n.local.invalidyear),s=f[o-f[0]],l=s>>9&4095,c=s>>5&15,u=31&s;(a=i.newDate(l,c,u)).add(4-(a.dayOfWeek()||7),\"d\");var h=this.toJD(t,e,r)-a.toJD();return 1+Math.floor(h/7)},monthsInYear:function(t){return this.leapYear(t)?13:12},daysInMonth:function(t,e){t.year&&(e=t.month(),t=t.year()),t=this._validateYear(t);var r=h[t-h[0]];if(e>(r>>13?12:11))throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return r&1<<12-e?30:29},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,s,r,n.local.invalidDate);t=this._validateYear(a.year()),e=a.month(),r=a.day();var o=this.isIntercalaryMonth(t,e),s=this.toChineseMonth(t,e),l=function(t,e,r,n,a){var i,o,s;if(\"object\"==typeof t)o=t,i=e||{};else{var l;if(!(\"number\"==typeof t&&t>=1888&&t<=2111))throw new Error(\"Lunar year outside range 1888-2111\");if(!(\"number\"==typeof e&&e>=1&&e<=12))throw new Error(\"Lunar month outside range 1 - 12\");if(!(\"number\"==typeof r&&r>=1&&r<=30))throw new Error(\"Lunar day outside range 1 - 30\");\"object\"==typeof n?(l=!1,i=n):(l=!!n,i=a||{}),o={year:t,month:e,day:r,isIntercalary:l}}s=o.day-1;var c,u=h[o.year-h[0]],p=u>>13;c=p&&(o.month>p||o.isIntercalary)?o.month:o.month-1;for(var d=0;d<c;d++){s+=u&1<<12-d?30:29}var g=f[o.year-f[0]],m=new Date(g>>9&4095,(g>>5&15)-1,(31&g)+s);return i.year=m.getFullYear(),i.month=1+m.getMonth(),i.day=m.getDate(),i}(t,s,r,o);return i.toJD(l.year,l.month,l.day)},fromJD:function(t){var e=i.fromJD(t),r=function(t,e,r,n){var a,i;if(\"object\"==typeof t)a=t,i=e||{};else{if(!(\"number\"==typeof t&&t>=1888&&t<=2111))throw new Error(\"Solar year outside range 1888-2111\");if(!(\"number\"==typeof e&&e>=1&&e<=12))throw new Error(\"Solar month outside range 1 - 12\");if(!(\"number\"==typeof r&&r>=1&&r<=31))throw new Error(\"Solar day outside range 1 - 31\");a={year:t,month:e,day:r},i=n||{}}var o=f[a.year-f[0]],s=a.year<<9|a.month<<5|a.day;i.year=s>=o?a.year:a.year-1,o=f[i.year-f[0]];var l,c=new Date(o>>9&4095,(o>>5&15)-1,31&o),u=new Date(a.year,a.month-1,a.day);l=Math.round((u-c)/864e5);var p,d=h[i.year-h[0]];for(p=0;p<13;p++){var g=d&1<<12-p?30:29;if(l<g)break;l-=g}var m=d>>13;!m||p<m?(i.isIntercalary=!1,i.month=1+p):p===m?(i.isIntercalary=!0,i.month=p):(i.isIntercalary=!1,i.month=p);return i.day=1+l,i}(e.year(),e.month(),e.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(t){var e=t.match(s),r=this._validateYear(+e[1]),n=+e[2],a=!!e[3],i=this.toMonthIndex(r,n,a),o=+e[4];return this.newDate(r,i,o)},add:function(t,e,r){var n=t.year(),a=t.month(),i=this.isIntercalaryMonth(n,a),s=this.toChineseMonth(n,a),l=Object.getPrototypeOf(o.prototype).add.call(this,t,e,r);if(\"y\"===r){var c=l.year(),u=l.month(),h=this.isIntercalaryMonth(c,s),f=i&&h?this.toMonthIndex(c,s,!0):this.toMonthIndex(c,s,!1);f!==u&&l.month(f)}return l}});var s=/^\\s*(-?\\d\\d\\d\\d|\\d\\d)[-/](\\d?\\d)([iI]?)[-/](\\d?\\d)/m,l=/^\\d?\\d[iI]?/m,c=/^\\u95f0?\\u5341?[\\u4e00\\u4e8c\\u4e09\\u56db\\u4e94\\u516d\\u4e03\\u516b\\u4e5d]?\\u6708/m,u=/^\\u95f0?\\u5341?[\\u4e00\\u4e8c\\u4e09\\u56db\\u4e94\\u516d\\u4e03\\u516b\\u4e5d]?/m;n.calendars.chinese=o;var h=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],f=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904]},{\"../main\":593,\"object-assign\":473}],580:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Coptic\",jdEpoch:1825029.5,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Coptic\",epochs:[\"BAM\",\"AM\"],monthNames:[\"Thout\",\"Paopi\",\"Hathor\",\"Koiak\",\"Tobi\",\"Meshir\",\"Paremhat\",\"Paremoude\",\"Pashons\",\"Paoni\",\"Epip\",\"Mesori\",\"Pi Kogi Enavot\"],monthNamesShort:[\"Tho\",\"Pao\",\"Hath\",\"Koi\",\"Tob\",\"Mesh\",\"Pat\",\"Pad\",\"Pash\",\"Pao\",\"Epi\",\"Meso\",\"PiK\"],dayNames:[\"Tkyriaka\",\"Pesnau\",\"Pshoment\",\"Peftoou\",\"Ptiou\",\"Psoou\",\"Psabbaton\"],dayNamesShort:[\"Tky\",\"Pes\",\"Psh\",\"Pef\",\"Pti\",\"Pso\",\"Psa\"],dayNamesMin:[\"Tk\",\"Pes\",\"Psh\",\"Pef\",\"Pt\",\"Pso\",\"Psa\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==3||t%4==-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[\"\"].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return(t=a.year())<0&&t++,a.day()+30*(a.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,a=e-30*(n-1)+1;return this.newDate(r,n,a)}}),n.calendars.coptic=i},{\"../main\":593,\"object-assign\":473}],581:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Discworld\",jdEpoch:1721425.5,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Discworld\",epochs:[\"BUC\",\"UC\"],monthNames:[\"Ick\",\"Offle\",\"February\",\"March\",\"April\",\"May\",\"June\",\"Grune\",\"August\",\"Spune\",\"Sektober\",\"Ember\",\"December\"],monthNamesShort:[\"Ick\",\"Off\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Gru\",\"Aug\",\"Spu\",\"Sek\",\"Emb\",\"Dec\"],dayNames:[\"Sunday\",\"Octeday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Oct\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Oc\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:2,isRTL:!1}},leapYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),!1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),13},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),400},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(t,e,r){return(this._validate(t,e,r,n.local.invalidDate).day()+1)%8},weekDay:function(t,e,r){var n=this.dayOfWeek(t,e,r);return n>=2&&n<=6},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return{century:o[Math.floor((a.year()-1)/100)+1]||\"\"}},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year()+(a.year()<0?1:0),e=a.month(),(r=a.day())+(e>1?16:0)+(e>2?32*(e-2):0)+400*(t-1)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t+.5)-Math.floor(this.jdEpoch)-1;var e=Math.floor(t/400)+1;t-=400*(e-1),t+=t>15?16:0;var r=Math.floor(t/32)+1,n=t-32*(r-1)+1;return this.newDate(e<=0?e-1:e,r,n)}});var o={20:\"Fruitbat\",21:\"Anchovy\"};n.calendars.discworld=i},{\"../main\":593,\"object-assign\":473}],582:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Ethiopian\",jdEpoch:1724220.5,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Ethiopian\",epochs:[\"BEE\",\"EE\"],monthNames:[\"Meskerem\",\"Tikemet\",\"Hidar\",\"Tahesas\",\"Tir\",\"Yekatit\",\"Megabit\",\"Miazia\",\"Genbot\",\"Sene\",\"Hamle\",\"Nehase\",\"Pagume\"],monthNamesShort:[\"Mes\",\"Tik\",\"Hid\",\"Tah\",\"Tir\",\"Yek\",\"Meg\",\"Mia\",\"Gen\",\"Sen\",\"Ham\",\"Neh\",\"Pag\"],dayNames:[\"Ehud\",\"Segno\",\"Maksegno\",\"Irob\",\"Hamus\",\"Arb\",\"Kidame\"],dayNamesShort:[\"Ehu\",\"Seg\",\"Mak\",\"Iro\",\"Ham\",\"Arb\",\"Kid\"],dayNamesMin:[\"Eh\",\"Se\",\"Ma\",\"Ir\",\"Ha\",\"Ar\",\"Ki\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==3||t%4==-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[\"\"].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return(t=a.year())<0&&t++,a.day()+30*(a.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,a=e-30*(n-1)+1;return this.newDate(r,n,a)}}),n.calendars.ethiopian=i},{\"../main\":593,\"object-assign\":473}],583:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Hebrew\",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{\"\":{name:\"Hebrew\",epochs:[\"BAM\",\"AM\"],monthNames:[\"Nisan\",\"Iyar\",\"Sivan\",\"Tammuz\",\"Av\",\"Elul\",\"Tishrei\",\"Cheshvan\",\"Kislev\",\"Tevet\",\"Shevat\",\"Adar\",\"Adar II\"],monthNamesShort:[\"Nis\",\"Iya\",\"Siv\",\"Tam\",\"Av\",\"Elu\",\"Tis\",\"Che\",\"Kis\",\"Tev\",\"She\",\"Ada\",\"Ad2\"],dayNames:[\"Yom Rishon\",\"Yom Sheni\",\"Yom Shlishi\",\"Yom Revi'i\",\"Yom Chamishi\",\"Yom Shishi\",\"Yom Shabbat\"],dayNamesShort:[\"Ris\",\"She\",\"Shl\",\"Rev\",\"Cha\",\"Shi\",\"Sha\"],dayNamesMin:[\"Ri\",\"She\",\"Shl\",\"Re\",\"Ch\",\"Shi\",\"Sha\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return this._leapYear(e.year())},_leapYear:function(t){return o(7*(t=t<0?t+1:t)+1,19)<7},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),this._leapYear(t.year?t.year():t)?13:12},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year(),this.toJD(-1===t?1:t+1,7,1)-this.toJD(t,7,1)},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,n.local.invalidMonth),12===e&&this.leapYear(t)||8===e&&5===o(this.daysInYear(t),10)?30:9===e&&3===o(this.daysInYear(t),10)?29:this.daysPerMonth[e-1]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return{yearType:(this.leapYear(a)?\"embolismic\":\"common\")+\" \"+[\"deficient\",\"regular\",\"complete\"][this.daysInYear(a)%10-3]}},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=t<=0?t+1:t,o=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(e<7){for(var s=7;s<=this.monthsInYear(t);s++)o+=this.daysInMonth(t,s);for(s=1;s<e;s++)o+=this.daysInMonth(t,s)}else for(s=7;s<e;s++)o+=this.daysInMonth(t,s);return o},_delay1:function(t){var e=Math.floor((235*t-234)/19),r=12084+13753*e,n=29*e+Math.floor(r/25920);return o(3*(n+1),7)<3&&n++,n},_delay2:function(t){var e=this._delay1(t-1),r=this._delay1(t);return this._delay1(t+1)-r==356?2:r-e==382?1:0},fromJD:function(t){t=Math.floor(t)+.5;for(var e=Math.floor(98496*(t-this.jdEpoch)/35975351)-1;t>=this.toJD(-1===e?1:e+1,7,1);)e++;for(var r=t<this.toJD(e,1,1)?7:1;t>this.toJD(e,r,this.daysInMonth(e,r));)r++;var n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),n.calendars.hebrew=i},{\"../main\":593,\"object-assign\":473}],584:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Islamic\",jdEpoch:1948439.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Islamic\",epochs:[\"BH\",\"AH\"],monthNames:[\"Muharram\",\"Safar\",\"Rabi' al-awwal\",\"Rabi' al-thani\",\"Jumada al-awwal\",\"Jumada al-thani\",\"Rajab\",\"Sha'aban\",\"Ramadan\",\"Shawwal\",\"Dhu al-Qi'dah\",\"Dhu al-Hijjah\"],monthNamesShort:[\"Muh\",\"Saf\",\"Rab1\",\"Rab2\",\"Jum1\",\"Jum2\",\"Raj\",\"Sha'\",\"Ram\",\"Shaw\",\"DhuQ\",\"DhuH\"],dayNames:[\"Yawm al-ahad\",\"Yawm al-ithnayn\",\"Yawm ath-thulaathaa'\",\"Yawm al-arbi'aa'\",\"Yawm al-kham\\u012bs\",\"Yawm al-jum'a\",\"Yawm as-sabt\"],dayNamesShort:[\"Aha\",\"Ith\",\"Thu\",\"Arb\",\"Kha\",\"Jum\",\"Sab\"],dayNamesMin:[\"Ah\",\"It\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!1}},leapYear:function(t){return(11*this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year()+14)%30<11},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return this.leapYear(t)?355:354},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year(),e=a.month(),t=t<=0?t+1:t,(r=a.day())+Math.ceil(29.5*(e-1))+354*(t-1)+Math.floor((3+11*t)/30)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t)+.5;var e=Math.floor((30*(t-this.jdEpoch)+10646)/10631);e=e<=0?e-1:e;var r=Math.min(12,Math.ceil((t-29-this.toJD(e,1,1))/29.5)+1),n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),n.calendars.islamic=i},{\"../main\":593,\"object-assign\":473}],585:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Julian\",jdEpoch:1721423.5,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Julian\",epochs:[\"BC\",\"AD\"],monthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],monthNamesShort:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"mm/dd/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()<0?e.year()+1:e.year())%4==0},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year(),e=a.month(),r=a.day(),t<0&&t++,e<=2&&(t--,e+=12),Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+r-1524.5},fromJD:function(t){var e=Math.floor(t+.5)+1524,r=Math.floor((e-122.1)/365.25),n=Math.floor(365.25*r),a=Math.floor((e-n)/30.6001),i=a-Math.floor(a<14?1:13),o=r-Math.floor(i>2?4716:4715),s=e-n-Math.floor(30.6001*a);return o<=0&&o--,this.newDate(o,i,s)}}),n.calendars.julian=i},{\"../main\":593,\"object-assign\":473}],586:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}function s(t,e){return o(t-1,e)+1}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Mayan\",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{\"\":{name:\"Mayan\",epochs:[\"\",\"\"],monthNames:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\"],monthNamesShort:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\"],dayNames:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\"],dayNamesShort:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\"],dayNamesMin:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\"],digits:null,dateFormat:\"YYYY.m.d\",firstDay:0,isRTL:!1,haabMonths:[\"Pop\",\"Uo\",\"Zip\",\"Zotz\",\"Tzec\",\"Xul\",\"Yaxkin\",\"Mol\",\"Chen\",\"Yax\",\"Zac\",\"Ceh\",\"Mac\",\"Kankin\",\"Muan\",\"Pax\",\"Kayab\",\"Cumku\",\"Uayeb\"],tzolkinMonths:[\"Imix\",\"Ik\",\"Akbal\",\"Kan\",\"Chicchan\",\"Cimi\",\"Manik\",\"Lamat\",\"Muluc\",\"Oc\",\"Chuen\",\"Eb\",\"Ben\",\"Ix\",\"Men\",\"Cib\",\"Caban\",\"Etznab\",\"Cauac\",\"Ahau\"]}},leapYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),!1},formatYear:function(t){t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year();var e=Math.floor(t/400);return t%=400,t+=t<0?400:0,e+\".\"+Math.floor(t/20)+\".\"+t%20},forYear:function(t){if((t=t.split(\".\")).length<3)throw\"Invalid Mayan year\";for(var e=0,r=0;r<t.length;r++){var n=parseInt(t[r],10);if(Math.abs(n)>19||r>0&&n<0)throw\"Invalid Mayan year\";e=20*e+n}return e},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),18},weekOfYear:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate),0},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),360},daysInMonth:function(t,e){return this._validate(t,e,this.minDay,n.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate).day()},weekDay:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate),!0},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate).toJD(),i=this._toHaab(a),o=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(t){var e=o((t-=this.jdEpoch)+8+340,365);return[Math.floor(e/20)+1,o(e,20)]},_toTzolkin:function(t){return[s((t-=this.jdEpoch)+20,20),s(t+4,13)]},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return a.day()+20*a.month()+360*a.year()+this.jdEpoch},fromJD:function(t){t=Math.floor(t)+.5-this.jdEpoch;var e=Math.floor(t/360);t%=360,t+=t<0?360:0;var r=Math.floor(t/20),n=t%20;return this.newDate(e,r,n)}}),n.calendars.mayan=i},{\"../main\":593,\"object-assign\":473}],587:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar;var o=n.instance(\"gregorian\");a(i.prototype,{name:\"Nanakshahi\",jdEpoch:2257673.5,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Nanakshahi\",epochs:[\"BN\",\"AN\"],monthNames:[\"Chet\",\"Vaisakh\",\"Jeth\",\"Harh\",\"Sawan\",\"Bhadon\",\"Assu\",\"Katak\",\"Maghar\",\"Poh\",\"Magh\",\"Phagun\"],monthNamesShort:[\"Che\",\"Vai\",\"Jet\",\"Har\",\"Saw\",\"Bha\",\"Ass\",\"Kat\",\"Mgr\",\"Poh\",\"Mgh\",\"Pha\"],dayNames:[\"Somvaar\",\"Mangalvar\",\"Budhvaar\",\"Veervaar\",\"Shukarvaar\",\"Sanicharvaar\",\"Etvaar\"],dayNamesShort:[\"Som\",\"Mangal\",\"Budh\",\"Veer\",\"Shukar\",\"Sanichar\",\"Et\"],dayNamesMin:[\"So\",\"Ma\",\"Bu\",\"Ve\",\"Sh\",\"Sa\",\"Et\"],digits:null,dateFormat:\"dd-mm-yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[\"\"].invalidYear);return o.leapYear(e.year()+(e.year()<1?1:0)+1469)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(1-(n.dayOfWeek()||7),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidMonth);(t=a.year())<0&&t++;for(var i=a.day(),s=1;s<a.month();s++)i+=this.daysPerMonth[s-1];return i+o.toJD(t+1468,3,13)},fromJD:function(t){t=Math.floor(t+.5);for(var e=Math.floor((t-(this.jdEpoch-1))/366);t>=this.toJD(e+1,1,1);)e++;for(var r=t-Math.floor(this.toJD(e,1,1)+.5)+1,n=1;r>this.daysInMonth(e,n);)r-=this.daysInMonth(e,n),n++;return this.newDate(e,n,r)}}),n.calendars.nanakshahi=i},{\"../main\":593,\"object-assign\":473}],588:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Nepali\",jdEpoch:1700709.5,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{\"\":{name:\"Nepali\",epochs:[\"BBS\",\"ABS\"],monthNames:[\"Baisakh\",\"Jestha\",\"Ashadh\",\"Shrawan\",\"Bhadra\",\"Ashwin\",\"Kartik\",\"Mangsir\",\"Paush\",\"Mangh\",\"Falgun\",\"Chaitra\"],monthNamesShort:[\"Bai\",\"Je\",\"As\",\"Shra\",\"Bha\",\"Ash\",\"Kar\",\"Mang\",\"Pau\",\"Ma\",\"Fal\",\"Chai\"],dayNames:[\"Aaitabaar\",\"Sombaar\",\"Manglbaar\",\"Budhabaar\",\"Bihibaar\",\"Shukrabaar\",\"Shanibaar\"],dayNamesShort:[\"Aaita\",\"Som\",\"Mangl\",\"Budha\",\"Bihi\",\"Shukra\",\"Shani\"],dayNamesMin:[\"Aai\",\"So\",\"Man\",\"Bu\",\"Bi\",\"Shu\",\"Sha\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:1,isRTL:!1}},leapYear:function(t){return this.daysInYear(t)!==this.daysPerYear},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){if(t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year(),\"undefined\"==typeof this.NEPALI_CALENDAR_DATA[t])return this.daysPerYear;for(var e=0,r=this.minMonth;r<=12;r++)e+=this.NEPALI_CALENDAR_DATA[t][r];return e},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,n.local.invalidMonth),\"undefined\"==typeof this.NEPALI_CALENDAR_DATA[t]?this.daysPerMonth[e-1]:this.NEPALI_CALENDAR_DATA[t][e]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=n.instance(),o=0,s=e,l=t;this._createMissingCalendarData(t);var c=t-(s>9||9===s&&r>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==e&&(o=r,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===e?(o+=r-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=i.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],i.newDate(c,1,1).add(o,\"d\").toJD()},fromJD:function(t){var e=n.instance().fromJD(t),r=e.year(),a=e.dayOfYear(),i=r+56;this._createMissingCalendarData(i);for(var o=9,s=this.NEPALI_CALENDAR_DATA[i][0],l=this.NEPALI_CALENDAR_DATA[i][o]-s+1;a>l;)++o>12&&(o=1,i++),l+=this.NEPALI_CALENDAR_DATA[i][o];var c=this.NEPALI_CALENDAR_DATA[i][o]-(l-a);return this.newDate(i,o,c)},_createMissingCalendarData:function(t){var e=this.daysPerMonth.slice(0);e.unshift(17);for(var r=t-1;r<t+2;r++)\"undefined\"==typeof this.NEPALI_CALENDAR_DATA[r]&&(this.NEPALI_CALENDAR_DATA[r]=e)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),n.calendars.nepali=i},{\"../main\":593,\"object-assign\":473}],589:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Persian\",jdEpoch:1948320.5,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Persian\",epochs:[\"BP\",\"AP\"],monthNames:[\"Farvardin\",\"Ordibehesht\",\"Khordad\",\"Tir\",\"Mordad\",\"Shahrivar\",\"Mehr\",\"Aban\",\"Azar\",\"Day\",\"Bahman\",\"Esfand\"],monthNamesShort:[\"Far\",\"Ord\",\"Kho\",\"Tir\",\"Mor\",\"Sha\",\"Meh\",\"Aba\",\"Aza\",\"Day\",\"Bah\",\"Esf\"],dayNames:[\"Yekshambe\",\"Doshambe\",\"Seshambe\",\"Ch\\xe6harshambe\",\"Panjshambe\",\"Jom'e\",\"Shambe\"],dayNamesShort:[\"Yek\",\"Do\",\"Se\",\"Ch\\xe6\",\"Panj\",\"Jom\",\"Sha\"],dayNamesMin:[\"Ye\",\"Do\",\"Se\",\"Ch\",\"Pa\",\"Jo\",\"Sh\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return 682*((e.year()-(e.year()>0?474:473))%2820+474+38)%2816<682},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-(n.dayOfWeek()+1)%7,\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=t-(t>=0?474:473),s=474+o(i,2820);return r+(e<=7?31*(e-1):30*(e-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(i/2820)+this.jdEpoch-1},fromJD:function(t){var e=(t=Math.floor(t)+.5)-this.toJD(475,1,1),r=Math.floor(e/1029983),n=o(e,1029983),a=2820;if(1029982!==n){var i=Math.floor(n/366),s=o(n,366);a=Math.floor((2134*i+2816*s+2815)/1028522)+i+1}var l=a+2820*r+474;l=l<=0?l-1:l;var c=t-this.toJD(l,1,1)+1,u=c<=186?Math.ceil(c/31):Math.ceil((c-6)/30),h=t-this.toJD(l,u,1)+1;return this.newDate(l,u,h)}}),n.calendars.persian=i,n.calendars.jalali=i},{\"../main\":593,\"object-assign\":473}],590:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\"),i=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,a(o.prototype,{name:\"Taiwan\",jdEpoch:2419402.5,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Taiwan\",epochs:[\"BROC\",\"ROC\"],monthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],monthNamesShort:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:1,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(e.year());return i.leapYear(t)},weekOfYear:function(t,e,r){var a=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(a.year());return i.weekOfYear(t,a.month(),a.day())},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=this._t2gYear(a.year());return i.toJD(t,a.month(),a.day())},fromJD:function(t){var e=i.fromJD(t),r=this._g2tYear(e.year());return this.newDate(r,e.month(),e.day())},_t2gYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)},_g2tYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)}}),n.calendars.taiwan=o},{\"../main\":593,\"object-assign\":473}],591:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\"),i=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,a(o.prototype,{name:\"Thai\",jdEpoch:1523098.5,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Thai\",epochs:[\"BBE\",\"BE\"],monthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],monthNamesShort:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(e.year());return i.leapYear(t)},weekOfYear:function(t,e,r){var a=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(a.year());return i.weekOfYear(t,a.month(),a.day())},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=this._t2gYear(a.year());return i.toJD(t,a.month(),a.day())},fromJD:function(t){var e=i.fromJD(t),r=this._g2tYear(e.year());return this.newDate(r,e.month(),e.day())},_t2gYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)},_g2tYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)}}),n.calendars.thai=o},{\"../main\":593,\"object-assign\":473}],592:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"UmmAlQura\",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Umm al-Qura\",epochs:[\"BH\",\"AH\"],monthNames:[\"Al-Muharram\",\"Safar\",\"Rabi' al-awwal\",\"Rabi' Al-Thani\",\"Jumada Al-Awwal\",\"Jumada Al-Thani\",\"Rajab\",\"Sha'aban\",\"Ramadan\",\"Shawwal\",\"Dhu al-Qi'dah\",\"Dhu al-Hijjah\"],monthNamesShort:[\"Muh\",\"Saf\",\"Rab1\",\"Rab2\",\"Jum1\",\"Jum2\",\"Raj\",\"Sha'\",\"Ram\",\"Shaw\",\"DhuQ\",\"DhuH\"],dayNames:[\"Yawm al-Ahad\",\"Yawm al-Ithnain\",\"Yawm al-Thal\\u0101th\\u0101\\u2019\",\"Yawm al-Arba\\u2018\\u0101\\u2019\",\"Yawm al-Kham\\u012bs\",\"Yawm al-Jum\\u2018a\",\"Yawm al-Sabt\"],dayNamesMin:[\"Ah\",\"Ith\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!0}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return 355===this.daysInYear(e.year())},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){for(var e=0,r=1;r<=12;r++)e+=this.daysInMonth(t,r);return e},daysInMonth:function(t,e){for(var r=this._validate(t,e,this.minDay,n.local.invalidMonth).toJD()-24e5+.5,a=0,i=0;i<o.length;i++){if(o[i]>r)return o[a]-o[a-1];a++}return 30},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate),i=12*(a.year()-1)+a.month()-15292;return a.day()+o[i-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,r=0,n=0;n<o.length&&!(o[n]>e);n++)r++;var a=r+15292,i=Math.floor((a-1)/12),s=i+1,l=a-12*i,c=e-o[r-1]+1;return this.newDate(s,l,c)},isValid:function(t,e,r){var a=n.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(a=(t=null!=t.year?t.year:t)>=1276&&t<=1500),a},_validate:function(t,e,r,a){var i=n.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw a.replace(/\\{0\\}/,this.local.name);return i}}),n.calendars.ummalqura=i;var o=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]},{\"../main\":593,\"object-assign\":473}],593:[function(t,e,r){var n=t(\"object-assign\");function a(){this.regionalOptions=[],this.regionalOptions[\"\"]={invalidCalendar:\"Calendar {0} not found\",invalidDate:\"Invalid {0} date\",invalidMonth:\"Invalid {0} month\",invalidYear:\"Invalid {0} year\",differentCalendars:\"Cannot mix {0} and {1} dates\"},this.local=this.regionalOptions[\"\"],this.calendars={},this._localCals={}}function i(t,e,r,n){if(this._calendar=t,this._year=e,this._month=r,this._day=n,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(c.local.invalidDate||c.regionalOptions[\"\"].invalidDate).replace(/\\{0\\}/,this._calendar.local.name)}function o(t,e){return\"000000\".substring(0,e-(t=\"\"+t).length)+t}function s(){this.shortYearCutoff=\"+10\"}function l(t){this.local=this.regionalOptions[t]||this.regionalOptions[\"\"]}n(a.prototype,{instance:function(t,e){t=(t||\"gregorian\").toLowerCase(),e=e||\"\";var r=this._localCals[t+\"-\"+e];if(!r&&this.calendars[t]&&(r=new this.calendars[t](e),this._localCals[t+\"-\"+e]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[\"\"].invalidCalendar).replace(/\\{0\\}/,t);return r},newDate:function(t,e,r,n,a){return(n=(null!=t&&t.year?t.calendar():\"string\"==typeof n?this.instance(n,a):n)||this.instance()).newDate(t,e,r)},substituteDigits:function(t){return function(e){return(e+\"\").replace(/[0-9]/g,(function(e){return t[e]}))}},substituteChineseDigits:function(t,e){return function(r){for(var n=\"\",a=0;r>0;){var i=r%10;n=(0===i?\"\":t[i]+e[a])+n,a++,r=Math.floor(r/10)}return 0===n.indexOf(t[1]+e[1])&&(n=n.substr(1)),n||t[0]}}}),n(i.prototype,{newDate:function(t,e,r){return this._calendar.newDate(null==t?this:t,e,r)},year:function(t){return 0===arguments.length?this._year:this.set(t,\"y\")},month:function(t){return 0===arguments.length?this._month:this.set(t,\"m\")},day:function(t){return 0===arguments.length?this._day:this.set(t,\"d\")},date:function(t,e,r){if(!this._calendar.isValid(t,e,r))throw(c.local.invalidDate||c.regionalOptions[\"\"].invalidDate).replace(/\\{0\\}/,this._calendar.local.name);return this._year=t,this._month=e,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(t,e){return this._calendar.add(this,t,e)},set:function(t,e){return this._calendar.set(this,t,e)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(c.local.differentCalendars||c.regionalOptions[\"\"].differentCalendars).replace(/\\{0\\}/,this._calendar.local.name).replace(/\\{1\\}/,t._calendar.local.name);var e=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return 0===e?0:e<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(t){return this._calendar.fromJD(t)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(t){return this._calendar.fromJSDate(t)},toString:function(){return(this.year()<0?\"-\":\"\")+o(Math.abs(this.year()),4)+\"-\"+o(this.month(),2)+\"-\"+o(this.day(),2)}}),n(s.prototype,{_validateLevel:0,newDate:function(t,e,r){return null==t?this.today():(t.year&&(this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),r=t.day(),e=t.month(),t=t.year()),new i(this,t,e,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear);return(e.year()<0?\"-\":\"\")+o(Math.abs(e.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear),12},monthOfYear:function(t,e){var r=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[\"\"].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(t,e){var r=(e+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,r,this.minDay,c.local.invalidMonth||c.regionalOptions[\"\"].invalidMonth),r},daysInYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear);return this.leapYear(e)?366:365},dayOfYear:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(t,e,r){return this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),{}},add:function(t,e,r){return this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),this._correctAdd(t,this._add(t,e,r),e,r)},_add:function(t,e,r){if(this._validateLevel++,\"d\"===r||\"w\"===r){var n=t.toJD()+e*(\"w\"===r?this.daysInWeek():1),a=t.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var i=t.year()+(\"y\"===r?e:0),o=t.monthOfYear()+(\"m\"===r?e:0);a=t.day();\"y\"===r?(t.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):\"m\"===r&&(!function(t){for(;o<t.minMonth;)i--,o+=t.monthsInYear(i);for(var e=t.monthsInYear(i);o>e-1+t.minMonth;)i++,o-=e,e=t.monthsInYear(i)}(this),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),a];return this._validateLevel--,s}catch(t){throw this._validateLevel--,t}},_correctAdd:function(t,e,r,n){if(!(this.hasYearZero||\"y\"!==n&&\"m\"!==n||0!==e[0]&&t.year()>0==e[0]>0)){var a={y:[1,1,\"y\"],m:[1,this.monthsInYear(-1),\"m\"],w:[this.daysInWeek(),this.daysInYear(-1),\"d\"],d:[1,this.daysInYear(-1),\"d\"]}[n],i=r<0?-1:1;e=this._add(t,r*a[0]+i*a[1],a[2])}return t.date(e[0],e[1],e[2])},set:function(t,e,r){this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);var n=\"y\"===r?e:t.year(),a=\"m\"===r?e:t.month(),i=\"d\"===r?e:t.day();return\"y\"!==r&&\"m\"!==r||(i=Math.min(i,this.daysInMonth(n,a))),t.date(n,a,i)},isValid:function(t,e,r){this._validateLevel++;var n=this.hasYearZero||0!==t;if(n){var a=this.newDate(t,e,this.minDay);n=e>=this.minMonth&&e-this.minMonth<this.monthsInYear(a)&&r>=this.minDay&&r-this.minDay<this.daysInMonth(a)}return this._validateLevel--,n},toJSDate:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);return c.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(t){return this.fromJD(c.instance().fromJSDate(t).toJD())},_validate:function(t,e,r,n){if(t.year){if(0===this._validateLevel&&this.name!==t.calendar().name)throw(c.local.differentCalendars||c.regionalOptions[\"\"].differentCalendars).replace(/\\{0\\}/,this.local.name).replace(/\\{1\\}/,t.calendar().local.name);return t}try{if(this._validateLevel++,1===this._validateLevel&&!this.isValid(t,e,r))throw n.replace(/\\{0\\}/,this.local.name);var a=this.newDate(t,e,r);return this._validateLevel--,a}catch(t){throw this._validateLevel--,t}}}),l.prototype=new s,n(l.prototype,{name:\"Gregorian\",jdEpoch:1721425.5,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Gregorian\",epochs:[\"BCE\",\"CE\"],monthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],monthNamesShort:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"mm/dd/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==0&&(t%100!=0||t%400==0)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[\"\"].invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);t=n.year(),e=n.month(),r=n.day(),t<0&&t++,e<3&&(e+=12,t--);var a=Math.floor(t/100),i=2-a+Math.floor(a/4);return Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+r+i-1524.5},fromJD:function(t){var e=Math.floor(t+.5),r=Math.floor((e-1867216.25)/36524.25),n=(r=e+1+r-Math.floor(r/4))+1524,a=Math.floor((n-122.1)/365.25),i=Math.floor(365.25*a),o=Math.floor((n-i)/30.6001),s=n-i-Math.floor(30.6001*o),l=o-(o>13.5?13:1),c=a-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var c=e.exports=new a;c.cdate=i,c.baseCalendar=s,c.calendars.gregorian=l},{\"object-assign\":473}],594:[function(t,e,r){var n=t(\"object-assign\"),a=t(\"./main\");n(a.regionalOptions[\"\"],{invalidArguments:\"Invalid arguments\",invalidFormat:\"Cannot format a date from another calendar\",missingNumberAt:\"Missing number at position {0}\",unknownNameAt:\"Unknown name at position {0}\",unexpectedLiteralAt:\"Unexpected literal at position {0}\",unexpectedText:\"Additional text found at end\"}),a.local=a.regionalOptions[\"\"],n(a.cdate.prototype,{formatDate:function(t,e){return\"string\"!=typeof t&&(e=t,t=\"\"),this._calendar.formatDate(t||\"\",this,e)}}),n(a.baseCalendar.prototype,{UNIX_EPOCH:a.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:a.instance().jdEpoch,TICKS_PER_DAY:864e9,ATOM:\"yyyy-mm-dd\",COOKIE:\"D, dd M yyyy\",FULL:\"DD, MM d, yyyy\",ISO_8601:\"yyyy-mm-dd\",JULIAN:\"J\",RFC_822:\"D, d M yy\",RFC_850:\"DD, dd-M-yy\",RFC_1036:\"D, d M yy\",RFC_1123:\"D, d M yyyy\",RFC_2822:\"D, d M yyyy\",RSS:\"D, d M yy\",TICKS:\"!\",TIMESTAMP:\"@\",W3C:\"yyyy-mm-dd\",formatDate:function(t,e,r){if(\"string\"!=typeof t&&(r=e,e=t,t=\"\"),!e)return\"\";if(e.calendar()!==this)throw a.local.invalidFormat||a.regionalOptions[\"\"].invalidFormat;t=t||this.local.dateFormat;for(var n,i,o,s,l=(r=r||{}).dayNamesShort||this.local.dayNamesShort,c=r.dayNames||this.local.dayNames,u=r.monthNumbers||this.local.monthNumbers,h=r.monthNamesShort||this.local.monthNamesShort,f=r.monthNames||this.local.monthNames,p=(r.calculateWeek||this.local.calculateWeek,function(e,r){for(var n=1;w+n<t.length&&t.charAt(w+n)===e;)n++;return w+=n-1,Math.floor(n/(r||1))>1}),d=function(t,e,r,n){var a=\"\"+e;if(p(t,n))for(;a.length<r;)a=\"0\"+a;return a},g=this,m=function(t){return\"function\"==typeof u?u.call(g,t,p(\"m\")):x(d(\"m\",t.month(),2))},v=function(t,e){return e?\"function\"==typeof f?f.call(g,t):f[t.month()-g.minMonth]:\"function\"==typeof h?h.call(g,t):h[t.month()-g.minMonth]},y=this.local.digits,x=function(t){return r.localNumbers&&y?y(t):t},b=\"\",_=!1,w=0;w<t.length;w++)if(_)\"'\"!==t.charAt(w)||p(\"'\")?b+=t.charAt(w):_=!1;else switch(t.charAt(w)){case\"d\":b+=x(d(\"d\",e.day(),2));break;case\"D\":b+=(n=\"D\",i=e.dayOfWeek(),o=l,s=c,p(n)?s[i]:o[i]);break;case\"o\":b+=d(\"o\",e.dayOfYear(),3);break;case\"w\":b+=d(\"w\",e.weekOfYear(),2);break;case\"m\":b+=m(e);break;case\"M\":b+=v(e,p(\"M\"));break;case\"y\":b+=p(\"y\",2)?e.year():(e.year()%100<10?\"0\":\"\")+e.year()%100;break;case\"Y\":p(\"Y\",2),b+=e.formatYear();break;case\"J\":b+=e.toJD();break;case\"@\":b+=(e.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case\"!\":b+=(e.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case\"'\":p(\"'\")?b+=\"'\":_=!0;break;default:b+=t.charAt(w)}return b},parseDate:function(t,e,r){if(null==e)throw a.local.invalidArguments||a.regionalOptions[\"\"].invalidArguments;if(\"\"===(e=\"object\"==typeof e?e.toString():e+\"\"))return null;t=t||this.local.dateFormat;var n=(r=r||{}).shortYearCutoff||this.shortYearCutoff;n=\"string\"!=typeof n?n:this.today().year()%100+parseInt(n,10);for(var i=r.dayNamesShort||this.local.dayNamesShort,o=r.dayNames||this.local.dayNames,s=r.parseMonth||this.local.parseMonth,l=r.monthNumbers||this.local.monthNumbers,c=r.monthNamesShort||this.local.monthNamesShort,u=r.monthNames||this.local.monthNames,h=-1,f=-1,p=-1,d=-1,g=-1,m=!1,v=!1,y=function(e,r){for(var n=1;A+n<t.length&&t.charAt(A+n)===e;)n++;return A+=n-1,Math.floor(n/(r||1))>1},x=function(t,r){var n=y(t,r),i=[2,3,n?4:2,n?4:2,10,11,20][\"oyYJ@!\".indexOf(t)+1],o=new RegExp(\"^-?\\\\d{1,\"+i+\"}\"),s=e.substring(M).match(o);if(!s)throw(a.local.missingNumberAt||a.regionalOptions[\"\"].missingNumberAt).replace(/\\{0\\}/,M);return M+=s[0].length,parseInt(s[0],10)},b=this,_=function(){if(\"function\"==typeof l){y(\"m\");var t=l.call(b,e.substring(M));return M+=t.length,t}return x(\"m\")},w=function(t,r,n,i){for(var o=y(t,i)?n:r,s=0;s<o.length;s++)if(e.substr(M,o[s].length).toLowerCase()===o[s].toLowerCase())return M+=o[s].length,s+b.minMonth;throw(a.local.unknownNameAt||a.regionalOptions[\"\"].unknownNameAt).replace(/\\{0\\}/,M)},T=function(){if(\"function\"==typeof u){var t=y(\"M\")?u.call(b,e.substring(M)):c.call(b,e.substring(M));return M+=t.length,t}return w(\"M\",c,u)},k=function(){if(e.charAt(M)!==t.charAt(A))throw(a.local.unexpectedLiteralAt||a.regionalOptions[\"\"].unexpectedLiteralAt).replace(/\\{0\\}/,M);M++},M=0,A=0;A<t.length;A++)if(v)\"'\"!==t.charAt(A)||y(\"'\")?k():v=!1;else switch(t.charAt(A)){case\"d\":d=x(\"d\");break;case\"D\":w(\"D\",i,o);break;case\"o\":g=x(\"o\");break;case\"w\":x(\"w\");break;case\"m\":p=_();break;case\"M\":p=T();break;case\"y\":var S=A;m=!y(\"y\",2),A=S,f=x(\"y\",2);break;case\"Y\":f=x(\"Y\",2);break;case\"J\":h=x(\"J\")+.5,\".\"===e.charAt(M)&&(M++,x(\"J\"));break;case\"@\":h=x(\"@\")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case\"!\":h=x(\"!\")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case\"*\":M=e.length;break;case\"'\":y(\"'\")?k():v=!0;break;default:k()}if(M<e.length)throw a.local.unexpectedText||a.regionalOptions[\"\"].unexpectedText;if(-1===f?f=this.today().year():f<100&&m&&(f+=-1===n?1900:this.today().year()-this.today().year()%100-(f<=n?0:100)),\"string\"==typeof p&&(p=s.call(this,f,p)),g>-1){p=1,d=g;for(var E=this.daysInMonth(f,p);d>E;E=this.daysInMonth(f,p))p++,d-=E}return h>-1?this.fromJD(h):this.newDate(f,p,d)},determineDate:function(t,e,r,n,a){r&&\"object\"!=typeof r&&(a=n,n=r,r=null),\"string\"!=typeof n&&(a=n,n=\"\");var i=this;return e=e?e.newDate():null,t=null==t?e:\"string\"==typeof t?function(t){try{return i.parseDate(n,t,a)}catch(t){}for(var e=((t=t.toLowerCase()).match(/^c/)&&r?r.newDate():null)||i.today(),o=/([+-]?[0-9]+)\\s*(d|w|m|y)?/g,s=o.exec(t);s;)e.add(parseInt(s[1],10),s[2]||\"d\"),s=o.exec(t);return e}(t):\"number\"==typeof t?isNaN(t)||t===1/0||t===-1/0?e:i.today().add(t,\"d\"):i.newDate(t)}})},{\"./main\":593,\"object-assign\":473}],595:[function(t,e,r){e.exports=t(\"cwise-compiler\")({args:[\"array\",{offset:[1],array:0},\"scalar\",\"scalar\",\"index\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{\\n        var _inline_1_da = _inline_1_arg0_ - _inline_1_arg3_\\n        var _inline_1_db = _inline_1_arg1_ - _inline_1_arg3_\\n        if((_inline_1_da >= 0) !== (_inline_1_db >= 0)) {\\n          _inline_1_arg2_.push(_inline_1_arg4_[0] + 0.5 + 0.5 * (_inline_1_da + _inline_1_db) / (_inline_1_da - _inline_1_db))\\n        }\\n      }\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg3_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[],localVars:[\"_inline_1_da\",\"_inline_1_db\"]},funcName:\"zeroCrossings\"})},{\"cwise-compiler\":151}],596:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=[];return e=+e||0,n(t.hi(t.shape[0]-1),r,e),r};var n=t(\"./lib/zc-core\")},{\"./lib/zc-core\":595}],597:[function(t,e,r){\"use strict\";e.exports=[{path:\"\",backoff:0},{path:\"M-2.4,-3V3L0.6,0Z\",backoff:.6},{path:\"M-3.7,-2.5V2.5L1.3,0Z\",backoff:1.3},{path:\"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z\",backoff:1.55},{path:\"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z\",backoff:1.6},{path:\"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z\",backoff:2},{path:\"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z\",backoff:0,noRotate:!0},{path:\"M2,2V-2H-2V2Z\",backoff:0,noRotate:!0}]},{}],598:[function(t,e,r){\"use strict\";var n=t(\"./arrow_paths\"),a=t(\"../../plots/font_attributes\"),i=t(\"../../plots/cartesian/constants\"),o=t(\"../../plot_api/plot_template\").templatedArray;e.exports=o(\"annotation\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},text:{valType:\"string\",editType:\"calc+arraydraw\"},textangle:{valType:\"angle\",dflt:0,editType:\"calc+arraydraw\"},font:a({editType:\"calc+arraydraw\",colorEditType:\"arraydraw\"}),width:{valType:\"number\",min:1,dflt:null,editType:\"calc+arraydraw\"},height:{valType:\"number\",min:1,dflt:null,editType:\"calc+arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"arraydraw\"},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"center\",editType:\"arraydraw\"},valign:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\",editType:\"arraydraw\"},bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},bordercolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},borderpad:{valType:\"number\",min:0,dflt:1,editType:\"calc+arraydraw\"},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc+arraydraw\"},showarrow:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},arrowcolor:{valType:\"color\",editType:\"arraydraw\"},arrowhead:{valType:\"integer\",min:0,max:n.length,dflt:1,editType:\"arraydraw\"},startarrowhead:{valType:\"integer\",min:0,max:n.length,dflt:1,editType:\"arraydraw\"},arrowside:{valType:\"flaglist\",flags:[\"end\",\"start\"],extras:[\"none\"],dflt:\"end\",editType:\"arraydraw\"},arrowsize:{valType:\"number\",min:.3,dflt:1,editType:\"calc+arraydraw\"},startarrowsize:{valType:\"number\",min:.3,dflt:1,editType:\"calc+arraydraw\"},arrowwidth:{valType:\"number\",min:.1,editType:\"calc+arraydraw\"},standoff:{valType:\"number\",min:0,dflt:0,editType:\"calc+arraydraw\"},startstandoff:{valType:\"number\",min:0,dflt:0,editType:\"calc+arraydraw\"},ax:{valType:\"any\",editType:\"calc+arraydraw\"},ay:{valType:\"any\",editType:\"calc+arraydraw\"},axref:{valType:\"enumerated\",dflt:\"pixel\",values:[\"pixel\",i.idRegex.x.toString()],editType:\"calc\"},ayref:{valType:\"enumerated\",dflt:\"pixel\",values:[\"pixel\",i.idRegex.y.toString()],editType:\"calc\"},xref:{valType:\"enumerated\",values:[\"paper\",i.idRegex.x.toString()],editType:\"calc\"},x:{valType:\"any\",editType:\"calc+arraydraw\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"auto\",editType:\"calc+arraydraw\"},xshift:{valType:\"number\",dflt:0,editType:\"calc+arraydraw\"},yref:{valType:\"enumerated\",values:[\"paper\",i.idRegex.y.toString()],editType:\"calc\"},y:{valType:\"any\",editType:\"calc+arraydraw\"},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"auto\",editType:\"calc+arraydraw\"},yshift:{valType:\"number\",dflt:0,editType:\"calc+arraydraw\"},clicktoshow:{valType:\"enumerated\",values:[!1,\"onoff\",\"onout\"],dflt:!1,editType:\"arraydraw\"},xclick:{valType:\"any\",editType:\"arraydraw\"},yclick:{valType:\"any\",editType:\"arraydraw\"},hovertext:{valType:\"string\",editType:\"arraydraw\"},hoverlabel:{bgcolor:{valType:\"color\",editType:\"arraydraw\"},bordercolor:{valType:\"color\",editType:\"arraydraw\"},font:a({editType:\"arraydraw\"}),editType:\"arraydraw\"},captureevents:{valType:\"boolean\",editType:\"arraydraw\"},editType:\"calc\",_deprecated:{ref:{valType:\"string\",editType:\"calc\"}}})},{\"../../plot_api/plot_template\":787,\"../../plots/cartesian/constants\":804,\"../../plots/font_attributes\":826,\"./arrow_paths\":597}],599:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"./draw\").draw;function o(t){var e=t._fullLayout;n.filterVisible(e.annotations).forEach((function(e){var r=a.getFromId(t,e.xref),n=a.getFromId(t,e.yref);e._extremes={},r&&s(e,r),n&&s(e,n)}))}function s(t,e){var r,n=e._id,i=n.charAt(0),o=t[i],s=t[\"a\"+i],l=t[i+\"ref\"],c=t[\"a\"+i+\"ref\"],u=t[\"_\"+i+\"padplus\"],h=t[\"_\"+i+\"padminus\"],f={x:1,y:-1}[i]*t[i+\"shift\"],p=3*t.arrowsize*t.arrowwidth||0,d=p+f,g=p-f,m=3*t.startarrowsize*t.arrowwidth||0,v=m+f,y=m-f;if(c===l){var x=a.findExtremes(e,[e.r2c(o)],{ppadplus:d,ppadminus:g}),b=a.findExtremes(e,[e.r2c(s)],{ppadplus:Math.max(u,v),ppadminus:Math.max(h,y)});r={min:[x.min[0],b.min[0]],max:[x.max[0],b.max[0]]}}else v=s?v+s:v,y=s?y-s:y,r=a.findExtremes(e,[e.r2c(o)],{ppadplus:Math.max(u,d,v),ppadminus:Math.max(h,g,y)});t._extremes[n]=r}e.exports=function(t){var e=t._fullLayout;if(n.filterVisible(e.annotations).length&&t._fullData.length)return n.syncOrAsync([i,o],t)}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"./draw\":604}],600:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"../../plot_api/plot_template\").arrayEditor;function o(t,e){var r,n,a,i,o,l,c,u=t._fullLayout.annotations,h=[],f=[],p=[],d=(e||[]).length;for(r=0;r<u.length;r++)if(i=(a=u[r]).clicktoshow){for(n=0;n<d;n++)if(l=(o=e[n]).xaxis,c=o.yaxis,l._id===a.xref&&c._id===a.yref&&l.d2r(o.x)===s(a._xclick,l)&&c.d2r(o.y)===s(a._yclick,c)){(a.visible?\"onout\"===i?f:p:h).push(r);break}n===d&&a.visible&&\"onout\"===i&&f.push(r)}return{on:h,off:f,explicitOff:p}}function s(t,e){return\"log\"===e.type?e.l2r(t):e.d2r(t)}e.exports={hasClickToShow:function(t,e){var r=o(t,e);return r.on.length>0||r.explicitOff.length>0},onClick:function(t,e){var r,s,l=o(t,e),c=l.on,u=l.off.concat(l.explicitOff),h={},f=t._fullLayout.annotations;if(!c.length&&!u.length)return;for(r=0;r<c.length;r++)(s=i(t.layout,\"annotations\",f[c[r]])).modifyItem(\"visible\",!0),n.extendFlat(h,s.getUpdateObj());for(r=0;r<u.length;r++)(s=i(t.layout,\"annotations\",f[u[r]])).modifyItem(\"visible\",!1),n.extendFlat(h,s.getUpdateObj());return a.call(\"update\",t,{},h)}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../registry\":881}],601:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../color\");e.exports=function(t,e,r,i){i(\"opacity\");var o=i(\"bgcolor\"),s=i(\"bordercolor\"),l=a.opacity(s);i(\"borderpad\");var c=i(\"borderwidth\"),u=i(\"showarrow\");if(i(\"text\",u?\" \":r._dfltTitle.annotation),i(\"textangle\"),n.coerceFont(i,\"font\",r.font),i(\"width\"),i(\"align\"),i(\"height\")&&i(\"valign\"),u){var h,f,p=i(\"arrowside\");-1!==p.indexOf(\"end\")&&(h=i(\"arrowhead\"),f=i(\"arrowsize\")),-1!==p.indexOf(\"start\")&&(i(\"startarrowhead\",h),i(\"startarrowsize\",f)),i(\"arrowcolor\",l?e.bordercolor:a.defaultLine),i(\"arrowwidth\",2*(l&&c||1)),i(\"standoff\"),i(\"startstandoff\")}var d=i(\"hovertext\"),g=r.hoverlabel||{};if(d){var m=i(\"hoverlabel.bgcolor\",g.bgcolor||(a.opacity(o)?a.rgb(o):a.defaultLine)),v=i(\"hoverlabel.bordercolor\",g.bordercolor||a.contrast(m));n.coerceFont(i,\"hoverlabel.font\",{family:g.font.family,size:g.font.size,color:g.font.color||v})}i(\"captureevents\",!!d)}},{\"../../lib\":749,\"../color\":615}],602:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib/to_log_range\");e.exports=function(t,e,r,i){e=e||{};var o=\"log\"===r&&\"linear\"===e.type,s=\"linear\"===r&&\"log\"===e.type;if(o||s)for(var l,c,u=t._fullLayout.annotations,h=e._id.charAt(0),f=0;f<u.length;f++)l=u[f],c=\"annotations[\"+f+\"].\",l[h+\"ref\"]===e._id&&p(h),l[\"a\"+h+\"ref\"]===e._id&&p(\"a\"+h);function p(t){var r=l[t],s=null;s=o?a(r,e.range):Math.pow(10,r),n(s)||(s=null),i(c+t,s)}}},{\"../../lib/to_log_range\":775,\"fast-isnumeric\":241}],603:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../plots/array_container_defaults\"),o=t(\"./common_defaults\"),s=t(\"./attributes\");function l(t,e,r){function i(r,a){return n.coerce(t,e,s,r,a)}var l=i(\"visible\"),c=i(\"clicktoshow\");if(l||c){o(t,e,r,i);for(var u=e.showarrow,h=[\"x\",\"y\"],f=[-10,-30],p={_fullLayout:r},d=0;d<2;d++){var g=h[d],m=a.coerceRef(t,e,p,g,\"\",\"paper\");if(\"paper\"!==m)a.getFromId(p,m)._annIndices.push(e._index);if(a.coercePosition(e,p,i,m,g,.5),u){var v=\"a\"+g,y=a.coerceRef(t,e,p,v,\"pixel\");\"pixel\"!==y&&y!==m&&(y=e[v]=\"pixel\");var x=\"pixel\"===y?f[d]:.4;a.coercePosition(e,p,i,y,v,x)}i(g+\"anchor\"),i(g+\"shift\")}if(n.noneOrAll(t,e,[\"x\",\"y\"]),u&&n.noneOrAll(t,e,[\"ax\",\"ay\"]),c){var b=i(\"xclick\"),_=i(\"yclick\");e._xclick=void 0===b?e.x:a.cleanPosition(b,p,e.xref),e._yclick=void 0===_?e.y:a.cleanPosition(_,p,e.yref)}}}e.exports=function(t,e){i(t,e,{name:\"annotations\",handleItemDefaults:l})}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../../plots/cartesian/axes\":798,\"./attributes\":598,\"./common_defaults\":601}],604:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../plots/plots\"),o=t(\"../../lib\"),s=t(\"../../plots/cartesian/axes\"),l=t(\"../color\"),c=t(\"../drawing\"),u=t(\"../fx\"),h=t(\"../../lib/svg_text_utils\"),f=t(\"../../lib/setcursor\"),p=t(\"../dragelement\"),d=t(\"../../plot_api/plot_template\").arrayEditor,g=t(\"./draw_arrow_head\");function m(t,e){var r=t._fullLayout.annotations[e]||{},n=s.getFromId(t,r.xref),a=s.getFromId(t,r.yref);n&&n.setScale(),a&&a.setScale(),v(t,r,e,!1,n,a)}function v(t,e,r,i,s,m){var v,y,x=t._fullLayout,b=t._fullLayout._size,_=t._context.edits;i?(v=\"annotation-\"+i,y=i+\".annotations\"):(v=\"annotation\",y=\"annotations\");var w=d(t.layout,y,e),T=w.modifyBase,k=w.modifyItem,M=w.getUpdateObj;x._infolayer.selectAll(\".\"+v+'[data-index=\"'+r+'\"]').remove();var A=\"clip\"+x._uid+\"_ann\"+r;if(e._input&&!1!==e.visible){var S={x:{},y:{}},E=+e.textangle||0,C=x._infolayer.append(\"g\").classed(v,!0).attr(\"data-index\",String(r)).style(\"opacity\",e.opacity),L=C.append(\"g\").classed(\"annotation-text-g\",!0),P=_[e.showarrow?\"annotationTail\":\"annotationPosition\"],I=e.captureevents||_.annotationText||P,z=L.append(\"g\").style(\"pointer-events\",I?\"all\":null).call(f,\"pointer\").on(\"click\",(function(){t._dragging=!1,t.emit(\"plotly_clickannotation\",q(n.event))}));e.hovertext&&z.on(\"mouseover\",(function(){var r=e.hoverlabel,n=r.font,a=this.getBoundingClientRect(),i=t.getBoundingClientRect();u.loneHover({x0:a.left-i.left,x1:a.right-i.left,y:(a.top+a.bottom)/2-i.top,text:e.hovertext,color:r.bgcolor,borderColor:r.bordercolor,fontFamily:n.family,fontSize:n.size,fontColor:n.color},{container:x._hoverlayer.node(),outerContainer:x._paper.node(),gd:t})})).on(\"mouseout\",(function(){u.loneUnhover(x._hoverlayer.node())}));var O=e.borderwidth,D=e.borderpad,R=O+D,F=z.append(\"rect\").attr(\"class\",\"bg\").style(\"stroke-width\",O+\"px\").call(l.stroke,e.bordercolor).call(l.fill,e.bgcolor),B=e.width||e.height,N=x._topclips.selectAll(\"#\"+A).data(B?[0]:[]);N.enter().append(\"clipPath\").classed(\"annclip\",!0).attr(\"id\",A).append(\"rect\"),N.exit().remove();var j=e.font,U=x._meta?o.templateString(e.text,x._meta):e.text,V=z.append(\"text\").classed(\"annotation-text\",!0).text(U);_.annotationText?V.call(h.makeEditable,{delegate:z,gd:t}).call(H).on(\"edit\",(function(r){e.text=r,this.call(H),k(\"text\",r),s&&s.autorange&&T(s._name+\".autorange\",!0),m&&m.autorange&&T(m._name+\".autorange\",!0),a.call(\"_guiRelayout\",t,M())})):V.call(H)}else n.selectAll(\"#\"+A).remove();function q(t){var n={index:r,annotation:e._input,fullAnnotation:e,event:t};return i&&(n.subplotId=i),n}function H(r){return r.call(c.font,j).attr({\"text-anchor\":{left:\"start\",right:\"end\"}[e.align]||\"middle\"}),h.convertToTspans(r,t,G),r}function G(){var r=V.selectAll(\"a\");1===r.size()&&r.text()===V.text()&&z.insert(\"a\",\":first-child\").attr({\"xlink:xlink:href\":r.attr(\"xlink:href\"),\"xlink:xlink:show\":r.attr(\"xlink:show\")}).style({cursor:\"pointer\"}).node().appendChild(F.node());var n=z.select(\".annotation-text-math-group\"),u=!n.empty(),d=c.bBox((u?n:V).node()),v=d.width,y=d.height,w=e.width||v,I=e.height||y,D=Math.round(w+2*R),j=Math.round(I+2*R);function U(t,e){return\"auto\"===e&&(e=t<1/3?\"left\":t>2/3?\"right\":\"center\"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}for(var H=!1,G=[\"x\",\"y\"],Y=0;Y<G.length;Y++){var W,Z,X,J,K,Q=G[Y],$=e[Q+\"ref\"]||Q,tt=e[\"a\"+Q+\"ref\"],et={x:s,y:m}[Q],rt=(E+(\"x\"===Q?0:-90))*Math.PI/180,nt=D*Math.cos(rt),at=j*Math.sin(rt),it=Math.abs(nt)+Math.abs(at),ot=e[Q+\"anchor\"],st=e[Q+\"shift\"]*(\"x\"===Q?1:-1),lt=S[Q];if(et){var ct=et.r2fraction(e[Q]);(ct<0||ct>1)&&(tt===$?((ct=et.r2fraction(e[\"a\"+Q]))<0||ct>1)&&(H=!0):H=!0),W=et._offset+et.r2p(e[Q]),J=.5}else\"x\"===Q?(X=e[Q],W=b.l+b.w*X):(X=1-e[Q],W=b.t+b.h*X),J=e.showarrow?.5:X;if(e.showarrow){lt.head=W;var ut=e[\"a\"+Q];K=nt*U(.5,e.xanchor)-at*U(.5,e.yanchor),tt===$?(lt.tail=et._offset+et.r2p(ut),Z=K):(lt.tail=W+ut,Z=K+ut),lt.text=lt.tail+K;var ht=x[\"x\"===Q?\"width\":\"height\"];if(\"paper\"===$&&(lt.head=o.constrain(lt.head,1,ht-1)),\"pixel\"===tt){var ft=-Math.max(lt.tail-3,lt.text),pt=Math.min(lt.tail+3,lt.text)-ht;ft>0?(lt.tail+=ft,lt.text+=ft):pt>0&&(lt.tail-=pt,lt.text-=pt)}lt.tail+=st,lt.head+=st}else Z=K=it*U(J,ot),lt.text=W+K;lt.text+=st,K+=st,Z+=st,e[\"_\"+Q+\"padplus\"]=it/2+Z,e[\"_\"+Q+\"padminus\"]=it/2-Z,e[\"_\"+Q+\"size\"]=it,e[\"_\"+Q+\"shift\"]=K}if(H)z.remove();else{var dt=0,gt=0;if(\"left\"!==e.align&&(dt=(w-v)*(\"center\"===e.align?.5:1)),\"top\"!==e.valign&&(gt=(I-y)*(\"middle\"===e.valign?.5:1)),u)n.select(\"svg\").attr({x:R+dt-1,y:R+gt}).call(c.setClipUrl,B?A:null,t);else{var mt=R+gt-d.top,vt=R+dt-d.left;V.call(h.positionText,vt,mt).call(c.setClipUrl,B?A:null,t)}N.select(\"rect\").call(c.setRect,R,R,w,I),F.call(c.setRect,O/2,O/2,D-O,j-O),z.call(c.setTranslate,Math.round(S.x.text-D/2),Math.round(S.y.text-j/2)),L.attr({transform:\"rotate(\"+E+\",\"+S.x.text+\",\"+S.y.text+\")\"});var yt,xt=function(r,n){C.selectAll(\".annotation-arrow-g\").remove();var u=S.x.head,h=S.y.head,f=S.x.tail+r,d=S.y.tail+n,v=S.x.text+r,y=S.y.text+n,x=o.rotationXYMatrix(E,v,y),w=o.apply2DTransform(x),A=o.apply2DTransform2(x),P=+F.attr(\"width\"),I=+F.attr(\"height\"),O=v-.5*P,D=O+P,R=y-.5*I,B=R+I,N=[[O,R,O,B],[O,B,D,B],[D,B,D,R],[D,R,O,R]].map(A);if(!N.reduce((function(t,e){return t^!!o.segmentsIntersect(u,h,u+1e6,h+1e6,e[0],e[1],e[2],e[3])}),!1)){N.forEach((function(t){var e=o.segmentsIntersect(f,d,u,h,t[0],t[1],t[2],t[3]);e&&(f=e.x,d=e.y)}));var j=e.arrowwidth,U=e.arrowcolor,V=e.arrowside,q=C.append(\"g\").style({opacity:l.opacity(U)}).classed(\"annotation-arrow-g\",!0),H=q.append(\"path\").attr(\"d\",\"M\"+f+\",\"+d+\"L\"+u+\",\"+h).style(\"stroke-width\",j+\"px\").call(l.stroke,l.rgb(U));if(g(H,V,e),_.annotationPosition&&H.node().parentNode&&!i){var G=u,Y=h;if(e.standoff){var W=Math.sqrt(Math.pow(u-f,2)+Math.pow(h-d,2));G+=e.standoff*(f-u)/W,Y+=e.standoff*(d-h)/W}var Z,X,J=q.append(\"path\").classed(\"annotation-arrow\",!0).classed(\"anndrag\",!0).classed(\"cursor-move\",!0).attr({d:\"M3,3H-3V-3H3ZM0,0L\"+(f-G)+\",\"+(d-Y),transform:\"translate(\"+G+\",\"+Y+\")\"}).style(\"stroke-width\",j+6+\"px\").call(l.stroke,\"rgba(0,0,0,0)\").call(l.fill,\"rgba(0,0,0,0)\");p.init({element:J.node(),gd:t,prepFn:function(){var t=c.getTranslate(z);Z=t.x,X=t.y,s&&s.autorange&&T(s._name+\".autorange\",!0),m&&m.autorange&&T(m._name+\".autorange\",!0)},moveFn:function(t,r){var n=w(Z,X),a=n[0]+t,i=n[1]+r;z.call(c.setTranslate,a,i),k(\"x\",s?s.p2r(s.r2p(e.x)+t):e.x+t/b.w),k(\"y\",m?m.p2r(m.r2p(e.y)+r):e.y-r/b.h),e.axref===e.xref&&k(\"ax\",s.p2r(s.r2p(e.ax)+t)),e.ayref===e.yref&&k(\"ay\",m.p2r(m.r2p(e.ay)+r)),q.attr(\"transform\",\"translate(\"+t+\",\"+r+\")\"),L.attr({transform:\"rotate(\"+E+\",\"+a+\",\"+i+\")\"})},doneFn:function(){a.call(\"_guiRelayout\",t,M());var e=document.querySelector(\".js-notes-box-panel\");e&&e.redraw(e.selectedObj)}})}}};if(e.showarrow&&xt(0,0),P)p.init({element:z.node(),gd:t,prepFn:function(){yt=L.attr(\"transform\")},moveFn:function(t,r){var n=\"pointer\";if(e.showarrow)e.axref===e.xref?k(\"ax\",s.p2r(s.r2p(e.ax)+t)):k(\"ax\",e.ax+t),e.ayref===e.yref?k(\"ay\",m.p2r(m.r2p(e.ay)+r)):k(\"ay\",e.ay+r),xt(t,r);else{if(i)return;var a,o;if(s)a=s.p2r(s.r2p(e.x)+t);else{var l=e._xsize/b.w,c=e.x+(e._xshift-e.xshift)/b.w-l/2;a=p.align(c+t/b.w,l,0,1,e.xanchor)}if(m)o=m.p2r(m.r2p(e.y)+r);else{var u=e._ysize/b.h,h=e.y-(e._yshift+e.yshift)/b.h-u/2;o=p.align(h-r/b.h,u,0,1,e.yanchor)}k(\"x\",a),k(\"y\",o),s&&m||(n=p.getCursor(s?.5:a,m?.5:o,e.xanchor,e.yanchor))}L.attr({transform:\"translate(\"+t+\",\"+r+\")\"+yt}),f(z,n)},clickFn:function(r,n){e.captureevents&&t.emit(\"plotly_clickannotation\",q(n))},doneFn:function(){f(z),a.call(\"_guiRelayout\",t,M());var e=document.querySelector(\".js-notes-box-panel\");e&&e.redraw(e.selectedObj)}})}}}e.exports={draw:function(t){var e=t._fullLayout;e._infolayer.selectAll(\".annotation\").remove();for(var r=0;r<e.annotations.length;r++)e.annotations[r].visible&&m(t,r);return i.previousPromises(t)},drawOne:m,drawRaw:v}},{\"../../lib\":749,\"../../lib/setcursor\":769,\"../../lib/svg_text_utils\":773,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/axes\":798,\"../../plots/plots\":861,\"../../registry\":881,\"../color\":615,\"../dragelement\":634,\"../drawing\":637,\"../fx\":655,\"./draw_arrow_head\":605,d3:169}],605:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../color\"),i=t(\"./arrow_paths\");e.exports=function(t,e,r){var o,s,l,c,u=t.node(),h=i[r.arrowhead||0],f=i[r.startarrowhead||0],p=(r.arrowwidth||1)*(r.arrowsize||1),d=(r.arrowwidth||1)*(r.startarrowsize||1),g=e.indexOf(\"start\")>=0,m=e.indexOf(\"end\")>=0,v=h.backoff*p+r.standoff,y=f.backoff*d+r.startstandoff;if(\"line\"===u.nodeName){o={x:+t.attr(\"x1\"),y:+t.attr(\"y1\")},s={x:+t.attr(\"x2\"),y:+t.attr(\"y2\")};var x=o.x-s.x,b=o.y-s.y;if(c=(l=Math.atan2(b,x))+Math.PI,v&&y&&v+y>Math.sqrt(x*x+b*b))return void P();if(v){if(v*v>x*x+b*b)return void P();var _=v*Math.cos(l),w=v*Math.sin(l);s.x+=_,s.y+=w,t.attr({x2:s.x,y2:s.y})}if(y){if(y*y>x*x+b*b)return void P();var T=y*Math.cos(l),k=y*Math.sin(l);o.x-=T,o.y-=k,t.attr({x1:o.x,y1:o.y})}}else if(\"path\"===u.nodeName){var M=u.getTotalLength(),A=\"\";if(M<v+y)return void P();var S=u.getPointAtLength(0),E=u.getPointAtLength(.1);l=Math.atan2(S.y-E.y,S.x-E.x),o=u.getPointAtLength(Math.min(y,M)),A=\"0px,\"+y+\"px,\";var C=u.getPointAtLength(M),L=u.getPointAtLength(M-.1);c=Math.atan2(C.y-L.y,C.x-L.x),s=u.getPointAtLength(Math.max(0,M-v)),A+=M-(A?y+v:v)+\"px,\"+M+\"px\",t.style(\"stroke-dasharray\",A)}function P(){t.style(\"stroke-dasharray\",\"0px,100px\")}function I(e,i,o,s){e.path&&(e.noRotate&&(o=0),n.select(u.parentNode).append(\"path\").attr({class:t.attr(\"class\"),d:e.path,transform:\"translate(\"+i.x+\",\"+i.y+\")\"+(o?\"rotate(\"+180*o/Math.PI+\")\":\"\")+\"scale(\"+s+\")\"}).style({fill:a.rgb(r.arrowcolor),\"stroke-width\":0}))}g&&I(f,o,l,d),m&&I(h,s,c,p)}},{\"../color\":615,\"./arrow_paths\":597,d3:169}],606:[function(t,e,r){\"use strict\";var n=t(\"./draw\"),a=t(\"./click\");e.exports={moduleType:\"component\",name:\"annotations\",layoutAttributes:t(\"./attributes\"),supplyLayoutDefaults:t(\"./defaults\"),includeBasePlot:t(\"../../plots/cartesian/include_components\")(\"annotations\"),calcAutorange:t(\"./calc_autorange\"),draw:n.draw,drawOne:n.drawOne,drawRaw:n.drawRaw,hasClickToShow:a.hasClickToShow,onClick:a.onClick,convertCoords:t(\"./convert_coords\")}},{\"../../plots/cartesian/include_components\":810,\"./attributes\":598,\"./calc_autorange\":599,\"./click\":600,\"./convert_coords\":602,\"./defaults\":603,\"./draw\":604}],607:[function(t,e,r){\"use strict\";var n=t(\"../annotations/attributes\"),a=t(\"../../plot_api/edit_types\").overrideAll,i=t(\"../../plot_api/plot_template\").templatedArray;e.exports=a(i(\"annotation\",{visible:n.visible,x:{valType:\"any\"},y:{valType:\"any\"},z:{valType:\"any\"},ax:{valType:\"number\"},ay:{valType:\"number\"},xanchor:n.xanchor,xshift:n.xshift,yanchor:n.yanchor,yshift:n.yshift,text:n.text,textangle:n.textangle,font:n.font,width:n.width,height:n.height,opacity:n.opacity,align:n.align,valign:n.valign,bgcolor:n.bgcolor,bordercolor:n.bordercolor,borderpad:n.borderpad,borderwidth:n.borderwidth,showarrow:n.showarrow,arrowcolor:n.arrowcolor,arrowhead:n.arrowhead,startarrowhead:n.startarrowhead,arrowside:n.arrowside,arrowsize:n.arrowsize,startarrowsize:n.startarrowsize,arrowwidth:n.arrowwidth,standoff:n.standoff,startstandoff:n.startstandoff,hovertext:n.hovertext,hoverlabel:n.hoverlabel,captureevents:n.captureevents}),\"calc\",\"from-root\")},{\"../../plot_api/edit_types\":780,\"../../plot_api/plot_template\":787,\"../annotations/attributes\":598}],608:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\");function i(t,e){var r=e.fullSceneLayout.domain,i=e.fullLayout._size,o={pdata:null,type:\"linear\",autorange:!1,range:[-1/0,1/0]};t._xa={},n.extendFlat(t._xa,o),a.setConvert(t._xa),t._xa._offset=i.l+r.x[0]*i.w,t._xa.l2p=function(){return.5*(1+t._pdata[0]/t._pdata[3])*i.w*(r.x[1]-r.x[0])},t._ya={},n.extendFlat(t._ya,o),a.setConvert(t._ya),t._ya._offset=i.t+(1-r.y[1])*i.h,t._ya.l2p=function(){return.5*(1-t._pdata[1]/t._pdata[3])*i.h*(r.y[1]-r.y[0])}}e.exports=function(t){for(var e=t.fullSceneLayout.annotations,r=0;r<e.length;r++)i(e[r],t);t.fullLayout._infolayer.selectAll(\".annotation-\"+t.id).remove()}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798}],609:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../plots/array_container_defaults\"),o=t(\"../annotations/common_defaults\"),s=t(\"./attributes\");function l(t,e,r,i){function l(r,a){return n.coerce(t,e,s,r,a)}function c(t){var n=t+\"axis\",i={_fullLayout:{}};return i._fullLayout[n]=r[n],a.coercePosition(e,i,l,t,t,.5)}l(\"visible\")&&(o(t,e,i.fullLayout,l),c(\"x\"),c(\"y\"),c(\"z\"),n.noneOrAll(t,e,[\"x\",\"y\",\"z\"]),e.xref=\"x\",e.yref=\"y\",e.zref=\"z\",l(\"xanchor\"),l(\"yanchor\"),l(\"xshift\"),l(\"yshift\"),e.showarrow&&(e.axref=\"pixel\",e.ayref=\"pixel\",l(\"ax\",-10),l(\"ay\",-30),n.noneOrAll(t,e,[\"ax\",\"ay\"])))}e.exports=function(t,e,r){i(t,e,{name:\"annotations\",handleItemDefaults:l,fullLayout:r.fullLayout})}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../../plots/cartesian/axes\":798,\"../annotations/common_defaults\":601,\"./attributes\":607}],610:[function(t,e,r){\"use strict\";var n=t(\"../annotations/draw\").drawRaw,a=t(\"../../plots/gl3d/project\"),i=[\"x\",\"y\",\"z\"];e.exports=function(t){for(var e=t.fullSceneLayout,r=t.dataScale,o=e.annotations,s=0;s<o.length;s++){for(var l=o[s],c=!1,u=0;u<3;u++){var h=i[u],f=l[h],p=e[h+\"axis\"].r2fraction(f);if(p<0||p>1){c=!0;break}}c?t.fullLayout._infolayer.select(\".annotation-\"+t.id+'[data-index=\"'+s+'\"]').remove():(l._pdata=a(t.glplot.cameraParams,[e.xaxis.r2l(l.x)*r[0],e.yaxis.r2l(l.y)*r[1],e.zaxis.r2l(l.z)*r[2]]),n(t.graphDiv,l,s,t.id,l._xa,l._ya))}}},{\"../../plots/gl3d/project\":849,\"../annotations/draw\":604}],611:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\");e.exports={moduleType:\"component\",name:\"annotations3d\",schema:{subplots:{scene:{annotations:t(\"./attributes\")}}},layoutAttributes:t(\"./attributes\"),handleDefaults:t(\"./defaults\"),includeBasePlot:function(t,e){var r=n.subplotsRegistry.gl3d;if(!r)return;for(var i=r.attrRegex,o=Object.keys(t),s=0;s<o.length;s++){var l=o[s];i.test(l)&&(t[l].annotations||[]).length&&(a.pushUnique(e._basePlotModules,r),a.pushUnique(e._subplots.gl3d,l))}},convert:t(\"./convert\"),draw:t(\"./draw\")}},{\"../../lib\":749,\"../../registry\":881,\"./attributes\":607,\"./convert\":608,\"./defaults\":609,\"./draw\":610}],612:[function(t,e,r){\"use strict\";e.exports=t(\"world-calendars/dist/main\"),t(\"world-calendars/dist/plus\"),t(\"world-calendars/dist/calendars/chinese\"),t(\"world-calendars/dist/calendars/coptic\"),t(\"world-calendars/dist/calendars/discworld\"),t(\"world-calendars/dist/calendars/ethiopian\"),t(\"world-calendars/dist/calendars/hebrew\"),t(\"world-calendars/dist/calendars/islamic\"),t(\"world-calendars/dist/calendars/julian\"),t(\"world-calendars/dist/calendars/mayan\"),t(\"world-calendars/dist/calendars/nanakshahi\"),t(\"world-calendars/dist/calendars/nepali\"),t(\"world-calendars/dist/calendars/persian\"),t(\"world-calendars/dist/calendars/taiwan\"),t(\"world-calendars/dist/calendars/thai\"),t(\"world-calendars/dist/calendars/ummalqura\")},{\"world-calendars/dist/calendars/chinese\":579,\"world-calendars/dist/calendars/coptic\":580,\"world-calendars/dist/calendars/discworld\":581,\"world-calendars/dist/calendars/ethiopian\":582,\"world-calendars/dist/calendars/hebrew\":583,\"world-calendars/dist/calendars/islamic\":584,\"world-calendars/dist/calendars/julian\":585,\"world-calendars/dist/calendars/mayan\":586,\"world-calendars/dist/calendars/nanakshahi\":587,\"world-calendars/dist/calendars/nepali\":588,\"world-calendars/dist/calendars/persian\":589,\"world-calendars/dist/calendars/taiwan\":590,\"world-calendars/dist/calendars/thai\":591,\"world-calendars/dist/calendars/ummalqura\":592,\"world-calendars/dist/main\":593,\"world-calendars/dist/plus\":594}],613:[function(t,e,r){\"use strict\";var n=t(\"./calendars\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\"),o=i.EPOCHJD,s=i.ONEDAY,l={valType:\"enumerated\",values:Object.keys(n.calendars),editType:\"calc\",dflt:\"gregorian\"},c=function(t,e,r,n){var i={};return i[r]=l,a.coerce(t,e,i,r,n)},u={d:{0:\"dd\",\"-\":\"d\"},e:{0:\"d\",\"-\":\"d\"},a:{0:\"D\",\"-\":\"D\"},A:{0:\"DD\",\"-\":\"DD\"},j:{0:\"oo\",\"-\":\"o\"},W:{0:\"ww\",\"-\":\"w\"},m:{0:\"mm\",\"-\":\"m\"},b:{0:\"M\",\"-\":\"M\"},B:{0:\"MM\",\"-\":\"MM\"},y:{0:\"yy\",\"-\":\"yy\"},Y:{0:\"yyyy\",\"-\":\"yyyy\"},U:\"##\",w:\"##\",c:{0:\"D M d %X yyyy\",\"-\":\"D M d %X yyyy\"},x:{0:\"mm/dd/yyyy\",\"-\":\"mm/dd/yyyy\"}};var h={};function f(t){var e=h[t];return e||(e=h[t]=n.instance(t))}function p(t){return a.extendFlat({},l,{description:t})}function d(t){return\"Sets the calendar system to use with `\"+t+\"` date data.\"}var g={xcalendar:p(d(\"x\"))},m=a.extendFlat({},g,{ycalendar:p(d(\"y\"))}),v=a.extendFlat({},m,{zcalendar:p(d(\"z\"))}),y=p([\"Sets the calendar system to use for `range` and `tick0`\",\"if this is a date axis. This does not set the calendar for\",\"interpreting data on this axis, that's specified in the trace\",\"or via the global `layout.calendar`\"].join(\" \"));e.exports={moduleType:\"component\",name:\"calendars\",schema:{traces:{scatter:m,bar:m,box:m,heatmap:m,contour:m,histogram:m,histogram2d:m,histogram2dcontour:m,scatter3d:v,surface:v,mesh3d:v,scattergl:m,ohlc:g,candlestick:g},layout:{calendar:p([\"Sets the default calendar system to use for interpreting and\",\"displaying dates throughout the plot.\"].join(\" \"))},subplots:{xaxis:{calendar:y},yaxis:{calendar:y},scene:{xaxis:{calendar:y},yaxis:{calendar:y},zaxis:{calendar:y}},polar:{radialaxis:{calendar:y}}},transforms:{filter:{valuecalendar:p([\"Sets the calendar system to use for `value`, if it is a date.\"].join(\" \")),targetcalendar:p([\"Sets the calendar system to use for `target`, if it is an\",\"array of dates. If `target` is a string (eg *x*) we use the\",\"corresponding trace attribute (eg `xcalendar`) if it exists,\",\"even if `targetcalendar` is provided.\"].join(\" \"))}}},layoutAttributes:l,handleDefaults:c,handleTraceDefaults:function(t,e,r,n){for(var a=0;a<r.length;a++)c(t,e,r[a]+\"calendar\",n.calendar)},CANONICAL_SUNDAY:{chinese:\"2000-01-02\",coptic:\"2000-01-03\",discworld:\"2000-01-03\",ethiopian:\"2000-01-05\",hebrew:\"5000-01-01\",islamic:\"1000-01-02\",julian:\"2000-01-03\",mayan:\"5000-01-01\",nanakshahi:\"1000-01-05\",nepali:\"2000-01-05\",persian:\"1000-01-01\",jalali:\"1000-01-01\",taiwan:\"1000-01-04\",thai:\"2000-01-04\",ummalqura:\"1400-01-06\"},CANONICAL_TICK:{chinese:\"2000-01-01\",coptic:\"2000-01-01\",discworld:\"2000-01-01\",ethiopian:\"2000-01-01\",hebrew:\"5000-01-01\",islamic:\"1000-01-01\",julian:\"2000-01-01\",mayan:\"5000-01-01\",nanakshahi:\"1000-01-01\",nepali:\"2000-01-01\",persian:\"1000-01-01\",jalali:\"1000-01-01\",taiwan:\"1000-01-01\",thai:\"2000-01-01\",ummalqura:\"1400-01-01\"},DFLTRANGE:{chinese:[\"2000-01-01\",\"2001-01-01\"],coptic:[\"1700-01-01\",\"1701-01-01\"],discworld:[\"1800-01-01\",\"1801-01-01\"],ethiopian:[\"2000-01-01\",\"2001-01-01\"],hebrew:[\"5700-01-01\",\"5701-01-01\"],islamic:[\"1400-01-01\",\"1401-01-01\"],julian:[\"2000-01-01\",\"2001-01-01\"],mayan:[\"5200-01-01\",\"5201-01-01\"],nanakshahi:[\"0500-01-01\",\"0501-01-01\"],nepali:[\"2000-01-01\",\"2001-01-01\"],persian:[\"1400-01-01\",\"1401-01-01\"],jalali:[\"1400-01-01\",\"1401-01-01\"],taiwan:[\"0100-01-01\",\"0101-01-01\"],thai:[\"2500-01-01\",\"2501-01-01\"],ummalqura:[\"1400-01-01\",\"1401-01-01\"]},getCal:f,worldCalFmt:function(t,e,r){for(var n,a,i,l,c,h=Math.floor((e+.05)/s)+o,p=f(r).fromJD(h),d=0;-1!==(d=t.indexOf(\"%\",d));)\"0\"===(n=t.charAt(d+1))||\"-\"===n||\"_\"===n?(i=3,a=t.charAt(d+2),\"_\"===n&&(n=\"-\")):(a=n,n=\"0\",i=2),(l=u[a])?(c=\"##\"===l?\"##\":p.formatDate(l[n]),t=t.substr(0,d)+c+t.substr(d+i),d+=c.length):d+=i;return t}}},{\"../../constants/numerical\":724,\"../../lib\":749,\"./calendars\":612}],614:[function(t,e,r){\"use strict\";r.defaults=[\"#1f77b4\",\"#ff7f0e\",\"#2ca02c\",\"#d62728\",\"#9467bd\",\"#8c564b\",\"#e377c2\",\"#7f7f7f\",\"#bcbd22\",\"#17becf\"],r.defaultLine=\"#444\",r.lightLine=\"#eee\",r.background=\"#fff\",r.borderLine=\"#BEC8D9\",r.lightFraction=1e3/11},{}],615:[function(t,e,r){\"use strict\";var n=t(\"tinycolor2\"),a=t(\"fast-isnumeric\"),i=e.exports={},o=t(\"./attributes\");i.defaults=o.defaults;var s=i.defaultLine=o.defaultLine;i.lightLine=o.lightLine;var l=i.background=o.background;function c(t){if(a(t)||\"string\"!=typeof t)return t;var e=t.trim();if(\"rgb\"!==e.substr(0,3))return t;var r=e.match(/^rgba?\\s*\\(([^()]*)\\)$/);if(!r)return t;var n=r[1].trim().split(/\\s*[\\s,]\\s*/),i=\"a\"===e.charAt(3)&&4===n.length;if(!i&&3!==n.length)return t;for(var o=0;o<n.length;o++){if(!n[o].length)return t;if(n[o]=Number(n[o]),!(n[o]>=0))return t;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return t}var s=Math.round(255*n[0])+\", \"+Math.round(255*n[1])+\", \"+Math.round(255*n[2]);return i?\"rgba(\"+s+\", \"+n[3]+\")\":\"rgb(\"+s+\")\"}i.tinyRGB=function(t){var e=t.toRgb();return\"rgb(\"+Math.round(e.r)+\", \"+Math.round(e.g)+\", \"+Math.round(e.b)+\")\"},i.rgb=function(t){return i.tinyRGB(n(t))},i.opacity=function(t){return t?n(t).getAlpha():0},i.addOpacity=function(t,e){var r=n(t).toRgb();return\"rgba(\"+Math.round(r.r)+\", \"+Math.round(r.g)+\", \"+Math.round(r.b)+\", \"+e+\")\"},i.combine=function(t,e){var r=n(t).toRgb();if(1===r.a)return n(t).toRgbString();var a=n(e||l).toRgb(),i=1===a.a?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},o={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return n(o).toRgbString()},i.contrast=function(t,e,r){var a=n(t);return 1!==a.getAlpha()&&(a=n(i.combine(t,l))),(a.isDark()?e?a.lighten(e):l:r?a.darken(r):s).toString()},i.stroke=function(t,e){var r=n(e);t.style({stroke:i.tinyRGB(r),\"stroke-opacity\":r.getAlpha()})},i.fill=function(t,e){var r=n(e);t.style({fill:i.tinyRGB(r),\"fill-opacity\":r.getAlpha()})},i.clean=function(t){if(t&&\"object\"==typeof t){var e,r,n,a,o=Object.keys(t);for(e=0;e<o.length;e++)if(a=t[n=o[e]],\"color\"===n.substr(n.length-5))if(Array.isArray(a))for(r=0;r<a.length;r++)a[r]=c(a[r]);else t[n]=c(a);else if(\"colorscale\"===n.substr(n.length-10)&&Array.isArray(a))for(r=0;r<a.length;r++)Array.isArray(a[r])&&(a[r][1]=c(a[r][1]));else if(Array.isArray(a)){var s=a[0];if(!Array.isArray(s)&&s&&\"object\"==typeof s)for(r=0;r<a.length;r++)i.clean(a[r])}else a&&\"object\"==typeof a&&i.clean(a)}}},{\"./attributes\":614,\"fast-isnumeric\":241,tinycolor2:548}],616:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/layout_attributes\"),a=t(\"../../plots/font_attributes\"),i=t(\"../../lib/extend\").extendFlat,o=t(\"../../plot_api/edit_types\").overrideAll;e.exports=o({thicknessmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"pixels\"},thickness:{valType:\"number\",min:0,dflt:30},lenmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"fraction\"},len:{valType:\"number\",min:0,dflt:1},x:{valType:\"number\",dflt:1.02,min:-2,max:3},xanchor:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"left\"},xpad:{valType:\"number\",min:0,dflt:10},y:{valType:\"number\",dflt:.5,min:-2,max:3},yanchor:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\"},ypad:{valType:\"number\",min:0,dflt:10},outlinecolor:n.linecolor,outlinewidth:n.linewidth,bordercolor:n.linecolor,borderwidth:{valType:\"number\",min:0,dflt:0},bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\"},tickmode:n.tickmode,nticks:n.nticks,tick0:n.tick0,dtick:n.dtick,tickvals:n.tickvals,ticktext:n.ticktext,ticks:i({},n.ticks,{dflt:\"\"}),ticklen:n.ticklen,tickwidth:n.tickwidth,tickcolor:n.tickcolor,showticklabels:n.showticklabels,tickfont:a({}),tickangle:n.tickangle,tickformat:n.tickformat,tickformatstops:n.tickformatstops,tickprefix:n.tickprefix,showtickprefix:n.showtickprefix,ticksuffix:n.ticksuffix,showticksuffix:n.showticksuffix,separatethousands:n.separatethousands,exponentformat:n.exponentformat,minexponent:n.minexponent,showexponent:n.showexponent,title:{text:{valType:\"string\"},font:a({}),side:{valType:\"enumerated\",values:[\"right\",\"top\",\"bottom\"],dflt:\"top\"}},_deprecated:{title:{valType:\"string\"},titlefont:a({}),titleside:{valType:\"enumerated\",values:[\"right\",\"top\",\"bottom\"],dflt:\"top\"}}},\"colorbars\",\"from-root\")},{\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/cartesian/layout_attributes\":812,\"../../plots/font_attributes\":826}],617:[function(t,e,r){\"use strict\";e.exports={cn:{colorbar:\"colorbar\",cbbg:\"cbbg\",cbfill:\"cbfill\",cbfills:\"cbfills\",cbline:\"cbline\",cblines:\"cblines\",cbaxis:\"cbaxis\",cbtitleunshift:\"cbtitleunshift\",cbtitle:\"cbtitle\",cboutline:\"cboutline\",crisp:\"crisp\",jsPlaceholder:\"js-placeholder\"}}},{}],618:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plot_api/plot_template\"),i=t(\"../../plots/cartesian/tick_value_defaults\"),o=t(\"../../plots/cartesian/tick_mark_defaults\"),s=t(\"../../plots/cartesian/tick_label_defaults\"),l=t(\"./attributes\");e.exports=function(t,e,r){var c=a.newContainer(e,\"colorbar\"),u=t.colorbar||{};function h(t,e){return n.coerce(u,c,l,t,e)}var f=h(\"thicknessmode\");h(\"thickness\",\"fraction\"===f?30/(r.width-r.margin.l-r.margin.r):30);var p=h(\"lenmode\");h(\"len\",\"fraction\"===p?1:r.height-r.margin.t-r.margin.b),h(\"x\"),h(\"xanchor\"),h(\"xpad\"),h(\"y\"),h(\"yanchor\"),h(\"ypad\"),n.noneOrAll(u,c,[\"x\",\"y\"]),h(\"outlinecolor\"),h(\"outlinewidth\"),h(\"bordercolor\"),h(\"borderwidth\"),h(\"bgcolor\"),i(u,c,h,\"linear\");var d={outerTicks:!1,font:r.font};s(u,c,h,\"linear\",d),o(u,c,h,\"linear\",d),h(\"title.text\",r._dfltTitle.colorbar),n.coerceFont(h,\"title.font\",r.font),h(\"title.side\")}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/tick_label_defaults\":819,\"../../plots/cartesian/tick_mark_defaults\":820,\"../../plots/cartesian/tick_value_defaults\":821,\"./attributes\":616}],619:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"../../plots/plots\"),o=t(\"../../registry\"),s=t(\"../../plots/cartesian/axes\"),l=t(\"../dragelement\"),c=t(\"../../lib\"),u=t(\"../../lib/extend\").extendFlat,h=t(\"../../lib/setcursor\"),f=t(\"../drawing\"),p=t(\"../color\"),d=t(\"../titles\"),g=t(\"../../lib/svg_text_utils\"),m=t(\"../colorscale/helpers\").flipScale,v=t(\"../../plots/cartesian/axis_defaults\"),y=t(\"../../plots/cartesian/position_defaults\"),x=t(\"../../plots/cartesian/layout_attributes\"),b=t(\"../../constants/alignment\"),_=b.LINE_SPACING,w=b.FROM_TL,T=b.FROM_BR,k=t(\"./constants\").cn;e.exports={draw:function(t){var e=t._fullLayout._infolayer.selectAll(\"g.\"+k.colorbar).data(function(t){var e,r,n,a,i=t._fullLayout,o=t.calcdata,s=[];function l(t){return u(t,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function c(){\"function\"==typeof a.calc?a.calc(t,n,e):(e._fillgradient=r.reversescale?m(r.colorscale):r.colorscale,e._zrange=[r[a.min],r[a.max]])}for(var h=0;h<o.length;h++){var f=o[h],p=(n=f[0].trace)._module.colorbar;if(!0===n.visible&&p)for(var d=Array.isArray(p),g=d?p:[p],v=0;v<g.length;v++){var y=(a=g[v]).container;(r=y?n[y]:n)&&r.showscale&&((e=l(r.colorbar))._id=\"cb\"+n.uid+(d&&y?\"-\"+y:\"\"),e._traceIndex=n.index,e._propPrefix=(y?y+\".\":\"\")+\"colorbar.\",e._meta=n._meta,c(),s.push(e))}}for(var x in i._colorAxes)if((r=i[x]).showscale){var b=i._colorAxes[x];(e=l(r.colorbar))._id=\"cb\"+x,e._propPrefix=x+\".colorbar.\",e._meta=i._meta,a={min:\"cmin\",max:\"cmax\"},\"heatmap\"!==b[0]&&(n=b[1],a.calc=n._module.colorbar.calc),c(),s.push(e)}return s}(t),(function(t){return t._id}));e.enter().append(\"g\").attr(\"class\",(function(t){return t._id})).classed(k.colorbar,!0),e.each((function(e){var r=n.select(this);c.ensureSingle(r,\"rect\",k.cbbg),c.ensureSingle(r,\"g\",k.cbfills),c.ensureSingle(r,\"g\",k.cblines),c.ensureSingle(r,\"g\",k.cbaxis,(function(t){t.classed(k.crisp,!0)})),c.ensureSingle(r,\"g\",k.cbtitleunshift,(function(t){t.append(\"g\").classed(k.cbtitle,!0)})),c.ensureSingle(r,\"rect\",k.cboutline);var m=function(t,e,r){var o=r._fullLayout,l=o._size,h=e._fillcolor,m=e._line,b=e.title,M=b.side,A=e._zrange||n.extent((\"function\"==typeof h?h:m.color).domain()),S=\"function\"==typeof m.color?m.color:function(){return m.color},E=\"function\"==typeof h?h:function(){return h},C=e._levels,L=function(t,e,r){var n,a,i=e._levels,o=[],s=[],l=i.end+i.size/100,c=i.size,u=1.001*r[0]-.001*r[1],h=1.001*r[1]-.001*r[0];for(a=0;a<1e5&&(n=i.start+a*c,!(c>0?n>=l:n<=l));a++)n>u&&n<h&&o.push(n);if(e._fillgradient)s=[0];else if(\"function\"==typeof e._fillcolor){var f=e._filllevels;if(f)for(l=f.end+f.size/100,c=f.size,a=0;a<1e5&&(n=f.start+a*c,!(c>0?n>=l:n<=l));a++)n>r[0]&&n<r[1]&&s.push(n);else(s=o.map((function(t){return t-i.size/2}))).push(s[s.length-1]+i.size)}else e._fillcolor&&\"string\"==typeof e._fillcolor&&(s=[0]);i.size<0&&(o.reverse(),s.reverse());return{line:o,fill:s}}(0,e,A),P=L.fill,I=L.line,z=Math.round(e.thickness*(\"fraction\"===e.thicknessmode?l.w:1)),O=z/l.w,D=Math.round(e.len*(\"fraction\"===e.lenmode?l.h:1)),R=D/l.h,F=e.xpad/l.w,B=(e.borderwidth+e.outlinewidth)/2,N=e.ypad/l.h,j=Math.round(e.x*l.w+e.xpad),U=e.x-O*({middle:.5,right:1}[e.xanchor]||0),V=e.y+R*(({top:-.5,bottom:.5}[e.yanchor]||0)-.5),q=Math.round(l.h*(1-V)),H=q-D;e._lenFrac=R,e._thickFrac=O,e._xLeftFrac=U,e._yBottomFrac=V;var G=e._axis=function(t,e,r){var n=t._fullLayout,a={type:\"linear\",range:r,tickmode:e.tickmode,nticks:e.nticks,tick0:e.tick0,dtick:e.dtick,tickvals:e.tickvals,ticktext:e.ticktext,ticks:e.ticks,ticklen:e.ticklen,tickwidth:e.tickwidth,tickcolor:e.tickcolor,showticklabels:e.showticklabels,tickfont:e.tickfont,tickangle:e.tickangle,tickformat:e.tickformat,exponentformat:e.exponentformat,minexponent:e.minexponent,separatethousands:e.separatethousands,showexponent:e.showexponent,showtickprefix:e.showtickprefix,tickprefix:e.tickprefix,showticksuffix:e.showticksuffix,ticksuffix:e.ticksuffix,title:e.title,showline:!0,anchor:\"free\",side:\"right\",position:1},i={type:\"linear\",_id:\"y\"+e._id},o={letter:\"y\",font:n.font,noHover:!0,noTickson:!0,noTicklabelmode:!0,calendar:n.calendar};function s(t,e){return c.coerce(a,i,x,t,e)}return v(a,i,s,o,n),y(a,i,s,o),i}(r,e,A);G.position=e.x+F+O,-1!==[\"top\",\"bottom\"].indexOf(M)&&(G.title.side=M,G.titlex=e.x+F,G.titley=V+(\"top\"===b.side?R-N:N));if(m.color&&\"auto\"===e.tickmode){G.tickmode=\"linear\",G.tick0=C.start;var Y=C.size,W=c.constrain((q-H)/50,4,15)+1,Z=(A[1]-A[0])/((e.nticks||W)*Y);if(Z>1){var X=Math.pow(10,Math.floor(Math.log(Z)/Math.LN10));Y*=X*c.roundUp(Z/X,[2,5,10]),(Math.abs(C.start)/C.size+1e-6)%1<2e-6&&(G.tick0=0)}G.dtick=Y}G.domain=[V+N,V+R-N],G.setScale(),t.attr(\"transform\",\"translate(\"+Math.round(l.l)+\",\"+Math.round(l.t)+\")\");var J,K=t.select(\".\"+k.cbtitleunshift).attr(\"transform\",\"translate(-\"+Math.round(l.l)+\",-\"+Math.round(l.t)+\")\"),Q=t.select(\".\"+k.cbaxis),$=0;function tt(n,a){var i={propContainer:G,propName:e._propPrefix+\"title\",traceIndex:e._traceIndex,_meta:e._meta,placeholder:o._dfltTitle.colorbar,containerGroup:t.select(\".\"+k.cbtitle)},s=\"h\"===n.charAt(0)?n.substr(1):\"h\"+n;t.selectAll(\".\"+s+\",.\"+s+\"-math-group\").remove(),d.draw(r,n,u(i,a||{}))}return c.syncOrAsync([i.previousPromises,function(){if(-1!==[\"top\",\"bottom\"].indexOf(M)){var t,r=l.l+(e.x+F)*l.w,n=G.title.font.size;t=\"top\"===M?(1-(V+R-N))*l.h+l.t+3+.75*n:(1-(V+N))*l.h+l.t-3-.25*n,tt(G._id+\"title\",{attributes:{x:r,y:t,\"text-anchor\":\"start\"}})}},function(){if(-1!==[\"top\",\"bottom\"].indexOf(M)){var i=t.select(\".\"+k.cbtitle),o=i.select(\"text\"),u=[-e.outlinewidth/2,e.outlinewidth/2],h=i.select(\".h\"+G._id+\"title-math-group\").node(),p=15.6;if(o.node()&&(p=parseInt(o.node().style.fontSize,10)*_),h?($=f.bBox(h).height)>p&&(u[1]-=($-p)/2):o.node()&&!o.classed(k.jsPlaceholder)&&($=f.bBox(o.node()).height),$){if($+=5,\"top\"===M)G.domain[1]-=$/l.h,u[1]*=-1;else{G.domain[0]+=$/l.h;var d=g.lineCount(o);u[1]+=(1-d)*p}i.attr(\"transform\",\"translate(\"+u+\")\"),G.setScale()}}t.selectAll(\".\"+k.cbfills+\",.\"+k.cblines).attr(\"transform\",\"translate(0,\"+Math.round(l.h*(1-G.domain[1]))+\")\"),Q.attr(\"transform\",\"translate(0,\"+Math.round(-l.t)+\")\");var v=t.select(\".\"+k.cbfills).selectAll(\"rect.\"+k.cbfill).data(P);v.enter().append(\"rect\").classed(k.cbfill,!0).style(\"stroke\",\"none\"),v.exit().remove();var y=A.map(G.c2p).map(Math.round).sort((function(t,e){return t-e}));v.each((function(t,i){var o=[0===i?A[0]:(P[i]+P[i-1])/2,i===P.length-1?A[1]:(P[i]+P[i+1])/2].map(G.c2p).map(Math.round);o[1]=c.constrain(o[1]+(o[1]>o[0])?1:-1,y[0],y[1]);var s=n.select(this).attr({x:j,width:Math.max(z,2),y:n.min(o),height:Math.max(n.max(o)-n.min(o),2)});if(e._fillgradient)f.gradient(s,r,e._id,\"vertical\",e._fillgradient,\"fill\");else{var l=E(t).replace(\"e-\",\"\");s.attr(\"fill\",a(l).toHexString())}}));var x=t.select(\".\"+k.cblines).selectAll(\"path.\"+k.cbline).data(m.color&&m.width?I:[]);x.enter().append(\"path\").classed(k.cbline,!0),x.exit().remove(),x.each((function(t){n.select(this).attr(\"d\",\"M\"+j+\",\"+(Math.round(G.c2p(t))+m.width/2%1)+\"h\"+z).call(f.lineGroupStyle,m.width,S(t),m.dash)})),Q.selectAll(\"g.\"+G._id+\"tick,path\").remove();var b=j+z+(e.outlinewidth||0)/2-(\"outside\"===e.ticks?1:0),w=s.calcTicks(G),T=s.makeTransFn(G),C=s.getTickSigns(G)[2];return s.drawTicks(r,G,{vals:\"inside\"===G.ticks?s.clipEnds(G,w):w,layer:Q,path:s.makeTickPath(G,b,C),transFn:T}),s.drawLabels(r,G,{vals:w,layer:Q,transFn:T,labelFns:s.makeLabelFns(G,b)})},function(){if(-1===[\"top\",\"bottom\"].indexOf(M)){var t=G.title.font.size,e=G._offset+G._length/2,a=l.l+(G.position||0)*l.w+(\"right\"===G.side?10+t*(G.showticklabels?1:.5):-10-t*(G.showticklabels?.5:0));tt(\"h\"+G._id+\"title\",{avoid:{selection:n.select(r).selectAll(\"g.\"+G._id+\"tick\"),side:M,offsetLeft:l.l,offsetTop:0,maxShift:o.width},attributes:{x:a,y:e,\"text-anchor\":\"middle\"},transform:{rotate:\"-90\",offset:0}})}},i.previousPromises,function(){var n=z+e.outlinewidth/2+f.bBox(Q.node()).width;if((J=K.select(\"text\")).node()&&!J.classed(k.jsPlaceholder)){var a,o=K.select(\".h\"+G._id+\"title-math-group\").node();a=o&&-1!==[\"top\",\"bottom\"].indexOf(M)?f.bBox(o).width:f.bBox(K.node()).right-j-l.l,n=Math.max(n,a)}var s=2*e.xpad+n+e.borderwidth+e.outlinewidth/2,c=q-H;t.select(\".\"+k.cbbg).attr({x:j-e.xpad-(e.borderwidth+e.outlinewidth)/2,y:H-B,width:Math.max(s,2),height:Math.max(c+2*B,2)}).call(p.fill,e.bgcolor).call(p.stroke,e.bordercolor).style(\"stroke-width\",e.borderwidth),t.selectAll(\".\"+k.cboutline).attr({x:j,y:H+e.ypad+(\"top\"===M?$:0),width:Math.max(z,2),height:Math.max(c-2*e.ypad-$,2)}).call(p.stroke,e.outlinecolor).style({fill:\"none\",\"stroke-width\":e.outlinewidth});var u=({center:.5,right:1}[e.xanchor]||0)*s;t.attr(\"transform\",\"translate(\"+(l.l-u)+\",\"+l.t+\")\");var h={},d=w[e.yanchor],g=T[e.yanchor];\"pixels\"===e.lenmode?(h.y=e.y,h.t=c*d,h.b=c*g):(h.t=h.b=0,h.yt=e.y+e.len*d,h.yb=e.y-e.len*g);var m=w[e.xanchor],v=T[e.xanchor];if(\"pixels\"===e.thicknessmode)h.x=e.x,h.l=s*m,h.r=s*v;else{var y=s-z;h.l=y*m,h.r=y*v,h.xl=e.x-e.thickness*m,h.xr=e.x+e.thickness*v}i.autoMargin(r,e._id,h)}],r)}(r,e,t);m&&m.then&&(t._promises||[]).push(m),t._context.edits.colorbarPosition&&function(t,e,r){var n,a,i,s=r._fullLayout._size;l.init({element:t.node(),gd:r,prepFn:function(){n=t.attr(\"transform\"),h(t)},moveFn:function(r,o){t.attr(\"transform\",n+\" translate(\"+r+\",\"+o+\")\"),a=l.align(e._xLeftFrac+r/s.w,e._thickFrac,0,1,e.xanchor),i=l.align(e._yBottomFrac-o/s.h,e._lenFrac,0,1,e.yanchor);var c=l.getCursor(a,i,e.xanchor,e.yanchor);h(t,c)},doneFn:function(){if(h(t),void 0!==a&&void 0!==i){var n={};n[e._propPrefix+\"x\"]=a,n[e._propPrefix+\"y\"]=i,void 0!==e._traceIndex?o.call(\"_guiRestyle\",r,n,e._traceIndex):o.call(\"_guiRelayout\",r,n)}}})}(r,e,t)})),e.exit().each((function(e){i.autoMargin(t,e._id)})).remove(),e.order()}}},{\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/extend\":739,\"../../lib/setcursor\":769,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/axis_defaults\":800,\"../../plots/cartesian/layout_attributes\":812,\"../../plots/cartesian/position_defaults\":815,\"../../plots/plots\":861,\"../../registry\":881,\"../color\":615,\"../colorscale/helpers\":626,\"../dragelement\":634,\"../drawing\":637,\"../titles\":710,\"./constants\":617,d3:169,tinycolor2:548}],620:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t){return n.isPlainObject(t.colorbar)}},{\"../../lib\":749}],621:[function(t,e,r){\"use strict\";e.exports={moduleType:\"component\",name:\"colorbar\",attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),draw:t(\"./draw\").draw,hasColorbar:t(\"./has_colorbar\")}},{\"./attributes\":616,\"./defaults\":618,\"./draw\":619,\"./has_colorbar\":620}],622:[function(t,e,r){\"use strict\";var n=t(\"../colorbar/attributes\"),a=t(\"../../lib/regex\").counter,i=t(\"./scales.js\").scales;Object.keys(i);function o(t){return\"`\"+t+\"`\"}e.exports=function(t,e){t=t||\"\";var r,s=(e=e||{}).cLetter||\"c\",l=(\"onlyIfNumerical\"in e?e.onlyIfNumerical:Boolean(t),\"noScale\"in e?e.noScale:\"marker.line\"===t),c=\"showScaleDflt\"in e?e.showScaleDflt:\"z\"===s,u=\"string\"==typeof e.colorscaleDflt?i[e.colorscaleDflt]:null,h=e.editTypeOverride||\"\",f=t?t+\".\":\"\";\"colorAttr\"in e?(r=e.colorAttr,e.colorAttr):o(f+(r={z:\"z\",c:\"color\"}[s]));var p=s+\"auto\",d=s+\"min\",g=s+\"max\",m=s+\"mid\",v=(o(f+p),o(f+d),o(f+g),{});v[d]=v[g]=void 0;var y={};y[p]=!1;var x={};return\"color\"===r&&(x.color={valType:\"color\",arrayOk:!0,editType:h||\"style\"},e.anim&&(x.color.anim=!0)),x[p]={valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:v},x[d]={valType:\"number\",dflt:null,editType:h||\"plot\",impliedEdits:y},x[g]={valType:\"number\",dflt:null,editType:h||\"plot\",impliedEdits:y},x[m]={valType:\"number\",dflt:null,editType:\"calc\",impliedEdits:v},x.colorscale={valType:\"colorscale\",editType:\"calc\",dflt:u,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:\"boolean\",dflt:!1!==e.autoColorDflt,editType:\"calc\",impliedEdits:{colorscale:void 0}},x.reversescale={valType:\"boolean\",dflt:!1,editType:\"plot\"},l||(x.showscale={valType:\"boolean\",dflt:c,editType:\"calc\"},x.colorbar=n),e.noColorAxis||(x.coloraxis={valType:\"subplotid\",regex:a(\"coloraxis\"),dflt:null,editType:\"calc\"}),x}},{\"../../lib/regex\":765,\"../colorbar/attributes\":616,\"./scales.js\":630}],623:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"./helpers\").extractOpts;e.exports=function(t,e,r){var o,s=t._fullLayout,l=r.vals,c=r.containerStr,u=c?a.nestedProperty(e,c).get():e,h=i(u),f=!1!==h.auto,p=h.min,d=h.max,g=h.mid,m=function(){return a.aggNums(Math.min,null,l)},v=function(){return a.aggNums(Math.max,null,l)};(void 0===p?p=m():f&&(p=u._colorAx&&n(p)?Math.min(p,m()):m()),void 0===d?d=v():f&&(d=u._colorAx&&n(d)?Math.max(d,v()):v()),f&&void 0!==g&&(d-g>g-p?p=g-(d-g):d-g<g-p&&(d=g+(g-p))),p===d&&(p-=.5,d+=.5),h._sync(\"min\",p),h._sync(\"max\",d),h.autocolorscale)&&(o=p*d<0?s.colorscale.diverging:p>=0?s.colorscale.sequential:s.colorscale.sequentialminus,h._sync(\"colorscale\",o))}},{\"../../lib\":749,\"./helpers\":626,\"fast-isnumeric\":241}],624:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./helpers\").hasColorscale,i=t(\"./helpers\").extractOpts;e.exports=function(t,e){function r(t,e){var r=t[\"_\"+e];void 0!==r&&(t[e]=r)}function o(t,a){var o=a.container?n.nestedProperty(t,a.container).get():t;if(o)if(o.coloraxis)o._colorAx=e[o.coloraxis];else{var s=i(o),l=s.auto;(l||void 0===s.min)&&r(o,a.min),(l||void 0===s.max)&&r(o,a.max),s.autocolorscale&&r(o,\"colorscale\")}}for(var s=0;s<t.length;s++){var l=t[s],c=l._module.colorbar;if(c)if(Array.isArray(c))for(var u=0;u<c.length;u++)o(l,c[u]);else o(l,c);a(l,\"marker.line\")&&o(l,{container:\"marker.line\",min:\"cmin\",max:\"cmax\"})}for(var h in e._colorAxes)o(e[h],{min:\"cmin\",max:\"cmax\"})}},{\"../../lib\":749,\"./helpers\":626}],625:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../colorbar/has_colorbar\"),o=t(\"../colorbar/defaults\"),s=t(\"./scales\").isValid,l=t(\"../../registry\").traceIs;function c(t,e){var r=e.slice(0,e.length-1);return e?a.nestedProperty(t,r).get()||{}:t}e.exports=function t(e,r,u,h,f){var p=f.prefix,d=f.cLetter,g=\"_module\"in r,m=c(e,p),v=c(r,p),y=c(r._template||{},p)||{},x=function(){return delete e.coloraxis,delete r.coloraxis,t(e,r,u,h,f)};if(g){var b=u._colorAxes||{},_=h(p+\"coloraxis\");if(_){var w=l(r,\"contour\")&&a.nestedProperty(r,\"contours.coloring\").get()||\"heatmap\",T=b[_];return void(T?(T[2].push(x),T[0]!==w&&(T[0]=!1,a.warn([\"Ignoring coloraxis:\",_,\"setting\",\"as it is linked to incompatible colorscales.\"].join(\" \")))):b[_]=[w,r,[x]])}}var k=m[d+\"min\"],M=m[d+\"max\"],A=n(k)&&n(M)&&k<M;h(p+d+\"auto\",!A)?h(p+d+\"mid\"):(h(p+d+\"min\"),h(p+d+\"max\"));var S,E,C=m.colorscale,L=y.colorscale;(void 0!==C&&(S=!s(C)),void 0!==L&&(S=!s(L)),h(p+\"autocolorscale\",S),h(p+\"colorscale\"),h(p+\"reversescale\"),\"marker.line.\"!==p)&&(p&&g&&(E=i(m)),h(p+\"showscale\",E)&&(p&&y&&(v._template=y),o(m,v,u)))}},{\"../../lib\":749,\"../../registry\":881,\"../colorbar/defaults\":618,\"../colorbar/has_colorbar\":620,\"./scales\":630,\"fast-isnumeric\":241}],626:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"fast-isnumeric\"),o=t(\"../../lib\"),s=t(\"../color\"),l=t(\"./scales\").isValid;var c=[\"showscale\",\"autocolorscale\",\"colorscale\",\"reversescale\",\"colorbar\"],u=[\"min\",\"max\",\"mid\",\"auto\"];function h(t){var e,r,n,a=t._colorAx,i=a||t,o={};for(r=0;r<c.length;r++)o[n=c[r]]=i[n];if(a)for(e=\"c\",r=0;r<u.length;r++)o[n=u[r]]=i[\"c\"+n];else{var s;for(r=0;r<u.length;r++)((s=\"c\"+(n=u[r]))in i||(s=\"z\"+n)in i)&&(o[n]=i[s]);e=s.charAt(0)}return o._sync=function(t,r){var n=-1!==u.indexOf(t)?e+t:t;i[n]=i[\"_\"+n]=r},o}function f(t){for(var e=h(t),r=e.min,n=e.max,a=e.reversescale?p(e.colorscale):e.colorscale,i=a.length,o=new Array(i),s=new Array(i),l=0;l<i;l++){var c=a[l];o[l]=r+c[0]*(n-r),s[l]=c[1]}return{domain:o,range:s}}function p(t){for(var e=t.length,r=new Array(e),n=e-1,a=0;n>=0;n--,a++){var i=t[n];r[a]=[1-i[0],i[1]]}return r}function d(t,e){e=e||{};for(var r=t.domain,o=t.range,l=o.length,c=new Array(l),u=0;u<l;u++){var h=a(o[u]).toRgb();c[u]=[h.r,h.g,h.b,h.a]}var f,p=n.scale.linear().domain(r).range(c).clamp(!0),d=e.noNumericCheck,m=e.returnArray;return(f=d&&m?p:d?function(t){return g(p(t))}:m?function(t){return i(t)?p(t):a(t).isValid()?t:s.defaultLine}:function(t){return i(t)?g(p(t)):a(t).isValid()?t:s.defaultLine}).domain=p.domain,f.range=function(){return o},f}function g(t){var e={r:t[0],g:t[1],b:t[2],a:t[3]};return a(e).toRgbString()}e.exports={hasColorscale:function(t,e,r){var n=e?o.nestedProperty(t,e).get()||{}:t,a=n[r||\"color\"],s=!1;if(o.isArrayOrTypedArray(a))for(var c=0;c<a.length;c++)if(i(a[c])){s=!0;break}return o.isPlainObject(n)&&(s||!0===n.showscale||i(n.cmin)&&i(n.cmax)||l(n.colorscale)||o.isPlainObject(n.colorbar))},extractOpts:h,extractScale:f,flipScale:p,makeColorScaleFunc:d,makeColorScaleFuncFromTrace:function(t,e){return d(f(t),e)}}},{\"../../lib\":749,\"../color\":615,\"./scales\":630,d3:169,\"fast-isnumeric\":241,tinycolor2:548}],627:[function(t,e,r){\"use strict\";var n=t(\"./scales\"),a=t(\"./helpers\");e.exports={moduleType:\"component\",name:\"colorscale\",attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyLayoutDefaults:t(\"./layout_defaults\"),handleDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"./cross_trace_defaults\"),calc:t(\"./calc\"),scales:n.scales,defaultScale:n.defaultScale,getScale:n.get,isValidScale:n.isValid,hasColorscale:a.hasColorscale,extractOpts:a.extractOpts,extractScale:a.extractScale,flipScale:a.flipScale,makeColorScaleFunc:a.makeColorScaleFunc,makeColorScaleFuncFromTrace:a.makeColorScaleFuncFromTrace}},{\"./attributes\":622,\"./calc\":623,\"./cross_trace_defaults\":624,\"./defaults\":625,\"./helpers\":626,\"./layout_attributes\":628,\"./layout_defaults\":629,\"./scales\":630}],628:[function(t,e,r){\"use strict\";var n=t(\"../../lib/extend\").extendFlat,a=t(\"./attributes\"),i=t(\"./scales\").scales;e.exports={editType:\"calc\",colorscale:{editType:\"calc\",sequential:{valType:\"colorscale\",dflt:i.Reds,editType:\"calc\"},sequentialminus:{valType:\"colorscale\",dflt:i.Blues,editType:\"calc\"},diverging:{valType:\"colorscale\",dflt:i.RdBu,editType:\"calc\"}},coloraxis:n({_isSubplotObj:!0,editType:\"calc\"},a(\"\",{colorAttr:\"corresponding trace color array(s)\",noColorAxis:!0,showScaleDflt:!0}))}},{\"../../lib/extend\":739,\"./attributes\":622,\"./scales\":630}],629:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plot_api/plot_template\"),i=t(\"./layout_attributes\"),o=t(\"./defaults\");e.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"colorscale.sequential\"),r(\"colorscale.sequentialminus\"),r(\"colorscale.diverging\");var s,l,c=e._colorAxes;function u(t,e){return n.coerce(s,l,i.coloraxis,t,e)}for(var h in c){var f=c[h];if(f[0])s=t[h]||{},(l=a.newContainer(e,h,\"coloraxis\"))._name=h,o(s,l,e,u,{prefix:\"\",cLetter:\"c\"});else{for(var p=0;p<f[2].length;p++)f[2][p]();delete e._colorAxes[h]}}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"./defaults\":625,\"./layout_attributes\":628}],630:[function(t,e,r){\"use strict\";var n=t(\"tinycolor2\"),a={Greys:[[0,\"rgb(0,0,0)\"],[1,\"rgb(255,255,255)\"]],YlGnBu:[[0,\"rgb(8,29,88)\"],[.125,\"rgb(37,52,148)\"],[.25,\"rgb(34,94,168)\"],[.375,\"rgb(29,145,192)\"],[.5,\"rgb(65,182,196)\"],[.625,\"rgb(127,205,187)\"],[.75,\"rgb(199,233,180)\"],[.875,\"rgb(237,248,217)\"],[1,\"rgb(255,255,217)\"]],Greens:[[0,\"rgb(0,68,27)\"],[.125,\"rgb(0,109,44)\"],[.25,\"rgb(35,139,69)\"],[.375,\"rgb(65,171,93)\"],[.5,\"rgb(116,196,118)\"],[.625,\"rgb(161,217,155)\"],[.75,\"rgb(199,233,192)\"],[.875,\"rgb(229,245,224)\"],[1,\"rgb(247,252,245)\"]],YlOrRd:[[0,\"rgb(128,0,38)\"],[.125,\"rgb(189,0,38)\"],[.25,\"rgb(227,26,28)\"],[.375,\"rgb(252,78,42)\"],[.5,\"rgb(253,141,60)\"],[.625,\"rgb(254,178,76)\"],[.75,\"rgb(254,217,118)\"],[.875,\"rgb(255,237,160)\"],[1,\"rgb(255,255,204)\"]],Bluered:[[0,\"rgb(0,0,255)\"],[1,\"rgb(255,0,0)\"]],RdBu:[[0,\"rgb(5,10,172)\"],[.35,\"rgb(106,137,247)\"],[.5,\"rgb(190,190,190)\"],[.6,\"rgb(220,170,132)\"],[.7,\"rgb(230,145,90)\"],[1,\"rgb(178,10,28)\"]],Reds:[[0,\"rgb(220,220,220)\"],[.2,\"rgb(245,195,157)\"],[.4,\"rgb(245,160,105)\"],[1,\"rgb(178,10,28)\"]],Blues:[[0,\"rgb(5,10,172)\"],[.35,\"rgb(40,60,190)\"],[.5,\"rgb(70,100,245)\"],[.6,\"rgb(90,120,245)\"],[.7,\"rgb(106,137,247)\"],[1,\"rgb(220,220,220)\"]],Picnic:[[0,\"rgb(0,0,255)\"],[.1,\"rgb(51,153,255)\"],[.2,\"rgb(102,204,255)\"],[.3,\"rgb(153,204,255)\"],[.4,\"rgb(204,204,255)\"],[.5,\"rgb(255,255,255)\"],[.6,\"rgb(255,204,255)\"],[.7,\"rgb(255,153,255)\"],[.8,\"rgb(255,102,204)\"],[.9,\"rgb(255,102,102)\"],[1,\"rgb(255,0,0)\"]],Rainbow:[[0,\"rgb(150,0,90)\"],[.125,\"rgb(0,0,200)\"],[.25,\"rgb(0,25,255)\"],[.375,\"rgb(0,152,255)\"],[.5,\"rgb(44,255,150)\"],[.625,\"rgb(151,255,0)\"],[.75,\"rgb(255,234,0)\"],[.875,\"rgb(255,111,0)\"],[1,\"rgb(255,0,0)\"]],Portland:[[0,\"rgb(12,51,131)\"],[.25,\"rgb(10,136,186)\"],[.5,\"rgb(242,211,56)\"],[.75,\"rgb(242,143,56)\"],[1,\"rgb(217,30,30)\"]],Jet:[[0,\"rgb(0,0,131)\"],[.125,\"rgb(0,60,170)\"],[.375,\"rgb(5,255,255)\"],[.625,\"rgb(255,255,0)\"],[.875,\"rgb(250,0,0)\"],[1,\"rgb(128,0,0)\"]],Hot:[[0,\"rgb(0,0,0)\"],[.3,\"rgb(230,0,0)\"],[.6,\"rgb(255,210,0)\"],[1,\"rgb(255,255,255)\"]],Blackbody:[[0,\"rgb(0,0,0)\"],[.2,\"rgb(230,0,0)\"],[.4,\"rgb(230,210,0)\"],[.7,\"rgb(255,255,255)\"],[1,\"rgb(160,200,255)\"]],Earth:[[0,\"rgb(0,0,130)\"],[.1,\"rgb(0,180,180)\"],[.2,\"rgb(40,210,40)\"],[.4,\"rgb(230,230,50)\"],[.6,\"rgb(120,70,20)\"],[1,\"rgb(255,255,255)\"]],Electric:[[0,\"rgb(0,0,0)\"],[.15,\"rgb(30,0,100)\"],[.4,\"rgb(120,0,100)\"],[.6,\"rgb(160,90,0)\"],[.8,\"rgb(230,200,0)\"],[1,\"rgb(255,250,220)\"]],Viridis:[[0,\"#440154\"],[.06274509803921569,\"#48186a\"],[.12549019607843137,\"#472d7b\"],[.18823529411764706,\"#424086\"],[.25098039215686274,\"#3b528b\"],[.3137254901960784,\"#33638d\"],[.3764705882352941,\"#2c728e\"],[.4392156862745098,\"#26828e\"],[.5019607843137255,\"#21918c\"],[.5647058823529412,\"#1fa088\"],[.6274509803921569,\"#28ae80\"],[.6901960784313725,\"#3fbc73\"],[.7529411764705882,\"#5ec962\"],[.8156862745098039,\"#84d44b\"],[.8784313725490196,\"#addc30\"],[.9411764705882353,\"#d8e219\"],[1,\"#fde725\"]],Cividis:[[0,\"rgb(0,32,76)\"],[.058824,\"rgb(0,42,102)\"],[.117647,\"rgb(0,52,110)\"],[.176471,\"rgb(39,63,108)\"],[.235294,\"rgb(60,74,107)\"],[.294118,\"rgb(76,85,107)\"],[.352941,\"rgb(91,95,109)\"],[.411765,\"rgb(104,106,112)\"],[.470588,\"rgb(117,117,117)\"],[.529412,\"rgb(131,129,120)\"],[.588235,\"rgb(146,140,120)\"],[.647059,\"rgb(161,152,118)\"],[.705882,\"rgb(176,165,114)\"],[.764706,\"rgb(192,177,109)\"],[.823529,\"rgb(209,191,102)\"],[.882353,\"rgb(225,204,92)\"],[.941176,\"rgb(243,219,79)\"],[1,\"rgb(255,233,69)\"]]},i=a.RdBu;function o(t){var e=0;if(!Array.isArray(t)||t.length<2)return!1;if(!t[0]||!t[t.length-1])return!1;if(0!=+t[0][0]||1!=+t[t.length-1][0])return!1;for(var r=0;r<t.length;r++){var a=t[r];if(2!==a.length||+a[0]<e||!n(a[1]).isValid())return!1;e=+a[0]}return!0}e.exports={scales:a,defaultScale:i,get:function(t,e){if(e||(e=i),!t)return e;function r(){try{t=a[t]||JSON.parse(t)}catch(r){t=e}}return\"string\"==typeof t&&(r(),\"string\"==typeof t&&r()),o(t)?t:e},isValid:function(t){return void 0!==a[t]||o(t)}}},{tinycolor2:548}],631:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){var i=(t-r)/(n-r),o=i+e/(n-r),s=(i+o)/2;return\"left\"===a||\"bottom\"===a?i:\"center\"===a||\"middle\"===a?s:\"right\"===a||\"top\"===a?o:i<2/3-s?i:o>4/3-s?o:s}},{}],632:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=[[\"sw-resize\",\"s-resize\",\"se-resize\"],[\"w-resize\",\"move\",\"e-resize\"],[\"nw-resize\",\"n-resize\",\"ne-resize\"]];e.exports=function(t,e,r,i){return t=\"left\"===r?0:\"center\"===r?1:\"right\"===r?2:n.constrain(Math.floor(3*t),0,2),e=\"bottom\"===i?0:\"middle\"===i?1:\"top\"===i?2:n.constrain(Math.floor(3*e),0,2),a[e][t]}},{\"../../lib\":749}],633:[function(t,e,r){\"use strict\";r.selectMode=function(t){return\"lasso\"===t||\"select\"===t},r.drawMode=function(t){return\"drawclosedpath\"===t||\"drawopenpath\"===t||\"drawline\"===t||\"drawrect\"===t||\"drawcircle\"===t},r.openMode=function(t){return\"drawline\"===t||\"drawopenpath\"===t},r.rectMode=function(t){return\"select\"===t||\"drawline\"===t||\"drawrect\"===t||\"drawcircle\"===t},r.freeMode=function(t){return\"lasso\"===t||\"drawclosedpath\"===t||\"drawopenpath\"===t},r.selectingOrDrawing=function(t){return r.freeMode(t)||r.rectMode(t)}},{}],634:[function(t,e,r){\"use strict\";var n=t(\"mouse-event-offset\"),a=t(\"has-hover\"),i=t(\"has-passive-events\"),o=t(\"../../lib\").removeElement,s=t(\"../../plots/cartesian/constants\"),l=e.exports={};l.align=t(\"./align\"),l.getCursor=t(\"./cursor\");var c=t(\"./unhover\");function u(){var t=document.createElement(\"div\");t.className=\"dragcover\";var e=t.style;return e.position=\"fixed\",e.left=0,e.right=0,e.top=0,e.bottom=0,e.zIndex=999999999,e.background=\"none\",document.body.appendChild(t),t}function h(t){return n(t.changedTouches?t.changedTouches[0]:t,document.body)}l.unhover=c.wrapped,l.unhoverRaw=c.raw,l.init=function(t){var e,r,n,c,f,p,d,g,m=t.gd,v=1,y=m._context.doubleClickDelay,x=t.element;m._mouseDownTime||(m._mouseDownTime=0),x.style.pointerEvents=\"all\",x.onmousedown=_,i?(x._ontouchstart&&x.removeEventListener(\"touchstart\",x._ontouchstart),x._ontouchstart=_,x.addEventListener(\"touchstart\",_,{passive:!1})):x.ontouchstart=_;var b=t.clampFn||function(t,e,r){return Math.abs(t)<r&&(t=0),Math.abs(e)<r&&(e=0),[t,e]};function _(i){m._dragged=!1,m._dragging=!0;var o=h(i);e=o[0],r=o[1],d=i.target,p=i,g=2===i.buttons||i.ctrlKey,\"undefined\"==typeof i.clientX&&\"undefined\"==typeof i.clientY&&(i.clientX=e,i.clientY=r),(n=(new Date).getTime())-m._mouseDownTime<y?v+=1:(v=1,m._mouseDownTime=n),t.prepFn&&t.prepFn(i,e,r),a&&!g?(f=u()).style.cursor=window.getComputedStyle(x).cursor:a||(f=document,c=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(x).cursor),document.addEventListener(\"mouseup\",T),document.addEventListener(\"touchend\",T),!1!==t.dragmode&&(i.preventDefault(),document.addEventListener(\"mousemove\",w),document.addEventListener(\"touchmove\",w,{passive:!1}))}function w(n){n.preventDefault();var a=h(n),i=t.minDrag||s.MINDRAG,o=b(a[0]-e,a[1]-r,i),c=o[0],u=o[1];(c||u)&&(m._dragged=!0,l.unhover(m)),m._dragged&&t.moveFn&&!g&&(m._dragdata={element:x,dx:c,dy:u},t.moveFn(c,u))}function T(e){if(delete m._dragdata,!1!==t.dragmode&&(e.preventDefault(),document.removeEventListener(\"mousemove\",w),document.removeEventListener(\"touchmove\",w)),document.removeEventListener(\"mouseup\",T),document.removeEventListener(\"touchend\",T),a?o(f):c&&(f.documentElement.style.cursor=c,c=null),m._dragging){if(m._dragging=!1,(new Date).getTime()-m._mouseDownTime>y&&(v=Math.max(v-1,1)),m._dragged)t.doneFn&&t.doneFn();else if(t.clickFn&&t.clickFn(v,p),!g){var r;try{r=new MouseEvent(\"click\",e)}catch(t){var n=h(e);(r=document.createEvent(\"MouseEvents\")).initMouseEvent(\"click\",e.bubbles,e.cancelable,e.view,e.detail,e.screenX,e.screenY,n[0],n[1],e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget)}d.dispatchEvent(r)}m._dragging=!1,m._dragged=!1}else m._dragged=!1}},l.coverSlip=u},{\"../../lib\":749,\"../../plots/cartesian/constants\":804,\"./align\":631,\"./cursor\":632,\"./unhover\":635,\"has-hover\":414,\"has-passive-events\":415,\"mouse-event-offset\":458}],635:[function(t,e,r){\"use strict\";var n=t(\"../../lib/events\"),a=t(\"../../lib/throttle\"),i=t(\"../../lib/dom\").getGraphDiv,o=t(\"../fx/constants\"),s=e.exports={};s.wrapped=function(t,e,r){(t=i(t))._fullLayout&&a.clear(t._fullLayout._uid+o.HOVERID),s.raw(t,e,r)},s.raw=function(t,e){var r=t._fullLayout,a=t._hoverdata;e||(e={}),e.target&&!1===n.triggerHandler(t,\"plotly_beforehover\",e)||(r._hoverlayer.selectAll(\"g\").remove(),r._hoverlayer.selectAll(\"line\").remove(),r._hoverlayer.selectAll(\"circle\").remove(),t._hoverdata=void 0,e.target&&a&&t.emit(\"plotly_unhover\",{event:e,points:a}))}},{\"../../lib/dom\":737,\"../../lib/events\":738,\"../../lib/throttle\":774,\"../fx/constants\":649}],636:[function(t,e,r){\"use strict\";r.dash={valType:\"string\",values:[\"solid\",\"dot\",\"dash\",\"longdash\",\"dashdot\",\"longdashdot\"],dflt:\"solid\",editType:\"style\"}},{}],637:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"tinycolor2\"),o=t(\"../../registry\"),s=t(\"../color\"),l=t(\"../colorscale\"),c=t(\"../../lib\"),u=t(\"../../lib/svg_text_utils\"),h=t(\"../../constants/xmlns_namespaces\"),f=t(\"../../constants/alignment\").LINE_SPACING,p=t(\"../../constants/interactions\").DESELECTDIM,d=t(\"../../traces/scatter/subtypes\"),g=t(\"../../traces/scatter/make_bubble_size_func\"),m=t(\"../../components/fx/helpers\").appendArrayPointValue,v=e.exports={};v.font=function(t,e,r,n){c.isPlainObject(e)&&(n=e.color,r=e.size,e=e.family),e&&t.style(\"font-family\",e),r+1&&t.style(\"font-size\",r+\"px\"),n&&t.call(s.fill,n)},v.setPosition=function(t,e,r){t.attr(\"x\",e).attr(\"y\",r)},v.setSize=function(t,e,r){t.attr(\"width\",e).attr(\"height\",r)},v.setRect=function(t,e,r,n,a){t.call(v.setPosition,e,r).call(v.setSize,n,a)},v.translatePoint=function(t,e,r,n){var i=r.c2p(t.x),o=n.c2p(t.y);return!!(a(i)&&a(o)&&e.node())&&(\"text\"===e.node().nodeName?e.attr(\"x\",i).attr(\"y\",o):e.attr(\"transform\",\"translate(\"+i+\",\"+o+\")\"),!0)},v.translatePoints=function(t,e,r){t.each((function(t){var a=n.select(this);v.translatePoint(t,a,e,r)}))},v.hideOutsideRangePoint=function(t,e,r,n,a,i){e.attr(\"display\",r.isPtWithinRange(t,a)&&n.isPtWithinRange(t,i)?null:\"none\")},v.hideOutsideRangePoints=function(t,e){if(e._hasClipOnAxisFalse){var r=e.xaxis,a=e.yaxis;t.each((function(e){var i=e[0].trace,s=i.xcalendar,l=i.ycalendar,c=o.traceIs(i,\"bar-like\")?\".bartext\":\".point,.textpoint\";t.selectAll(c).each((function(t){v.hideOutsideRangePoint(t,n.select(this),r,a,s,l)}))}))}},v.crispRound=function(t,e,r){return e&&a(e)?t._context.staticPlot?e:e<1?1:Math.round(e):r||0},v.singleLineStyle=function(t,e,r,n,a){e.style(\"fill\",\"none\");var i=(((t||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||\"\";s.stroke(e,n||i.color),v.dashLine(e,l,o)},v.lineGroupStyle=function(t,e,r,a){t.style(\"fill\",\"none\").each((function(t){var i=(((t||[])[0]||{}).trace||{}).line||{},o=e||i.width||0,l=a||i.dash||\"\";n.select(this).call(s.stroke,r||i.color).call(v.dashLine,l,o)}))},v.dashLine=function(t,e,r){r=+r||0,e=v.dashStyle(e,r),t.style({\"stroke-dasharray\":e,\"stroke-width\":r+\"px\"})},v.dashStyle=function(t,e){e=+e||1;var r=Math.max(e,3);return\"solid\"===t?t=\"\":\"dot\"===t?t=r+\"px,\"+r+\"px\":\"dash\"===t?t=3*r+\"px,\"+3*r+\"px\":\"longdash\"===t?t=5*r+\"px,\"+5*r+\"px\":\"dashdot\"===t?t=3*r+\"px,\"+r+\"px,\"+r+\"px,\"+r+\"px\":\"longdashdot\"===t&&(t=5*r+\"px,\"+2*r+\"px,\"+r+\"px,\"+2*r+\"px\"),t},v.singleFillStyle=function(t){var e=(((n.select(t.node()).data()[0]||[])[0]||{}).trace||{}).fillcolor;e&&t.call(s.fill,e)},v.fillGroupStyle=function(t){t.style(\"stroke-width\",0).each((function(t){var e=n.select(this);t[0].trace&&e.call(s.fill,t[0].trace.fillcolor)}))};var y=t(\"./symbol_defs\");v.symbolNames=[],v.symbolFuncs=[],v.symbolNeedLines={},v.symbolNoDot={},v.symbolNoFill={},v.symbolList=[],Object.keys(y).forEach((function(t){var e=y[t],r=e.n;v.symbolList.push(r,String(r),t,r+100,String(r+100),t+\"-open\"),v.symbolNames[r]=t,v.symbolFuncs[r]=e.f,e.needLine&&(v.symbolNeedLines[r]=!0),e.noDot?v.symbolNoDot[r]=!0:v.symbolList.push(r+200,String(r+200),t+\"-dot\",r+300,String(r+300),t+\"-open-dot\"),e.noFill&&(v.symbolNoFill[r]=!0)}));var x=v.symbolNames.length;function b(t,e){var r=t%100;return v.symbolFuncs[r](e)+(t>=200?\"M0,0.5L0.5,0L0,-0.5L-0.5,0Z\":\"\")}v.symbolNumber=function(t){if(a(t))t=+t;else if(\"string\"==typeof t){var e=0;t.indexOf(\"-open\")>0&&(e=100,t=t.replace(\"-open\",\"\")),t.indexOf(\"-dot\")>0&&(e+=200,t=t.replace(\"-dot\",\"\")),(t=v.symbolNames.indexOf(t))>=0&&(t+=e)}return t%100>=x||t>=400?0:Math.floor(Math.max(t,0))};var _={x1:1,x2:0,y1:0,y2:0},w={x1:0,x2:0,y1:1,y2:0},T=n.format(\"~.1f\"),k={radial:{node:\"radialGradient\"},radialreversed:{node:\"radialGradient\",reversed:!0},horizontal:{node:\"linearGradient\",attrs:_},horizontalreversed:{node:\"linearGradient\",attrs:_,reversed:!0},vertical:{node:\"linearGradient\",attrs:w},verticalreversed:{node:\"linearGradient\",attrs:w,reversed:!0}};v.gradient=function(t,e,r,a,o,l){for(var u=o.length,h=k[a],f=new Array(u),p=0;p<u;p++)h.reversed?f[u-1-p]=[T(100*(1-o[p][0])),o[p][1]]:f[p]=[T(100*o[p][0]),o[p][1]];var d=e._fullLayout,g=\"g\"+d._uid+\"-\"+r,m=d._defs.select(\".gradients\").selectAll(\"#\"+g).data([a+f.join(\";\")],c.identity);m.exit().remove(),m.enter().append(h.node).each((function(){var t=n.select(this);h.attrs&&t.attr(h.attrs),t.attr(\"id\",g);var e=t.selectAll(\"stop\").data(f);e.exit().remove(),e.enter().append(\"stop\"),e.each((function(t){var e=i(t[1]);n.select(this).attr({offset:t[0]+\"%\",\"stop-color\":s.tinyRGB(e),\"stop-opacity\":e.getAlpha()})}))})),t.style(l,z(g,e)).style(l+\"-opacity\",null);var v=function(t){return\".\"+t.attr(\"class\").replace(/\\s/g,\".\")},y=v(n.select(t.node().parentNode))+\">\"+v(t);d._gradientUrlQueryParts[y]=1},v.initGradients=function(t){var e=t._fullLayout;c.ensureSingle(e._defs,\"g\",\"gradients\").selectAll(\"linearGradient,radialGradient\").remove(),e._gradientUrlQueryParts={}},v.pointStyle=function(t,e,r){if(t.size()){var a=v.makePointStyleFns(e);t.each((function(t){v.singlePointStyle(t,n.select(this),e,a,r)}))}},v.singlePointStyle=function(t,e,r,n,a){var i=r.marker,o=i.line;if(e.style(\"opacity\",n.selectedOpacityFn?n.selectedOpacityFn(t):void 0===t.mo?i.opacity:t.mo),n.ms2mrc){var l;l=\"various\"===t.ms||\"various\"===i.size?3:n.ms2mrc(t.ms),t.mrc=l,n.selectedSizeFn&&(l=t.mrc=n.selectedSizeFn(t));var u=v.symbolNumber(t.mx||i.symbol)||0;t.om=u%200>=100,e.attr(\"d\",b(u,l))}var h,f,p,d=!1;if(t.so)p=o.outlierwidth,f=o.outliercolor,h=i.outliercolor;else{var g=(o||{}).width;p=(t.mlw+1||g+1||(t.trace?(t.trace.marker.line||{}).width:0)+1)-1||0,f=\"mlc\"in t?t.mlcc=n.lineScale(t.mlc):c.isArrayOrTypedArray(o.color)?s.defaultLine:o.color,c.isArrayOrTypedArray(i.color)&&(h=s.defaultLine,d=!0),h=\"mc\"in t?t.mcc=n.markerScale(t.mc):i.color||\"rgba(0,0,0,0)\",n.selectedColorFn&&(h=n.selectedColorFn(t))}if(t.om)e.call(s.stroke,h).style({\"stroke-width\":(p||1)+\"px\",fill:\"none\"});else{e.style(\"stroke-width\",(t.isBlank?0:p)+\"px\");var m=i.gradient,y=t.mgt;if(y?d=!0:y=m&&m.type,Array.isArray(y)&&(y=y[0],k[y]||(y=0)),y&&\"none\"!==y){var x=t.mgc;x?d=!0:x=m.color;var _=r.uid;d&&(_+=\"-\"+t.i),v.gradient(e,a,_,y,[[0,x],[1,h]],\"fill\")}else s.fill(e,h);p&&s.stroke(e,f)}},v.makePointStyleFns=function(t){var e={},r=t.marker;return e.markerScale=v.tryColorscale(r,\"\"),e.lineScale=v.tryColorscale(r,\"line\"),o.traceIs(t,\"symbols\")&&(e.ms2mrc=d.isBubble(t)?g(t):function(){return(r.size||6)/2}),t.selectedpoints&&c.extendFlat(e,v.makeSelectedPointStyleFns(t)),e},v.makeSelectedPointStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.marker||{},i=r.marker||{},s=n.marker||{},l=a.opacity,u=i.opacity,h=s.opacity,f=void 0!==u,d=void 0!==h;(c.isArrayOrTypedArray(l)||f||d)&&(e.selectedOpacityFn=function(t){var e=void 0===t.mo?a.opacity:t.mo;return t.selected?f?u:e:d?h:p*e});var g=a.color,m=i.color,v=s.color;(m||v)&&(e.selectedColorFn=function(t){var e=t.mcc||g;return t.selected?m||e:v||e});var y=a.size,x=i.size,b=s.size,_=void 0!==x,w=void 0!==b;return o.traceIs(t,\"symbols\")&&(_||w)&&(e.selectedSizeFn=function(t){var e=t.mrc||y/2;return t.selected?_?x/2:e:w?b/2:e}),e},v.makeSelectedTextStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.textfont||{},i=r.textfont||{},o=n.textfont||{},l=a.color,c=i.color,u=o.color;return e.selectedTextColorFn=function(t){var e=t.tc||l;return t.selected?c||e:u||(c?e:s.addOpacity(e,p))},e},v.selectedPointStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=v.makeSelectedPointStyleFns(e),a=e.marker||{},i=[];r.selectedOpacityFn&&i.push((function(t,e){t.style(\"opacity\",r.selectedOpacityFn(e))})),r.selectedColorFn&&i.push((function(t,e){s.fill(t,r.selectedColorFn(e))})),r.selectedSizeFn&&i.push((function(t,e){var n=e.mx||a.symbol||0,i=r.selectedSizeFn(e);t.attr(\"d\",b(v.symbolNumber(n),i)),e.mrc2=i})),i.length&&t.each((function(t){for(var e=n.select(this),r=0;r<i.length;r++)i[r](e,t)}))}},v.tryColorscale=function(t,e){var r=e?c.nestedProperty(t,e).get():t;if(r){var n=r.color;if((r.colorscale||r._colorAx)&&c.isArrayOrTypedArray(n))return l.makeColorScaleFuncFromTrace(r)}return c.identity};var M={start:1,end:-1,middle:0,bottom:1,top:-1};function A(t,e,r,a){var i=n.select(t.node().parentNode),o=-1!==e.indexOf(\"top\")?\"top\":-1!==e.indexOf(\"bottom\")?\"bottom\":\"middle\",s=-1!==e.indexOf(\"left\")?\"end\":-1!==e.indexOf(\"right\")?\"start\":\"middle\",l=a?a/.8+1:0,c=(u.lineCount(t)-1)*f+1,h=M[s]*l,p=.75*r+M[o]*l+(M[o]-1)*c*r/2;t.attr(\"text-anchor\",s),i.attr(\"transform\",\"translate(\"+h+\",\"+p+\")\")}function S(t,e){var r=t.ts||e.textfont.size;return a(r)&&r>0?r:0}v.textPointStyle=function(t,e,r){if(t.size()){var a;if(e.selectedpoints){var i=v.makeSelectedTextStyleFns(e);a=i.selectedTextColorFn}var o=e.texttemplate,s=r._fullLayout;t.each((function(t){var i=n.select(this),l=o?c.extractOption(t,e,\"txt\",\"texttemplate\"):c.extractOption(t,e,\"tx\",\"text\");if(l||0===l){if(o){var h=e._module.formatLabels?e._module.formatLabels(t,e,s):{},f={};m(f,e,t.i);var p=e._meta||{};l=c.texttemplateString(l,h,s._d3locale,f,t,p)}var d=t.tp||e.textposition,g=S(t,e),y=a?a(t):t.tc||e.textfont.color;i.call(v.font,t.tf||e.textfont.family,g,y).text(l).call(u.convertToTspans,r).call(A,d,g,t.mrc)}else i.remove()}))}},v.selectedTextStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=v.makeSelectedTextStyleFns(e);t.each((function(t){var a=n.select(this),i=r.selectedTextColorFn(t),o=t.tp||e.textposition,l=S(t,e);s.fill(a,i),A(a,o,l,t.mrc2||t.mrc)}))}};function E(t,e,r,a){var i=t[0]-e[0],o=t[1]-e[1],s=r[0]-e[0],l=r[1]-e[1],c=Math.pow(i*i+o*o,.25),u=Math.pow(s*s+l*l,.25),h=(u*u*i-c*c*s)*a,f=(u*u*o-c*c*l)*a,p=3*u*(c+u),d=3*c*(c+u);return[[n.round(e[0]+(p&&h/p),2),n.round(e[1]+(p&&f/p),2)],[n.round(e[0]-(d&&h/d),2),n.round(e[1]-(d&&f/d),2)]]}v.smoothopen=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\");var r,n=\"M\"+t[0],a=[];for(r=1;r<t.length-1;r++)a.push(E(t[r-1],t[r],t[r+1],e));for(n+=\"Q\"+a[0][0]+\" \"+t[1],r=2;r<t.length-1;r++)n+=\"C\"+a[r-2][1]+\" \"+a[r-1][0]+\" \"+t[r];return n+=\"Q\"+a[t.length-3][1]+\" \"+t[t.length-1]},v.smoothclosed=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\")+\"Z\";var r,n=\"M\"+t[0],a=t.length-1,i=[E(t[a],t[0],t[1],e)];for(r=1;r<a;r++)i.push(E(t[r-1],t[r],t[r+1],e));for(i.push(E(t[a-1],t[a],t[0],e)),r=1;r<=a;r++)n+=\"C\"+i[r-1][1]+\" \"+i[r][0]+\" \"+t[r];return n+=\"C\"+i[a][1]+\" \"+i[0][0]+\" \"+t[0]+\"Z\"};var C={hv:function(t,e){return\"H\"+n.round(e[0],2)+\"V\"+n.round(e[1],2)},vh:function(t,e){return\"V\"+n.round(e[1],2)+\"H\"+n.round(e[0],2)},hvh:function(t,e){return\"H\"+n.round((t[0]+e[0])/2,2)+\"V\"+n.round(e[1],2)+\"H\"+n.round(e[0],2)},vhv:function(t,e){return\"V\"+n.round((t[1]+e[1])/2,2)+\"H\"+n.round(e[0],2)+\"V\"+n.round(e[1],2)}},L=function(t,e){return\"L\"+n.round(e[0],2)+\",\"+n.round(e[1],2)};v.steps=function(t){var e=C[t]||L;return function(t){for(var r=\"M\"+n.round(t[0][0],2)+\",\"+n.round(t[0][1],2),a=1;a<t.length;a++)r+=e(t[a-1],t[a]);return r}},v.makeTester=function(){var t=c.ensureSingleById(n.select(\"body\"),\"svg\",\"js-plotly-tester\",(function(t){t.attr(h.svgAttrs).style({position:\"absolute\",left:\"-10000px\",top:\"-10000px\",width:\"9000px\",height:\"9000px\",\"z-index\":\"1\"})})),e=c.ensureSingle(t,\"path\",\"js-reference-point\",(function(t){t.attr(\"d\",\"M0,0H1V1H0Z\").style({\"stroke-width\":0,fill:\"black\"})}));v.tester=t,v.testref=e},v.savedBBoxes={};var P=0;function I(t){var e=t.getAttribute(\"data-unformatted\");if(null!==e)return e+t.getAttribute(\"data-math\")+t.getAttribute(\"text-anchor\")+t.getAttribute(\"style\")}function z(t,e){if(!t)return null;var r=e._context;return\"url('\"+(r._exportedPlot?\"\":r._baseUrl||\"\")+\"#\"+t+\"')\"}v.bBox=function(t,e,r){var a,i,o;if(r||(r=I(t)),r){if(a=v.savedBBoxes[r])return c.extendFlat({},a)}else if(1===t.childNodes.length){var s=t.childNodes[0];if(r=I(s)){var l=+s.getAttribute(\"x\")||0,h=+s.getAttribute(\"y\")||0,f=s.getAttribute(\"transform\");if(!f){var p=v.bBox(s,!1,r);return l&&(p.left+=l,p.right+=l),h&&(p.top+=h,p.bottom+=h),p}if(r+=\"~\"+l+\"~\"+h+\"~\"+f,a=v.savedBBoxes[r])return c.extendFlat({},a)}}e?i=t:(o=v.tester.node(),i=t.cloneNode(!0),o.appendChild(i)),n.select(i).attr(\"transform\",null).call(u.positionText,0,0);var d=i.getBoundingClientRect(),g=v.testref.node().getBoundingClientRect();e||o.removeChild(i);var m={height:d.height,width:d.width,left:d.left-g.left,top:d.top-g.top,right:d.right-g.left,bottom:d.bottom-g.top};return P>=1e4&&(v.savedBBoxes={},P=0),r&&(v.savedBBoxes[r]=m),P++,c.extendFlat({},m)},v.setClipUrl=function(t,e,r){t.attr(\"clip-path\",z(e,r))},v.getTranslate=function(t){var e=(t[t.attr?\"attr\":\"getAttribute\"](\"transform\")||\"\").replace(/.*\\btranslate\\((-?\\d*\\.?\\d*)[^-\\d]*(-?\\d*\\.?\\d*)[^\\d].*/,(function(t,e,r){return[e,r].join(\" \")})).split(\" \");return{x:+e[0]||0,y:+e[1]||0}},v.setTranslate=function(t,e,r){var n=t.attr?\"attr\":\"getAttribute\",a=t.attr?\"attr\":\"setAttribute\",i=t[n](\"transform\")||\"\";return e=e||0,r=r||0,i=i.replace(/(\\btranslate\\(.*?\\);?)/,\"\").trim(),i=(i+=\" translate(\"+e+\", \"+r+\")\").trim(),t[a](\"transform\",i),i},v.getScale=function(t){var e=(t[t.attr?\"attr\":\"getAttribute\"](\"transform\")||\"\").replace(/.*\\bscale\\((\\d*\\.?\\d*)[^\\d]*(\\d*\\.?\\d*)[^\\d].*/,(function(t,e,r){return[e,r].join(\" \")})).split(\" \");return{x:+e[0]||1,y:+e[1]||1}},v.setScale=function(t,e,r){var n=t.attr?\"attr\":\"getAttribute\",a=t.attr?\"attr\":\"setAttribute\",i=t[n](\"transform\")||\"\";return e=e||1,r=r||1,i=i.replace(/(\\bscale\\(.*?\\);?)/,\"\").trim(),i=(i+=\" scale(\"+e+\", \"+r+\")\").trim(),t[a](\"transform\",i),i};var O=/\\s*sc.*/;v.setPointGroupScale=function(t,e,r){if(e=e||1,r=r||1,t){var n=1===e&&1===r?\"\":\" scale(\"+e+\",\"+r+\")\";t.each((function(){var t=(this.getAttribute(\"transform\")||\"\").replace(O,\"\");t=(t+=n).trim(),this.setAttribute(\"transform\",t)}))}};var D=/translate\\([^)]*\\)\\s*$/;v.setTextPointsScale=function(t,e,r){t&&t.each((function(){var t,a=n.select(this),i=a.select(\"text\");if(i.node()){var o=parseFloat(i.attr(\"x\")||0),s=parseFloat(i.attr(\"y\")||0),l=(a.attr(\"transform\")||\"\").match(D);t=1===e&&1===r?[]:[\"translate(\"+o+\",\"+s+\")\",\"scale(\"+e+\",\"+r+\")\",\"translate(\"+-o+\",\"+-s+\")\"],l&&t.push(l),a.attr(\"transform\",t.join(\" \"))}}))}},{\"../../components/fx/helpers\":651,\"../../constants/alignment\":717,\"../../constants/interactions\":723,\"../../constants/xmlns_namespaces\":725,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../registry\":881,\"../../traces/scatter/make_bubble_size_func\":1173,\"../../traces/scatter/subtypes\":1181,\"../color\":615,\"../colorscale\":627,\"./symbol_defs\":638,d3:169,\"fast-isnumeric\":241,tinycolor2:548}],638:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports={circle:{n:0,f:function(t){var e=n.round(t,2);return\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"}},square:{n:1,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"}},diamond:{n:2,f:function(t){var e=n.round(1.3*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"Z\"}},cross:{n:3,f:function(t){var e=n.round(.4*t,2),r=n.round(1.2*t,2);return\"M\"+r+\",\"+e+\"H\"+e+\"V\"+r+\"H-\"+e+\"V\"+e+\"H-\"+r+\"V-\"+e+\"H-\"+e+\"V-\"+r+\"H\"+e+\"V-\"+e+\"H\"+r+\"Z\"}},x:{n:4,f:function(t){var e=n.round(.8*t/Math.sqrt(2),2),r=\"l\"+e+\",\"+e,a=\"l\"+e+\",-\"+e,i=\"l-\"+e+\",-\"+e,o=\"l-\"+e+\",\"+e;return\"M0,\"+e+r+a+i+a+i+o+i+o+r+o+r+\"Z\"}},\"triangle-up\":{n:5,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M-\"+e+\",\"+n.round(t/2,2)+\"H\"+e+\"L0,-\"+n.round(t,2)+\"Z\"}},\"triangle-down\":{n:6,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M-\"+e+\",-\"+n.round(t/2,2)+\"H\"+e+\"L0,\"+n.round(t,2)+\"Z\"}},\"triangle-left\":{n:7,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M\"+n.round(t/2,2)+\",-\"+e+\"V\"+e+\"L-\"+n.round(t,2)+\",0Z\"}},\"triangle-right\":{n:8,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M-\"+n.round(t/2,2)+\",-\"+e+\"V\"+e+\"L\"+n.round(t,2)+\",0Z\"}},\"triangle-ne\":{n:9,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M-\"+r+\",-\"+e+\"H\"+e+\"V\"+r+\"Z\"}},\"triangle-se\":{n:10,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M\"+e+\",-\"+r+\"V\"+e+\"H-\"+r+\"Z\"}},\"triangle-sw\":{n:11,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M\"+r+\",\"+e+\"H-\"+e+\"V-\"+r+\"Z\"}},\"triangle-nw\":{n:12,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M-\"+e+\",\"+r+\"V-\"+e+\"H\"+r+\"Z\"}},pentagon:{n:13,f:function(t){var e=n.round(.951*t,2),r=n.round(.588*t,2),a=n.round(-t,2),i=n.round(-.309*t,2);return\"M\"+e+\",\"+i+\"L\"+r+\",\"+n.round(.809*t,2)+\"H-\"+r+\"L-\"+e+\",\"+i+\"L0,\"+a+\"Z\"}},hexagon:{n:14,f:function(t){var e=n.round(t,2),r=n.round(t/2,2),a=n.round(t*Math.sqrt(3)/2,2);return\"M\"+a+\",-\"+r+\"V\"+r+\"L0,\"+e+\"L-\"+a+\",\"+r+\"V-\"+r+\"L0,-\"+e+\"Z\"}},hexagon2:{n:15,f:function(t){var e=n.round(t,2),r=n.round(t/2,2),a=n.round(t*Math.sqrt(3)/2,2);return\"M-\"+r+\",\"+a+\"H\"+r+\"L\"+e+\",0L\"+r+\",-\"+a+\"H-\"+r+\"L-\"+e+\",0Z\"}},octagon:{n:16,f:function(t){var e=n.round(.924*t,2),r=n.round(.383*t,2);return\"M-\"+r+\",-\"+e+\"H\"+r+\"L\"+e+\",-\"+r+\"V\"+r+\"L\"+r+\",\"+e+\"H-\"+r+\"L-\"+e+\",\"+r+\"V-\"+r+\"Z\"}},star:{n:17,f:function(t){var e=1.4*t,r=n.round(.225*e,2),a=n.round(.951*e,2),i=n.round(.363*e,2),o=n.round(.588*e,2),s=n.round(-e,2),l=n.round(-.309*e,2),c=n.round(.118*e,2),u=n.round(.809*e,2);return\"M\"+r+\",\"+l+\"H\"+a+\"L\"+i+\",\"+c+\"L\"+o+\",\"+u+\"L0,\"+n.round(.382*e,2)+\"L-\"+o+\",\"+u+\"L-\"+i+\",\"+c+\"L-\"+a+\",\"+l+\"H-\"+r+\"L0,\"+s+\"Z\"}},hexagram:{n:18,f:function(t){var e=n.round(.66*t,2),r=n.round(.38*t,2),a=n.round(.76*t,2);return\"M-\"+a+\",0l-\"+r+\",-\"+e+\"h\"+a+\"l\"+r+\",-\"+e+\"l\"+r+\",\"+e+\"h\"+a+\"l-\"+r+\",\"+e+\"l\"+r+\",\"+e+\"h-\"+a+\"l-\"+r+\",\"+e+\"l-\"+r+\",-\"+e+\"h-\"+a+\"Z\"}},\"star-triangle-up\":{n:19,f:function(t){var e=n.round(t*Math.sqrt(3)*.8,2),r=n.round(.8*t,2),a=n.round(1.6*t,2),i=n.round(4*t,2),o=\"A \"+i+\",\"+i+\" 0 0 1 \";return\"M-\"+e+\",\"+r+o+e+\",\"+r+o+\"0,-\"+a+o+\"-\"+e+\",\"+r+\"Z\"}},\"star-triangle-down\":{n:20,f:function(t){var e=n.round(t*Math.sqrt(3)*.8,2),r=n.round(.8*t,2),a=n.round(1.6*t,2),i=n.round(4*t,2),o=\"A \"+i+\",\"+i+\" 0 0 1 \";return\"M\"+e+\",-\"+r+o+\"-\"+e+\",-\"+r+o+\"0,\"+a+o+e+\",-\"+r+\"Z\"}},\"star-square\":{n:21,f:function(t){var e=n.round(1.1*t,2),r=n.round(2*t,2),a=\"A \"+r+\",\"+r+\" 0 0 1 \";return\"M-\"+e+\",-\"+e+a+\"-\"+e+\",\"+e+a+e+\",\"+e+a+e+\",-\"+e+a+\"-\"+e+\",-\"+e+\"Z\"}},\"star-diamond\":{n:22,f:function(t){var e=n.round(1.4*t,2),r=n.round(1.9*t,2),a=\"A \"+r+\",\"+r+\" 0 0 1 \";return\"M-\"+e+\",0\"+a+\"0,\"+e+a+e+\",0\"+a+\"0,-\"+e+a+\"-\"+e+\",0Z\"}},\"diamond-tall\":{n:23,f:function(t){var e=n.round(.7*t,2),r=n.round(1.4*t,2);return\"M0,\"+r+\"L\"+e+\",0L0,-\"+r+\"L-\"+e+\",0Z\"}},\"diamond-wide\":{n:24,f:function(t){var e=n.round(1.4*t,2),r=n.round(.7*t,2);return\"M0,\"+r+\"L\"+e+\",0L0,-\"+r+\"L-\"+e+\",0Z\"}},hourglass:{n:25,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"H-\"+e+\"L\"+e+\",-\"+e+\"H-\"+e+\"Z\"},noDot:!0},bowtie:{n:26,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"V-\"+e+\"L-\"+e+\",\"+e+\"V-\"+e+\"Z\"},noDot:!0},\"circle-cross\":{n:27,f:function(t){var e=n.round(t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"},needLine:!0,noDot:!0},\"circle-x\":{n:28,f:function(t){var e=n.round(t,2),r=n.round(t/Math.sqrt(2),2);return\"M\"+r+\",\"+r+\"L-\"+r+\",-\"+r+\"M\"+r+\",-\"+r+\"L-\"+r+\",\"+r+\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"},needLine:!0,noDot:!0},\"square-cross\":{n:29,f:function(t){var e=n.round(t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"square-x\":{n:30,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e+\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e+\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"diamond-cross\":{n:31,f:function(t){var e=n.round(1.3*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"ZM0,-\"+e+\"V\"+e+\"M-\"+e+\",0H\"+e},needLine:!0,noDot:!0},\"diamond-x\":{n:32,f:function(t){var e=n.round(1.3*t,2),r=n.round(.65*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"ZM-\"+r+\",-\"+r+\"L\"+r+\",\"+r+\"M-\"+r+\",\"+r+\"L\"+r+\",-\"+r},needLine:!0,noDot:!0},\"cross-thin\":{n:33,f:function(t){var e=n.round(1.4*t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e},needLine:!0,noDot:!0,noFill:!0},\"x-thin\":{n:34,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e+\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(t){var e=n.round(1.2*t,2),r=n.round(.85*t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+r+\",\"+r+\"L-\"+r+\",-\"+r+\"M\"+r+\",-\"+r+\"L-\"+r+\",\"+r},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(t){var e=n.round(t/2,2),r=n.round(t,2);return\"M\"+e+\",\"+r+\"V-\"+r+\"m-\"+r+\",0V\"+r+\"M\"+r+\",\"+e+\"H-\"+r+\"m0,-\"+r+\"H\"+r},needLine:!0,noFill:!0},\"y-up\":{n:37,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M-\"+e+\",\"+a+\"L0,0M\"+e+\",\"+a+\"L0,0M0,-\"+r+\"L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"y-down\":{n:38,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M-\"+e+\",-\"+a+\"L0,0M\"+e+\",-\"+a+\"L0,0M0,\"+r+\"L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"y-left\":{n:39,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M\"+a+\",\"+e+\"L0,0M\"+a+\",-\"+e+\"L0,0M-\"+r+\",0L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"y-right\":{n:40,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M-\"+a+\",\"+e+\"L0,0M-\"+a+\",-\"+e+\"L0,0M\"+r+\",0L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"line-ew\":{n:41,f:function(t){var e=n.round(1.4*t,2);return\"M\"+e+\",0H-\"+e},needLine:!0,noDot:!0,noFill:!0},\"line-ns\":{n:42,f:function(t){var e=n.round(1.4*t,2);return\"M0,\"+e+\"V-\"+e},needLine:!0,noDot:!0,noFill:!0},\"line-ne\":{n:43,f:function(t){var e=n.round(t,2);return\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e},needLine:!0,noDot:!0,noFill:!0},\"line-nw\":{n:44,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e},needLine:!0,noDot:!0,noFill:!0},\"arrow-up\":{n:45,f:function(t){var e=n.round(t,2);return\"M0,0L-\"+e+\",\"+n.round(2*t,2)+\"H\"+e+\"Z\"},noDot:!0},\"arrow-down\":{n:46,f:function(t){var e=n.round(t,2);return\"M0,0L-\"+e+\",-\"+n.round(2*t,2)+\"H\"+e+\"Z\"},noDot:!0},\"arrow-left\":{n:47,f:function(t){var e=n.round(2*t,2),r=n.round(t,2);return\"M0,0L\"+e+\",-\"+r+\"V\"+r+\"Z\"},noDot:!0},\"arrow-right\":{n:48,f:function(t){var e=n.round(2*t,2),r=n.round(t,2);return\"M0,0L-\"+e+\",-\"+r+\"V\"+r+\"Z\"},noDot:!0},\"arrow-bar-up\":{n:49,f:function(t){var e=n.round(t,2);return\"M-\"+e+\",0H\"+e+\"M0,0L-\"+e+\",\"+n.round(2*t,2)+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"arrow-bar-down\":{n:50,f:function(t){var e=n.round(t,2);return\"M-\"+e+\",0H\"+e+\"M0,0L-\"+e+\",-\"+n.round(2*t,2)+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"arrow-bar-left\":{n:51,f:function(t){var e=n.round(2*t,2),r=n.round(t,2);return\"M0,-\"+r+\"V\"+r+\"M0,0L\"+e+\",-\"+r+\"V\"+r+\"Z\"},needLine:!0,noDot:!0},\"arrow-bar-right\":{n:52,f:function(t){var e=n.round(2*t,2),r=n.round(t,2);return\"M0,-\"+r+\"V\"+r+\"M0,0L-\"+e+\",-\"+r+\"V\"+r+\"Z\"},needLine:!0,noDot:!0}}},{d3:169}],639:[function(t,e,r){\"use strict\";e.exports={visible:{valType:\"boolean\",editType:\"calc\"},type:{valType:\"enumerated\",values:[\"percent\",\"constant\",\"sqrt\",\"data\"],editType:\"calc\"},symmetric:{valType:\"boolean\",editType:\"calc\"},array:{valType:\"data_array\",editType:\"calc\"},arrayminus:{valType:\"data_array\",editType:\"calc\"},value:{valType:\"number\",min:0,dflt:10,editType:\"calc\"},valueminus:{valType:\"number\",min:0,dflt:10,editType:\"calc\"},traceref:{valType:\"integer\",min:0,dflt:0,editType:\"style\"},tracerefminus:{valType:\"integer\",min:0,dflt:0,editType:\"style\"},copy_ystyle:{valType:\"boolean\",editType:\"plot\"},copy_zstyle:{valType:\"boolean\",editType:\"style\"},color:{valType:\"color\",editType:\"style\"},thickness:{valType:\"number\",min:0,dflt:2,editType:\"style\"},width:{valType:\"number\",min:0,editType:\"plot\"},editType:\"calc\",_deprecated:{opacity:{valType:\"number\",editType:\"style\"}}}},{}],640:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../registry\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../lib\"),s=t(\"./compute_error\");function l(t,e,r,a){var l=e[\"error_\"+a]||{},c=[];if(l.visible&&-1!==[\"linear\",\"log\"].indexOf(r.type)){for(var u=s(l),h=0;h<t.length;h++){var f=t[h],p=f.i;if(void 0===p)p=h;else if(null===p)continue;var d=f[a];if(n(r.c2l(d))){var g=u(d,p);if(n(g[0])&&n(g[1])){var m=f[a+\"s\"]=d-g[0],v=f[a+\"h\"]=d+g[1];c.push(m,v)}}}var y=r._id,x=e._extremes[y],b=i.findExtremes(r,c,o.extendFlat({tozero:x.opts.tozero},{padded:!0}));x.min=x.min.concat(b.min),x.max=x.max.concat(b.max)}}e.exports=function(t){for(var e=t.calcdata,r=0;r<e.length;r++){var n=e[r],o=n[0].trace;if(!0===o.visible&&a.traceIs(o,\"errorBarsOK\")){var s=i.getFromId(t,o.xaxis),c=i.getFromId(t,o.yaxis);l(n,o,s,\"x\"),l(n,o,c,\"y\")}}}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"./compute_error\":641,\"fast-isnumeric\":241}],641:[function(t,e,r){\"use strict\";function n(t,e){return\"percent\"===t?function(t){return Math.abs(t*e/100)}:\"constant\"===t?function(){return Math.abs(e)}:\"sqrt\"===t?function(t){return Math.sqrt(Math.abs(t))}:void 0}e.exports=function(t){var e=t.type,r=t.symmetric;if(\"data\"===e){var a=t.array||[];if(r)return function(t,e){var r=+a[e];return[r,r]};var i=t.arrayminus||[];return function(t,e){var r=+a[e],n=+i[e];return isNaN(r)&&isNaN(n)?[NaN,NaN]:[n||0,r||0]}}var o=n(e,t.value),s=n(e,t.valueminus);return r||void 0===t.valueminus?function(t){var e=o(t);return[e,e]}:function(t){return[s(t),o(t)]}}},{}],642:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=t(\"../../plot_api/plot_template\"),s=t(\"./attributes\");e.exports=function(t,e,r,l){var c=\"error_\"+l.axis,u=o.newContainer(e,c),h=t[c]||{};function f(t,e){return i.coerce(h,u,s,t,e)}if(!1!==f(\"visible\",void 0!==h.array||void 0!==h.value||\"sqrt\"===h.type)){var p=f(\"type\",\"array\"in h?\"data\":\"percent\"),d=!0;\"sqrt\"!==p&&(d=f(\"symmetric\",!((\"data\"===p?\"arrayminus\":\"valueminus\")in h))),\"data\"===p?(f(\"array\"),f(\"traceref\"),d||(f(\"arrayminus\"),f(\"tracerefminus\"))):\"percent\"!==p&&\"constant\"!==p||(f(\"value\"),d||f(\"valueminus\"));var g=\"copy_\"+l.inherit+\"style\";if(l.inherit)(e[\"error_\"+l.inherit]||{}).visible&&f(g,!(h.color||n(h.thickness)||n(h.width)));l.inherit&&u[g]||(f(\"color\",r),f(\"thickness\"),f(\"width\",a.traceIs(e,\"gl3d\")?0:4))}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../registry\":881,\"./attributes\":639,\"fast-isnumeric\":241}],643:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plot_api/edit_types\").overrideAll,i=t(\"./attributes\"),o={error_x:n.extendFlat({},i),error_y:n.extendFlat({},i)};delete o.error_x.copy_zstyle,delete o.error_y.copy_zstyle,delete o.error_y.copy_ystyle;var s={error_x:n.extendFlat({},i),error_y:n.extendFlat({},i),error_z:n.extendFlat({},i)};delete s.error_x.copy_ystyle,delete s.error_y.copy_ystyle,delete s.error_z.copy_ystyle,delete s.error_z.copy_zstyle,e.exports={moduleType:\"component\",name:\"errorbars\",schema:{traces:{scatter:o,bar:o,histogram:o,scatter3d:a(s,\"calc\",\"nested\"),scattergl:a(o,\"calc\",\"nested\")}},supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),makeComputeError:t(\"./compute_error\"),plot:t(\"./plot\"),style:t(\"./style\"),hoverInfo:function(t,e,r){(e.error_y||{}).visible&&(r.yerr=t.yh-t.y,e.error_y.symmetric||(r.yerrneg=t.y-t.ys));(e.error_x||{}).visible&&(r.xerr=t.xh-t.x,e.error_x.symmetric||(r.xerrneg=t.x-t.xs))}}},{\"../../lib\":749,\"../../plot_api/edit_types\":780,\"./attributes\":639,\"./calc\":640,\"./compute_error\":641,\"./defaults\":642,\"./plot\":644,\"./style\":645}],644:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../drawing\"),o=t(\"../../traces/scatter/subtypes\");e.exports=function(t,e,r,s){var l=r.xaxis,c=r.yaxis,u=s&&s.duration>0;e.each((function(e){var h,f=e[0].trace,p=f.error_x||{},d=f.error_y||{};f.ids&&(h=function(t){return t.id});var g=o.hasMarkers(f)&&f.marker.maxdisplayed>0;d.visible||p.visible||(e=[]);var m=n.select(this).selectAll(\"g.errorbar\").data(e,h);if(m.exit().remove(),e.length){p.visible||m.selectAll(\"path.xerror\").remove(),d.visible||m.selectAll(\"path.yerror\").remove(),m.style(\"opacity\",1);var v=m.enter().append(\"g\").classed(\"errorbar\",!0);u&&v.style(\"opacity\",0).transition().duration(s.duration).style(\"opacity\",1),i.setClipUrl(m,r.layerClipId,t),m.each((function(t){var e=n.select(this),r=function(t,e,r){var n={x:e.c2p(t.x),y:r.c2p(t.y)};void 0!==t.yh&&(n.yh=r.c2p(t.yh),n.ys=r.c2p(t.ys),a(n.ys)||(n.noYS=!0,n.ys=r.c2p(t.ys,!0)));void 0!==t.xh&&(n.xh=e.c2p(t.xh),n.xs=e.c2p(t.xs),a(n.xs)||(n.noXS=!0,n.xs=e.c2p(t.xs,!0)));return n}(t,l,c);if(!g||t.vis){var i,o=e.select(\"path.yerror\");if(d.visible&&a(r.x)&&a(r.yh)&&a(r.ys)){var h=d.width;i=\"M\"+(r.x-h)+\",\"+r.yh+\"h\"+2*h+\"m-\"+h+\",0V\"+r.ys,r.noYS||(i+=\"m-\"+h+\",0h\"+2*h),!o.size()?o=e.append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").classed(\"yerror\",!0):u&&(o=o.transition().duration(s.duration).ease(s.easing)),o.attr(\"d\",i)}else o.remove();var f=e.select(\"path.xerror\");if(p.visible&&a(r.y)&&a(r.xh)&&a(r.xs)){var m=(p.copy_ystyle?d:p).width;i=\"M\"+r.xh+\",\"+(r.y-m)+\"v\"+2*m+\"m0,-\"+m+\"H\"+r.xs,r.noXS||(i+=\"m0,-\"+m+\"v\"+2*m),!f.size()?f=e.append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").classed(\"xerror\",!0):u&&(f=f.transition().duration(s.duration).ease(s.easing)),f.attr(\"d\",i)}else f.remove()}}))}}))}},{\"../../traces/scatter/subtypes\":1181,\"../drawing\":637,d3:169,\"fast-isnumeric\":241}],645:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../color\");e.exports=function(t){t.each((function(t){var e=t[0].trace,r=e.error_y||{},i=e.error_x||{},o=n.select(this);o.selectAll(\"path.yerror\").style(\"stroke-width\",r.thickness+\"px\").call(a.stroke,r.color),i.copy_ystyle&&(i=r),o.selectAll(\"path.xerror\").style(\"stroke-width\",i.thickness+\"px\").call(a.stroke,i.color)}))}},{\"../color\":615,d3:169}],646:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"./layout_attributes\").hoverlabel,i=t(\"../../lib/extend\").extendFlat;e.exports={hoverlabel:{bgcolor:i({},a.bgcolor,{arrayOk:!0}),bordercolor:i({},a.bordercolor,{arrayOk:!0}),font:n({arrayOk:!0,editType:\"none\"}),align:i({},a.align,{arrayOk:!0}),namelength:i({},a.namelength,{arrayOk:!0}),editType:\"none\"}}},{\"../../lib/extend\":739,\"../../plots/font_attributes\":826,\"./layout_attributes\":656}],647:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\");function i(t,e,r,a){a=a||n.identity,Array.isArray(t)&&(e[0][r]=a(t))}e.exports=function(t){var e=t.calcdata,r=t._fullLayout;function o(t){return function(e){return n.coerceHoverinfo({hoverinfo:e},{_module:t._module},r)}}for(var s=0;s<e.length;s++){var l=e[s],c=l[0].trace;if(!a.traceIs(c,\"pie-like\")){var u=a.traceIs(c,\"2dMap\")?i:n.fillArray;u(c.hoverinfo,l,\"hi\",o(c)),c.hovertemplate&&u(c.hovertemplate,l,\"ht\"),c.hoverlabel&&(u(c.hoverlabel.bgcolor,l,\"hbg\"),u(c.hoverlabel.bordercolor,l,\"hbc\"),u(c.hoverlabel.font.size,l,\"hts\"),u(c.hoverlabel.font.color,l,\"htc\"),u(c.hoverlabel.font.family,l,\"htf\"),u(c.hoverlabel.namelength,l,\"hnl\"),u(c.hoverlabel.align,l,\"hta\"))}}}},{\"../../lib\":749,\"../../registry\":881}],648:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"./hover\").hover;e.exports=function(t,e,r){var i=n.getComponentMethod(\"annotations\",\"onClick\")(t,t._hoverdata);function o(){t.emit(\"plotly_click\",{points:t._hoverdata,event:e})}void 0!==r&&a(t,e,r,!0),t._hoverdata&&e&&e.target&&(i&&i.then?i.then(o):o(),e.stopImmediatePropagation&&e.stopImmediatePropagation())}},{\"../../registry\":881,\"./hover\":652}],649:[function(t,e,r){\"use strict\";e.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:\"Arial, sans-serif\",HOVERMINTIME:50,HOVERID:\"-hover\"}},{}],650:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"./hoverlabel_defaults\");e.exports=function(t,e,r,o){var s=n.extendFlat({},o.hoverlabel);e.hovertemplate&&(s.namelength=-1),i(t,e,(function(r,i){return n.coerce(t,e,a,r,i)}),s)}},{\"../../lib\":749,\"./attributes\":646,\"./hoverlabel_defaults\":653}],651:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");r.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},r.isTraceInSubplots=function(t,e){if(\"splom\"===t.type){for(var n=t.xaxes||[],a=t.yaxes||[],i=0;i<n.length;i++)for(var o=0;o<a.length;o++)if(-1!==e.indexOf(n[i]+a[o]))return!0;return!1}return-1!==e.indexOf(r.getSubplot(t))},r.flat=function(t,e){for(var r=new Array(t.length),n=0;n<t.length;n++)r[n]=e;return r},r.p2c=function(t,e){for(var r=new Array(t.length),n=0;n<t.length;n++)r[n]=t[n].p2c(e);return r},r.getDistanceFunction=function(t,e,n,a){return\"closest\"===t?a||r.quadrature(e,n):\"x\"===t.charAt(0)?e:n},r.getClosest=function(t,e,r){if(!1!==r.index)r.index>=0&&r.index<t.length?r.distance=0:r.index=!1;else for(var n=0;n<t.length;n++){var a=e(t[n]);a<=r.distance&&(r.index=n,r.distance=a)}return r},r.inbox=function(t,e,r){return t*e<0||0===t?r:1/0},r.quadrature=function(t,e){return function(r){var n=t(r),a=e(r);return Math.sqrt(n*n+a*a)}},r.makeEventData=function(t,e,n){var a=\"index\"in t?t.index:t.pointNumber,i={data:e._input,fullData:e,curveNumber:e.index,pointNumber:a};if(e._indexToPoints){var o=e._indexToPoints[a];1===o.length?i.pointIndex=o[0]:i.pointIndices=o}else i.pointIndex=a;return e._module.eventData?i=e._module.eventData(i,t,e,n,a):(\"xVal\"in t?i.x=t.xVal:\"x\"in t&&(i.x=t.x),\"yVal\"in t?i.y=t.yVal:\"y\"in t&&(i.y=t.y),t.xa&&(i.xaxis=t.xa),t.ya&&(i.yaxis=t.ya),void 0!==t.zLabelVal&&(i.z=t.zLabelVal)),r.appendArrayPointValue(i,e,a),i},r.appendArrayPointValue=function(t,e,r){var a=e._arrayAttrs;if(a)for(var s=0;s<a.length;s++){var l=a[s],c=i(l);if(void 0===t[c]){var u=o(n.nestedProperty(e,l).get(),r);void 0!==u&&(t[c]=u)}}},r.appendArrayMultiPointValues=function(t,e,r){var a=e._arrayAttrs;if(a)for(var s=0;s<a.length;s++){var l=a[s],c=i(l);if(void 0===t[c]){for(var u=n.nestedProperty(e,l).get(),h=new Array(r.length),f=0;f<r.length;f++)h[f]=o(u,r[f]);t[c]=h}}};var a={ids:\"id\",locations:\"location\",labels:\"label\",values:\"value\",\"marker.colors\":\"color\",parents:\"parent\"};function i(t){return a[t]||t}function o(t,e){return Array.isArray(e)?Array.isArray(t)&&Array.isArray(t[e[0]])?t[e[0]][e[1]]:void 0:t[e]}var s={x:!0,y:!0},l={\"x unified\":!0,\"y unified\":!0};r.isUnifiedHover=function(t){return\"string\"==typeof t&&!!l[t]},r.isXYhover=function(t){return\"string\"==typeof t&&!!s[t]}},{\"../../lib\":749}],652:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"tinycolor2\"),o=t(\"../../lib\"),s=t(\"../../lib/events\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../lib/override_cursor\"),u=t(\"../drawing\"),h=t(\"../color\"),f=t(\"../dragelement\"),p=t(\"../../plots/cartesian/axes\"),d=t(\"../../registry\"),g=t(\"./helpers\"),m=t(\"./constants\"),v=t(\"../legend/defaults\"),y=t(\"../legend/draw\"),x=m.YANGLE,b=Math.PI*x/180,_=1/Math.sin(b),w=Math.cos(b),T=Math.sin(b),k=m.HOVERARROWSIZE,M=m.HOVERTEXTPAD;function A(t){return[t.trace.index,t.index,t.x0,t.y0,t.name,t.attr,t.xa,t.ya||\"\"].join(\",\")}r.hover=function(t,e,r,i){t=o.getGraphDiv(t),o.throttle(t._fullLayout._uid+m.HOVERID,m.HOVERMINTIME,(function(){!function(t,e,r,i){r||(r=\"xy\");var l=Array.isArray(r)?r:[r],u=t._fullLayout,p=u._plots||[],m=p[r],v=u._has(\"cartesian\");if(m){var y=m.overlays.map((function(t){return t.id}));l=l.concat(y)}for(var x=l.length,b=new Array(x),w=new Array(x),T=!1,k=0;k<x;k++){var M=l[k];if(p[M])T=!0,b[k]=p[M].xaxis,w[k]=p[M].yaxis;else{if(!u[M]||!u[M]._subplot)return void o.warn(\"Unrecognized subplot: \"+M);var S=u[M]._subplot;b[k]=S.xaxis,w[k]=S.yaxis}}var C=e.hovermode||u.hovermode;C&&!T&&(C=\"closest\");if(-1===[\"x\",\"y\",\"closest\",\"x unified\",\"y unified\"].indexOf(C)||!t.calcdata||t.querySelector(\".zoombox\")||t._dragging)return f.unhoverRaw(t,e);var O,D,R,F,B,N,j,U,V,q,H,G,Y,W=-1===u.hoverdistance?1/0:u.hoverdistance,Z=-1===u.spikedistance?1/0:u.spikedistance,X=[],J=[],K={hLinePoint:null,vLinePoint:null},Q=!1;if(Array.isArray(e))for(C=\"array\",R=0;R<e.length;R++)(B=t.calcdata[e[R].curveNumber||0])&&(N=B[0].trace,\"skip\"!==B[0].trace.hoverinfo&&(J.push(B),\"h\"===N.orientation&&(Q=!0)));else{for(F=0;F<t.calcdata.length;F++)B=t.calcdata[F],\"skip\"!==(N=B[0].trace).hoverinfo&&g.isTraceInSubplots(N,l)&&(J.push(B),\"h\"===N.orientation&&(Q=!0));var $,tt;if(!e.target)$=\"xpx\"in e?e.xpx:b[0]._length/2,tt=\"ypx\"in e?e.ypx:w[0]._length/2;else{if(!1===s.triggerHandler(t,\"plotly_beforehover\",e))return;var et=e.target.getBoundingClientRect();if($=e.clientX-et.left,tt=e.clientY-et.top,$<0||$>b[0]._length||tt<0||tt>w[0]._length)return f.unhoverRaw(t,e)}if(e.pointerX=$+b[0]._offset,e.pointerY=tt+w[0]._offset,O=\"xval\"in e?g.flat(l,e.xval):g.p2c(b,$),D=\"yval\"in e?g.flat(l,e.yval):g.p2c(w,tt),!a(O[0])||!a(D[0]))return o.warn(\"Fx.hover failed\",e,t),f.unhoverRaw(t,e)}var rt=1/0;function nt(t,r){for(F=0;F<J.length;F++)if((B=J[F])&&B[0]&&B[0].trace&&!0===(N=B[0].trace).visible&&0!==N._length&&-1===[\"carpet\",\"contourcarpet\"].indexOf(N._module.name)){if(\"splom\"===N.type?j=l[U=0]:(j=g.getSubplot(N),U=l.indexOf(j)),V=C,g.isUnifiedHover(V)&&(V=V.charAt(0)),G={cd:B,trace:N,xa:b[U],ya:w[U],maxHoverDistance:W,maxSpikeDistance:Z,index:!1,distance:Math.min(rt,W),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:h.defaultLine,name:N.name,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},u[j]&&(G.subplot=u[j]._subplot),u._splomScenes&&u._splomScenes[N.uid]&&(G.scene=u._splomScenes[N.uid]),Y=X.length,\"array\"===V){var n=e[F];\"pointNumber\"in n?(G.index=n.pointNumber,V=\"closest\"):(V=\"\",\"xval\"in n&&(q=n.xval,V=\"x\"),\"yval\"in n&&(H=n.yval,V=V?\"closest\":\"y\"))}else void 0!==t&&void 0!==r?(q=t,H=r):(q=O[U],H=D[U]);if(0!==W)if(N._module&&N._module.hoverPoints){var i=N._module.hoverPoints(G,q,H,V,u._hoverlayer);if(i)for(var s,c=0;c<i.length;c++)s=i[c],a(s.x0)&&a(s.y0)&&X.push(P(s,C))}else o.log(\"Unrecognized trace type in hover:\",N);if(\"closest\"===C&&X.length>Y&&(X.splice(0,Y),rt=X[0].distance),v&&0!==Z&&0===X.length){G.distance=Z,G.index=!1;var f=N._module.hoverPoints(G,q,H,\"closest\",u._hoverlayer);if(f&&(f=f.filter((function(t){return t.spikeDistance<=Z}))),f&&f.length){var p,d=f.filter((function(t){return t.xa.showspikes&&\"hovered data\"!==t.xa.spikesnap}));if(d.length){var m=d[0];a(m.x0)&&a(m.y0)&&(p=it(m),(!K.vLinePoint||K.vLinePoint.spikeDistance>p.spikeDistance)&&(K.vLinePoint=p))}var y=f.filter((function(t){return t.ya.showspikes&&\"hovered data\"!==t.ya.spikesnap}));if(y.length){var x=y[0];a(x.x0)&&a(x.y0)&&(p=it(x),(!K.hLinePoint||K.hLinePoint.spikeDistance>p.spikeDistance)&&(K.hLinePoint=p))}}}}}function at(t,e){for(var r,n=null,a=1/0,i=0;i<t.length;i++)(r=t[i].spikeDistance)<=a&&r<=e&&(n=t[i],a=r);return n}function it(t){return t?{xa:t.xa,ya:t.ya,x:void 0!==t.xSpike?t.xSpike:(t.x0+t.x1)/2,y:void 0!==t.ySpike?t.ySpike:(t.y0+t.y1)/2,distance:t.distance,spikeDistance:t.spikeDistance,curveNumber:t.trace.index,color:t.color,pointNumber:t.index}:null}nt();var ot={fullLayout:u,container:u._hoverlayer,outerContainer:u._paperdiv,event:e},st=t._spikepoints,lt={vLinePoint:K.vLinePoint,hLinePoint:K.hLinePoint};if(t._spikepoints=lt,v&&0!==Z&&0!==X.length){var ct=at(X.filter((function(t){return t.ya.showspikes})),Z);K.hLinePoint=it(ct);var ut=at(X.filter((function(t){return t.xa.showspikes})),Z);K.vLinePoint=it(ut)}if(0===X.length){var ht=f.unhoverRaw(t,e);return!v||null===K.hLinePoint&&null===K.vLinePoint||z(st)&&I(t,K,ot),ht}v&&z(st)&&I(t,K,ot);if(X.sort((function(t,e){return t.distance-e.distance})),g.isXYhover(V)&&0!==X[0].length&&\"splom\"!==X[0].trace.type){var ft=X[0],pt=ft.cd[ft.index],dt=\"group\"===u.boxmode||\"group\"===u.violinmode,gt=ft.xVal,mt=ft.xa;\"category\"===mt.type&&(gt=mt._categoriesMap[gt]),\"date\"===mt.type&&(gt=mt.d2c(gt)),pt&&pt.t&&pt.t.posLetter===mt._id&&dt&&(gt+=pt.t.dPos);var vt=ft.yVal;\"category\"===(mt=ft.ya).type&&(vt=mt._categoriesMap[vt]),\"date\"===mt.type&&(vt=mt.d2c(vt)),pt&&pt.t&&pt.t.posLetter===mt._id&&dt&&(vt+=pt.t.dPos),nt(gt,vt);var yt={};X=X.filter((function(t){var e=A(t);if(!yt[e])return yt[e]=!0,yt[e]}))}var xt=t._hoverdata,bt=[];for(R=0;R<X.length;R++){var _t=X[R],wt=g.makeEventData(_t,_t.trace,_t.cd);if(!1!==_t.hovertemplate){var Tt=!1;_t.cd[_t.index]&&_t.cd[_t.index].ht&&(Tt=_t.cd[_t.index].ht),_t.hovertemplate=Tt||_t.trace.hovertemplate||!1}_t.eventData=[wt],bt.push(wt)}t._hoverdata=bt;var kt=\"y\"===C&&(J.length>1||X.length>1)||\"closest\"===C&&Q&&X.length>1,Mt=h.combine(u.plot_bgcolor||h.background,u.paper_bgcolor),At={hovermode:C,rotateLabels:kt,bgColor:Mt,container:u._hoverlayer,outerContainer:u._paperdiv,commonLabelOpts:u.hoverlabel,hoverdistance:u.hoverdistance},St=E(X,At,t);g.isUnifiedHover(C)||(!function(t,e,r){var n,a,i,o,s,l,c,u=0,h=1,f=t.size(),p=new Array(f),d=0;function g(t){var e=t[0],r=t[t.length-1];if(a=e.pmin-e.pos-e.dp+e.size,i=r.pos+r.dp+r.size-e.pmax,a>.01){for(s=t.length-1;s>=0;s--)t[s].dp+=a;n=!1}if(!(i<.01)){if(a<-.01){for(s=t.length-1;s>=0;s--)t[s].dp-=i;n=!1}if(n){var c=0;for(o=0;o<t.length;o++)(l=t[o]).pos+l.dp+l.size>e.pmax&&c++;for(o=t.length-1;o>=0&&!(c<=0);o--)(l=t[o]).pos>e.pmax-1&&(l.del=!0,c--);for(o=0;o<t.length&&!(c<=0);o++)if((l=t[o]).pos<e.pmin+1)for(l.del=!0,c--,i=2*l.size,s=t.length-1;s>=0;s--)t[s].dp-=i;for(o=t.length-1;o>=0&&!(c<=0);o--)(l=t[o]).pos+l.dp+l.size>e.pmax&&(l.del=!0,c--)}}}t.each((function(t){var n=t[e],a=\"x\"===n._id.charAt(0),i=n.range;0===d&&i&&i[0]>i[1]!==a&&(h=-1),p[d++]=[{datum:t,traceIndex:t.trace.index,dp:0,pos:t.pos,posref:t.posref,size:t.by*(a?_:1)/2,pmin:0,pmax:a?r.width:r.height}]})),p.sort((function(t,e){return t[0].posref-e[0].posref||h*(e[0].traceIndex-t[0].traceIndex)}));for(;!n&&u<=f;){for(u++,n=!0,o=0;o<p.length-1;){var m=p[o],v=p[o+1],y=m[m.length-1],x=v[0];if((a=y.pos+y.dp+y.size-x.pos-x.dp+x.size)>.01&&y.pmin===x.pmin&&y.pmax===x.pmax){for(s=v.length-1;s>=0;s--)v[s].dp+=a;for(m.push.apply(m,v),p.splice(o+1,1),c=0,s=m.length-1;s>=0;s--)c+=m[s].dp;for(i=c/m.length,s=m.length-1;s>=0;s--)m[s].dp-=i;n=!1}else o++}p.forEach(g)}for(o=p.length-1;o>=0;o--){var b=p[o];for(s=b.length-1;s>=0;s--){var w=b[s],T=w.datum;T.offset=w.dp,T.del=w.del}}}(St,kt?\"xa\":\"ya\",u),L(St,kt));if(e.target&&e.target.tagName){var Et=d.getComponentMethod(\"annotations\",\"hasClickToShow\")(t,bt);c(n.select(e.target),Et?\"pointer\":\"\")}if(!e.target||i||!function(t,e,r){if(!r||r.length!==t._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var a=r[n],i=t._hoverdata[n];if(a.curveNumber!==i.curveNumber||String(a.pointNumber)!==String(i.pointNumber)||String(a.pointNumbers)!==String(i.pointNumbers))return!0}return!1}(t,0,xt))return;xt&&t.emit(\"plotly_unhover\",{event:e,points:xt});t.emit(\"plotly_hover\",{event:e,points:t._hoverdata,xaxes:b,yaxes:w,xvals:O,yvals:D})}(t,e,r,i)}))},r.loneHover=function(t,e){var r=!0;Array.isArray(t)||(r=!1,t=[t]);var a=t.map((function(t){return{color:t.color||h.defaultLine,x0:t.x0||t.x||0,x1:t.x1||t.x||0,y0:t.y0||t.y||0,y1:t.y1||t.y||0,xLabel:t.xLabel,yLabel:t.yLabel,zLabel:t.zLabel,text:t.text,name:t.name,idealAlign:t.idealAlign,borderColor:t.borderColor,fontFamily:t.fontFamily,fontSize:t.fontSize,fontColor:t.fontColor,nameLength:t.nameLength,textAlign:t.textAlign,trace:t.trace||{index:0,hoverinfo:\"\"},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:t.hovertemplate||!1,eventData:t.eventData||!1,hovertemplateLabels:t.hovertemplateLabels||!1}})),i=n.select(e.container),o=e.outerContainer?n.select(e.outerContainer):i,s={hovermode:\"closest\",rotateLabels:!1,bgColor:e.bgColor||h.background,container:i,outerContainer:o},l=E(a,s,e.gd),c=0,u=0;return l.sort((function(t,e){return t.y0-e.y0})).each((function(t,r){var n=t.y0-t.by/2;t.offset=n-5<c?c-n+5:0,c=n+t.by+t.offset,r===e.anchorIndex&&(u=t.offset)})).each((function(t){t.offset-=u})),L(l,s.rotateLabels),r?l:l.node()};var S=/<extra>([\\s\\S]*)<\\/extra>/;function E(t,e,r){var a=r._fullLayout,i=e.hovermode,s=e.rotateLabels,c=e.bgColor,f=e.container,p=e.outerContainer,d=e.commonLabelOpts||{},b=e.fontFamily||m.HOVERFONT,_=e.fontSize||m.HOVERFONTSIZE,w=t[0],T=w.xa,S=w.ya,E=\"y\"===i.charAt(0)?\"yLabel\":\"xLabel\",L=w[E],P=(String(L)||\"\").split(\" \")[0],I=p.node().getBoundingClientRect(),z=I.top,O=I.width,D=I.height,R=void 0!==L&&w.distance<=e.hoverdistance&&(\"x\"===i||\"y\"===i);if(R){var F,B,N=!0;for(F=0;F<t.length;F++)if(N&&void 0===t[F].zLabel&&(N=!1),B=t[F].hoverinfo||t[F].trace.hoverinfo){var j=Array.isArray(B)?B:B.split(\"+\");if(-1===j.indexOf(\"all\")&&-1===j.indexOf(i)){R=!1;break}}N&&(R=!1)}var U=f.selectAll(\"g.axistext\").data(R?[0]:[]);function V(t){return t.filter((function(t){return void 0!==t.zLabelVal||(t[E]||\"\").split(\" \")[0]===P}))}if(U.enter().append(\"g\").classed(\"axistext\",!0),U.exit().remove(),U.each((function(){var e=n.select(this),s=o.ensureSingle(e,\"path\",\"\",(function(t){t.style({\"stroke-width\":\"1px\"})})),c=o.ensureSingle(e,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),f=d.bgcolor||h.defaultLine,p=d.bordercolor||h.contrast(f),g=h.contrast(f),m={family:d.font.family||b,size:d.font.size||_,color:d.font.color||g};s.style({fill:f,stroke:p}),c.text(L).call(u.font,m).call(l.positionText,0,0).call(l.convertToTspans,r),e.attr(\"transform\",\"\");var v,y,x=c.node().getBoundingClientRect();if(\"x\"===i){var A=\"top\"===T.side?\"-\":\"\";c.attr(\"text-anchor\",\"middle\").call(l.positionText,0,\"top\"===T.side?z-x.bottom-k-M:z-x.top+k+M),v=T._offset+(w.x0+w.x1)/2,y=S._offset+(\"top\"===T.side?0:S._length);var E=x.width/2+M;v<E?(v=E,s.attr(\"d\",\"M-\"+(E-k)+\",0L-\"+(E-2*k)+\",\"+A+k+\"H\"+(M+x.width/2)+\"v\"+A+(2*M+x.height)+\"H-\"+E+\"V\"+A+k+\"Z\")):v>a.width-E?(v=a.width-E,s.attr(\"d\",\"M\"+(E-k)+\",0L\"+E+\",\"+A+k+\"v\"+A+(2*M+x.height)+\"H-\"+E+\"V\"+A+k+\"H\"+(E-2*k)+\"Z\")):s.attr(\"d\",\"M0,0L\"+k+\",\"+A+k+\"H\"+(M+x.width/2)+\"v\"+A+(2*M+x.height)+\"H-\"+(M+x.width/2)+\"V\"+A+k+\"H-\"+k+\"Z\")}else{var C,P,I;\"right\"===S.side?(C=\"start\",P=1,I=\"\",v=T._offset+T._length):(C=\"end\",P=-1,I=\"-\",v=T._offset),y=S._offset+(w.y0+w.y1)/2,c.attr(\"text-anchor\",C),s.attr(\"d\",\"M0,0L\"+I+k+\",\"+k+\"V\"+(M+x.height/2)+\"h\"+I+(2*M+x.width)+\"V-\"+(M+x.height/2)+\"H\"+I+k+\"V-\"+k+\"Z\");var O,D=x.height/2,R=z-x.top-D,F=\"clip\"+a._uid+\"commonlabel\"+S._id;if(v<x.width+2*M+k){O=\"M-\"+(k+M)+\"-\"+D+\"h-\"+(x.width-M)+\"V\"+D+\"h\"+(x.width-M)+\"Z\";var B=x.width-v+M;l.positionText(c,B,R),\"end\"===C&&c.selectAll(\"tspan\").each((function(){var t=n.select(this),e=u.tester.append(\"text\").text(t.text()).call(u.font,m),r=e.node().getBoundingClientRect();Math.round(r.width)<Math.round(x.width)&&t.attr(\"x\",B-r.width),e.remove()}))}else l.positionText(c,P*(M+k),R),O=null;var N=a._topclips.selectAll(\"#\"+F).data(O?[0]:[]);N.enter().append(\"clipPath\").attr(\"id\",F).append(\"path\"),N.exit().remove(),N.select(\"path\").attr(\"d\",O),u.setClipUrl(c,O?F:null,r)}e.attr(\"transform\",\"translate(\"+v+\",\"+y+\")\"),t=V(t)})),g.isUnifiedHover(i)){if(f.selectAll(\"g.hovertext\").remove(),void 0!==L&&w.distance<=e.hoverdistance&&(t=V(t)),0===t.length)return;var q={showlegend:!0,legend:{title:{text:L,font:a.hoverlabel.font},font:a.hoverlabel.font,bgcolor:a.hoverlabel.bgcolor,bordercolor:a.hoverlabel.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:\"v\"}},H={};v(q,H,r._fullData);var G=H.legend;G.entries=[];for(var Y=0;Y<t.length;Y++){var W=C(t[Y],!0,i,a,L),Z=W[0],X=W[1],J=t[Y];J.name=X,J.text=\"\"!==X?X+\" : \"+Z:Z;var K=J.cd[J.index];K&&(K.mc&&(J.mc=K.mc),K.mcc&&(J.mc=K.mcc),K.mlc&&(J.mlc=K.mlc),K.mlcc&&(J.mlc=K.mlcc),K.mlw&&(J.mlw=K.mlw),K.mrc&&(J.mrc=K.mrc),K.dir&&(J.dir=K.dir)),J._distinct=!0,G.entries.push([J])}G.entries.sort((function(t,e){return t[0].trace.index-e[0].trace.index})),G.layer=f,y(r,G);var Q=o.mean(t.map((function(t){return(t.y0+t.y1)/2}))),$=o.mean(t.map((function(t){return(t.x0+t.x1)/2}))),tt=f.select(\"g.legend\"),et=tt.node().getBoundingClientRect();$+=T._offset,Q+=S._offset-et.height/2;var rt=et.width+2*M;!($+rt<=O)&&$-rt>=0?$-=rt:$+=2*M;var nt=et.height+2*M,at=Q+nt>=D;return nt<=D&&(Q<=z?Q=S._offset+2*M:at&&(Q=D-nt)),tt.attr(\"transform\",\"translate(\"+$+\",\"+Q+\")\"),tt}var it=f.selectAll(\"g.hovertext\").data(t,(function(t){return A(t)}));return it.enter().append(\"g\").classed(\"hovertext\",!0).each((function(){var t=n.select(this);t.append(\"rect\").call(h.fill,h.addOpacity(c,.8)),t.append(\"text\").classed(\"name\",!0),t.append(\"path\").style(\"stroke-width\",\"1px\"),t.append(\"text\").classed(\"nums\",!0).call(u.font,b,_)})),it.exit().remove(),it.each((function(t){var e=n.select(this).attr(\"transform\",\"\"),o=t.color;Array.isArray(o)&&(o=o[t.eventData[0].pointNumber]);var f=t.bgcolor||o,p=h.combine(h.opacity(f)?f:h.defaultLine,c),d=h.combine(h.opacity(o)?o:h.defaultLine,c),g=t.borderColor||h.contrast(p),m=C(t,R,i,a,L,e),v=m[0],y=m[1],w=e.select(\"text.nums\").call(u.font,t.fontFamily||b,t.fontSize||_,t.fontColor||g).text(v).attr(\"data-notex\",1).call(l.positionText,0,0).call(l.convertToTspans,r),T=e.select(\"text.name\"),A=0,S=0;if(y&&y!==v){T.call(u.font,t.fontFamily||b,t.fontSize||_,d).text(y).attr(\"data-notex\",1).call(l.positionText,0,0).call(l.convertToTspans,r);var E=T.node().getBoundingClientRect();A=E.width+2*M,S=E.height+2*M}else T.remove(),e.select(\"rect\").remove();e.select(\"path\").style({fill:p,stroke:g});var P,I,F=w.node().getBoundingClientRect(),B=t.xa._offset+(t.x0+t.x1)/2,N=t.ya._offset+(t.y0+t.y1)/2,j=Math.abs(t.x1-t.x0),U=Math.abs(t.y1-t.y0),V=F.width+k+M+A;if(t.ty0=z-F.top,t.bx=F.width+2*M,t.by=Math.max(F.height+2*M,S),t.anchor=\"start\",t.txwidth=F.width,t.tx2width=A,t.offset=0,s)t.pos=B,P=N+U/2+V<=D,I=N-U/2-V>=0,\"top\"!==t.idealAlign&&P||!I?P?(N+=U/2,t.anchor=\"start\"):t.anchor=\"middle\":(N-=U/2,t.anchor=\"end\");else if(t.pos=N,P=B+j/2+V<=O,I=B-j/2-V>=0,\"left\"!==t.idealAlign&&P||!I)if(P)B+=j/2,t.anchor=\"start\";else{t.anchor=\"middle\";var q=V/2,H=B+q-O,G=B-q;H>0&&(B-=H),G<0&&(B+=-G)}else B-=j/2,t.anchor=\"end\";w.attr(\"text-anchor\",t.anchor),A&&T.attr(\"text-anchor\",t.anchor),e.attr(\"transform\",\"translate(\"+B+\",\"+N+\")\"+(s?\"rotate(\"+x+\")\":\"\"))})),it}function C(t,e,r,n,a,i){var s=\"\",l=\"\";void 0!==t.nameOverride&&(t.name=t.nameOverride),t.name&&(t.trace._meta&&(t.name=o.templateString(t.name,t.trace._meta)),s=O(t.name,t.nameLength)),void 0!==t.zLabel?(void 0!==t.xLabel&&(l+=\"x: \"+t.xLabel+\"<br>\"),void 0!==t.yLabel&&(l+=\"y: \"+t.yLabel+\"<br>\"),\"choropleth\"!==t.trace.type&&\"choroplethmapbox\"!==t.trace.type&&(l+=(l?\"z: \":\"\")+t.zLabel)):e&&t[r.charAt(0)+\"Label\"]===a?l=t[(\"x\"===r.charAt(0)?\"y\":\"x\")+\"Label\"]||\"\":void 0===t.xLabel?void 0!==t.yLabel&&\"scattercarpet\"!==t.trace.type&&(l=t.yLabel):l=void 0===t.yLabel?t.xLabel:\"(\"+t.xLabel+\", \"+t.yLabel+\")\",!t.text&&0!==t.text||Array.isArray(t.text)||(l+=(l?\"<br>\":\"\")+t.text),void 0!==t.extraText&&(l+=(l?\"<br>\":\"\")+t.extraText),i&&\"\"===l&&!t.hovertemplate&&(\"\"===s&&i.remove(),l=s);var c=n._d3locale,u=t.hovertemplate||!1,h=t.hovertemplateLabels||t,f=t.eventData[0]||{};return u&&(l=(l=o.hovertemplateString(u,h,c,f,t.trace._meta)).replace(S,(function(e,r){return s=O(r,t.nameLength),\"\"}))),[l,s]}function L(t,e){t.each((function(t){var r=n.select(this);if(t.del)return r.remove();var a=r.select(\"text.nums\"),i=t.anchor,o=\"end\"===i?-1:1,s={start:1,end:-1,middle:0}[i],c=s*(k+M),h=c+s*(t.txwidth+M),f=0,p=t.offset;\"middle\"===i&&(c-=t.tx2width/2,h+=t.txwidth/2+M),e&&(p*=-T,f=t.offset*w),r.select(\"path\").attr(\"d\",\"middle\"===i?\"M-\"+(t.bx/2+t.tx2width/2)+\",\"+(p-t.by/2)+\"h\"+t.bx+\"v\"+t.by+\"h-\"+t.bx+\"Z\":\"M0,0L\"+(o*k+f)+\",\"+(k+p)+\"v\"+(t.by/2-k)+\"h\"+o*t.bx+\"v-\"+t.by+\"H\"+(o*k+f)+\"V\"+(p-k)+\"Z\");var d=c+f,g=p+t.ty0-t.by/2+M,m=t.textAlign||\"auto\";\"auto\"!==m&&(\"left\"===m&&\"start\"!==i?(a.attr(\"text-anchor\",\"start\"),d=\"middle\"===i?-t.bx/2-t.tx2width/2+M:-t.bx-M):\"right\"===m&&\"end\"!==i&&(a.attr(\"text-anchor\",\"end\"),d=\"middle\"===i?t.bx/2-t.tx2width/2-M:t.bx+M)),a.call(l.positionText,d,g),t.tx2width&&(r.select(\"text.name\").call(l.positionText,h+s*M+f,p+t.ty0-t.by/2+M),r.select(\"rect\").call(u.setRect,h+(s-1)*t.tx2width/2+f,p-t.by/2-1,t.tx2width,t.by+2))}))}function P(t,e){var r=t.index,n=t.trace||{},i=t.cd[0],s=t.cd[r]||{};function l(t){return t||a(t)&&0===t}var c=Array.isArray(r)?function(t,e){var a=o.castOption(i,r,t);return l(a)?a:o.extractOption({},n,\"\",e)}:function(t,e){return o.extractOption(s,n,t,e)};function u(e,r,n){var a=c(r,n);l(a)&&(t[e]=a)}if(u(\"hoverinfo\",\"hi\",\"hoverinfo\"),u(\"bgcolor\",\"hbg\",\"hoverlabel.bgcolor\"),u(\"borderColor\",\"hbc\",\"hoverlabel.bordercolor\"),u(\"fontFamily\",\"htf\",\"hoverlabel.font.family\"),u(\"fontSize\",\"hts\",\"hoverlabel.font.size\"),u(\"fontColor\",\"htc\",\"hoverlabel.font.color\"),u(\"nameLength\",\"hnl\",\"hoverlabel.namelength\"),u(\"textAlign\",\"hta\",\"hoverlabel.align\"),t.posref=\"y\"===e||\"closest\"===e&&\"h\"===n.orientation?t.xa._offset+(t.x0+t.x1)/2:t.ya._offset+(t.y0+t.y1)/2,t.x0=o.constrain(t.x0,0,t.xa._length),t.x1=o.constrain(t.x1,0,t.xa._length),t.y0=o.constrain(t.y0,0,t.ya._length),t.y1=o.constrain(t.y1,0,t.ya._length),void 0!==t.xLabelVal&&(t.xLabel=\"xLabel\"in t?t.xLabel:p.hoverLabelText(t.xa,t.xLabelVal),t.xVal=t.xa.c2d(t.xLabelVal)),void 0!==t.yLabelVal&&(t.yLabel=\"yLabel\"in t?t.yLabel:p.hoverLabelText(t.ya,t.yLabelVal),t.yVal=t.ya.c2d(t.yLabelVal)),void 0!==t.zLabelVal&&void 0===t.zLabel&&(t.zLabel=String(t.zLabelVal)),!(isNaN(t.xerr)||\"log\"===t.xa.type&&t.xerr<=0)){var h=p.tickText(t.xa,t.xa.c2l(t.xerr),\"hover\").text;void 0!==t.xerrneg?t.xLabel+=\" +\"+h+\" / -\"+p.tickText(t.xa,t.xa.c2l(t.xerrneg),\"hover\").text:t.xLabel+=\" \\xb1 \"+h,\"x\"===e&&(t.distance+=1)}if(!(isNaN(t.yerr)||\"log\"===t.ya.type&&t.yerr<=0)){var f=p.tickText(t.ya,t.ya.c2l(t.yerr),\"hover\").text;void 0!==t.yerrneg?t.yLabel+=\" +\"+f+\" / -\"+p.tickText(t.ya,t.ya.c2l(t.yerrneg),\"hover\").text:t.yLabel+=\" \\xb1 \"+f,\"y\"===e&&(t.distance+=1)}var d=t.hoverinfo||t.trace.hoverinfo;return d&&\"all\"!==d&&(-1===(d=Array.isArray(d)?d:d.split(\"+\")).indexOf(\"x\")&&(t.xLabel=void 0),-1===d.indexOf(\"y\")&&(t.yLabel=void 0),-1===d.indexOf(\"z\")&&(t.zLabel=void 0),-1===d.indexOf(\"text\")&&(t.text=void 0),-1===d.indexOf(\"name\")&&(t.name=void 0)),t}function I(t,e,r){var n,a,o=r.container,s=r.fullLayout,l=s._size,c=r.event,f=!!e.hLinePoint,d=!!e.vLinePoint;if(o.selectAll(\".spikeline\").remove(),d||f){var g=h.combine(s.plot_bgcolor,s.paper_bgcolor);if(f){var m,v,y=e.hLinePoint;n=y&&y.xa,\"cursor\"===(a=y&&y.ya).spikesnap?(m=c.pointerX,v=c.pointerY):(m=n._offset+y.x,v=a._offset+y.y);var x,b,_=i.readability(y.color,g)<1.5?h.contrast(g):y.color,w=a.spikemode,T=a.spikethickness,k=a.spikecolor||_,M=p.getPxPosition(t,a);if(-1!==w.indexOf(\"toaxis\")||-1!==w.indexOf(\"across\")){if(-1!==w.indexOf(\"toaxis\")&&(x=M,b=m),-1!==w.indexOf(\"across\")){var A=a._counterDomainMin,S=a._counterDomainMax;\"free\"===a.anchor&&(A=Math.min(A,a.position),S=Math.max(S,a.position)),x=l.l+A*l.w,b=l.l+S*l.w}o.insert(\"line\",\":first-child\").attr({x1:x,x2:b,y1:v,y2:v,\"stroke-width\":T,stroke:k,\"stroke-dasharray\":u.dashStyle(a.spikedash,T)}).classed(\"spikeline\",!0).classed(\"crisp\",!0),o.insert(\"line\",\":first-child\").attr({x1:x,x2:b,y1:v,y2:v,\"stroke-width\":T+2,stroke:g}).classed(\"spikeline\",!0).classed(\"crisp\",!0)}-1!==w.indexOf(\"marker\")&&o.insert(\"circle\",\":first-child\").attr({cx:M+(\"right\"!==a.side?T:-T),cy:v,r:T,fill:k}).classed(\"spikeline\",!0)}if(d){var E,C,L=e.vLinePoint;n=L&&L.xa,a=L&&L.ya,\"cursor\"===n.spikesnap?(E=c.pointerX,C=c.pointerY):(E=n._offset+L.x,C=a._offset+L.y);var P,I,z=i.readability(L.color,g)<1.5?h.contrast(g):L.color,O=n.spikemode,D=n.spikethickness,R=n.spikecolor||z,F=p.getPxPosition(t,n);if(-1!==O.indexOf(\"toaxis\")||-1!==O.indexOf(\"across\")){if(-1!==O.indexOf(\"toaxis\")&&(P=F,I=C),-1!==O.indexOf(\"across\")){var B=n._counterDomainMin,N=n._counterDomainMax;\"free\"===n.anchor&&(B=Math.min(B,n.position),N=Math.max(N,n.position)),P=l.t+(1-N)*l.h,I=l.t+(1-B)*l.h}o.insert(\"line\",\":first-child\").attr({x1:E,x2:E,y1:P,y2:I,\"stroke-width\":D,stroke:R,\"stroke-dasharray\":u.dashStyle(n.spikedash,D)}).classed(\"spikeline\",!0).classed(\"crisp\",!0),o.insert(\"line\",\":first-child\").attr({x1:E,x2:E,y1:P,y2:I,\"stroke-width\":D+2,stroke:g}).classed(\"spikeline\",!0).classed(\"crisp\",!0)}-1!==O.indexOf(\"marker\")&&o.insert(\"circle\",\":first-child\").attr({cx:E,cy:F-(\"top\"!==n.side?D:-D),r:D,fill:R}).classed(\"spikeline\",!0)}}}function z(t,e){return!e||(e.vLinePoint!==t._spikepoints.vLinePoint||e.hLinePoint!==t._spikepoints.hLinePoint)}function O(t,e){return l.plainText(t||\"\",{len:e,allowedTags:[\"br\",\"sub\",\"sup\",\"b\",\"i\",\"em\"]})}},{\"../../lib\":749,\"../../lib/events\":738,\"../../lib/override_cursor\":760,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"../color\":615,\"../dragelement\":634,\"../drawing\":637,\"../legend/defaults\":667,\"../legend/draw\":668,\"./constants\":649,\"./helpers\":651,d3:169,\"fast-isnumeric\":241,tinycolor2:548}],653:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../color\"),i=t(\"./helpers\").isUnifiedHover;e.exports=function(t,e,r,o){function s(t){o.font[t]||(o.font[t]=e.legend?e.legend.font[t]:e.font[t])}o=o||{},e&&i(e.hovermode)&&(o.font||(o.font={}),s(\"size\"),s(\"family\"),s(\"color\"),e.legend?(o.bgcolor||(o.bgcolor=a.combine(e.legend.bgcolor,e.paper_bgcolor)),o.bordercolor||(o.bordercolor=e.legend.bordercolor)):o.bgcolor||(o.bgcolor=e.paper_bgcolor)),r(\"hoverlabel.bgcolor\",o.bgcolor),r(\"hoverlabel.bordercolor\",o.bordercolor),r(\"hoverlabel.namelength\",o.namelength),n.coerceFont(r,\"hoverlabel.font\",o.font),r(\"hoverlabel.align\",o.align)}},{\"../../lib\":749,\"../color\":615,\"./helpers\":651}],654:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){function i(r,i){return void 0!==e[r]?e[r]:n.coerce(t,e,a,r,i)}var o,s=i(\"clickmode\");return e._has(\"cartesian\")?s.indexOf(\"select\")>-1?o=\"closest\":(e._isHoriz=function(t,e){for(var r=e._scatterStackOpts||{},n=0;n<t.length;n++){var a=t[n],i=a.xaxis+a.yaxis,o=(r[i]||{})[a.stackgroup]||{};if(\"h\"!==a.orientation&&\"h\"!==o.orientation)return!1}return!0}(r,e),o=e._isHoriz?\"y\":\"x\"):o=\"closest\",i(\"hovermode\",o)}},{\"../../lib\":749,\"./layout_attributes\":656}],655:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../dragelement\"),o=t(\"./helpers\"),s=t(\"./layout_attributes\"),l=t(\"./hover\");e.exports={moduleType:\"component\",name:\"fx\",constants:t(\"./constants\"),schema:{layout:s},attributes:t(\"./attributes\"),layoutAttributes:s,supplyLayoutGlobalDefaults:t(\"./layout_global_defaults\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),getDistanceFunction:o.getDistanceFunction,getClosest:o.getClosest,inbox:o.inbox,quadrature:o.quadrature,appendArrayPointValue:o.appendArrayPointValue,castHoverOption:function(t,e,r){return a.castOption(t,e,\"hoverlabel.\"+r)},castHoverinfo:function(t,e,r){return a.castOption(t,r,\"hoverinfo\",(function(r){return a.coerceHoverinfo({hoverinfo:r},{_module:t._module},e)}))},hover:l.hover,unhover:i.unhover,loneHover:l.loneHover,loneUnhover:function(t){var e=a.isD3Selection(t)?t:n.select(t);e.selectAll(\"g.hovertext\").remove(),e.selectAll(\".spikeline\").remove()},click:t(\"./click\")}},{\"../../lib\":749,\"../dragelement\":634,\"./attributes\":646,\"./calc\":647,\"./click\":648,\"./constants\":649,\"./defaults\":650,\"./helpers\":651,\"./hover\":652,\"./layout_attributes\":656,\"./layout_defaults\":657,\"./layout_global_defaults\":658,d3:169}],656:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"../../plots/font_attributes\")({editType:\"none\"});a.family.dflt=n.HOVERFONT,a.size.dflt=n.HOVERFONTSIZE,e.exports={clickmode:{valType:\"flaglist\",flags:[\"event\",\"select\"],dflt:\"event\",editType:\"plot\",extras:[\"none\"]},dragmode:{valType:\"enumerated\",values:[\"zoom\",\"pan\",\"select\",\"lasso\",\"drawclosedpath\",\"drawopenpath\",\"drawline\",\"drawrect\",\"drawcircle\",\"orbit\",\"turntable\",!1],dflt:\"zoom\",editType:\"modebar\"},hovermode:{valType:\"enumerated\",values:[\"x\",\"y\",\"closest\",!1,\"x unified\",\"y unified\"],editType:\"modebar\"},hoverdistance:{valType:\"integer\",min:-1,dflt:20,editType:\"none\"},spikedistance:{valType:\"integer\",min:-1,dflt:20,editType:\"none\"},hoverlabel:{bgcolor:{valType:\"color\",editType:\"none\"},bordercolor:{valType:\"color\",editType:\"none\"},font:a,align:{valType:\"enumerated\",values:[\"left\",\"right\",\"auto\"],dflt:\"auto\",editType:\"none\"},namelength:{valType:\"integer\",min:-1,dflt:15,editType:\"none\"},editType:\"none\"},selectdirection:{valType:\"enumerated\",values:[\"h\",\"v\",\"d\",\"any\"],dflt:\"any\",editType:\"none\"}}},{\"../../plots/font_attributes\":826,\"./constants\":649}],657:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./helpers\").isUnifiedHover,i=t(\"./layout_attributes\"),o=t(\"./hovermode_defaults\"),s=t(\"./hoverlabel_defaults\");e.exports=function(t,e,r){function l(r,a){return n.coerce(t,e,i,r,a)}var c=o(t,e,r);c&&(l(\"hoverdistance\"),l(\"spikedistance\",a(c)?-1:void 0)),\"select\"===l(\"dragmode\")&&l(\"selectdirection\");var u=e._has(\"mapbox\"),h=e._has(\"geo\"),f=e._basePlotModules.length;\"zoom\"===e.dragmode&&((u||h)&&1===f||u&&h&&2===f)&&(e.dragmode=\"pan\"),s(t,e,l)}},{\"../../lib\":749,\"./helpers\":651,\"./hoverlabel_defaults\":653,\"./hovermode_defaults\":654,\"./layout_attributes\":656}],658:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./hoverlabel_defaults\"),i=t(\"./layout_attributes\");e.exports=function(t,e){a(t,e,(function(r,a){return n.coerce(t,e,i,r,a)}))}},{\"../../lib\":749,\"./hoverlabel_defaults\":653,\"./layout_attributes\":656}],659:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../lib/regex\").counter,i=t(\"../../plots/domain\").attributes,o=t(\"../../plots/cartesian/constants\").idRegex,s=t(\"../../plot_api/plot_template\"),l={rows:{valType:\"integer\",min:1,editType:\"plot\"},roworder:{valType:\"enumerated\",values:[\"top to bottom\",\"bottom to top\"],dflt:\"top to bottom\",editType:\"plot\"},columns:{valType:\"integer\",min:1,editType:\"plot\"},subplots:{valType:\"info_array\",freeLength:!0,dimensions:2,items:{valType:\"enumerated\",values:[a(\"xy\").toString(),\"\"],editType:\"plot\"},editType:\"plot\"},xaxes:{valType:\"info_array\",freeLength:!0,items:{valType:\"enumerated\",values:[o.x.toString(),\"\"],editType:\"plot\"},editType:\"plot\"},yaxes:{valType:\"info_array\",freeLength:!0,items:{valType:\"enumerated\",values:[o.y.toString(),\"\"],editType:\"plot\"},editType:\"plot\"},pattern:{valType:\"enumerated\",values:[\"independent\",\"coupled\"],dflt:\"coupled\",editType:\"plot\"},xgap:{valType:\"number\",min:0,max:1,editType:\"plot\"},ygap:{valType:\"number\",min:0,max:1,editType:\"plot\"},domain:i({name:\"grid\",editType:\"plot\",noGridCell:!0},{}),xside:{valType:\"enumerated\",values:[\"bottom\",\"bottom plot\",\"top plot\",\"top\"],dflt:\"bottom plot\",editType:\"plot\"},yside:{valType:\"enumerated\",values:[\"left\",\"left plot\",\"right plot\",\"right\"],dflt:\"left plot\",editType:\"plot\"},editType:\"plot\"};function c(t,e,r){var n=e[r+\"axes\"],a=Object.keys((t._splomAxes||{})[r]||{});return Array.isArray(n)?n:a.length?a:void 0}function u(t,e,r,n,a,i){var o=e(t+\"gap\",r),s=e(\"domain.\"+t);e(t+\"side\",n);for(var l=new Array(a),c=s[0],u=(s[1]-c)/(a-o),h=u*(1-o),f=0;f<a;f++){var p=c+u*f;l[i?a-1-f:f]=[p,p+h]}return l}function h(t,e,r,n,a){var i,o=new Array(r);function s(t,r){-1!==e.indexOf(r)&&void 0===n[r]?(o[t]=r,n[r]=t):o[t]=\"\"}if(Array.isArray(t))for(i=0;i<r;i++)s(i,t[i]);else for(s(0,a),i=1;i<r;i++)s(i,a+(i+1));return o}e.exports={moduleType:\"component\",name:\"grid\",schema:{layout:{grid:l}},layoutAttributes:l,sizeDefaults:function(t,e){var r=t.grid||{},a=c(e,r,\"x\"),i=c(e,r,\"y\");if(t.grid||a||i){var o,h,f=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),p=Array.isArray(a),d=Array.isArray(i),g=p&&a!==r.xaxes&&d&&i!==r.yaxes;f?(o=r.subplots.length,h=r.subplots[0].length):(d&&(o=i.length),p&&(h=a.length));var m=s.newContainer(e,\"grid\"),v=k(\"rows\",o),y=k(\"columns\",h);if(v*y>1){if(!f&&!p&&!d)\"independent\"===k(\"pattern\")&&(f=!0);m._hasSubplotGrid=f;var x,b,_=\"top to bottom\"===k(\"roworder\"),w=f?.2:.1,T=f?.3:.1;g&&e._splomGridDflt&&(x=e._splomGridDflt.xside,b=e._splomGridDflt.yside),m._domains={x:u(\"x\",k,w,x,y),y:u(\"y\",k,T,b,v,_)}}else delete e.grid}function k(t,e){return n.coerce(r,m,l,t,e)}},contentDefaults:function(t,e){var r=e.grid;if(r&&r._domains){var n,a,i,o,s,l,u,f=t.grid||{},p=e._subplots,d=r._hasSubplotGrid,g=r.rows,m=r.columns,v=\"independent\"===r.pattern,y=r._axisMap={};if(d){var x=f.subplots||[];l=r.subplots=new Array(g);var b=1;for(n=0;n<g;n++){var _=l[n]=new Array(m),w=x[n]||[];for(a=0;a<m;a++)if(v?(s=1===b?\"xy\":\"x\"+b+\"y\"+b,b++):s=w[a],_[a]=\"\",-1!==p.cartesian.indexOf(s)){if(u=s.indexOf(\"y\"),i=s.slice(0,u),o=s.slice(u),void 0!==y[i]&&y[i]!==a||void 0!==y[o]&&y[o]!==n)continue;_[a]=s,y[i]=a,y[o]=n}}}else{var T=c(e,f,\"x\"),k=c(e,f,\"y\");r.xaxes=h(T,p.xaxis,m,y,\"x\"),r.yaxes=h(k,p.yaxis,g,y,\"y\")}var M=r._anchors={},A=\"top to bottom\"===r.roworder;for(var S in y){var E,C,L,P=S.charAt(0),I=r[P+\"side\"];if(I.length<8)M[S]=\"free\";else if(\"x\"===P){if(\"t\"===I.charAt(0)===A?(E=0,C=1,L=g):(E=g-1,C=-1,L=-1),d){var z=y[S];for(n=E;n!==L;n+=C)if((s=l[n][z])&&(u=s.indexOf(\"y\"),s.slice(0,u)===S)){M[S]=s.slice(u);break}}else for(n=E;n!==L;n+=C)if(o=r.yaxes[n],-1!==p.cartesian.indexOf(S+o)){M[S]=o;break}}else if(\"l\"===I.charAt(0)?(E=0,C=1,L=m):(E=m-1,C=-1,L=-1),d){var O=y[S];for(n=E;n!==L;n+=C)if((s=l[O][n])&&(u=s.indexOf(\"y\"),s.slice(u)===S)){M[S]=s.slice(0,u);break}}else for(n=E;n!==L;n+=C)if(i=r.xaxes[n],-1!==p.cartesian.indexOf(i+S)){M[S]=i;break}}}}}},{\"../../lib\":749,\"../../lib/regex\":765,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/constants\":804,\"../../plots/domain\":825}],660:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/constants\"),a=t(\"../../plot_api/plot_template\").templatedArray;e.exports=a(\"image\",{visible:{valType:\"boolean\",dflt:!0,editType:\"arraydraw\"},source:{valType:\"string\",editType:\"arraydraw\"},layer:{valType:\"enumerated\",values:[\"below\",\"above\"],dflt:\"above\",editType:\"arraydraw\"},sizex:{valType:\"number\",dflt:0,editType:\"arraydraw\"},sizey:{valType:\"number\",dflt:0,editType:\"arraydraw\"},sizing:{valType:\"enumerated\",values:[\"fill\",\"contain\",\"stretch\"],dflt:\"contain\",editType:\"arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"arraydraw\"},x:{valType:\"any\",dflt:0,editType:\"arraydraw\"},y:{valType:\"any\",dflt:0,editType:\"arraydraw\"},xanchor:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"left\",editType:\"arraydraw\"},yanchor:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"top\",editType:\"arraydraw\"},xref:{valType:\"enumerated\",values:[\"paper\",n.idRegex.x.toString()],dflt:\"paper\",editType:\"arraydraw\"},yref:{valType:\"enumerated\",values:[\"paper\",n.idRegex.y.toString()],dflt:\"paper\",editType:\"arraydraw\"},editType:\"arraydraw\"})},{\"../../plot_api/plot_template\":787,\"../../plots/cartesian/constants\":804}],661:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib/to_log_range\");e.exports=function(t,e,r,i){e=e||{};var o=\"log\"===r&&\"linear\"===e.type,s=\"linear\"===r&&\"log\"===e.type;if(o||s)for(var l,c,u=t._fullLayout.images,h=e._id.charAt(0),f=0;f<u.length;f++)if(c=\"images[\"+f+\"].\",(l=u[f])[h+\"ref\"]===e._id){var p=l[h],d=l[\"size\"+h],g=null,m=null;if(o){g=a(p,e.range);var v=d/Math.pow(10,g)/2;m=2*Math.log(v+Math.sqrt(1+v*v))/Math.LN10}else m=(g=Math.pow(10,p))*(Math.pow(10,d/2)-Math.pow(10,-d/2));n(g)?n(m)||(m=null):(g=null,m=null),i(c+h,g),i(c+\"size\"+h,m)}}},{\"../../lib/to_log_range\":775,\"fast-isnumeric\":241}],662:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../plots/array_container_defaults\"),o=t(\"./attributes\");function s(t,e,r){function i(r,a){return n.coerce(t,e,o,r,a)}var s=i(\"source\");if(!i(\"visible\",!!s))return e;i(\"layer\"),i(\"xanchor\"),i(\"yanchor\"),i(\"sizex\"),i(\"sizey\"),i(\"sizing\"),i(\"opacity\");for(var l={_fullLayout:r},c=[\"x\",\"y\"],u=0;u<2;u++){var h=c[u],f=a.coerceRef(t,e,l,h,\"paper\");if(\"paper\"!==f)a.getFromId(l,f)._imgIndices.push(e._index);a.coercePosition(e,l,i,f,h,0)}return e}e.exports=function(t,e){i(t,e,{name:\"images\",handleItemDefaults:s})}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../../plots/cartesian/axes\":798,\"./attributes\":660}],663:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../drawing\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../constants/xmlns_namespaces\");e.exports=function(t){var e,r,s=t._fullLayout,l=[],c={},u=[];for(r=0;r<s.images.length;r++){var h=s.images[r];if(h.visible)if(\"below\"===h.layer&&\"paper\"!==h.xref&&\"paper\"!==h.yref){e=h.xref+h.yref;var f=s._plots[e];if(!f){u.push(h);continue}f.mainplot&&(e=f.mainplot.id),c[e]||(c[e]=[]),c[e].push(h)}else\"above\"===h.layer?l.push(h):u.push(h)}var p={left:{sizing:\"xMin\",offset:0},center:{sizing:\"xMid\",offset:-.5},right:{sizing:\"xMax\",offset:-1}},d={top:{sizing:\"YMin\",offset:0},middle:{sizing:\"YMid\",offset:-.5},bottom:{sizing:\"YMax\",offset:-1}};function g(e){var r=n.select(this);if(this._imgSrc!==e.source)if(r.attr(\"xmlns\",o.svg),e.source&&\"data:\"===e.source.slice(0,5))r.attr(\"xlink:href\",e.source),this._imgSrc=e.source;else{var a=new Promise(function(t){var n=new Image;function a(){r.remove(),t()}this.img=n,n.setAttribute(\"crossOrigin\",\"anonymous\"),n.onerror=a,n.onload=function(){var e=document.createElement(\"canvas\");e.width=this.width,e.height=this.height,e.getContext(\"2d\").drawImage(this,0,0);var n=e.toDataURL(\"image/png\");r.attr(\"xlink:href\",n),t()},r.on(\"error\",a),n.src=e.source,this._imgSrc=e.source}.bind(this));t._promises.push(a)}}function m(e){var r=n.select(this),o=i.getFromId(t,e.xref),l=i.getFromId(t,e.yref),c=s._size,u=o?Math.abs(o.l2p(e.sizex)-o.l2p(0)):e.sizex*c.w,h=l?Math.abs(l.l2p(e.sizey)-l.l2p(0)):e.sizey*c.h,f=u*p[e.xanchor].offset,g=h*d[e.yanchor].offset,m=p[e.xanchor].sizing+d[e.yanchor].sizing,v=(o?o.r2p(e.x)+o._offset:e.x*c.w+c.l)+f,y=(l?l.r2p(e.y)+l._offset:c.h-e.y*c.h+c.t)+g;switch(e.sizing){case\"fill\":m+=\" slice\";break;case\"stretch\":m=\"none\"}r.attr({x:v,y:y,width:u,height:h,preserveAspectRatio:m,opacity:e.opacity});var x=(o?o._id:\"\")+(l?l._id:\"\");a.setClipUrl(r,x?\"clip\"+s._uid+x:null,t)}var v=s._imageLowerLayer.selectAll(\"image\").data(u),y=s._imageUpperLayer.selectAll(\"image\").data(l);v.enter().append(\"image\"),y.enter().append(\"image\"),v.exit().remove(),y.exit().remove(),v.each((function(t){g.bind(this)(t),m.bind(this)(t)})),y.each((function(t){g.bind(this)(t),m.bind(this)(t)}));var x=Object.keys(s._plots);for(r=0;r<x.length;r++){e=x[r];var b=s._plots[e];if(b.imagelayer){var _=b.imagelayer.selectAll(\"image\").data(c[e]||[]);_.enter().append(\"image\"),_.exit().remove(),_.each((function(t){g.bind(this)(t),m.bind(this)(t)}))}}}},{\"../../constants/xmlns_namespaces\":725,\"../../plots/cartesian/axes\":798,\"../drawing\":637,d3:169}],664:[function(t,e,r){\"use strict\";e.exports={moduleType:\"component\",name:\"images\",layoutAttributes:t(\"./attributes\"),supplyLayoutDefaults:t(\"./defaults\"),includeBasePlot:t(\"../../plots/cartesian/include_components\")(\"images\"),draw:t(\"./draw\"),convertCoords:t(\"./convert_coords\")}},{\"../../plots/cartesian/include_components\":810,\"./attributes\":660,\"./convert_coords\":661,\"./defaults\":662,\"./draw\":663}],665:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../color/attributes\");e.exports={bgcolor:{valType:\"color\",editType:\"legend\"},bordercolor:{valType:\"color\",dflt:a.defaultLine,editType:\"legend\"},borderwidth:{valType:\"number\",min:0,dflt:0,editType:\"legend\"},font:n({editType:\"legend\"}),orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],dflt:\"v\",editType:\"legend\"},traceorder:{valType:\"flaglist\",flags:[\"reversed\",\"grouped\"],extras:[\"normal\"],editType:\"legend\"},tracegroupgap:{valType:\"number\",min:0,dflt:10,editType:\"legend\"},itemsizing:{valType:\"enumerated\",values:[\"trace\",\"constant\"],dflt:\"trace\",editType:\"legend\"},itemclick:{valType:\"enumerated\",values:[\"toggle\",\"toggleothers\",!1],dflt:\"toggle\",editType:\"legend\"},itemdoubleclick:{valType:\"enumerated\",values:[\"toggle\",\"toggleothers\",!1],dflt:\"toggleothers\",editType:\"legend\"},x:{valType:\"number\",min:-2,max:3,editType:\"legend\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"left\",editType:\"legend\"},y:{valType:\"number\",min:-2,max:3,editType:\"legend\"},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],editType:\"legend\"},uirevision:{valType:\"any\",editType:\"none\"},valign:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\",editType:\"legend\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"legend\"},font:n({editType:\"legend\"}),side:{valType:\"enumerated\",values:[\"top\",\"left\",\"top left\"],editType:\"legend\"},editType:\"legend\"},editType:\"legend\"}},{\"../../plots/font_attributes\":826,\"../color/attributes\":614}],666:[function(t,e,r){\"use strict\";e.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:\"#808BA4\",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,textGap:40,itemGap:5}},{}],667:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../plot_api/plot_template\"),o=t(\"./attributes\"),s=t(\"../../plots/layout_attributes\"),l=t(\"./helpers\");e.exports=function(t,e,r){for(var c=t.legend||{},u=0,h=!1,f=\"normal\",p=0;p<r.length;p++){var d=r[p];d.visible&&((d.showlegend||d._dfltShowLegend&&!(d._module&&d._module.attributes&&d._module.attributes.showlegend&&!1===d._module.attributes.showlegend.dflt))&&(u++,d.showlegend&&(h=!0,(n.traceIs(d,\"pie-like\")||!0===d._input.showlegend)&&u++)),(n.traceIs(d,\"bar\")&&\"stack\"===e.barmode||-1!==[\"tonextx\",\"tonexty\"].indexOf(d.fill))&&(f=l.isGrouped({traceorder:f})?\"grouped+reversed\":\"reversed\"),void 0!==d.legendgroup&&\"\"!==d.legendgroup&&(f=l.isReversed({traceorder:f})?\"reversed+grouped\":\"grouped\"))}var g=a.coerce(t,e,s,\"showlegend\",h&&u>1);if(!1!==g||c.uirevision){var m=i.newContainer(e,\"legend\");if(_(\"uirevision\",e.uirevision),!1!==g){_(\"bgcolor\",e.paper_bgcolor),_(\"bordercolor\"),_(\"borderwidth\"),a.coerceFont(_,\"font\",e.font);var v,y,x,b=_(\"orientation\");\"h\"===b?(v=0,n.getComponentMethod(\"rangeslider\",\"isVisible\")(t.xaxis)?(y=1.1,x=\"bottom\"):(y=-.1,x=\"top\")):(v=1.02,y=1,x=\"auto\"),_(\"traceorder\",f),l.isGrouped(e.legend)&&_(\"tracegroupgap\"),_(\"itemsizing\"),_(\"itemclick\"),_(\"itemdoubleclick\"),_(\"x\",v),_(\"xanchor\"),_(\"y\",y),_(\"yanchor\",x),_(\"valign\"),a.noneOrAll(c,m,[\"x\",\"y\"]),_(\"title.text\")&&(_(\"title.side\",\"h\"===b?\"left\":\"top\"),a.coerceFont(_,\"title.font\",e.font))}}function _(t,e){return a.coerce(c,m,o,t,e)}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../plots/layout_attributes\":852,\"../../registry\":881,\"./attributes\":665,\"./helpers\":671}],668:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../plots/plots\"),o=t(\"../../registry\"),s=t(\"../../lib/events\"),l=t(\"../dragelement\"),c=t(\"../drawing\"),u=t(\"../color\"),h=t(\"../../lib/svg_text_utils\"),f=t(\"./handle_click\"),p=t(\"./constants\"),d=t(\"../../constants/alignment\"),g=d.LINE_SPACING,m=d.FROM_TL,v=d.FROM_BR,y=t(\"./get_legend_data\"),x=t(\"./style\"),b=t(\"./helpers\");function _(t,e,r,n,a){var i=r.data()[0][0].trace,l={event:a,node:r.node(),curveNumber:i.index,expandedIndex:i._expandedIndex,data:t.data,layout:t.layout,frames:t._transitionData._frames,config:t._context,fullData:t._fullData,fullLayout:t._fullLayout};if(i._group&&(l.group=i._group),o.traceIs(i,\"pie-like\")&&(l.label=r.datum()[0].label),!1!==s.triggerHandler(t,\"plotly_legendclick\",l))if(1===n)e._clickTimeout=setTimeout((function(){f(r,t,n)}),t._context.doubleClickDelay);else if(2===n){e._clickTimeout&&clearTimeout(e._clickTimeout),t._legendMouseDownTime=0,!1!==s.triggerHandler(t,\"plotly_legenddoubleclick\",l)&&f(r,t,n)}}function w(t,e,r){var n,i=t.data()[0][0],s=i.trace,l=o.traceIs(s,\"pie-like\"),u=s.index,f=r._main&&e._context.edits.legendText&&!l,d=r._maxNameLength;r.entries?n=i.text:(n=l?i.label:s.name,s._meta&&(n=a.templateString(n,s._meta)));var g=a.ensureSingle(t,\"text\",\"legendtext\");g.attr(\"text-anchor\",\"start\").call(c.font,r.font).text(f?T(n,d):n),h.positionText(g,p.textGap,0),f?g.call(h.makeEditable,{gd:e,text:n}).call(M,t,e,r).on(\"edit\",(function(n){this.text(T(n,d)).call(M,t,e,r);var s=i.trace._fullInput||{},l={};if(o.hasTransform(s,\"groupby\")){var c=o.getTransformIndices(s,\"groupby\"),h=c[c.length-1],f=a.keyedContainer(s,\"transforms[\"+h+\"].styles\",\"target\",\"value.name\");f.set(i.trace._group,n),l=f.constructUpdate()}else l.name=n;return o.call(\"_guiRestyle\",e,l,u)})):M(g,t,e,r)}function T(t,e){var r=Math.max(4,e);if(t&&t.trim().length>=r/2)return t;for(var n=r-(t=t||\"\").length;n>0;n--)t+=\" \";return t}function k(t,e){var r,i=e._context.doubleClickDelay,o=1,s=a.ensureSingle(t,\"rect\",\"legendtoggle\",(function(t){t.style(\"cursor\",\"pointer\").attr(\"pointer-events\",\"all\").call(u.fill,\"rgba(0,0,0,0)\")}));s.on(\"mousedown\",(function(){(r=(new Date).getTime())-e._legendMouseDownTime<i?o+=1:(o=1,e._legendMouseDownTime=r)})),s.on(\"mouseup\",(function(){if(!e._dragged&&!e._editing){var r=e._fullLayout.legend;(new Date).getTime()-e._legendMouseDownTime>i&&(o=Math.max(o-1,1)),_(e,r,t,o,n.event)}}))}function M(t,e,r,n){n._main||t.attr(\"data-notex\",!0),h.convertToTspans(t,r,(function(){!function(t,e,r){var n=t.data()[0][0];if(r._main&&n&&!n.trace.showlegend)return void t.remove();var a=t.select(\"g[class*=math-group]\"),i=a.node();r||(r=e._fullLayout.legend);var o,s,l=r.borderwidth,u=(n?r:r.title).font.size*g;if(i){var f=c.bBox(i);o=f.height,s=f.width,n?c.setTranslate(a,0,.25*o):c.setTranslate(a,l,.75*o+l)}else{var d=t.select(n?\".legendtext\":\".legendtitletext\"),m=h.lineCount(d),v=d.node();o=u*m,s=v?c.bBox(v).width:0;var y=u*((m-1)/2-.3);n?h.positionText(d,p.textGap,-y):h.positionText(d,p.titlePad+l,u+l)}n?(n.lineHeight=u,n.height=Math.max(o,16)+3,n.width=s):(r._titleWidth=s,r._titleHeight=o)}(e,r,n)}))}function A(t){return a.isRightAnchor(t)?\"right\":a.isCenterAnchor(t)?\"center\":\"left\"}function S(t){return a.isBottomAnchor(t)?\"bottom\":a.isMiddleAnchor(t)?\"middle\":\"top\"}e.exports=function(t,e){var r,s=t._fullLayout,h=\"legend\"+s._uid;if(e?(r=e.layer,h+=\"-hover\"):((e=s.legend||{})._main=!0,r=s._infolayer),r){var f;if(t._legendMouseDownTime||(t._legendMouseDownTime=0),e._main){if(!t.calcdata)return;f=s.showlegend&&y(t.calcdata,e)}else{if(!e.entries)return;f=y(e.entries,e)}var d=s.hiddenlabels||[];if(e._main&&(!s.showlegend||!f.length))return r.selectAll(\".legend\").remove(),s._topdefs.select(\"#\"+h).remove(),i.autoMargin(t,\"legend\");var g=a.ensureSingle(r,\"g\",\"legend\",(function(t){e._main&&t.attr(\"pointer-events\",\"all\")})),T=a.ensureSingleById(s._topdefs,\"clipPath\",h,(function(t){t.append(\"rect\")})),E=a.ensureSingle(g,\"rect\",\"bg\",(function(t){t.attr(\"shape-rendering\",\"crispEdges\")}));E.call(u.stroke,e.bordercolor).call(u.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\");var C=a.ensureSingle(g,\"g\",\"scrollbox\"),L=e.title;if(e._titleWidth=0,e._titleHeight=0,L.text){var P=a.ensureSingle(C,\"text\",\"legendtitletext\");P.attr(\"text-anchor\",\"start\").call(c.font,L.font).text(L.text),M(P,C,t,e)}else C.selectAll(\".legendtitletext\").remove();var I=a.ensureSingle(g,\"rect\",\"scrollbar\",(function(t){t.attr(p.scrollBarEnterAttrs).call(u.fill,p.scrollBarColor)})),z=C.selectAll(\"g.groups\").data(f);z.enter().append(\"g\").attr(\"class\",\"groups\"),z.exit().remove();var O=z.selectAll(\"g.traces\").data(a.identity);O.enter().append(\"g\").attr(\"class\",\"traces\"),O.exit().remove(),O.style(\"opacity\",(function(t){var e=t[0].trace;return o.traceIs(e,\"pie-like\")?-1!==d.indexOf(t[0].label)?.5:1:\"legendonly\"===e.visible?.5:1})).each((function(){n.select(this).call(w,t,e)})).call(x,t,e).each((function(){e._main&&n.select(this).call(k,t)})),a.syncOrAsync([i.previousPromises,function(){return function(t,e,r,a){var i=t._fullLayout;a||(a=i.legend);var o=i._size,s=b.isVertical(a),l=b.isGrouped(a),u=a.borderwidth,h=2*u,f=p.textGap,d=p.itemGap,g=2*(u+d),m=S(a),v=a.y<0||0===a.y&&\"top\"===m,y=a.y>1||1===a.y&&\"bottom\"===m;a._maxHeight=Math.max(v||y?i.height/2:o.h,30);var x=0;a._width=0,a._height=0;var _=function(t){var e=0,r=0,n=t.title.side;n&&(-1!==n.indexOf(\"left\")&&(e=t._titleWidth),-1!==n.indexOf(\"top\")&&(r=t._titleHeight));return[e,r]}(a);if(s)r.each((function(t){var e=t[0].height;c.setTranslate(this,u+_[0],u+_[1]+a._height+e/2+d),a._height+=e,a._width=Math.max(a._width,t[0].width)})),x=f+a._width,a._width+=d+f+h,a._height+=g,l&&(e.each((function(t,e){c.setTranslate(this,0,e*a.tracegroupgap)})),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var w=A(a),T=a.x<0||0===a.x&&\"right\"===w,k=a.x>1||1===a.x&&\"left\"===w,M=y||v,E=i.width/2;a._maxWidth=Math.max(T?M&&\"left\"===w?o.l+o.w:E:k?M&&\"right\"===w?o.r+o.w:E:o.w,2*f);var C=0,L=0;r.each((function(t){var e=t[0].width+f;C=Math.max(C,e),L+=e})),x=null;var P=0;if(l){var I=0,z=0,O=0;e.each((function(){var t=0,e=0;n.select(this).selectAll(\"g.traces\").each((function(r){var n=r[0].height;c.setTranslate(this,_[0],_[1]+u+d+n/2+e),e+=n,t=Math.max(t,f+r[0].width)})),I=Math.max(I,e);var r=t+d;r+u+z>a._maxWidth&&(P=Math.max(P,z),z=0,O+=I+a.tracegroupgap,I=e),c.setTranslate(this,z,O),z+=r})),a._width=Math.max(P,z)+u,a._height=O+I+g}else{var D=r.size(),R=L+h+(D-1)*d<a._maxWidth,F=0,B=0,N=0,j=0;r.each((function(t){var e=t[0].height,r=f+t[0].width,n=(R?r:C)+d;n+u+B-d>=a._maxWidth&&(P=Math.max(P,j),B=0,N+=F,a._height+=F,F=0),c.setTranslate(this,_[0]+u+B,_[1]+u+N+e/2+d),j=B+r+d,B+=n,F=Math.max(F,e)})),R?(a._width=B+h,a._height=F+g):(a._width=Math.max(P,j)+h,a._height+=F+g)}}a._width=Math.ceil(Math.max(a._width+_[0],a._titleWidth+2*(u+p.titlePad))),a._height=Math.ceil(Math.max(a._height+_[1],a._titleHeight+2*(u+p.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var U=t._context.edits,V=U.legendText||U.legendPosition;r.each((function(t){var e=n.select(this).select(\".legendtoggle\"),r=t[0].height,a=V?f:x||f+t[0].width;s||(a+=d/2),c.setRect(e,0,-r/2,a,r)}))}(t,z,O,e)},function(){if(!e._main||!function(t){var e=t._fullLayout.legend,r=A(e),n=S(e);return i.autoMargin(t,\"legend\",{x:e.x,y:e.y,l:e._width*m[r],r:e._width*v[r],b:e._effHeight*v[n],t:e._effHeight*m[n]})}(t)){var u,f,d,y,x=s._size,b=e.borderwidth,w=x.l+x.w*e.x-m[A(e)]*e._width,k=x.t+x.h*(1-e.y)-m[S(e)]*e._effHeight;if(e._main&&s.margin.autoexpand){var M=w,L=k;w=a.constrain(w,0,s.width-e._width),k=a.constrain(k,0,s.height-e._effHeight),w!==M&&a.log(\"Constrain legend.x to make legend fit inside graph\"),k!==L&&a.log(\"Constrain legend.y to make legend fit inside graph\")}if(e._main&&c.setTranslate(g,w,k),I.on(\".drag\",null),g.on(\"wheel\",null),!e._main||e._height<=e._maxHeight||t._context.staticPlot){var P=e._effHeight;e._main||(P=e._height),E.attr({width:e._width-b,height:P-b,x:b/2,y:b/2}),c.setTranslate(C,0,0),T.select(\"rect\").attr({width:e._width-2*b,height:P-2*b,x:b,y:b}),c.setClipUrl(C,h,t),c.setRect(I,0,0,0,0),delete e._scrollY}else{var z,O,D,R=Math.max(p.scrollBarMinHeight,e._effHeight*e._effHeight/e._height),F=e._effHeight-R-2*p.scrollBarMargin,B=e._height-e._effHeight,N=F/B,j=Math.min(e._scrollY||0,B);E.attr({width:e._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:e._effHeight-b,x:b/2,y:b/2}),T.select(\"rect\").attr({width:e._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:e._effHeight-2*b,x:b,y:b+j}),c.setClipUrl(C,h,t),q(j,R,N),g.on(\"wheel\",(function(){q(j=a.constrain(e._scrollY+n.event.deltaY/F*B,0,B),R,N),0!==j&&j!==B&&n.event.preventDefault()}));var U=n.behavior.drag().on(\"dragstart\",(function(){var t=n.event.sourceEvent;z=\"touchstart\"===t.type?t.changedTouches[0].clientY:t.clientY,D=j})).on(\"drag\",(function(){var t=n.event.sourceEvent;2===t.buttons||t.ctrlKey||(O=\"touchmove\"===t.type?t.changedTouches[0].clientY:t.clientY,q(j=function(t,e,r){var n=(r-e)/N+t;return a.constrain(n,0,B)}(D,z,O),R,N))}));I.call(U);var V=n.behavior.drag().on(\"dragstart\",(function(){var t=n.event.sourceEvent;\"touchstart\"===t.type&&(z=t.changedTouches[0].clientY,D=j)})).on(\"drag\",(function(){var t=n.event.sourceEvent;\"touchmove\"===t.type&&(O=t.changedTouches[0].clientY,q(j=function(t,e,r){var n=(e-r)/N+t;return a.constrain(n,0,B)}(D,z,O),R,N))}));C.call(V)}if(t._context.edits.legendPosition)g.classed(\"cursor-move\",!0),l.init({element:g.node(),gd:t,prepFn:function(){var t=c.getTranslate(g);d=t.x,y=t.y},moveFn:function(t,r){var n=d+t,a=y+r;c.setTranslate(g,n,a),u=l.align(n,0,x.l,x.l+x.w,e.xanchor),f=l.align(a,0,x.t+x.h,x.t,e.yanchor)},doneFn:function(){void 0!==u&&void 0!==f&&o.call(\"_guiRelayout\",t,{\"legend.x\":u,\"legend.y\":f})},clickFn:function(e,n){var a=r.selectAll(\"g.traces\").filter((function(){var t=this.getBoundingClientRect();return n.clientX>=t.left&&n.clientX<=t.right&&n.clientY>=t.top&&n.clientY<=t.bottom}));a.size()>0&&_(t,g,a,e,n)}})}function q(r,n,a){e._scrollY=t._fullLayout.legend._scrollY=r,c.setTranslate(C,0,-r),c.setRect(I,e._width,p.scrollBarMargin+r*a,p.scrollBarWidth,n),T.select(\"rect\").attr(\"y\",b+r)}}],t)}}},{\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/events\":738,\"../../lib/svg_text_utils\":773,\"../../plots/plots\":861,\"../../registry\":881,\"../color\":615,\"../dragelement\":634,\"../drawing\":637,\"./constants\":666,\"./get_legend_data\":669,\"./handle_click\":670,\"./helpers\":671,\"./style\":673,d3:169}],669:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"./helpers\");e.exports=function(t,e){var r,i,o={},s=[],l=!1,c={},u=0,h=0,f=e._main;function p(t,r){if(\"\"!==t&&a.isGrouped(e))-1===s.indexOf(t)?(s.push(t),l=!0,o[t]=[[r]]):o[t].push([r]);else{var n=\"~~i\"+u;s.push(n),o[n]=[[r]],u++}}for(r=0;r<t.length;r++){var d=t[r],g=d[0],m=g.trace,v=m.legendgroup;if(!f||m.visible&&m.showlegend)if(n.traceIs(m,\"pie-like\"))for(c[v]||(c[v]={}),i=0;i<d.length;i++){var y=d[i].label;c[v][y]||(p(v,{label:y,color:d[i].color,i:d[i].i,trace:m,pts:d[i].pts}),c[v][y]=!0,h=Math.max(h,(y||\"\").length))}else p(v,g),h=Math.max(h,(m.name||\"\").length)}if(!s.length)return[];var x,b,_=s.length;if(l&&a.isGrouped(e))for(b=new Array(_),r=0;r<_;r++)x=o[s[r]],b[r]=a.isReversed(e)?x.reverse():x;else{for(b=[new Array(_)],r=0;r<_;r++)x=o[s[r]][0],b[0][a.isReversed(e)?_-r-1:r]=x;_=1}return e._lgroupsLength=_,e._maxNameLength=h,b}},{\"../../registry\":881,\"./helpers\":671}],670:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=!0;e.exports=function(t,e,r){var o=e._fullLayout;if(!e._dragged&&!e._editing){var s,l=o.legend.itemclick,c=o.legend.itemdoubleclick;if(1===r&&\"toggle\"===l&&\"toggleothers\"===c&&i&&e.data&&e._context.showTips?(n.notifier(n._(e,\"Double-click on legend to isolate one trace\"),\"long\"),i=!1):i=!1,1===r?s=l:2===r&&(s=c),s){var u,h,f,p,d,g=o.hiddenlabels?o.hiddenlabels.slice():[],m=t.data()[0][0],v=e._fullData,y=m.trace,x=y.legendgroup,b={},_=[],w=[],T=[];if(a.traceIs(y,\"pie-like\")){var k=m.label,M=g.indexOf(k);\"toggle\"===s?-1===M?g.push(k):g.splice(M,1):\"toggleothers\"===s&&(g=[],e.calcdata[0].forEach((function(t){k!==t.label&&g.push(t.label)})),e._fullLayout.hiddenlabels&&e._fullLayout.hiddenlabels.length===g.length&&-1===M&&(g=[])),a.call(\"_guiRelayout\",e,\"hiddenlabels\",g)}else{var A,S=x&&x.length,E=[];if(S)for(u=0;u<v.length;u++)(A=v[u]).visible&&A.legendgroup===x&&E.push(u);if(\"toggle\"===s){var C;switch(y.visible){case!0:C=\"legendonly\";break;case!1:C=!1;break;case\"legendonly\":C=!0}if(S)for(u=0;u<v.length;u++)!1!==v[u].visible&&v[u].legendgroup===x&&B(v[u],C);else B(y,C)}else if(\"toggleothers\"===s){var L,P,I,z,O=!0;for(u=0;u<v.length;u++)if(L=v[u]===y,I=!0!==v[u].showlegend,!(L||I||(P=S&&v[u].legendgroup===x)||!0!==v[u].visible||a.traceIs(v[u],\"notLegendIsolatable\"))){O=!1;break}for(u=0;u<v.length;u++)if(!1!==v[u].visible&&!a.traceIs(v[u],\"notLegendIsolatable\"))switch(y.visible){case\"legendonly\":B(v[u],!0);break;case!0:z=!!O||\"legendonly\",L=v[u]===y,I=!0!==v[u].showlegend&&!v[u].legendgroup,P=L||S&&v[u].legendgroup===x,B(v[u],!(!P&&!I)||z)}}for(u=0;u<w.length;u++)if(f=w[u]){var D=f.constructUpdate(),R=Object.keys(D);for(h=0;h<R.length;h++)p=R[h],(b[p]=b[p]||[])[T[u]]=D[p]}for(d=Object.keys(b),u=0;u<d.length;u++)for(p=d[u],h=0;h<_.length;h++)b[p].hasOwnProperty(h)||(b[p][h]=void 0);a.call(\"_guiRestyle\",e,b,_)}}}function F(t,e,r){var n=_.indexOf(t),a=b[e];return a||(a=b[e]=[]),-1===_.indexOf(t)&&(_.push(t),n=_.length-1),a[n]=r,n}function B(t,e){var r=t._fullInput;if(a.hasTransform(r,\"groupby\")){var i=w[r.index];if(!i){var o=a.getTransformIndices(r,\"groupby\"),s=o[o.length-1];i=n.keyedContainer(r,\"transforms[\"+s+\"].styles\",\"target\",\"value.visible\"),w[r.index]=i}var l=i.get(t._group);void 0===l&&(l=!0),!1!==l&&i.set(t._group,e),T[r.index]=F(r.index,\"visible\",!1!==r.visible)}else{var c=!1!==r.visible&&e;F(r.index,\"visible\",c)}}}},{\"../../lib\":749,\"../../registry\":881}],671:[function(t,e,r){\"use strict\";r.isGrouped=function(t){return-1!==(t.traceorder||\"\").indexOf(\"grouped\")},r.isVertical=function(t){return\"h\"!==t.orientation},r.isReversed=function(t){return-1!==(t.traceorder||\"\").indexOf(\"reversed\")}},{}],672:[function(t,e,r){\"use strict\";e.exports={moduleType:\"component\",name:\"legend\",layoutAttributes:t(\"./attributes\"),supplyLayoutDefaults:t(\"./defaults\"),draw:t(\"./draw\"),style:t(\"./style\")}},{\"./attributes\":665,\"./defaults\":667,\"./draw\":668,\"./style\":673}],673:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=t(\"../drawing\"),s=t(\"../color\"),l=t(\"../colorscale/helpers\").extractOpts,c=t(\"../../traces/scatter/subtypes\"),u=t(\"../../traces/pie/style_one\"),h=t(\"../../traces/pie/helpers\").castOption;function f(t,e){return(e?\"radial\":\"horizontal\")+(t?\"\":\"reversed\")}e.exports=function(t,e,r){var p=e._fullLayout;r||(r=p.legend);var d=\"constant\"===r.itemsizing,g=function(t,e,r,n){var a;if(t+1)a=t;else{if(!(e&&e.width>0))return 0;a=e.width}return d?n:Math.min(a,r)};function m(t,e,r){var i=t[0].trace,o=i.marker||{},l=o.line||{},c=r?i.visible&&i.type===r:a.traceIs(i,\"bar\"),u=n.select(e).select(\"g.legendpoints\").selectAll(\"path.legend\"+r).data(c?[t]:[]);u.enter().append(\"path\").classed(\"legend\"+r,!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",\"translate(20,0)\"),u.exit().remove(),u.each((function(t){var e=n.select(this),r=t[0],a=g(r.mlw,o.line,5,2);e.style(\"stroke-width\",a+\"px\").call(s.fill,r.mc||o.color),a&&s.stroke(e,r.mlc||l.color)}))}function v(t,e,r){var o=t[0],s=o.trace,l=r?s.visible&&s.type===r:a.traceIs(s,r),c=n.select(e).select(\"g.legendpoints\").selectAll(\"path.legend\"+r).data(l?[t]:[]);if(c.enter().append(\"path\").classed(\"legend\"+r,!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",\"translate(20,0)\"),c.exit().remove(),c.size()){var f=(s.marker||{}).line,p=g(h(f.width,o.pts),f,5,2),d=i.minExtend(s,{marker:{line:{width:p}}});d.marker.line.color=f.color;var m=i.minExtend(o,{trace:d});u(c,m,d)}}t.each((function(t){var e=n.select(this),a=i.ensureSingle(e,\"g\",\"layers\");a.style(\"opacity\",t[0].trace.opacity);var o=r.valign,s=t[0].lineHeight,l=t[0].height;if(\"middle\"!==o&&s&&l){var c={top:1,bottom:-1}[o]*(.5*(s-l+3));a.attr(\"transform\",\"translate(0,\"+c+\")\")}else a.attr(\"transform\",null);a.selectAll(\"g.legendfill\").data([t]).enter().append(\"g\").classed(\"legendfill\",!0),a.selectAll(\"g.legendlines\").data([t]).enter().append(\"g\").classed(\"legendlines\",!0);var u=a.selectAll(\"g.legendsymbols\").data([t]);u.enter().append(\"g\").classed(\"legendsymbols\",!0),u.selectAll(\"g.legendpoints\").data([t]).enter().append(\"g\").classed(\"legendpoints\",!0)})).each((function(t){var r,a=t[0].trace,c=[];if(a.visible)switch(a.type){case\"histogram2d\":case\"heatmap\":c=[[\"M-15,-2V4H15V-2Z\"]],r=!0;break;case\"choropleth\":case\"choroplethmapbox\":c=[[\"M-6,-6V6H6V-6Z\"]],r=!0;break;case\"densitymapbox\":c=[[\"M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0\"]],r=\"radial\";break;case\"cone\":c=[[\"M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z\"],[\"M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z\"],[\"M-6,-2 A2,2 0 0,0 -6,2 L6,0Z\"]],r=!1;break;case\"streamtube\":c=[[\"M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z\"],[\"M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z\"],[\"M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z\"]],r=!1;break;case\"surface\":c=[[\"M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z\"],[\"M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z\"]],r=!0;break;case\"mesh3d\":c=[[\"M-6,6H0L-6,-6Z\"],[\"M6,6H0L6,-6Z\"],[\"M-6,-6H6L0,6Z\"]],r=!1;break;case\"volume\":c=[[\"M-6,6H0L-6,-6Z\"],[\"M6,6H0L6,-6Z\"],[\"M-6,-6H6L0,6Z\"]],r=!0;break;case\"isosurface\":c=[[\"M-6,6H0L-6,-6Z\"],[\"M6,6H0L6,-6Z\"],[\"M-6,-6 A12,24 0 0,0 6,-6 L0,6Z\"]],r=!1}var u=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legend3dandfriends\").data(c);u.enter().append(\"path\").classed(\"legend3dandfriends\",!0).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),u.exit().remove(),u.each((function(t,c){var u,h=n.select(this),p=l(a),d=p.colorscale,g=p.reversescale;if(d){if(!r){var m=d.length;u=0===c?d[g?m-1:0][1]:1===c?d[g?0:m-1][1]:d[Math.floor((m-1)/2)][1]}}else{var v=a.vertexcolor||a.facecolor||a.color;u=i.isArrayOrTypedArray(v)?v[c]||v[0]:v}h.attr(\"d\",t[0]),u?h.call(s.fill,u):h.call((function(t){if(t.size()){var n=\"legendfill-\"+a.uid;o.gradient(t,e,n,f(g,\"radial\"===r),d,\"fill\")}}))}))})).each((function(t){var e=t[0].trace,r=\"waterfall\"===e.type;if(t[0]._distinct&&r){var a=t[0].trace[t[0].dir].marker;return t[0].mc=a.color,t[0].mlw=a.line.width,t[0].mlc=a.line.color,m(t,this,\"waterfall\")}var i=[];e.visible&&r&&(i=t[0].hasTotals?[[\"increasing\",\"M-6,-6V6H0Z\"],[\"totals\",\"M6,6H0L-6,-6H-0Z\"],[\"decreasing\",\"M6,6V-6H0Z\"]]:[[\"increasing\",\"M-6,-6V6H6Z\"],[\"decreasing\",\"M6,6V-6H-6Z\"]]);var o=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendwaterfall\").data(i);o.enter().append(\"path\").classed(\"legendwaterfall\",!0).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),o.exit().remove(),o.each((function(t){var r=n.select(this),a=e[t[0]].marker,i=g(void 0,a.line,5,2);r.attr(\"d\",t[1]).style(\"stroke-width\",i+\"px\").call(s.fill,a.color),i&&r.call(s.stroke,a.line.color)}))})).each((function(t){m(t,this,\"funnel\")})).each((function(t){m(t,this)})).each((function(t){var r=t[0].trace,l=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendbox\").data(r.visible&&a.traceIs(r,\"box-violin\")?[t]:[]);l.enter().append(\"path\").classed(\"legendbox\",!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",\"translate(20,0)\"),l.exit().remove(),l.each((function(){var t=n.select(this);if(\"all\"!==r.boxpoints&&\"all\"!==r.points||0!==s.opacity(r.fillcolor)||0!==s.opacity((r.line||{}).color)){var a=g(void 0,r.line,5,2);t.style(\"stroke-width\",a+\"px\").call(s.fill,r.fillcolor),a&&s.stroke(t,r.line.color)}else{var c=i.minExtend(r,{marker:{size:d?12:i.constrain(r.marker.size,2,16),sizeref:1,sizemin:1,sizemode:\"diameter\"}});l.call(o.pointStyle,c,e)}}))})).each((function(t){v(t,this,\"funnelarea\")})).each((function(t){v(t,this,\"pie\")})).each((function(t){var r,a,s=t[0],u=s.trace,h=u.visible&&u.fill&&\"none\"!==u.fill,p=c.hasLines(u),d=u.contours,m=!1,v=!1,y=l(u),x=y.colorscale,b=y.reversescale;if(d){var _=d.coloring;\"lines\"===_?m=!0:p=\"none\"===_||\"heatmap\"===_||d.showlines,\"constraint\"===d.type?h=\"=\"!==d._operation:\"fill\"!==_&&\"heatmap\"!==_||(v=!0)}var w=c.hasMarkers(u)||c.hasText(u),T=h||v,k=p||m,M=w||!T?\"M5,0\":k?\"M5,-2\":\"M5,-3\",A=n.select(this),S=A.select(\".legendfill\").selectAll(\"path\").data(h||v?[t]:[]);if(S.enter().append(\"path\").classed(\"js-fill\",!0),S.exit().remove(),S.attr(\"d\",M+\"h30v6h-30z\").call(h?o.fillGroupStyle:function(t){if(t.size()){var r=\"legendfill-\"+u.uid;o.gradient(t,e,r,f(b),x,\"fill\")}}),p||m){var E=g(void 0,u.line,10,5);a=i.minExtend(u,{line:{width:E}}),r=[i.minExtend(s,{trace:a})]}var C=A.select(\".legendlines\").selectAll(\"path\").data(p||m?[r]:[]);C.enter().append(\"path\").classed(\"js-line\",!0),C.exit().remove(),C.attr(\"d\",M+(m?\"l30,0.0001\":\"h30\")).call(p?o.lineGroupStyle:function(t){if(t.size()){var r=\"legendline-\"+u.uid;o.lineGroupStyle(t),o.gradient(t,e,r,f(b),x,\"stroke\")}})})).each((function(t){var r,a,s=t[0],l=s.trace,u=c.hasMarkers(l),h=c.hasText(l),f=c.hasLines(l);function p(t,e,r,n){var a=i.nestedProperty(l,t).get(),o=i.isArrayOrTypedArray(a)&&e?e(a):a;if(d&&o&&void 0!==n&&(o=n),r){if(o<r[0])return r[0];if(o>r[1])return r[1]}return o}function g(t){return s._distinct&&s.index&&t[s.index]?t[s.index]:t[0]}if(u||h||f){var m={},v={};if(u){m.mc=p(\"marker.color\",g),m.mx=p(\"marker.symbol\",g),m.mo=p(\"marker.opacity\",i.mean,[.2,1]),m.mlc=p(\"marker.line.color\",g),m.mlw=p(\"marker.line.width\",i.mean,[0,5],2),v.marker={sizeref:1,sizemin:1,sizemode:\"diameter\"};var y=p(\"marker.size\",i.mean,[2,16],12);m.ms=y,v.marker.size=y}f&&(v.line={width:p(\"line.width\",g,[0,10],5)}),h&&(m.tx=\"Aa\",m.tp=p(\"textposition\",g),m.ts=10,m.tc=p(\"textfont.color\",g),m.tf=p(\"textfont.family\",g)),r=[i.minExtend(s,m)],(a=i.minExtend(l,v)).selectedpoints=null,a.texttemplate=null}var x=n.select(this).select(\"g.legendpoints\"),b=x.selectAll(\"path.scatterpts\").data(u?r:[]);b.enter().insert(\"path\",\":first-child\").classed(\"scatterpts\",!0).attr(\"transform\",\"translate(20,0)\"),b.exit().remove(),b.call(o.pointStyle,a,e),u&&(r[0].mrc=3);var _=x.selectAll(\"g.pointtext\").data(h?r:[]);_.enter().append(\"g\").classed(\"pointtext\",!0).append(\"text\").attr(\"transform\",\"translate(20,0)\"),_.exit().remove(),_.selectAll(\"text\").call(o.textPointStyle,a,e)})).each((function(t){var e=t[0].trace,r=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendcandle\").data(e.visible&&\"candlestick\"===e.type?[t,t]:[]);r.enter().append(\"path\").classed(\"legendcandle\",!0).attr(\"d\",(function(t,e){return e?\"M-15,0H-8M-8,6V-6H8Z\":\"M15,0H8M8,-6V6H-8Z\"})).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),r.exit().remove(),r.each((function(t,r){var a=n.select(this),i=e[r?\"increasing\":\"decreasing\"],o=g(void 0,i.line,5,2);a.style(\"stroke-width\",o+\"px\").call(s.fill,i.fillcolor),o&&s.stroke(a,i.line.color)}))})).each((function(t){var e=t[0].trace,r=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendohlc\").data(e.visible&&\"ohlc\"===e.type?[t,t]:[]);r.enter().append(\"path\").classed(\"legendohlc\",!0).attr(\"d\",(function(t,e){return e?\"M-15,0H0M-8,-6V0\":\"M15,0H0M8,6V0\"})).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),r.exit().remove(),r.each((function(t,r){var a=n.select(this),i=e[r?\"increasing\":\"decreasing\"],l=g(void 0,i.line,5,2);a.style(\"fill\",\"none\").call(o.dashLine,i.line.dash,l),l&&s.stroke(a,i.line.color)}))}))}},{\"../../lib\":749,\"../../registry\":881,\"../../traces/pie/helpers\":1135,\"../../traces/pie/style_one\":1141,\"../../traces/scatter/subtypes\":1181,\"../color\":615,\"../colorscale/helpers\":626,\"../drawing\":637,d3:169}],674:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../plots/plots\"),i=t(\"../../plots/cartesian/axis_ids\"),o=t(\"../../fonts/ploticon\"),s=t(\"../shapes/draw\").eraseActiveShape,l=t(\"../../lib\"),c=l._,u=e.exports={};function h(t,e){var r,a,o=e.currentTarget,s=o.getAttribute(\"data-attr\"),l=o.getAttribute(\"data-val\")||!0,c=t._fullLayout,u={},h=i.list(t,null,!0),f=c._cartesianSpikesEnabled;if(\"zoom\"===s){var p,d=\"in\"===l?.5:2,g=(1+d)/2,m=(1-d)/2;for(a=0;a<h.length;a++)if(!(r=h[a]).fixedrange)if(p=r._name,\"auto\"===l)u[p+\".autorange\"]=!0;else if(\"reset\"===l){if(void 0===r._rangeInitial)u[p+\".autorange\"]=!0;else{var v=r._rangeInitial.slice();u[p+\".range[0]\"]=v[0],u[p+\".range[1]\"]=v[1]}void 0!==r._showSpikeInitial&&(u[p+\".showspikes\"]=r._showSpikeInitial,\"on\"!==f||r._showSpikeInitial||(f=\"off\"))}else{var y=[r.r2l(r.range[0]),r.r2l(r.range[1])],x=[g*y[0]+m*y[1],g*y[1]+m*y[0]];u[p+\".range[0]\"]=r.l2r(x[0]),u[p+\".range[1]\"]=r.l2r(x[1])}}else\"hovermode\"!==s||\"x\"!==l&&\"y\"!==l||(l=c._isHoriz?\"y\":\"x\",o.setAttribute(\"data-val\",l)),u[s]=l;c._cartesianSpikesEnabled=f,n.call(\"_guiRelayout\",t,u)}function f(t,e){for(var r=e.currentTarget,a=r.getAttribute(\"data-attr\"),i=r.getAttribute(\"data-val\")||!0,o=t._fullLayout._subplots.gl3d||[],s={},l=a.split(\".\"),c=0;c<o.length;c++)s[o[c]+\".\"+l[1]]=i;var u=\"pan\"===i?i:\"zoom\";s.dragmode=u,n.call(\"_guiRelayout\",t,s)}function p(t,e){for(var r=e.currentTarget.getAttribute(\"data-attr\"),a=\"resetLastSave\"===r,i=\"resetDefault\"===r,o=t._fullLayout,s=o._subplots.gl3d||[],l={},c=0;c<s.length;c++){var u,h=s[c],f=h+\".camera\",p=h+\".aspectratio\",d=h+\".aspectmode\",g=o[h]._scene;a?(l[f+\".up\"]=g.viewInitial.up,l[f+\".eye\"]=g.viewInitial.eye,l[f+\".center\"]=g.viewInitial.center,u=!0):i&&(l[f+\".up\"]=null,l[f+\".eye\"]=null,l[f+\".center\"]=null,u=!0),u&&(l[p+\".x\"]=g.viewInitial.aspectratio.x,l[p+\".y\"]=g.viewInitial.aspectratio.y,l[p+\".z\"]=g.viewInitial.aspectratio.z,l[d]=g.viewInitial.aspectmode)}n.call(\"_guiRelayout\",t,l)}function d(t,e){var r=e.currentTarget,n=r._previousVal,a=t._fullLayout,i=a._subplots.gl3d||[],o=[\"xaxis\",\"yaxis\",\"zaxis\"],s={},l={};if(n)l=n,r._previousVal=null;else{for(var c=0;c<i.length;c++){var u=i[c],h=a[u],f=u+\".hovermode\";s[f]=h.hovermode,l[f]=!1;for(var p=0;p<3;p++){var d=o[p],g=u+\".\"+d+\".showspikes\";l[g]=!1,s[g]=h[d].showspikes}}r._previousVal=s}return l}function g(t,e){for(var r=e.currentTarget,a=r.getAttribute(\"data-attr\"),i=r.getAttribute(\"data-val\")||!0,o=t._fullLayout,s=o._subplots.geo||[],l=0;l<s.length;l++){var c=s[l],u=o[c];if(\"zoom\"===a){var h=u.projection.scale,f=\"in\"===i?2*h:.5*h;n.call(\"_guiRelayout\",t,c+\".projection.scale\",f)}}\"reset\"===a&&x(t,\"geo\")}function m(t){var e=t._fullLayout;return!e.hovermode&&(e._has(\"cartesian\")?e._isHoriz?\"y\":\"x\":\"closest\")}function v(t){var e=m(t);n.call(\"_guiRelayout\",t,\"hovermode\",e)}function y(t,e){for(var r=e.currentTarget.getAttribute(\"data-val\"),a=t._fullLayout,i=a._subplots.mapbox||[],o={},s=0;s<i.length;s++){var l=i[s],c=a[l].zoom,u=\"in\"===r?1.05*c:c/1.05;o[l+\".zoom\"]=u}n.call(\"_guiRelayout\",t,o)}function x(t,e){for(var r=t._fullLayout,a=r._subplots[e]||[],i={},o=0;o<a.length;o++)for(var s=a[o],l=r[s]._subplot.viewInitial,c=Object.keys(l),u=0;u<c.length;u++){var h=c[u];i[s+\".\"+h]=l[h]}n.call(\"_guiRelayout\",t,i)}u.toImage={name:\"toImage\",title:function(t){var e=(t._context.toImageButtonOptions||{}).format||\"png\";return c(t,\"png\"===e?\"Download plot as a png\":\"Download plot\")},icon:o.camera,click:function(t){var e=t._context.toImageButtonOptions,r={format:e.format||\"png\"};l.notifier(c(t,\"Taking snapshot - this may take a few seconds\"),\"long\"),\"svg\"!==r.format&&l.isIE()&&(l.notifier(c(t,\"IE only supports svg.  Changing format to svg.\"),\"long\"),r.format=\"svg\"),[\"filename\",\"width\",\"height\",\"scale\"].forEach((function(t){t in e&&(r[t]=e[t])})),n.call(\"downloadImage\",t,r).then((function(e){l.notifier(c(t,\"Snapshot succeeded\")+\" - \"+e,\"long\")})).catch((function(){l.notifier(c(t,\"Sorry, there was a problem downloading your snapshot!\"),\"long\")}))}},u.sendDataToCloud={name:\"sendDataToCloud\",title:function(t){return c(t,\"Edit in Chart Studio\")},icon:o.disk,click:function(t){a.sendDataToCloud(t)}},u.editInChartStudio={name:\"editInChartStudio\",title:function(t){return c(t,\"Edit in Chart Studio\")},icon:o.pencil,click:function(t){a.sendDataToCloud(t)}},u.zoom2d={name:\"zoom2d\",title:function(t){return c(t,\"Zoom\")},attr:\"dragmode\",val:\"zoom\",icon:o.zoombox,click:h},u.pan2d={name:\"pan2d\",title:function(t){return c(t,\"Pan\")},attr:\"dragmode\",val:\"pan\",icon:o.pan,click:h},u.select2d={name:\"select2d\",title:function(t){return c(t,\"Box Select\")},attr:\"dragmode\",val:\"select\",icon:o.selectbox,click:h},u.lasso2d={name:\"lasso2d\",title:function(t){return c(t,\"Lasso Select\")},attr:\"dragmode\",val:\"lasso\",icon:o.lasso,click:h},u.drawclosedpath={name:\"drawclosedpath\",title:function(t){return c(t,\"Draw closed freeform\")},attr:\"dragmode\",val:\"drawclosedpath\",icon:o.drawclosedpath,click:h},u.drawopenpath={name:\"drawopenpath\",title:function(t){return c(t,\"Draw open freeform\")},attr:\"dragmode\",val:\"drawopenpath\",icon:o.drawopenpath,click:h},u.drawline={name:\"drawline\",title:function(t){return c(t,\"Draw line\")},attr:\"dragmode\",val:\"drawline\",icon:o.drawline,click:h},u.drawrect={name:\"drawrect\",title:function(t){return c(t,\"Draw rectangle\")},attr:\"dragmode\",val:\"drawrect\",icon:o.drawrect,click:h},u.drawcircle={name:\"drawcircle\",title:function(t){return c(t,\"Draw circle\")},attr:\"dragmode\",val:\"drawcircle\",icon:o.drawcircle,click:h},u.eraseshape={name:\"eraseshape\",title:function(t){return c(t,\"Erase active shape\")},icon:o.eraseshape,click:s},u.zoomIn2d={name:\"zoomIn2d\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:h},u.zoomOut2d={name:\"zoomOut2d\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:h},u.autoScale2d={name:\"autoScale2d\",title:function(t){return c(t,\"Autoscale\")},attr:\"zoom\",val:\"auto\",icon:o.autoscale,click:h},u.resetScale2d={name:\"resetScale2d\",title:function(t){return c(t,\"Reset axes\")},attr:\"zoom\",val:\"reset\",icon:o.home,click:h},u.hoverClosestCartesian={name:\"hoverClosestCartesian\",title:function(t){return c(t,\"Show closest data on hover\")},attr:\"hovermode\",val:\"closest\",icon:o.tooltip_basic,gravity:\"ne\",click:h},u.hoverCompareCartesian={name:\"hoverCompareCartesian\",title:function(t){return c(t,\"Compare data on hover\")},attr:\"hovermode\",val:function(t){return t._fullLayout._isHoriz?\"y\":\"x\"},icon:o.tooltip_compare,gravity:\"ne\",click:h},u.zoom3d={name:\"zoom3d\",title:function(t){return c(t,\"Zoom\")},attr:\"scene.dragmode\",val:\"zoom\",icon:o.zoombox,click:f},u.pan3d={name:\"pan3d\",title:function(t){return c(t,\"Pan\")},attr:\"scene.dragmode\",val:\"pan\",icon:o.pan,click:f},u.orbitRotation={name:\"orbitRotation\",title:function(t){return c(t,\"Orbital rotation\")},attr:\"scene.dragmode\",val:\"orbit\",icon:o[\"3d_rotate\"],click:f},u.tableRotation={name:\"tableRotation\",title:function(t){return c(t,\"Turntable rotation\")},attr:\"scene.dragmode\",val:\"turntable\",icon:o[\"z-axis\"],click:f},u.resetCameraDefault3d={name:\"resetCameraDefault3d\",title:function(t){return c(t,\"Reset camera to default\")},attr:\"resetDefault\",icon:o.home,click:p},u.resetCameraLastSave3d={name:\"resetCameraLastSave3d\",title:function(t){return c(t,\"Reset camera to last save\")},attr:\"resetLastSave\",icon:o.movie,click:p},u.hoverClosest3d={name:\"hoverClosest3d\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:function(t,e){var r=d(t,e);n.call(\"_guiRelayout\",t,r)}},u.zoomInGeo={name:\"zoomInGeo\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:g},u.zoomOutGeo={name:\"zoomOutGeo\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:g},u.resetGeo={name:\"resetGeo\",title:function(t){return c(t,\"Reset\")},attr:\"reset\",val:null,icon:o.autoscale,click:g},u.hoverClosestGeo={name:\"hoverClosestGeo\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:v},u.hoverClosestGl2d={name:\"hoverClosestGl2d\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:v},u.hoverClosestPie={name:\"hoverClosestPie\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:\"closest\",icon:o.tooltip_basic,gravity:\"ne\",click:v},u.resetViewSankey={name:\"resetSankeyGroup\",title:function(t){return c(t,\"Reset view\")},icon:o.home,click:function(t){for(var e={\"node.groups\":[],\"node.x\":[],\"node.y\":[]},r=0;r<t._fullData.length;r++){var a=t._fullData[r]._viewInitial;e[\"node.groups\"].push(a.node.groups.slice()),e[\"node.x\"].push(a.node.x.slice()),e[\"node.y\"].push(a.node.y.slice())}n.call(\"restyle\",t,e)}},u.toggleHover={name:\"toggleHover\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:function(t,e){var r=d(t,e);r.hovermode=m(t),n.call(\"_guiRelayout\",t,r)}},u.resetViews={name:\"resetViews\",title:function(t){return c(t,\"Reset views\")},icon:o.home,click:function(t,e){var r=e.currentTarget;r.setAttribute(\"data-attr\",\"zoom\"),r.setAttribute(\"data-val\",\"reset\"),h(t,e),r.setAttribute(\"data-attr\",\"resetLastSave\"),p(t,e),x(t,\"geo\"),x(t,\"mapbox\")}},u.toggleSpikelines={name:\"toggleSpikelines\",title:function(t){return c(t,\"Toggle Spike Lines\")},icon:o.spikeline,attr:\"_cartesianSpikesEnabled\",val:\"on\",click:function(t){var e=t._fullLayout,r=e._cartesianSpikesEnabled;e._cartesianSpikesEnabled=\"on\"===r?\"off\":\"on\",n.call(\"_guiRelayout\",t,function(t){for(var e=\"on\"===t._fullLayout._cartesianSpikesEnabled,r=i.list(t,null,!0),n={},a=0;a<r.length;a++){var o=r[a];n[o._name+\".showspikes\"]=!!e||o._showSpikeInitial}return n}(t))}},u.resetViewMapbox={name:\"resetViewMapbox\",title:function(t){return c(t,\"Reset view\")},attr:\"reset\",icon:o.home,click:function(t){x(t,\"mapbox\")}},u.zoomInMapbox={name:\"zoomInMapbox\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:y},u.zoomOutMapbox={name:\"zoomOutMapbox\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:y}},{\"../../fonts/ploticon\":728,\"../../lib\":749,\"../../plots/cartesian/axis_ids\":801,\"../../plots/plots\":861,\"../../registry\":881,\"../shapes/draw\":696}],675:[function(t,e,r){\"use strict\";r.manage=t(\"./manage\")},{\"./manage\":676}],676:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axis_ids\"),a=t(\"../../traces/scatter/subtypes\"),i=t(\"../../registry\"),o=t(\"../fx/helpers\").isUnifiedHover,s=t(\"./modebar\"),l=t(\"./buttons\");e.exports=function(t){var e=t._fullLayout,r=t._context,u=e._modeBar;if(r.displayModeBar||r.watermark){if(!Array.isArray(r.modeBarButtonsToRemove))throw new Error([\"*modeBarButtonsToRemove* configuration options\",\"must be an array.\"].join(\" \"));if(!Array.isArray(r.modeBarButtonsToAdd))throw new Error([\"*modeBarButtonsToAdd* configuration options\",\"must be an array.\"].join(\" \"));var h,f=r.modeBarButtons;h=Array.isArray(f)&&f.length?function(t){for(var e=0;e<t.length;e++)for(var r=t[e],n=0;n<r.length;n++){var a=r[n];if(\"string\"==typeof a){if(void 0===l[a])throw new Error([\"*modeBarButtons* configuration options\",\"invalid button name\"].join(\" \"));t[e][n]=l[a]}}return t}(f):!r.displayModeBar&&r.watermark?[]:function(t){var e=t._fullLayout,r=t._fullData,s=t._context,u=s.modeBarButtonsToRemove,h=s.modeBarButtonsToAdd,f=e._has(\"cartesian\"),p=e._has(\"gl3d\"),d=e._has(\"geo\"),g=e._has(\"pie\"),m=e._has(\"funnelarea\"),v=e._has(\"gl2d\"),y=e._has(\"ternary\"),x=e._has(\"mapbox\"),b=e._has(\"polar\"),_=e._has(\"sankey\"),w=function(t){for(var e=n.list({_fullLayout:t},null,!0),r=0;r<e.length;r++)if(!e[r].fixedrange)return!1;return!0}(e),T=o(e.hovermode),k=[];function M(t){if(t.length){for(var e=[],r=0;r<t.length;r++){var n=t[r];-1===u.indexOf(n)&&e.push(l[n])}k.push(e)}}var A=[\"toImage\"];s.showEditInChartStudio?A.push(\"editInChartStudio\"):s.showSendToCloud&&A.push(\"sendDataToCloud\");M(A);var S=[],E=[],C=[],L=[];(f||v||g||m||y)+d+p+x+b>1?(E=[\"toggleHover\"],C=[\"resetViews\"]):d?(S=[\"zoomInGeo\",\"zoomOutGeo\"],E=[\"hoverClosestGeo\"],C=[\"resetGeo\"]):p?(E=[\"hoverClosest3d\"],C=[\"resetCameraDefault3d\",\"resetCameraLastSave3d\"]):x?(S=[\"zoomInMapbox\",\"zoomOutMapbox\"],E=[\"toggleHover\"],C=[\"resetViewMapbox\"]):v?E=[\"hoverClosestGl2d\"]:g?E=[\"hoverClosestPie\"]:_?(E=[\"hoverClosestCartesian\",\"hoverCompareCartesian\"],C=[\"resetViewSankey\"]):E=[\"toggleHover\"];f&&(E=[\"toggleSpikelines\",\"hoverClosestCartesian\",\"hoverCompareCartesian\"]);(function(t){for(var e=0;e<t.length;e++)if(!i.traceIs(t[e],\"noHover\"))return!1;return!0}(r)||T)&&(E=[]);!f&&!v||w||(S=[\"zoomIn2d\",\"zoomOut2d\",\"autoScale2d\"],\"resetViews\"!==C[0]&&(C=[\"resetScale2d\"]));p?L=[\"zoom3d\",\"pan3d\",\"orbitRotation\",\"tableRotation\"]:(f||v)&&!w||y?L=[\"zoom2d\",\"pan2d\"]:x||d?L=[\"pan2d\"]:b&&(L=[\"zoom2d\"]);(function(t){for(var e=!1,r=0;r<t.length&&!e;r++){var n=t[r];n._module&&n._module.selectPoints&&(i.traceIs(n,\"scatter-like\")?(a.hasMarkers(n)||a.hasText(n))&&(e=!0):i.traceIs(n,\"box-violin\")&&\"all\"!==n.boxpoints&&\"all\"!==n.points||(e=!0))}return e})(r)&&L.push(\"select2d\",\"lasso2d\");if(Array.isArray(h)){for(var P=[],I=0;I<h.length;I++){var z=h[I];\"string\"==typeof z?-1!==c.indexOf(z)&&(e._has(\"mapbox\")||e._has(\"cartesian\"))&&L.push(z):P.push(z)}h=P}return M(L),M(S.concat(C)),M(E),function(t,e){if(e.length)if(Array.isArray(e[0]))for(var r=0;r<e.length;r++)t.push(e[r]);else t.push(e);return t}(k,h)}(t),u?u.update(t,h):e._modeBar=s(t,h)}else u&&(u.destroy(),delete e._modeBar)};var c=[\"drawline\",\"drawopenpath\",\"drawclosedpath\",\"drawcircle\",\"drawrect\",\"eraseshape\"]},{\"../../plots/cartesian/axis_ids\":801,\"../../registry\":881,\"../../traces/scatter/subtypes\":1181,\"../fx/helpers\":651,\"./buttons\":674,\"./modebar\":677}],677:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../lib\"),o=t(\"../../fonts/ploticon\"),s=new DOMParser;function l(t){this.container=t.container,this.element=document.createElement(\"div\"),this.update(t.graphInfo,t.buttons),this.container.appendChild(this.element)}var c=l.prototype;c.update=function(t,e){this.graphInfo=t;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,a=\"modebar-\"+n._uid;this.element.setAttribute(\"id\",a),this._uid=a,this.element.className=\"modebar\",\"hover\"===r.displayModeBar&&(this.element.className+=\" modebar--hover ease-bg\"),\"v\"===n.modebar.orientation&&(this.element.className+=\" vertical\",e=e.reverse());var o=n.modebar,s=\"hover\"===r.displayModeBar?\".js-plotly-plot .plotly:hover \":\"\";i.deleteRelatedStyleRule(a),i.addRelatedStyleRule(a,s+\"#\"+a+\" .modebar-group\",\"background-color: \"+o.bgcolor),i.addRelatedStyleRule(a,\"#\"+a+\" .modebar-btn .icon path\",\"fill: \"+o.color),i.addRelatedStyleRule(a,\"#\"+a+\" .modebar-btn:hover .icon path\",\"fill: \"+o.activecolor),i.addRelatedStyleRule(a,\"#\"+a+\" .modebar-btn.active .icon path\",\"fill: \"+o.activecolor);var l=!this.hasButtons(e),c=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(l||c||u)&&(this.removeAllButtons(),this.updateButtons(e),r.watermark||r.displaylogo)){var h=this.getLogo();r.watermark&&(h.className=h.className+\" watermark\"),\"v\"===n.modebar.orientation?this.element.insertBefore(h,this.element.childNodes[0]):this.element.appendChild(h),this.hasLogo=!0}this.updateActiveButton()},c.updateButtons=function(t){var e=this;this.buttons=t,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach((function(t){var r=e.createGroup();t.forEach((function(t){var n=t.name;if(!n)throw new Error(\"must provide button 'name' in button config\");if(-1!==e.buttonsNames.indexOf(n))throw new Error(\"button name '\"+n+\"' is taken\");e.buttonsNames.push(n);var a=e.createButton(t);e.buttonElements.push(a),r.appendChild(a)})),e.element.appendChild(r)}))},c.createGroup=function(){var t=document.createElement(\"div\");return t.className=\"modebar-group\",t},c.createButton=function(t){var e=this,r=document.createElement(\"a\");r.setAttribute(\"rel\",\"tooltip\"),r.className=\"modebar-btn\";var a=t.title;void 0===a?a=t.name:\"function\"==typeof a&&(a=a(this.graphInfo)),(a||0===a)&&r.setAttribute(\"data-title\",a),void 0!==t.attr&&r.setAttribute(\"data-attr\",t.attr);var i=t.val;if(void 0!==i&&(\"function\"==typeof i&&(i=i(this.graphInfo)),r.setAttribute(\"data-val\",i)),\"function\"!=typeof t.click)throw new Error(\"must provide button 'click' function in button config\");r.addEventListener(\"click\",(function(r){t.click(e.graphInfo,r),e.updateActiveButton(r.currentTarget)})),r.setAttribute(\"data-toggle\",t.toggle||!1),t.toggle&&n.select(r).classed(\"active\",!0);var s=t.icon;return\"function\"==typeof s?r.appendChild(s()):r.appendChild(this.createIcon(s||o.question)),r.setAttribute(\"data-gravity\",t.gravity||\"n\"),r},c.createIcon=function(t){var e,r=a(t.height)?Number(t.height):t.ascent-t.descent,n=\"http://www.w3.org/2000/svg\";if(t.path){(e=document.createElementNS(n,\"svg\")).setAttribute(\"viewBox\",[0,0,t.width,r].join(\" \")),e.setAttribute(\"class\",\"icon\");var i=document.createElementNS(n,\"path\");i.setAttribute(\"d\",t.path),t.transform?i.setAttribute(\"transform\",t.transform):void 0!==t.ascent&&i.setAttribute(\"transform\",\"matrix(1 0 0 -1 0 \"+t.ascent+\")\"),e.appendChild(i)}t.svg&&(e=s.parseFromString(t.svg,\"application/xml\").childNodes[0]);return e.setAttribute(\"height\",\"1em\"),e.setAttribute(\"width\",\"1em\"),e},c.updateActiveButton=function(t){var e=this.graphInfo._fullLayout,r=void 0!==t?t.getAttribute(\"data-attr\"):null;this.buttonElements.forEach((function(t){var a=t.getAttribute(\"data-val\")||!0,o=t.getAttribute(\"data-attr\"),s=\"true\"===t.getAttribute(\"data-toggle\"),l=n.select(t);if(s)o===r&&l.classed(\"active\",!l.classed(\"active\"));else{var c=null===o?o:i.nestedProperty(e,o).get();l.classed(\"active\",c===a)}}))},c.hasButtons=function(t){var e=this.buttons;if(!e)return!1;if(t.length!==e.length)return!1;for(var r=0;r<t.length;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;n<t[r].length;n++)if(t[r][n].name!==e[r][n].name)return!1}return!0},c.getLogo=function(){var t=this.createGroup(),e=document.createElement(\"a\");return e.href=\"https://plotly.com/\",e.target=\"_blank\",e.setAttribute(\"data-title\",i._(this.graphInfo,\"Produced with Plotly\")),e.className=\"modebar-btn plotlyjsicon modebar-btn--logo\",e.appendChild(this.createIcon(o.newplotlylogo)),t.appendChild(e),t},c.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},c.destroy=function(){i.removeElement(this.container.querySelector(\".modebar\")),i.deleteRelatedStyleRule(this._uid)},e.exports=function(t,e){var r=t._fullLayout,a=new l({graphInfo:t,container:r._modebardiv.node(),buttons:e});return r._privateplot&&n.select(a.element).append(\"span\").classed(\"badge-private float--left\",!0).text(\"PRIVATE\"),a}},{\"../../fonts/ploticon\":728,\"../../lib\":749,d3:169,\"fast-isnumeric\":241}],678:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../color/attributes\"),i=(0,t(\"../../plot_api/plot_template\").templatedArray)(\"button\",{visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},step:{valType:\"enumerated\",values:[\"month\",\"year\",\"day\",\"hour\",\"minute\",\"second\",\"all\"],dflt:\"month\",editType:\"plot\"},stepmode:{valType:\"enumerated\",values:[\"backward\",\"todate\"],dflt:\"backward\",editType:\"plot\"},count:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},label:{valType:\"string\",editType:\"plot\"},editType:\"plot\"});e.exports={visible:{valType:\"boolean\",editType:\"plot\"},buttons:i,x:{valType:\"number\",min:-2,max:3,editType:\"plot\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"left\",editType:\"plot\"},y:{valType:\"number\",min:-2,max:3,editType:\"plot\"},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"bottom\",editType:\"plot\"},font:n({editType:\"plot\"}),bgcolor:{valType:\"color\",dflt:a.lightLine,editType:\"plot\"},activecolor:{valType:\"color\",editType:\"plot\"},bordercolor:{valType:\"color\",dflt:a.defaultLine,editType:\"plot\"},borderwidth:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"plot\"}},{\"../../plot_api/plot_template\":787,\"../../plots/font_attributes\":826,\"../color/attributes\":614}],679:[function(t,e,r){\"use strict\";e.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}},{}],680:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../color\"),i=t(\"../../plot_api/plot_template\"),o=t(\"../../plots/array_container_defaults\"),s=t(\"./attributes\"),l=t(\"./constants\");function c(t,e,r,a){var i=a.calendar;function o(r,a){return n.coerce(t,e,s.buttons,r,a)}if(o(\"visible\")){var l=o(\"step\");\"all\"!==l&&(!i||\"gregorian\"===i||\"month\"!==l&&\"year\"!==l?o(\"stepmode\"):e.stepmode=\"backward\",o(\"count\")),o(\"label\")}}e.exports=function(t,e,r,u,h){var f=t.rangeselector||{},p=i.newContainer(e,\"rangeselector\");function d(t,e){return n.coerce(f,p,s,t,e)}if(d(\"visible\",o(f,p,{name:\"buttons\",handleItemDefaults:c,calendar:h}).length>0)){var g=function(t,e,r){for(var n=r.filter((function(r){return e[r].anchor===t._id})),a=0,i=0;i<n.length;i++){var o=e[n[i]].domain;o&&(a=Math.max(o[1],a))}return[t.domain[0],a+l.yPad]}(e,r,u);d(\"x\",g[0]),d(\"y\",g[1]),n.noneOrAll(t,e,[\"x\",\"y\"]),d(\"xanchor\"),d(\"yanchor\"),n.coerceFont(d,\"font\",r.font);var m=d(\"bgcolor\");d(\"activecolor\",a.contrast(m,l.lightAmount,l.darkAmount)),d(\"bordercolor\"),d(\"borderwidth\")}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../plots/array_container_defaults\":793,\"../color\":615,\"./attributes\":678,\"./constants\":679}],681:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../plots/plots\"),o=t(\"../color\"),s=t(\"../drawing\"),l=t(\"../../lib\"),c=t(\"../../lib/svg_text_utils\"),u=t(\"../../plots/cartesian/axis_ids\"),h=t(\"../../constants/alignment\"),f=h.LINE_SPACING,p=h.FROM_TL,d=h.FROM_BR,g=t(\"./constants\"),m=t(\"./get_update_object\");function v(t){return t._id}function y(t,e,r){var n=l.ensureSingle(t,\"rect\",\"selector-rect\",(function(t){t.attr(\"shape-rendering\",\"crispEdges\")}));n.attr({rx:g.rx,ry:g.ry}),n.call(o.stroke,e.bordercolor).call(o.fill,function(t,e){return e._isActive||e._isHovered?t.activecolor:t.bgcolor}(e,r)).style(\"stroke-width\",e.borderwidth+\"px\")}function x(t,e,r,n){l.ensureSingle(t,\"text\",\"selector-text\",(function(t){t.attr(\"text-anchor\",\"middle\")})).call(s.font,e.font).text(function(t,e){if(t.label)return e?l.templateString(t.label,e):t.label;return\"all\"===t.step?\"all\":t.count+t.step.charAt(0)}(r,n._fullLayout._meta)).call((function(t){c.convertToTspans(t,n)}))}e.exports=function(t){var e=t._fullLayout._infolayer.selectAll(\".rangeselector\").data(function(t){for(var e=u.list(t,\"x\",!0),r=[],n=0;n<e.length;n++){var a=e[n];a.rangeselector&&a.rangeselector.visible&&r.push(a)}return r}(t),v);e.enter().append(\"g\").classed(\"rangeselector\",!0),e.exit().remove(),e.style({cursor:\"pointer\",\"pointer-events\":\"all\"}),e.each((function(e){var r=n.select(this),o=e,u=o.rangeselector,h=r.selectAll(\"g.button\").data(l.filterVisible(u.buttons));h.enter().append(\"g\").classed(\"button\",!0),h.exit().remove(),h.each((function(e){var r=n.select(this),i=m(o,e);e._isActive=function(t,e,r){if(\"all\"===e.step)return!0===t.autorange;var n=Object.keys(r);return t.range[0]===r[n[0]]&&t.range[1]===r[n[1]]}(o,e,i),r.call(y,u,e),r.call(x,u,e,t),r.on(\"click\",(function(){t._dragged||a.call(\"_guiRelayout\",t,i)})),r.on(\"mouseover\",(function(){e._isHovered=!0,r.call(y,u,e)})),r.on(\"mouseout\",(function(){e._isHovered=!1,r.call(y,u,e)}))})),function(t,e,r,a,o){var u=0,h=0,m=r.borderwidth;e.each((function(){var t=n.select(this).select(\".selector-text\"),e=r.font.size*f,a=Math.max(e*c.lineCount(t),16)+3;h=Math.max(h,a)})),e.each((function(){var t=n.select(this),e=t.select(\".selector-rect\"),a=t.select(\".selector-text\"),i=a.node()&&s.bBox(a.node()).width,o=r.font.size*f,l=c.lineCount(a),p=Math.max(i+10,g.minButtonWidth);t.attr(\"transform\",\"translate(\"+(m+u)+\",\"+m+\")\"),e.attr({x:0,y:0,width:p,height:h}),c.positionText(a,p/2,h/2-(l-1)*o/2+3),u+=p+5}));var v=t._fullLayout._size,y=v.l+v.w*r.x,x=v.t+v.h*(1-r.y),b=\"left\";l.isRightAnchor(r)&&(y-=u,b=\"right\");l.isCenterAnchor(r)&&(y-=u/2,b=\"center\");var _=\"top\";l.isBottomAnchor(r)&&(x-=h,_=\"bottom\");l.isMiddleAnchor(r)&&(x-=h/2,_=\"middle\");u=Math.ceil(u),h=Math.ceil(h),y=Math.round(y),x=Math.round(x),i.autoMargin(t,a+\"-range-selector\",{x:r.x,y:r.y,l:u*p[b],r:u*d[b],b:h*d[_],t:h*p[_]}),o.attr(\"transform\",\"translate(\"+y+\",\"+x+\")\")}(t,h,u,o._name,r)}))}},{\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axis_ids\":801,\"../../plots/plots\":861,\"../../registry\":881,\"../color\":615,\"../drawing\":637,\"./constants\":679,\"./get_update_object\":682,d3:169}],682:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports=function(t,e){var r=t._name,a={};if(\"all\"===e.step)a[r+\".autorange\"]=!0;else{var i=function(t,e){var r,a=t.range,i=new Date(t.r2l(a[1])),o=e.step,s=e.count;switch(e.stepmode){case\"backward\":r=t.l2r(+n.time[o].utc.offset(i,-s));break;case\"todate\":var l=n.time[o].utc.offset(i,-s);r=t.l2r(+n.time[o].utc.ceil(l))}var c=a[1];return[r,c]}(t,e);a[r+\".range[0]\"]=i[0],a[r+\".range[1]\"]=i[1]}return a}},{d3:169}],683:[function(t,e,r){\"use strict\";e.exports={moduleType:\"component\",name:\"rangeselector\",schema:{subplots:{xaxis:{rangeselector:t(\"./attributes\")}}},layoutAttributes:t(\"./attributes\"),handleDefaults:t(\"./defaults\"),draw:t(\"./draw\")}},{\"./attributes\":678,\"./defaults\":680,\"./draw\":681}],684:[function(t,e,r){\"use strict\";var n=t(\"../color/attributes\");e.exports={bgcolor:{valType:\"color\",dflt:n.background,editType:\"plot\"},bordercolor:{valType:\"color\",dflt:n.defaultLine,editType:\"plot\"},borderwidth:{valType:\"integer\",dflt:0,min:0,editType:\"plot\"},autorange:{valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},range:{valType:\"info_array\",items:[{valType:\"any\",editType:\"calc\",impliedEdits:{\"^autorange\":!1}},{valType:\"any\",editType:\"calc\",impliedEdits:{\"^autorange\":!1}}],editType:\"calc\",impliedEdits:{autorange:!1}},thickness:{valType:\"number\",dflt:.15,min:0,max:1,editType:\"plot\"},visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"}},{\"../color/attributes\":614}],685:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axis_ids\").list,a=t(\"../../plots/cartesian/autorange\").getAutoRange,i=t(\"./constants\");e.exports=function(t){for(var e=n(t,\"x\",!0),r=0;r<e.length;r++){var o=e[r],s=o[i.name];s&&s.visible&&s.autorange&&(s._input.autorange=!0,s._input.range=s.range=a(t,o))}}},{\"../../plots/cartesian/autorange\":797,\"../../plots/cartesian/axis_ids\":801,\"./constants\":686}],686:[function(t,e,r){\"use strict\";e.exports={name:\"rangeslider\",containerClassName:\"rangeslider-container\",bgClassName:\"rangeslider-bg\",rangePlotClassName:\"rangeslider-rangeplot\",maskMinClassName:\"rangeslider-mask-min\",maskMaxClassName:\"rangeslider-mask-max\",slideBoxClassName:\"rangeslider-slidebox\",grabberMinClassName:\"rangeslider-grabber-min\",grabAreaMinClassName:\"rangeslider-grabarea-min\",handleMinClassName:\"rangeslider-handle-min\",grabberMaxClassName:\"rangeslider-grabber-max\",grabAreaMaxClassName:\"rangeslider-grabarea-max\",handleMaxClassName:\"rangeslider-handle-max\",maskMinOppAxisClassName:\"rangeslider-mask-min-opp-axis\",maskMaxOppAxisClassName:\"rangeslider-mask-max-opp-axis\",maskColor:\"rgba(0,0,0,0.4)\",maskOppAxisColor:\"rgba(0,0,0,0.2)\",slideBoxFill:\"transparent\",slideBoxCursor:\"ew-resize\",grabAreaFill:\"transparent\",grabAreaCursor:\"col-resize\",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}},{}],687:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plot_api/plot_template\"),i=t(\"../../plots/cartesian/axis_ids\"),o=t(\"./attributes\"),s=t(\"./oppaxis_attributes\");e.exports=function(t,e,r){var l=t[r],c=e[r];if(l.rangeslider||e._requestRangeslider[c._id]){n.isPlainObject(l.rangeslider)||(l.rangeslider={});var u,h,f=l.rangeslider,p=a.newContainer(c,\"rangeslider\");if(_(\"visible\")){_(\"bgcolor\",e.plot_bgcolor),_(\"bordercolor\"),_(\"borderwidth\"),_(\"thickness\"),_(\"autorange\",!c.isValidRange(f.range)),_(\"range\");var d=e._subplots;if(d)for(var g=d.cartesian.filter((function(t){return t.substr(0,t.indexOf(\"y\"))===i.name2id(r)})).map((function(t){return t.substr(t.indexOf(\"y\"),t.length)})),m=n.simpleMap(g,i.id2name),v=0;v<m.length;v++){var y=m[v];u=f[y]||{},h=a.newContainer(p,y,\"yaxis\");var x,b=e[y];u.range&&b.isValidRange(u.range)&&(x=\"fixed\"),\"match\"!==w(\"rangemode\",x)&&w(\"range\",b.range.slice())}p._input=f}}function _(t,e){return n.coerce(f,p,o,t,e)}function w(t,e){return n.coerce(u,h,s,t,e)}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/axis_ids\":801,\"./attributes\":684,\"./oppaxis_attributes\":691}],688:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../plots/plots\"),o=t(\"../../lib\"),s=t(\"../drawing\"),l=t(\"../color\"),c=t(\"../titles\"),u=t(\"../../plots/cartesian\"),h=t(\"../../plots/cartesian/axis_ids\"),f=t(\"../dragelement\"),p=t(\"../../lib/setcursor\"),d=t(\"./constants\");function g(t,e,r,n){var a=o.ensureSingle(t,\"rect\",d.bgClassName,(function(t){t.attr({x:0,y:0,\"shape-rendering\":\"crispEdges\"})})),i=n.borderwidth%2==0?n.borderwidth:n.borderwidth-1,l=-n._offsetShift,c=s.crispRound(e,n.borderwidth);a.attr({width:n._width+i,height:n._height+i,transform:\"translate(\"+l+\",\"+l+\")\",fill:n.bgcolor,stroke:n.bordercolor,\"stroke-width\":c})}function m(t,e,r,n){var a=e._fullLayout;o.ensureSingleById(a._topdefs,\"clipPath\",n._clipId,(function(t){t.append(\"rect\").attr({x:0,y:0})})).select(\"rect\").attr({width:n._width,height:n._height})}function v(t,e,r,a){var l,c=e.calcdata,f=t.selectAll(\"g.\"+d.rangePlotClassName).data(r._subplotsWith,o.identity);f.enter().append(\"g\").attr(\"class\",(function(t){return d.rangePlotClassName+\" \"+t})).call(s.setClipUrl,a._clipId,e),f.order(),f.exit().remove(),f.each((function(t,o){var s=n.select(this),f=0===o,p=h.getFromId(e,t,\"y\"),d=p._name,g=a[d],m={data:[],layout:{xaxis:{type:r.type,domain:[0,1],range:a.range.slice(),calendar:r.calendar},width:a._width,height:a._height,margin:{t:0,b:0,l:0,r:0}},_context:e._context};r.rangebreaks&&(m.layout.xaxis.rangebreaks=r.rangebreaks),m.layout[d]={type:p.type,domain:[0,1],range:\"match\"!==g.rangemode?g.range.slice():p.range.slice(),calendar:p.calendar},p.rangebreaks&&(m.layout[d].rangebreaks=p.rangebreaks),i.supplyDefaults(m);var v=m._fullLayout.xaxis,y=m._fullLayout[d];v.clearCalc(),v.setScale(),y.clearCalc(),y.setScale();var x={id:t,plotgroup:s,xaxis:v,yaxis:y,isRangePlot:!0};f?l=x:(x.mainplot=\"xy\",x.mainplotinfo=l),u.rangePlot(e,x,function(t,e){for(var r=[],n=0;n<t.length;n++){var a=t[n],i=a[0].trace;i.xaxis+i.yaxis===e&&r.push(a)}return r}(c,t))}))}function y(t,e,r,n,a){(o.ensureSingle(t,\"rect\",d.maskMinClassName,(function(t){t.attr({x:0,y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"height\",n._height).call(l.fill,d.maskColor),o.ensureSingle(t,\"rect\",d.maskMaxClassName,(function(t){t.attr({y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"height\",n._height).call(l.fill,d.maskColor),\"match\"!==a.rangemode)&&(o.ensureSingle(t,\"rect\",d.maskMinOppAxisClassName,(function(t){t.attr({y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"width\",n._width).call(l.fill,d.maskOppAxisColor),o.ensureSingle(t,\"rect\",d.maskMaxOppAxisClassName,(function(t){t.attr({y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"width\",n._width).style(\"border-top\",d.maskOppBorder).call(l.fill,d.maskOppAxisColor))}function x(t,e,r,n){e._context.staticPlot||o.ensureSingle(t,\"rect\",d.slideBoxClassName,(function(t){t.attr({y:0,cursor:d.slideBoxCursor,\"shape-rendering\":\"crispEdges\"})})).attr({height:n._height,fill:d.slideBoxFill})}function b(t,e,r,n){var a=o.ensureSingle(t,\"g\",d.grabberMinClassName),i=o.ensureSingle(t,\"g\",d.grabberMaxClassName),s={x:0,width:d.handleWidth,rx:d.handleRadius,fill:l.background,stroke:l.defaultLine,\"stroke-width\":d.handleStrokeWidth,\"shape-rendering\":\"crispEdges\"},c={y:Math.round(n._height/4),height:Math.round(n._height/2)};if(o.ensureSingle(a,\"rect\",d.handleMinClassName,(function(t){t.attr(s)})).attr(c),o.ensureSingle(i,\"rect\",d.handleMaxClassName,(function(t){t.attr(s)})).attr(c),!e._context.staticPlot){var u={width:d.grabAreaWidth,x:0,y:0,fill:d.grabAreaFill,cursor:d.grabAreaCursor};o.ensureSingle(a,\"rect\",d.grabAreaMinClassName,(function(t){t.attr(u)})).attr(\"height\",n._height),o.ensureSingle(i,\"rect\",d.grabAreaMaxClassName,(function(t){t.attr(u)})).attr(\"height\",n._height)}}e.exports=function(t){for(var e=t._fullLayout,r=e._rangeSliderData,i=0;i<r.length;i++){var s=r[i][d.name];s._clipId=s._id+\"-\"+e._uid}var l=e._infolayer.selectAll(\"g.\"+d.containerClassName).data(r,(function(t){return t._name}));l.exit().each((function(t){var r=t[d.name];e._topdefs.select(\"#\"+r._clipId).remove()})).remove(),0!==r.length&&(l.enter().append(\"g\").classed(d.containerClassName,!0).attr(\"pointer-events\",\"all\"),l.each((function(r){var i=n.select(this),s=r[d.name],l=e[h.id2name(r.anchor)],u=s[h.id2name(r.anchor)];if(s.range){var _,w=o.simpleMap(s.range,r.r2l),T=o.simpleMap(r.range,r.r2l);_=T[0]<T[1]?[Math.min(w[0],T[0]),Math.max(w[1],T[1])]:[Math.max(w[0],T[0]),Math.min(w[1],T[1])],s.range=s._input.range=o.simpleMap(_,r.l2r)}r.cleanRange(\"rangeslider.range\");var k=e._size,M=r.domain;s._width=k.w*(M[1]-M[0]);var A=Math.round(k.l+k.w*M[0]),S=Math.round(k.t+k.h*(1-r._counterDomainMin)+(\"bottom\"===r.side?r._depth:0)+s._offsetShift+d.extraPad);i.attr(\"transform\",\"translate(\"+A+\",\"+S+\")\"),s._rl=o.simpleMap(s.range,r.r2l);var E=s._rl[0],C=s._rl[1],L=C-E;if(s.p2d=function(t){return t/s._width*L+E},s.d2p=function(t){return(t-E)/L*s._width},r.rangebreaks){var P=r.locateBreaks(E,C);if(P.length){var I,z,O=0;for(I=0;I<P.length;I++)O+=(z=P[I]).max-z.min;var D=s._width/(C-E-O),R=[-D*E];for(I=0;I<P.length;I++)z=P[I],R.push(R[R.length-1]-D*(z.max-z.min));for(s.d2p=function(t){for(var e=R[0],r=0;r<P.length;r++){var n=P[r];if(t>=n.max)e=R[r+1];else if(t<n.min)break}return e+D*t},I=0;I<P.length;I++)(z=P[I]).pmin=s.d2p(z.min),z.pmax=s.d2p(z.max);s.p2d=function(t){for(var e=R[0],r=0;r<P.length;r++){var n=P[r];if(t>=n.pmax)e=R[r+1];else if(t<n.pmin)break}return(t-e)/D}}}if(\"match\"!==u.rangemode){var F=l.r2l(u.range[0]),B=l.r2l(u.range[1])-F;s.d2pOppAxis=function(t){return(t-F)/B*s._height}}i.call(g,t,r,s).call(m,t,r,s).call(v,t,r,s).call(y,t,r,s,u).call(x,t,r,s).call(b,t,r,s),function(t,e,r,i){var s=t.select(\"rect.\"+d.slideBoxClassName).node(),l=t.select(\"rect.\"+d.grabAreaMinClassName).node(),c=t.select(\"rect.\"+d.grabAreaMaxClassName).node();function u(){var u=n.event,h=u.target,d=u.clientX||u.touches[0].clientX,g=d-t.node().getBoundingClientRect().left,m=i.d2p(r._rl[0]),v=i.d2p(r._rl[1]),y=f.coverSlip();function x(t){var u,f,x,b=+(t.clientX||t.touches[0].clientX)-d;switch(h){case s:x=\"ew-resize\",u=m+b,f=v+b;break;case l:x=\"col-resize\",u=m+b,f=v;break;case c:x=\"col-resize\",u=m,f=v+b;break;default:x=\"ew-resize\",u=g,f=g+b}if(f<u){var _=f;f=u,u=_}i._pixelMin=u,i._pixelMax=f,p(n.select(y),x),function(t,e,r,n){function i(t){return r.l2r(o.constrain(t,n._rl[0],n._rl[1]))}var s=i(n.p2d(n._pixelMin)),l=i(n.p2d(n._pixelMax));window.requestAnimationFrame((function(){a.call(\"_guiRelayout\",e,r._name+\".range\",[s,l])}))}(0,e,r,i)}function b(){y.removeEventListener(\"mousemove\",x),y.removeEventListener(\"mouseup\",b),this.removeEventListener(\"touchmove\",x),this.removeEventListener(\"touchend\",b),o.removeElement(y)}this.addEventListener(\"touchmove\",x),this.addEventListener(\"touchend\",b),y.addEventListener(\"mousemove\",x),y.addEventListener(\"mouseup\",b)}t.on(\"mousedown\",u),t.on(\"touchstart\",u)}(i,t,r,s),function(t,e,r,n,a,i){var s=d.handleWidth/2;function l(t){return o.constrain(t,0,n._width)}function c(t){return o.constrain(t,0,n._height)}function u(t){return o.constrain(t,-s,n._width+s)}var h=l(n.d2p(r._rl[0])),f=l(n.d2p(r._rl[1]));if(t.select(\"rect.\"+d.slideBoxClassName).attr(\"x\",h).attr(\"width\",f-h),t.select(\"rect.\"+d.maskMinClassName).attr(\"width\",h),t.select(\"rect.\"+d.maskMaxClassName).attr(\"x\",f).attr(\"width\",n._width-f),\"match\"!==i.rangemode){var p=n._height-c(n.d2pOppAxis(a._rl[1])),g=n._height-c(n.d2pOppAxis(a._rl[0]));t.select(\"rect.\"+d.maskMinOppAxisClassName).attr(\"x\",h).attr(\"height\",p).attr(\"width\",f-h),t.select(\"rect.\"+d.maskMaxOppAxisClassName).attr(\"x\",h).attr(\"y\",g).attr(\"height\",n._height-g).attr(\"width\",f-h),t.select(\"rect.\"+d.slideBoxClassName).attr(\"y\",p).attr(\"height\",g-p)}var m=Math.round(u(h-s))-.5,v=Math.round(u(f-s))+.5;t.select(\"g.\"+d.grabberMinClassName).attr(\"transform\",\"translate(\"+m+\",0.5)\"),t.select(\"g.\"+d.grabberMaxClassName).attr(\"transform\",\"translate(\"+v+\",0.5)\")}(i,0,r,s,l,u),\"bottom\"===r.side&&c.draw(t,r._id+\"title\",{propContainer:r,propName:r._name+\".title\",placeholder:e._dfltTitle.x,attributes:{x:r._offset+r._length/2,y:S+s._height+s._offsetShift+10+1.5*r.title.font.size,\"text-anchor\":\"middle\"}})})))}},{\"../../lib\":749,\"../../lib/setcursor\":769,\"../../plots/cartesian\":811,\"../../plots/cartesian/axis_ids\":801,\"../../plots/plots\":861,\"../../registry\":881,\"../color\":615,\"../dragelement\":634,\"../drawing\":637,\"../titles\":710,\"./constants\":686,d3:169}],689:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axis_ids\"),a=t(\"../../lib/svg_text_utils\"),i=t(\"./constants\"),o=t(\"../../constants/alignment\").LINE_SPACING,s=i.name;function l(t){var e=t&&t[s];return e&&e.visible}r.isVisible=l,r.makeData=function(t){var e=n.list({_fullLayout:t},\"x\",!0),r=t.margin,a=[];if(!t._has(\"gl2d\"))for(var i=0;i<e.length;i++){var o=e[i];if(l(o)){a.push(o);var c=o[s];c._id=s+o._id,c._height=(t.height-r.b-r.t)*c.thickness,c._offsetShift=Math.floor(c.borderwidth/2)}}t._rangeSliderData=a},r.autoMarginOpts=function(t,e){var r=t._fullLayout,n=e[s],l=e._id.charAt(0),c=0,u=0;\"bottom\"===e.side&&(c=e._depth,e.title.text!==r._dfltTitle[l]&&(u=1.5*e.title.font.size+10+n._offsetShift,u+=(e.title.text.match(a.BR_TAG_ALL)||[]).length*e.title.font.size*o));return{x:0,y:e._counterDomainMin,l:0,r:0,t:0,b:n._height+c+Math.max(r.margin.b,u),pad:i.extraPad+2*n._offsetShift}}},{\"../../constants/alignment\":717,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axis_ids\":801,\"./constants\":686}],690:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"./oppaxis_attributes\"),o=t(\"./helpers\");e.exports={moduleType:\"component\",name:\"rangeslider\",schema:{subplots:{xaxis:{rangeslider:n.extendFlat({},a,{yaxis:i})}}},layoutAttributes:t(\"./attributes\"),handleDefaults:t(\"./defaults\"),calcAutorange:t(\"./calc_autorange\"),draw:t(\"./draw\"),isVisible:o.isVisible,makeData:o.makeData,autoMarginOpts:o.autoMarginOpts}},{\"../../lib\":749,\"./attributes\":684,\"./calc_autorange\":685,\"./defaults\":687,\"./draw\":688,\"./helpers\":689,\"./oppaxis_attributes\":691}],691:[function(t,e,r){\"use strict\";e.exports={_isSubplotObj:!0,rangemode:{valType:\"enumerated\",values:[\"auto\",\"fixed\",\"match\"],dflt:\"match\",editType:\"calc\"},range:{valType:\"info_array\",items:[{valType:\"any\",editType:\"plot\"},{valType:\"any\",editType:\"plot\"}],editType:\"plot\"},editType:\"calc\"}},{}],692:[function(t,e,r){\"use strict\";var n=t(\"../annotations/attributes\"),a=t(\"../../traces/scatter/attributes\").line,i=t(\"../drawing/attributes\").dash,o=t(\"../../lib/extend\").extendFlat,s=t(\"../../plot_api/plot_template\").templatedArray;e.exports=s(\"shape\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},type:{valType:\"enumerated\",values:[\"circle\",\"rect\",\"path\",\"line\"],editType:\"calc+arraydraw\"},layer:{valType:\"enumerated\",values:[\"below\",\"above\"],dflt:\"above\",editType:\"arraydraw\"},xref:o({},n.xref,{}),xsizemode:{valType:\"enumerated\",values:[\"scaled\",\"pixel\"],dflt:\"scaled\",editType:\"calc+arraydraw\"},xanchor:{valType:\"any\",editType:\"calc+arraydraw\"},x0:{valType:\"any\",editType:\"calc+arraydraw\"},x1:{valType:\"any\",editType:\"calc+arraydraw\"},yref:o({},n.yref,{}),ysizemode:{valType:\"enumerated\",values:[\"scaled\",\"pixel\"],dflt:\"scaled\",editType:\"calc+arraydraw\"},yanchor:{valType:\"any\",editType:\"calc+arraydraw\"},y0:{valType:\"any\",editType:\"calc+arraydraw\"},y1:{valType:\"any\",editType:\"calc+arraydraw\"},path:{valType:\"string\",editType:\"calc+arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"arraydraw\"},line:{color:o({},a.color,{editType:\"arraydraw\"}),width:o({},a.width,{editType:\"calc+arraydraw\"}),dash:o({},i,{editType:\"arraydraw\"}),editType:\"calc+arraydraw\"},fillcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},fillrule:{valType:\"enumerated\",values:[\"evenodd\",\"nonzero\"],dflt:\"evenodd\",editType:\"arraydraw\"},editable:{valType:\"boolean\",dflt:!1,editType:\"calc+arraydraw\"},editType:\"arraydraw\"})},{\"../../lib/extend\":739,\"../../plot_api/plot_template\":787,\"../../traces/scatter/attributes\":1156,\"../annotations/attributes\":598,\"../drawing/attributes\":636}],693:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"./constants\"),o=t(\"./helpers\");function s(t){return c(t.line.width,t.xsizemode,t.x0,t.x1,t.path,!1)}function l(t){return c(t.line.width,t.ysizemode,t.y0,t.y1,t.path,!0)}function c(t,e,r,a,s,l){var c=t/2,u=l;if(\"pixel\"===e){var h=s?o.extractPathCoords(s,l?i.paramIsY:i.paramIsX):[r,a],f=n.aggNums(Math.max,null,h),p=n.aggNums(Math.min,null,h),d=p<0?Math.abs(p)+c:c,g=f>0?f+c:c;return{ppad:c,ppadplus:u?d:g,ppadminus:u?g:d}}return{ppad:c}}function u(t,e,r,n,a){var s=\"category\"===t.type||\"multicategory\"===t.type?t.r2c:t.d2c;if(void 0!==e)return[s(e),s(r)];if(n){var l,c,u,h,f=1/0,p=-1/0,d=n.match(i.segmentRE);for(\"date\"===t.type&&(s=o.decodeDate(s)),l=0;l<d.length;l++)void 0!==(c=a[d[l].charAt(0)].drawn)&&(!(u=d[l].substr(1).match(i.paramRE))||u.length<c||((h=s(u[c]))<f&&(f=h),h>p&&(p=h)));return p>=f?[f,p]:void 0}}e.exports=function(t){var e=t._fullLayout,r=n.filterVisible(e.shapes);if(r.length&&t._fullData.length)for(var o=0;o<r.length;o++){var c,h,f=r[o];if(f._extremes={},\"paper\"!==f.xref){var p=\"pixel\"===f.xsizemode?f.xanchor:f.x0,d=\"pixel\"===f.xsizemode?f.xanchor:f.x1;(h=u(c=a.getFromId(t,f.xref),p,d,f.path,i.paramIsX))&&(f._extremes[c._id]=a.findExtremes(c,h,s(f)))}if(\"paper\"!==f.yref){var g=\"pixel\"===f.ysizemode?f.yanchor:f.y0,m=\"pixel\"===f.ysizemode?f.yanchor:f.y1;(h=u(c=a.getFromId(t,f.yref),g,m,f.path,i.paramIsY))&&(f._extremes[c._id]=a.findExtremes(c,h,l(f)))}}}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"./constants\":694,\"./helpers\":703}],694:[function(t,e,r){\"use strict\";e.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}},{}],695:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../plots/array_container_defaults\"),o=t(\"./attributes\"),s=t(\"./helpers\");function l(t,e,r){function i(r,a){return n.coerce(t,e,o,r,a)}if(i(\"visible\")){var l=i(\"path\"),c=i(\"type\",l?\"path\":\"rect\");\"path\"!==e.type&&delete e.path,i(\"editable\"),i(\"layer\"),i(\"opacity\"),i(\"fillcolor\"),i(\"fillrule\"),i(\"line.width\")&&(i(\"line.color\"),i(\"line.dash\"));for(var u=i(\"xsizemode\"),h=i(\"ysizemode\"),f=[\"x\",\"y\"],p=0;p<2;p++){var d,g,m,v=f[p],y=v+\"anchor\",x=\"x\"===v?u:h,b={_fullLayout:r},_=a.coerceRef(t,e,b,v,\"\",\"paper\");if(\"paper\"!==_?((d=a.getFromId(b,_))._shapeIndices.push(e._index),m=s.rangeToShapePosition(d),g=s.shapePositionToRange(d)):g=m=n.identity,\"path\"!==c){var w=v+\"0\",T=v+\"1\",k=t[w],M=t[T];t[w]=g(t[w],!0),t[T]=g(t[T],!0),\"pixel\"===x?(i(w,0),i(T,10)):(a.coercePosition(e,b,i,_,w,.25),a.coercePosition(e,b,i,_,T,.75)),e[w]=m(e[w]),e[T]=m(e[T]),t[w]=k,t[T]=M}if(\"pixel\"===x){var A=t[y];t[y]=g(t[y],!0),a.coercePosition(e,b,i,_,y,.25),e[y]=m(e[y]),t[y]=A}}\"path\"===c?i(\"path\"):n.noneOrAll(t,e,[\"x0\",\"x1\",\"y0\",\"y1\"])}}e.exports=function(t,e){i(t,e,{name:\"shapes\",handleItemDefaults:l})}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../../plots/cartesian/axes\":798,\"./attributes\":692,\"./helpers\":703}],696:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"./draw_newshape/helpers\").readPaths,s=t(\"./draw_newshape/display_outlines\"),l=t(\"../../plots/cartesian/handle_outline\").clearOutlineControllers,c=t(\"../color\"),u=t(\"../drawing\"),h=t(\"../../plot_api/plot_template\").arrayEditor,f=t(\"../dragelement\"),p=t(\"../../lib/setcursor\"),d=t(\"./constants\"),g=t(\"./helpers\");function m(t){var e=t._fullLayout;for(var r in e._shapeUpperLayer.selectAll(\"path\").remove(),e._shapeLowerLayer.selectAll(\"path\").remove(),e._plots){var n=e._plots[r].shapelayer;n&&n.selectAll(\"path\").remove()}for(var a=0;a<e.shapes.length;a++)e.shapes[a].visible&&x(t,a)}function v(t){return!!t._fullLayout._drawing}function y(t){return!t._context.edits.shapePosition}function x(t,e){t._fullLayout._paperdiv.selectAll('.shapelayer [data-index=\"'+e+'\"]').remove();var r=g.makeOptionsAndPlotinfo(t,e),l=r.options,x=r.plotinfo;if(l._input&&!1!==l.visible)if(\"below\"!==l.layer)k(t._fullLayout._shapeUpperLayer);else if(\"paper\"===l.xref||\"paper\"===l.yref)k(t._fullLayout._shapeLowerLayer);else{if(x._hadPlotinfo)k((x.mainplotinfo||x).shapelayer);else k(t._fullLayout._shapeLowerLayer)}function k(r){var k=_(t,l),M={\"data-index\":e,\"fill-rule\":l.fillrule,d:k},A=l.opacity,S=l.fillcolor,E=l.line.width?l.line.color:\"rgba(0,0,0,0)\",C=l.line.width,L=l.line.dash;C||!0!==l.editable||(C=5,L=\"solid\");var P=\"Z\"!==k[k.length-1],I=y(t)&&l.editable&&t._fullLayout._activeShapeIndex===e;I&&(S=P?\"rgba(0,0,0,0)\":t._fullLayout.activeshape.fillcolor,A=t._fullLayout.activeshape.opacity);var z,O=r.append(\"path\").attr(M).style(\"opacity\",A).call(c.stroke,E).call(c.fill,S).call(u.dashLine,L,C);if(b(O,t,l),(I||t._context.edits.shapePosition)&&(z=h(t.layout,\"shapes\",l)),I){O.style({cursor:\"move\"});var D={element:O.node(),plotinfo:x,gd:t,editHelpers:z,isActiveShape:!0},R=o(k,t);s(R,O,D)}else t._context.edits.shapePosition?function(t,e,r,o,s,l){var c,h,m,y,x,T,k,M,A,S,E,C,L,P,I,z,O=\"pixel\"===r.xsizemode,D=\"pixel\"===r.ysizemode,R=\"line\"===r.type,F=\"path\"===r.type,B=l.modifyItem,N=i.getFromId(t,r.xref),j=i.getFromId(t,r.yref),U=g.getDataToPixel(t,N),V=g.getDataToPixel(t,j,!0),q=g.getPixelToData(t,N),H=g.getPixelToData(t,j,!0),G=R?function(){var t=Math.max(r.line.width,10),n=s.append(\"g\").attr(\"data-index\",o);n.append(\"path\").attr(\"d\",e.attr(\"d\")).style({cursor:\"move\",\"stroke-width\":t,\"stroke-opacity\":\"0\"});var a={\"fill-opacity\":\"0\"},i=Math.max(t/2,10);return n.append(\"circle\").attr({\"data-line-point\":\"start-point\",cx:O?U(r.xanchor)+r.x0:U(r.x0),cy:D?V(r.yanchor)-r.y0:V(r.y0),r:i}).style(a).classed(\"cursor-grab\",!0),n.append(\"circle\").attr({\"data-line-point\":\"end-point\",cx:O?U(r.xanchor)+r.x1:U(r.x1),cy:D?V(r.yanchor)-r.y1:V(r.y1),r:i}).style(a).classed(\"cursor-grab\",!0),n}():e,Y={element:G.node(),gd:t,prepFn:function(n){if(v(t))return;O&&(x=U(r.xanchor));D&&(T=V(r.yanchor));\"path\"===r.type?I=r.path:(c=O?r.x0:U(r.x0),h=D?r.y0:V(r.y0),m=O?r.x1:U(r.x1),y=D?r.y1:V(r.y1));c<m?(A=c,L=\"x0\",S=m,P=\"x1\"):(A=m,L=\"x1\",S=c,P=\"x0\");!D&&h<y||D&&h>y?(k=h,E=\"y0\",M=y,C=\"y1\"):(k=y,E=\"y1\",M=h,C=\"y0\");W(n),J(s,r),function(t,e,r){var n=e.xref,a=e.yref,o=i.getFromId(r,n),s=i.getFromId(r,a),l=\"\";\"paper\"===n||o.autorange||(l+=n);\"paper\"===a||s.autorange||(l+=a);u.setClipUrl(t,l?\"clip\"+r._fullLayout._uid+l:null,r)}(e,r,t),Y.moveFn=\"move\"===z?Z:X,Y.altKey=n.altKey},doneFn:function(){if(v(t))return;p(e),K(s),b(e,t,r),n.call(\"_guiRelayout\",t,l.getUpdateObj())},clickFn:function(){if(v(t))return;K(s)}};function W(r){if(v(t))z=null;else if(R)z=\"path\"===r.target.tagName?\"move\":\"start-point\"===r.target.attributes[\"data-line-point\"].value?\"resize-over-start-point\":\"resize-over-end-point\";else{var n=Y.element.getBoundingClientRect(),a=n.right-n.left,i=n.bottom-n.top,o=r.clientX-n.left,s=r.clientY-n.top,l=!F&&a>10&&i>10&&!r.shiftKey?f.getCursor(o/a,1-s/i):\"move\";p(e,l),z=l.split(\"-\")[0]}}function Z(n,a){if(\"path\"===r.type){var i=function(t){return t},o=i,l=i;O?B(\"xanchor\",r.xanchor=q(x+n)):(o=function(t){return q(U(t)+n)},N&&\"date\"===N.type&&(o=g.encodeDate(o))),D?B(\"yanchor\",r.yanchor=H(T+a)):(l=function(t){return H(V(t)+a)},j&&\"date\"===j.type&&(l=g.encodeDate(l))),B(\"path\",r.path=w(I,o,l))}else O?B(\"xanchor\",r.xanchor=q(x+n)):(B(\"x0\",r.x0=q(c+n)),B(\"x1\",r.x1=q(m+n))),D?B(\"yanchor\",r.yanchor=H(T+a)):(B(\"y0\",r.y0=H(h+a)),B(\"y1\",r.y1=H(y+a)));e.attr(\"d\",_(t,r)),J(s,r)}function X(n,a){if(F){var i=function(t){return t},o=i,l=i;O?B(\"xanchor\",r.xanchor=q(x+n)):(o=function(t){return q(U(t)+n)},N&&\"date\"===N.type&&(o=g.encodeDate(o))),D?B(\"yanchor\",r.yanchor=H(T+a)):(l=function(t){return H(V(t)+a)},j&&\"date\"===j.type&&(l=g.encodeDate(l))),B(\"path\",r.path=w(I,o,l))}else if(R){if(\"resize-over-start-point\"===z){var u=c+n,f=D?h-a:h+a;B(\"x0\",r.x0=O?u:q(u)),B(\"y0\",r.y0=D?f:H(f))}else if(\"resize-over-end-point\"===z){var p=m+n,d=D?y-a:y+a;B(\"x1\",r.x1=O?p:q(p)),B(\"y1\",r.y1=D?d:H(d))}}else{var v=function(t){return-1!==z.indexOf(t)},b=v(\"n\"),G=v(\"s\"),Y=v(\"w\"),W=v(\"e\"),Z=b?k+a:k,X=G?M+a:M,K=Y?A+n:A,Q=W?S+n:S;D&&(b&&(Z=k-a),G&&(X=M-a)),(!D&&X-Z>10||D&&Z-X>10)&&(B(E,r[E]=D?Z:H(Z)),B(C,r[C]=D?X:H(X))),Q-K>10&&(B(L,r[L]=O?K:q(K)),B(P,r[P]=O?Q:q(Q)))}e.attr(\"d\",_(t,r)),J(s,r)}function J(t,e){(O||D)&&function(){var r=\"path\"!==e.type,n=t.selectAll(\".visual-cue\").data([0]);n.enter().append(\"path\").attr({fill:\"#fff\",\"fill-rule\":\"evenodd\",stroke:\"#000\",\"stroke-width\":1}).classed(\"visual-cue\",!0);var i=U(O?e.xanchor:a.midRange(r?[e.x0,e.x1]:g.extractPathCoords(e.path,d.paramIsX))),o=V(D?e.yanchor:a.midRange(r?[e.y0,e.y1]:g.extractPathCoords(e.path,d.paramIsY)));if(i=g.roundPositionForSharpStrokeRendering(i,1),o=g.roundPositionForSharpStrokeRendering(o,1),O&&D){var s=\"M\"+(i-1-1)+\",\"+(o-1-1)+\"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z\";n.attr(\"d\",s)}else if(O){var l=\"M\"+(i-1-1)+\",\"+(o-9-1)+\"v18 h2 v-18 Z\";n.attr(\"d\",l)}else{var c=\"M\"+(i-9-1)+\",\"+(o-1-1)+\"h18 v2 h-18 Z\";n.attr(\"d\",c)}}()}function K(t){t.selectAll(\".visual-cue\").remove()}f.init(Y),G.node().onmousemove=W}(t,O,l,e,r,z):!0===l.editable&&O.style(\"pointer-events\",P||c.opacity(S)*A<=.5?\"stroke\":\"all\");O.node().addEventListener(\"click\",(function(){return function(t,e){if(!y(t))return;var r=+e.node().getAttribute(\"data-index\");if(r>=0){if(r===t._fullLayout._activeShapeIndex)return void T(t);t._fullLayout._activeShapeIndex=r,t._fullLayout._deactivateShape=T,m(t)}}(t,O)}))}}function b(t,e,r){var n=(r.xref+r.yref).replace(/paper/g,\"\");u.setClipUrl(t,n?\"clip\"+e._fullLayout._uid+n:null,e)}function _(t,e){var r,n,o,s,l,c,u,h,f=e.type,p=i.getFromId(t,e.xref),m=i.getFromId(t,e.yref),v=t._fullLayout._size;if(p?(r=g.shapePositionToRange(p),n=function(t){return p._offset+p.r2p(r(t,!0))}):n=function(t){return v.l+v.w*t},m?(o=g.shapePositionToRange(m),s=function(t){return m._offset+m.r2p(o(t,!0))}):s=function(t){return v.t+v.h*(1-t)},\"path\"===f)return p&&\"date\"===p.type&&(n=g.decodeDate(n)),m&&\"date\"===m.type&&(s=g.decodeDate(s)),function(t,e,r){var n=t.path,i=t.xsizemode,o=t.ysizemode,s=t.xanchor,l=t.yanchor;return n.replace(d.segmentRE,(function(t){var n=0,c=t.charAt(0),u=d.paramIsX[c],h=d.paramIsY[c],f=d.numParams[c],p=t.substr(1).replace(d.paramRE,(function(t){return u[n]?t=\"pixel\"===i?e(s)+Number(t):e(t):h[n]&&(t=\"pixel\"===o?r(l)-Number(t):r(t)),++n>f&&(t=\"X\"),t}));return n>f&&(p=p.replace(/[\\s,]*X.*/,\"\"),a.log(\"Ignoring extra params in segment \"+t)),c+p}))}(e,n,s);if(\"pixel\"===e.xsizemode){var y=n(e.xanchor);l=y+e.x0,c=y+e.x1}else l=n(e.x0),c=n(e.x1);if(\"pixel\"===e.ysizemode){var x=s(e.yanchor);u=x-e.y0,h=x-e.y1}else u=s(e.y0),h=s(e.y1);if(\"line\"===f)return\"M\"+l+\",\"+u+\"L\"+c+\",\"+h;if(\"rect\"===f)return\"M\"+l+\",\"+u+\"H\"+c+\"V\"+h+\"H\"+l+\"Z\";var b=(l+c)/2,_=(u+h)/2,w=Math.abs(b-l),T=Math.abs(_-u),k=\"A\"+w+\",\"+T,M=b+w+\",\"+_;return\"M\"+M+k+\" 0 1,1 \"+(b+\",\"+(_-T))+k+\" 0 0,1 \"+M+\"Z\"}function w(t,e,r){return t.replace(d.segmentRE,(function(t){var n=0,a=t.charAt(0),i=d.paramIsX[a],o=d.paramIsY[a],s=d.numParams[a];return a+t.substr(1).replace(d.paramRE,(function(t){return n>=s||(i[n]?t=e(t):o[n]&&(t=r(t)),n++),t}))}))}function T(t){y(t)&&(t._fullLayout._activeShapeIndex>=0&&(l(t),delete t._fullLayout._activeShapeIndex,m(t)))}e.exports={draw:m,drawOne:x,eraseActiveShape:function(t){if(!y(t))return;l(t);var e=t._fullLayout._activeShapeIndex,r=(t.layout||{}).shapes||[];if(e<r.length){for(var a=[],i=0;i<r.length;i++)i!==e&&a.push(r[i]);delete t._fullLayout._activeShapeIndex,n.call(\"_guiRelayout\",t,{shapes:a})}}}},{\"../../lib\":749,\"../../lib/setcursor\":769,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/handle_outline\":808,\"../../registry\":881,\"../color\":615,\"../dragelement\":634,\"../drawing\":637,\"./constants\":694,\"./draw_newshape/display_outlines\":700,\"./draw_newshape/helpers\":701,\"./helpers\":703}],697:[function(t,e,r){\"use strict\";var n=t(\"../../drawing/attributes\").dash,a=t(\"../../../lib/extend\").extendFlat;e.exports={newshape:{line:{color:{valType:\"color\",editType:\"none\"},width:{valType:\"number\",min:0,dflt:4,editType:\"none\"},dash:a({},n,{dflt:\"solid\",editType:\"none\"}),editType:\"none\"},fillcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"none\"},fillrule:{valType:\"enumerated\",values:[\"evenodd\",\"nonzero\"],dflt:\"evenodd\",editType:\"none\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"none\"},layer:{valType:\"enumerated\",values:[\"below\",\"above\"],dflt:\"above\",editType:\"none\"},drawdirection:{valType:\"enumerated\",values:[\"ortho\",\"horizontal\",\"vertical\",\"diagonal\"],dflt:\"diagonal\",editType:\"none\"},editType:\"none\"},activeshape:{fillcolor:{valType:\"color\",dflt:\"rgb(255,0,255)\",editType:\"none\"},opacity:{valType:\"number\",min:0,max:1,dflt:.5,editType:\"none\"},editType:\"none\"}}},{\"../../../lib/extend\":739,\"../../drawing/attributes\":636}],698:[function(t,e,r){\"use strict\";e.exports={CIRCLE_SIDES:32,i000:0,i090:8,i180:16,i270:24,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}},{}],699:[function(t,e,r){\"use strict\";var n=t(\"../../color\");e.exports=function(t,e,r){if(r(\"newshape.drawdirection\"),r(\"newshape.layer\"),r(\"newshape.fillcolor\"),r(\"newshape.fillrule\"),r(\"newshape.opacity\"),r(\"newshape.line.width\")){var a=(t||{}).plot_bgcolor||\"#FFF\";r(\"newshape.line.color\",n.contrast(a)),r(\"newshape.line.dash\")}r(\"activeshape.fillcolor\"),r(\"activeshape.opacity\")}},{\"../../color\":615}],700:[function(t,e,r){\"use strict\";var n=t(\"../../dragelement\"),a=t(\"../../dragelement/helpers\").drawMode,i=t(\"../../../registry\"),o=t(\"./constants\"),s=o.i000,l=o.i090,c=o.i180,u=o.i270,h=t(\"../../../plots/cartesian/handle_outline\").clearOutlineControllers,f=t(\"./helpers\"),p=f.pointsShapeRectangle,d=f.pointsShapeEllipse,g=f.writePaths,m=t(\"./newshapes\");e.exports=function t(e,r,o,f){f||(f=0);var v=o.gd;function y(){t(e,r,o,f++),d(e[0])&&x({redrawing:!0})}function x(t){o.isActiveShape=!1;var e=m(r,o);Object.keys(e).length&&i.call((t||{}).redrawing?\"relayout\":\"_guiRelayout\",v,e)}var b,_,w,T,k,M=o.isActiveShape,A=v._fullLayout._zoomlayer,S=o.dragmode;(a(S)?v._fullLayout._drawing=!0:v._fullLayout._activeShapeIndex>=0&&h(v),r.attr(\"d\",g(e)),M&&!f)&&(k=function(t,e){for(var r=0;r<e.length;r++){var n=e[r];t[r]=[];for(var a=0;a<n.length;a++){t[r][a]=[];for(var i=0;i<n[a].length;i++)t[r][a][i]=n[a][i]}}return t}([],e),function(t){b=[];for(var r=0;r<e.length;r++){var a=e[r],i=!p(a)&&d(a);b[r]=[];for(var o=0;o<a.length;o++)if(\"Z\"!==a[o][0]&&(!i||o===s||o===l||o===c||o===u)){var h=a[o][1],f=a[o][2],g=t.append(\"circle\").classed(\"cursor-grab\",!0).attr(\"data-i\",r).attr(\"data-j\",o).attr(\"cx\",h).attr(\"cy\",f).attr(\"r\",4).style({\"mix-blend-mode\":\"luminosity\",fill:\"black\",stroke:\"white\",\"stroke-width\":1});b[r][o]={element:g.node(),gd:v,prepFn:E,doneFn:L,clickFn:P},n.init(b[r][o])}}}(A.append(\"g\").attr(\"class\",\"outline-controllers\")),function(){if(_=[],!e.length)return;_[0]={element:r[0][0],gd:v,prepFn:z,doneFn:O},n.init(_[0])}());function E(t){w=+t.srcElement.getAttribute(\"data-i\"),T=+t.srcElement.getAttribute(\"data-j\"),b[w][T].moveFn=C}function C(t,r){if(e.length){var n=k[w][T][1],a=k[w][T][2],i=e[w],o=i.length;if(p(i)){for(var s=0;s<o;s++)if(s!==T){var l=i[s];l[1]===i[T][1]&&(l[1]=n+t),l[2]===i[T][2]&&(l[2]=a+r)}if(i[T][1]=n+t,i[T][2]=a+r,!p(i))for(var c=0;c<o;c++)for(var u=0;u<i[c].length;u++)i[c][u]=k[w][c][u]}else i[T][1]=n+t,i[T][2]=a+r;y()}}function L(){x()}function P(t,r){if(2===t){w=+r.srcElement.getAttribute(\"data-i\"),T=+r.srcElement.getAttribute(\"data-j\");var n=e[w];p(n)||d(n)||function(){if(e.length&&e[w]&&e[w].length){for(var t=[],r=0;r<e[w].length;r++)r!==T&&t.push(e[w][r]);t.length>1&&(2!==t.length||\"Z\"!==t[1][0])&&(0===T&&(t[0][0]=\"M\"),e[w]=t,y(),x())}}()}}function I(t,r){!function(t,r){if(e.length)for(var n=0;n<e.length;n++)for(var a=0;a<e[n].length;a++)for(var i=0;i+2<e[n][a].length;i+=2)e[n][a][i+1]=k[n][a][i+1]+t,e[n][a][i+2]=k[n][a][i+2]+r}(t,r),y()}function z(t){(w=+t.srcElement.getAttribute(\"data-i\"))||(w=0),_[w].moveFn=I}function O(){x()}}},{\"../../../plots/cartesian/handle_outline\":808,\"../../../registry\":881,\"../../dragelement\":634,\"../../dragelement/helpers\":633,\"./constants\":698,\"./helpers\":701,\"./newshapes\":702}],701:[function(t,e,r){\"use strict\";var n=t(\"parse-svg-path\"),a=t(\"./constants\"),i=a.CIRCLE_SIDES,o=a.SQRT2,s=t(\"../../../plots/cartesian/helpers\"),l=s.p2r,c=s.r2p,u=[0,3,4,5,6,1,2],h=[0,3,4,1,2];function f(t,e){return Math.abs(t-e)<=1e-6}function p(t,e){var r=e[1]-t[1],n=e[2]-t[2];return Math.sqrt(r*r+n*n)}r.writePaths=function(t){var e=t.length;if(!e)return\"M0,0Z\";for(var r=\"\",n=0;n<e;n++)for(var a=t[n].length,i=0;i<a;i++){var o=t[n][i][0];if(\"Z\"===o)r+=\"Z\";else for(var s=t[n][i].length,l=0;l<s;l++){var c=l;\"Q\"===o||\"S\"===o?c=h[l]:\"C\"===o&&(c=u[l]),r+=t[n][i][c],l>0&&l<s-1&&(r+=\",\")}}return r},r.readPaths=function(t,e,r,a){var o,s,u,h=n(t),f=[],p=-1,d=0,g=0,m=function(){s=d,u=g};m();for(var v=0;v<h.length;v++){var y,x,b,_,w=[],T=h[v][0],k=T;switch(T){case\"M\":p++,f[p]=[],d=+h[v][1],g=+h[v][2],w.push([k,d,g]),m();break;case\"Q\":case\"S\":y=+h[v][1],b=+h[v][2],d=+h[v][3],g=+h[v][4],w.push([k,d,g,y,b]);break;case\"C\":y=+h[v][1],b=+h[v][2],x=+h[v][3],_=+h[v][4],d=+h[v][5],g=+h[v][6],w.push([k,d,g,y,b,x,_]);break;case\"T\":case\"L\":d=+h[v][1],g=+h[v][2],w.push([k,d,g]);break;case\"H\":k=\"L\",d=+h[v][1],w.push([k,d,g]);break;case\"V\":k=\"L\",g=+h[v][1],w.push([k,d,g]);break;case\"A\":k=\"L\";var M=+h[v][1],A=+h[v][2];+h[v][4]||(M=-M,A=-A);var S=d-M,E=g;for(o=1;o<=i/2;o++){var C=2*Math.PI*o/i;w.push([k,S+M*Math.cos(C),E+A*Math.sin(C)])}break;case\"Z\":d===s&&g===u||(d=s,g=u,w.push([k,d,g]))}for(var L=(r||{}).domain,P=e._fullLayout._size,I=r&&\"pixel\"===r.xsizemode,z=r&&\"pixel\"===r.ysizemode,O=!1===a,D=0;D<w.length;D++){for(o=0;o+2<7;o+=2){var R=w[D][o+1],F=w[D][o+2];void 0!==R&&void 0!==F&&(d=R,g=F,r&&(r.xaxis&&r.xaxis.p2r?(O&&(R-=r.xaxis._offset),R=I?c(r.xaxis,r.xanchor)+R:l(r.xaxis,R)):(O&&(R-=P.l),L?R=L.x[0]+R/P.w:R/=P.w),r.yaxis&&r.yaxis.p2r?(O&&(F-=r.yaxis._offset),F=z?c(r.yaxis,r.yanchor)-F:l(r.yaxis,F)):(O&&(F-=P.t),F=L?L.y[1]-F/P.h:1-F/P.h)),w[D][o+1]=R,w[D][o+2]=F)}f[p].push(w[D].slice())}}return f},r.pointsShapeRectangle=function(t){if(5!==t.length)return!1;for(var e=1;e<3;e++){if(!f(t[0][e]-t[1][e],t[3][e]-t[2][e]))return!1;if(!f(t[0][e]-t[3][e],t[1][e]-t[2][e]))return!1}return!(!f(t[0][1],t[1][1])&&!f(t[0][1],t[3][1]))&&!!(p(t[0],t[1])*p(t[0],t[3]))},r.pointsShapeEllipse=function(t){var e=t.length;if(e!==i+1)return!1;e=i;for(var r=0;r<e;r++){var n=(2*e-r)%e,a=(e/2+n)%e,o=(e/2+r)%e;if(!f(p(t[r],t[o]),p(t[n],t[a])))return!1}return!0},r.handleEllipse=function(t,e,n){if(!t)return[e,n];var a=r.ellipseOver({x0:e[0],y0:e[1],x1:n[0],y1:n[1]}),s=(a.x1+a.x0)/2,l=(a.y1+a.y0)/2,c=(a.x1-a.x0)/2,u=(a.y1-a.y0)/2;c||(c=u/=o),u||(u=c/=o);for(var h=[],f=0;f<i;f++){var p=2*f*Math.PI/i;h.push([s+c*Math.cos(p),l+u*Math.sin(p)])}return h},r.ellipseOver=function(t){var e=t.x0,r=t.y0,n=t.x1,a=t.y1,i=n-e,s=a-r,l=((e-=i)+n)/2,c=((r-=s)+a)/2;return{x0:l-(i*=o),y0:c-(s*=o),x1:l+i,y1:c+s}}},{\"../../../plots/cartesian/helpers\":809,\"./constants\":698,\"parse-svg-path\":479}],702:[function(t,e,r){\"use strict\";var n=t(\"../../dragelement/helpers\"),a=n.drawMode,i=n.openMode,o=t(\"./constants\"),s=o.i000,l=o.i090,c=o.i180,u=o.i270,h=o.cos45,f=o.sin45,p=t(\"../../../plots/cartesian/helpers\"),d=p.p2r,g=p.r2p,m=t(\"../../../plots/cartesian/handle_outline\").clearSelect,v=t(\"./helpers\"),y=v.readPaths,x=v.writePaths,b=v.ellipseOver;e.exports=function(t,e){if(t.length){var r=t[0][0];if(r){var n=r.getAttribute(\"d\"),o=e.gd,p=o._fullLayout.newshape,v=e.plotinfo,_=v.xaxis,w=v.yaxis,T=!!v.domain||!v.xaxis,k=!!v.domain||!v.yaxis,M=e.isActiveShape,A=e.dragmode,S=(o.layout||{}).shapes||[];if(!a(A)&&void 0!==M){var E=o._fullLayout._activeShapeIndex;if(E<S.length)switch(o._fullLayout.shapes[E].type){case\"rect\":A=\"drawrect\";break;case\"circle\":A=\"drawcircle\";break;case\"line\":A=\"drawline\";break;case\"path\":var C=S[E].path||\"\";A=\"Z\"===C[C.length-1]?\"drawclosedpath\":\"drawopenpath\"}}var L,P=i(A),I=y(n,o,v,M),z={editable:!0,xref:T?\"paper\":_._id,yref:k?\"paper\":w._id,layer:p.layer,opacity:p.opacity,line:{color:p.line.color,width:p.line.width,dash:p.line.dash}};if(P||(z.fillcolor=p.fillcolor,z.fillrule=p.fillrule),1===I.length&&(L=I[0]),L&&\"drawrect\"===A)z.type=\"rect\",z.x0=L[0][1],z.y0=L[0][2],z.x1=L[2][1],z.y1=L[2][2];else if(L&&\"drawline\"===A)z.type=\"line\",z.x0=L[0][1],z.y0=L[0][2],z.x1=L[1][1],z.y1=L[1][2];else if(L&&\"drawcircle\"===A){z.type=\"circle\";var O=L[s][1],D=L[l][1],R=L[c][1],F=L[u][1],B=L[s][2],N=L[l][2],j=L[c][2],U=L[u][2],V=v.xaxis&&(\"date\"===v.xaxis.type||\"log\"===v.xaxis.type),q=v.yaxis&&(\"date\"===v.yaxis.type||\"log\"===v.yaxis.type);V&&(O=g(v.xaxis,O),D=g(v.xaxis,D),R=g(v.xaxis,R),F=g(v.xaxis,F)),q&&(B=g(v.yaxis,B),N=g(v.yaxis,N),j=g(v.yaxis,j),U=g(v.yaxis,U));var H=(D+F)/2,G=(B+j)/2,Y=b({x0:H,y0:G,x1:H+(F-D+R-O)/2*h,y1:G+(U-N+j-B)/2*f});V&&(Y.x0=d(v.xaxis,Y.x0),Y.x1=d(v.xaxis,Y.x1)),q&&(Y.y0=d(v.yaxis,Y.y0),Y.y1=d(v.yaxis,Y.y1)),z.x0=Y.x0,z.y0=Y.y0,z.x1=Y.x1,z.y1=Y.y1}else z.type=\"path\",_&&w&&function(t,e,r){var n=\"date\"===e.type,a=\"date\"===r.type;if(!n&&!a)return t;for(var i=0;i<t.length;i++)for(var o=0;o<t[i].length;o++)for(var s=0;s+2<t[i][o].length;s+=2)n&&(t[i][o][s+1]=t[i][o][s+1].replace(\" \",\"_\")),a&&(t[i][o][s+2]=t[i][o][s+2].replace(\" \",\"_\"))}(I,_,w),z.path=x(I),L=null;m(o);for(var W=e.editHelpers,Z=(W||{}).modifyItem,X=[],J=0;J<S.length;J++){var K=o._fullLayout.shapes[J];if(X[J]=K._input,void 0!==M&&J===o._fullLayout._activeShapeIndex){var Q=z;switch(K.type){case\"line\":case\"rect\":case\"circle\":Z(\"x0\",Q.x0),Z(\"x1\",Q.x1),Z(\"y0\",Q.y0),Z(\"y1\",Q.y1);break;case\"path\":Z(\"path\",Q.path)}}}return void 0===M?(X.push(z),X):W?W.getUpdateObj():{}}}}},{\"../../../plots/cartesian/handle_outline\":808,\"../../../plots/cartesian/helpers\":809,\"../../dragelement/helpers\":633,\"./constants\":698,\"./helpers\":701}],703:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"../../lib\");r.rangeToShapePosition=function(t){return\"log\"===t.type?t.r2d:function(t){return t}},r.shapePositionToRange=function(t){return\"log\"===t.type?t.d2r:function(t){return t}},r.decodeDate=function(t){return function(e){return e.replace&&(e=e.replace(\"_\",\" \")),t(e)}},r.encodeDate=function(t){return function(e){return t(e).replace(\" \",\"_\")}},r.extractPathCoords=function(t,e){var r=[];return t.match(n.segmentRE).forEach((function(t){var i=e[t.charAt(0)].drawn;if(void 0!==i){var o=t.substr(1).match(n.paramRE);!o||o.length<i||r.push(a.cleanNumber(o[i]))}})),r},r.getDataToPixel=function(t,e,n){var a,i=t._fullLayout._size;if(e){var o=r.shapePositionToRange(e);a=function(t){return e._offset+e.r2p(o(t,!0))},\"date\"===e.type&&(a=r.decodeDate(a))}else a=n?function(t){return i.t+i.h*(1-t)}:function(t){return i.l+i.w*t};return a},r.getPixelToData=function(t,e,n){var a,i=t._fullLayout._size;if(e){var o=r.rangeToShapePosition(e);a=function(t){return o(e.p2r(t-e._offset))}}else a=n?function(t){return 1-(t-i.t)/i.h}:function(t){return(t-i.l)/i.w};return a},r.roundPositionForSharpStrokeRendering=function(t,e){var r=1===Math.round(e%2),n=Math.round(t);return r?n+.5:n},r.makeOptionsAndPlotinfo=function(t,e){var r=t._fullLayout.shapes[e]||{},n=t._fullLayout._plots[r.xref+r.yref];return!!n?n._hadPlotinfo=!0:(n={},r.xref&&\"paper\"!==r.xref&&(n.xaxis=t._fullLayout[r.xref+\"axis\"]),r.yref&&\"paper\"!==r.yref&&(n.yaxis=t._fullLayout[r.yref+\"axis\"])),n.xsizemode=r.xsizemode,n.ysizemode=r.ysizemode,n.xanchor=r.xanchor,n.yanchor=r.yanchor,{options:r,plotinfo:n}}},{\"../../lib\":749,\"./constants\":694}],704:[function(t,e,r){\"use strict\";var n=t(\"./draw\");e.exports={moduleType:\"component\",name:\"shapes\",layoutAttributes:t(\"./attributes\"),supplyLayoutDefaults:t(\"./defaults\"),supplyDrawNewShapeDefaults:t(\"./draw_newshape/defaults\"),includeBasePlot:t(\"../../plots/cartesian/include_components\")(\"shapes\"),calcAutorange:t(\"./calc_autorange\"),draw:n.draw,drawOne:n.drawOne}},{\"../../plots/cartesian/include_components\":810,\"./attributes\":692,\"./calc_autorange\":693,\"./defaults\":695,\"./draw\":696,\"./draw_newshape/defaults\":699}],705:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../../plots/pad_attributes\"),i=t(\"../../lib/extend\").extendDeepAll,o=t(\"../../plot_api/edit_types\").overrideAll,s=t(\"../../plots/animation_attributes\"),l=t(\"../../plot_api/plot_template\").templatedArray,c=t(\"./constants\"),u=l(\"step\",{visible:{valType:\"boolean\",dflt:!0},method:{valType:\"enumerated\",values:[\"restyle\",\"relayout\",\"animate\",\"update\",\"skip\"],dflt:\"restyle\"},args:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},label:{valType:\"string\"},value:{valType:\"string\"},execute:{valType:\"boolean\",dflt:!0}});e.exports=o(l(\"slider\",{visible:{valType:\"boolean\",dflt:!0},active:{valType:\"number\",min:0,dflt:0},steps:u,lenmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"fraction\"},len:{valType:\"number\",min:0,dflt:1},x:{valType:\"number\",min:-2,max:3,dflt:0},pad:i(a({editType:\"arraydraw\"}),{},{t:{dflt:20}}),xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"left\"},y:{valType:\"number\",min:-2,max:3,dflt:0},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"top\"},transition:{duration:{valType:\"number\",min:0,dflt:150},easing:{valType:\"enumerated\",values:s.transition.easing.values,dflt:\"cubic-in-out\"}},currentvalue:{visible:{valType:\"boolean\",dflt:!0},xanchor:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"left\"},offset:{valType:\"number\",dflt:10},prefix:{valType:\"string\"},suffix:{valType:\"string\"},font:n({})},font:n({}),activebgcolor:{valType:\"color\",dflt:c.gripBgActiveColor},bgcolor:{valType:\"color\",dflt:c.railBgColor},bordercolor:{valType:\"color\",dflt:c.railBorderColor},borderwidth:{valType:\"number\",min:0,dflt:c.railBorderWidth},ticklen:{valType:\"number\",min:0,dflt:c.tickLength},tickcolor:{valType:\"color\",dflt:c.tickColor},tickwidth:{valType:\"number\",min:0,dflt:1},minorticklen:{valType:\"number\",min:0,dflt:c.minorTickLength}}),\"arraydraw\",\"from-root\")},{\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plot_api/plot_template\":787,\"../../plots/animation_attributes\":792,\"../../plots/font_attributes\":826,\"../../plots/pad_attributes\":860,\"./constants\":706}],706:[function(t,e,r){\"use strict\";e.exports={name:\"sliders\",containerClassName:\"slider-container\",groupClassName:\"slider-group\",inputAreaClass:\"slider-input-area\",railRectClass:\"slider-rail-rect\",railTouchRectClass:\"slider-rail-touch-rect\",gripRectClass:\"slider-grip-rect\",tickRectClass:\"slider-tick-rect\",inputProxyClass:\"slider-input-proxy\",labelsClass:\"slider-labels\",labelGroupClass:\"slider-label-group\",labelClass:\"slider-label\",currentValueClass:\"slider-current-value\",railHeight:5,menuIndexAttrName:\"slider-active-index\",autoMarginIdRoot:\"slider-\",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:\"#bec8d9\",railBgColor:\"#f8fafc\",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:\"#bec8d9\",gripBgColor:\"#f6f8fa\",gripBgActiveColor:\"#dbdde0\",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:\"#333\",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:\"#333\",minorTickLength:4,currentValuePadding:8,currentValueInset:0}},{}],707:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/array_container_defaults\"),i=t(\"./attributes\"),o=t(\"./constants\").name,s=i.steps;function l(t,e,r){function o(r,a){return n.coerce(t,e,i,r,a)}for(var s=a(t,e,{name:\"steps\",handleItemDefaults:c}),l=0,u=0;u<s.length;u++)s[u].visible&&l++;if(l<2?e.visible=!1:o(\"visible\")){e._stepCount=l;var h=e._visibleSteps=n.filterVisible(s);(s[o(\"active\")]||{}).visible||(e.active=h[0]._index),o(\"x\"),o(\"y\"),n.noneOrAll(t,e,[\"x\",\"y\"]),o(\"xanchor\"),o(\"yanchor\"),o(\"len\"),o(\"lenmode\"),o(\"pad.t\"),o(\"pad.r\"),o(\"pad.b\"),o(\"pad.l\"),n.coerceFont(o,\"font\",r.font),o(\"currentvalue.visible\")&&(o(\"currentvalue.xanchor\"),o(\"currentvalue.prefix\"),o(\"currentvalue.suffix\"),o(\"currentvalue.offset\"),n.coerceFont(o,\"currentvalue.font\",e.font)),o(\"transition.duration\"),o(\"transition.easing\"),o(\"bgcolor\"),o(\"activebgcolor\"),o(\"bordercolor\"),o(\"borderwidth\"),o(\"ticklen\"),o(\"tickwidth\"),o(\"tickcolor\"),o(\"minorticklen\")}}function c(t,e){function r(r,a){return n.coerce(t,e,s,r,a)}if(\"skip\"===t.method||Array.isArray(t.args)?r(\"visible\"):e.visible=!1){r(\"method\"),r(\"args\");var a=r(\"label\",\"step-\"+e._index);r(\"value\",a),r(\"execute\")}}e.exports=function(t,e){a(t,e,{name:o,handleItemDefaults:l})}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"./attributes\":705,\"./constants\":706}],708:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plots/plots\"),i=t(\"../color\"),o=t(\"../drawing\"),s=t(\"../../lib\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../plot_api/plot_template\").arrayEditor,u=t(\"./constants\"),h=t(\"../../constants/alignment\"),f=h.LINE_SPACING,p=h.FROM_TL,d=h.FROM_BR;function g(t){return u.autoMarginIdRoot+t._index}function m(t){return t._index}function v(t,e){var r=o.tester.selectAll(\"g.\"+u.labelGroupClass).data(e._visibleSteps);r.enter().append(\"g\").classed(u.labelGroupClass,!0);var i=0,c=0;r.each((function(t){var r=b(n.select(this),{step:t},e).node();if(r){var a=o.bBox(r);c=Math.max(c,a.height),i=Math.max(i,a.width)}})),r.remove();var h=e._dims={};h.inputAreaWidth=Math.max(u.railWidth,u.gripHeight);var f=t._fullLayout._size;h.lx=f.l+f.w*e.x,h.ly=f.t+f.h*(1-e.y),\"fraction\"===e.lenmode?h.outerLength=Math.round(f.w*e.len):h.outerLength=e.len,h.inputAreaStart=0,h.inputAreaLength=Math.round(h.outerLength-e.pad.l-e.pad.r);var m=(h.inputAreaLength-2*u.stepInset)/(e._stepCount-1),v=i+u.labelPadding;if(h.labelStride=Math.max(1,Math.ceil(v/m)),h.labelHeight=c,h.currentValueMaxWidth=0,h.currentValueHeight=0,h.currentValueTotalHeight=0,h.currentValueMaxLines=1,e.currentvalue.visible){var x=o.tester.append(\"g\");r.each((function(t){var r=y(x,e,t.label),n=r.node()&&o.bBox(r.node())||{width:0,height:0},a=l.lineCount(r);h.currentValueMaxWidth=Math.max(h.currentValueMaxWidth,Math.ceil(n.width)),h.currentValueHeight=Math.max(h.currentValueHeight,Math.ceil(n.height)),h.currentValueMaxLines=Math.max(h.currentValueMaxLines,a)})),h.currentValueTotalHeight=h.currentValueHeight+e.currentvalue.offset,x.remove()}h.height=h.currentValueTotalHeight+u.tickOffset+e.ticklen+u.labelOffset+h.labelHeight+e.pad.t+e.pad.b;var _=\"left\";s.isRightAnchor(e)&&(h.lx-=h.outerLength,_=\"right\"),s.isCenterAnchor(e)&&(h.lx-=h.outerLength/2,_=\"center\");var w=\"top\";s.isBottomAnchor(e)&&(h.ly-=h.height,w=\"bottom\"),s.isMiddleAnchor(e)&&(h.ly-=h.height/2,w=\"middle\"),h.outerLength=Math.ceil(h.outerLength),h.height=Math.ceil(h.height),h.lx=Math.round(h.lx),h.ly=Math.round(h.ly);var T={y:e.y,b:h.height*d[w],t:h.height*p[w]};\"fraction\"===e.lenmode?(T.l=0,T.xl=e.x-e.len*p[_],T.r=0,T.xr=e.x+e.len*d[_]):(T.x=e.x,T.l=h.outerLength*p[_],T.r=h.outerLength*d[_]),a.autoMargin(t,g(e),T)}function y(t,e,r){if(e.currentvalue.visible){var n,a,i=e._dims;switch(e.currentvalue.xanchor){case\"right\":n=i.inputAreaLength-u.currentValueInset-i.currentValueMaxWidth,a=\"left\";break;case\"center\":n=.5*i.inputAreaLength,a=\"middle\";break;default:n=u.currentValueInset,a=\"left\"}var c=s.ensureSingle(t,\"text\",u.labelClass,(function(t){t.attr({\"text-anchor\":a,\"data-notex\":1})})),h=e.currentvalue.prefix?e.currentvalue.prefix:\"\";if(\"string\"==typeof r)h+=r;else{var p=e.steps[e.active].label,d=e._gd._fullLayout._meta;d&&(p=s.templateString(p,d)),h+=p}e.currentvalue.suffix&&(h+=e.currentvalue.suffix),c.call(o.font,e.currentvalue.font).text(h).call(l.convertToTspans,e._gd);var g=l.lineCount(c),m=(i.currentValueMaxLines+1-g)*e.currentvalue.font.size*f;return l.positionText(c,n,m),c}}function x(t,e,r){s.ensureSingle(t,\"rect\",u.gripRectClass,(function(n){n.call(k,e,t,r).style(\"pointer-events\",\"all\")})).attr({width:u.gripWidth,height:u.gripHeight,rx:u.gripRadius,ry:u.gripRadius}).call(i.stroke,r.bordercolor).call(i.fill,r.bgcolor).style(\"stroke-width\",r.borderwidth+\"px\")}function b(t,e,r){var n=s.ensureSingle(t,\"text\",u.labelClass,(function(t){t.attr({\"text-anchor\":\"middle\",\"data-notex\":1})})),a=e.step.label,i=r._gd._fullLayout._meta;return i&&(a=s.templateString(a,i)),n.call(o.font,r.font).text(a).call(l.convertToTspans,r._gd),n}function _(t,e){var r=s.ensureSingle(t,\"g\",u.labelsClass),a=e._dims,i=r.selectAll(\"g.\"+u.labelGroupClass).data(a.labelSteps);i.enter().append(\"g\").classed(u.labelGroupClass,!0),i.exit().remove(),i.each((function(t){var r=n.select(this);r.call(b,t,e),o.setTranslate(r,S(e,t.fraction),u.tickOffset+e.ticklen+e.font.size*f+u.labelOffset+a.currentValueTotalHeight)}))}function w(t,e,r,n,a){var i=Math.round(n*(r._stepCount-1)),o=r._visibleSteps[i]._index;o!==r.active&&T(t,e,r,o,!0,a)}function T(t,e,r,n,i,o){var s=r.active;r.active=n,c(t.layout,u.name,r).applyUpdate(\"active\",n);var l=r.steps[r.active];e.call(A,r,o),e.call(y,r),t.emit(\"plotly_sliderchange\",{slider:r,step:r.steps[r.active],interaction:i,previousActive:s}),l&&l.method&&i&&(e._nextMethod?(e._nextMethod.step=l,e._nextMethod.doCallback=i,e._nextMethod.doTransition=o):(e._nextMethod={step:l,doCallback:i,doTransition:o},e._nextMethodRaf=window.requestAnimationFrame((function(){var r=e._nextMethod.step;r.method&&(r.execute&&a.executeAPICommand(t,r.method,r.args),e._nextMethod=null,e._nextMethodRaf=null)}))))}function k(t,e,r){var a=r.node(),o=n.select(e);function s(){return r.data()[0]}t.on(\"mousedown\",(function(){var t=s();e.emit(\"plotly_sliderstart\",{slider:t});var l=r.select(\".\"+u.gripRectClass);n.event.stopPropagation(),n.event.preventDefault(),l.call(i.fill,t.activebgcolor);var c=E(t,n.mouse(a)[0]);w(e,r,t,c,!0),t._dragging=!0,o.on(\"mousemove\",(function(){var t=s(),i=E(t,n.mouse(a)[0]);w(e,r,t,i,!1)})),o.on(\"mouseup\",(function(){var t=s();t._dragging=!1,l.call(i.fill,t.bgcolor),o.on(\"mouseup\",null),o.on(\"mousemove\",null),e.emit(\"plotly_sliderend\",{slider:t,step:t.steps[t.active]})}))}))}function M(t,e){var r=t.selectAll(\"rect.\"+u.tickRectClass).data(e._visibleSteps),a=e._dims;r.enter().append(\"rect\").classed(u.tickRectClass,!0),r.exit().remove(),r.attr({width:e.tickwidth+\"px\",\"shape-rendering\":\"crispEdges\"}),r.each((function(t,r){var s=r%a.labelStride==0,l=n.select(this);l.attr({height:s?e.ticklen:e.minorticklen}).call(i.fill,e.tickcolor),o.setTranslate(l,S(e,r/(e._stepCount-1))-.5*e.tickwidth,(s?u.tickOffset:u.minorTickOffset)+a.currentValueTotalHeight)}))}function A(t,e,r){for(var n=t.select(\"rect.\"+u.gripRectClass),a=0,i=0;i<e._stepCount;i++)if(e._visibleSteps[i]._index===e.active){a=i;break}var o=S(e,a/(e._stepCount-1));if(!e._invokingCommand){var s=n;r&&e.transition.duration>0&&(s=s.transition().duration(e.transition.duration).ease(e.transition.easing)),s.attr(\"transform\",\"translate(\"+(o-.5*u.gripWidth)+\",\"+e._dims.currentValueTotalHeight+\")\")}}function S(t,e){var r=t._dims;return r.inputAreaStart+u.stepInset+(r.inputAreaLength-2*u.stepInset)*Math.min(1,Math.max(0,e))}function E(t,e){var r=t._dims;return Math.min(1,Math.max(0,(e-u.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*u.stepInset-2*r.inputAreaStart)))}function C(t,e,r){var n=r._dims,a=s.ensureSingle(t,\"rect\",u.railTouchRectClass,(function(n){n.call(k,e,t,r).style(\"pointer-events\",\"all\")}));a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,u.tickOffset+r.ticklen+n.labelHeight)}).call(i.fill,r.bgcolor).attr(\"opacity\",0),o.setTranslate(a,0,n.currentValueTotalHeight)}function L(t,e){var r=e._dims,n=r.inputAreaLength-2*u.railInset,a=s.ensureSingle(t,\"rect\",u.railRectClass);a.attr({width:n,height:u.railWidth,rx:u.railRadius,ry:u.railRadius,\"shape-rendering\":\"crispEdges\"}).call(i.stroke,e.bordercolor).call(i.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\"),o.setTranslate(a,u.railInset,.5*(r.inputAreaWidth-u.railWidth)+r.currentValueTotalHeight)}e.exports=function(t){var e=t._fullLayout,r=function(t,e){for(var r=t[u.name],n=[],a=0;a<r.length;a++){var i=r[a];i.visible&&(i._gd=e,n.push(i))}return n}(e,t),i=e._infolayer.selectAll(\"g.\"+u.containerClassName).data(r.length>0?[0]:[]);function s(e){e._commandObserver&&(e._commandObserver.remove(),delete e._commandObserver),a.autoMargin(t,g(e))}if(i.enter().append(\"g\").classed(u.containerClassName,!0).style(\"cursor\",\"ew-resize\"),i.exit().each((function(){n.select(this).selectAll(\"g.\"+u.groupClassName).each(s)})).remove(),0!==r.length){var l=i.selectAll(\"g.\"+u.groupClassName).data(r,m);l.enter().append(\"g\").classed(u.groupClassName,!0),l.exit().each(s).remove();for(var c=0;c<r.length;c++){var h=r[c];v(t,h)}l.each((function(e){var r=n.select(this);!function(t){var e=t._dims;e.labelSteps=[];for(var r=t._stepCount,n=0;n<r;n+=e.labelStride)e.labelSteps.push({fraction:n/(r-1),step:t._visibleSteps[n]})}(e),a.manageCommandObserver(t,e,e._visibleSteps,(function(e){var n=r.data()[0];n.active!==e.index&&(n._dragging||T(t,r,n,e.index,!1,!0))})),function(t,e,r){(r.steps[r.active]||{}).visible||(r.active=r._visibleSteps[0]._index);e.call(y,r).call(L,r).call(_,r).call(M,r).call(C,t,r).call(x,t,r);var n=r._dims;o.setTranslate(e,n.lx+r.pad.l,n.ly+r.pad.t),e.call(A,r,!1),e.call(y,r)}(t,n.select(this),e)}))}}},{\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plot_api/plot_template\":787,\"../../plots/plots\":861,\"../color\":615,\"../drawing\":637,\"./constants\":706,d3:169}],709:[function(t,e,r){\"use strict\";var n=t(\"./constants\");e.exports={moduleType:\"component\",name:n.name,layoutAttributes:t(\"./attributes\"),supplyLayoutDefaults:t(\"./defaults\"),draw:t(\"./draw\")}},{\"./attributes\":705,\"./constants\":706,\"./defaults\":707,\"./draw\":708}],710:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../plots/plots\"),o=t(\"../../registry\"),s=t(\"../../lib\"),l=t(\"../drawing\"),c=t(\"../color\"),u=t(\"../../lib/svg_text_utils\"),h=t(\"../../constants/interactions\"),f=t(\"../../constants/alignment\").OPPOSITE_SIDE,p=/ [XY][0-9]* /;e.exports={draw:function(t,e,r){var d,g=r.propContainer,m=r.propName,v=r.placeholder,y=r.traceIndex,x=r.avoid||{},b=r.attributes,_=r.transform,w=r.containerGroup,T=t._fullLayout,k=1,M=!1,A=g.title,S=(A&&A.text?A.text:\"\").trim(),E=A&&A.font?A.font:{},C=E.family,L=E.size,P=E.color;\"title.text\"===m?d=\"titleText\":-1!==m.indexOf(\"axis\")?d=\"axisTitleText\":m.indexOf(!0)&&(d=\"colorbarTitleText\");var I=t._context.edits[d];\"\"===S?k=0:S.replace(p,\" % \")===v.replace(p,\" % \")&&(k=.2,M=!0,I||(S=\"\")),r._meta?S=s.templateString(S,r._meta):T._meta&&(S=s.templateString(S,T._meta));var z=S||I;w||(w=s.ensureSingle(T._infolayer,\"g\",\"g-\"+e));var O=w.selectAll(\"text\").data(z?[0]:[]);if(O.enter().append(\"text\"),O.text(S).attr(\"class\",e),O.exit().remove(),!z)return w;function D(t){s.syncOrAsync([R,F],t)}function R(e){var r;return _?(r=\"\",_.rotate&&(r+=\"rotate(\"+[_.rotate,b.x,b.y]+\")\"),_.offset&&(r+=\"translate(0, \"+_.offset+\")\")):r=null,e.attr(\"transform\",r),e.style({\"font-family\":C,\"font-size\":n.round(L,2)+\"px\",fill:c.rgb(P),opacity:k*c.opacity(P),\"font-weight\":i.fontWeight}).attr(b).call(u.convertToTspans,t),i.previousPromises(t)}function F(t){var e=n.select(t.node().parentNode);if(x&&x.selection&&x.side&&S){e.attr(\"transform\",null);var r=f[x.side],i=\"left\"===x.side||\"top\"===x.side?-1:1,o=a(x.pad)?x.pad:2,c=l.bBox(e.node()),u={left:0,top:0,right:T.width,bottom:T.height},h=x.maxShift||i*(u[x.side]-c[x.side]),p=0;if(h<0)p=h;else{var d=x.offsetLeft||0,g=x.offsetTop||0;c.left-=d,c.right-=d,c.top-=g,c.bottom-=g,x.selection.each((function(){var t=l.bBox(this);s.bBoxIntersect(c,t,o)&&(p=Math.max(p,i*(t[x.side]-c[r])+o))})),p=Math.min(h,p)}if(p>0||h<0){var m={left:[-p,0],right:[p,0],top:[0,-p],bottom:[0,p]}[x.side];e.attr(\"transform\",\"translate(\"+m+\")\")}}}return O.call(D),I&&(S?O.on(\".opacity\",null):(k=0,M=!0,O.text(v).on(\"mouseover.opacity\",(function(){n.select(this).transition().duration(h.SHOW_PLACEHOLDER).style(\"opacity\",1)})).on(\"mouseout.opacity\",(function(){n.select(this).transition().duration(h.HIDE_PLACEHOLDER).style(\"opacity\",0)}))),O.call(u.makeEditable,{gd:t}).on(\"edit\",(function(e){void 0!==y?o.call(\"_guiRestyle\",t,m,e,y):o.call(\"_guiRelayout\",t,m,e)})).on(\"cancel\",(function(){this.text(this.attr(\"data-unformatted\")).call(D)})).on(\"input\",(function(t){this.text(t||\" \").call(u.positionText,b.x,b.y)}))),O.classed(\"js-placeholder\",M),w}}},{\"../../constants/alignment\":717,\"../../constants/interactions\":723,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/plots\":861,\"../../registry\":881,\"../color\":615,\"../drawing\":637,d3:169,\"fast-isnumeric\":241}],711:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../color/attributes\"),i=t(\"../../lib/extend\").extendFlat,o=t(\"../../plot_api/edit_types\").overrideAll,s=t(\"../../plots/pad_attributes\"),l=t(\"../../plot_api/plot_template\").templatedArray,c=l(\"button\",{visible:{valType:\"boolean\"},method:{valType:\"enumerated\",values:[\"restyle\",\"relayout\",\"animate\",\"update\",\"skip\"],dflt:\"restyle\"},args:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},args2:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},label:{valType:\"string\",dflt:\"\"},execute:{valType:\"boolean\",dflt:!0}});e.exports=o(l(\"updatemenu\",{_arrayAttrRegexps:[/^updatemenus\\[(0|[1-9][0-9]+)\\]\\.buttons/],visible:{valType:\"boolean\"},type:{valType:\"enumerated\",values:[\"dropdown\",\"buttons\"],dflt:\"dropdown\"},direction:{valType:\"enumerated\",values:[\"left\",\"right\",\"up\",\"down\"],dflt:\"down\"},active:{valType:\"integer\",min:-1,dflt:0},showactive:{valType:\"boolean\",dflt:!0},buttons:c,x:{valType:\"number\",min:-2,max:3,dflt:-.05},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"right\"},y:{valType:\"number\",min:-2,max:3,dflt:1},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"top\"},pad:i(s({editType:\"arraydraw\"}),{}),font:n({}),bgcolor:{valType:\"color\"},bordercolor:{valType:\"color\",dflt:a.borderLine},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"arraydraw\"}}),\"arraydraw\",\"from-root\")},{\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plot_api/plot_template\":787,\"../../plots/font_attributes\":826,\"../../plots/pad_attributes\":860,\"../color/attributes\":614}],712:[function(t,e,r){\"use strict\";e.exports={name:\"updatemenus\",containerClassName:\"updatemenu-container\",headerGroupClassName:\"updatemenu-header-group\",headerClassName:\"updatemenu-header\",headerArrowClassName:\"updatemenu-header-arrow\",dropdownButtonGroupClassName:\"updatemenu-dropdown-button-group\",dropdownButtonClassName:\"updatemenu-dropdown-button\",buttonClassName:\"updatemenu-button\",itemRectClassName:\"updatemenu-item-rect\",itemTextClassName:\"updatemenu-item-text\",menuIndexAttrName:\"updatemenu-active-index\",autoMarginIdRoot:\"updatemenu-\",blankHeaderOpts:{label:\"  \"},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:\"#F4FAFF\",hoverColor:\"#F4FAFF\",arrowSymbol:{left:\"\\u25c4\",right:\"\\u25ba\",up:\"\\u25b2\",down:\"\\u25bc\"}}},{}],713:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/array_container_defaults\"),i=t(\"./attributes\"),o=t(\"./constants\").name,s=i.buttons;function l(t,e,r){function o(r,a){return n.coerce(t,e,i,r,a)}o(\"visible\",a(t,e,{name:\"buttons\",handleItemDefaults:c}).length>0)&&(o(\"active\"),o(\"direction\"),o(\"type\"),o(\"showactive\"),o(\"x\"),o(\"y\"),n.noneOrAll(t,e,[\"x\",\"y\"]),o(\"xanchor\"),o(\"yanchor\"),o(\"pad.t\"),o(\"pad.r\"),o(\"pad.b\"),o(\"pad.l\"),n.coerceFont(o,\"font\",r.font),o(\"bgcolor\",r.paper_bgcolor),o(\"bordercolor\"),o(\"borderwidth\"))}function c(t,e){function r(r,a){return n.coerce(t,e,s,r,a)}r(\"visible\",\"skip\"===t.method||Array.isArray(t.args))&&(r(\"method\"),r(\"args\"),r(\"args2\"),r(\"label\"),r(\"execute\"))}e.exports=function(t,e){a(t,e,{name:o,handleItemDefaults:l})}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"./attributes\":711,\"./constants\":712}],714:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plots/plots\"),i=t(\"../color\"),o=t(\"../drawing\"),s=t(\"../../lib\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../plot_api/plot_template\").arrayEditor,u=t(\"../../constants/alignment\").LINE_SPACING,h=t(\"./constants\"),f=t(\"./scrollbox\");function p(t){return t._index}function d(t,e){return+t.attr(h.menuIndexAttrName)===e._index}function g(t,e,r,n,a,i,o,s){e.active=o,c(t.layout,h.name,e).applyUpdate(\"active\",o),\"buttons\"===e.type?v(t,n,null,null,e):\"dropdown\"===e.type&&(a.attr(h.menuIndexAttrName,\"-1\"),m(t,n,a,i,e),s||v(t,n,a,i,e))}function m(t,e,r,n,a){var i=s.ensureSingle(e,\"g\",h.headerClassName,(function(t){t.style(\"pointer-events\",\"all\")})),l=a._dims,c=a.active,u=a.buttons[c]||h.blankHeaderOpts,f={y:a.pad.t,yPad:0,x:a.pad.l,xPad:0,index:0},p={width:l.headerWidth,height:l.headerHeight};i.call(y,a,u,t).call(A,a,f,p),s.ensureSingle(e,\"text\",h.headerArrowClassName,(function(t){t.attr(\"text-anchor\",\"end\").call(o.font,a.font).text(h.arrowSymbol[a.direction])})).attr({x:l.headerWidth-h.arrowOffsetX+a.pad.l,y:l.headerHeight/2+h.textOffsetY+a.pad.t}),i.on(\"click\",(function(){r.call(S,String(d(r,a)?-1:a._index)),v(t,e,r,n,a)})),i.on(\"mouseover\",(function(){i.call(w)})),i.on(\"mouseout\",(function(){i.call(T,a)})),o.setTranslate(e,l.lx,l.ly)}function v(t,e,r,i,o){r||(r=e).attr(\"pointer-events\",\"all\");var l=function(t){return-1==+t.attr(h.menuIndexAttrName)}(r)&&\"buttons\"!==o.type?[]:o.buttons,c=\"dropdown\"===o.type?h.dropdownButtonClassName:h.buttonClassName,u=r.selectAll(\"g.\"+c).data(s.filterVisible(l)),f=u.enter().append(\"g\").classed(c,!0),p=u.exit();\"dropdown\"===o.type?(f.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\"),p.transition().attr(\"opacity\",\"0\").remove()):p.remove();var d=0,m=0,v=o._dims,x=-1!==[\"up\",\"down\"].indexOf(o.direction);\"dropdown\"===o.type&&(x?m=v.headerHeight+h.gapButtonHeader:d=v.headerWidth+h.gapButtonHeader),\"dropdown\"===o.type&&\"up\"===o.direction&&(m=-h.gapButtonHeader+h.gapButton-v.openHeight),\"dropdown\"===o.type&&\"left\"===o.direction&&(d=-h.gapButtonHeader+h.gapButton-v.openWidth);var b={x:v.lx+d+o.pad.l,y:v.ly+m+o.pad.t,yPad:h.gapButton,xPad:h.gapButton,index:0},k={l:b.x+o.borderwidth,t:b.y+o.borderwidth};u.each((function(s,l){var c=n.select(this);c.call(y,o,s,t).call(A,o,b),c.on(\"click\",(function(){n.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(g(t,o,0,e,r,i,-1),a.executeAPICommand(t,s.method,s.args2)):(g(t,o,0,e,r,i,l),a.executeAPICommand(t,s.method,s.args))),t.emit(\"plotly_buttonclicked\",{menu:o,button:s,active:o.active}))})),c.on(\"mouseover\",(function(){c.call(w)})),c.on(\"mouseout\",(function(){c.call(T,o),u.call(_,o)}))})),u.call(_,o),x?(k.w=Math.max(v.openWidth,v.headerWidth),k.h=b.y-k.t):(k.w=b.x-k.l,k.h=Math.max(v.openHeight,v.headerHeight)),k.direction=o.direction,i&&(u.size()?function(t,e,r,n,a,i){var o,s,l,c=a.direction,u=\"up\"===c||\"down\"===c,f=a._dims,p=a.active;if(u)for(s=0,l=0;l<p;l++)s+=f.heights[l]+h.gapButton;else for(o=0,l=0;l<p;l++)o+=f.widths[l]+h.gapButton;n.enable(i,o,s),n.hbar&&n.hbar.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\");n.vbar&&n.vbar.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\")}(0,0,0,i,o,k):function(t){var e=!!t.hbar,r=!!t.vbar;e&&t.hbar.transition().attr(\"opacity\",\"0\").each(\"end\",(function(){e=!1,r||t.disable()}));r&&t.vbar.transition().attr(\"opacity\",\"0\").each(\"end\",(function(){r=!1,e||t.disable()}))}(i))}function y(t,e,r,n){t.call(x,e).call(b,e,r,n)}function x(t,e){s.ensureSingle(t,\"rect\",h.itemRectClassName,(function(t){t.attr({rx:h.rx,ry:h.ry,\"shape-rendering\":\"crispEdges\"})})).call(i.stroke,e.bordercolor).call(i.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\")}function b(t,e,r,n){var a=s.ensureSingle(t,\"text\",h.itemTextClassName,(function(t){t.attr({\"text-anchor\":\"start\",\"data-notex\":1})})),i=r.label,c=n._fullLayout._meta;c&&(i=s.templateString(i,c)),a.call(o.font,e.font).text(i).call(l.convertToTspans,n)}function _(t,e){var r=e.active;t.each((function(t,a){var o=n.select(this);a===r&&e.showactive&&o.select(\"rect.\"+h.itemRectClassName).call(i.fill,h.activeColor)}))}function w(t){t.select(\"rect.\"+h.itemRectClassName).call(i.fill,h.hoverColor)}function T(t,e){t.select(\"rect.\"+h.itemRectClassName).call(i.fill,e.bgcolor)}function k(t,e){var r=e._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},i=o.tester.selectAll(\"g.\"+h.dropdownButtonClassName).data(s.filterVisible(e.buttons));i.enter().append(\"g\").classed(h.dropdownButtonClassName,!0);var c=-1!==[\"up\",\"down\"].indexOf(e.direction);i.each((function(a,i){var s=n.select(this);s.call(y,e,a,t);var f=s.select(\".\"+h.itemTextClassName),p=f.node()&&o.bBox(f.node()).width,d=Math.max(p+h.textPadX,h.minWidth),g=e.font.size*u,m=l.lineCount(f),v=Math.max(g*m,h.minHeight)+h.textOffsetY;v=Math.ceil(v),d=Math.ceil(d),r.widths[i]=d,r.heights[i]=v,r.height1=Math.max(r.height1,v),r.width1=Math.max(r.width1,d),c?(r.totalWidth=Math.max(r.totalWidth,d),r.openWidth=r.totalWidth,r.totalHeight+=v+h.gapButton,r.openHeight+=v+h.gapButton):(r.totalWidth+=d+h.gapButton,r.openWidth+=d+h.gapButton,r.totalHeight=Math.max(r.totalHeight,v),r.openHeight=r.totalHeight)})),c?r.totalHeight-=h.gapButton:r.totalWidth-=h.gapButton,r.headerWidth=r.width1+h.arrowPadX,r.headerHeight=r.height1,\"dropdown\"===e.type&&(c?(r.width1+=h.arrowPadX,r.totalHeight=r.height1):r.totalWidth=r.width1,r.totalWidth+=h.arrowPadX),i.remove();var f=r.totalWidth+e.pad.l+e.pad.r,p=r.totalHeight+e.pad.t+e.pad.b,d=t._fullLayout._size;r.lx=d.l+d.w*e.x,r.ly=d.t+d.h*(1-e.y);var g=\"left\";s.isRightAnchor(e)&&(r.lx-=f,g=\"right\"),s.isCenterAnchor(e)&&(r.lx-=f/2,g=\"center\");var m=\"top\";s.isBottomAnchor(e)&&(r.ly-=p,m=\"bottom\"),s.isMiddleAnchor(e)&&(r.ly-=p/2,m=\"middle\"),r.totalWidth=Math.ceil(r.totalWidth),r.totalHeight=Math.ceil(r.totalHeight),r.lx=Math.round(r.lx),r.ly=Math.round(r.ly),a.autoMargin(t,M(e),{x:e.x,y:e.y,l:f*({right:1,center:.5}[g]||0),r:f*({left:1,center:.5}[g]||0),b:p*({top:1,middle:.5}[m]||0),t:p*({bottom:1,middle:.5}[m]||0)})}function M(t){return h.autoMarginIdRoot+t._index}function A(t,e,r,n){n=n||{};var a=t.select(\".\"+h.itemRectClassName),i=t.select(\".\"+h.itemTextClassName),s=e.borderwidth,c=r.index,f=e._dims;o.setTranslate(t,s+r.x,s+r.y);var p=-1!==[\"up\",\"down\"].indexOf(e.direction),d=n.height||(p?f.heights[c]:f.height1);a.attr({x:0,y:0,width:n.width||(p?f.width1:f.widths[c]),height:d});var g=e.font.size*u,m=(l.lineCount(i)-1)*g/2;l.positionText(i,h.textOffsetX,d/2-m+h.textOffsetY),p?r.y+=f.heights[c]+r.yPad:r.x+=f.widths[c]+r.xPad,r.index++}function S(t,e){t.attr(h.menuIndexAttrName,e||\"-1\").selectAll(\"g.\"+h.dropdownButtonClassName).remove()}e.exports=function(t){var e=t._fullLayout,r=s.filterVisible(e[h.name]);function i(e){a.autoMargin(t,M(e))}var o=e._menulayer.selectAll(\"g.\"+h.containerClassName).data(r.length>0?[0]:[]);if(o.enter().append(\"g\").classed(h.containerClassName,!0).style(\"cursor\",\"pointer\"),o.exit().each((function(){n.select(this).selectAll(\"g.\"+h.headerGroupClassName).each(i)})).remove(),0!==r.length){var l=o.selectAll(\"g.\"+h.headerGroupClassName).data(r,p);l.enter().append(\"g\").classed(h.headerGroupClassName,!0);for(var c=s.ensureSingle(o,\"g\",h.dropdownButtonGroupClassName,(function(t){t.style(\"pointer-events\",\"all\")})),u=0;u<r.length;u++){var y=r[u];k(t,y)}var x=\"updatemenus\"+e._uid,b=new f(t,c,x);l.enter().size()&&(c.node().parentNode.appendChild(c.node()),c.call(S)),l.exit().each((function(t){c.call(S),i(t)})).remove(),l.each((function(e){var r=n.select(this),i=\"dropdown\"===e.type?c:null;a.manageCommandObserver(t,e,e.buttons,(function(n){g(t,e,e.buttons[n.index],r,i,b,n.index,!0)})),\"dropdown\"===e.type?(m(t,r,c,b,e),d(c,e)&&v(t,r,c,b,e)):v(t,r,null,null,e)}))}}},{\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plot_api/plot_template\":787,\"../../plots/plots\":861,\"../color\":615,\"../drawing\":637,\"./constants\":712,\"./scrollbox\":716,d3:169}],715:[function(t,e,r){arguments[4][709][0].apply(r,arguments)},{\"./attributes\":711,\"./constants\":712,\"./defaults\":713,\"./draw\":714,dup:709}],716:[function(t,e,r){\"use strict\";e.exports=s;var n=t(\"d3\"),a=t(\"../color\"),i=t(\"../drawing\"),o=t(\"../../lib\");function s(t,e,r){this.gd=t,this.container=e,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll(\"rect.scrollbox-bg\").data([0]),this.bg.exit().on(\".drag\",null).on(\"wheel\",null).remove(),this.bg.enter().append(\"rect\").classed(\"scrollbox-bg\",!0).style(\"pointer-events\",\"all\").attr({opacity:0,x:0,y:0,width:0,height:0})}s.barWidth=2,s.barLength=20,s.barRadius=2,s.barPad=1,s.barColor=\"#808BA4\",s.prototype.enable=function(t,e,r){var o=this.gd._fullLayout,l=o.width,c=o.height;this.position=t;var u,h,f,p,d=this.position.l,g=this.position.w,m=this.position.t,v=this.position.h,y=this.position.direction,x=\"down\"===y,b=\"left\"===y,_=\"up\"===y,w=g,T=v;x||b||\"right\"===y||_||(this.position.direction=\"down\",x=!0),x||_?(h=(u=d)+w,x?(f=m,T=(p=Math.min(f+T,c))-f):T=(p=m+T)-(f=Math.max(p-T,0))):(p=(f=m)+T,b?w=(h=d+w)-(u=Math.max(h-w,0)):(u=d,w=(h=Math.min(u+w,l))-u)),this._box={l:u,t:f,w:w,h:T};var k=g>w,M=s.barLength+2*s.barPad,A=s.barWidth+2*s.barPad,S=d,E=m+v;E+A>c&&(E=c-A);var C=this.container.selectAll(\"rect.scrollbar-horizontal\").data(k?[0]:[]);C.exit().on(\".drag\",null).remove(),C.enter().append(\"rect\").classed(\"scrollbar-horizontal\",!0).call(a.fill,s.barColor),k?(this.hbar=C.attr({rx:s.barRadius,ry:s.barRadius,x:S,y:E,width:M,height:A}),this._hbarXMin=S+M/2,this._hbarTranslateMax=w-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var L=v>T,P=s.barWidth+2*s.barPad,I=s.barLength+2*s.barPad,z=d+g,O=m;z+P>l&&(z=l-P);var D=this.container.selectAll(\"rect.scrollbar-vertical\").data(L?[0]:[]);D.exit().on(\".drag\",null).remove(),D.enter().append(\"rect\").classed(\"scrollbar-vertical\",!0).call(a.fill,s.barColor),L?(this.vbar=D.attr({rx:s.barRadius,ry:s.barRadius,x:z,y:O,width:P,height:I}),this._vbarYMin=O+I/2,this._vbarTranslateMax=T-I):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var R=this.id,F=u-.5,B=L?h+P+.5:h+.5,N=f-.5,j=k?p+A+.5:p+.5,U=o._topdefs.selectAll(\"#\"+R).data(k||L?[0]:[]);if(U.exit().remove(),U.enter().append(\"clipPath\").attr(\"id\",R).append(\"rect\"),k||L?(this._clipRect=U.select(\"rect\").attr({x:Math.floor(F),y:Math.floor(N),width:Math.ceil(B)-Math.floor(F),height:Math.ceil(j)-Math.floor(N)}),this.container.call(i.setClipUrl,R,this.gd),this.bg.attr({x:d,y:m,width:g,height:v})):(this.bg.attr({width:0,height:0}),this.container.on(\"wheel\",null).on(\".drag\",null).call(i.setClipUrl,null),delete this._clipRect),k||L){var V=n.behavior.drag().on(\"dragstart\",(function(){n.event.sourceEvent.preventDefault()})).on(\"drag\",this._onBoxDrag.bind(this));this.container.on(\"wheel\",null).on(\"wheel\",this._onBoxWheel.bind(this)).on(\".drag\",null).call(V);var q=n.behavior.drag().on(\"dragstart\",(function(){n.event.sourceEvent.preventDefault(),n.event.sourceEvent.stopPropagation()})).on(\"drag\",this._onBarDrag.bind(this));k&&this.hbar.on(\".drag\",null).call(q),L&&this.vbar.on(\".drag\",null).call(q)}this.setTranslate(e,r)},s.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on(\"wheel\",null).on(\".drag\",null).call(i.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(\".drag\",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(\".drag\",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},s.prototype._onBoxDrag=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t-=n.event.dx),this.vbar&&(e-=n.event.dy),this.setTranslate(t,e)},s.prototype._onBoxWheel=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t+=n.event.deltaY),this.vbar&&(e+=n.event.deltaY),this.setTranslate(t,e)},s.prototype._onBarDrag=function(){var t=this.translateX,e=this.translateY;if(this.hbar){var r=t+this._hbarXMin,a=r+this._hbarTranslateMax;t=(o.constrain(n.event.x,r,a)-r)/(a-r)*(this.position.w-this._box.w)}if(this.vbar){var i=e+this._vbarYMin,s=i+this._vbarTranslateMax;e=(o.constrain(n.event.y,i,s)-i)/(s-i)*(this.position.h-this._box.h)}this.setTranslate(t,e)},s.prototype.setTranslate=function(t,e){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(t=o.constrain(t||0,0,r),e=o.constrain(e||0,0,n),this.translateX=t,this.translateY=e,this.container.call(i.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-e),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+e-.5)}),this.hbar){var a=t/r;this.hbar.call(i.setTranslate,t+a*this._hbarTranslateMax,e)}if(this.vbar){var s=e/n;this.vbar.call(i.setTranslate,t,e+s*this._vbarTranslateMax)}}},{\"../../lib\":749,\"../color\":615,\"../drawing\":637,d3:169}],717:[function(t,e,r){\"use strict\";e.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:\"right\",right:\"left\",top:\"bottom\",bottom:\"top\"}}},{}],718:[function(t,e,r){\"use strict\";e.exports={INCREASING:{COLOR:\"#3D9970\",SYMBOL:\"\\u25b2\"},DECREASING:{COLOR:\"#FF4136\",SYMBOL:\"\\u25bc\"}}},{}],719:[function(t,e,r){\"use strict\";e.exports={FORMAT_LINK:\"https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format\",DATE_FORMAT_LINK:\"https://github.com/d3/d3-time-format#locale_format\"}},{}],720:[function(t,e,r){\"use strict\";e.exports={COMPARISON_OPS:[\"=\",\"!=\",\"<\",\">=\",\">\",\"<=\"],COMPARISON_OPS2:[\"=\",\"<\",\">=\",\">\",\"<=\"],INTERVAL_OPS:[\"[]\",\"()\",\"[)\",\"(]\",\"][\",\")(\",\"](\",\")[\"],SET_OPS:[\"{}\",\"}{\"],CONSTRAINT_REDUCTION:{\"=\":\"=\",\"<\":\"<\",\"<=\":\"<\",\">\":\">\",\">=\":\">\",\"[]\":\"[]\",\"()\":\"[]\",\"[)\":\"[]\",\"(]\":\"[]\",\"][\":\"][\",\")(\":\"][\",\"](\":\"][\",\")[\":\"][\"}}},{}],721:[function(t,e,r){\"use strict\";e.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}},{}],722:[function(t,e,r){\"use strict\";e.exports={circle:\"\\u25cf\",\"circle-open\":\"\\u25cb\",square:\"\\u25a0\",\"square-open\":\"\\u25a1\",diamond:\"\\u25c6\",\"diamond-open\":\"\\u25c7\",cross:\"+\",x:\"\\u274c\"}},{}],723:[function(t,e,r){\"use strict\";e.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},{}],724:[function(t,e,r){\"use strict\";e.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE/1e4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,EPOCHJD:2440587.5,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:\"\\u2212\"}},{}],725:[function(t,e,r){\"use strict\";r.xmlns=\"http://www.w3.org/2000/xmlns/\",r.svg=\"http://www.w3.org/2000/svg\",r.xlink=\"http://www.w3.org/1999/xlink\",r.svgAttrs={xmlns:r.svg,\"xmlns:xlink\":r.xlink}},{}],726:[function(t,e,r){\"use strict\";r.version=t(\"./version\").version,t(\"es6-promise\").polyfill(),t(\"../build/plotcss\"),t(\"./fonts/mathjax_config\")();for(var n=t(\"./registry\"),a=r.register=n.register,i=t(\"./plot_api\"),o=Object.keys(i),s=0;s<o.length;s++){var l=o[s];\"_\"!==l.charAt(0)&&(r[l]=i[l]),a({moduleType:\"apiMethod\",name:l,fn:i[l]})}a(t(\"./traces/scatter\")),a([t(\"./components/legend\"),t(\"./components/fx\"),t(\"./components/annotations\"),t(\"./components/annotations3d\"),t(\"./components/shapes\"),t(\"./components/images\"),t(\"./components/updatemenus\"),t(\"./components/sliders\"),t(\"./components/rangeslider\"),t(\"./components/rangeselector\"),t(\"./components/grid\"),t(\"./components/errorbars\"),t(\"./components/colorscale\"),t(\"./components/colorbar\")]),a([t(\"./locale-en\"),t(\"./locale-en-us\")]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(a(window.PlotlyLocales),delete window.PlotlyLocales),r.Icons=t(\"./fonts/ploticon\"),r.Plots=t(\"./plots/plots\"),r.Fx=t(\"./components/fx\"),r.Snapshot=t(\"./snapshot\"),r.PlotSchema=t(\"./plot_api/plot_schema\"),r.Queue=t(\"./lib/queue\"),r.d3=t(\"d3\")},{\"../build/plotcss\":1,\"./components/annotations\":606,\"./components/annotations3d\":611,\"./components/colorbar\":621,\"./components/colorscale\":627,\"./components/errorbars\":643,\"./components/fx\":655,\"./components/grid\":659,\"./components/images\":664,\"./components/legend\":672,\"./components/rangeselector\":683,\"./components/rangeslider\":690,\"./components/shapes\":704,\"./components/sliders\":709,\"./components/updatemenus\":715,\"./fonts/mathjax_config\":727,\"./fonts/ploticon\":728,\"./lib/queue\":764,\"./locale-en\":778,\"./locale-en-us\":777,\"./plot_api\":782,\"./plot_api/plot_schema\":786,\"./plots/plots\":861,\"./registry\":881,\"./snapshot\":886,\"./traces/scatter\":1168,\"./version\":1339,d3:169,\"es6-promise\":224}],727:[function(t,e,r){\"use strict\";e.exports=function(){\"undefined\"!=typeof MathJax&&(\"local\"!==(window.PlotlyConfig||{}).MathJaxConfig&&(MathJax.Hub.Config({messageStyle:\"none\",skipStartupTypeset:!0,displayAlign:\"left\",tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}}),MathJax.Hub.Configured()))}},{}],728:[function(t,e,r){\"use strict\";e.exports={undo:{width:857.1,height:1e3,path:\"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z\",transform:\"matrix(1 0 0 -1 0 850)\"},home:{width:928.6,height:1e3,path:\"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z\",transform:\"matrix(1 0 0 -1 0 850)\"},\"camera-retro\":{width:1e3,height:1e3,path:\"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z\",transform:\"matrix(1 0 0 -1 0 850)\"},zoombox:{width:1e3,height:1e3,path:\"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z\",transform:\"matrix(1 0 0 -1 0 850)\"},pan:{width:1e3,height:1e3,path:\"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z\",transform:\"matrix(1 0 0 -1 0 850)\"},zoom_plus:{width:875,height:1e3,path:\"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z\",transform:\"matrix(1 0 0 -1 0 850)\"},zoom_minus:{width:875,height:1e3,path:\"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z\",transform:\"matrix(1 0 0 -1 0 850)\"},autoscale:{width:1e3,height:1e3,path:\"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z\",transform:\"matrix(1 0 0 -1 0 850)\"},tooltip_basic:{width:1500,height:1e3,path:\"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z\",transform:\"matrix(1 0 0 -1 0 850)\"},tooltip_compare:{width:1125,height:1e3,path:\"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z\",transform:\"matrix(1 0 0 -1 0 850)\"},plotlylogo:{width:1542,height:1e3,path:\"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z\",transform:\"matrix(1 0 0 -1 0 850)\"},\"z-axis\":{width:1e3,height:1e3,path:\"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z\",transform:\"matrix(1 0 0 -1 0 850)\"},\"3d_rotate\":{width:1e3,height:1e3,path:\"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z\",transform:\"matrix(1 0 0 -1 0 850)\"},camera:{width:1e3,height:1e3,path:\"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z\",transform:\"matrix(1 0 0 -1 0 850)\"},movie:{width:1e3,height:1e3,path:\"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z\",transform:\"matrix(1 0 0 -1 0 850)\"},question:{width:857.1,height:1e3,path:\"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z\",transform:\"matrix(1 0 0 -1 0 850)\"},disk:{width:857.1,height:1e3,path:\"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z\",transform:\"matrix(1 0 0 -1 0 850)\"},drawopenpath:{width:70,height:70,path:\"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z\",transform:\"matrix(1 0 0 1 -15 -15)\"},drawclosedpath:{width:90,height:90,path:\"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z\",transform:\"matrix(1 0 0 1 -5 -5)\"},lasso:{width:1031,height:1e3,path:\"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z\",transform:\"matrix(1 0 0 -1 0 850)\"},selectbox:{width:1e3,height:1e3,path:\"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z\",transform:\"matrix(1 0 0 -1 0 850)\"},drawline:{width:70,height:70,path:\"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z\",transform:\"matrix(1 0 0 1 -15 -15)\"},drawrect:{width:80,height:80,path:\"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z\",transform:\"matrix(1 0 0 1 -10 -10)\"},drawcircle:{width:80,height:80,path:\"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z\",transform:\"matrix(1 0 0 1 -10 -10)\"},eraseshape:{width:80,height:80,path:\"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z\",transform:\"matrix(1 0 0 1 -10 -10)\"},spikeline:{width:1e3,height:1e3,path:\"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z\",transform:\"matrix(1.5 0 0 -1.5 0 850)\"},pencil:{width:1792,height:1792,path:\"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z\",transform:\"matrix(1 0 0 1 0 1)\"},newplotlylogo:{name:\"newplotlylogo\",svg:\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 132'><defs><style>.cls-1 {fill: #3f4f75;} .cls-2 {fill: #80cfbe;} .cls-3 {fill: #fff;}</style></defs><title>plotly-logomark</title><g id='symbol'><rect class='cls-1' width='132' height='132' rx='6' ry='6'/><circle class='cls-2' cx='78' cy='54' r='6'/><circle class='cls-2' cx='102' cy='30' r='6'/><circle class='cls-2' cx='78' cy='30' r='6'/><circle class='cls-2' cx='54' cy='30' r='6'/><circle class='cls-2' cx='30' cy='30' r='6'/><circle class='cls-2' cx='30' cy='54' r='6'/><path class='cls-3' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/><path class='cls-3' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/><path class='cls-3' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/><path class='cls-3' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/></g></svg>\"}}},{}],729:[function(t,e,r){\"use strict\";r.isLeftAnchor=function(t){return\"left\"===t.xanchor||\"auto\"===t.xanchor&&t.x<=1/3},r.isCenterAnchor=function(t){return\"center\"===t.xanchor||\"auto\"===t.xanchor&&t.x>1/3&&t.x<2/3},r.isRightAnchor=function(t){return\"right\"===t.xanchor||\"auto\"===t.xanchor&&t.x>=2/3},r.isTopAnchor=function(t){return\"top\"===t.yanchor||\"auto\"===t.yanchor&&t.y>=2/3},r.isMiddleAnchor=function(t){return\"middle\"===t.yanchor||\"auto\"===t.yanchor&&t.y>1/3&&t.y<2/3},r.isBottomAnchor=function(t){return\"bottom\"===t.yanchor||\"auto\"===t.yanchor&&t.y<=1/3}},{}],730:[function(t,e,r){\"use strict\";var n=t(\"./mod\"),a=n.mod,i=n.modHalf,o=Math.PI,s=2*o;function l(t){return Math.abs(t[1]-t[0])>s-1e-14}function c(t,e){return i(e-t,s)}function u(t,e){if(l(e))return!0;var r,n;e[0]<e[1]?(r=e[0],n=e[1]):(r=e[1],n=e[0]),(r=a(r,s))>(n=a(n,s))&&(n+=s);var i=a(t,s),o=i+s;return i>=r&&i<=n||o>=r&&o<=n}function h(t,e,r,n,a,i,c){a=a||0,i=i||0;var u,h,f,p,d,g=l([r,n]);function m(t,e){return[t*Math.cos(e)+a,i-t*Math.sin(e)]}g?(u=0,h=o,f=s):r<n?(u=r,f=n):(u=n,f=r),t<e?(p=t,d=e):(p=e,d=t);var v,y=Math.abs(f-u)<=o?0:1;function x(t,e,r){return\"A\"+[t,t]+\" \"+[0,y,r]+\" \"+m(t,e)}return g?v=null===p?\"M\"+m(d,u)+x(d,h,0)+x(d,f,0)+\"Z\":\"M\"+m(p,u)+x(p,h,0)+x(p,f,0)+\"ZM\"+m(d,u)+x(d,h,1)+x(d,f,1)+\"Z\":null===p?(v=\"M\"+m(d,u)+x(d,f,0),c&&(v+=\"L0,0Z\")):v=\"M\"+m(p,u)+\"L\"+m(d,u)+x(d,f,0)+\"L\"+m(p,f)+x(p,u,1)+\"Z\",v}e.exports={deg2rad:function(t){return t/180*o},rad2deg:function(t){return t/o*180},angleDelta:c,angleDist:function(t,e){return Math.abs(c(t,e))},isFullCircle:l,isAngleInsideSector:u,isPtInsideSector:function(t,e,r,n){return!!u(e,n)&&(r[0]<r[1]?(a=r[0],i=r[1]):(a=r[1],i=r[0]),t>=a&&t<=i);var a,i},pathArc:function(t,e,r,n,a){return h(null,t,e,r,n,a,0)},pathSector:function(t,e,r,n,a){return h(null,t,e,r,n,a,1)},pathAnnulus:function(t,e,r,n,a,i){return h(t,e,r,n,a,i,1)}}},{\"./mod\":756}],731:[function(t,e,r){\"use strict\";var n=Array.isArray,a=\"undefined\"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer:{isView:function(){return!1}},i=\"undefined\"==typeof DataView?function(){}:DataView;function o(t){return a.isView(t)&&!(t instanceof i)}function s(t){return n(t)||o(t)}function l(t,e,r){if(s(t)){if(s(t[0])){for(var n=r,a=0;a<t.length;a++)n=e(n,t[a].length);return n}return t.length}return 0}r.isTypedArray=o,r.isArrayOrTypedArray=s,r.isArray1D=function(t){return!s(t[0])},r.ensureArray=function(t,e){return n(t)||(t=[]),t.length=e,t},r.concat=function(){var t,e,r,a,i,o,s,l,c=[],u=!0,h=0;for(r=0;r<arguments.length;r++)(o=(a=arguments[r]).length)&&(e?c.push(a):(e=a,i=o),n(a)?t=!1:(u=!1,h?t!==a.constructor&&(t=!1):t=a.constructor),h+=o);if(!h)return[];if(!c.length)return e;if(u)return e.concat.apply(e,c);if(t){for((s=new t(h)).set(e),r=0;r<c.length;r++)a=c[r],s.set(a,i),i+=a.length;return s}for(s=new Array(h),l=0;l<e.length;l++)s[l]=e[l];for(r=0;r<c.length;r++){for(a=c[r],l=0;l<a.length;l++)s[i+l]=a[l];i+=l}return s},r.maxRowLength=function(t){return l(t,Math.max,0)},r.minRowLength=function(t){return l(t,Math.min,1/0)}},{}],732:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../constants/numerical\").BADNUM,i=/^['\"%,$#\\s']+|[, ]|['\"%,$#\\s']+$/g;e.exports=function(t){return\"string\"==typeof t&&(t=t.replace(i,\"\")),n(t)?Number(t):a}},{\"../constants/numerical\":724,\"fast-isnumeric\":241}],733:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t._fullLayout;e._glcanvas&&e._glcanvas.size()&&e._glcanvas.each((function(t){t.regl&&t.regl.clear({color:!0,depth:!0})}))}},{}],734:[function(t,e,r){\"use strict\";e.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener(\"resize\",t._responsiveChartHandler),delete t._responsiveChartHandler)}},{}],735:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"tinycolor2\"),i=t(\"../plots/attributes\"),o=t(\"../components/colorscale/scales\"),s=t(\"../constants/interactions\").DESELECTDIM,l=t(\"./nested_property\"),c=t(\"./regex\").counter,u=t(\"./mod\").modHalf,h=t(\"./array\").isArrayOrTypedArray;function f(t,e){var n=r.valObjectMeta[e.valType];if(e.arrayOk&&h(t))return!0;if(n.validateFunction)return n.validateFunction(t,e);var a={},i=a,o={set:function(t){i=t}};return n.coerceFunction(t,o,a,e),i!==a}r.valObjectMeta={data_array:{coerceFunction:function(t,e,r){h(t)?e.set(t):void 0!==r&&e.set(r)}},enumerated:{coerceFunction:function(t,e,r,n){n.coerceNumber&&(t=+t),-1===n.values.indexOf(t)?e.set(r):e.set(t)},validateFunction:function(t,e){e.coerceNumber&&(t=+t);for(var r=e.values,n=0;n<r.length;n++){var a=String(r[n]);if(\"/\"===a.charAt(0)&&\"/\"===a.charAt(a.length-1)){if(new RegExp(a.substr(1,a.length-2)).test(t))return!0}else if(t===r[n])return!0}return!1}},boolean:{coerceFunction:function(t,e,r){!0===t||!1===t?e.set(t):e.set(r)}},number:{coerceFunction:function(t,e,r,a){!n(t)||void 0!==a.min&&t<a.min||void 0!==a.max&&t>a.max?e.set(r):e.set(+t)}},integer:{coerceFunction:function(t,e,r,a){t%1||!n(t)||void 0!==a.min&&t<a.min||void 0!==a.max&&t>a.max?e.set(r):e.set(+t)}},string:{coerceFunction:function(t,e,r,n){if(\"string\"!=typeof t){var a=\"number\"==typeof t;!0!==n.strict&&a?e.set(String(t)):e.set(r)}else n.noBlank&&!t?e.set(r):e.set(t)}},color:{coerceFunction:function(t,e,r){a(t).isValid()?e.set(t):e.set(r)}},colorlist:{coerceFunction:function(t,e,r){Array.isArray(t)&&t.length&&t.every((function(t){return a(t).isValid()}))?e.set(t):e.set(r)}},colorscale:{coerceFunction:function(t,e,r){e.set(o.get(t,r))}},angle:{coerceFunction:function(t,e,r){\"auto\"===t?e.set(\"auto\"):n(t)?e.set(u(+t,360)):e.set(r)}},subplotid:{coerceFunction:function(t,e,r,n){var a=n.regex||c(r);\"string\"==typeof t&&a.test(t)?e.set(t):e.set(r)},validateFunction:function(t,e){var r=e.dflt;return t===r||\"string\"==typeof t&&!!c(r).test(t)}},flaglist:{coerceFunction:function(t,e,r,n){if(\"string\"==typeof t)if(-1===(n.extras||[]).indexOf(t)){for(var a=t.split(\"+\"),i=0;i<a.length;){var o=a[i];-1===n.flags.indexOf(o)||a.indexOf(o)<i?a.splice(i,1):i++}a.length?e.set(a.join(\"+\")):e.set(r)}else e.set(t);else e.set(r)}},any:{coerceFunction:function(t,e,r){void 0===t?e.set(r):e.set(t)}},info_array:{coerceFunction:function(t,e,n,a){function i(t,e,n){var a,i={set:function(t){a=t}};return void 0===n&&(n=e.dflt),r.valObjectMeta[e.valType].coerceFunction(t,i,n,e),a}var o=2===a.dimensions||\"1-2\"===a.dimensions&&Array.isArray(t)&&Array.isArray(t[0]);if(Array.isArray(t)){var s,l,c,u,h,f,p=a.items,d=[],g=Array.isArray(p),m=g&&o&&Array.isArray(p[0]),v=o&&g&&!m,y=g&&!v?p.length:t.length;if(n=Array.isArray(n)?n:[],o)for(s=0;s<y;s++)for(d[s]=[],c=Array.isArray(t[s])?t[s]:[],h=v?p.length:g?p[s].length:c.length,l=0;l<h;l++)u=v?p[l]:g?p[s][l]:p,void 0!==(f=i(c[l],u,(n[s]||[])[l]))&&(d[s][l]=f);else for(s=0;s<y;s++)void 0!==(f=i(t[s],g?p[s]:p,n[s]))&&(d[s]=f);e.set(d)}else e.set(n)},validateFunction:function(t,e){if(!Array.isArray(t))return!1;var r=e.items,n=Array.isArray(r),a=2===e.dimensions;if(!e.freeLength&&t.length!==r.length)return!1;for(var i=0;i<t.length;i++)if(a){if(!Array.isArray(t[i])||!e.freeLength&&t[i].length!==r[i].length)return!1;for(var o=0;o<t[i].length;o++)if(!f(t[i][o],n?r[i][o]:r))return!1}else if(!f(t[i],n?r[i]:r))return!1;return!0}}},r.coerce=function(t,e,n,a,i){var o=l(n,a).get(),s=l(t,a),c=l(e,a),u=s.get(),p=e._template;if(void 0===u&&p&&(u=l(p,a).get(),p=0),void 0===i&&(i=o.dflt),o.arrayOk&&h(u))return c.set(u),u;var d=r.valObjectMeta[o.valType].coerceFunction;d(u,c,i,o);var g=c.get();return p&&g===i&&!f(u,o)&&(d(u=l(p,a).get(),c,i,o),g=c.get()),g},r.coerce2=function(t,e,n,a,i){var o=l(t,a),s=r.coerce(t,e,n,a,i),c=o.get();return null!=c&&s},r.coerceFont=function(t,e,r){var n={};return r=r||{},n.family=t(e+\".family\",r.family),n.size=t(e+\".size\",r.size),n.color=t(e+\".color\",r.color),n},r.coerceHoverinfo=function(t,e,n){var a,o=e._module.attributes,s=o.hoverinfo?o:i,l=s.hoverinfo;if(1===n._dataLength){var c=\"all\"===l.dflt?l.flags.slice():l.dflt.split(\"+\");c.splice(c.indexOf(\"name\"),1),a=c.join(\"+\")}return r.coerce(t,e,s,\"hoverinfo\",a)},r.coerceSelectionMarkerOpacity=function(t,e){if(t.marker){var r,n,a=t.marker.opacity;if(void 0!==a)h(a)||t.selected||t.unselected||(r=a,n=s*a),e(\"selected.marker.opacity\",r),e(\"unselected.marker.opacity\",n)}},r.validate=f},{\"../components/colorscale/scales\":630,\"../constants/interactions\":723,\"../plots/attributes\":794,\"./array\":731,\"./mod\":756,\"./nested_property\":757,\"./regex\":765,\"fast-isnumeric\":241,tinycolor2:548}],736:[function(t,e,r){\"use strict\";var n,a,i=t(\"d3-time-format\").timeFormat,o=t(\"fast-isnumeric\"),s=t(\"./loggers\"),l=t(\"./mod\").mod,c=t(\"../constants/numerical\"),u=c.BADNUM,h=c.ONEDAY,f=c.ONEHOUR,p=c.ONEMIN,d=c.ONESEC,g=c.EPOCHJD,m=t(\"../registry\"),v=t(\"d3-time-format\").utcFormat,y=/^\\s*(-?\\d\\d\\d\\d|\\d\\d)(-(\\d?\\d)(-(\\d?\\d)([ Tt]([01]?\\d|2[0-3])(:([0-5]\\d)(:([0-5]\\d(\\.\\d+)?))?(Z|z|[+\\-]\\d\\d(:?\\d\\d)?)?)?)?)?)?\\s*$/m,x=/^\\s*(-?\\d\\d\\d\\d|\\d\\d)(-(\\d?\\di?)(-(\\d?\\d)([ Tt]([01]?\\d|2[0-3])(:([0-5]\\d)(:([0-5]\\d(\\.\\d+)?))?(Z|z|[+\\-]\\d\\d(:?\\d\\d)?)?)?)?)?)?\\s*$/m,b=(new Date).getFullYear()-70;function _(t){return t&&m.componentsRegistry.calendars&&\"string\"==typeof t&&\"gregorian\"!==t}function w(t,e){return String(t+Math.pow(10,e)).substr(1)}r.dateTick0=function(t,e){var n=function(t,e){return _(t)?e?m.getComponentMethod(\"calendars\",\"CANONICAL_SUNDAY\")[t]:m.getComponentMethod(\"calendars\",\"CANONICAL_TICK\")[t]:e?\"2000-01-02\":\"2000-01-01\"}(t,!!e);if(e<2)return n;var a=r.dateTime2ms(n,t);return a+=h*(e-1),r.ms2DateTime(a,0,t)},r.dfltRange=function(t){return _(t)?m.getComponentMethod(\"calendars\",\"DFLTRANGE\")[t]:[\"2000-01-01\",\"2001-01-01\"]},r.isJSDate=function(t){return\"object\"==typeof t&&null!==t&&\"function\"==typeof t.getTime},r.dateTime2ms=function(t,e){if(r.isJSDate(t)){var i=t.getTimezoneOffset()*p,o=(t.getUTCMinutes()-t.getMinutes())*p+(t.getUTCSeconds()-t.getSeconds())*d+(t.getUTCMilliseconds()-t.getMilliseconds());if(o){var s=3*p;i=i-s/2+l(o-i+s/2,s)}return(t=Number(t)-i)>=n&&t<=a?t:u}if(\"string\"!=typeof t&&\"number\"!=typeof t)return u;t=String(t);var c=_(e),v=t.charAt(0);!c||\"G\"!==v&&\"g\"!==v||(t=t.substr(1),e=\"\");var w=c&&\"chinese\"===e.substr(0,7),T=t.match(w?x:y);if(!T)return u;var k=T[1],M=T[3]||\"1\",A=Number(T[5]||1),S=Number(T[7]||0),E=Number(T[9]||0),C=Number(T[11]||0);if(c){if(2===k.length)return u;var L;k=Number(k);try{var P=m.getComponentMethod(\"calendars\",\"getCal\")(e);if(w){var I=\"i\"===M.charAt(M.length-1);M=parseInt(M,10),L=P.newDate(k,P.toMonthIndex(k,M,I),A)}else L=P.newDate(k,Number(M),A)}catch(t){return u}return L?(L.toJD()-g)*h+S*f+E*p+C*d:u}k=2===k.length?(Number(k)+2e3-b)%100+b:Number(k),M-=1;var z=new Date(Date.UTC(2e3,M,A,S,E));return z.setUTCFullYear(k),z.getUTCMonth()!==M||z.getUTCDate()!==A?u:z.getTime()+C*d},n=r.MIN_MS=r.dateTime2ms(\"-9999\"),a=r.MAX_MS=r.dateTime2ms(\"9999-12-31 23:59:59.9999\"),r.isDateTime=function(t,e){return r.dateTime2ms(t,e)!==u};var T=90*h,k=3*f,M=5*p;function A(t,e,r,n,a){if((e||r||n||a)&&(t+=\" \"+w(e,2)+\":\"+w(r,2),(n||a)&&(t+=\":\"+w(n,2),a))){for(var i=4;a%10==0;)i-=1,a/=10;t+=\".\"+w(a,i)}return t}r.ms2DateTime=function(t,e,r){if(\"number\"!=typeof t||!(t>=n&&t<=a))return u;e||(e=0);var i,o,s,c,y,x,b=Math.floor(10*l(t+.05,1)),w=Math.round(t-b/10);if(_(r)){var S=Math.floor(w/h)+g,E=Math.floor(l(t,h));try{i=m.getComponentMethod(\"calendars\",\"getCal\")(r).fromJD(S).formatDate(\"yyyy-mm-dd\")}catch(t){i=v(\"G%Y-%m-%d\")(new Date(w))}if(\"-\"===i.charAt(0))for(;i.length<11;)i=\"-0\"+i.substr(1);else for(;i.length<10;)i=\"0\"+i;o=e<T?Math.floor(E/f):0,s=e<T?Math.floor(E%f/p):0,c=e<k?Math.floor(E%p/d):0,y=e<M?E%d*10+b:0}else x=new Date(w),i=v(\"%Y-%m-%d\")(x),o=e<T?x.getUTCHours():0,s=e<T?x.getUTCMinutes():0,c=e<k?x.getUTCSeconds():0,y=e<M?10*x.getUTCMilliseconds()+b:0;return A(i,o,s,c,y)},r.ms2DateTimeLocal=function(t){if(!(t>=n+h&&t<=a-h))return u;var e=Math.floor(10*l(t+.05,1)),r=new Date(Math.round(t-e/10));return A(i(\"%Y-%m-%d\")(r),r.getHours(),r.getMinutes(),r.getSeconds(),10*r.getUTCMilliseconds()+e)},r.cleanDate=function(t,e,n){if(t===u)return e;if(r.isJSDate(t)||\"number\"==typeof t&&isFinite(t)){if(_(n))return s.error(\"JS Dates and milliseconds are incompatible with world calendars\",t),e;if(!(t=r.ms2DateTimeLocal(+t))&&void 0!==e)return e}else if(!r.isDateTime(t,n))return s.error(\"unrecognized date\",t),e;return t};var S=/%\\d?f/g;function E(t,e,r,n){t=t.replace(S,(function(t){var r=Math.min(+t.charAt(1)||6,6);return(e/1e3%1+2).toFixed(r).substr(2).replace(/0+$/,\"\")||\"0\"}));var a=new Date(Math.floor(e+.05));if(_(n))try{t=m.getComponentMethod(\"calendars\",\"worldCalFmt\")(t,e,n)}catch(t){return\"Invalid\"}return r(t)(a)}var C=[59,59.9,59.99,59.999,59.9999];r.formatDate=function(t,e,r,n,a,i){if(a=_(a)&&a,!e)if(\"y\"===r)e=i.year;else if(\"m\"===r)e=i.month;else{if(\"d\"!==r)return function(t,e){var r=l(t+.05,h),n=w(Math.floor(r/f),2)+\":\"+w(l(Math.floor(r/p),60),2);if(\"M\"!==e){o(e)||(e=0);var a=(100+Math.min(l(t/d,60),C[e])).toFixed(e).substr(1);e>0&&(a=a.replace(/0+$/,\"\").replace(/[\\.]$/,\"\")),n+=\":\"+a}return n}(t,r)+\"\\n\"+E(i.dayMonthYear,t,n,a);e=i.dayMonth+\"\\n\"+i.year}return E(e,t,n,a)};var L=3*h;r.incrementMonth=function(t,e,r){r=_(r)&&r;var n=l(t,h);if(t=Math.round(t-n),r)try{var a=Math.round(t/h)+g,i=m.getComponentMethod(\"calendars\",\"getCal\")(r),o=i.fromJD(a);return e%12?i.add(o,e,\"m\"):i.add(o,e/12,\"y\"),(o.toJD()-g)*h+n}catch(e){s.error(\"invalid ms \"+t+\" in calendar \"+r)}var c=new Date(t+L);return c.setUTCMonth(c.getUTCMonth()+e)+n-L},r.findExactDates=function(t,e){for(var r,n,a=0,i=0,s=0,l=0,c=_(e)&&m.getComponentMethod(\"calendars\",\"getCal\")(e),u=0;u<t.length;u++)if(n=t[u],o(n)){if(!(n%h))if(c)try{1===(r=c.fromJD(n/h+g)).day()?1===r.month()?a++:i++:s++}catch(t){}else 1===(r=new Date(n)).getUTCDate()?0===r.getUTCMonth()?a++:i++:s++}else l++;s+=i+=a;var f=t.length-l;return{exactYears:a/f,exactMonths:i/f,exactDays:s/f}}},{\"../constants/numerical\":724,\"../registry\":881,\"./loggers\":753,\"./mod\":756,\"d3-time-format\":166,\"fast-isnumeric\":241}],737:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"./loggers\");function i(t){var e=t&&t.parentNode;e&&e.removeChild(t)}function o(t,e,r){var n=\"plotly.js-style-\"+t,i=document.getElementById(n);i||((i=document.createElement(\"style\")).setAttribute(\"id\",n),i.appendChild(document.createTextNode(\"\")),document.head.appendChild(i));var o=i.sheet;o.insertRule?o.insertRule(e+\"{\"+r+\"}\",0):o.addRule?o.addRule(e,r,0):a.warn(\"addStyleRule failed\")}e.exports={getGraphDiv:function(t){var e;if(\"string\"==typeof t){if(null===(e=document.getElementById(t)))throw new Error(\"No DOM element with id '\"+t+\"' exists on the page.\");return e}if(null==t)throw new Error(\"DOM element provided is null or undefined\");return t},isPlotDiv:function(t){var e=n.select(t);return e.node()instanceof HTMLElement&&e.size()&&e.classed(\"js-plotly-plot\")},removeElement:i,addStyleRule:function(t,e){o(\"global\",t,e)},addRelatedStyleRule:o,deleteRelatedStyleRule:function(t){var e=\"plotly.js-style-\"+t,r=document.getElementById(e);r&&i(r)}}},{\"./loggers\":753,d3:169}],738:[function(t,e,r){\"use strict\";var n=t(\"events\").EventEmitter,a={init:function(t){if(t._ev instanceof n)return t;var e=new n,r=new n;return t._ev=e,t._internalEv=r,t.on=e.on.bind(e),t.once=e.once.bind(e),t.removeListener=e.removeListener.bind(e),t.removeAllListeners=e.removeAllListeners.bind(e),t._internalOn=r.on.bind(r),t._internalOnce=r.once.bind(r),t._removeInternalListener=r.removeListener.bind(r),t._removeAllInternalListeners=r.removeAllListeners.bind(r),t.emit=function(n,a){\"undefined\"!=typeof jQuery&&jQuery(t).trigger(n,a),e.emit(n,a),r.emit(n,a)},t},triggerHandler:function(t,e,r){var n,a;\"undefined\"!=typeof jQuery&&(n=jQuery(t).triggerHandler(e,r));var i=t._ev;if(!i)return n;var o,s=i._events[e];if(!s)return n;function l(t){return t.listener?(i.removeListener(e,t.listener),t.fired?void 0:(t.fired=!0,t.listener.apply(i,[r]))):t.apply(i,[r])}for(s=Array.isArray(s)?s:[s],o=0;o<s.length-1;o++)l(s[o]);return a=l(s[o]),void 0!==n?n:a},purge:function(t){return delete t._ev,delete t.on,delete t.once,delete t.removeListener,delete t.removeAllListeners,delete t.emit,delete t._ev,delete t._internalEv,delete t._internalOn,delete t._internalOnce,delete t._removeInternalListener,delete t._removeAllInternalListeners,t}};e.exports=a},{events:110}],739:[function(t,e,r){\"use strict\";var n=t(\"./is_plain_object.js\"),a=Array.isArray;function i(t,e,r,o){var s,l,c,u,h,f,p=t[0],d=t.length;if(2===d&&a(p)&&a(t[1])&&0===p.length){if(function(t,e){var r,n;for(r=0;r<t.length;r++){if(null!==(n=t[r])&&\"object\"==typeof n)return!1;void 0!==n&&(e[r]=n)}return!0}(t[1],p))return p;p.splice(0,p.length)}for(var g=1;g<d;g++)for(l in s=t[g])c=p[l],u=s[l],o&&a(u)?p[l]=u:e&&u&&(n(u)||(h=a(u)))?(h?(h=!1,f=c&&a(c)?c:[]):f=c&&n(c)?c:{},p[l]=i([f,u],e,r,o)):(\"undefined\"!=typeof u||r)&&(p[l]=u);return p}r.extendFlat=function(){return i(arguments,!1,!1,!1)},r.extendDeep=function(){return i(arguments,!0,!1,!1)},r.extendDeepAll=function(){return i(arguments,!0,!0,!1)},r.extendDeepNoArrays=function(){return i(arguments,!0,!1,!0)}},{\"./is_plain_object.js\":750}],740:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e={},r=[],n=0,a=0;a<t.length;a++){var i=t[a];1!==e[i]&&(e[i]=1,r[n++]=i)}return r}},{}],741:[function(t,e,r){\"use strict\";function n(t){return!0===t.visible}function a(t){var e=t[0].trace;return!0===e.visible&&0!==e._length}e.exports=function(t){for(var e,r=(e=t,Array.isArray(e)&&Array.isArray(e[0])&&e[0][0]&&e[0][0].trace?a:n),i=[],o=0;o<t.length;o++){var s=t[o];r(s)&&i.push(s)}return i}},{}],742:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"country-regex\"),i=t(\"@turf/area\"),o=t(\"@turf/centroid\"),s=t(\"@turf/bbox\"),l=t(\"./identity\"),c=t(\"./loggers\"),u=t(\"./is_plain_object\"),h=t(\"./nested_property\"),f=t(\"./polygon\"),p=Object.keys(a),d={\"ISO-3\":l,\"USA-states\":l,\"country names\":function(t){for(var e=0;e<p.length;e++){var r=p[e];if(new RegExp(a[r]).test(t.trim().toLowerCase()))return r}return c.log(\"Unrecognized country name: \"+t+\".\"),!1}};function g(t){var e=t.geojson,r=window.PlotlyGeoAssets||{},n=\"string\"==typeof e?r[e]:e;return u(n)?n:(c.error(\"Oops ... something went wrong when fetching \"+e),!1)}e.exports={locationToFeature:function(t,e,r){if(!e||\"string\"!=typeof e)return!1;var n,a,i,o=d[t](e);if(o){if(\"USA-states\"===t)for(n=[],i=0;i<r.length;i++)(a=r[i]).properties&&a.properties.gu&&\"USA\"===a.properties.gu&&n.push(a);else n=r;for(i=0;i<n.length;i++)if((a=n[i]).id===o)return a;c.log([\"Location with id\",o,\"does not have a matching topojson feature at this resolution.\"].join(\" \"))}return!1},feature2polygons:function(t){var e,r,n,a,i=t.geometry,o=i.coordinates,s=t.id,l=[];function c(t){for(var e=0;e<t.length-1;e++)if(t[e][0]>0&&t[e+1][0]<0)return e;return null}switch(e=\"RUS\"===s||\"FJI\"===s?function(t){var e;if(null===c(t))e=t;else for(e=new Array(t.length),a=0;a<t.length;a++)e[a]=[t[a][0]<0?t[a][0]+360:t[a][0],t[a][1]];l.push(f.tester(e))}:\"ATA\"===s?function(t){var e=c(t);if(null===e)return l.push(f.tester(t));var r=new Array(t.length+1),n=0;for(a=0;a<t.length;a++)a>e?r[n++]=[t[a][0]+360,t[a][1]]:a===e?(r[n++]=t[a],r[n++]=[t[a][0],-90]):r[n++]=t[a];var i=f.tester(r);i.pts.pop(),l.push(i)}:function(t){l.push(f.tester(t))},i.type){case\"MultiPolygon\":for(r=0;r<o.length;r++)for(n=0;n<o[r].length;n++)e(o[r][n]);break;case\"Polygon\":for(r=0;r<o.length;r++)e(o[r])}return l},getTraceGeojson:g,extractTraceFeature:function(t){var e=t[0].trace,r=g(e);if(!r)return!1;var n,a={},s=[];for(n=0;n<e._length;n++){var l=t[n];(l.loc||0===l.loc)&&(a[l.loc]=l)}function u(t){var r=h(t,e.featureidkey||\"id\").get(),n=a[r];if(n){var l=t.geometry;if(\"Polygon\"===l.type||\"MultiPolygon\"===l.type){var u={type:\"Feature\",id:r,geometry:l,properties:{}};u.properties.ct=function(t){var e,r=t.geometry;if(\"MultiPolygon\"===r.type)for(var n=r.coordinates,a=0,s=0;s<n.length;s++){var l={type:\"Polygon\",coordinates:n[s]},c=i.default(l);c>a&&(a=c,e=l)}else e=r;return o.default(e).geometry.coordinates}(u),n.fIn=t,n.fOut=u,s.push(u)}else c.log([\"Location\",n.loc,\"does not have a valid GeoJSON geometry.\",\"Traces with locationmode *geojson-id* only support\",\"*Polygon* and *MultiPolygon* geometries.\"].join(\" \"))}delete a[r]}switch(r.type){case\"FeatureCollection\":var f=r.features;for(n=0;n<f.length;n++)u(f[n]);break;case\"Feature\":u(r);break;default:return c.warn([\"Invalid GeoJSON type\",(r.type||\"none\")+\".\",\"Traces with locationmode *geojson-id* only support\",\"*FeatureCollection* and *Feature* types.\"].join(\" \")),!1}for(var p in a)c.log([\"Location *\"+p+\"*\",\"does not have a matching feature with id-key\",\"*\"+e.featureidkey+\"*.\"].join(\" \"));return s},fetchTraceGeoData:function(t){var e=window.PlotlyGeoAssets||{},r=[];function a(t){return new Promise((function(r,a){n.json(t,(function(n,i){if(n){delete e[t];var o=404===n.status?'GeoJSON at URL \"'+t+'\" does not exist.':\"Unexpected error while fetching from \"+t;return a(new Error(o))}return e[t]=i,r(i)}))}))}function i(t){return new Promise((function(r,n){var a=0,i=setInterval((function(){return e[t]&&\"pending\"!==e[t]?(clearInterval(i),r(e[t])):a>100?(clearInterval(i),n(\"Unexpected error while fetching from \"+t)):void a++}),50)}))}for(var o=0;o<t.length;o++){var s=t[o][0].trace.geojson;\"string\"==typeof s&&(e[s]?\"pending\"===e[s]&&r.push(i(s)):(e[s]=\"pending\",r.push(a(s))))}return r},computeBbox:function(t){return s.default(t)}}},{\"./identity\":747,\"./is_plain_object\":750,\"./loggers\":753,\"./nested_property\":757,\"./polygon\":761,\"@turf/area\":59,\"@turf/bbox\":60,\"@turf/centroid\":61,\"country-regex\":139,d3:169}],743:[function(t,e,r){\"use strict\";var n=t(\"../constants/numerical\").BADNUM;r.calcTraceToLineCoords=function(t){for(var e=t[0].trace.connectgaps,r=[],a=[],i=0;i<t.length;i++){var o=t[i].lonlat;o[0]!==n?a.push(o):!e&&a.length>0&&(r.push(a),a=[])}return a.length>0&&r.push(a),r},r.makeLine=function(t){return 1===t.length?{type:\"LineString\",coordinates:t[0]}:{type:\"MultiLineString\",coordinates:t}},r.makePolygon=function(t){if(1===t.length)return{type:\"Polygon\",coordinates:t};for(var e=new Array(t.length),r=0;r<t.length;r++)e[r]=[t[r]];return{type:\"MultiPolygon\",coordinates:e}},r.makeBlank=function(){return{type:\"Point\",coordinates:[]}}},{\"../constants/numerical\":724}],744:[function(t,e,r){\"use strict\";var n,a,i,o=t(\"./mod\").mod;function s(t,e,r,n,a,i,o,s){var l=r-t,c=a-t,u=o-a,h=n-e,f=i-e,p=s-i,d=l*p-u*h;if(0===d)return null;var g=(c*p-u*f)/d,m=(c*h-l*f)/d;return m<0||m>1||g<0||g>1?null:{x:t+l*g,y:e+h*g}}function l(t,e,r,n,a){var i=n*t+a*e;if(i<0)return n*n+a*a;if(i>r){var o=n-t,s=a-e;return o*o+s*s}var l=n*e-a*t;return l*l/r}r.segmentsIntersect=s,r.segmentDistance=function(t,e,r,n,a,i,o,c){if(s(t,e,r,n,a,i,o,c))return 0;var u=r-t,h=n-e,f=o-a,p=c-i,d=u*u+h*h,g=f*f+p*p,m=Math.min(l(u,h,d,a-t,i-e),l(u,h,d,o-t,c-e),l(f,p,g,t-a,e-i),l(f,p,g,r-a,n-i));return Math.sqrt(m)},r.getTextLocation=function(t,e,r,s){if(t===a&&s===i||(n={},a=t,i=s),n[r])return n[r];var l=t.getPointAtLength(o(r-s/2,e)),c=t.getPointAtLength(o(r+s/2,e)),u=Math.atan((c.y-l.y)/(c.x-l.x)),h=t.getPointAtLength(o(r,e)),f={x:(4*h.x+l.x+c.x)/6,y:(4*h.y+l.y+c.y)/6,theta:u};return n[r]=f,f},r.clearLocationCache=function(){a=null},r.getVisibleSegment=function(t,e,r){var n,a,i=e.left,o=e.right,s=e.top,l=e.bottom,c=0,u=t.getTotalLength(),h=u;function f(e){var r=t.getPointAtLength(e);0===e?n=r:e===u&&(a=r);var c=r.x<i?i-r.x:r.x>o?r.x-o:0,h=r.y<s?s-r.y:r.y>l?r.y-l:0;return Math.sqrt(c*c+h*h)}for(var p=f(c);p;){if((c+=p+r)>h)return;p=f(c)}for(p=f(h);p;){if(c>(h-=p+r))return;p=f(h)}return{min:c,max:h,len:h-c,total:u,isClosed:0===c&&h===u&&Math.abs(n.x-a.x)<.1&&Math.abs(n.y-a.y)<.1}},r.findPointOnPath=function(t,e,r,n){for(var a,i,o,s=(n=n||{}).pathLength||t.getTotalLength(),l=n.tolerance||.001,c=n.iterationLimit||30,u=t.getPointAtLength(0)[r]>t.getPointAtLength(s)[r]?-1:1,h=0,f=0,p=s;h<c;){if(a=(f+p)/2,o=(i=t.getPointAtLength(a))[r]-e,Math.abs(o)<l)return i;u*o>0?p=a:f=a,h++}return i}},{\"./mod\":756}],745:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"tinycolor2\"),i=t(\"color-normalize\"),o=t(\"../components/colorscale\"),s=t(\"../components/color/attributes\").defaultLine,l=t(\"./array\").isArrayOrTypedArray,c=i(s);function u(t,e){var r=t;return r[3]*=e,r}function h(t){if(n(t))return c;var e=i(t);return e.length?e:c}function f(t){return n(t)?t:1}e.exports={formatColor:function(t,e,r){var n,a,s,p,d,g=t.color,m=l(g),v=l(e),y=o.extractOpts(t),x=[];if(n=void 0!==y.colorscale?o.makeColorScaleFuncFromTrace(t):h,a=m?function(t,e){return void 0===t[e]?c:i(n(t[e]))}:h,s=v?function(t,e){return void 0===t[e]?1:f(t[e])}:f,m||v)for(var b=0;b<r;b++)p=a(g,b),d=s(e,b),x[b]=u(p,d);else x=u(i(g),e);return x},parseColorScale:function(t){var e=o.extractOpts(t),r=e.colorscale;return e.reversescale&&(r=o.flipScale(e.colorscale)),r.map((function(t){var e=t[0],r=a(t[1]).toRgb();return{index:e,rgb:[r.r,r.g,r.b,r.a]}}))}}},{\"../components/color/attributes\":614,\"../components/colorscale\":627,\"./array\":731,\"color-normalize\":125,\"fast-isnumeric\":241,tinycolor2:548}],746:[function(t,e,r){\"use strict\";var n=t(\"./identity\");function a(t){return[t]}e.exports={keyFun:function(t){return t.key},repeat:a,descend:n,wrap:a,unwrap:function(t){return t[0]}}},{\"./identity\":747}],747:[function(t,e,r){\"use strict\";e.exports=function(t){return t}},{}],748:[function(t,e,r){\"use strict\";e.exports=function(t,e){if(!e)return t;var r=1/Math.abs(e),n=r>1?(r*t+r*e)/r:t+e,a=String(n).length;if(a>16){var i=String(e).length;if(a>=String(t).length+i){var o=parseFloat(n).toPrecision(12);-1===o.indexOf(\"e+\")&&(n=+o)}}return n}},{}],749:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"d3-time-format\").utcFormat,i=t(\"fast-isnumeric\"),o=t(\"../constants/numerical\"),s=o.FP_SAFE,l=o.BADNUM,c=e.exports={};c.nestedProperty=t(\"./nested_property\"),c.keyedContainer=t(\"./keyed_container\"),c.relativeAttr=t(\"./relative_attr\"),c.isPlainObject=t(\"./is_plain_object\"),c.toLogRange=t(\"./to_log_range\"),c.relinkPrivateKeys=t(\"./relink_private\");var u=t(\"./array\");c.isTypedArray=u.isTypedArray,c.isArrayOrTypedArray=u.isArrayOrTypedArray,c.isArray1D=u.isArray1D,c.ensureArray=u.ensureArray,c.concat=u.concat,c.maxRowLength=u.maxRowLength,c.minRowLength=u.minRowLength;var h=t(\"./mod\");c.mod=h.mod,c.modHalf=h.modHalf;var f=t(\"./coerce\");c.valObjectMeta=f.valObjectMeta,c.coerce=f.coerce,c.coerce2=f.coerce2,c.coerceFont=f.coerceFont,c.coerceHoverinfo=f.coerceHoverinfo,c.coerceSelectionMarkerOpacity=f.coerceSelectionMarkerOpacity,c.validate=f.validate;var p=t(\"./dates\");c.dateTime2ms=p.dateTime2ms,c.isDateTime=p.isDateTime,c.ms2DateTime=p.ms2DateTime,c.ms2DateTimeLocal=p.ms2DateTimeLocal,c.cleanDate=p.cleanDate,c.isJSDate=p.isJSDate,c.formatDate=p.formatDate,c.incrementMonth=p.incrementMonth,c.dateTick0=p.dateTick0,c.dfltRange=p.dfltRange,c.findExactDates=p.findExactDates,c.MIN_MS=p.MIN_MS,c.MAX_MS=p.MAX_MS;var d=t(\"./search\");c.findBin=d.findBin,c.sorterAsc=d.sorterAsc,c.sorterDes=d.sorterDes,c.distinctVals=d.distinctVals,c.roundUp=d.roundUp,c.sort=d.sort,c.findIndexOfMin=d.findIndexOfMin;var g=t(\"./stats\");c.aggNums=g.aggNums,c.len=g.len,c.mean=g.mean,c.median=g.median,c.midRange=g.midRange,c.variance=g.variance,c.stdev=g.stdev,c.interp=g.interp;var m=t(\"./matrix\");c.init2dArray=m.init2dArray,c.transposeRagged=m.transposeRagged,c.dot=m.dot,c.translationMatrix=m.translationMatrix,c.rotationMatrix=m.rotationMatrix,c.rotationXYMatrix=m.rotationXYMatrix,c.apply2DTransform=m.apply2DTransform,c.apply2DTransform2=m.apply2DTransform2;var v=t(\"./angles\");c.deg2rad=v.deg2rad,c.rad2deg=v.rad2deg,c.angleDelta=v.angleDelta,c.angleDist=v.angleDist,c.isFullCircle=v.isFullCircle,c.isAngleInsideSector=v.isAngleInsideSector,c.isPtInsideSector=v.isPtInsideSector,c.pathArc=v.pathArc,c.pathSector=v.pathSector,c.pathAnnulus=v.pathAnnulus;var y=t(\"./anchor_utils\");c.isLeftAnchor=y.isLeftAnchor,c.isCenterAnchor=y.isCenterAnchor,c.isRightAnchor=y.isRightAnchor,c.isTopAnchor=y.isTopAnchor,c.isMiddleAnchor=y.isMiddleAnchor,c.isBottomAnchor=y.isBottomAnchor;var x=t(\"./geometry2d\");c.segmentsIntersect=x.segmentsIntersect,c.segmentDistance=x.segmentDistance,c.getTextLocation=x.getTextLocation,c.clearLocationCache=x.clearLocationCache,c.getVisibleSegment=x.getVisibleSegment,c.findPointOnPath=x.findPointOnPath;var b=t(\"./extend\");c.extendFlat=b.extendFlat,c.extendDeep=b.extendDeep,c.extendDeepAll=b.extendDeepAll,c.extendDeepNoArrays=b.extendDeepNoArrays;var _=t(\"./loggers\");c.log=_.log,c.warn=_.warn,c.error=_.error;var w=t(\"./regex\");c.counterRegex=w.counter;var T=t(\"./throttle\");c.throttle=T.throttle,c.throttleDone=T.done,c.clearThrottle=T.clear;var k=t(\"./dom\");function M(t){var e={};for(var r in t)for(var n=t[r],a=0;a<n.length;a++)e[n[a]]=+r;return e}c.getGraphDiv=k.getGraphDiv,c.isPlotDiv=k.isPlotDiv,c.removeElement=k.removeElement,c.addStyleRule=k.addStyleRule,c.addRelatedStyleRule=k.addRelatedStyleRule,c.deleteRelatedStyleRule=k.deleteRelatedStyleRule,c.clearResponsive=t(\"./clear_responsive\"),c.makeTraceGroups=t(\"./make_trace_groups\"),c._=t(\"./localize\"),c.notifier=t(\"./notifier\"),c.filterUnique=t(\"./filter_unique\"),c.filterVisible=t(\"./filter_visible\"),c.pushUnique=t(\"./push_unique\"),c.increment=t(\"./increment\"),c.cleanNumber=t(\"./clean_number\"),c.ensureNumber=function(t){return i(t)?(t=Number(t))<-s||t>s?l:i(t)?Number(t):l:l},c.isIndex=function(t,e){return!(void 0!==e&&t>=e)&&(i(t)&&t>=0&&t%1==0)},c.noop=t(\"./noop\"),c.identity=t(\"./identity\"),c.repeat=function(t,e){for(var r=new Array(e),n=0;n<e;n++)r[n]=t;return r},c.swapAttrs=function(t,e,r,n){r||(r=\"x\"),n||(n=\"y\");for(var a=0;a<e.length;a++){var i=e[a],o=c.nestedProperty(t,i.replace(\"?\",r)),s=c.nestedProperty(t,i.replace(\"?\",n)),l=o.get();o.set(s.get()),s.set(l)}},c.raiseToTop=function(t){t.parentNode.appendChild(t)},c.cancelTransition=function(t){return t.transition().duration(0)},c.constrain=function(t,e,r){return e>r?Math.max(r,Math.min(e,t)):Math.max(e,Math.min(r,t))},c.bBoxIntersect=function(t,e,r){return r=r||0,t.left<=e.right+r&&e.left<=t.right+r&&t.top<=e.bottom+r&&e.top<=t.bottom+r},c.simpleMap=function(t,e,r,n,a){for(var i=t.length,o=new Array(i),s=0;s<i;s++)o[s]=e(t[s],r,n,a);return o},c.randstr=function t(e,r,n,a){if(n||(n=16),void 0===r&&(r=24),r<=0)return\"0\";var i,o,s=Math.log(Math.pow(2,r))/Math.log(n),l=\"\";for(i=2;s===1/0;i*=2)s=Math.log(Math.pow(2,r/i))/Math.log(n)*i;var u=s-Math.floor(s);for(i=0;i<Math.floor(s);i++)l=Math.floor(Math.random()*n).toString(n)+l;u&&(o=Math.pow(n,u),l=Math.floor(Math.random()*o).toString(n)+l);var h=parseInt(l,n);return e&&e[l]||h!==1/0&&h>=Math.pow(2,r)?a>10?(c.warn(\"randstr failed uniqueness\"),l):t(e,r,n,(a||0)+1):l},c.OptionControl=function(t,e){t||(t={}),e||(e=\"opt\");var r={optionList:[],_newoption:function(n){n[e]=t,r[n.name]=n,r.optionList.push(n)}};return r[\"_\"+e]=t,r},c.smooth=function(t,e){if((e=Math.round(e)||0)<2)return t;var r,n,a,i,o=t.length,s=2*o,l=2*e-1,c=new Array(l),u=new Array(o);for(r=0;r<l;r++)c[r]=(1-Math.cos(Math.PI*(r+1)/e))/(2*e);for(r=0;r<o;r++){for(i=0,n=0;n<l;n++)(a=r+n+1-e)<-o?a-=s*Math.round(a/s):a>=s&&(a-=s*Math.floor(a/s)),a<0?a=-1-a:a>=o&&(a=s-1-a),i+=t[a]*c[n];u[r]=i}return u},c.syncOrAsync=function(t,e,r){var n;function a(){return c.syncOrAsync(t,e,r)}for(;t.length;)if((n=(0,t.splice(0,1)[0])(e))&&n.then)return n.then(a).then(void 0,c.promiseError);return r&&r(e)},c.stripTrailingSlash=function(t){return\"/\"===t.substr(-1)?t.substr(0,t.length-1):t},c.noneOrAll=function(t,e,r){if(t){var n,a=!1,i=!0;for(n=0;n<r.length;n++)null!=t[r[n]]?a=!0:i=!1;if(a&&!i)for(n=0;n<r.length;n++)t[r[n]]=e[r[n]]}},c.mergeArray=function(t,e,r,n){var a=\"function\"==typeof n;if(c.isArrayOrTypedArray(t))for(var i=Math.min(t.length,e.length),o=0;o<i;o++){var s=t[o];e[o][r]=a?n(s):s}},c.mergeArrayCastPositive=function(t,e,r){return c.mergeArray(t,e,r,(function(t){var e=+t;return isFinite(e)&&e>0?e:0}))},c.fillArray=function(t,e,r,n){if(n=n||c.identity,c.isArrayOrTypedArray(t))for(var a=0;a<e.length;a++)e[a][r]=n(t[a])},c.castOption=function(t,e,r,n){n=n||c.identity;var a=c.nestedProperty(t,r).get();return c.isArrayOrTypedArray(a)?Array.isArray(e)&&c.isArrayOrTypedArray(a[e[0]])?n(a[e[0]][e[1]]):n(a[e]):a},c.extractOption=function(t,e,r,n){if(r in t)return t[r];var a=c.nestedProperty(e,n).get();return Array.isArray(a)?void 0:a},c.tagSelected=function(t,e,r){var n,a,i=e.selectedpoints,o=e._indexToPoints;o&&(n=M(o));for(var s=0;s<i.length;s++){var l=i[s];if(c.isIndex(l)||c.isArrayOrTypedArray(l)&&c.isIndex(l[0])&&c.isIndex(l[1])){var u=n?n[l]:l,h=r?r[u]:u;void 0!==(a=h)&&a<t.length&&(t[h].selected=1)}}},c.selIndices2selPoints=function(t){var e=t.selectedpoints,r=t._indexToPoints;if(r){for(var n=M(r),a=[],i=0;i<e.length;i++){var o=e[i];if(c.isIndex(o)){var s=n[o];c.isIndex(s)&&a.push(s)}}return a}return e},c.getTargetArray=function(t,e){var r=e.target;if(\"string\"==typeof r&&r){var n=c.nestedProperty(t,r).get();return!!Array.isArray(n)&&n}return!!Array.isArray(r)&&r},c.minExtend=function(t,e){var r={};\"object\"!=typeof e&&(e={});var n,a,i,o=Object.keys(t);for(n=0;n<o.length;n++)i=t[a=o[n]],\"_\"!==a.charAt(0)&&\"function\"!=typeof i&&(\"module\"===a?r[a]=i:Array.isArray(i)?r[a]=\"colorscale\"===a?i.slice():i.slice(0,3):c.isTypedArray(i)?r[a]=i.subarray(0,3):r[a]=i&&\"object\"==typeof i?c.minExtend(t[a],e[a]):i);for(o=Object.keys(e),n=0;n<o.length;n++)\"object\"==typeof(i=e[a=o[n]])&&a in r&&\"object\"==typeof r[a]||(r[a]=i);return r},c.titleCase=function(t){return t.charAt(0).toUpperCase()+t.substr(1)},c.containsAny=function(t,e){for(var r=0;r<e.length;r++)if(-1!==t.indexOf(e[r]))return!0;return!1},c.isIE=function(){return\"undefined\"!=typeof window.navigator.msSaveBlob};var A=/MSIE [1-9]\\./;c.isIE9orBelow=function(){return c.isIE()&&A.test(window.navigator.userAgent)};var S=/Version\\/[\\d\\.]+.*Safari/;c.isSafari=function(){return S.test(window.navigator.userAgent)};var E=/iPad|iPhone|iPod/;c.isIOS=function(){return E.test(window.navigator.userAgent)},c.isD3Selection=function(t){return t&&\"function\"==typeof t.classed},c.ensureSingle=function(t,e,r,n){var a=t.select(e+(r?\".\"+r:\"\"));if(a.size())return a;var i=t.append(e);return r&&i.classed(r,!0),n&&i.call(n),i},c.ensureSingleById=function(t,e,r,n){var a=t.select(e+\"#\"+r);if(a.size())return a;var i=t.append(e).attr(\"id\",r);return n&&i.call(n),i},c.objectFromPath=function(t,e){for(var r,n=t.split(\".\"),a=r={},i=0;i<n.length;i++){var o=n[i],s=null,l=n[i].match(/(.*)\\[([0-9]+)\\]/);l?(o=l[1],s=l[2],r=r[o]=[],i===n.length-1?r[s]=e:r[s]={},r=r[s]):(i===n.length-1?r[o]=e:r[o]={},r=r[o])}return a};var C=/^([^\\[\\.]+)\\.(.+)?/,L=/^([^\\.]+)\\[([0-9]+)\\](\\.)?(.+)?/;c.expandObjectPaths=function(t){var e,r,n,a,i,o,s;if(\"object\"==typeof t&&!Array.isArray(t))for(r in t)t.hasOwnProperty(r)&&((e=r.match(C))?(a=t[r],n=e[1],delete t[r],t[n]=c.extendDeepNoArrays(t[n]||{},c.objectFromPath(r,c.expandObjectPaths(a))[n])):(e=r.match(L))?(a=t[r],n=e[1],i=parseInt(e[2]),delete t[r],t[n]=t[n]||[],\".\"===e[3]?(s=e[4],o=t[n][i]=t[n][i]||{},c.extendDeepNoArrays(o,c.objectFromPath(s,c.expandObjectPaths(a)))):t[n][i]=c.expandObjectPaths(a)):t[r]=c.expandObjectPaths(t[r]));return t},c.numSeparate=function(t,e,r){if(r||(r=!1),\"string\"!=typeof e||0===e.length)throw new Error(\"Separator string required for formatting!\");\"number\"==typeof t&&(t=String(t));var n=/(\\d+)(\\d{3})/,a=e.charAt(0),i=e.charAt(1),o=t.split(\".\"),s=o[0],l=o.length>1?a+o[1]:\"\";if(i&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,\"$1\"+i+\"$2\");return s+l},c.TEMPLATE_STRING_REGEX=/%{([^\\s%{}:]*)([:|\\|][^}]*)?}/g;var P=/^\\w*$/;c.templateString=function(t,e){var r={};return t.replace(c.TEMPLATE_STRING_REGEX,(function(t,n){var a;return P.test(n)?a=e[n]:(r[n]=r[n]||c.nestedProperty(e,n).get,a=r[n]()),c.isValidTextValue(a)?a:\"\"}))};var I={max:10,count:0,name:\"hovertemplate\"};c.hovertemplateString=function(){return D.apply(I,arguments)};var z={max:10,count:0,name:\"texttemplate\"};c.texttemplateString=function(){return D.apply(z,arguments)};var O=/^[:|\\|]/;function D(t,e,r){var i=this,o=arguments;e||(e={});var s={};return t.replace(c.TEMPLATE_STRING_REGEX,(function(t,l,u){var h,f,p,d;for(p=3;p<o.length;p++)if(h=o[p]){if(h.hasOwnProperty(l)){f=h[l];break}if(P.test(l)||(f=s[l]||c.nestedProperty(h,l).get())&&(s[l]=f),void 0!==f)break}if(void 0===f&&i)return i.count<i.max&&(c.warn(\"Variable '\"+l+\"' in \"+i.name+\" could not be found!\"),f=t),i.count===i.max&&c.warn(\"Too many \"+i.name+\" warnings - additional warnings will be suppressed\"),i.count++,t;if(u){if(\":\"===u[0]&&(f=(d=r?r.numberFormat:n.format)(u.replace(O,\"\"))(f)),\"|\"===u[0]){d=r?r.timeFormat:a;var g=c.dateTime2ms(f);f=c.formatDate(g,u.replace(O,\"\"),!1,d)}}else e.hasOwnProperty(l+\"Label\")&&(f=e[l+\"Label\"]);return f}))}c.subplotSort=function(t,e){for(var r=Math.min(t.length,e.length)+1,n=0,a=0,i=0;i<r;i++){var o=t.charCodeAt(i)||0,s=e.charCodeAt(i)||0,l=o>=48&&o<=57,c=s>=48&&s<=57;if(l&&(n=10*n+o-48),c&&(a=10*a+s-48),!l||!c){if(n!==a)return n-a;if(o!==s)return o-s}}return a-n};var R=2e9;c.seedPseudoRandom=function(){R=2e9},c.pseudoRandom=function(){var t=R;return R=(69069*R+1)%4294967296,Math.abs(R-t)<429496729?c.pseudoRandom():R/4294967296},c.fillText=function(t,e,r){var n=Array.isArray(r)?function(t){r.push(t)}:function(t){r.text=t},a=c.extractOption(t,e,\"htx\",\"hovertext\");if(c.isValidTextValue(a))return n(a);var i=c.extractOption(t,e,\"tx\",\"text\");return c.isValidTextValue(i)?n(i):void 0},c.isValidTextValue=function(t){return t||0===t},c.formatPercent=function(t,e){e=e||0;for(var r=(Math.round(100*t*Math.pow(10,e))*Math.pow(.1,e)).toFixed(e)+\"%\",n=0;n<e;n++)-1!==r.indexOf(\".\")&&(r=(r=r.replace(\"0%\",\"%\")).replace(\".%\",\"%\"));return r},c.isHidden=function(t){var e=window.getComputedStyle(t).display;return!e||\"none\"===e},c.getTextTransform=function(t){var e=t.noCenter,r=t.textX,n=t.textY,a=t.targetX,i=t.targetY,o=t.anchorX||0,s=t.anchorY||0,l=t.rotate,c=t.scale;return c?c>1&&(c=1):c=0,\"translate(\"+(a-c*(r+o))+\",\"+(i-c*(n+s))+\")\"+(c<1?\"scale(\"+c+\")\":\"\")+(l?\"rotate(\"+l+(e?\"\":\" \"+r+\" \"+n)+\")\":\"\")},c.ensureUniformFontSize=function(t,e){var r=c.extendFlat({},e);return r.size=Math.max(e.size,t._fullLayout.uniformtext.minsize||0),r}},{\"../constants/numerical\":724,\"./anchor_utils\":729,\"./angles\":730,\"./array\":731,\"./clean_number\":732,\"./clear_responsive\":734,\"./coerce\":735,\"./dates\":736,\"./dom\":737,\"./extend\":739,\"./filter_unique\":740,\"./filter_visible\":741,\"./geometry2d\":744,\"./identity\":747,\"./increment\":748,\"./is_plain_object\":750,\"./keyed_container\":751,\"./localize\":752,\"./loggers\":753,\"./make_trace_groups\":754,\"./matrix\":755,\"./mod\":756,\"./nested_property\":757,\"./noop\":758,\"./notifier\":759,\"./push_unique\":763,\"./regex\":765,\"./relative_attr\":766,\"./relink_private\":767,\"./search\":768,\"./stats\":771,\"./throttle\":774,\"./to_log_range\":775,d3:169,\"d3-time-format\":166,\"fast-isnumeric\":241}],750:[function(t,e,r){\"use strict\";e.exports=function(t){return window&&window.process&&window.process.versions?\"[object Object]\"===Object.prototype.toString.call(t):\"[object Object]\"===Object.prototype.toString.call(t)&&Object.getPrototypeOf(t)===Object.prototype}},{}],751:[function(t,e,r){\"use strict\";var n=t(\"./nested_property\"),a=/^\\w*$/;e.exports=function(t,e,r,i){var o,s,l;r=r||\"name\",i=i||\"value\";var c={};e&&e.length?(l=n(t,e),s=l.get()):s=t,e=e||\"\";var u={};if(s)for(o=0;o<s.length;o++)u[s[o][r]]=o;var h=a.test(i),f={set:function(t,e){var a=null===e?4:0;if(!s){if(!l||4===a)return;s=[],l.set(s)}var o=u[t];if(void 0===o){if(4===a)return;a|=3,o=s.length,u[t]=o}else e!==(h?s[o][i]:n(s[o],i).get())&&(a|=2);var p=s[o]=s[o]||{};return p[r]=t,h?p[i]=e:n(p,i).set(e),null!==e&&(a&=-5),c[o]=c[o]|a,f},get:function(t){if(s){var e=u[t];return void 0===e?void 0:h?s[e][i]:n(s[e],i).get()}},rename:function(t,e){var n=u[t];return void 0===n||(c[n]=1|c[n],u[e]=n,delete u[t],s[n][r]=e),f},remove:function(t){var e=u[t];if(void 0===e)return f;var a=s[e];if(Object.keys(a).length>2)return c[e]=2|c[e],f.set(t,null);if(h){for(o=e;o<s.length;o++)c[o]=3|c[o];for(o=e;o<s.length;o++)u[s[o][r]]--;s.splice(e,1),delete u[t]}else n(a,i).set(null),c[e]=6|c[e];return f},constructUpdate:function(){for(var t,a,o={},l=Object.keys(c),u=0;u<l.length;u++)a=l[u],t=e+\"[\"+a+\"]\",s[a]?(1&c[a]&&(o[t+\".\"+r]=s[a][r]),2&c[a]&&(o[t+\".\"+i]=h?4&c[a]?null:s[a][i]:4&c[a]?null:n(s[a],i).get())):o[t]=null;return o}};return f}},{\"./nested_property\":757}],752:[function(t,e,r){\"use strict\";var n=t(\"../registry\");e.exports=function(t,e){for(var r=t._context.locale,a=0;a<2;a++){for(var i=t._context.locales,o=0;o<2;o++){var s=(i[r]||{}).dictionary;if(s){var l=s[e];if(l)return l}i=n.localeRegistry}var c=r.split(\"-\")[0];if(c===r)break;r=c}return e}},{\"../registry\":881}],753:[function(t,e,r){\"use strict\";var n=t(\"../plot_api/plot_config\").dfltConfig,a=t(\"./notifier\"),i=e.exports={};function o(t,e){if(t&&t.apply)try{return void t.apply(console,e)}catch(t){}for(var r=0;r<e.length;r++)try{t(e[r])}catch(t){console.log(e[r])}}i.log=function(){var t;if(n.logging>1){var e=[\"LOG:\"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);o(console.trace||console.log,e)}if(n.notifyOnLogging>1){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);a(r.join(\"<br>\"),\"long\")}},i.warn=function(){var t;if(n.logging>0){var e=[\"WARN:\"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);o(console.trace||console.log,e)}if(n.notifyOnLogging>0){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);a(r.join(\"<br>\"),\"stick\")}},i.error=function(){var t;if(n.logging>0){var e=[\"ERROR:\"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);o(console.error,e)}if(n.notifyOnLogging>0){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);a(r.join(\"<br>\"),\"stick\")}}},{\"../plot_api/plot_config\":785,\"./notifier\":759}],754:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports=function(t,e,r){var a=t.selectAll(\"g.\"+r.replace(/\\s/g,\".\")).data(e,(function(t){return t[0].trace.uid}));a.exit().remove(),a.enter().append(\"g\").attr(\"class\",r),a.order();var i=t.classed(\"rangeplot\")?\"nodeRangePlot3\":\"node3\";return a.each((function(t){t[0][i]=n.select(this)})),a}},{d3:169}],755:[function(t,e,r){\"use strict\";r.init2dArray=function(t,e){for(var r=new Array(t),n=0;n<t;n++)r[n]=new Array(e);return r},r.transposeRagged=function(t){var e,r,n=0,a=t.length;for(e=0;e<a;e++)n=Math.max(n,t[e].length);var i=new Array(n);for(e=0;e<n;e++)for(i[e]=new Array(a),r=0;r<a;r++)i[e][r]=t[r][e];return i},r.dot=function(t,e){if(!t.length||!e.length||t.length!==e.length)return null;var n,a,i=t.length;if(t[0].length)for(n=new Array(i),a=0;a<i;a++)n[a]=r.dot(t[a],e);else if(e[0].length){var o=r.transposeRagged(e);for(n=new Array(o.length),a=0;a<o.length;a++)n[a]=r.dot(t,o[a])}else for(n=0,a=0;a<i;a++)n+=t[a]*e[a];return n},r.translationMatrix=function(t,e){return[[1,0,t],[0,1,e],[0,0,1]]},r.rotationMatrix=function(t){var e=t*Math.PI/180;return[[Math.cos(e),-Math.sin(e),0],[Math.sin(e),Math.cos(e),0],[0,0,1]]},r.rotationXYMatrix=function(t,e,n){return r.dot(r.dot(r.translationMatrix(e,n),r.rotationMatrix(t)),r.translationMatrix(-e,-n))},r.apply2DTransform=function(t){return function(){var e=arguments;3===e.length&&(e=e[0]);var n=1===arguments.length?e[0]:[e[0],e[1]];return r.dot(t,[n[0],n[1],1]).slice(0,2)}},r.apply2DTransform2=function(t){var e=r.apply2DTransform(t);return function(t){return e(t.slice(0,2)).concat(e(t.slice(2,4)))}}},{}],756:[function(t,e,r){\"use strict\";e.exports={mod:function(t,e){var r=t%e;return r<0?r+e:r},modHalf:function(t,e){return Math.abs(t)>e/2?t-Math.round(t/e)*e:t}}},{}],757:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./array\").isArrayOrTypedArray;function i(t,e){return function(){var r,n,o,s,l,c=t;for(s=0;s<e.length-1;s++){if(-1===(r=e[s])){for(n=!0,o=[],l=0;l<c.length;l++)o[l]=i(c[l],e.slice(s+1))(),o[l]!==o[0]&&(n=!1);return n?o[0]:o}if(\"number\"==typeof r&&!a(c))return;if(\"object\"!=typeof(c=c[r])||null===c)return}if(\"object\"==typeof c&&null!==c&&null!==(o=c[e[s]]))return o}}e.exports=function(t,e){if(n(e))e=String(e);else if(\"string\"!=typeof e||\"[-1]\"===e.substr(e.length-4))throw\"bad property string\";for(var r,a,o,s=0,c=e.split(\".\");s<c.length;){if(r=String(c[s]).match(/^([^\\[\\]]*)((\\[\\-?[0-9]*\\])+)$/)){if(r[1])c[s]=r[1];else{if(0!==s)throw\"bad property string\";c.splice(0,1)}for(a=r[2].substr(1,r[2].length-2).split(\"][\"),o=0;o<a.length;o++)s++,c.splice(s,0,Number(a[o]))}s++}return\"object\"!=typeof t?function(t,e,r){return{set:function(){throw\"bad container\"},get:function(){},astr:e,parts:r,obj:t}}(t,e,c):{set:l(t,c,e),get:i(t,c),astr:e,parts:c,obj:t}};var o=/(^|\\.)args\\[/;function s(t,e){return void 0===t||null===t&&!e.match(o)}function l(t,e,r){return function(n){var i,o,l=t,f=\"\",p=[[t,f]],d=s(n,r);for(o=0;o<e.length-1;o++){if(\"number\"==typeof(i=e[o])&&!a(l))throw\"array index but container is not an array\";if(-1===i){if(d=!u(l,e.slice(o+1),n,r))break;return}if(!h(l,i,e[o+1],d))break;if(\"object\"!=typeof(l=l[i])||null===l)throw\"container is not an object\";f=c(f,i),p.push([l,f])}if(d){if(o===e.length-1&&(delete l[e[o]],Array.isArray(l)&&+e[o]==l.length-1))for(;l.length&&void 0===l[l.length-1];)l.pop()}else l[e[o]]=n}}function c(t,e){var r=e;return n(e)?r=\"[\"+e+\"]\":t&&(r=\".\"+e),t+r}function u(t,e,r,n){var i,o=a(r),c=!0,u=r,f=n.replace(\"-1\",0),p=!o&&s(r,f),d=e[0];for(i=0;i<t.length;i++)f=n.replace(\"-1\",i),o&&(p=s(u=r[i%r.length],f)),p&&(c=!1),h(t,i,d,p)&&l(t[i],e,n.replace(\"-1\",i))(u);return c}function h(t,e,r,n){if(void 0===t[e]){if(n)return!1;t[e]=\"number\"==typeof r?[]:{}}return!0}},{\"./array\":731,\"fast-isnumeric\":241}],758:[function(t,e,r){\"use strict\";e.exports=function(){}},{}],759:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=[];e.exports=function(t,e){if(-1===i.indexOf(t)){i.push(t);var r=1e3;a(e)?r=e:\"long\"===e&&(r=3e3);var o=n.select(\"body\").selectAll(\".plotly-notifier\").data([0]);o.enter().append(\"div\").classed(\"plotly-notifier\",!0),o.selectAll(\".notifier-note\").data(i).enter().append(\"div\").classed(\"notifier-note\",!0).style(\"opacity\",0).each((function(t){var a=n.select(this);a.append(\"button\").classed(\"notifier-close\",!0).html(\"&times;\").on(\"click\",(function(){a.transition().call(s)}));for(var i=a.append(\"p\"),o=t.split(/<br\\s*\\/?>/g),l=0;l<o.length;l++)l&&i.append(\"br\"),i.append(\"span\").text(o[l]);\"stick\"===e?a.transition().duration(350).style(\"opacity\",1):a.transition().duration(700).style(\"opacity\",1).transition().delay(r).call(s)}))}function s(t){t.duration(700).style(\"opacity\",0).each(\"end\",(function(t){var e=i.indexOf(t);-1!==e&&i.splice(e,1),n.select(this).remove()}))}}},{d3:169,\"fast-isnumeric\":241}],760:[function(t,e,r){\"use strict\";var n=t(\"./setcursor\"),a=\"data-savedcursor\";e.exports=function(t,e){var r=t.attr(a);if(e){if(!r){for(var i=(t.attr(\"class\")||\"\").split(\" \"),o=0;o<i.length;o++){var s=i[o];0===s.indexOf(\"cursor-\")&&t.attr(a,s.substr(7)).classed(s,!1)}t.attr(a)||t.attr(a,\"!!\")}n(t,e)}else r&&(t.attr(a,null),\"!!\"===r?n(t):n(t,r))}},{\"./setcursor\":769}],761:[function(t,e,r){\"use strict\";var n=t(\"./matrix\").dot,a=t(\"../constants/numerical\").BADNUM,i=e.exports={};i.tester=function(t){var e,r=t.slice(),n=r[0][0],i=n,o=r[0][1],s=o;for(r.push(r[0]),e=1;e<r.length;e++)n=Math.min(n,r[e][0]),i=Math.max(i,r[e][0]),o=Math.min(o,r[e][1]),s=Math.max(s,r[e][1]);var l,c=!1;5===r.length&&(r[0][0]===r[1][0]?r[2][0]===r[3][0]&&r[0][1]===r[3][1]&&r[1][1]===r[2][1]&&(c=!0,l=function(t){return t[0]===r[0][0]}):r[0][1]===r[1][1]&&r[2][1]===r[3][1]&&r[0][0]===r[3][0]&&r[1][0]===r[2][0]&&(c=!0,l=function(t){return t[1]===r[0][1]}));var u=!0,h=r[0];for(e=1;e<r.length;e++)if(h[0]!==r[e][0]||h[1]!==r[e][1]){u=!1;break}return{xmin:n,xmax:i,ymin:o,ymax:s,pts:r,contains:c?function(t,e){var r=t[0],c=t[1];return!(r===a||r<n||r>i||c===a||c<o||c>s)&&(!e||!l(t))}:function(t,e){var l=t[0],c=t[1];if(l===a||l<n||l>i||c===a||c<o||c>s)return!1;var u,h,f,p,d,g=r.length,m=r[0][0],v=r[0][1],y=0;for(u=1;u<g;u++)if(h=m,f=v,m=r[u][0],v=r[u][1],!(l<(p=Math.min(h,m))||l>Math.max(h,m)||c>Math.max(f,v)))if(c<Math.min(f,v))l!==p&&y++;else{if(c===(d=m===h?c:f+(l-h)*(v-f)/(m-h)))return 1!==u||!e;c<=d&&l!==p&&y++}return y%2==1},isRect:c,degenerate:u}},i.isSegmentBent=function(t,e,r,a){var i,o,s,l=t[e],c=[t[r][0]-l[0],t[r][1]-l[1]],u=n(c,c),h=Math.sqrt(u),f=[-c[1]/h,c[0]/h];for(i=e+1;i<r;i++)if(o=[t[i][0]-l[0],t[i][1]-l[1]],(s=n(o,c))<0||s>u||Math.abs(n(o,f))>a)return!0;return!1},i.filter=function(t,e){var r=[t[0]],n=0,a=0;function o(o){t.push(o);var s=r.length,l=n;r.splice(a+1);for(var c=l+1;c<t.length;c++)(c===t.length-1||i.isSegmentBent(t,l,c+1,e))&&(r.push(t[c]),r.length<s-2&&(n=c,a=r.length-1),l=c)}t.length>1&&o(t.pop());return{addPt:o,raw:t,filtered:r}}},{\"../constants/numerical\":724,\"./matrix\":755}],762:[function(t,e,r){(function(r){\"use strict\";var n=t(\"./show_no_webgl_msg\"),a=t(\"regl\");e.exports=function(t,e){var i=t._fullLayout,o=!0;return i._glcanvas.each((function(n){if(!n.regl&&(!n.pick||i._has(\"parcoords\"))){try{n.regl=a({canvas:this,attributes:{antialias:!n.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||r.devicePixelRatio,extensions:e||[]})}catch(t){o=!1}n.regl||(o=!1),o&&this.addEventListener(\"webglcontextlost\",(function(e){t&&t.emit&&t.emit(\"plotly_webglcontextlost\",{event:e,layer:n.key})}),!1)}})),o||n({container:i._glcontainer.node()}),o}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"./show_no_webgl_msg\":770,regl:512}],763:[function(t,e,r){\"use strict\";e.exports=function(t,e){if(e instanceof RegExp){for(var r=e.toString(),n=0;n<t.length;n++)if(t[n]instanceof RegExp&&t[n].toString()===r)return t;t.push(e)}else!e&&0!==e||-1!==t.indexOf(e)||t.push(e);return t}},{}],764:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plot_api/plot_config\").dfltConfig;var i={add:function(t,e,r,n,i){var o,s;t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},s=t.undoQueue.index,t.autoplay?t.undoQueue.inSequence||(t.autoplay=!1):(!t.undoQueue.sequence||t.undoQueue.beginSequence?(o={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},t.undoQueue.queue.splice(s,t.undoQueue.queue.length-s,o),t.undoQueue.index+=1):o=t.undoQueue.queue[s-1],t.undoQueue.beginSequence=!1,o&&(o.undo.calls.unshift(e),o.undo.args.unshift(r),o.redo.calls.push(n),o.redo.args.push(i)),t.undoQueue.queue.length>a.queueLength&&(t.undoQueue.queue.shift(),t.undoQueue.index--))},startSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!0,t.undoQueue.beginSequence=!0},stopSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!1,t.undoQueue.beginSequence=!1},undo:function(t){var e,r;if(t.framework&&t.framework.isPolar)t.framework.undo();else if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r<e.undo.calls.length;r++)i.plotDo(t,e.undo.calls[r],e.undo.args[r]);t.undoQueue.inSequence=!1,t.autoplay=!1}},redo:function(t){var e,r;if(t.framework&&t.framework.isPolar)t.framework.redo();else if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r<e.redo.calls.length;r++)i.plotDo(t,e.redo.calls[r],e.redo.args[r]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}}};i.plotDo=function(t,e,r){t.autoplay=!0,r=function(t,e){for(var r,a=[],i=0;i<e.length;i++)r=e[i],a[i]=r===t?r:\"object\"==typeof r?Array.isArray(r)?n.extendDeep([],r):n.extendDeepAll({},r):r;return a}(t,r),e.apply(null,r)},e.exports=i},{\"../lib\":749,\"../plot_api/plot_config\":785}],765:[function(t,e,r){\"use strict\";r.counter=function(t,e,r,n){var a=(e||\"\")+(r?\"\":\"$\"),i=!1===n?\"\":\"^\";return\"xy\"===t?new RegExp(i+\"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?\"+a):new RegExp(i+t+\"([2-9]|[1-9][0-9]+)?\"+a)}},{}],766:[function(t,e,r){\"use strict\";var n=/^(.*)(\\.[^\\.\\[\\]]+|\\[\\d\\])$/,a=/^[^\\.\\[\\]]+$/;e.exports=function(t,e){for(;e;){var r=t.match(n);if(r)t=r[1];else{if(!t.match(a))throw new Error(\"bad relativeAttr call:\"+[t,e]);t=\"\"}if(\"^\"!==e.charAt(0))break;e=e.slice(1)}return t&&\"[\"!==e.charAt(0)?t+\".\"+e:t+e}},{}],767:[function(t,e,r){\"use strict\";var n=t(\"./array\").isArrayOrTypedArray,a=t(\"./is_plain_object\");e.exports=function t(e,r){for(var i in r){var o=r[i],s=e[i];if(s!==o)if(\"_\"===i.charAt(0)||\"function\"==typeof o){if(i in e)continue;e[i]=o}else if(n(o)&&n(s)&&a(o[0])){if(\"customdata\"===i||\"ids\"===i)continue;for(var l=Math.min(o.length,s.length),c=0;c<l;c++)s[c]!==o[c]&&a(o[c])&&a(s[c])&&t(s[c],o[c])}else a(o)&&a(s)&&(t(s,o),Object.keys(s).length||delete e[i])}}},{\"./array\":731,\"./is_plain_object\":750}],768:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./loggers\"),i=t(\"./identity\"),o=t(\"../constants/numerical\").BADNUM;function s(t,e){return t<e}function l(t,e){return t<=e}function c(t,e){return t>e}function u(t,e){return t>=e}r.findBin=function(t,e,r){if(n(e.start))return r?Math.ceil((t-e.start)/e.size-1e-9)-1:Math.floor((t-e.start)/e.size+1e-9);var i,o,h=0,f=e.length,p=0,d=f>1?(e[f-1]-e[0])/(f-1):1;for(o=d>=0?r?s:l:r?u:c,t+=1e-9*d*(r?-1:1)*(d>=0?1:-1);h<f&&p++<100;)o(e[i=Math.floor((h+f)/2)],t)?h=i+1:f=i;return p>90&&a.log(\"Long binary search...\"),h-1},r.sorterAsc=function(t,e){return t-e},r.sorterDes=function(t,e){return e-t},r.distinctVals=function(t,e){var n,a=(e||{}).unitMinDiff,i=t.slice();for(i.sort(r.sorterAsc),n=i.length-1;n>-1&&i[n]===o;n--);var s=1;a||(s=i[n]-i[0]||1);for(var l,c=s/(n||1)/1e4,u=[],h=0;h<=n;h++){var f=i[h],p=f-l;void 0===l?(u.push(f),l=f):p>c&&(s=Math.min(s,p),u.push(f),l=f)}return{vals:u,minDiff:s}},r.roundUp=function(t,e,r){for(var n,a=0,i=e.length-1,o=0,s=r?0:1,l=r?1:0,c=r?Math.ceil:Math.floor;a<i&&o++<100;)e[n=c((a+i)/2)]<=t?a=n+s:i=n-l;return e[a]},r.sort=function(t,e){for(var r=0,n=0,a=1;a<t.length;a++){var i=e(t[a],t[a-1]);if(i<0?r=1:i>0&&(n=1),r&&n)return t.sort(e)}return n?t:t.reverse()},r.findIndexOfMin=function(t,e){e=e||i;for(var r,n=1/0,a=0;a<t.length;a++){var o=e(t[a]);o<n&&(n=o,r=a)}return r}},{\"../constants/numerical\":724,\"./identity\":747,\"./loggers\":753,\"fast-isnumeric\":241}],769:[function(t,e,r){\"use strict\";e.exports=function(t,e){(t.attr(\"class\")||\"\").split(\" \").forEach((function(e){0===e.indexOf(\"cursor-\")&&t.classed(e,!1)})),e&&t.classed(\"cursor-\"+e,!0)}},{}],770:[function(t,e,r){\"use strict\";var n=t(\"../components/color\"),a=function(){};e.exports=function(t){for(var e in t)\"function\"==typeof t[e]&&(t[e]=a);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var r=document.createElement(\"div\");r.className=\"no-webgl\",r.style.cursor=\"pointer\",r.style.fontSize=\"24px\",r.style.color=n.defaults[0],r.style.position=\"absolute\",r.style.left=r.style.top=\"0px\",r.style.width=r.style.height=\"100%\",r.style[\"background-color\"]=n.lightLine,r.style[\"z-index\"]=30;var i=document.createElement(\"p\");return i.textContent=\"WebGL is not supported by your browser - visit https://get.webgl.org for more info\",i.style.position=\"relative\",i.style.top=\"50%\",i.style.left=\"50%\",i.style.height=\"30%\",i.style.width=\"50%\",i.style.margin=\"-15% 0 0 -25%\",r.appendChild(i),t.container.appendChild(r),t.container.style.background=\"#FFFFFF\",t.container.onclick=function(){window.open(\"https://get.webgl.org\")},!1}},{\"../components/color\":615}],771:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./array\").isArrayOrTypedArray;r.aggNums=function(t,e,i,o){var s,l;if((!o||o>i.length)&&(o=i.length),n(e)||(e=!1),a(i[0])){for(l=new Array(o),s=0;s<o;s++)l[s]=r.aggNums(t,e,i[s]);i=l}for(s=0;s<o;s++)n(e)?n(i[s])&&(e=t(+e,+i[s])):e=i[s];return e},r.len=function(t){return r.aggNums((function(t){return t+1}),0,t)},r.mean=function(t,e){return e||(e=r.len(t)),r.aggNums((function(t,e){return t+e}),0,t)/e},r.midRange=function(t){if(void 0!==t&&0!==t.length)return(r.aggNums(Math.max,null,t)+r.aggNums(Math.min,null,t))/2},r.variance=function(t,e,a){return e||(e=r.len(t)),n(a)||(a=r.mean(t,e)),r.aggNums((function(t,e){return t+Math.pow(e-a,2)}),0,t)/e},r.stdev=function(t,e,n){return Math.sqrt(r.variance(t,e,n))},r.median=function(t){var e=t.slice().sort();return r.interp(e,.5)},r.interp=function(t,e){if(!n(e))throw\"n should be a finite number\";if((e=e*t.length-.5)<0)return t[0];if(e>t.length-1)return t[t.length-1];var r=e%1;return r*t[Math.ceil(e)]+(1-r)*t[Math.floor(e)]}},{\"./array\":731,\"fast-isnumeric\":241}],772:[function(t,e,r){\"use strict\";var n=t(\"color-normalize\");e.exports=function(t){return t?n(t):[0,0,0,1]}},{\"color-normalize\":125}],773:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../lib\"),i=t(\"../constants/xmlns_namespaces\"),o=t(\"../constants/alignment\").LINE_SPACING;function s(t,e){return t.node().getBoundingClientRect()[e]}var l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;r.convertToTspans=function(t,e,M){var A=t.text(),E=!t.attr(\"data-notex\")&&\"undefined\"!=typeof MathJax&&A.match(l),C=n.select(t.node().parentNode);if(!C.empty()){var L=t.attr(\"class\")?t.attr(\"class\").split(\" \")[0]:\"text\";return L+=\"-math\",C.selectAll(\"svg.\"+L).remove(),C.selectAll(\"g.\"+L+\"-group\").remove(),t.style(\"display\",null).attr({\"data-unformatted\":A,\"data-math\":\"N\"}),E?(e&&e._promises||[]).push(new Promise((function(e){t.style(\"display\",\"none\");var r=parseInt(t.node().style.fontSize,10),i={fontSize:r};!function(t,e,r){var i,o,s,l;MathJax.Hub.Queue((function(){return o=a.extendDeepAll({},MathJax.Hub.config),s=MathJax.Hub.processSectionDelay,void 0!==MathJax.Hub.processSectionDelay&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:\"none\",tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]},displayAlign:\"left\"})}),(function(){if(\"SVG\"!==(i=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer(\"SVG\")}),(function(){var r=\"math-output-\"+a.randstr({},64);return l=n.select(\"body\").append(\"div\").attr({id:r}).style({visibility:\"hidden\",position:\"absolute\"}).style({\"font-size\":e.fontSize+\"px\"}).text(t.replace(c,\"\\\\lt \").replace(u,\"\\\\gt \")),MathJax.Hub.Typeset(l.node())}),(function(){var e=n.select(\"body\").select(\"#MathJax_SVG_glyphs\");if(l.select(\".MathJax_SVG\").empty()||!l.select(\"svg\").node())a.log(\"There was an error in the tex syntax.\",t),r();else{var o=l.select(\"svg\").node().getBoundingClientRect();r(l.select(\".MathJax_SVG\"),e,o)}if(l.remove(),\"SVG\"!==i)return MathJax.Hub.setRenderer(i)}),(function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)}))}(E[2],i,(function(n,a,i){C.selectAll(\"svg.\"+L).remove(),C.selectAll(\"g.\"+L+\"-group\").remove();var o=n&&n.select(\"svg\");if(!o||!o.node())return P(),void e();var l=C.append(\"g\").classed(L+\"-group\",!0).attr({\"pointer-events\":\"none\",\"data-unformatted\":A,\"data-math\":\"Y\"});l.node().appendChild(o.node()),a&&a.node()&&o.node().insertBefore(a.node().cloneNode(!0),o.node().firstChild),o.attr({class:L,height:i.height,preserveAspectRatio:\"xMinYMin meet\"}).style({overflow:\"visible\",\"pointer-events\":\"none\"});var c=t.node().style.fill||\"black\",u=o.select(\"g\");u.attr({fill:c,stroke:c});var h=s(u,\"width\"),f=s(u,\"height\"),p=+t.attr(\"x\")-h*{start:0,middle:.5,end:1}[t.attr(\"text-anchor\")||\"start\"],d=-(r||s(t,\"height\"))/4;\"y\"===L[0]?(l.attr({transform:\"rotate(\"+[-90,+t.attr(\"x\"),+t.attr(\"y\")]+\") translate(\"+[-h/2,d-f/2]+\")\"}),o.attr({x:+t.attr(\"x\"),y:+t.attr(\"y\")})):\"l\"===L[0]?o.attr({x:t.attr(\"x\"),y:d-f/2}):\"a\"===L[0]&&0!==L.indexOf(\"atitle\")?o.attr({x:0,y:d}):o.attr({x:p,y:+t.attr(\"y\")+d-f/2}),M&&M.call(t,l),e(l)}))}))):P(),t}function P(){C.empty()||(L=t.attr(\"class\")+\"-math\",C.select(\"svg.\"+L).remove()),t.text(\"\").style(\"white-space\",\"pre\"),function(t,e){e=e.replace(g,\" \");var r,s=!1,l=[],c=-1;function u(){c++;var e=document.createElementNS(i.svg,\"tspan\");n.select(e).attr({class:\"line\",dy:c*o+\"em\"}),t.appendChild(e),r=e;var a=l;if(l=[{node:e}],a.length>1)for(var s=1;s<a.length;s++)M(a[s])}function M(t){var e,a=t.type,o={};if(\"a\"===a){e=\"a\";var s=t.target,c=t.href,u=t.popup;c&&(o={\"xlink:xlink:show\":\"_blank\"===s||\"_\"!==s.charAt(0)?\"new\":\"replace\",target:s,\"xlink:xlink:href\":c},u&&(o.onclick='window.open(this.href.baseVal,this.target.baseVal,\"'+u+'\");return false;'))}else e=\"tspan\";t.style&&(o.style=t.style);var h=document.createElementNS(i.svg,e);if(\"sup\"===a||\"sub\"===a){A(r,\"\\u200b\"),r.appendChild(h);var d=document.createElementNS(i.svg,\"tspan\");A(d,\"\\u200b\"),n.select(d).attr(\"dy\",p[a]),o.dy=f[a],r.appendChild(h),r.appendChild(d)}else r.appendChild(h);n.select(h).attr(o),r=t.node=h,l.push(t)}function A(t,e){t.appendChild(document.createTextNode(e))}function E(t){if(1!==l.length){var n=l.pop();t!==n.type&&a.log(\"Start tag <\"+n.type+\"> doesnt match end tag <\"+t+\">. Pretending it did match.\",e),r=l[l.length-1].node}else a.log(\"Ignoring unexpected end tag </\"+t+\">.\",e)}y.test(e)?u():(r=t,l=[{node:t}]);for(var C=e.split(m),L=0;L<C.length;L++){var P=C[L],I=P.match(v),z=I&&I[2].toLowerCase(),O=h[z];if(\"br\"===z)u();else if(void 0===O)A(r,S(P));else if(I[1])E(z);else{var D=I[4],R={type:z},F=T(D,x);if(F?(F=F.replace(k,\"$1 fill:\"),O&&(F+=\";\"+O)):O&&(F=O),F&&(R.style=F),\"a\"===z){s=!0;var B=T(D,b);if(B){var N=document.createElement(\"a\");N.href=B,-1!==d.indexOf(N.protocol)&&(R.href=encodeURI(decodeURI(B)),R.target=T(D,_)||\"_blank\",R.popup=T(D,w))}}M(R)}}return s}(t.node(),A)&&t.style(\"pointer-events\",\"all\"),r.positionText(t),M&&M.call(t)}};var c=/(<|&lt;|&#60;)/g,u=/(>|&gt;|&#62;)/g;var h={sup:\"font-size:70%\",sub:\"font-size:70%\",b:\"font-weight:bold\",i:\"font-style:italic\",a:\"cursor:pointer\",span:\"\",em:\"font-style:italic;font-weight:bold\"},f={sub:\"0.3em\",sup:\"-0.6em\"},p={sub:\"-0.21em\",sup:\"0.42em\"},d=[\"http:\",\"https:\",\"mailto:\",\"\",void 0,\":\"],g=r.NEWLINES=/(\\r\\n?|\\n)/g,m=/(<[^<>]*>)/,v=/<(\\/?)([^ >]*)(\\s+(.*))?>/i,y=/<br(\\s+.*)?>/i;r.BR_TAG_ALL=/<br(\\s+.*)?>/gi;var x=/(^|[\\s\"'])style\\s*=\\s*(\"([^\"]*);?\"|'([^']*);?')/i,b=/(^|[\\s\"'])href\\s*=\\s*(\"([^\"]*)\"|'([^']*)')/i,_=/(^|[\\s\"'])target\\s*=\\s*(\"([^\"\\s]*)\"|'([^'\\s]*)')/i,w=/(^|[\\s\"'])popup\\s*=\\s*(\"([\\w=,]*)\"|'([\\w=,]*)')/i;function T(t,e){if(!t)return null;var r=t.match(e),n=r&&(r[3]||r[4]);return n&&S(n)}var k=/(^|;)\\s*color:/;r.plainText=function(t,e){for(var r=void 0!==(e=e||{}).len&&-1!==e.len?e.len:1/0,n=void 0!==e.allowedTags?e.allowedTags:[\"br\"],a=\"...\".length,i=t.split(m),o=[],s=\"\",l=0,c=0;c<i.length;c++){var u=i[c],h=u.match(v),f=h&&h[2].toLowerCase();if(f)-1!==n.indexOf(f)&&(o.push(u),s=f);else{var p=u.length;if(l+p<r)o.push(u),l+=p;else if(l<r){var d=r-l;s&&(\"br\"!==s||d<=a||p<=a)&&o.pop(),r>a?o.push(u.substr(0,d-a)+\"...\"):o.push(u.substr(0,d));break}s=\"\"}}return o.join(\"\")};var M={mu:\"\\u03bc\",amp:\"&\",lt:\"<\",gt:\">\",nbsp:\"\\xa0\",times:\"\\xd7\",plusmn:\"\\xb1\",deg:\"\\xb0\"},A=/&(#\\d+|#x[\\da-fA-F]+|[a-z]+);/g;function S(t){return t.replace(A,(function(t,e){return(\"#\"===e.charAt(0)?function(t){if(t>1114111)return;var e=String.fromCodePoint;if(e)return e(t);var r=String.fromCharCode;return t<=65535?r(t):r(55232+(t>>10),t%1024+56320)}(\"x\"===e.charAt(1)?parseInt(e.substr(2),16):parseInt(e.substr(1),10)):M[e])||t}))}function E(t,e,r){var n,a,i,o=r.horizontalAlign,s=r.verticalAlign||\"top\",l=t.node().getBoundingClientRect(),c=e.node().getBoundingClientRect();return a=\"bottom\"===s?function(){return l.bottom-n.height}:\"middle\"===s?function(){return l.top+(l.height-n.height)/2}:function(){return l.top},i=\"right\"===o?function(){return l.right-n.width}:\"center\"===o?function(){return l.left+(l.width-n.width)/2}:function(){return l.left},function(){return n=this.node().getBoundingClientRect(),this.style({top:a()-c.top+\"px\",left:i()-c.left+\"px\",\"z-index\":1e3}),this}}r.convertEntities=S,r.sanitizeHTML=function(t){t=t.replace(g,\" \");for(var e=document.createElement(\"p\"),r=e,a=[],i=t.split(m),o=0;o<i.length;o++){var s=i[o],l=s.match(v),c=l&&l[2].toLowerCase();if(c in h)if(l[1])a.length&&(r=a.pop());else{var u=l[4],f=T(u,x),p=f?{style:f}:{};if(\"a\"===c){var y=T(u,b);if(y){var w=document.createElement(\"a\");if(w.href=y,-1!==d.indexOf(w.protocol)){p.href=encodeURI(decodeURI(y));var k=T(u,_);k&&(p.target=k)}}}var M=document.createElement(c);r.appendChild(M),n.select(M).attr(p),r=M,a.push(M)}else r.appendChild(document.createTextNode(S(s)))}return e.innerHTML},r.lineCount=function(t){return t.selectAll(\"tspan.line\").size()||1},r.positionText=function(t,e,r){return t.each((function(){var t=n.select(this);function a(e,r){return void 0===r?null===(r=t.attr(e))&&(t.attr(e,0),r=0):t.attr(e,r),r}var i=a(\"x\",e),o=a(\"y\",r);\"text\"===this.nodeName&&t.selectAll(\"tspan.line\").attr({x:i,y:o})}))},r.makeEditable=function(t,e){var r=e.gd,a=e.delegate,i=n.dispatch(\"edit\",\"input\",\"cancel\"),o=a||t;if(t.style({\"pointer-events\":a?\"none\":\"all\"}),1!==t.size())throw new Error(\"boo\");function s(){!function(){var a=n.select(r).select(\".svg-container\"),o=a.append(\"div\"),s=t.node().style,c=parseFloat(s.fontSize||12),u=e.text;void 0===u&&(u=t.attr(\"data-unformatted\"));o.classed(\"plugin-editable editable\",!0).style({position:\"absolute\",\"font-family\":s.fontFamily||\"Arial\",\"font-size\":c,color:e.fill||s.fill||\"black\",opacity:1,\"background-color\":e.background||\"transparent\",outline:\"#ffffff33 1px solid\",margin:[-c/8+1,0,0,-1].join(\"px \")+\"px\",padding:\"0\",\"box-sizing\":\"border-box\"}).attr({contenteditable:!0}).text(u).call(E(t,a,e)).on(\"blur\",(function(){r._editing=!1,t.text(this.textContent).style({opacity:1});var e,a=n.select(this).attr(\"class\");(e=a?\".\"+a.split(\" \")[0]+\"-math-group\":\"[class*=-math-group]\")&&n.select(t.node().parentNode).select(e).style({opacity:0});var o=this.textContent;n.select(this).transition().duration(0).remove(),n.select(document).on(\"mouseup\",null),i.edit.call(t,o)})).on(\"focus\",(function(){var t=this;r._editing=!0,n.select(document).on(\"mouseup\",(function(){if(n.event.target===t)return!1;document.activeElement===o.node()&&o.node().blur()}))})).on(\"keyup\",(function(){27===n.event.which?(r._editing=!1,t.style({opacity:1}),n.select(this).style({opacity:0}).on(\"blur\",(function(){return!1})).transition().remove(),i.cancel.call(t,this.textContent)):(i.input.call(t,this.textContent),n.select(this).call(E(t,a,e)))})).on(\"keydown\",(function(){13===n.event.which&&this.blur()})).call(l)}(),t.style({opacity:0});var a,s=o.attr(\"class\");(a=s?\".\"+s.split(\" \")[0]+\"-math-group\":\"[class*=-math-group]\")&&n.select(t.node().parentNode).select(a).style({opacity:0})}function l(t){var e=t.node(),r=document.createRange();r.selectNodeContents(e);var n=window.getSelection();n.removeAllRanges(),n.addRange(r),e.focus()}return e.immediate?s():o.on(\"click\",s),n.rebind(t,i,\"on\")}},{\"../constants/alignment\":717,\"../constants/xmlns_namespaces\":725,\"../lib\":749,d3:169}],774:[function(t,e,r){\"use strict\";var n={};function a(t){t&&null!==t.timer&&(clearTimeout(t.timer),t.timer=null)}r.throttle=function(t,e,r){var i=n[t],o=Date.now();if(!i){for(var s in n)n[s].ts<o-6e4&&delete n[s];i=n[t]={ts:0,timer:null}}function l(){r(),i.ts=Date.now(),i.onDone&&(i.onDone(),i.onDone=null)}a(i),o>i.ts+e?l():i.timer=setTimeout((function(){l(),i.timer=null}),e)},r.done=function(t){var e=n[t];return e&&e.timer?new Promise((function(t){var r=e.onDone;e.onDone=function(){r&&r(),t(),e.onDone=null}})):Promise.resolve()},r.clear=function(t){if(t)a(n[t]),delete n[t];else for(var e in n)r.clear(e)}},{}],775:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\");e.exports=function(t,e){if(t>0)return Math.log(t)/Math.LN10;var r=Math.log(Math.min(e[0],e[1]))/Math.LN10;return n(r)||(r=Math.log(Math.max(e[0],e[1]))/Math.LN10-6),r}},{\"fast-isnumeric\":241}],776:[function(t,e,r){\"use strict\";var n=e.exports={},a=t(\"../plots/geo/constants\").locationmodeToLayer,i=t(\"topojson-client\").feature;n.getTopojsonName=function(t){return[t.scope.replace(/ /g,\"-\"),\"_\",t.resolution.toString(),\"m\"].join(\"\")},n.getTopojsonPath=function(t,e){return t+e+\".json\"},n.getTopojsonFeatures=function(t,e){var r=a[t.locationmode],n=e.objects[r];return i(e,n).features}},{\"../plots/geo/constants\":828,\"topojson-client\":551}],777:[function(t,e,r){\"use strict\";e.exports={moduleType:\"locale\",name:\"en-US\",dictionary:{\"Click to enter Colorscale title\":\"Click to enter Colorscale title\"},format:{date:\"%m/%d/%Y\"}}},{}],778:[function(t,e,r){\"use strict\";e.exports={moduleType:\"locale\",name:\"en\",dictionary:{\"Click to enter Colorscale title\":\"Click to enter Colourscale title\"},format:{days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],periods:[\"AM\",\"PM\"],dateTime:\"%a %b %e %X %Y\",date:\"%d/%m/%Y\",time:\"%H:%M:%S\",decimal:\".\",thousands:\",\",grouping:[3],currency:[\"$\",\"\"],year:\"%Y\",month:\"%b %Y\",dayMonth:\"%b %-d\",dayMonthYear:\"%b %-d, %Y\"}}},{}],779:[function(t,e,r){\"use strict\";var n=t(\"../registry\");e.exports=function(t){for(var e,r,a=n.layoutArrayContainers,i=n.layoutArrayRegexes,o=t.split(\"[\")[0],s=0;s<i.length;s++)if((r=t.match(i[s]))&&0===r.index){e=r[0];break}if(e||(e=a[a.indexOf(o)]),!e)return!1;var l=t.substr(e.length);return l?!!(r=l.match(/^\\[(0|[1-9][0-9]*)\\](\\.(.+))?$/))&&{array:e,index:Number(r[1]),property:r[3]||\"\"}:{array:e,index:\"\",property:\"\"}}},{\"../registry\":881}],780:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=n.extendFlat,i=n.isPlainObject,o={valType:\"flaglist\",extras:[\"none\"],flags:[\"calc\",\"clearAxisTypes\",\"plot\",\"style\",\"markerSize\",\"colorbars\"]},s={valType:\"flaglist\",extras:[\"none\"],flags:[\"calc\",\"plot\",\"legend\",\"ticks\",\"axrange\",\"layoutstyle\",\"modebar\",\"camera\",\"arraydraw\",\"colorbars\"]},l=o.flags.slice().concat([\"fullReplot\"]),c=s.flags.slice().concat(\"layoutReplot\");function u(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=!1;return e}function h(t,e,r){var n=a({},t);for(var o in n){var s=n[o];i(s)&&(n[o]=f(s,e,r,o))}return\"from-root\"===r&&(n.editType=e),n}function f(t,e,r,n){if(t.valType){var i=a({},t);if(i.editType=e,Array.isArray(t.items)){i.items=new Array(t.items.length);for(var o=0;o<t.items.length;o++)i.items[o]=f(t.items[o],e,\"from-root\")}return i}return h(t,e,\"_\"===n.charAt(0)?\"nested\":\"from-root\")}e.exports={traces:o,layout:s,traceFlags:function(){return u(l)},layoutFlags:function(){return u(c)},update:function(t,e){var r=e.editType;if(r&&\"none\"!==r)for(var n=r.split(\"+\"),a=0;a<n.length;a++)t[n[a]]=!0},overrideAll:h}},{\"../lib\":749}],781:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"gl-mat4/fromQuat\"),i=t(\"../registry\"),o=t(\"../lib\"),s=t(\"../plots/plots\"),l=t(\"../plots/cartesian/axis_ids\"),c=t(\"../components/color\"),u=l.cleanId,h=l.getFromTrace,f=i.traceIs;function p(t,e){var r=t[e],n=e.charAt(0);r&&\"paper\"!==r&&(t[e]=u(r,n))}function d(t){function e(e,r){var n=t[e],a=t.title&&t.title[r];n&&!a&&(t.title||(t.title={}),t.title[r]=t[e],delete t[e])}t&&(\"string\"!=typeof t.title&&\"number\"!=typeof t.title||(t.title={text:t.title}),e(\"titlefont\",\"font\"),e(\"titleposition\",\"position\"),e(\"titleside\",\"side\"),e(\"titleoffset\",\"offset\"))}function g(t){if(!o.isPlainObject(t))return!1;var e=t.name;return delete t.name,delete t.showlegend,(\"string\"==typeof e||\"number\"==typeof e)&&String(e)}function m(t,e,r,n){if(r&&!n)return t;if(n&&!r)return e;if(!t.trim())return e;if(!e.trim())return t;var a,i=Math.min(t.length,e.length);for(a=0;a<i&&t.charAt(a)===e.charAt(a);a++);return t.substr(0,a).trim()}function v(t){var e=\"middle\",r=\"center\";return\"string\"==typeof t&&(-1!==t.indexOf(\"top\")?e=\"top\":-1!==t.indexOf(\"bottom\")&&(e=\"bottom\"),-1!==t.indexOf(\"left\")?r=\"left\":-1!==t.indexOf(\"right\")&&(r=\"right\")),e+\" \"+r}function y(t,e){return e in t&&\"object\"==typeof t[e]&&0===Object.keys(t[e]).length}r.clearPromiseQueue=function(t){Array.isArray(t._promises)&&t._promises.length>0&&o.log(\"Clearing previous rejected promises from queue.\"),t._promises=[]},r.cleanLayout=function(t){var e,n;t||(t={}),t.xaxis1&&(t.xaxis||(t.xaxis=t.xaxis1),delete t.xaxis1),t.yaxis1&&(t.yaxis||(t.yaxis=t.yaxis1),delete t.yaxis1),t.scene1&&(t.scene||(t.scene=t.scene1),delete t.scene1);var i=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,h=(s.subplotsRegistry.ternary||{}).attrRegex,f=(s.subplotsRegistry.gl3d||{}).attrRegex,g=Object.keys(t);for(e=0;e<g.length;e++){var m=g[e];if(i&&i.test(m)){var v=t[m];v.anchor&&\"free\"!==v.anchor&&(v.anchor=u(v.anchor)),v.overlaying&&(v.overlaying=u(v.overlaying)),v.type||(v.isdate?v.type=\"date\":v.islog?v.type=\"log\":!1===v.isdate&&!1===v.islog&&(v.type=\"linear\")),\"withzero\"!==v.autorange&&\"tozero\"!==v.autorange||(v.autorange=!0,v.rangemode=\"tozero\"),delete v.islog,delete v.isdate,delete v.categories,y(v,\"domain\")&&delete v.domain,void 0!==v.autotick&&(void 0===v.tickmode&&(v.tickmode=v.autotick?\"auto\":\"linear\"),delete v.autotick),d(v)}else if(l&&l.test(m)){d(t[m].radialaxis)}else if(h&&h.test(m)){var x=t[m];d(x.aaxis),d(x.baxis),d(x.caxis)}else if(f&&f.test(m)){var b=t[m],_=b.cameraposition;if(Array.isArray(_)&&4===_[0].length){var w=_[0],T=_[1],k=_[2],M=a([],w),A=[];for(n=0;n<3;++n)A[n]=T[n]+k*M[2+4*n];b.camera={eye:{x:A[0],y:A[1],z:A[2]},center:{x:T[0],y:T[1],z:T[2]},up:{x:0,y:0,z:1}},delete b.cameraposition}d(b.xaxis),d(b.yaxis),d(b.zaxis)}}var S=Array.isArray(t.annotations)?t.annotations.length:0;for(e=0;e<S;e++){var E=t.annotations[e];o.isPlainObject(E)&&(E.ref&&(\"paper\"===E.ref?(E.xref=\"paper\",E.yref=\"paper\"):\"data\"===E.ref&&(E.xref=\"x\",E.yref=\"y\"),delete E.ref),p(E,\"xref\"),p(E,\"yref\"))}var C=Array.isArray(t.shapes)?t.shapes.length:0;for(e=0;e<C;e++){var L=t.shapes[e];o.isPlainObject(L)&&(p(L,\"xref\"),p(L,\"yref\"))}var P=t.legend;return P&&(P.x>3?(P.x=1.02,P.xanchor=\"left\"):P.x<-2&&(P.x=-.02,P.xanchor=\"right\"),P.y>3?(P.y=1.02,P.yanchor=\"bottom\"):P.y<-2&&(P.y=-.02,P.yanchor=\"top\")),d(t),\"rotate\"===t.dragmode&&(t.dragmode=\"orbit\"),c.clean(t),t.template&&t.template.layout&&r.cleanLayout(t.template.layout),t},r.cleanData=function(t){for(var e=0;e<t.length;e++){var n,a=t[e];if(\"histogramy\"===a.type&&\"xbins\"in a&&!(\"ybins\"in a)&&(a.ybins=a.xbins,delete a.xbins),a.error_y&&\"opacity\"in a.error_y){var l=c.defaults,h=a.error_y.color||(f(a,\"bar\")?c.defaultLine:l[e%l.length]);a.error_y.color=c.addOpacity(c.rgb(h),c.opacity(h)*a.error_y.opacity),delete a.error_y.opacity}if(\"bardir\"in a&&(\"h\"!==a.bardir||!f(a,\"bar\")&&\"histogram\"!==a.type.substr(0,9)||(a.orientation=\"h\",r.swapXYData(a)),delete a.bardir),\"histogramy\"===a.type&&r.swapXYData(a),\"histogramx\"!==a.type&&\"histogramy\"!==a.type||(a.type=\"histogram\"),\"scl\"in a&&!(\"colorscale\"in a)&&(a.colorscale=a.scl,delete a.scl),\"reversescl\"in a&&!(\"reversescale\"in a)&&(a.reversescale=a.reversescl,delete a.reversescl),a.xaxis&&(a.xaxis=u(a.xaxis,\"x\")),a.yaxis&&(a.yaxis=u(a.yaxis,\"y\")),f(a,\"gl3d\")&&a.scene&&(a.scene=s.subplotsRegistry.gl3d.cleanId(a.scene)),!f(a,\"pie-like\")&&!f(a,\"bar-like\"))if(Array.isArray(a.textposition))for(n=0;n<a.textposition.length;n++)a.textposition[n]=v(a.textposition[n]);else a.textposition&&(a.textposition=v(a.textposition));var p=i.getModule(a);if(p&&p.colorbar){var x=p.colorbar.container,b=x?a[x]:a;b&&b.colorscale&&(\"YIGnBu\"===b.colorscale&&(b.colorscale=\"YlGnBu\"),\"YIOrRd\"===b.colorscale&&(b.colorscale=\"YlOrRd\"))}if(\"surface\"===a.type&&o.isPlainObject(a.contours)){var _=[\"x\",\"y\",\"z\"];for(n=0;n<_.length;n++){var w=a.contours[_[n]];o.isPlainObject(w)&&(w.highlightColor&&(w.highlightcolor=w.highlightColor,delete w.highlightColor),w.highlightWidth&&(w.highlightwidth=w.highlightWidth,delete w.highlightWidth))}}if(\"candlestick\"===a.type||\"ohlc\"===a.type){var T=!1!==(a.increasing||{}).showlegend,k=!1!==(a.decreasing||{}).showlegend,M=g(a.increasing),A=g(a.decreasing);if(!1!==M&&!1!==A){var S=m(M,A,T,k);S&&(a.name=S)}else!M&&!A||a.name||(a.name=M||A)}if(Array.isArray(a.transforms)){var E=a.transforms;for(n=0;n<E.length;n++){var C=E[n];if(o.isPlainObject(C))switch(C.type){case\"filter\":C.filtersrc&&(C.target=C.filtersrc,delete C.filtersrc),C.calendar&&(C.valuecalendar||(C.valuecalendar=C.calendar),delete C.calendar);break;case\"groupby\":if(C.styles=C.styles||C.style,C.styles&&!Array.isArray(C.styles)){var L=C.styles,P=Object.keys(L);C.styles=[];for(var I=0;I<P.length;I++)C.styles.push({target:P[I],value:L[P[I]]})}}}}y(a,\"line\")&&delete a.line,\"marker\"in a&&(y(a.marker,\"line\")&&delete a.marker.line,y(a,\"marker\")&&delete a.marker),c.clean(a),a.autobinx&&(delete a.autobinx,delete a.xbins),a.autobiny&&(delete a.autobiny,delete a.ybins),d(a),a.colorbar&&d(a.colorbar),a.marker&&a.marker.colorbar&&d(a.marker.colorbar),a.line&&a.line.colorbar&&d(a.line.colorbar),a.aaxis&&d(a.aaxis),a.baxis&&d(a.baxis)}},r.swapXYData=function(t){var e;if(o.swapAttrs(t,[\"?\",\"?0\",\"d?\",\"?bins\",\"nbins?\",\"autobin?\",\"?src\",\"error_?\"]),Array.isArray(t.z)&&Array.isArray(t.z[0])&&(t.transpose?delete t.transpose:t.transpose=!0),t.error_x&&t.error_y){var r=t.error_y,n=\"copy_ystyle\"in r?r.copy_ystyle:!(r.color||r.thickness||r.width);o.swapAttrs(t,[\"error_?.copy_ystyle\"]),n&&o.swapAttrs(t,[\"error_?.color\",\"error_?.thickness\",\"error_?.width\"])}if(\"string\"==typeof t.hoverinfo){var a=t.hoverinfo.split(\"+\");for(e=0;e<a.length;e++)\"x\"===a[e]?a[e]=\"y\":\"y\"===a[e]&&(a[e]=\"x\");t.hoverinfo=a.join(\"+\")}},r.coerceTraceIndices=function(t,e){if(n(e))return[e];if(!Array.isArray(e)||!e.length)return t.data.map((function(t,e){return e}));if(Array.isArray(e)){for(var r=[],a=0;a<e.length;a++)o.isIndex(e[a],t.data.length)?r.push(e[a]):o.warn(\"trace index (\",e[a],\") is not a number or is out of bounds\");return r}return e},r.manageArrayContainers=function(t,e,r){var a=t.obj,i=t.parts,s=i.length,l=i[s-1],c=n(l);if(c&&null===e){var u=i.slice(0,s-1).join(\".\");o.nestedProperty(a,u).get().splice(l,1)}else c&&void 0===t.get()?(void 0===t.get()&&(r[t.astr]=null),t.set(e)):t.set(e)};var x=/(\\.[^\\[\\]\\.]+|\\[[^\\[\\]\\.]+\\])$/;function b(t){var e=t.search(x);if(e>0)return t.substr(0,e)}r.hasParent=function(t,e){for(var r=b(e);r;){if(r in t)return!0;r=b(r)}return!1};var _=[\"x\",\"y\",\"z\"];r.clearAxisTypes=function(t,e,r){for(var n=0;n<e.length;n++)for(var a=t._fullData[n],i=0;i<3;i++){var s=h(t,a,_[i]);if(s&&\"log\"!==s.type){var l=s._name,c=s._id.substr(1);if(\"scene\"===c.substr(0,5)){if(void 0!==r[c])continue;l=c+\".\"+l}var u=l+\".type\";void 0===r[l]&&void 0===r[u]&&o.nestedProperty(t.layout,u).set(null)}}}},{\"../components/color\":615,\"../lib\":749,\"../plots/cartesian/axis_ids\":801,\"../plots/plots\":861,\"../registry\":881,\"fast-isnumeric\":241,\"gl-mat4/fromQuat\":275}],782:[function(t,e,r){\"use strict\";var n=t(\"./plot_api\");r.plot=n.plot,r.newPlot=n.newPlot,r.restyle=n.restyle,r.relayout=n.relayout,r.redraw=n.redraw,r.update=n.update,r._guiRestyle=n._guiRestyle,r._guiRelayout=n._guiRelayout,r._guiUpdate=n._guiUpdate,r._storeDirectGUIEdit=n._storeDirectGUIEdit,r.react=n.react,r.extendTraces=n.extendTraces,r.prependTraces=n.prependTraces,r.addTraces=n.addTraces,r.deleteTraces=n.deleteTraces,r.moveTraces=n.moveTraces,r.purge=n.purge,r.addFrames=n.addFrames,r.deleteFrames=n.deleteFrames,r.animate=n.animate,r.setPlotConfig=n.setPlotConfig,r.toImage=t(\"./to_image\"),r.validate=t(\"./validate\"),r.downloadImage=t(\"../snapshot/download\");var a=t(\"./template_api\");r.makeTemplate=a.makeTemplate,r.validateTemplate=a.validateTemplate},{\"../snapshot/download\":883,\"./plot_api\":784,\"./template_api\":789,\"./to_image\":790,\"./validate\":791}],783:[function(t,e,r){\"use strict\";var n=t(\"../lib/is_plain_object\"),a=t(\"../lib/noop\"),i=t(\"../lib/loggers\"),o=t(\"../lib/search\").sorterAsc,s=t(\"../registry\");r.containerArrayMatch=t(\"./container_array_match\");var l=r.isAddVal=function(t){return\"add\"===t||n(t)},c=r.isRemoveVal=function(t){return null===t||\"remove\"===t};r.applyContainerArrayChanges=function(t,e,r,n,u){var h=e.astr,f=s.getComponentMethod(h,\"supplyLayoutDefaults\"),p=s.getComponentMethod(h,\"draw\"),d=s.getComponentMethod(h,\"drawOne\"),g=n.replot||n.recalc||f===a||p===a,m=t.layout,v=t._fullLayout;if(r[\"\"]){Object.keys(r).length>1&&i.warn(\"Full array edits are incompatible with other edits\",h);var y=r[\"\"][\"\"];if(c(y))e.set(null);else{if(!Array.isArray(y))return i.warn(\"Unrecognized full array edit value\",h,y),!0;e.set(y)}return!g&&(f(m,v),p(t),!0)}var x,b,_,w,T,k,M,A,S=Object.keys(r).map(Number).sort(o),E=e.get(),C=E||[],L=u(v,h).get(),P=[],I=-1,z=C.length;for(x=0;x<S.length;x++)if(w=r[_=S[x]],T=Object.keys(w),k=w[\"\"],M=l(k),_<0||_>C.length-(M?0:1))i.warn(\"index out of range\",h,_);else if(void 0!==k)T.length>1&&i.warn(\"Insertion & removal are incompatible with edits to the same index.\",h,_),c(k)?P.push(_):M?(\"add\"===k&&(k={}),C.splice(_,0,k),L&&L.splice(_,0,{})):i.warn(\"Unrecognized full object edit value\",h,_,k),-1===I&&(I=_);else for(b=0;b<T.length;b++)A=h+\"[\"+_+\"].\",u(C[_],T[b],A).set(w[T[b]]);for(x=P.length-1;x>=0;x--)C.splice(P[x],1),L&&L.splice(P[x],1);if(C.length?E||e.set(C):e.set(null),g)return!1;if(f(m,v),d!==a){var O;if(-1===I)O=S;else{for(z=Math.max(C.length,z),O=[],x=0;x<S.length&&!((_=S[x])>=I);x++)O.push(_);for(x=I;x<z;x++)O.push(x)}for(x=0;x<O.length;x++)d(t,O[x])}else p(t);return!0}},{\"../lib/is_plain_object\":750,\"../lib/loggers\":753,\"../lib/noop\":758,\"../lib/search\":768,\"../registry\":881,\"./container_array_match\":779}],784:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"has-hover\"),o=t(\"../lib\"),s=o.nestedProperty,l=t(\"../lib/events\"),c=t(\"../lib/queue\"),u=t(\"../registry\"),h=t(\"./plot_schema\"),f=t(\"../plots/plots\"),p=t(\"../plots/polar/legacy\"),d=t(\"../plots/cartesian/axes\"),g=t(\"../components/drawing\"),m=t(\"../components/color\"),v=t(\"../plots/cartesian/graph_interact\").initInteractions,y=t(\"../constants/xmlns_namespaces\"),x=t(\"../lib/svg_text_utils\"),b=t(\"../plots/cartesian/select\").clearSelect,_=t(\"./plot_config\").dfltConfig,w=t(\"./manage_arrays\"),T=t(\"./helpers\"),k=t(\"./subroutines\"),M=t(\"./edit_types\"),A=t(\"../plots/cartesian/constants\").AX_NAME_PATTERN,S=0;function E(t){var e=t._fullLayout;e._redrawFromAutoMarginCount?e._redrawFromAutoMarginCount--:t.emit(\"plotly_afterplot\")}function C(t,e){try{t._fullLayout._paper.style(\"background\",e)}catch(t){o.error(t)}}function L(t,e){C(t,m.combine(e,\"white\"))}function P(t,e){if(!t._context){t._context=o.extendDeep({},_);var r=n.select(\"base\");t._context._baseUrl=r.size()&&r.attr(\"href\")?window.location.href.split(\"#\")[0]:\"\"}var a,s,l,c=t._context;if(e){for(s=Object.keys(e),a=0;a<s.length;a++)\"editable\"!==(l=s[a])&&\"edits\"!==l&&l in c&&(\"setBackground\"===l&&\"opaque\"===e[l]?c[l]=L:c[l]=e[l]);e.plot3dPixelRatio&&!c.plotGlPixelRatio&&(c.plotGlPixelRatio=c.plot3dPixelRatio);var u=e.editable;if(void 0!==u)for(c.editable=u,s=Object.keys(c.edits),a=0;a<s.length;a++)c.edits[s[a]]=u;if(e.edits)for(s=Object.keys(e.edits),a=0;a<s.length;a++)(l=s[a])in c.edits&&(c.edits[l]=e.edits[l]);c._exportedPlot=e._exportedPlot}c.staticPlot&&(c.editable=!1,c.edits={},c.autosizable=!1,c.scrollZoom=!1,c.doubleClick=!1,c.showTips=!1,c.showLink=!1,c.displayModeBar=!1),\"hover\"!==c.displayModeBar||i||(c.displayModeBar=!0),\"transparent\"!==c.setBackground&&\"function\"==typeof c.setBackground||(c.setBackground=C),c._hasZeroHeight=c._hasZeroHeight||0===t.clientHeight,c._hasZeroWidth=c._hasZeroWidth||0===t.clientWidth;var h=c.scrollZoom,f=c._scrollZoom={};if(!0===h)f.cartesian=1,f.gl3d=1,f.geo=1,f.mapbox=1;else if(\"string\"==typeof h){var p=h.split(\"+\");for(a=0;a<p.length;a++)f[p[a]]=1}else!1!==h&&(f.gl3d=1,f.geo=1,f.mapbox=1)}function I(t,e){var r,n,a=e+1,i=[];for(r=0;r<t.length;r++)(n=t[r])<0?i.push(a+n):i.push(n);return i}function z(t,e,r){var n,a;for(n=0;n<e.length;n++){if((a=e[n])!==parseInt(a,10))throw new Error(\"all values in \"+r+\" must be integers\");if(a>=t.data.length||a<-t.data.length)throw new Error(r+\" must be valid indices for gd.data.\");if(e.indexOf(a,n+1)>-1||a>=0&&e.indexOf(-t.data.length+a)>-1||a<0&&e.indexOf(t.data.length+a)>-1)throw new Error(\"each index in \"+r+\" must be unique.\")}}function O(t,e,r){if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(\"undefined\"==typeof e)throw new Error(\"currentIndices is a required argument.\");if(Array.isArray(e)||(e=[e]),z(t,e,\"currentIndices\"),\"undefined\"==typeof r||Array.isArray(r)||(r=[r]),\"undefined\"!=typeof r&&z(t,r,\"newIndices\"),\"undefined\"!=typeof r&&e.length!==r.length)throw new Error(\"current and new indices must be of equal length.\")}function D(t,e,r,n,i){!function(t,e,r,n){var a=o.isPlainObject(n);if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array\");if(!o.isPlainObject(e))throw new Error(\"update must be a key:value object\");if(\"undefined\"==typeof r)throw new Error(\"indices must be an integer or array of integers\");for(var i in z(t,r,\"indices\"),e){if(!Array.isArray(e[i])||e[i].length!==r.length)throw new Error(\"attribute \"+i+\" must be an array of length equal to indices array length\");if(a&&(!(i in n)||!Array.isArray(n[i])||n[i].length!==e[i].length))throw new Error(\"when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object\")}}(t,e,r,n);for(var l=function(t,e,r,n){var i,l,c,u,h,f=o.isPlainObject(n),p=[];for(var d in Array.isArray(r)||(r=[r]),r=I(r,t.data.length-1),e)for(var g=0;g<r.length;g++){if(i=t.data[r[g]],l=(c=s(i,d)).get(),u=e[d][g],!o.isArrayOrTypedArray(u))throw new Error(\"attribute: \"+d+\" index: \"+g+\" must be an array\");if(!o.isArrayOrTypedArray(l))throw new Error(\"cannot extend missing or non-array attribute: \"+d);if(l.constructor!==u.constructor)throw new Error(\"cannot extend array with an array of a different type: \"+d);h=f?n[d][g]:n,a(h)||(h=-1),p.push({prop:c,target:l,insert:u,maxp:Math.floor(h)})}return p}(t,e,r,n),c={},u={},h=0;h<l.length;h++){var f=l[h].prop,p=l[h].maxp,d=i(l[h].target,l[h].insert,p);f.set(d[0]),Array.isArray(c[f.astr])||(c[f.astr]=[]),c[f.astr].push(d[1]),Array.isArray(u[f.astr])||(u[f.astr]=[]),u[f.astr].push(l[h].target.length)}return{update:c,maxPoints:u}}function R(t,e){var r=new t.constructor(t.length+e.length);return r.set(t),r.set(e,t.length),r}function F(t,e,n,a){t=o.getGraphDiv(t),T.clearPromiseQueue(t);var i={};if(\"string\"==typeof e)i[e]=n;else{if(!o.isPlainObject(e))return o.warn(\"Restyle fail.\",e,n,a),Promise.reject();i=o.extendFlat({},e),void 0===a&&(a=n)}Object.keys(i).length&&(t.changed=!0);var s=T.coerceTraceIndices(t,a),l=U(t,i,s),u=l.flags;u.calc&&(t.calcdata=void 0),u.clearAxisTypes&&T.clearAxisTypes(t,s,{});var h=[];u.fullReplot?h.push(r.plot):(h.push(f.previousPromises),f.supplyDefaults(t),u.markerSize&&(f.doCalcdata(t),G(h)),u.style&&h.push(k.doTraceStyle),u.colorbars&&h.push(k.doColorBars),h.push(E)),h.push(f.rehover,f.redrag),c.add(t,F,[t,l.undoit,l.traces],F,[t,l.redoit,l.traces]);var p=o.syncOrAsync(h,t);return p&&p.then||(p=Promise.resolve()),p.then((function(){return t.emit(\"plotly_restyle\",l.eventData),t}))}function B(t){return void 0===t?null:t}function N(t,e){return e?function(e,r,n){var a=s(e,r),i=a.set;return a.set=function(e){j((n||\"\")+r,a.get(),e,t),i(e)},a}:s}function j(t,e,r,n){if(Array.isArray(e)||Array.isArray(r))for(var a=Array.isArray(e)?e:[],i=Array.isArray(r)?r:[],s=Math.max(a.length,i.length),l=0;l<s;l++)j(t+\"[\"+l+\"]\",a[l],i[l],n);else if(o.isPlainObject(e)||o.isPlainObject(r)){var c=o.isPlainObject(e)?e:{},u=o.isPlainObject(r)?r:{},h=o.extendFlat({},c,u);for(var f in h)j(t+\".\"+f,c[f],u[f],n)}else void 0===n[t]&&(n[t]=B(e))}function U(t,e,r){var n,a=t._fullLayout,i=t._fullData,l=t.data,c=a._guiEditing,p=N(a._preGUI,c),g=o.extendDeepAll({},e);V(e);var m,v=M.traceFlags(),y={},x={};function b(){return r.map((function(){}))}function _(t){var e=d.id2name(t);-1===m.indexOf(e)&&m.push(e)}function w(t){return\"LAYOUT\"+t+\".autorange\"}function k(t){return\"LAYOUT\"+t+\".range\"}function A(t){for(var e=t;e<i.length;e++)if(i[e]._input===l[t])return i[e]}function S(n,i,o){if(Array.isArray(n))n.forEach((function(t){S(t,i,o)}));else if(!(n in e)&&!T.hasParent(e,n)){var s;if(\"LAYOUT\"===n.substr(0,6))s=p(t.layout,n.replace(\"LAYOUT\",\"\"));else{var u=r[o];s=N(a._tracePreGUI[A(u)._fullInput.uid],c)(l[u],n)}n in x||(x[n]=b()),void 0===x[n][o]&&(x[n][o]=B(s.get())),void 0!==i&&s.set(i)}}function E(t){return function(e){return i[e][t]}}function C(t){return function(e,n){return!1===e?i[r[n]][t]:null}}for(var L in e){if(T.hasParent(e,L))throw new Error(\"cannot set \"+L+\" and a parent attribute simultaneously\");var P,I,z,O,D,R,F=e[L];if(\"autobinx\"!==L&&\"autobiny\"!==L||(L=L.charAt(L.length-1)+\"bins\",F=Array.isArray(F)?F.map(C(L)):!1===F?r.map(E(L)):null),y[L]=F,\"LAYOUT\"!==L.substr(0,6)){for(x[L]=b(),n=0;n<r.length;n++){if(P=l[r[n]],I=A(r[n]),O=(z=N(a._tracePreGUI[I._fullInput.uid],c)(P,L)).get(),void 0!==(D=Array.isArray(F)?F[n%F.length]:F)){var j=z.parts[z.parts.length-1],U=L.substr(0,L.length-j.length-1),q=U?U+\".\":\"\",H=U?s(I,U).get():I;if((R=h.getTraceValObject(I,z.parts))&&R.impliedEdits&&null!==D)for(var G in R.impliedEdits)S(o.relativeAttr(L,G),R.impliedEdits[G],n);else if(\"thicknessmode\"!==j&&\"lenmode\"!==j||O===D||\"fraction\"!==D&&\"pixels\"!==D||!H){if(\"type\"===L&&(\"pie\"===D!=(\"pie\"===O)||\"funnelarea\"===D!=(\"funnelarea\"===O))){var Y=\"x\",W=\"y\";\"bar\"!==D&&\"bar\"!==O||\"h\"!==P.orientation||(Y=\"y\",W=\"x\"),o.swapAttrs(P,[\"?\",\"?src\"],\"labels\",Y),o.swapAttrs(P,[\"d?\",\"?0\"],\"label\",Y),o.swapAttrs(P,[\"?\",\"?src\"],\"values\",W),\"pie\"===O||\"funnelarea\"===O?(s(P,\"marker.color\").set(s(P,\"marker.colors\").get()),a._pielayer.selectAll(\"g.trace\").remove()):u.traceIs(P,\"cartesian\")&&s(P,\"marker.colors\").set(s(P,\"marker.color\").get())}}else{var Z=a._size,X=H.orient,J=\"top\"===X||\"bottom\"===X;if(\"thicknessmode\"===j){var K=J?Z.h:Z.w;S(q+\"thickness\",H.thickness*(\"fraction\"===D?1/K:K),n)}else{var Q=J?Z.w:Z.h;S(q+\"len\",H.len*(\"fraction\"===D?1/Q:Q),n)}}x[L][n]=B(O);if(-1!==[\"swapxy\",\"swapxyaxes\",\"orientation\",\"orientationaxes\"].indexOf(L)){if(\"orientation\"===L){z.set(D);var $=P.x&&!P.y?\"h\":\"v\";if((z.get()||$)===I.orientation)continue}else\"orientationaxes\"===L&&(P.orientation={v:\"h\",h:\"v\"}[I.orientation]);T.swapXYData(P),v.calc=v.clearAxisTypes=!0}else-1!==f.dataArrayContainers.indexOf(z.parts[0])?(T.manageArrayContainers(z,D,x),v.calc=!0):(R?R.arrayOk&&!u.traceIs(I,\"regl\")&&(o.isArrayOrTypedArray(D)||o.isArrayOrTypedArray(O))?v.calc=!0:M.update(v,R):v.calc=!0,z.set(D))}}if(-1!==[\"swapxyaxes\",\"orientationaxes\"].indexOf(L)&&d.swap(t,r),\"orientationaxes\"===L){var tt=s(t.layout,\"hovermode\"),et=tt.get();\"x\"===et?tt.set(\"y\"):\"y\"===et?tt.set(\"x\"):\"x unified\"===et?tt.set(\"y unified\"):\"y unified\"===et&&tt.set(\"x unified\")}if(-1!==[\"orientation\",\"type\"].indexOf(L)){for(m=[],n=0;n<r.length;n++){var rt=l[r[n]];u.traceIs(rt,\"cartesian\")&&(_(rt.xaxis||\"x\"),_(rt.yaxis||\"y\"))}S(m.map(w),!0,0),S(m.map(k),[0,1],0)}}else z=p(t.layout,L.replace(\"LAYOUT\",\"\")),x[L]=[B(z.get())],z.set(Array.isArray(F)?F[0]:F),v.calc=!0}return(v.calc||v.plot)&&(v.fullReplot=!0),{flags:v,undoit:x,redoit:y,traces:r,eventData:o.extendDeepNoArrays([],[g,r])}}function V(t){var e,r,n,a=o.counterRegex(\"axis\",\".title\",!1,!1),i=/colorbar\\.title$/,s=Object.keys(t);for(e=0;e<s.length;e++)r=s[e],n=t[r],\"title\"!==r&&!a.test(r)&&!i.test(r)||\"string\"!=typeof n&&\"number\"!=typeof n?r.indexOf(\"titlefont\")>-1?l(r,r.replace(\"titlefont\",\"title.font\")):r.indexOf(\"titleposition\")>-1?l(r,r.replace(\"titleposition\",\"title.position\")):r.indexOf(\"titleside\")>-1?l(r,r.replace(\"titleside\",\"title.side\")):r.indexOf(\"titleoffset\")>-1&&l(r,r.replace(\"titleoffset\",\"title.offset\")):l(r,r.replace(\"title\",\"title.text\"));function l(e,r){t[r]=t[e],delete t[e]}}function q(t,e,r){if(t=o.getGraphDiv(t),T.clearPromiseQueue(t),t.framework&&t.framework.isPolar)return Promise.resolve(t);var n={};if(\"string\"==typeof e)n[e]=r;else{if(!o.isPlainObject(e))return o.warn(\"Relayout fail.\",e,r),Promise.reject();n=o.extendFlat({},e)}Object.keys(n).length&&(t.changed=!0);var a=X(t,n),i=a.flags;i.calc&&(t.calcdata=void 0);var s=[f.previousPromises];i.layoutReplot?s.push(k.layoutReplot):Object.keys(n).length&&(H(t,i,a)||f.supplyDefaults(t),i.legend&&s.push(k.doLegend),i.layoutstyle&&s.push(k.layoutStyles),i.axrange&&G(s,a.rangesAltered),i.ticks&&s.push(k.doTicksRelayout),i.modebar&&s.push(k.doModeBar),i.camera&&s.push(k.doCamera),i.colorbars&&s.push(k.doColorBars),s.push(E)),s.push(f.rehover,f.redrag),c.add(t,q,[t,a.undoit],q,[t,a.redoit]);var l=o.syncOrAsync(s,t);return l&&l.then||(l=Promise.resolve(t)),l.then((function(){return t.emit(\"plotly_relayout\",a.eventData),t}))}function H(t,e,r){var n=t._fullLayout;if(!e.axrange)return!1;for(var a in e)if(\"axrange\"!==a&&e[a])return!1;for(var i in r.rangesAltered){var o=d.id2name(i),s=t.layout[o],l=n[o];if(l.autorange=s.autorange,l.range=s.range.slice(),l.cleanRange(),l._matchGroup)for(var c in l._matchGroup)if(c!==i){var u=n[d.id2name(c)];u.autorange=l.autorange,u.range=l.range.slice(),u._input.range=l.range.slice()}}return!0}function G(t,e){var r=e?function(t){var r=[],n=!0;for(var a in e){var i=d.getFromId(t,a);if(r.push(a),i._matchGroup)for(var o in i._matchGroup)e[o]||r.push(o);i.automargin&&(n=!1)}return d.draw(t,r,{skipTitle:n})}:function(t){return d.draw(t,\"redraw\")};t.push(b,k.doAutoRangeAndConstraints,r,k.drawData,k.finalDraw)}var Y=/^[xyz]axis[0-9]*\\.range(\\[[0|1]\\])?$/,W=/^[xyz]axis[0-9]*\\.autorange$/,Z=/^[xyz]axis[0-9]*\\.domain(\\[[0|1]\\])?$/;function X(t,e){var r,n,a,i=t.layout,l=t._fullLayout,c=l._guiEditing,f=N(l._preGUI,c),p=Object.keys(e),g=d.list(t),m=o.extendDeepAll({},e),v={};for(V(e),p=Object.keys(e),n=0;n<p.length;n++)if(0===p[n].indexOf(\"allaxes\")){for(a=0;a<g.length;a++){var y=g[a]._id.substr(1),x=-1!==y.indexOf(\"scene\")?y+\".\":\"\",b=p[n].replace(\"allaxes\",x+g[a]._name);e[b]||(e[b]=e[p[n]])}delete e[p[n]]}var _=M.layoutFlags(),k={},S={};function E(t,r){if(Array.isArray(t))t.forEach((function(t){E(t,r)}));else if(!(t in e)&&!T.hasParent(e,t)){var n=f(i,t);t in S||(S[t]=B(n.get())),void 0!==r&&n.set(r)}}var C,L={};function P(t){var e=d.name2id(t.split(\".\")[0]);return L[e]=1,e}for(var I in e){if(T.hasParent(e,I))throw new Error(\"cannot set \"+I+\" and a parent attribute simultaneously\");for(var z=f(i,I),O=e[I],D=z.parts.length-1;D>0&&\"string\"!=typeof z.parts[D];)D--;var R=z.parts[D],F=z.parts[D-1]+\".\"+R,j=z.parts.slice(0,D).join(\".\"),U=s(t.layout,j).get(),q=s(l,j).get(),H=z.get();if(void 0!==O){k[I]=O,S[I]=\"reverse\"===R?O:B(H);var G=h.getLayoutValObject(l,z.parts);if(G&&G.impliedEdits&&null!==O)for(var X in G.impliedEdits)E(o.relativeAttr(I,X),G.impliedEdits[X]);if(-1!==[\"width\",\"height\"].indexOf(I))if(O){E(\"autosize\",null);var K=\"height\"===I?\"width\":\"height\";E(K,l[K])}else l[I]=t._initialAutoSize[I];else if(\"autosize\"===I)E(\"width\",O?null:l.width),E(\"height\",O?null:l.height);else if(F.match(Y))P(F),s(l,j+\"._inputRange\").set(null);else if(F.match(W)){P(F),s(l,j+\"._inputRange\").set(null);var Q=s(l,j).get();Q._inputDomain&&(Q._input.domain=Q._inputDomain.slice())}else F.match(Z)&&s(l,j+\"._inputDomain\").set(null);if(\"type\"===R){var $=U,tt=\"linear\"===q.type&&\"log\"===O,et=\"log\"===q.type&&\"linear\"===O;if(tt||et){if($&&$.range)if(q.autorange)tt&&($.range=$.range[1]>$.range[0]?[1,2]:[2,1]);else{var rt=$.range[0],nt=$.range[1];tt?(rt<=0&&nt<=0&&E(j+\".autorange\",!0),rt<=0?rt=nt/1e6:nt<=0&&(nt=rt/1e6),E(j+\".range[0]\",Math.log(rt)/Math.LN10),E(j+\".range[1]\",Math.log(nt)/Math.LN10)):(E(j+\".range[0]\",Math.pow(10,rt)),E(j+\".range[1]\",Math.pow(10,nt)))}else E(j+\".autorange\",!0);Array.isArray(l._subplots.polar)&&l._subplots.polar.length&&l[z.parts[0]]&&\"radialaxis\"===z.parts[1]&&delete l[z.parts[0]]._subplot.viewInitial[\"radialaxis.range\"],u.getComponentMethod(\"annotations\",\"convertCoords\")(t,q,O,E),u.getComponentMethod(\"images\",\"convertCoords\")(t,q,O,E)}else E(j+\".autorange\",!0),E(j+\".range\",null);s(l,j+\"._inputRange\").set(null)}else if(R.match(A)){var at=s(l,I).get(),it=(O||{}).type;it&&\"-\"!==it||(it=\"linear\"),u.getComponentMethod(\"annotations\",\"convertCoords\")(t,at,it,E),u.getComponentMethod(\"images\",\"convertCoords\")(t,at,it,E)}var ot=w.containerArrayMatch(I);if(ot){r=ot.array,n=ot.index;var st=ot.property,lt=G||{editType:\"calc\"};\"\"!==n&&\"\"===st&&(w.isAddVal(O)?S[I]=null:w.isRemoveVal(O)?S[I]=(s(i,r).get()||[])[n]:o.warn(\"unrecognized full object value\",e)),M.update(_,lt),v[r]||(v[r]={});var ct=v[r][n];ct||(ct=v[r][n]={}),ct[st]=O,delete e[I]}else\"reverse\"===R?(U.range?U.range.reverse():(E(j+\".autorange\",!0),U.range=[1,0]),q.autorange?_.calc=!0:_.plot=!0):(l._has(\"scatter-like\")&&l._has(\"regl\")&&\"dragmode\"===I&&(\"lasso\"===O||\"select\"===O)&&\"lasso\"!==H&&\"select\"!==H||l._has(\"gl2d\")?_.plot=!0:G?M.update(_,G):_.calc=!0,z.set(O))}}for(r in v){w.applyContainerArrayChanges(t,f(i,r),v[r],_,f)||(_.plot=!0)}var ut=l._axisConstraintGroups||[];for(C in L)for(n=0;n<ut.length;n++){var ht=ut[n];if(ht[C])for(var ft in _.calc=!0,ht)L[ft]||(d.getFromId(t,ft)._constraintShrinkable=!0)}return(J(t)||e.height||e.width)&&(_.plot=!0),(_.plot||_.calc)&&(_.layoutReplot=!0),{flags:_,rangesAltered:L,undoit:S,redoit:k,eventData:m}}function J(t){var e=t._fullLayout,r=e.width,n=e.height;return t.layout.autosize&&f.plotAutoSize(t,t.layout,e),e.width!==r||e.height!==n}function K(t,e,n,a){if(t=o.getGraphDiv(t),T.clearPromiseQueue(t),t.framework&&t.framework.isPolar)return Promise.resolve(t);o.isPlainObject(e)||(e={}),o.isPlainObject(n)||(n={}),Object.keys(e).length&&(t.changed=!0),Object.keys(n).length&&(t.changed=!0);var i=T.coerceTraceIndices(t,a),s=U(t,o.extendFlat({},e),i),l=s.flags,u=X(t,o.extendFlat({},n)),h=u.flags;(l.calc||h.calc)&&(t.calcdata=void 0),l.clearAxisTypes&&T.clearAxisTypes(t,i,n);var p=[];h.layoutReplot?p.push(k.layoutReplot):l.fullReplot?p.push(r.plot):(p.push(f.previousPromises),H(t,h,u)||f.supplyDefaults(t),l.style&&p.push(k.doTraceStyle),(l.colorbars||h.colorbars)&&p.push(k.doColorBars),h.legend&&p.push(k.doLegend),h.layoutstyle&&p.push(k.layoutStyles),h.axrange&&G(p,u.rangesAltered),h.ticks&&p.push(k.doTicksRelayout),h.modebar&&p.push(k.doModeBar),h.camera&&p.push(k.doCamera),p.push(E)),p.push(f.rehover,f.redrag),c.add(t,K,[t,s.undoit,u.undoit,s.traces],K,[t,s.redoit,u.redoit,s.traces]);var d=o.syncOrAsync(p,t);return d&&d.then||(d=Promise.resolve(t)),d.then((function(){return t.emit(\"plotly_update\",{data:s.eventData,layout:u.eventData}),t}))}function Q(t){return function(e){e._fullLayout._guiEditing=!0;var r=t.apply(null,arguments);return e._fullLayout._guiEditing=!1,r}}var $=[{pattern:/^hiddenlabels/,attr:\"legend.uirevision\"},{pattern:/^((x|y)axis\\d*)\\.((auto)?range|title\\.text)/},{pattern:/axis\\d*\\.showspikes$/,attr:\"modebar.uirevision\"},{pattern:/(hover|drag)mode$/,attr:\"modebar.uirevision\"},{pattern:/^(scene\\d*)\\.camera/},{pattern:/^(geo\\d*)\\.(projection|center|fitbounds)/},{pattern:/^(ternary\\d*\\.[abc]axis)\\.(min|title\\.text)$/},{pattern:/^(polar\\d*\\.radialaxis)\\.((auto)?range|angle|title\\.text)/},{pattern:/^(polar\\d*\\.angularaxis)\\.rotation/},{pattern:/^(mapbox\\d*)\\.(center|zoom|bearing|pitch)/},{pattern:/^legend\\.(x|y)$/,attr:\"editrevision\"},{pattern:/^(shapes|annotations)/,attr:\"editrevision\"},{pattern:/^title\\.text$/,attr:\"editrevision\"}],tt=[{pattern:/^selectedpoints$/,attr:\"selectionrevision\"},{pattern:/(^|value\\.)visible$/,attr:\"legend.uirevision\"},{pattern:/^dimensions\\[\\d+\\]\\.constraintrange/},{pattern:/^node\\.(x|y|groups)/},{pattern:/^level$/},{pattern:/(^|value\\.)name$/},{pattern:/colorbar\\.title\\.text$/},{pattern:/colorbar\\.(x|y)$/,attr:\"editrevision\"}];function et(t,e){for(var r=0;r<e.length;r++){var n=e[r],a=t.match(n.pattern);if(a)return{head:a[1],attr:n.attr}}}function rt(t,e){var r=s(e,t).get();if(void 0!==r)return r;var n=t.split(\".\");for(n.pop();n.length>1;)if(n.pop(),void 0!==(r=s(e,n.join(\".\")+\".uirevision\").get()))return r;return e.uirevision}function nt(t,e){for(var r=0;r<e.length;r++)if(e[r]._fullInput.uid===t)return r;return-1}function at(t,e,r){for(var n=0;n<e.length;n++)if(e[n].uid===t)return n;return!e[r]||e[r].uid?-1:r}function it(t,e){var r=o.isPlainObject(t),n=Array.isArray(t);return r||n?(r&&o.isPlainObject(e)||n&&Array.isArray(e))&&JSON.stringify(t)===JSON.stringify(e):t===e}function ot(t,e,r,n){var a,i,l,c=n.getValObject,u=n.flags,h=n.immutable,f=n.inArray,p=n.arrayIndex;function d(){var t=a.editType;f&&-1!==t.indexOf(\"arraydraw\")?o.pushUnique(u.arrays[f],p):(M.update(u,a),\"none\"!==t&&u.nChanges++,n.transition&&a.anim&&u.nChangesAnim++,(Y.test(l)||W.test(l))&&(u.rangesAltered[r[0]]=1),Z.test(l)&&s(e,\"_inputDomain\").set(null),\"datarevision\"===i&&(u.newDataRevision=1))}function g(t){return\"data_array\"===t.valType||t.arrayOk}for(i in t){if(u.calc&&!n.transition)return;var m=t[i],v=e[i],y=r.concat(i);if(l=y.join(\".\"),\"_\"!==i.charAt(0)&&\"function\"!=typeof m&&m!==v){if((\"tick0\"===i||\"dtick\"===i)&&\"geo\"!==r[0]){var x=e.tickmode;if(\"auto\"===x||\"array\"===x||!x)continue}if((\"range\"!==i||!e.autorange)&&(\"zmin\"!==i&&\"zmax\"!==i||\"contourcarpet\"!==e.type)&&(a=c(y))&&(!a._compareAsJSON||JSON.stringify(m)!==JSON.stringify(v))){var b,_=a.valType,w=g(a),T=Array.isArray(m),k=Array.isArray(v);if(T&&k){var A=\"_input_\"+i,S=t[A],E=e[A];if(Array.isArray(S)&&S===E)continue}if(void 0===v)w&&T?u.calc=!0:d();else if(a._isLinkedToArray){var C=[],L=!1;f||(u.arrays[i]=C);var P=Math.min(m.length,v.length),I=Math.max(m.length,v.length);if(P!==I){if(\"arraydraw\"!==a.editType){d();continue}L=!0}for(b=0;b<P;b++)ot(m[b],v[b],y.concat(b),o.extendFlat({inArray:i,arrayIndex:b},n));if(L)for(b=P;b<I;b++)C.push(b)}else!_&&o.isPlainObject(m)?ot(m,v,y,n):w?T&&k?(h&&(u.calc=!0),(h||n.newDataRevision)&&d()):T!==k?u.calc=!0:d():T&&k&&m.length===v.length&&String(m)===String(v)||d()}}}for(i in e)if(!(i in t)&&\"_\"!==i.charAt(0)&&\"function\"!=typeof e[i]){if(g(a=c(r.concat(i)))&&Array.isArray(e[i]))return void(u.calc=!0);d()}}function st(t){var e=n.select(t),r=t._fullLayout;if(r._container=e.selectAll(\".plot-container\").data([0]),r._container.enter().insert(\"div\",\":first-child\").classed(\"plot-container\",!0).classed(\"plotly\",!0),r._paperdiv=r._container.selectAll(\".svg-container\").data([0]),r._paperdiv.enter().append(\"div\").classed(\"user-select-none\",!0).classed(\"svg-container\",!0).style(\"position\",\"relative\"),r._glcontainer=r._paperdiv.selectAll(\".gl-container\").data([{}]),r._glcontainer.enter().append(\"div\").classed(\"gl-container\",!0),r._paperdiv.selectAll(\".main-svg\").remove(),r._paperdiv.select(\".modebar-container\").remove(),r._paper=r._paperdiv.insert(\"svg\",\":first-child\").classed(\"main-svg\",!0),r._toppaper=r._paperdiv.append(\"svg\").classed(\"main-svg\",!0),r._modebardiv=r._paperdiv.append(\"div\"),r._hoverpaper=r._paperdiv.append(\"svg\").classed(\"main-svg\",!0),!r._uid){var a={};n.selectAll(\"defs\").each((function(){this.id&&(a[this.id.split(\"-\")[1]]=1)})),r._uid=o.randstr(a)}r._paperdiv.selectAll(\".main-svg\").attr(y.svgAttrs),r._defs=r._paper.append(\"defs\").attr(\"id\",\"defs-\"+r._uid),r._clips=r._defs.append(\"g\").classed(\"clips\",!0),r._topdefs=r._toppaper.append(\"defs\").attr(\"id\",\"topdefs-\"+r._uid),r._topclips=r._topdefs.append(\"g\").classed(\"clips\",!0),r._bgLayer=r._paper.append(\"g\").classed(\"bglayer\",!0),r._draggers=r._paper.append(\"g\").classed(\"draglayer\",!0);var i=r._paper.append(\"g\").classed(\"layer-below\",!0);r._imageLowerLayer=i.append(\"g\").classed(\"imagelayer\",!0),r._shapeLowerLayer=i.append(\"g\").classed(\"shapelayer\",!0),r._cartesianlayer=r._paper.append(\"g\").classed(\"cartesianlayer\",!0),r._polarlayer=r._paper.append(\"g\").classed(\"polarlayer\",!0),r._ternarylayer=r._paper.append(\"g\").classed(\"ternarylayer\",!0),r._geolayer=r._paper.append(\"g\").classed(\"geolayer\",!0),r._funnelarealayer=r._paper.append(\"g\").classed(\"funnelarealayer\",!0),r._pielayer=r._paper.append(\"g\").classed(\"pielayer\",!0),r._treemaplayer=r._paper.append(\"g\").classed(\"treemaplayer\",!0),r._sunburstlayer=r._paper.append(\"g\").classed(\"sunburstlayer\",!0),r._indicatorlayer=r._toppaper.append(\"g\").classed(\"indicatorlayer\",!0),r._glimages=r._paper.append(\"g\").classed(\"glimages\",!0);var s=r._toppaper.append(\"g\").classed(\"layer-above\",!0);r._imageUpperLayer=s.append(\"g\").classed(\"imagelayer\",!0),r._shapeUpperLayer=s.append(\"g\").classed(\"shapelayer\",!0),r._infolayer=r._toppaper.append(\"g\").classed(\"infolayer\",!0),r._menulayer=r._toppaper.append(\"g\").classed(\"menulayer\",!0),r._zoomlayer=r._toppaper.append(\"g\").classed(\"zoomlayer\",!0),r._hoverlayer=r._hoverpaper.append(\"g\").classed(\"hoverlayer\",!0),r._modebardiv.classed(\"modebar-container\",!0).style(\"position\",\"absolute\").style(\"top\",\"0px\").style(\"right\",\"0px\"),t.emit(\"plotly_framework\")}r.animate=function(t,e,r){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t+\". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/\");var n=t._transitionData;n._frameQueue||(n._frameQueue=[]);var a=(r=f.supplyAnimationDefaults(r)).transition,i=r.frame;function s(t){return Array.isArray(a)?t>=a.length?a[0]:a[t]:a}function l(t){return Array.isArray(i)?t>=i.length?i[0]:i[t]:i}function c(t,e){var r=0;return function(){if(t&&++r===e)return t()}}return void 0===n._frameWaitingCnt&&(n._frameWaitingCnt=0),new Promise((function(i,u){function h(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var e=n._currentFrame=n._frameQueue.shift();if(e){var r=e.name?e.name.toString():null;t._fullLayout._currentFrame=r,n._lastFrameAt=Date.now(),n._timeToNext=e.frameOpts.duration,f.transition(t,e.frame.data,e.frame.layout,T.coerceTraceIndices(t,e.frame.traces),e.frameOpts,e.transitionOpts).then((function(){e.onComplete&&e.onComplete()})),t.emit(\"plotly_animatingframe\",{name:r,frame:e.frame,animation:{frame:e.frameOpts,transition:e.transitionOpts}})}else t.emit(\"plotly_animated\"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}function p(){t.emit(\"plotly_animating\"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null;var e=function(){n._animationRaf=window.requestAnimationFrame(e),Date.now()-n._lastFrameAt>n._timeToNext&&h()};e()}var d,g,m=0;function v(t){return Array.isArray(a)?m>=a.length?t.transitionOpts=a[m]:t.transitionOpts=a[0]:t.transitionOpts=a,m++,t}var y=[],x=null==e,b=Array.isArray(e);if(!x&&!b&&o.isPlainObject(e))y.push({type:\"object\",data:v(o.extendFlat({},e))});else if(x||-1!==[\"string\",\"number\"].indexOf(typeof e))for(d=0;d<n._frames.length;d++)(g=n._frames[d])&&(x||String(g.group)===String(e))&&y.push({type:\"byname\",name:String(g.name),data:v({name:g.name})});else if(b)for(d=0;d<e.length;d++){var _=e[d];-1!==[\"number\",\"string\"].indexOf(typeof _)?(_=String(_),y.push({type:\"byname\",name:_,data:v({name:_})})):o.isPlainObject(_)&&y.push({type:\"object\",data:v(o.extendFlat({},_))})}for(d=0;d<y.length;d++)if(\"byname\"===(g=y[d]).type&&!n._frameHash[g.data.name])return o.warn('animate failure: frame not found: \"'+g.data.name+'\"'),void u();-1!==[\"next\",\"immediate\"].indexOf(r.mode)&&function(){if(0!==n._frameQueue.length){for(;n._frameQueue.length;){var e=n._frameQueue.pop();e.onInterrupt&&e.onInterrupt()}t.emit(\"plotly_animationinterrupted\",[])}}(),\"reverse\"===r.direction&&y.reverse();var w=t._fullLayout._currentFrame;if(w&&r.fromcurrent){var k=-1;for(d=0;d<y.length;d++)if(\"byname\"===(g=y[d]).type&&g.name===w){k=d;break}if(k>0&&k<y.length-1){var M=[];for(d=0;d<y.length;d++)g=y[d],(\"byname\"!==y[d].type||d>k)&&M.push(g);y=M}}y.length>0?function(e){if(0!==e.length){for(var a=0;a<e.length;a++){var o;o=\"byname\"===e[a].type?f.computeFrame(t,e[a].name):e[a].data;var h=l(a),d=s(a);d.duration=Math.min(d.duration,h.duration);var g={frame:o,name:e[a].name,frameOpts:h,transitionOpts:d};a===e.length-1&&(g.onComplete=c(i,2),g.onInterrupt=u),n._frameQueue.push(g)}\"immediate\"===r.mode&&(n._lastFrameAt=-1/0),n._animationRaf||p()}}(y):(t.emit(\"plotly_animated\"),i())}))},r.addFrames=function(t,e,r){if(t=o.getGraphDiv(t),null==e)return Promise.resolve();if(!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t+\". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/\");var n,a,i,s,l=t._transitionData._frames,u=t._transitionData._frameHash;if(!Array.isArray(e))throw new Error(\"addFrames failure: frameList must be an Array of frame definitions\"+e);var h=l.length+2*e.length,p=[],d={};for(n=e.length-1;n>=0;n--)if(o.isPlainObject(e[n])){var g=e[n].name,m=(u[g]||d[g]||{}).name,v=e[n].name,y=u[m]||d[m];m&&v&&\"number\"==typeof v&&y&&S<5&&(S++,o.warn('addFrames: overwriting frame \"'+(u[m]||d[m]).name+'\" with a frame whose name of type \"number\" also equates to \"'+m+'\". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===S&&o.warn(\"addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.\")),d[g]={name:g},p.push({frame:f.supplyFrameDefaults(e[n]),index:r&&void 0!==r[n]&&null!==r[n]?r[n]:h+n})}p.sort((function(t,e){return t.index>e.index?-1:t.index<e.index?1:0}));var x=[],b=[],_=l.length;for(n=p.length-1;n>=0;n--){if(\"number\"==typeof(a=p[n].frame).name&&o.warn(\"Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings\"),!a.name)for(;u[a.name=\"frame \"+t._transitionData._counter++];);if(u[a.name]){for(i=0;i<l.length&&(l[i]||{}).name!==a.name;i++);x.push({type:\"replace\",index:i,value:a}),b.unshift({type:\"replace\",index:i,value:l[i]})}else s=Math.max(0,Math.min(p[n].index,_)),x.push({type:\"insert\",index:s,value:a}),b.unshift({type:\"delete\",index:s}),_++}var w=f.modifyFrames,T=f.modifyFrames,k=[t,b],M=[t,x];return c&&c.add(t,w,k,T,M),f.modifyFrames(t,x)},r.deleteFrames=function(t,e){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t);var r,n,a=t._transitionData._frames,i=[],s=[];if(!e)for(e=[],r=0;r<a.length;r++)e.push(r);for((e=e.slice()).sort(),r=e.length-1;r>=0;r--)n=e[r],i.push({type:\"delete\",index:n}),s.unshift({type:\"insert\",index:n,value:a[n]});var l=f.modifyFrames,u=f.modifyFrames,h=[t,s],p=[t,i];return c&&c.add(t,l,h,u,p),f.modifyFrames(t,i)},r.addTraces=function t(e,n,a){e=o.getGraphDiv(e);var i,s,l=[],u=r.deleteTraces,h=t,f=[e,l],p=[e,n];for(function(t,e,r){var n,a;if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(\"undefined\"==typeof e)throw new Error(\"traces must be defined.\");for(Array.isArray(e)||(e=[e]),n=0;n<e.length;n++)if(\"object\"!=typeof(a=e[n])||Array.isArray(a)||null===a)throw new Error(\"all values in traces array must be non-array objects\");if(\"undefined\"==typeof r||Array.isArray(r)||(r=[r]),\"undefined\"!=typeof r&&r.length!==e.length)throw new Error(\"if indices is specified, traces.length must equal indices.length\")}(e,n,a),Array.isArray(n)||(n=[n]),n=n.map((function(t){return o.extendFlat({},t)})),T.cleanData(n),i=0;i<n.length;i++)e.data.push(n[i]);for(i=0;i<n.length;i++)l.push(-n.length+i);if(\"undefined\"==typeof a)return s=r.redraw(e),c.add(e,u,f,h,p),s;Array.isArray(a)||(a=[a]);try{O(e,l,a)}catch(t){throw e.data.splice(e.data.length-n.length,n.length),t}return c.startSequence(e),c.add(e,u,f,h,p),s=r.moveTraces(e,l,a),c.stopSequence(e),s},r.deleteTraces=function t(e,n){e=o.getGraphDiv(e);var a,i,s=[],l=r.addTraces,u=t,h=[e,s,n],f=[e,n];if(\"undefined\"==typeof n)throw new Error(\"indices must be an integer or array of integers.\");for(Array.isArray(n)||(n=[n]),z(e,n,\"indices\"),(n=I(n,e.data.length-1)).sort(o.sorterDes),a=0;a<n.length;a+=1)i=e.data.splice(n[a],1)[0],s.push(i);var p=r.redraw(e);return c.add(e,l,h,u,f),p},r.extendTraces=function t(e,n,a,i){function s(t,e,r){var n,a;if(o.isTypedArray(t))if(r<0){var i=new t.constructor(0),s=R(t,e);r<0?(n=s,a=i):(n=i,a=s)}else if(n=new t.constructor(r),a=new t.constructor(t.length+e.length-r),r===e.length)n.set(e),a.set(t);else if(r<e.length){var l=e.length-r;n.set(e.subarray(l)),a.set(t),a.set(e.subarray(0,l),t.length)}else{var c=r-e.length,u=t.length-c;n.set(t.subarray(u)),n.set(e,c),a.set(t.subarray(0,u))}else n=t.concat(e),a=r>=0&&r<n.length?n.splice(0,n.length-r):[];return[n,a]}var l=D(e=o.getGraphDiv(e),n,a,i,s),u=r.redraw(e),h=[e,l.update,a,l.maxPoints];return c.add(e,r.prependTraces,h,t,arguments),u},r.moveTraces=function t(e,n,a){var i,s=[],l=[],u=t,h=t,f=[e=o.getGraphDiv(e),a,n],p=[e,n,a];if(O(e,n,a),n=Array.isArray(n)?n:[n],\"undefined\"==typeof a)for(a=[],i=0;i<n.length;i++)a.push(-n.length+i);for(a=Array.isArray(a)?a:[a],n=I(n,e.data.length-1),a=I(a,e.data.length-1),i=0;i<e.data.length;i++)-1===n.indexOf(i)&&s.push(e.data[i]);for(i=0;i<n.length;i++)l.push({newIndex:a[i],trace:e.data[n[i]]});for(l.sort((function(t,e){return t.newIndex-e.newIndex})),i=0;i<l.length;i+=1)s.splice(l[i].newIndex,0,l[i].trace);e.data=s;var d=r.redraw(e);return c.add(e,u,f,h,p),d},r.prependTraces=function t(e,n,a,i){function s(t,e,r){var n,a;if(o.isTypedArray(t))if(r<=0){var i=new t.constructor(0),s=R(e,t);r<0?(n=s,a=i):(n=i,a=s)}else if(n=new t.constructor(r),a=new t.constructor(t.length+e.length-r),r===e.length)n.set(e),a.set(t);else if(r<e.length){var l=e.length-r;n.set(e.subarray(0,l)),a.set(e.subarray(l)),a.set(t,l)}else{var c=r-e.length;n.set(e),n.set(t.subarray(0,c),e.length),a.set(t.subarray(c))}else n=e.concat(t),a=r>=0&&r<n.length?n.splice(r,n.length):[];return[n,a]}var l=D(e=o.getGraphDiv(e),n,a,i,s),u=r.redraw(e),h=[e,l.update,a,l.maxPoints];return c.add(e,r.extendTraces,h,t,arguments),u},r.newPlot=function(t,e,n,a){return t=o.getGraphDiv(t),f.cleanPlot([],{},t._fullData||[],t._fullLayout||{}),f.purge(t),r.plot(t,e,n,a)},r.plot=function(t,e,a,i){var s;if(t=o.getGraphDiv(t),l.init(t),o.isPlainObject(e)){var c=e;e=c.data,a=c.layout,i=c.config,s=c.frames}if(!1===l.triggerHandler(t,\"plotly_beforeplot\",[e,a,i]))return Promise.reject();e||a||o.isPlotDiv(t)||o.warn(\"Calling Plotly.plot as if redrawing but this container doesn't yet have a plot.\",t),P(t,i),a||(a={}),n.select(t).classed(\"js-plotly-plot\",!0),g.makeTester(),Array.isArray(t._promises)||(t._promises=[]);var h=0===(t.data||[]).length&&Array.isArray(e);Array.isArray(e)&&(T.cleanData(e),h?t.data=e:t.data.push.apply(t.data,e),t.empty=!1),t.layout&&!h||(t.layout=T.cleanLayout(a)),f.supplyDefaults(t);var m=t._fullLayout,y=m._has(\"cartesian\");if(!m._has(\"polar\")&&e&&e[0]&&e[0].r)return o.log(\"Legacy polar charts are deprecated!\"),function(t,e,r){var a=n.select(t).selectAll(\".plot-container\").data([0]);a.enter().insert(\"div\",\":first-child\").classed(\"plot-container plotly\",!0);var i=a.selectAll(\".svg-container\").data([0]);i.enter().append(\"div\").classed(\"svg-container\",!0).style(\"position\",\"relative\"),i.html(\"\"),e&&(t.data=e);r&&(t.layout=r);p.manager.fillLayout(t),i.style({width:t._fullLayout.width+\"px\",height:t._fullLayout.height+\"px\"}),t.framework=p.manager.framework(t),t.framework({data:t.data,layout:t.layout},i.node()),t.framework.setUndoPoint();var s=t.framework.svg(),l=1,c=t._fullLayout.title?t._fullLayout.title.text:\"\";\"\"!==c&&c||(l=0);var u=function(){this.call(x.convertToTspans,t)},h=s.select(\".title-group text\").call(u);if(t._context.edits.titleText){var d=o._(t,\"Click to enter Plot title\");c&&c!==d||(l=.2,h.attr({\"data-unformatted\":d}).text(d).style({opacity:l}).on(\"mouseover.opacity\",(function(){n.select(this).transition().duration(100).style(\"opacity\",1)})).on(\"mouseout.opacity\",(function(){n.select(this).transition().duration(1e3).style(\"opacity\",0)})));var g=function(){this.call(x.makeEditable,{gd:t}).on(\"edit\",(function(e){t.framework({layout:{title:{text:e}}}),this.text(e).call(u),this.call(g)})).on(\"cancel\",(function(){var t=this.attr(\"data-unformatted\");this.text(t).call(u)}))};h.call(g)}return t._context.setBackground(t,t._fullLayout.paper_bgcolor),f.addLinks(t),Promise.resolve()}(t,e,a);m._replotting=!0,(h||m._shouldCreateBgLayer)&&(st(t),m._shouldCreateBgLayer&&delete m._shouldCreateBgLayer),t.framework!==st&&(t.framework=st,st(t)),g.initGradients(t),h&&d.saveShowSpikeInitial(t);var b=!t.calcdata||t.calcdata.length!==(t._fullData||[]).length;b&&f.doCalcdata(t);for(var _=0;_<t.calcdata.length;_++)t.calcdata[_][0].trace=t._fullData[_];t._context.responsive?t._responsiveChartHandler||(t._responsiveChartHandler=function(){o.isHidden(t)||f.resize(t)},window.addEventListener(\"resize\",t._responsiveChartHandler)):o.clearResponsive(t);var w=o.extendFlat({},m._size),M=0;function A(){if(f.clearAutoMarginIds(t),k.drawMarginPushers(t),d.allowAutoMargin(t),m._has(\"pie\"))for(var e=t._fullData,r=0;r<e.length;r++){var n=e[r];\"pie\"===n.type&&n.automargin&&f.allowAutoMargin(t,\"pie.\"+n.uid+\".automargin\")}return f.doAutoMargin(t),f.previousPromises(t)}function S(){t._transitioning||(k.doAutoRangeAndConstraints(t),h&&d.saveRangeInitial(t),u.getComponentMethod(\"rangeslider\",\"calcAutorange\")(t))}var C=[f.previousPromises,function(){if(s)return r.addFrames(t,s)},function e(){for(var r=m._basePlotModules,n=0;n<r.length;n++)r[n].drawFramework&&r[n].drawFramework(t);if(!m._glcanvas&&m._has(\"gl\")&&(m._glcanvas=m._glcontainer.selectAll(\".gl-canvas\").data([{key:\"contextLayer\",context:!0,pick:!1},{key:\"focusLayer\",context:!1,pick:!1},{key:\"pickLayer\",context:!1,pick:!0}],(function(t){return t.key})),m._glcanvas.enter().append(\"canvas\").attr(\"class\",(function(t){return\"gl-canvas gl-canvas-\"+t.key.replace(\"Layer\",\"\")})).style({position:\"absolute\",top:0,left:0,overflow:\"visible\",\"pointer-events\":\"none\"})),m._glcanvas){m._glcanvas.attr(\"width\",m.width).attr(\"height\",m.height);var a=m._glcanvas.data()[0].regl;if(a&&(Math.floor(m.width)!==a._gl.drawingBufferWidth||Math.floor(m.height)!==a._gl.drawingBufferHeight)){var i=\"WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.\";if(!M)return o.log(i+\" Clearing graph and plotting again.\"),f.cleanPlot([],{},t._fullData,m),f.supplyDefaults(t),m=t._fullLayout,f.doCalcdata(t),M++,e();o.error(i)}}return\"h\"===m.modebar.orientation?m._modebardiv.style(\"height\",null).style(\"width\",\"100%\"):m._modebardiv.style(\"width\",null).style(\"height\",m.height+\"px\"),f.previousPromises(t)},A,function(){if(f.didMarginChange(w,m._size))return o.syncOrAsync([A,k.layoutStyles],t)}];y&&C.push((function(){if(b)return o.syncOrAsync([u.getComponentMethod(\"shapes\",\"calcAutorange\"),u.getComponentMethod(\"annotations\",\"calcAutorange\"),S],t);S()})),C.push(k.layoutStyles),y&&C.push((function(){return d.draw(t,h?\"\":\"redraw\")})),C.push(k.drawData,k.finalDraw,v,f.addLinks,f.rehover,f.redrag,f.doAutoMargin,f.previousPromises);var L=o.syncOrAsync(C,t);return L&&L.then||(L=Promise.resolve()),L.then((function(){return E(t),t}))},r.purge=function(t){var e=(t=o.getGraphDiv(t))._fullLayout||{},r=t._fullData||[];return f.cleanPlot([],{},r,e),f.purge(t),l.purge(t),e._container&&e._container.remove(),delete t._context,t},r.react=function(t,e,n,a){var i,l;t=o.getGraphDiv(t),T.clearPromiseQueue(t);var c=t._fullData,p=t._fullLayout;if(o.isPlotDiv(t)&&c&&p){if(o.isPlainObject(e)){var d=e;e=d.data,n=d.layout,a=d.config,i=d.frames}var g=!1;if(a){var m=o.extendDeep({},t._context);t._context=void 0,P(t,a),g=function t(e,r){var n;for(n in e)if(\"_\"!==n.charAt(0)){var a=e[n],i=r[n];if(a!==i)if(o.isPlainObject(a)&&o.isPlainObject(i)){if(t(a,i))return!0}else{if(!Array.isArray(a)||!Array.isArray(i))return!0;if(a.length!==i.length)return!0;for(var s=0;s<a.length;s++)if(a[s]!==i[s]){if(!o.isPlainObject(a[s])||!o.isPlainObject(i[s]))return!0;if(t(a[s],i[s]))return!0}}}}(m,t._context)}t.data=e||[],T.cleanData(t.data),t.layout=n||{},T.cleanLayout(t.layout),function(t,e,r,n){var a,i,l,c,u,h,f,p,d=n._preGUI,g=[],m={};for(a in d){if(u=et(a,$)){if(i=u.attr||u.head+\".uirevision\",(c=(l=s(n,i).get())&&rt(i,e))&&c===l&&(null===(h=d[a])&&(h=void 0),it(p=(f=s(e,a)).get(),h))){void 0===p&&\"autorange\"===a.substr(a.length-9)&&g.push(a.substr(0,a.length-10)),f.set(B(s(n,a).get()));continue}}else o.warn(\"unrecognized GUI edit: \"+a);delete d[a],\"range[\"===a.substr(a.length-8,6)&&(m[a.substr(0,a.length-9)]=1)}for(var v=0;v<g.length;v++){var y=g[v];if(m[y]){var x=s(e,y).get();x&&delete x.autorange}}var b=n._tracePreGUI;for(var _ in b){var w,T=b[_],k=null;for(a in T){if(!k){var M=nt(_,r);if(M<0){delete b[_];break}var A=at(_,t,(w=r[M]._fullInput).index);if(A<0){delete b[_];break}k=t[A]}if(u=et(a,tt)){if(u.attr?c=(l=s(n,u.attr).get())&&rt(u.attr,e):(l=w.uirevision,void 0===(c=k.uirevision)&&(c=e.uirevision)),c&&c===l&&(null===(h=T[a])&&(h=void 0),it(p=(f=s(k,a)).get(),h))){f.set(B(s(w,a).get()));continue}}else o.warn(\"unrecognized GUI edit: \"+a+\" in trace uid \"+_);delete T[a]}}}(t.data,t.layout,c,p);for(var v=Object.getOwnPropertyNames(p),y=0;y<v.length;y++){var x=v[y],b=x.substring(0,5);if(\"xaxis\"===b||\"yaxis\"===b){var _=p[x]._emptyCategories;_&&_()}}f.supplyDefaults(t,{skipUpdateCalc:!0});var w=t._fullData,A=t._fullLayout,S=void 0===A.datarevision,C=A.transition,L=function(t,e,r,n,a){var i=M.layoutFlags();function o(t){return h.getLayoutValObject(r,t)}i.arrays={},i.rangesAltered={},i.nChanges=0,i.nChangesAnim=0,ot(e,r,[],{getValObject:o,flags:i,immutable:n,transition:a,gd:t}),(i.plot||i.calc)&&(i.layoutReplot=!0);a&&i.nChanges&&i.nChangesAnim&&(i.anim=i.nChanges===i.nChangesAnim?\"all\":\"some\");return i}(t,p,A,S,C),I=L.newDataRevision,z=function(t,e,r,n,a,i){var o=e.length===r.length;if(!a&&!o)return{fullReplot:!0,calc:!0};var s,l,c=M.traceFlags();c.arrays={},c.nChanges=0,c.nChangesAnim=0;var u={getValObject:function(t){var e=h.getTraceValObject(l,t);return!l._module.animatable&&e.anim&&(e.anim=!1),e},flags:c,immutable:n,transition:a,newDataRevision:i,gd:t},p={};for(s=0;s<e.length;s++)if(r[s]){if(l=r[s]._fullInput,f.hasMakesDataTransform(l)&&(l=r[s]),p[l.uid])continue;p[l.uid]=1,ot(e[s]._fullInput,l,[],u)}(c.calc||c.plot)&&(c.fullReplot=!0);a&&c.nChanges&&c.nChangesAnim&&(c.anim=c.nChanges===c.nChangesAnim&&o?\"all\":\"some\");return c}(t,c,w,S,C,I);J(t)&&(L.layoutReplot=!0),z.calc||L.calc?t.calcdata=void 0:f.supplyDefaultsUpdateCalc(t.calcdata,w);var O=[];if(i&&(t._transitionData={},f.createTransitionData(t),O.push((function(){return r.addFrames(t,i)}))),A.transition&&!g&&(z.anim||L.anim))L.ticks&&O.push(k.doTicksRelayout),f.doCalcdata(t),k.doAutoRangeAndConstraints(t),O.push((function(){return f.transitionFromReact(t,z,L,p)}));else if(z.fullReplot||L.layoutReplot||g)t._fullLayout._skipDefaults=!0,O.push(r.plot);else{for(var D in L.arrays){var R=L.arrays[D];if(R.length){var F=u.getComponentMethod(D,\"drawOne\");if(F!==o.noop)for(var N=0;N<R.length;N++)F(t,R[N]);else{var j=u.getComponentMethod(D,\"draw\");if(j===o.noop)throw new Error(\"cannot draw components: \"+D);j(t)}}}O.push(f.previousPromises),z.style&&O.push(k.doTraceStyle),(z.colorbars||L.colorbars)&&O.push(k.doColorBars),L.legend&&O.push(k.doLegend),L.layoutstyle&&O.push(k.layoutStyles),L.axrange&&G(O),L.ticks&&O.push(k.doTicksRelayout),L.modebar&&O.push(k.doModeBar),L.camera&&O.push(k.doCamera),O.push(E)}O.push(f.rehover,f.redrag),(l=o.syncOrAsync(O,t))&&l.then||(l=Promise.resolve(t))}else l=r.newPlot(t,e,n,a);return l.then((function(){return t.emit(\"plotly_react\",{data:e,layout:n}),t}))},r.redraw=function(t){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t);return T.cleanData(t.data),T.cleanLayout(t.layout),t.calcdata=void 0,r.plot(t).then((function(){return t.emit(\"plotly_redraw\"),t}))},r.relayout=q,r.restyle=F,r.setPlotConfig=function(t){return o.extendFlat(_,t)},r.update=K,r._guiRelayout=Q(q),r._guiRestyle=Q(F),r._guiUpdate=Q(K),r._storeDirectGUIEdit=function(t,e,r){for(var n in r){j(n,s(t,n).get(),r[n],e)}}},{\"../components/color\":615,\"../components/drawing\":637,\"../constants/xmlns_namespaces\":725,\"../lib\":749,\"../lib/events\":738,\"../lib/queue\":764,\"../lib/svg_text_utils\":773,\"../plots/cartesian/axes\":798,\"../plots/cartesian/constants\":804,\"../plots/cartesian/graph_interact\":807,\"../plots/cartesian/select\":817,\"../plots/plots\":861,\"../plots/polar/legacy\":869,\"../registry\":881,\"./edit_types\":780,\"./helpers\":781,\"./manage_arrays\":783,\"./plot_config\":785,\"./plot_schema\":786,\"./subroutines\":788,d3:169,\"fast-isnumeric\":241,\"has-hover\":414}],785:[function(t,e,r){\"use strict\";var n={staticPlot:{valType:\"boolean\",dflt:!1},plotlyServerURL:{valType:\"string\",dflt:\"\"},editable:{valType:\"boolean\",dflt:!1},edits:{annotationPosition:{valType:\"boolean\",dflt:!1},annotationTail:{valType:\"boolean\",dflt:!1},annotationText:{valType:\"boolean\",dflt:!1},axisTitleText:{valType:\"boolean\",dflt:!1},colorbarPosition:{valType:\"boolean\",dflt:!1},colorbarTitleText:{valType:\"boolean\",dflt:!1},legendPosition:{valType:\"boolean\",dflt:!1},legendText:{valType:\"boolean\",dflt:!1},shapePosition:{valType:\"boolean\",dflt:!1},titleText:{valType:\"boolean\",dflt:!1}},autosizable:{valType:\"boolean\",dflt:!1},responsive:{valType:\"boolean\",dflt:!1},fillFrame:{valType:\"boolean\",dflt:!1},frameMargins:{valType:\"number\",dflt:0,min:0,max:.5},scrollZoom:{valType:\"flaglist\",flags:[\"cartesian\",\"gl3d\",\"geo\",\"mapbox\"],extras:[!0,!1],dflt:\"gl3d+geo+mapbox\"},doubleClick:{valType:\"enumerated\",values:[!1,\"reset\",\"autosize\",\"reset+autosize\"],dflt:\"reset+autosize\"},doubleClickDelay:{valType:\"number\",dflt:300,min:0},showAxisDragHandles:{valType:\"boolean\",dflt:!0},showAxisRangeEntryBoxes:{valType:\"boolean\",dflt:!0},showTips:{valType:\"boolean\",dflt:!0},showLink:{valType:\"boolean\",dflt:!1},linkText:{valType:\"string\",dflt:\"Edit chart\",noBlank:!0},sendData:{valType:\"boolean\",dflt:!0},showSources:{valType:\"any\",dflt:!1},displayModeBar:{valType:\"enumerated\",values:[\"hover\",!0,!1],dflt:\"hover\"},showSendToCloud:{valType:\"boolean\",dflt:!1},showEditInChartStudio:{valType:\"boolean\",dflt:!1},modeBarButtonsToRemove:{valType:\"any\",dflt:[]},modeBarButtonsToAdd:{valType:\"any\",dflt:[]},modeBarButtons:{valType:\"any\",dflt:!1},toImageButtonOptions:{valType:\"any\",dflt:{}},displaylogo:{valType:\"boolean\",dflt:!0},watermark:{valType:\"boolean\",dflt:!1},plotGlPixelRatio:{valType:\"number\",dflt:2,min:1,max:4},setBackground:{valType:\"any\",dflt:\"transparent\"},topojsonURL:{valType:\"string\",noBlank:!0,dflt:\"https://cdn.plot.ly/\"},mapboxAccessToken:{valType:\"string\",dflt:null},logging:{valType:\"integer\",min:0,max:2,dflt:1},notifyOnLogging:{valType:\"integer\",min:0,max:2,dflt:0},queueLength:{valType:\"integer\",min:0,dflt:0},globalTransforms:{valType:\"any\",dflt:[]},locale:{valType:\"string\",dflt:\"en-US\"},locales:{valType:\"any\",dflt:{}}},a={};!function t(e,r){for(var n in e){var a=e[n];a.valType?r[n]=a.dflt:(r[n]||(r[n]={}),t(a,r[n]))}}(n,a),e.exports={configAttributes:n,dfltConfig:a}},{}],786:[function(t,e,r){\"use strict\";var n=t(\"../registry\"),a=t(\"../lib\"),i=t(\"../plots/attributes\"),o=t(\"../plots/layout_attributes\"),s=t(\"../plots/frame_attributes\"),l=t(\"../plots/animation_attributes\"),c=t(\"./plot_config\").configAttributes,u=t(\"../plots/polar/legacy/area_attributes\"),h=t(\"../plots/polar/legacy/axis_attributes\"),f=t(\"./edit_types\"),p=a.extendFlat,d=a.extendDeepAll,g=a.isPlainObject,m=a.isArrayOrTypedArray,v=a.nestedProperty,y=a.valObjectMeta,x=[\"_isSubplotObj\",\"_isLinkedToArray\",\"_arrayAttrRegexps\",\"_deprecated\"];function b(t,e,r){if(!t)return!1;if(t._isLinkedToArray)if(_(e[r]))r++;else if(r<e.length)return!1;for(;r<e.length;r++){var n=t[e[r]];if(!g(n))break;if(t=n,r===e.length-1)break;if(t._isLinkedToArray){if(!_(e[++r]))return!1}else if(\"info_array\"===t.valType){var a=e[++r];if(!_(a))return!1;var i=t.items;if(Array.isArray(i)){if(a>=i.length)return!1;if(2===t.dimensions){if(r++,e.length===r)return t;var o=e[r];if(!_(o))return!1;t=i[a][o]}else t=i[a]}else t=i}}return t}function _(t){return t===Math.round(t)&&t>=0}function w(){var t,e,r={};for(t in d(r,o),n.subplotsRegistry){if((e=n.subplotsRegistry[t]).layoutAttributes)if(Array.isArray(e.attr))for(var a=0;a<e.attr.length;a++)M(r,e,e.attr[a]);else M(r,e,\"subplot\"===e.attr?e.name:e.attr)}for(t in r=function(t){return p(t,{radialaxis:h.radialaxis,angularaxis:h.angularaxis}),p(t,h.layout),t}(r),n.componentsRegistry){var i=(e=n.componentsRegistry[t]).schema;if(i&&(i.subplots||i.layout)){var s=i.subplots;if(s&&s.xaxis&&!s.yaxis)for(var l in s.xaxis)delete r.yaxis[l]}else\"colorscale\"===e.name?d(r,e.layoutAttributes):e.layoutAttributes&&A(r,e.layoutAttributes,e.name)}return{layoutAttributes:k(r)}}function T(){var t={frames:d({},s)};return k(t),t.frames}function k(t){return function(t){r.crawl(t,(function(t,e,n){r.isValObject(t)?\"data_array\"===t.valType?(t.role=\"data\",n[e+\"src\"]={valType:\"string\",editType:\"none\"}):!0===t.arrayOk&&(n[e+\"src\"]={valType:\"string\",editType:\"none\"}):g(t)&&(t.role=\"object\")}))}(t),function(t){r.crawl(t,(function(t,e,r){if(t){var n=t._isLinkedToArray;n&&(delete t._isLinkedToArray,r[e]={items:{}},r[e].items[n]=t,r[e].role=\"object\")}}))}(t),function(t){!function t(e){for(var r in e)if(g(e[r]))t(e[r]);else if(Array.isArray(e[r]))for(var n=0;n<e[r].length;n++)t(e[r][n]);else e[r]instanceof RegExp&&(e[r]=e[r].toString())}(t)}(t),t}function M(t,e,r){var n=v(t,r),a=d({},e.layoutAttributes);a._isSubplotObj=!0,n.set(a)}function A(t,e,r){var n=v(t,r);n.set(d(n.get()||{},e))}r.IS_SUBPLOT_OBJ=\"_isSubplotObj\",r.IS_LINKED_TO_ARRAY=\"_isLinkedToArray\",r.DEPRECATED=\"_deprecated\",r.UNDERSCORE_ATTRS=x,r.get=function(){var t={};n.allTypes.concat(\"area\").forEach((function(e){t[e]=function(t){var e,a;\"area\"===t?(e={attributes:u},a={}):(e=n.modules[t]._module,a=e.basePlotModule);var o={type:null},s=d({},i),l=d({},e.attributes);r.crawl(l,(function(t,e,r,n,a){v(s,a).set(void 0),void 0===t&&v(l,a).set(void 0)})),d(o,s),n.traceIs(t,\"noOpacity\")&&delete o.opacity;n.traceIs(t,\"showLegend\")||(delete o.showlegend,delete o.legendgroup);n.traceIs(t,\"noHover\")&&(delete o.hoverinfo,delete o.hoverlabel);e.selectPoints||delete o.selectedpoints;d(o,l),a.attributes&&d(o,a.attributes);o.type=t;var c={meta:e.meta||{},categories:e.categories||{},animatable:Boolean(e.animatable),type:t,attributes:k(o)};if(e.layoutAttributes){var h={};d(h,e.layoutAttributes),c.layoutAttributes=k(h)}e.animatable||r.crawl(c,(function(t){r.isValObject(t)&&\"anim\"in t&&delete t.anim}));return c}(e)}));var e={};return Object.keys(n.transformsRegistry).forEach((function(t){e[t]=function(t){var e=n.transformsRegistry[t],r=d({},e.attributes);return Object.keys(n.componentsRegistry).forEach((function(e){var a=n.componentsRegistry[e];a.schema&&a.schema.transforms&&a.schema.transforms[t]&&Object.keys(a.schema.transforms[t]).forEach((function(e){A(r,a.schema.transforms[t][e],e)}))})),{attributes:k(r)}}(t)})),{defs:{valObjects:y,metaKeys:x.concat([\"description\",\"role\",\"editType\",\"impliedEdits\"]),editType:{traces:f.traces,layout:f.layout},impliedEdits:{}},traces:t,layout:w(),transforms:e,frames:T(),animation:k(l),config:k(c)}},r.crawl=function(t,e,n,a){var i=n||0;a=a||\"\",Object.keys(t).forEach((function(n){var o=t[n];if(-1===x.indexOf(n)){var s=(a?a+\".\":\"\")+n;e(o,n,t,i,s),r.isValObject(o)||g(o)&&\"impliedEdits\"!==n&&r.crawl(o,e,i+1,s)}}))},r.isValObject=function(t){return t&&void 0!==t.valType},r.findArrayAttributes=function(t){var e,n,a=[],o=[],s=[];function l(t,r,i,l){o=o.slice(0,l).concat([r]),s=s.slice(0,l).concat([t&&t._isLinkedToArray]),t&&(\"data_array\"===t.valType||!0===t.arrayOk)&&!(\"colorbar\"===o[l-1]&&(\"ticktext\"===r||\"tickvals\"===r))&&function t(e,r,i){var l=e[o[r]],c=i+o[r];if(r===o.length-1)m(l)&&a.push(n+c);else if(s[r]){if(Array.isArray(l))for(var u=0;u<l.length;u++)g(l[u])&&t(l[u],r+1,c+\"[\"+u+\"].\")}else g(l)&&t(l,r+1,c+\".\")}(e,0,\"\")}e=t,n=\"\",r.crawl(i,l),t._module&&t._module.attributes&&r.crawl(t._module.attributes,l);var c=t.transforms;if(c)for(var u=0;u<c.length;u++){var h=c[u],f=h._module;f&&(n=\"transforms[\"+u+\"].\",e=h,r.crawl(f.attributes,l))}return a},r.getTraceValObject=function(t,e){var r,a,o=e[0],s=1;if(\"transforms\"===o){if(1===e.length)return i.transforms;var l=t.transforms;if(!Array.isArray(l)||!l.length)return!1;var c=e[1];if(!_(c)||c>=l.length)return!1;a=(r=(n.transformsRegistry[l[c].type]||{}).attributes)&&r[e[2]],s=3}else if(\"area\"===t.type)a=u[o];else{var h=t._module;if(h||(h=(n.modules[t.type||i.type.dflt]||{})._module),!h)return!1;if(!(a=(r=h.attributes)&&r[o])){var f=h.basePlotModule;f&&f.attributes&&(a=f.attributes[o])}a||(a=i[o])}return b(a,e,s)},r.getLayoutValObject=function(t,e){return b(function(t,e){var r,a,i,s,l=t._basePlotModules;if(l){var c;for(r=0;r<l.length;r++){if((i=l[r]).attrRegex&&i.attrRegex.test(e)){if(i.layoutAttrOverrides)return i.layoutAttrOverrides;!c&&i.layoutAttributes&&(c=i.layoutAttributes)}var u=i.baseLayoutAttrOverrides;if(u&&e in u)return u[e]}if(c)return c}var f=t._modules;if(f)for(r=0;r<f.length;r++)if((s=f[r].layoutAttributes)&&e in s)return s[e];for(a in n.componentsRegistry){if(\"colorscale\"===(i=n.componentsRegistry[a]).name&&0===e.indexOf(\"coloraxis\"))return i.layoutAttributes[e];if(!i.schema&&e===i.name)return i.layoutAttributes}if(e in o)return o[e];if(\"radialaxis\"===e||\"angularaxis\"===e)return h[e];return h.layout[e]||!1}(t,e[0]),e,1)}},{\"../lib\":749,\"../plots/animation_attributes\":792,\"../plots/attributes\":794,\"../plots/frame_attributes\":827,\"../plots/layout_attributes\":852,\"../plots/polar/legacy/area_attributes\":867,\"../plots/polar/legacy/axis_attributes\":868,\"../registry\":881,\"./edit_types\":780,\"./plot_config\":785}],787:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plots/attributes\"),i={name:{valType:\"string\",editType:\"none\"}};function o(t){return t&&\"string\"==typeof t}function s(t){var e=t.length-1;return\"s\"!==t.charAt(e)&&n.warn(\"bad argument to arrayDefaultKey: \"+t),t.substr(0,t.length-1)+\"defaults\"}i.templateitemname={valType:\"string\",editType:\"calc\"},r.templatedArray=function(t,e){return e._isLinkedToArray=t,e.name=i.name,e.templateitemname=i.templateitemname,e},r.traceTemplater=function(t){var e,r,i={};for(e in t)r=t[e],Array.isArray(r)&&r.length&&(i[e]=0);return{newTrace:function(o){var s={type:e=n.coerce(o,{},a,\"type\"),_template:null};if(e in i){r=t[e];var l=i[e]%r.length;i[e]++,s._template=r[l]}return s}}},r.newContainer=function(t,e,r){var a=t._template,i=a&&(a[e]||r&&a[r]);return n.isPlainObject(i)||(i=null),t[e]={_template:i}},r.arrayTemplater=function(t,e,r){var n=t._template,a=n&&n[s(e)],i=n&&n[e];Array.isArray(i)&&i.length||(i=[]);var l={};return{newItem:function(t){var e={name:t.name,_input:t},n=e.templateitemname=t.templateitemname;if(!o(n))return e._template=a,e;for(var s=0;s<i.length;s++){var c=i[s];if(c.name===n)return l[n]=1,e._template=c,e}return e[r]=t[r]||!1,e._template=!1,e},defaultItems:function(){for(var t=[],e=0;e<i.length;e++){var r=i[e],n=r.name;if(o(n)&&!l[n]){var a={_template:r,name:n,_input:{_templateitemname:n}};a.templateitemname=r.templateitemname,t.push(a),l[n]=1}}return t}}},r.arrayDefaultKey=s,r.arrayEditor=function(t,e,r){var a=(n.nestedProperty(t,e).get()||[]).length,i=r._index,o=i>=a&&(r._input||{})._templateitemname;o&&(i=a);var s,l=e+\"[\"+i+\"]\";function c(){s={},o&&(s[l]={},s[l].templateitemname=o)}function u(t,e){o?n.nestedProperty(s[l],t).set(e):s[l+\".\"+t]=e}function h(){var t=s;return c(),t}return c(),{modifyBase:function(t,e){s[t]=e},modifyItem:u,getUpdateObj:h,applyUpdate:function(e,r){e&&u(e,r);var a=h();for(var i in a)n.nestedProperty(t,i).set(a[i])}}}},{\"../lib\":749,\"../plots/attributes\":794}],788:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../registry\"),i=t(\"../plots/plots\"),o=t(\"../lib\"),s=t(\"../lib/clear_gl_canvases\"),l=t(\"../components/color\"),c=t(\"../components/drawing\"),u=t(\"../components/titles\"),h=t(\"../components/modebar\"),f=t(\"../plots/cartesian/axes\"),p=t(\"../constants/alignment\"),d=t(\"../plots/cartesian/constraints\"),g=d.enforce,m=d.clean,v=t(\"../plots/cartesian/autorange\").doAutoRange;function y(t,e,r){for(var n=0;n<r.length;n++){var a=r[n][0],i=r[n][1];if(!(a[0]>=t[1]||a[1]<=t[0])&&(i[0]<e[1]&&i[1]>e[0]))return!0}return!1}function x(t){var e,a,s,u,d,g,m=t._fullLayout,v=m._size,x=v.p,_=f.list(t,\"\",!0);if(m._paperdiv.style({width:t._context.responsive&&m.autosize&&!t._context._hasZeroWidth&&!t.layout.width?\"100%\":m.width+\"px\",height:t._context.responsive&&m.autosize&&!t._context._hasZeroHeight&&!t.layout.height?\"100%\":m.height+\"px\"}).selectAll(\".main-svg\").call(c.setSize,m.width,m.height),t._context.setBackground(t,m.paper_bgcolor),r.drawMainTitle(t),h.manage(t),!m._has(\"cartesian\"))return i.previousPromises(t);function T(t,e,r){var n=t._lw/2;return\"x\"===t._id.charAt(0)?e?\"top\"===r?e._offset-x-n:e._offset+e._length+x+n:v.t+v.h*(1-(t.position||0))+n%1:e?\"right\"===r?e._offset+e._length+x+n:e._offset-x-n:v.l+v.w*(t.position||0)+n%1}for(e=0;e<_.length;e++){var k=(u=_[e])._anchorAxis;u._linepositions={},u._lw=c.crispRound(t,u.linewidth,1),u._mainLinePosition=T(u,k,u.side),u._mainMirrorPosition=u.mirror&&k?T(u,k,p.OPPOSITE_SIDE[u.side]):null}var M=[],A=[],S=[],E=1===l.opacity(m.paper_bgcolor)&&1===l.opacity(m.plot_bgcolor)&&m.paper_bgcolor===m.plot_bgcolor;for(a in m._plots)if((s=m._plots[a]).mainplot)s.bg&&s.bg.remove(),s.bg=void 0;else{var C=s.xaxis.domain,L=s.yaxis.domain,P=s.plotgroup;if(y(C,L,S)){var I=P.node(),z=s.bg=o.ensureSingle(P,\"rect\",\"bg\");I.insertBefore(z.node(),I.childNodes[0]),A.push(a)}else P.select(\"rect.bg\").remove(),S.push([C,L]),E||(M.push(a),A.push(a))}var O,D,R,F,B,N,j,U,V,q,H,G,Y,W=m._bgLayer.selectAll(\".bg\").data(M);for(W.enter().append(\"rect\").classed(\"bg\",!0),W.exit().remove(),W.each((function(t){m._plots[t].bg=n.select(this)})),e=0;e<A.length;e++)s=m._plots[A[e]],d=s.xaxis,g=s.yaxis,s.bg&&s.bg.call(c.setRect,d._offset-x,g._offset-x,d._length+2*x,g._length+2*x).call(l.fill,m.plot_bgcolor).style(\"stroke-width\",0);if(!m._hasOnlyLargeSploms)for(a in m._plots){s=m._plots[a],d=s.xaxis,g=s.yaxis;var Z,X,J=s.clipId=\"clip\"+m._uid+a+\"plot\",K=o.ensureSingleById(m._clips,\"clipPath\",J,(function(t){t.classed(\"plotclip\",!0).append(\"rect\")}));s.clipRect=K.select(\"rect\").attr({width:d._length,height:g._length}),c.setTranslate(s.plot,d._offset,g._offset),s._hasClipOnAxisFalse?(Z=null,X=J):(Z=J,X=null),c.setClipUrl(s.plot,Z,t),s.layerClipId=X}function Q(t){return\"M\"+O+\",\"+t+\"H\"+D}function $(t){return\"M\"+d._offset+\",\"+t+\"h\"+d._length}function tt(t){return\"M\"+t+\",\"+U+\"V\"+j}function et(t){return\"M\"+t+\",\"+g._offset+\"v\"+g._length}function rt(t,e,r){if(!t.showline||a!==t._mainSubplot)return\"\";if(!t._anchorAxis)return r(t._mainLinePosition);var n=e(t._mainLinePosition);return t.mirror&&(n+=e(t._mainMirrorPosition)),n}for(a in m._plots){s=m._plots[a],d=s.xaxis,g=s.yaxis;var nt=\"M0,0\";b(d,a)&&(B=w(d,\"left\",g,_),O=d._offset-(B?x+B:0),N=w(d,\"right\",g,_),D=d._offset+d._length+(N?x+N:0),R=T(d,g,\"bottom\"),F=T(d,g,\"top\"),!(Y=!d._anchorAxis||a!==d._mainSubplot)||\"allticks\"!==d.mirror&&\"all\"!==d.mirror||(d._linepositions[a]=[R,F]),nt=rt(d,Q,$),Y&&d.showline&&(\"all\"===d.mirror||\"allticks\"===d.mirror)&&(nt+=Q(R)+Q(F)),s.xlines.style(\"stroke-width\",d._lw+\"px\").call(l.stroke,d.showline?d.linecolor:\"rgba(0,0,0,0)\")),s.xlines.attr(\"d\",nt);var at=\"M0,0\";b(g,a)&&(H=w(g,\"bottom\",d,_),j=g._offset+g._length+(H?x:0),G=w(g,\"top\",d,_),U=g._offset-(G?x:0),V=T(g,d,\"left\"),q=T(g,d,\"right\"),!(Y=!g._anchorAxis||a!==g._mainSubplot)||\"allticks\"!==g.mirror&&\"all\"!==g.mirror||(g._linepositions[a]=[V,q]),at=rt(g,tt,et),Y&&g.showline&&(\"all\"===g.mirror||\"allticks\"===g.mirror)&&(at+=tt(V)+tt(q)),s.ylines.style(\"stroke-width\",g._lw+\"px\").call(l.stroke,g.showline?g.linecolor:\"rgba(0,0,0,0)\")),s.ylines.attr(\"d\",at)}return f.makeClipPaths(t),i.previousPromises(t)}function b(t,e){return(t.ticks||t.showline)&&(e===t._mainSubplot||\"all\"===t.mirror||\"allticks\"===t.mirror)}function _(t,e,r){if(!r.showline||!r._lw)return!1;if(\"all\"===r.mirror||\"allticks\"===r.mirror)return!0;var n=r._anchorAxis;if(!n)return!1;var a=p.FROM_BL[e];return r.side===e?n.domain[a]===t.domain[a]:r.mirror&&n.domain[1-a]===t.domain[1-a]}function w(t,e,r,n){if(_(t,e,r))return r._lw;for(var a=0;a<n.length;a++){var i=n[a];if(i._mainAxis===r._mainAxis&&_(t,e,i))return i._lw}return 0}function T(t,e){var r=t.title,n=t._size,a=0;switch(\"start\"===e?a=r.pad.l:\"end\"===e&&(a=-r.pad.r),r.xref){case\"paper\":return n.l+n.w*r.x+a;case\"container\":default:return t.width*r.x+a}}function k(t,e){var r=t.title,n=t._size,a=0;if(\"0em\"!==e&&e?e===p.CAP_SHIFT+\"em\"&&(a=r.pad.t):a=-r.pad.b,\"auto\"===r.y)return n.t/2;switch(r.yref){case\"paper\":return n.t+n.h-n.h*r.y+a;case\"container\":default:return t.height-t.height*r.y+a}}r.layoutStyles=function(t){return o.syncOrAsync([i.doAutoMargin,x],t)},r.drawMainTitle=function(t){var e=t._fullLayout,r=function(t){var e=t.title,r=\"middle\";o.isRightAnchor(e)?r=\"end\":o.isLeftAnchor(e)&&(r=\"start\");return r}(e),n=function(t){var e=t.title,r=\"0em\";o.isTopAnchor(e)?r=p.CAP_SHIFT+\"em\":o.isMiddleAnchor(e)&&(r=p.MID_SHIFT+\"em\");return r}(e);u.draw(t,\"gtitle\",{propContainer:e,propName:\"title.text\",placeholder:e._dfltTitle.plot,attributes:{x:T(e,r),y:k(e,n),\"text-anchor\":r,dy:n}})},r.doTraceStyle=function(t){var e,n=t.calcdata,o=[];for(e=0;e<n.length;e++){var l=n[e],c=l[0]||{},u=c.trace||{},h=u._module||{},f=h.arraysToCalcdata;f&&f(l,u);var p=h.editStyle;p&&o.push({fn:p,cd0:c})}if(o.length){for(e=0;e<o.length;e++){var d=o[e];d.fn(t,d.cd0)}s(t),r.redrawReglTraces(t)}return i.style(t),a.getComponentMethod(\"legend\",\"draw\")(t),i.previousPromises(t)},r.doColorBars=function(t){return a.getComponentMethod(\"colorbar\",\"draw\")(t),i.previousPromises(t)},r.layoutReplot=function(t){var e=t.layout;return t.layout=void 0,a.call(\"plot\",t,\"\",e)},r.doLegend=function(t){return a.getComponentMethod(\"legend\",\"draw\")(t),i.previousPromises(t)},r.doTicksRelayout=function(t){return f.draw(t,\"redraw\"),t._fullLayout._hasOnlyLargeSploms&&(a.subplotsRegistry.splom.updateGrid(t),s(t),r.redrawReglTraces(t)),r.drawMainTitle(t),i.previousPromises(t)},r.doModeBar=function(t){var e=t._fullLayout;h.manage(t);for(var r=0;r<e._basePlotModules.length;r++){var n=e._basePlotModules[r].updateFx;n&&n(t)}return i.previousPromises(t)},r.doCamera=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=0;n<r.length;n++){var a=e[r[n]];a._scene.setViewport(a)}},r.drawData=function(t){var e=t._fullLayout;s(t);for(var n=e._basePlotModules,o=0;o<n.length;o++)n[o].plot(t);return r.redrawReglTraces(t),i.style(t),a.getComponentMethod(\"shapes\",\"draw\")(t),a.getComponentMethod(\"annotations\",\"draw\")(t),a.getComponentMethod(\"images\",\"draw\")(t),e._replotting=!1,i.previousPromises(t)},r.redrawReglTraces=function(t){var e=t._fullLayout;if(e._has(\"regl\")){var r,n,a=t._fullData,i=[],s=[];for(e._hasOnlyLargeSploms&&e._splomGrid.draw(),r=0;r<a.length;r++){var l=a[r];!0===l.visible&&0!==l._length&&(\"splom\"===l.type?e._splomScenes[l.uid].draw():\"scattergl\"===l.type?o.pushUnique(i,l.xaxis+l.yaxis):\"scatterpolargl\"===l.type&&o.pushUnique(s,l.subplot))}for(r=0;r<i.length;r++)(n=e._plots[i[r]])._scene&&n._scene.draw();for(r=0;r<s.length;r++)(n=e[s[r]]._subplot)._scene&&n._scene.draw()}},r.doAutoRangeAndConstraints=function(t){for(var e,r,n=t._fullLayout,a=f.list(t,\"\",!0),i=n._axisMatchGroups||[],s={},l=0;l<a.length;l++)e=a[l],m(t,e),v(t,e),s[e._id]=1;g(t);t:for(var c=0;c<i.length;c++){var u,h=i[c],p=null;for(u in h)if(s[(e=f.getFromId(t,u))._id]){if(!1===e.autorange)continue t;r=o.simpleMap(e.range,e.r2l),p?p[0]<p[1]?(p[0]=Math.min(p[0],r[0]),p[1]=Math.max(p[1],r[1])):(p[0]=Math.max(p[0],r[0]),p[1]=Math.min(p[1],r[1])):p=r}for(u in h)(e=f.getFromId(t,u)).range=o.simpleMap(p,e.l2r),e._input.range=e.range.slice(),e.setScale()}},r.finalDraw=function(t){a.getComponentMethod(\"rangeslider\",\"draw\")(t),a.getComponentMethod(\"rangeselector\",\"draw\")(t)},r.drawMarginPushers=function(t){a.getComponentMethod(\"legend\",\"draw\")(t),a.getComponentMethod(\"rangeselector\",\"draw\")(t),a.getComponentMethod(\"sliders\",\"draw\")(t),a.getComponentMethod(\"updatemenus\",\"draw\")(t),a.getComponentMethod(\"colorbar\",\"draw\")(t)}},{\"../components/color\":615,\"../components/drawing\":637,\"../components/modebar\":675,\"../components/titles\":710,\"../constants/alignment\":717,\"../lib\":749,\"../lib/clear_gl_canvases\":733,\"../plots/cartesian/autorange\":797,\"../plots/cartesian/axes\":798,\"../plots/cartesian/constraints\":805,\"../plots/plots\":861,\"../registry\":881,d3:169}],789:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=n.isPlainObject,i=t(\"./plot_schema\"),o=t(\"../plots/plots\"),s=t(\"../plots/attributes\"),l=t(\"./plot_template\"),c=t(\"./plot_config\").dfltConfig;function u(t,e){t=n.extendDeep({},t);var r,i,o=Object.keys(t).sort();function s(e,r,n){if(a(r)&&a(e))u(e,r);else if(Array.isArray(r)&&Array.isArray(e)){var o=l.arrayTemplater({_template:t},n);for(i=0;i<r.length;i++){var s=r[i],c=o.newItem(s)._template;c&&u(c,s)}var h=o.defaultItems();for(i=0;i<h.length;i++)r.push(h[i]._template);for(i=0;i<r.length;i++)delete r[i].templateitemname}}for(r=0;r<o.length;r++){var c=o[r],f=t[c];if(c in e?s(f,e[c],c):e[c]=f,h(c)===c)for(var p in e){var d=h(p);p===d||d!==c||p in t||s(f,e[p],c)}}}function h(t){return t.replace(/[0-9]+$/,\"\")}function f(t,e,r,i,o){var s=o&&r(o);for(var c in t){var u=t[c],p=g(t,c,i),d=g(t,c,o),m=r(d);if(!m){var v=h(c);v!==c&&(m=r(d=g(t,v,o)))}if((!s||s!==m)&&!(!m||m._noTemplating||\"data_array\"===m.valType||m.arrayOk&&Array.isArray(u)))if(!m.valType&&a(u))f(u,e,r,p,d);else if(m._isLinkedToArray&&Array.isArray(u))for(var y=!1,x=0,b={},_=0;_<u.length;_++){var w=u[_];if(a(w)){var T=w.name;if(T)b[T]||(f(w,e,r,g(u,x,p),g(u,x,d)),x++,b[T]=1);else if(!y){var k=g(t,l.arrayDefaultKey(c),i),M=g(u,x,p);f(w,e,r,M,g(u,x,d));var A=n.nestedProperty(e,M);n.nestedProperty(e,k).set(A.get()),A.set(null),y=!0}}}else{n.nestedProperty(e,p).set(u)}}}function p(t,e){return i.getLayoutValObject(t,n.nestedProperty({},e).parts)}function d(t,e){return i.getTraceValObject(t,n.nestedProperty({},e).parts)}function g(t,e,r){return r?Array.isArray(t)?r+\"[\"+e+\"]\":r+\".\"+e:e}function m(t){for(var e=0;e<t.length;e++)if(a(t[e]))return!0}function v(t){var e;switch(t.code){case\"data\":e=\"The template has no key data.\";break;case\"layout\":e=\"The template has no key layout.\";break;case\"missing\":e=t.path?\"There are no templates for item \"+t.path+\" with name \"+t.templateitemname:\"There are no templates for trace \"+t.index+\", of type \"+t.traceType+\".\";break;case\"unused\":e=t.path?\"The template item at \"+t.path+\" was not used in constructing the plot.\":t.dataCount?\"Some of the templates of type \"+t.traceType+\" were not used. The template has \"+t.templateCount+\" traces, the data only has \"+t.dataCount+\" of this type.\":\"The template has \"+t.templateCount+\" traces of type \"+t.traceType+\" but there are none in the data.\";break;case\"reused\":e=\"Some of the templates of type \"+t.traceType+\" were used more than once. The template has \"+t.templateCount+\" traces, the data has \"+t.dataCount+\" of this type.\"}return t.msg=e,t}r.makeTemplate=function(t){t=n.isPlainObject(t)?t:n.getGraphDiv(t),t=n.extendDeep({_context:c},{data:t.data,layout:t.layout}),o.supplyDefaults(t);var e=t.data||[],r=t.layout||{};r._basePlotModules=t._fullLayout._basePlotModules,r._modules=t._fullLayout._modules;var i={data:{},layout:{}};e.forEach((function(t){var e={};f(t,e,d.bind(null,t));var r=n.coerce(t,{},s,\"type\"),a=i.data[r];a||(a=i.data[r]=[]),a.push(e)})),f(r,i.layout,p.bind(null,r)),delete i.layout.template;var l=r.template;if(a(l)){var h,g,m,v,y,x,b=l.layout;a(b)&&u(b,i.layout);var _=l.data;if(a(_)){for(g in i.data)if(m=_[g],Array.isArray(m)){for(x=(y=i.data[g]).length,v=m.length,h=0;h<x;h++)u(m[h%v],y[h]);for(h=x;h<v;h++)y.push(n.extendDeep({},m[h]))}for(g in _)g in i.data||(i.data[g]=n.extendDeep([],_[g]))}}return i},r.validateTemplate=function(t,e){var r=n.extendDeep({},{_context:c,data:t.data,layout:t.layout}),i=r.layout||{};a(e)||(e=i.template||{});var s=e.layout,l=e.data,u=[];r.layout=i,r.layout.template=e,o.supplyDefaults(r);var f=r._fullLayout,p=r._fullData,d={};if(a(s)?(!function t(e,r){for(var n in e)if(\"_\"!==n.charAt(0)&&a(e[n])){var i,o=h(n),s=[];for(i=0;i<r.length;i++)s.push(g(e,n,r[i])),o!==n&&s.push(g(e,o,r[i]));for(i=0;i<s.length;i++)d[s[i]]=1;t(e[n],s)}}(f,[\"layout\"]),function t(e,r){for(var n in e)if(-1===n.indexOf(\"defaults\")&&a(e[n])){var i=g(e,n,r);d[i]?t(e[n],i):u.push({code:\"unused\",path:i})}}(s,\"layout\")):u.push({code:\"layout\"}),a(l)){for(var y,x={},b=0;b<p.length;b++){var _=p[b];x[y=_.type]=(x[y]||0)+1,_._fullInput._template||u.push({code:\"missing\",index:_._fullInput.index,traceType:y})}for(y in l){var w=l[y].length,T=x[y]||0;w>T?u.push({code:\"unused\",traceType:y,templateCount:w,dataCount:T}):T>w&&u.push({code:\"reused\",traceType:y,templateCount:w,dataCount:T})}}else u.push({code:\"data\"});if(function t(e,r){for(var n in e)if(\"_\"!==n.charAt(0)){var i=e[n],o=g(e,n,r);a(i)?(Array.isArray(e)&&!1===i._template&&i.templateitemname&&u.push({code:\"missing\",path:o,templateitemname:i.templateitemname}),t(i,o)):Array.isArray(i)&&m(i)&&t(i,o)}}({data:p,layout:f},\"\"),u.length)return u.map(v)}},{\"../lib\":749,\"../plots/attributes\":794,\"../plots/plots\":861,\"./plot_config\":785,\"./plot_schema\":786,\"./plot_template\":787}],790:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./plot_api\"),i=t(\"../plots/plots\"),o=t(\"../lib\"),s=t(\"../snapshot/helpers\"),l=t(\"../snapshot/tosvg\"),c=t(\"../snapshot/svgtoimg\"),u=t(\"../version\").version,h={format:{valType:\"enumerated\",values:[\"png\",\"jpeg\",\"webp\",\"svg\",\"full-json\"],dflt:\"png\"},width:{valType:\"number\",min:1},height:{valType:\"number\",min:1},scale:{valType:\"number\",min:0,dflt:1},setBackground:{valType:\"any\",dflt:!1},imageDataOnly:{valType:\"boolean\",dflt:!1}};e.exports=function(t,e){var r,f,p,d;function g(t){return!(t in e)||o.validate(e[t],h[t])}if(e=e||{},o.isPlainObject(t)?(r=t.data||[],f=t.layout||{},p=t.config||{},d={}):(t=o.getGraphDiv(t),r=o.extendDeep([],t.data),f=o.extendDeep({},t.layout),p=t._context,d=t._fullLayout||{}),!g(\"width\")&&null!==e.width||!g(\"height\")&&null!==e.height)throw new Error(\"Height and width should be pixel values.\");if(!g(\"format\"))throw new Error(\"Image format is not jpeg, png, svg or webp.\");var m={};function v(t,r){return o.coerce(e,m,h,t,r)}var y=v(\"format\"),x=v(\"width\"),b=v(\"height\"),_=v(\"scale\"),w=v(\"setBackground\"),T=v(\"imageDataOnly\"),k=document.createElement(\"div\");k.style.position=\"absolute\",k.style.left=\"-5000px\",document.body.appendChild(k);var M=o.extendFlat({},f);x?M.width=x:null===e.width&&n(d.width)&&(M.width=d.width),b?M.height=b:null===e.height&&n(d.height)&&(M.height=d.height);var A=o.extendFlat({},p,{_exportedPlot:!0,staticPlot:!0,setBackground:w}),S=s.getRedrawFunc(k);function E(){return new Promise((function(t){setTimeout(t,s.getDelay(k._fullLayout))}))}function C(){return new Promise((function(t,e){var r=l(k,y,_),n=k._fullLayout.width,h=k._fullLayout.height;function f(){a.purge(k),document.body.removeChild(k)}if(\"full-json\"===y){var p=i.graphJson(k,!1,\"keepdata\",\"object\",!0,!0);return p.version=u,p=JSON.stringify(p),f(),t(T?p:s.encodeJSON(p))}if(f(),\"svg\"===y)return t(T?r:s.encodeSVG(r));var d=document.createElement(\"canvas\");d.id=o.randstr(),c({format:y,width:n,height:h,scale:_,canvas:d,svg:r,promise:!0}).then(t).catch(e)}))}return new Promise((function(t,e){a.plot(k,r,M,A).then(S).then(E).then(C).then((function(e){t(function(t){return T?t.replace(s.IMAGE_URL_PREFIX,\"\"):t}(e))})).catch((function(t){e(t)}))}))}},{\"../lib\":749,\"../plots/plots\":861,\"../snapshot/helpers\":885,\"../snapshot/svgtoimg\":887,\"../snapshot/tosvg\":889,\"../version\":1339,\"./plot_api\":784,\"fast-isnumeric\":241}],791:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plots/plots\"),i=t(\"./plot_schema\"),o=t(\"./plot_config\").dfltConfig,s=n.isPlainObject,l=Array.isArray,c=n.isArrayOrTypedArray;function u(t,e,r,a,i,o){o=o||[];for(var h=Object.keys(t),f=0;f<h.length;f++){var p=h[f];if(\"transforms\"!==p){var v=o.slice();v.push(p);var y=t[p],x=e[p],b=m(r,p),_=(b||{}).valType,w=\"info_array\"===_,T=\"colorscale\"===_,k=(b||{}).items;if(g(r,p))if(s(y)&&s(x)&&\"any\"!==_)u(y,x,b,a,i,v);else if(w&&l(y)){y.length>x.length&&a.push(d(\"unused\",i,v.concat(x.length)));var M,A,S,E,C,L=x.length,P=Array.isArray(k);if(P&&(L=Math.min(L,k.length)),2===b.dimensions)for(A=0;A<L;A++)if(l(y[A])){y[A].length>x[A].length&&a.push(d(\"unused\",i,v.concat(A,x[A].length)));var I=x[A].length;for(M=0;M<(P?Math.min(I,k[A].length):I);M++)S=P?k[A][M]:k,E=y[A][M],C=x[A][M],n.validate(E,S)?C!==E&&C!==+E&&a.push(d(\"dynamic\",i,v.concat(A,M),E,C)):a.push(d(\"value\",i,v.concat(A,M),E))}else a.push(d(\"array\",i,v.concat(A),y[A]));else for(A=0;A<L;A++)S=P?k[A]:k,E=y[A],C=x[A],n.validate(E,S)?C!==E&&C!==+E&&a.push(d(\"dynamic\",i,v.concat(A),E,C)):a.push(d(\"value\",i,v.concat(A),E))}else if(b.items&&!w&&l(y)){var z,O,D=k[Object.keys(k)[0]],R=[];for(z=0;z<x.length;z++){var F=x[z]._index||z;if((O=v.slice()).push(F),s(y[F])&&s(x[z])){R.push(F);var B=y[F],N=x[z];s(B)&&!1!==B.visible&&!1===N.visible?a.push(d(\"invisible\",i,O)):u(B,N,D,a,i,O)}}for(z=0;z<y.length;z++)(O=v.slice()).push(z),s(y[z])?-1===R.indexOf(z)&&a.push(d(\"unused\",i,O)):a.push(d(\"object\",i,O,y[z]))}else!s(y)&&s(x)?a.push(d(\"object\",i,v,y)):c(y)||!c(x)||w||T?p in e?n.validate(y,b)?\"enumerated\"===b.valType&&(b.coerceNumber&&y!==+x||y!==x)&&a.push(d(\"dynamic\",i,v,y,x)):a.push(d(\"value\",i,v,y)):a.push(d(\"unused\",i,v,y)):a.push(d(\"array\",i,v,y));else a.push(d(\"schema\",i,v))}}return a}function h(t,e){for(var r=t.layout.layoutAttributes,a=0;a<e.length;a++){var i=e[a],o=t.traces[i.type],s=o.layoutAttributes;s&&(i.subplot?n.extendFlat(r[o.attributes.subplot.dflt],s):n.extendFlat(r,s))}return r}e.exports=function(t,e){void 0===t&&(t=[]),void 0===e&&(e={});var r,c,f=i.get(),p=[],g={_context:n.extendFlat({},o)};l(t)?(g.data=n.extendDeep([],t),r=t):(g.data=[],r=[],p.push(d(\"array\",\"data\"))),s(e)?(g.layout=n.extendDeep({},e),c=e):(g.layout={},c={},arguments.length>1&&p.push(d(\"object\",\"layout\"))),a.supplyDefaults(g);for(var m=g._fullData,v=r.length,y=0;y<v;y++){var x=r[y],b=[\"data\",y];if(s(x)){var _=m[y],w=_.type,T=f.traces[w].attributes;T.type={valType:\"enumerated\",values:[w]},!1===_.visible&&!1!==x.visible&&p.push(d(\"invisible\",b)),u(x,_,T,p,b);var k=x.transforms,M=_.transforms;if(k){l(k)||p.push(d(\"array\",b,[\"transforms\"])),b.push(\"transforms\");for(var A=0;A<k.length;A++){var S=[\"transforms\",A],E=k[A].type;if(s(k[A])){var C=f.transforms[E]?f.transforms[E].attributes:{};C.type={valType:\"enumerated\",values:Object.keys(f.transforms)},u(k[A],M[A],C,p,b,S)}else p.push(d(\"object\",b,S))}}}else p.push(d(\"object\",b))}var L=g._fullLayout,P=h(f,m);return u(c,L,P,p,\"layout\"),0===p.length?void 0:p};var f={object:function(t,e){return(\"layout\"===t&&\"\"===e?\"The layout argument\":\"data\"===t[0]&&\"\"===e?\"Trace \"+t[1]+\" in the data argument\":p(t)+\"key \"+e)+\" must be linked to an object container\"},array:function(t,e){return(\"data\"===t?\"The data argument\":p(t)+\"key \"+e)+\" must be linked to an array container\"},schema:function(t,e){return p(t)+\"key \"+e+\" is not part of the schema\"},unused:function(t,e,r){var n=s(r)?\"container\":\"key\";return p(t)+n+\" \"+e+\" did not get coerced\"},dynamic:function(t,e,r,n){return[p(t)+\"key\",e,\"(set to '\"+r+\"')\",\"got reset to\",\"'\"+n+\"'\",\"during defaults.\"].join(\" \")},invisible:function(t,e){return(e?p(t)+\"item \"+e:\"Trace \"+t[1])+\" got defaulted to be not visible\"},value:function(t,e,r){return[p(t)+\"key \"+e,\"is set to an invalid value (\"+r+\")\"].join(\" \")}};function p(t){return l(t)?\"In data trace \"+t[1]+\", \":\"In \"+t+\", \"}function d(t,e,r,a,i){var o,s;r=r||\"\",l(e)?(o=e[0],s=e[1]):(o=e,s=null);var c=function(t){if(!l(t))return String(t);for(var e=\"\",r=0;r<t.length;r++){var n=t[r];\"number\"==typeof n?e=e.substr(0,e.length-1)+\"[\"+n+\"]\":e+=n,r<t.length-1&&(e+=\".\")}return e}(r),u=f[t](e,c,a,i);return n.log(u),{code:t,container:o,trace:s,path:r,astr:c,msg:u}}function g(t,e){var r=y(e),n=r.keyMinusId,a=r.id;return!!(n in t&&t[n]._isSubplotObj&&a)||e in t}function m(t,e){return e in t?t[e]:t[y(e).keyMinusId]}var v=n.counterRegex(\"([a-z]+)\");function y(t){var e=t.match(v);return{keyMinusId:e&&e[1],id:e&&e[2]}}},{\"../lib\":749,\"../plots/plots\":861,\"./plot_config\":785,\"./plot_schema\":786}],792:[function(t,e,r){\"use strict\";e.exports={mode:{valType:\"enumerated\",dflt:\"afterall\",values:[\"immediate\",\"next\",\"afterall\"]},direction:{valType:\"enumerated\",values:[\"forward\",\"reverse\"],dflt:\"forward\"},fromcurrent:{valType:\"boolean\",dflt:!1},frame:{duration:{valType:\"number\",min:0,dflt:500},redraw:{valType:\"boolean\",dflt:!0}},transition:{duration:{valType:\"number\",min:0,dflt:500,editType:\"none\"},easing:{valType:\"enumerated\",dflt:\"cubic-in-out\",values:[\"linear\",\"quad\",\"cubic\",\"sin\",\"exp\",\"circle\",\"elastic\",\"back\",\"bounce\",\"linear-in\",\"quad-in\",\"cubic-in\",\"sin-in\",\"exp-in\",\"circle-in\",\"elastic-in\",\"back-in\",\"bounce-in\",\"linear-out\",\"quad-out\",\"cubic-out\",\"sin-out\",\"exp-out\",\"circle-out\",\"elastic-out\",\"back-out\",\"bounce-out\",\"linear-in-out\",\"quad-in-out\",\"cubic-in-out\",\"sin-in-out\",\"exp-in-out\",\"circle-in-out\",\"elastic-in-out\",\"back-in-out\",\"bounce-in-out\"],editType:\"none\"},ordering:{valType:\"enumerated\",values:[\"layout first\",\"traces first\"],dflt:\"layout first\",editType:\"none\"}}}},{}],793:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plot_api/plot_template\");e.exports=function(t,e,r){var i,o,s=r.name,l=r.inclusionAttr||\"visible\",c=e[s],u=n.isArrayOrTypedArray(t[s])?t[s]:[],h=e[s]=[],f=a.arrayTemplater(e,s,l);for(i=0;i<u.length;i++){var p=u[i];n.isPlainObject(p)?o=f.newItem(p):(o=f.newItem({}))[l]=!1,o._index=i,!1!==o[l]&&r.handleItemDefaults(p,o,e,r),h.push(o)}var d=f.defaultItems();for(i=0;i<d.length;i++)(o=d[i])._index=h.length,r.handleItemDefaults({},o,e,r,{}),h.push(o);if(n.isArrayOrTypedArray(c)){var g=Math.min(c.length,h.length);for(i=0;i<g;i++)n.relinkPrivateKeys(h[i],c[i])}return h}},{\"../lib\":749,\"../plot_api/plot_template\":787}],794:[function(t,e,r){\"use strict\";var n=t(\"../components/fx/attributes\");e.exports={type:{valType:\"enumerated\",values:[],dflt:\"scatter\",editType:\"calc+clearAxisTypes\",_noTemplating:!0},visible:{valType:\"enumerated\",values:[!0,!1,\"legendonly\"],dflt:!0,editType:\"calc\"},showlegend:{valType:\"boolean\",dflt:!0,editType:\"style\"},legendgroup:{valType:\"string\",dflt:\"\",editType:\"style\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"style\"},name:{valType:\"string\",editType:\"style\"},uid:{valType:\"string\",editType:\"plot\",anim:!0},ids:{valType:\"data_array\",editType:\"calc\",anim:!0},customdata:{valType:\"data_array\",editType:\"calc\"},meta:{valType:\"any\",arrayOk:!0,editType:\"plot\"},selectedpoints:{valType:\"any\",editType:\"calc\"},hoverinfo:{valType:\"flaglist\",flags:[\"x\",\"y\",\"z\",\"text\",\"name\"],extras:[\"all\",\"none\",\"skip\"],arrayOk:!0,dflt:\"all\",editType:\"none\"},hoverlabel:n.hoverlabel,stream:{token:{valType:\"string\",noBlank:!0,strict:!0,editType:\"calc\"},maxpoints:{valType:\"number\",min:0,max:1e4,dflt:500,editType:\"calc\"},editType:\"calc\"},transforms:{_isLinkedToArray:\"transform\",editType:\"calc\"},uirevision:{valType:\"any\",editType:\"none\"}}},{\"../components/fx/attributes\":646}],795:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=a.dateTime2ms,o=a.incrementMonth,s=t(\"../../constants/numerical\").ONEAVGMONTH;e.exports=function(t,e,r,a){if(\"date\"!==e.type)return a;var l=t[r+\"periodalignment\"];if(!l)return a;var c,u=t[r+\"period\"];if(n(u)){if((u=+u)<=0)return a}else if(\"string\"==typeof u&&\"M\"===u.charAt(0)){var h=+u.substring(1);if(!(h>0&&Math.round(h)===h))return a;c=h}for(var f=e.calendar,p=\"start\"===l,d=\"end\"===l,g=t[r+\"period0\"],m=i(g,f)||0,v=[],y=a.length,x=0;x<y;x++){var b,_,w,T=a[x];if(c){for(b=Math.round((T-m)/(c*s)),w=o(m,c*b,f);w>T;)w=o(w,-c,f);for(;w<=T;)w=o(w,c,f);_=o(w,-c,f)}else{for(w=m+(b=Math.round((T-m)/u))*u;w>T;)w-=u;for(;w<=T;)w+=u;_=w-u}v[x]=p?_:d?w:(_+w)/2}return v}},{\"../../constants/numerical\":724,\"../../lib\":749,\"fast-isnumeric\":241}],796:[function(t,e,r){\"use strict\";e.exports={xaxis:{valType:\"subplotid\",dflt:\"x\",editType:\"calc+clearAxisTypes\"},yaxis:{valType:\"subplotid\",dflt:\"y\",editType:\"calc+clearAxisTypes\"}}},{}],797:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\").FP_SAFE,o=t(\"../../registry\");function s(t,e){var r,n,i=[],o=l(e),s=c(t,e),u=s.min,h=s.max;if(0===u.length||0===h.length)return a.simpleMap(e.range,e.r2l);var f=u[0].val,p=h[0].val;for(r=1;r<u.length&&f===p;r++)f=Math.min(f,u[r].val);for(r=1;r<h.length&&f===p;r++)p=Math.max(p,h[r].val);var d=!1;if(e.range){var g=a.simpleMap(e.range,e.r2l);d=g[1]<g[0]}\"reversed\"===e.autorange&&(d=!0,e.autorange=!0);var m,v,y,x,b,_,w=e.rangemode,T=\"tozero\"===w,k=\"nonnegative\"===w,M=e._length,A=M/10,S=function(t,r){var n=0;if(e.rangebreaks)for(var a=e.locateBreaks(t,r),i=0;i<a.length;i++){var o=a[i];n+=o.max-o.min}return n},E=0;for(r=0;r<u.length;r++)for(m=u[r],n=0;n<h.length;n++)(_=(v=h[n]).val-m.val-S(m.val,v.val))>0&&((b=M-o(m)-o(v))>A?_/b>E&&(y=m,x=v,E=_/b):_/M>E&&(y={val:m.val,pad:0},x={val:v.val,pad:0},E=_/M));if(f===p){var C=f-1,L=f+1;if(T)if(0===f)i=[0,1];else{var P=(f>0?h:u).reduce((function(t,e){return Math.max(t,o(e))}),0),I=f/(1-Math.min(.5,P/M));i=f>0?[0,I]:[I,0]}else i=k?[Math.max(0,C),Math.max(1,L)]:[C,L]}else T?(y.val>=0&&(y={val:0,pad:0}),x.val<=0&&(x={val:0,pad:0})):k&&(y.val-E*o(y)<0&&(y={val:0,pad:0}),x.val<=0&&(x={val:1,pad:0})),E=(x.val-y.val-S(m.val,v.val))/(M-o(y)-o(x)),i=[y.val-E*o(y),x.val+E*o(x)];return d&&i.reverse(),a.simpleMap(i,e.l2r||Number)}function l(t){var e=t._length/20;return\"domain\"===t.constrain&&t._inputDomain&&(e*=(t._inputDomain[1]-t._inputDomain[0])/(t.domain[1]-t.domain[0])),function(t){return t.pad+(t.extrapad?e:0)}}function c(t,e){var r,n,a,i=e._id,o=t._fullData,s=t._fullLayout,l=[],c=[];function f(t,e){for(r=0;r<e.length;r++){var o=t[e[r]],s=(o._extremes||{})[i];if(!0===o.visible&&s){for(n=0;n<s.min.length;n++)a=s.min[n],u(l,a.val,a.pad,{extrapad:a.extrapad});for(n=0;n<s.max.length;n++)a=s.max[n],h(c,a.val,a.pad,{extrapad:a.extrapad})}}}return f(o,e._traceIndices),f(s.annotations||[],e._annIndices||[]),f(s.shapes||[],e._shapeIndices||[]),{min:l,max:c}}function u(t,e,r,n){f(t,e,r,n,d)}function h(t,e,r,n){f(t,e,r,n,g)}function f(t,e,r,n,a){for(var i=n.tozero,o=n.extrapad,s=!0,l=0;l<t.length&&s;l++){var c=t[l];if(a(c.val,e)&&c.pad>=r&&(c.extrapad||!o)){s=!1;break}a(e,c.val)&&c.pad<=r&&(o||!c.extrapad)&&(t.splice(l,1),l--)}if(s){var u=i&&0===e;t.push({val:e,pad:u?0:r,extrapad:!u&&o})}}function p(t){return n(t)&&Math.abs(t)<i}function d(t,e){return t<=e}function g(t,e){return t>=e}e.exports={getAutoRange:s,makePadFn:l,doAutoRange:function(t,e){if(e.setScale(),e.autorange){e.range=s(t,e),e._r=e.range.slice(),e._rl=a.simpleMap(e._r,e.r2l);var r=e._input,n={};n[e._attr+\".range\"]=e.range,n[e._attr+\".autorange\"]=e.autorange,o.call(\"_storeDirectGUIEdit\",t.layout,t._fullLayout._preGUI,n),r.range=e.range.slice(),r.autorange=e.autorange}var i=e._anchorAxis;if(i&&i.rangeslider){var l=i.rangeslider[e._name];l&&\"auto\"===l.rangemode&&(l.range=s(t,e)),i._input.rangeslider[e._name]=a.extendFlat({},l)}},findExtremes:function(t,e,r){r||(r={});t._m||t.setScale();var a,o,s,l,c,f,d,g,m,v=[],y=[],x=e.length,b=r.padded||!1,_=r.tozero&&(\"linear\"===t.type||\"-\"===t.type),w=\"log\"===t.type,T=!1,k=r.vpadLinearized||!1;function M(t){if(Array.isArray(t))return T=!0,function(e){return Math.max(Number(t[e]||0),0)};var e=Math.max(Number(t||0),0);return function(){return e}}var A=M((t._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),S=M((t._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=M(r.vpadplus||r.vpad),C=M(r.vpadminus||r.vpad);if(!T){if(g=1/0,m=-1/0,w)for(a=0;a<x;a++)(o=e[a])<g&&o>0&&(g=o),o>m&&o<i&&(m=o);else for(a=0;a<x;a++)(o=e[a])<g&&o>-i&&(g=o),o>m&&o<i&&(m=o);e=[g,m],x=2}var L={tozero:_,extrapad:b};function P(r){s=e[r],n(s)&&(f=A(r),d=S(r),k?(l=t.c2l(s)-C(r),c=t.c2l(s)+E(r)):(g=s-C(r),m=s+E(r),w&&g<m/10&&(g=m/10),l=t.c2l(g),c=t.c2l(m)),_&&(l=Math.min(0,l),c=Math.max(0,c)),p(l)&&u(v,l,d,L),p(c)&&h(y,c,f,L))}var I=Math.min(6,x);for(a=0;a<I;a++)P(a);for(a=x-1;a>=I;a--)P(a);return{min:v,max:y,opts:r}},concatExtremes:c}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../registry\":881,\"fast-isnumeric\":241}],798:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../plots/plots\"),o=t(\"../../registry\"),s=t(\"../../lib\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../components/titles\"),u=t(\"../../components/color\"),h=t(\"../../components/drawing\"),f=t(\"./layout_attributes\"),p=t(\"./clean_ticks\"),d=t(\"../../constants/numerical\"),g=d.ONEMAXYEAR,m=d.ONEAVGYEAR,v=d.ONEMINYEAR,y=d.ONEMAXQUARTER,x=d.ONEAVGQUARTER,b=d.ONEMINQUARTER,_=d.ONEMAXMONTH,w=d.ONEAVGMONTH,T=d.ONEMINMONTH,k=d.ONEWEEK,M=d.ONEDAY,A=M/2,S=d.ONEHOUR,E=d.ONEMIN,C=d.ONESEC,L=d.MINUS_SIGN,P=d.BADNUM,I=t(\"../../constants/alignment\"),z=I.MID_SHIFT,O=I.CAP_SHIFT,D=I.LINE_SPACING,R=I.OPPOSITE_SIDE,F=e.exports={};F.setConvert=t(\"./set_convert\");var B=t(\"./axis_autotype\"),N=t(\"./axis_ids\");F.id2name=N.id2name,F.name2id=N.name2id,F.cleanId=N.cleanId,F.list=N.list,F.listIds=N.listIds,F.getFromId=N.getFromId,F.getFromTrace=N.getFromTrace;var j=t(\"./autorange\");F.getAutoRange=j.getAutoRange,F.findExtremes=j.findExtremes;function U(t){var e=1e-4*(t[1]-t[0]);return[t[0]-e,t[1]+e]}F.coerceRef=function(t,e,r,n,a,i){var o=n.charAt(n.length-1),l=r._fullLayout._subplots[o+\"axis\"],c=n+\"ref\",u={};return a||(a=l[0]||i),i||(i=a),u[c]={valType:\"enumerated\",values:l.concat(i?[i]:[]),dflt:a},s.coerce(t,e,u,c)},F.coercePosition=function(t,e,r,n,a,i){var o,l;if(\"paper\"===n||\"pixel\"===n)o=s.ensureNumber,l=r(a,i);else{var c=F.getFromId(e,n);l=r(a,i=c.fraction2r(i)),o=c.cleanPos}t[a]=o(l)},F.cleanPosition=function(t,e,r){return(\"paper\"===r||\"pixel\"===r?s.ensureNumber:F.getFromId(e,r).cleanPos)(t)},F.redrawComponents=function(t,e){e=e||F.listIds(t);var r=t._fullLayout;function n(n,a,i,s){for(var l=o.getComponentMethod(n,a),c={},u=0;u<e.length;u++)for(var h=r[F.id2name(e[u])][i],f=0;f<h.length;f++){var p=h[f];if(!c[p]&&(l(t,p),c[p]=1,s))return}}n(\"annotations\",\"drawOne\",\"_annIndices\"),n(\"shapes\",\"drawOne\",\"_shapeIndices\"),n(\"images\",\"draw\",\"_imgIndices\",!0)};var V=F.getDataConversions=function(t,e,r,n){var a,i=\"x\"===r||\"y\"===r||\"z\"===r?r:n;if(Array.isArray(i)){if(a={type:B(n),_categories:[]},F.setConvert(a),\"category\"===a.type)for(var o=0;o<n.length;o++)a.d2c(n[o])}else a=F.getFromTrace(t,e,i);return a?{d2c:a.d2c,c2d:a.c2d}:\"ids\"===i?{d2c:H,c2d:H}:{d2c:q,c2d:q}};function q(t){return+t}function H(t){return String(t)}F.getDataToCoordFunc=function(t,e,r,n){return V(t,e,r,n).d2c},F.counterLetter=function(t){var e=t.charAt(0);return\"x\"===e?\"y\":\"y\"===e?\"x\":void 0},F.minDtick=function(t,e,r,n){-1===[\"log\",\"category\",\"multicategory\"].indexOf(t.type)&&n?void 0===t._minDtick?(t._minDtick=e,t._forceTick0=r):t._minDtick&&((t._minDtick/e+1e-6)%1<2e-6&&((r-t._forceTick0)/e%1+1.000001)%1<2e-6?(t._minDtick=e,t._forceTick0=r):((e/t._minDtick+1e-6)%1>2e-6||((r-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},F.saveRangeInitial=function(t,e){for(var r=F.list(t,\"\",!0),n=!1,a=0;a<r.length;a++){var i=r[a],o=void 0===i._rangeInitial,s=o||!(i.range[0]===i._rangeInitial[0]&&i.range[1]===i._rangeInitial[1]);(o&&!1===i.autorange||e&&s)&&(i._rangeInitial=i.range.slice(),n=!0)}return n},F.saveShowSpikeInitial=function(t,e){for(var r=F.list(t,\"\",!0),n=!1,a=\"on\",i=0;i<r.length;i++){var o=r[i],s=void 0===o._showSpikeInitial,l=s||!(o.showspikes===o._showspikes);(s||e&&l)&&(o._showSpikeInitial=o.showspikes,n=!0),\"on\"!==a||o.showspikes||(a=\"off\")}return t._fullLayout._cartesianSpikesEnabled=a,n},F.autoBin=function(t,e,r,n,i,o){var l,c=s.aggNums(Math.min,null,t),u=s.aggNums(Math.max,null,t);if(\"category\"===e.type||\"multicategory\"===e.type)return{start:c-.5,end:u+.5,size:Math.max(1,Math.round(o)||1),_dataSpan:u-c};if(i||(i=e.calendar),l=\"log\"===e.type?{type:\"linear\",range:[c,u]}:{type:e.type,range:s.simpleMap([c,u],e.c2r,0,i),calendar:i},F.setConvert(l),o=o&&p.dtick(o,l.type))l.dtick=o,l.tick0=p.tick0(void 0,l.type,i);else{var h;if(r)h=(u-c)/r;else{var f=s.distinctVals(t),d=Math.pow(10,Math.floor(Math.log(f.minDiff)/Math.LN10)),g=d*s.roundUp(f.minDiff/d,[.9,1.9,4.9,9.9],!0);h=Math.max(g,2*s.stdev(t)/Math.pow(t.length,n?.25:.4)),a(h)||(h=1)}F.autoTicks(l,h)}var m,v=l.dtick,y=F.tickIncrement(F.tickFirst(l),v,\"reverse\",i);if(\"number\"==typeof v)m=(y=function(t,e,r,n,i){var o=0,s=0,l=0,c=0;function u(e){return(1+100*(e-t)/r.dtick)%100<2}for(var h=0;h<e.length;h++)e[h]%1==0?l++:a(e[h])||c++,u(e[h])&&o++,u(e[h]+r.dtick/2)&&s++;var f=e.length-c;if(l===f&&\"date\"!==r.type)r.dtick<1?t=n-.5*r.dtick:(t-=.5)+r.dtick<n&&(t+=r.dtick);else if(s<.1*f&&(o>.3*f||u(n)||u(i))){var p=r.dtick/2;t+=t+p<n?p:-p}return t}(y,t,l,c,u))+(1+Math.floor((u-y)/v))*v;else for(\"M\"===l.dtick.charAt(0)&&(y=function(t,e,r,n,a){var i=s.findExactDates(e,a);if(i.exactDays>.8){var o=Number(r.substr(1));i.exactYears>.8&&o%12==0?t=F.tickIncrement(t,\"M6\",\"reverse\")+1.5*M:i.exactMonths>.8?t=F.tickIncrement(t,\"M1\",\"reverse\")+15.5*M:t-=A;var l=F.tickIncrement(t,r);if(l<=n)return l}return t}(y,t,v,c,i)),m=y,0;m<=u;)m=F.tickIncrement(m,v,!1,i);return{start:e.c2r(y,0,i),end:e.c2r(m,0,i),size:v,_dataSpan:u-c}},F.prepTicks=function(t,e){var r=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if(\"auto\"===t.tickmode||!t.dtick){var n,a=t.nticks;a||(\"category\"===t.type||\"multicategory\"===t.type?(n=t.tickfont?1.2*(t.tickfont.size||12):15,a=t._length/n):(n=\"y\"===t._id.charAt(0)?40:80,a=s.constrain(t._length/n,4,9)+1),\"radialaxis\"===t._name&&(a*=2)),\"array\"===t.tickmode&&(a*=100),t._roughDTick=(Math.abs(r[1]-r[0])-(t._lBreaks||0))/a,F.autoTicks(t,t._roughDTick),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t.l2r(t._forceTick0))}t.tick0||(t.tick0=\"date\"===t.type?\"2000-01-01\":0),\"date\"===t.type&&t.dtick<.1&&(t.dtick=.1),$(t)},F.calcTicks=function(t,e){F.prepTicks(t,e);var r=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if(\"array\"===t.tickmode)return function(t){var e=t.tickvals,r=t.ticktext,n=new Array(e.length),a=U(s.simpleMap(t.range,t.r2l)),i=Math.min(a[0],a[1]),o=Math.max(a[0],a[1]),l=0;Array.isArray(r)||(r=[]);var c=\"category\"===t.type?t.d2l_noadd:t.d2l;\"log\"===t.type&&\"L\"!==String(t.dtick).charAt(0)&&(t.dtick=\"L\"+Math.pow(10,Math.floor(Math.min(t.range[0],t.range[1]))-1));for(var u=0;u<e.length;u++){var h=c(e[u]);h>i&&h<o&&(void 0===r[u]?n[l]=F.tickText(t,h):n[l]=tt(t,h,String(r[u])),l++)}l<e.length&&n.splice(l,e.length-l);t.rangebreaks&&(n=n.filter((function(e){return t.maskBreaks(e.x)!==P})));return n}(t);t._tmin=F.tickFirst(t,e);var n=U(r),i=n[0],o=n[1],l=r[1]<r[0];if(t._tmin<i!==l)return[];\"category\"!==t.type&&\"multicategory\"!==t.type||(o=l?Math.max(-.5,o):Math.min(t._categories.length-.5,o));var c,u=\"log\"===t.type&&!(a(t.dtick)||\"L\"===t.dtick.charAt(0));!function(){var e=null,r=Math.max(1e3,t._length||0);c=[];for(var n=t._tmin;(l?n>=o:n<=o)&&!(c.length>r||n===e);n=F.tickIncrement(n,t.dtick,l,t.calendar)){e=n;var a=!1;u&&n!==(0|n)&&(a=!0),c.push({minor:a,value:n})}}();var h=\"period\"===t.ticklabelmode,f=!1;if(h&&c[0]&&(c.unshift({minor:!1,value:F.tickIncrement(c[0].value,t.dtick,!l,t.caldendar)}),f=!0),t.rangebreaks){var p=c.length;if(p){var d=0;\"auto\"===t.tickmode&&(d=(\"y\"===t._id.charAt(0)?2:6)*(t.tickfont?t.tickfont.size:12));for(var E,C=[],L=l?1:-1,I=l?p-1:0,z=l?0:p-1;L*z<=L*I;z+=L){var O=c[z];if(t.maskBreaks(O.value)!==P||(O.value=vt(O.value,t),!t._rl||t._rl[0]!==O.value&&t._rl[1]!==O.value)){var D=t.c2p(O.value);D===E?C[C.length-1].value<O.value&&(C[C.length-1]=O):(void 0===E||Math.abs(D-E)>d)&&(E=D,C.push(O))}}c=C.reverse()}}mt(t)&&360===Math.abs(r[1]-r[0])&&c.pop(),t._tmax=(c[c.length-1]||{}).value,t._prevDateHead=\"\",t._inCalcTicks=!0;var R,B=Math.min(r[0],r[1]),N=Math.max(r[0],r[1]),j=F.getTickFormat(t);h&&j&&(/%[fLQsSMX]/.test(j)||(/%[HI]/.test(j)?R=S:/%p/.test(j)?R=A:/%[Aadejuwx]/.test(j)?R=M:/%[UVW]/.test(j)?R=k:/%[Bbm]/.test(j)?R=w:/%[q]/.test(j)?R=x:/%[Yy]/.test(j)&&(R=m)));var V,q,H=[];for(V=0;V<c.length;V++){var G=c[V].minor,Y=c[V].value,W=F.tickText(t,Y,!1,G);h&&q===W.text||(q=W.text,H.push(W))}if(h&&f){var Z=!1;for(V=0;V<H.length;V++){var X=H[V].x,J=V,K=V+1;V<H.length-1?(J=V,K=V+1):V>0?(J=V-1,K=V):(J=V,K=V);var Q=H[J].x,$=H[K].x,et=Math.abs($-Q),rt=R||et,nt=0;if(rt>=v?nt=et>=v&&et<=g?et:m:R===x&&rt>=b?nt=et>=b&&et<=y?et:x:rt>=T?nt=et>=T&&et<=_?et:w:R===k&&rt>=k?nt=k:rt>=M?nt=M:R===A&&rt>=A?nt=A:R===S&&rt>=S&&(nt=S),nt&&t.rangebreaks){for(var at=0,it=0,ot=0;ot<42;ot++){var st=ot/42;t.maskBreaks(Q*(1-st)+$*st)!==P&&(st<.5?at++:it++)}it&&(nt*=(at+it)/42)}nt<=et&&(X+=nt/2),H[V].periodX=X,(X>N||X<B)&&(H[V].text=\" \",Z=!0)}if(Z)for(V=0;V<H.length;V++)if(H[V].periodX<=N&&H[V].periodX>=B){t._prevDateHead=\"\",H[V].text=F.tickText(t,H[V].x).text;break}}return t._inCalcTicks=!1,H};var G=[2,5,10],Y=[1,2,3,6,12],W=[1,2,5,10,15,30],Z=[1,2,3,7,14],X=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],J=[-.301,0,.301,.699,1],K=[15,30,45,90,180];function Q(t,e,r){return e*s.roundUp(t/e,r)}function $(t){var e=t.dtick;if(t._tickexponent=0,a(e)||\"string\"==typeof e||(e=1),\"category\"!==t.type&&\"multicategory\"!==t.type||(t._tickround=null),\"date\"===t.type){var r=t.r2l(t.tick0),n=t.l2r(r).replace(/(^-|i)/g,\"\"),i=n.length;if(\"M\"===String(e).charAt(0))i>10||\"01-01\"!==n.substr(5)?t._tickround=\"d\":t._tickround=+e.substr(1)%12==0?\"y\":\"m\";else if(e>=M&&i<=10||e>=15*M)t._tickround=\"d\";else if(e>=E&&i<=16||e>=S)t._tickround=\"M\";else if(e>=C&&i<=19||e>=E)t._tickround=\"S\";else{var o=t.l2r(r+e).replace(/^-/,\"\").length;t._tickround=Math.max(i,o)-20,t._tickround<0&&(t._tickround=4)}}else if(a(e)||\"L\"===e.charAt(0)){var s=t.range.map(t.r2d||Number);a(e)||(e=Number(e.substr(1))),t._tickround=2-Math.floor(Math.log(e)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),c=Math.floor(Math.log(l)/Math.LN10+.01),u=void 0===t.minexponent?3:t.minexponent;Math.abs(c)>u&&(rt(t.exponentformat)&&!nt(c)?t._tickexponent=3*Math.round((c-1)/3):t._tickexponent=c)}else t._tickround=null}function tt(t,e,r){var n=t.tickfont||{};return{x:e,dx:0,dy:0,text:r||\"\",fontSize:n.size,font:n.family,fontColor:n.color}}F.autoTicks=function(t,e){var r;function n(t){return Math.pow(t,Math.floor(Math.log(e)/Math.LN10))}if(\"date\"===t.type){t.tick0=s.dateTick0(t.calendar,0);var i=2*e;if(i>m)e/=m,r=n(10),t.dtick=\"M\"+12*Q(e,r,G);else if(i>w)e/=w,t.dtick=\"M\"+Q(e,1,Y);else if(i>M){t.dtick=Q(e,M,t._hasDayOfWeekBreaks?[1,2,7,14]:Z);var o=F.getTickFormat(t);/%[uVW]/.test(o)?t.tick0=s.dateTick0(t.calendar,2):t.tick0=s.dateTick0(t.calendar,1)}else i>S?t.dtick=Q(e,S,Y):i>E?t.dtick=Q(e,E,W):i>C?t.dtick=Q(e,C,W):(r=n(10),t.dtick=Q(e,r,G))}else if(\"log\"===t.type){t.tick0=0;var l=s.simpleMap(t.range,t.r2l);if(e>.7)t.dtick=Math.ceil(e);else if(Math.abs(l[1]-l[0])<1){var c=1.5*Math.abs((l[1]-l[0])/e);e=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/c,r=n(10),t.dtick=\"L\"+Q(e,r,G)}else t.dtick=e>.3?\"D2\":\"D1\"}else\"category\"===t.type||\"multicategory\"===t.type?(t.tick0=0,t.dtick=Math.ceil(Math.max(e,1))):mt(t)?(t.tick0=0,r=1,t.dtick=Q(e,r,K)):(t.tick0=0,r=n(10),t.dtick=Q(e,r,G));if(0===t.dtick&&(t.dtick=1),!a(t.dtick)&&\"string\"!=typeof t.dtick){var u=t.dtick;throw t.dtick=1,\"ax.dtick error: \"+String(u)}},F.tickIncrement=function(t,e,r,i){var o=r?-1:1;if(a(e))return s.increment(t,o*e);var l=e.charAt(0),c=o*Number(e.substr(1));if(\"M\"===l)return s.incrementMonth(t,c,i);if(\"L\"===l)return Math.log(Math.pow(10,t)+c)/Math.LN10;if(\"D\"===l){var u=\"D2\"===e?J:X,h=t+.01*o,f=s.roundUp(s.mod(h,1),u,r);return Math.floor(h)+Math.log(n.round(Math.pow(10,f),1))/Math.LN10}throw\"unrecognized dtick \"+String(e)},F.tickFirst=function(t,e){var r=t.r2l||Number,i=s.simpleMap(t.range,r,void 0,void 0,e),o=i[1]<i[0],l=o?Math.floor:Math.ceil,c=U(i)[0],u=t.dtick,h=r(t.tick0);if(a(u)){var f=l((c-h)/u)*u+h;return\"category\"!==t.type&&\"multicategory\"!==t.type||(f=s.constrain(f,0,t._categories.length-1)),f}var p=u.charAt(0),d=Number(u.substr(1));if(\"M\"===p){for(var g,m,v,y=0,x=h;y<10;){if(((g=F.tickIncrement(x,u,o,t.calendar))-c)*(x-c)<=0)return o?Math.min(x,g):Math.max(x,g);m=(c-(x+g)/2)/(g-x),v=p+(Math.abs(Math.round(m))||1)*d,x=F.tickIncrement(x,v,m<0?!o:o,t.calendar),y++}return s.error(\"tickFirst did not converge\",t),x}if(\"L\"===p)return Math.log(l((Math.pow(10,c)-h)/d)*d+h)/Math.LN10;if(\"D\"===p){var b=\"D2\"===u?J:X,_=s.roundUp(s.mod(c,1),b,o);return Math.floor(c)+Math.log(n.round(Math.pow(10,_),1))/Math.LN10}throw\"unrecognized dtick \"+String(u)},F.tickText=function(t,e,r,n){var i,o=tt(t,e),l=\"array\"===t.tickmode,c=r||l,u=t.type,h=\"category\"===u?t.d2l_noadd:t.d2l;if(l&&Array.isArray(t.ticktext)){var f=s.simpleMap(t.range,t.r2l),p=(Math.abs(f[1]-f[0])-(t._lBreaks||0))/1e4;for(i=0;i<t.ticktext.length&&!(Math.abs(e-h(t.tickvals[i]))<p);i++);if(i<t.ticktext.length)return o.text=String(t.ticktext[i]),o}function d(n){if(void 0===n)return!0;if(r)return\"none\"===n;var a={first:t._tmin,last:t._tmax}[n];return\"all\"!==n&&e!==a}var g=r?\"never\":\"none\"!==t.exponentformat&&d(t.showexponent)?\"hide\":\"\";if(\"date\"===u?function(t,e,r,n){var i=t._tickround,o=r&&t.hoverformat||F.getTickFormat(t);n&&(i=a(i)?4:{y:\"m\",m:\"d\",d:\"M\",M:\"S\",S:4}[i]);var l,c=s.formatDate(e.x,o,i,t._dateFormat,t.calendar,t._extraFormat),u=c.indexOf(\"\\n\");-1!==u&&(l=c.substr(u+1),c=c.substr(0,u));n&&(\"00:00:00\"===c||\"00:00\"===c?(c=l,l=\"\"):8===c.length&&(c=c.replace(/:00$/,\"\")));l&&(r?\"d\"===i?c+=\", \"+l:c=l+(c?\", \"+c:\"\"):t._inCalcTicks&&l===t._prevDateHead||(c+=\"<br>\"+l,t._prevDateHead=l));e.text=c}(t,o,r,c):\"log\"===u?function(t,e,r,n,i){var o=t.dtick,l=e.x,c=t.tickformat,u=\"string\"==typeof o&&o.charAt(0);\"never\"===i&&(i=\"\");n&&\"L\"!==u&&(o=\"L3\",u=\"L\");if(c||\"L\"===u)e.text=at(Math.pow(10,l),t,i,n);else if(a(o)||\"D\"===u&&s.mod(l+.01,1)<.1){var h=Math.round(l),f=Math.abs(h),p=t.exponentformat;\"power\"===p||rt(p)&&nt(h)?(e.text=0===h?1:1===h?\"10\":\"10<sup>\"+(h>1?\"\":L)+f+\"</sup>\",e.fontSize*=1.25):(\"e\"===p||\"E\"===p)&&f>2?e.text=\"1\"+p+(h>0?\"+\":L)+f:(e.text=at(Math.pow(10,l),t,\"\",\"fakehover\"),\"D1\"===o&&\"y\"===t._id.charAt(0)&&(e.dy-=e.fontSize/6))}else{if(\"D\"!==u)throw\"unrecognized dtick \"+String(o);e.text=String(Math.round(Math.pow(10,s.mod(l,1)))),e.fontSize*=.75}if(\"D1\"===t.dtick){var d=String(e.text).charAt(0);\"0\"!==d&&\"1\"!==d||(\"y\"===t._id.charAt(0)?e.dx-=e.fontSize/4:(e.dy+=e.fontSize/2,e.dx+=(t.range[1]>t.range[0]?1:-1)*e.fontSize*(l<0?.5:.25)))}}(t,o,0,c,g):\"category\"===u?function(t,e){var r=t._categories[Math.round(e.x)];void 0===r&&(r=\"\");e.text=String(r)}(t,o):\"multicategory\"===u?function(t,e,r){var n=Math.round(e.x),a=t._categories[n]||[],i=void 0===a[1]?\"\":String(a[1]),o=void 0===a[0]?\"\":String(a[0]);r?e.text=o+\" - \"+i:(e.text=i,e.text2=o)}(t,o,r):mt(t)?function(t,e,r,n,a){if(\"radians\"!==t.thetaunit||r)e.text=at(e.x,t,a,n);else{var i=e.x/180;if(0===i)e.text=\"0\";else{var o=function(t){function e(t,e){return Math.abs(t-e)<=1e-6}var r=function(t){for(var r=1;!e(Math.round(t*r)/r,t);)r*=10;return r}(t),n=t*r,a=Math.abs(function t(r,n){return e(n,0)?r:t(n,r%n)}(n,r));return[Math.round(n/a),Math.round(r/a)]}(i);if(o[1]>=100)e.text=at(s.deg2rad(e.x),t,a,n);else{var l=e.x<0;1===o[1]?1===o[0]?e.text=\"\\u03c0\":e.text=o[0]+\"\\u03c0\":e.text=[\"<sup>\",o[0],\"</sup>\",\"\\u2044\",\"<sub>\",o[1],\"</sub>\",\"\\u03c0\"].join(\"\"),l&&(e.text=L+e.text)}}}}(t,o,r,c,g):function(t,e,r,n,a){\"never\"===a?a=\"\":\"all\"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(a=\"hide\");e.text=at(e.x,t,a,n)}(t,o,0,c,g),n||(t.tickprefix&&!d(t.showtickprefix)&&(o.text=t.tickprefix+o.text),t.ticksuffix&&!d(t.showticksuffix)&&(o.text+=t.ticksuffix)),\"boundaries\"===t.tickson||t.showdividers){var m=function(e){var r=t.l2p(e);return r>=0&&r<=t._length?e:null};o.xbnd=[m(o.x-.5),m(o.x+t.dtick-.5)]}return o},F.hoverLabelText=function(t,e,r){if(r!==P&&r!==e)return F.hoverLabelText(t,e)+\" - \"+F.hoverLabelText(t,r);var n=\"log\"===t.type&&e<=0,a=F.tickText(t,t.c2l(n?-e:e),\"hover\").text;return n?0===e?\"0\":L+a:a};var et=[\"f\",\"p\",\"n\",\"\\u03bc\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\"];function rt(t){return\"SI\"===t||\"B\"===t}function nt(t){return t>14||t<-15}function at(t,e,r,n){var i=t<0,o=e._tickround,l=r||e.exponentformat||\"B\",c=e._tickexponent,u=F.getTickFormat(e),h=e.separatethousands;if(n){var f={exponentformat:l,minexponent:e.minexponent,dtick:\"none\"===e.showexponent?e.dtick:a(t)&&Math.abs(t)||1,range:\"none\"===e.showexponent?e.range.map(e.r2d):[0,t||1]};$(f),o=(Number(f._tickround)||0)+4,c=f._tickexponent,e.hoverformat&&(u=e.hoverformat)}if(u)return e._numFormat(u)(t).replace(/-/g,L);var p,d=Math.pow(10,-o)/2;if(\"none\"===l&&(c=0),(t=Math.abs(t))<d)t=\"0\",i=!1;else{if(t+=d,c&&(t*=Math.pow(10,-c),o+=c),0===o)t=String(Math.floor(t));else if(o<0){t=(t=String(Math.round(t))).substr(0,t.length+o);for(var g=o;g<0;g++)t+=\"0\"}else{var m=(t=String(t)).indexOf(\".\")+1;m&&(t=t.substr(0,m+o).replace(/\\.?0+$/,\"\"))}t=s.numSeparate(t,e._separators,h)}c&&\"hide\"!==l&&(rt(l)&&nt(c)&&(l=\"power\"),p=c<0?L+-c:\"power\"!==l?\"+\"+c:String(c),\"e\"===l||\"E\"===l?t+=l+p:\"power\"===l?t+=\"\\xd710<sup>\"+p+\"</sup>\":\"B\"===l&&9===c?t+=\"B\":rt(l)&&(t+=et[c/3+5]));return i?L+t:t}function it(t,e){for(var r=[],n={},a=0;a<e.length;a++){var i=e[a];n[i.text2]?n[i.text2].push(i.x):n[i.text2]=[i.x]}for(var o in n)r.push(tt(t,s.interp(n[o],.5),o));return r}function ot(t){return[t.text,t.x,t.axInfo,t.font,t.fontSize,t.fontColor].join(\"_\")}function st(t){var e=t.title.font.size,r=(t.title.text.match(l.BR_TAG_ALL)||[]).length;return t.title.hasOwnProperty(\"standoff\")?r?e*(O+r*D):e*O:r?e*(r+1)*D:e}function lt(t,e){var r=t.l2p(e);return r>1&&r<t._length-1}function ct(t){var e=n.select(t),r=e.select(\".text-math-group\");return r.empty()?e.select(\"text\"):r}function ut(t){return t._id+\".automargin\"}function ht(t){return ut(t)+\".mirror\"}function ft(t){return t._id+\".rangeslider\"}function pt(t,e){for(var r=0;r<e.length;r++)-1===t.indexOf(e[r])&&t.push(e[r])}function dt(t,e,r){var n,a,i=[],o=[],l=t.layout;for(n=0;n<e.length;n++)i.push(F.getFromId(t,e[n]));for(n=0;n<r.length;n++)o.push(F.getFromId(t,r[n]));var c=Object.keys(f),u=[\"anchor\",\"domain\",\"overlaying\",\"position\",\"side\",\"tickangle\",\"editType\"],h=[\"linear\",\"log\"];for(n=0;n<c.length;n++){var p=c[n],d=i[0][p],g=o[0][p],m=!0,v=!1,y=!1;if(\"_\"!==p.charAt(0)&&\"function\"!=typeof d&&-1===u.indexOf(p)){for(a=1;a<i.length&&m;a++){var x=i[a][p];\"type\"===p&&-1!==h.indexOf(d)&&-1!==h.indexOf(x)&&d!==x?v=!0:x!==d&&(m=!1)}for(a=1;a<o.length&&m;a++){var b=o[a][p];\"type\"===p&&-1!==h.indexOf(g)&&-1!==h.indexOf(b)&&g!==b?y=!0:o[a][p]!==g&&(m=!1)}m&&(v&&(l[i[0]._name].type=\"linear\"),y&&(l[o[0]._name].type=\"linear\"),gt(l,p,i,o,t._fullLayout._dfltTitle))}}for(n=0;n<t._fullLayout.annotations.length;n++){var _=t._fullLayout.annotations[n];-1!==e.indexOf(_.xref)&&-1!==r.indexOf(_.yref)&&s.swapAttrs(l.annotations[n],[\"?\"])}}function gt(t,e,r,n,a){var i,o=s.nestedProperty,l=o(t[r[0]._name],e).get(),c=o(t[n[0]._name],e).get();for(\"title\"===e&&(l&&l.text===a.x&&(l.text=a.y),c&&c.text===a.y&&(c.text=a.x)),i=0;i<r.length;i++)o(t,r[i]._name+\".\"+e).set(c);for(i=0;i<n.length;i++)o(t,n[i]._name+\".\"+e).set(l)}function mt(t){return\"angularaxis\"===t._id}function vt(t,e){for(var r=e._rangebreaks.length,n=0;n<r;n++){var a=e._rangebreaks[n];if(t>=a.min&&t<a.max)return a.max}return t}F.getTickFormat=function(t){var e,r,n,a,i,o,s,l;function c(t){return\"string\"!=typeof t?t:Number(t.replace(\"M\",\"\"))*w}function u(t,e){var r=[\"L\",\"D\"];if(typeof t==typeof e){if(\"number\"==typeof t)return t-e;var n=r.indexOf(t.charAt(0)),a=r.indexOf(e.charAt(0));return n===a?Number(t.replace(/(L|D)/g,\"\"))-Number(e.replace(/(L|D)/g,\"\")):n-a}return\"number\"==typeof t?1:-1}function h(t,e){var r=null===e[0],n=null===e[1],a=u(t,e[0])>=0,i=u(t,e[1])<=0;return(r||a)&&(n||i)}if(t.tickformatstops&&t.tickformatstops.length>0)switch(t.type){case\"date\":case\"linear\":for(e=0;e<t.tickformatstops.length;e++)if((n=t.tickformatstops[e]).enabled&&(a=t.dtick,i=n.dtickrange,o=void 0,s=void 0,l=void 0,o=c||function(t){return t},s=i[0],l=i[1],(!s&&\"number\"!=typeof s||o(s)<=o(a))&&(!l&&\"number\"!=typeof l||o(l)>=o(a)))){r=n;break}break;case\"log\":for(e=0;e<t.tickformatstops.length;e++)if((n=t.tickformatstops[e]).enabled&&h(t.dtick,n.dtickrange)){r=n;break}}return r?r.value:t.tickformat},F.getSubplots=function(t,e){var r=t._fullLayout._subplots,n=r.cartesian.concat(r.gl2d||[]),a=e?F.findSubplotsWithAxis(n,e):n;return a.sort((function(t,e){var r=t.substr(1).split(\"y\"),n=e.substr(1).split(\"y\");return r[0]===n[0]?+r[1]-+n[1]:+r[0]-+n[0]})),a},F.findSubplotsWithAxis=function(t,e){for(var r=new RegExp(\"x\"===e._id.charAt(0)?\"^\"+e._id+\"y\":e._id+\"$\"),n=[],a=0;a<t.length;a++){var i=t[a];r.test(i)&&n.push(i)}return n},F.makeClipPaths=function(t){var e=t._fullLayout;if(!e._hasOnlyLargeSploms){var r,a,i={_offset:0,_length:e.width,_id:\"\"},o={_offset:0,_length:e.height,_id:\"\"},s=F.list(t,\"x\",!0),l=F.list(t,\"y\",!0),c=[];for(r=0;r<s.length;r++)for(c.push({x:s[r],y:o}),a=0;a<l.length;a++)0===r&&c.push({x:i,y:l[a]}),c.push({x:s[r],y:l[a]});var u=e._clips.selectAll(\".axesclip\").data(c,(function(t){return t.x._id+t.y._id}));u.enter().append(\"clipPath\").classed(\"axesclip\",!0).attr(\"id\",(function(t){return\"clip\"+e._uid+t.x._id+t.y._id})).append(\"rect\"),u.exit().remove(),u.each((function(t){n.select(this).select(\"rect\").attr({x:t.x._offset||0,y:t.y._offset||0,width:t.x._length||1,height:t.y._length||1})}))}},F.draw=function(t,e,r){var n=t._fullLayout;\"redraw\"===e&&n._paper.selectAll(\"g.subplot\").each((function(t){var e=t[0],r=n._plots[e],a=r.xaxis,i=r.yaxis;r.xaxislayer.selectAll(\".\"+a._id+\"tick\").remove(),r.yaxislayer.selectAll(\".\"+i._id+\"tick\").remove(),r.xaxislayer.selectAll(\".\"+a._id+\"tick2\").remove(),r.yaxislayer.selectAll(\".\"+i._id+\"tick2\").remove(),r.xaxislayer.selectAll(\".\"+a._id+\"divider\").remove(),r.yaxislayer.selectAll(\".\"+i._id+\"divider\").remove(),r.gridlayer&&r.gridlayer.selectAll(\"path\").remove(),r.zerolinelayer&&r.zerolinelayer.selectAll(\"path\").remove(),n._infolayer.select(\".g-\"+a._id+\"title\").remove(),n._infolayer.select(\".g-\"+i._id+\"title\").remove()}));var a=e&&\"redraw\"!==e?e:F.listIds(t);return s.syncOrAsync(a.map((function(e){return function(){if(e){var n=F.getFromId(t,e),a=F.drawOne(t,n,r);return n._r=n.range.slice(),n._rl=s.simpleMap(n._r,n.r2l),a}}})))},F.drawOne=function(t,e,r){var n,a,l;r=r||{},e.setScale();var f=t._fullLayout,p=e._id,d=p.charAt(0),g=F.counterLetter(p),m=f._plots[e._mainSubplot];if(m){var v=m[d+\"axislayer\"],y=e._mainLinePosition,x=e._mainMirrorPosition,b=e._vals=F.calcTicks(e),_=[e.mirror,y,x].join(\"_\");for(n=0;n<b.length;n++)b[n].axInfo=_;e._selections={},e._tickAngles&&(e._prevTickAngles=e._tickAngles),e._tickAngles={},e._depth=null;var w={};if(e.visible){var T,k,M=F.makeTransFn(e),A=\"period\"===e.ticklabelmode?F.makeTransPeriodFn(e):F.makeTransFn(e);if(\"boundaries\"===e.tickson){var S=function(t,e){var r,n=[],a=function(t,e){var r=t.xbnd[e];null!==r&&n.push(s.extendFlat({},t,{x:r}))};if(e.length){for(r=0;r<e.length;r++)a(e[r],0);a(e[r-1],1)}return n}(0,b);k=F.clipEnds(e,S),T=\"inside\"===e.ticks?k:S}else k=F.clipEnds(e,b),T=\"inside\"===e.ticks?k:b;var E=e._gridVals=k,C=function(t,e){var r,n,a=[],i=e.length&&e[e.length-1].x<e[0].x,o=function(t,e){var r=t.xbnd[e];null!==r&&a.push(s.extendFlat({},t,{x:r}))};if(t.showdividers&&e.length){for(r=0;r<e.length;r++){var l=e[r];l.text2!==n&&o(l,i?1:0),n=l.text2}o(e[r-1],i?0:1)}return a}(e,b);if(!f._hasOnlyLargeSploms){var L=e._subplotsWith,P={};for(n=0;n<L.length;n++){a=L[n];var I=(l=f._plots[a])[g+\"axis\"],z=I._mainAxis._id;if(!P[z]){P[z]=1;var O=\"x\"===d?\"M0,\"+I._offset+\"v\"+I._length:\"M\"+I._offset+\",0h\"+I._length;F.drawGrid(t,e,{vals:E,counterAxis:I,layer:l.gridlayer.select(\".\"+p),path:O,transFn:M}),F.drawZeroLine(t,e,{counterAxis:I,layer:l.zerolinelayer,path:O,transFn:M})}}}var B=F.getTickSigns(e),N=[];if(e.ticks){var j,U,V,q=F.makeTickPath(e,y,B[2]);if(e._anchorAxis&&e.mirror&&!0!==e.mirror?(j=F.makeTickPath(e,x,B[3]),U=q+j):(j=\"\",U=q),e.showdividers&&\"outside\"===e.ticks&&\"boundaries\"===e.tickson){var H={};for(n=0;n<C.length;n++)H[C[n].x]=1;V=function(t){return H[t.x]?j:U}}else V=U;F.drawTicks(t,e,{vals:T,layer:v,path:V,transFn:M}),\"allticks\"===e.mirror&&(N=Object.keys(e._linepositions||{}))}for(n=0;n<N.length;n++){a=N[n],l=f._plots[a];var G=e._linepositions[a]||[],Y=F.makeTickPath(e,G[0],B[0])+F.makeTickPath(e,G[1],B[1]);F.drawTicks(t,e,{vals:T,layer:l[d+\"axislayer\"],path:Y,transFn:M})}var W=[];if(W.push((function(){return F.drawLabels(t,e,{vals:b,layer:v,transFn:A,labelFns:F.makeLabelFns(e,y)})})),\"multicategory\"===e.type){var Z={x:2,y:10}[d];W.push((function(){var r={x:\"height\",y:\"width\"}[d],n=J()[r]+Z+(e._tickAngles[p+\"tick\"]?e.tickfont.size*D:0);return F.drawLabels(t,e,{vals:it(e,b),layer:v,cls:p+\"tick2\",repositionOnUpdate:!0,secondary:!0,transFn:M,labelFns:F.makeLabelFns(e,y+n*B[4])})})),W.push((function(){return e._depth=B[4]*(J(\"tick2\")[e.side]-y),function(t,e,r){var n=e._id+\"divider\",a=r.vals,i=r.layer.selectAll(\"path.\"+n).data(a,ot);i.exit().remove(),i.enter().insert(\"path\",\":first-child\").classed(n,1).classed(\"crisp\",1).call(u.stroke,e.dividercolor).style(\"stroke-width\",h.crispRound(t,e.dividerwidth,1)+\"px\"),i.attr(\"transform\",r.transFn).attr(\"d\",r.path)}(t,e,{vals:C,layer:v,path:F.makeTickPath(e,y,B[4],e._depth),transFn:M})}))}else e.title.hasOwnProperty(\"standoff\")&&W.push((function(){e._depth=B[4]*(J()[e.side]-y)}));var X=o.getComponentMethod(\"rangeslider\",\"isVisible\")(e);return W.push((function(){var r,n,a,s,l=e.side.charAt(0),c=R[e.side].charAt(0),u=F.getPxPosition(t,e),h=\"outside\"===e.ticks?e.ticklen:0;if((e.automargin||X)&&(\"multicategory\"===e.type?r=J(\"tick2\"):(r=J(),\"x\"===d&&\"b\"===l&&(e._depth=Math.max(r.width>0?r.bottom-u:0,h)))),e.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var p=[0,1];if(\"x\"===d){if(\"b\"===l?n[l]=e._depth:(n[l]=e._depth=Math.max(r.width>0?u-r.top:0,h),p.reverse()),r.width>0){var m=r.right-(e._offset+e._length);m>0&&(n.xr=1,n.r=m);var v=e._offset-r.left;v>0&&(n.xl=0,n.l=v)}}else if(\"l\"===l?n[l]=e._depth=Math.max(r.height>0?u-r.left:0,h):(n[l]=e._depth=Math.max(r.height>0?r.right-u:0,h),p.reverse()),r.height>0){var y=r.bottom-(e._offset+e._length);y>0&&(n.yb=0,n.b=y);var x=e._offset-r.top;x>0&&(n.yt=1,n.t=x)}n[g]=\"free\"===e.anchor?e.position:e._anchorAxis.domain[p[0]],e.title.text!==f._dfltTitle[d]&&(n[l]+=st(e)+(e.title.standoff||0)),e.mirror&&\"free\"!==e.anchor&&((a={x:0,y:0,r:0,l:0,t:0,b:0})[c]=e.linewidth,e.mirror&&!0!==e.mirror&&(a[c]+=h),!0===e.mirror||\"ticks\"===e.mirror?a[g]=e._anchorAxis.domain[p[1]]:\"all\"!==e.mirror&&\"allticks\"!==e.mirror||(a[g]=[e._counterDomainMin,e._counterDomainMax][p[1]]))}X&&(s=o.getComponentMethod(\"rangeslider\",\"autoMarginOpts\")(t,e)),i.autoMargin(t,ut(e),n),i.autoMargin(t,ht(e),a),i.autoMargin(t,ft(e),s)})),r.skipTitle||X&&\"bottom\"===e.side||W.push((function(){return function(t,e){var r,n=t._fullLayout,a=e._id,i=a.charAt(0),o=e.title.font.size;if(e.title.hasOwnProperty(\"standoff\"))r=e._depth+e.title.standoff+st(e);else{if(\"multicategory\"===e.type)r=e._depth;else{r=10+1.5*o+(e.linewidth?e.linewidth-1:0)}r+=\"x\"===i?\"top\"===e.side?o*(e.showticklabels?1:0):o*(e.showticklabels?1.5:.5):\"right\"===e.side?o*(e.showticklabels?1:.5):o*(e.showticklabels?.5:0)}var s,l,u,f,p=F.getPxPosition(t,e);\"x\"===i?(l=e._offset+e._length/2,u=\"top\"===e.side?p-r:p+r):(u=e._offset+e._length/2,l=\"right\"===e.side?p+r:p-r,s={rotate:\"-90\",offset:0});if(\"multicategory\"!==e.type){var d=e._selections[e._id+\"tick\"];if(f={selection:d,side:e.side},d&&d.node()&&d.node().parentNode){var g=h.getTranslate(d.node().parentNode);f.offsetLeft=g.x,f.offsetTop=g.y}e.title.hasOwnProperty(\"standoff\")&&(f.pad=0)}return c.draw(t,a+\"title\",{propContainer:e,propName:e._name+\".title.text\",placeholder:n._dfltTitle[i],avoid:f,transform:s,attributes:{x:l,y:u,\"text-anchor\":\"middle\"}})}(t,e)})),s.syncOrAsync(W)}}function J(t){var r=p+(t||\"tick\");return w[r]||(w[r]=function(t,e){var r,n,a,i;t._selections[e].size()?(r=1/0,n=-1/0,a=1/0,i=-1/0,t._selections[e].each((function(){var t=ct(this),e=h.bBox(t.node().parentNode);r=Math.min(r,e.top),n=Math.max(n,e.bottom),a=Math.min(a,e.left),i=Math.max(i,e.right)}))):(r=0,n=0,a=0,i=0);return{top:r,bottom:n,left:a,right:i,height:n-r,width:i-a}}(e,r)),w[r]}},F.getTickSigns=function(t){var e=t._id.charAt(0),r={x:\"top\",y:\"right\"}[e],n=t.side===r?1:-1,a=[-1,1,n,-n];return\"inside\"!==t.ticks==(\"x\"===e)&&(a=a.map((function(t){return-t}))),t.side&&a.push({l:-1,t:-1,r:1,b:1}[t.side.charAt(0)]),a},F.makeTransFn=function(t){var e=t._id.charAt(0),r=t._offset;return\"x\"===e?function(e){return\"translate(\"+(r+t.l2p(e.x))+\",0)\"}:function(e){return\"translate(0,\"+(r+t.l2p(e.x))+\")\"}},F.makeTransPeriodFn=function(t){var e=t._id.charAt(0),r=t._offset;return\"x\"===e?function(e){return\"translate(\"+(r+t.l2p(e.periodX))+\",0)\"}:function(e){return\"translate(0,\"+(r+t.l2p(e.periodX))+\")\"}},F.makeTickPath=function(t,e,r,n){n=void 0!==n?n:t.ticklen;var a=t._id.charAt(0),i=(t.linewidth||1)/2;return\"x\"===a?\"M0,\"+(e+i*r)+\"v\"+n*r:\"M\"+(e+i*r)+\",0h\"+n*r},F.makeLabelFns=function(t,e,r){var n=t._id.charAt(0),i=\"boundaries\"!==t.tickson&&\"outside\"===t.ticks,o=0,l=0;if(i&&(o+=t.ticklen),r&&\"outside\"===t.ticks){var c=s.deg2rad(r);o=t.ticklen*Math.cos(c)+1,l=t.ticklen*Math.sin(c)}t.showticklabels&&(i||t.showline)&&(o+=.2*t.tickfont.size);var u,h,f,p,d={labelStandoff:o+=(t.linewidth||1)/2,labelShift:l};return\"x\"===n?(p=\"bottom\"===t.side?1:-1,u=l*p,h=e+o*p,f=\"bottom\"===t.side?1:-.2,d.xFn=function(t){return t.dx+u},d.yFn=function(t){return t.dy+h+t.fontSize*f},d.anchorFn=function(t,e){return a(e)&&0!==e&&180!==e?e*p<0?\"end\":\"start\":\"middle\"},d.heightFn=function(e,r,n){return r<-60||r>60?-.5*n:\"top\"===t.side?-n:0}):\"y\"===n&&(p=\"right\"===t.side?1:-1,u=o,h=-l*p,f=90===Math.abs(t.tickangle)?.5:0,d.xFn=function(t){return t.dx+e+(u+t.fontSize*f)*p},d.yFn=function(t){return t.dy+h+t.fontSize*z},d.anchorFn=function(e,r){return a(r)&&90===Math.abs(r)?\"middle\":\"right\"===t.side?\"start\":\"end\"},d.heightFn=function(e,r,n){return(r*=\"left\"===t.side?1:-1)<-30?-n:r<30?-.5*n:0}),d},F.drawTicks=function(t,e,r){r=r||{};var n=e._id+\"tick\",a=r.vals;\"period\"===e.ticklabelmode&&(a=a.slice()).shift();var i=r.layer.selectAll(\"path.\"+n).data(e.ticks?a:[],ot);i.exit().remove(),i.enter().append(\"path\").classed(n,1).classed(\"ticks\",1).classed(\"crisp\",!1!==r.crisp).call(u.stroke,e.tickcolor).style(\"stroke-width\",h.crispRound(t,e.tickwidth,1)+\"px\").attr(\"d\",r.path),i.attr(\"transform\",r.transFn)},F.drawGrid=function(t,e,r){r=r||{};var n=e._id+\"grid\",a=r.vals,i=r.counterAxis;if(!1===e.showgrid)a=[];else if(i&&F.shouldShowZeroLine(t,e,i))for(var o=\"array\"===e.tickmode,s=0;s<a.length;s++){var l=a[s].x;if(o?!l:Math.abs(l)<e.dtick/100){if(a=a.slice(0,s).concat(a.slice(s+1)),!o)break;s--}}var c=r.layer.selectAll(\"path.\"+n).data(a,ot);c.exit().remove(),c.enter().append(\"path\").classed(n,1).classed(\"crisp\",!1!==r.crisp),e._gw=h.crispRound(t,e.gridwidth,1),c.attr(\"transform\",r.transFn).attr(\"d\",r.path).call(u.stroke,e.gridcolor||\"#ddd\").style(\"stroke-width\",e._gw+\"px\"),\"function\"==typeof r.path&&c.attr(\"d\",r.path)},F.drawZeroLine=function(t,e,r){r=r||r;var n=e._id+\"zl\",a=F.shouldShowZeroLine(t,e,r.counterAxis),i=r.layer.selectAll(\"path.\"+n).data(a?[{x:0,id:e._id}]:[]);i.exit().remove(),i.enter().append(\"path\").classed(n,1).classed(\"zl\",1).classed(\"crisp\",!1!==r.crisp).each((function(){r.layer.selectAll(\"path\").sort((function(t,e){return N.idSort(t.id,e.id)}))})),i.attr(\"transform\",r.transFn).attr(\"d\",r.path).call(u.stroke,e.zerolinecolor||u.defaultLine).style(\"stroke-width\",h.crispRound(t,e.zerolinewidth,e._gw||1)+\"px\")},F.drawLabels=function(t,e,r){r=r||{};var i=t._fullLayout,o=e._id,c=o.charAt(0),u=r.cls||o+\"tick\",f=r.vals,p=r.labelFns,d=r.secondary?0:e.tickangle,g=(e._prevTickAngles||{})[u],m=r.layer.selectAll(\"g.\"+u).data(e.showticklabels?f:[],ot),v=[];function y(t,e){t.each((function(t){var i=n.select(this),o=i.select(\".text-math-group\"),s=p.anchorFn(t,e),c=r.transFn.call(i.node(),t)+(a(e)&&0!=+e?\" rotate(\"+e+\",\"+p.xFn(t)+\",\"+(p.yFn(t)-t.fontSize/2)+\")\":\"\"),u=l.lineCount(i),f=D*t.fontSize,d=p.heightFn(t,a(e)?+e:0,(u-1)*f);if(d&&(c+=\" translate(0, \"+d+\")\"),o.empty())i.select(\"text\").attr({transform:c,\"text-anchor\":s});else{var g=h.bBox(o.node()).width*{end:-.5,start:.5}[s];o.attr(\"transform\",c+(g?\"translate(\"+g+\",0)\":\"\"))}}))}m.enter().append(\"g\").classed(u,1).append(\"text\").attr(\"text-anchor\",\"middle\").each((function(e){var r=n.select(this),a=t._promises.length;r.call(l.positionText,p.xFn(e),p.yFn(e)).call(h.font,e.font,e.fontSize,e.fontColor).text(e.text).call(l.convertToTspans,t),t._promises[a]?v.push(t._promises.pop().then((function(){y(r,d)}))):y(r,d)})),m.exit().remove(),r.repositionOnUpdate&&m.each((function(t){n.select(this).select(\"text\").call(l.positionText,p.xFn(t),p.yFn(t))})),y(m,g+1?g:d);var x=null;e._selections&&(e._selections[u]=m);var b=[function(){return v.length&&Promise.all(v)}];e.automargin&&i._redrawFromAutoMarginCount&&90===g?(x=90,b.push((function(){y(m,g)}))):b.push((function(){if(y(m,d),f.length&&\"x\"===c&&!a(d)&&(\"log\"!==e.type||\"D\"!==String(e.dtick).charAt(0))){x=0;var t,n=0,i=[];if(m.each((function(t){n=Math.max(n,t.fontSize);var r=e.l2p(t.x),a=ct(this),o=h.bBox(a.node());i.push({top:0,bottom:10,height:10,left:r-o.width/2,right:r+o.width/2+2,width:o.width+2})})),\"boundaries\"!==e.tickson&&!e.showdividers||r.secondary){var o=f.length,l=Math.abs((f[o-1].x-f[0].x)*e._m)/(o-1)<2.5*n||\"multicategory\"===e.type;for(t=0;t<i.length-1;t++)if(s.bBoxIntersect(i[t],i[t+1])){x=l?90:30;break}}else{var u=2;for(e.ticks&&(u+=e.tickwidth/2),t=0;t<i.length;t++){var p=f[t].xbnd,g=i[t];if(null!==p[0]&&g.left-e.l2p(p[0])<u||null!==p[1]&&e.l2p(p[1])-g.right<u){x=90;break}}}x&&y(m,x)}})),e._tickAngles&&b.push((function(){e._tickAngles[u]=null===x?a(d)?d:0:x}));var _=s.syncOrAsync(b);return _&&_.then&&t._promises.push(_),_},F.getPxPosition=function(t,e){var r,n=t._fullLayout._size,a=e._id.charAt(0),i=e.side;return\"free\"!==e.anchor?r=e._anchorAxis:\"x\"===a?r={_offset:n.t+(1-(e.position||0))*n.h,_length:0}:\"y\"===a&&(r={_offset:n.l+(e.position||0)*n.w,_length:0}),\"top\"===i||\"left\"===i?r._offset:\"bottom\"===i||\"right\"===i?r._offset+r._length:void 0},F.shouldShowZeroLine=function(t,e,r){var n=s.simpleMap(e.range,e.r2l);return n[0]*n[1]<=0&&e.zeroline&&(\"linear\"===e.type||\"-\"===e.type)&&!(e.rangebreaks&&e.maskBreaks(0)===P)&&(lt(e,0)||!function(t,e,r,n){var a=r._mainAxis;if(!a)return;var i=t._fullLayout,o=e._id.charAt(0),s=F.counterLetter(e._id),l=e._offset+(Math.abs(n[0])<Math.abs(n[1])==(\"x\"===o)?0:e._length);function c(t){if(!t.showline||!t.linewidth)return!1;var r=Math.max((t.linewidth+e.zerolinewidth)/2,1);function n(t){return\"number\"==typeof t&&Math.abs(t-l)<r}if(n(t._mainLinePosition)||n(t._mainMirrorPosition))return!0;var a=t._linepositions||{};for(var i in a)if(n(a[i][0])||n(a[i][1]))return!0}var u=i._plots[r._mainSubplot];if(!(u.mainplotinfo||u).overlays.length)return c(r);for(var h=F.list(t,s),f=0;f<h.length;f++){var p=h[f];if(p._mainAxis===a&&c(p))return!0}}(t,e,r,n)||function(t,e){for(var r=t._fullData,n=e._mainSubplot,a=e._id.charAt(0),i=0;i<r.length;i++){var s=r[i];if(!0===s.visible&&s.xaxis+s.yaxis===n){if(o.traceIs(s,\"bar-like\")&&s.orientation==={x:\"h\",y:\"v\"}[a])return!0;if(s.fill&&s.fill.charAt(s.fill.length-1)===a)return!0}}return!1}(t,e))},F.clipEnds=function(t,e){return e.filter((function(e){return lt(t,e.x)}))},F.allowAutoMargin=function(t){for(var e=F.list(t,\"\",!0),r=0;r<e.length;r++){var n=e[r];n.automargin&&(i.allowAutoMargin(t,ut(n)),n.mirror&&i.allowAutoMargin(t,ht(n))),o.getComponentMethod(\"rangeslider\",\"isVisible\")(n)&&i.allowAutoMargin(t,ft(n))}},F.swap=function(t,e){for(var r=function(t,e){var r,n,a=[];for(r=0;r<e.length;r++){var i=[],o=t._fullData[e[r]].xaxis,s=t._fullData[e[r]].yaxis;if(o&&s){for(n=0;n<a.length;n++)-1===a[n].x.indexOf(o)&&-1===a[n].y.indexOf(s)||i.push(n);if(i.length){var l,c=a[i[0]];if(i.length>1)for(n=1;n<i.length;n++)l=a[i[n]],pt(c.x,l.x),pt(c.y,l.y);pt(c.x,[o]),pt(c.y,[s])}else a.push({x:[o],y:[s]})}}return a}(t,e),n=0;n<r.length;n++)dt(t,r[n].x,r[n].y)}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../components/titles\":710,\"../../constants/alignment\":717,\"../../constants/numerical\":724,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/plots\":861,\"../../registry\":881,\"./autorange\":797,\"./axis_autotype\":799,\"./axis_ids\":801,\"./clean_ticks\":803,\"./layout_attributes\":812,\"./set_convert\":818,d3:169,\"fast-isnumeric\":241}],799:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e,r){return!(r=r||{}).noMultiCategory&&(o=t,a.isArrayOrTypedArray(o[0])&&a.isArrayOrTypedArray(o[1]))?\"multicategory\":function(t,e){for(var r=Math.max(1,(t.length-1)/1e3),i=0,o=0,s={},l=0;l<t.length;l+=r){var c=t[Math.round(l)],u=String(c);s[u]||(s[u]=1,a.isDateTime(c,e)&&(i+=1),n(c)&&(o+=1))}return i>2*o}(t,e)?\"date\":function(t){for(var e=Math.max(1,(t.length-1)/1e3),r=0,n=0,o={},s=0;s<t.length;s+=e){var l=t[Math.round(s)],c=String(l);o[c]||(o[c]=1,\"boolean\"==typeof l?n++:a.cleanNumber(l)!==i?r++:\"string\"==typeof l&&n++)}return n>2*r}(t)?\"category\":function(t){if(!t)return!1;for(var e=0;e<t.length;e++)if(n(t[e]))return!0;return!1}(t)?\"linear\":\"-\";var o}},{\"../../constants/numerical\":724,\"../../lib\":749,\"fast-isnumeric\":241}],800:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=t(\"../array_container_defaults\"),s=t(\"./layout_attributes\"),l=t(\"./tick_value_defaults\"),c=t(\"./tick_mark_defaults\"),u=t(\"./tick_label_defaults\"),h=t(\"./category_order_defaults\"),f=t(\"./line_grid_defaults\"),p=t(\"./set_convert\"),d=t(\"./constants\").WEEKDAY_PATTERN,g=t(\"./constants\").HOUR_PATTERN;function m(t,e,r){function a(r,n){return i.coerce(t,e,s.rangebreaks,r,n)}if(a(\"enabled\")){var o=a(\"bounds\");if(o&&o.length>=2){var l,c,u=\"\";if(2===o.length)for(l=0;l<2;l++)if(c=y(o[l])){u=d;break}var h=a(\"pattern\",u);if(h===d)for(l=0;l<2;l++)(c=y(o[l]))&&(e.bounds[l]=o[l]=c-1);if(h)for(l=0;l<2;l++)switch(c=o[l],h){case d:if(!n(c))return void(e.enabled=!1);if((c=+c)!==Math.floor(c)||c<0||c>=7)return void(e.enabled=!1);e.bounds[l]=o[l]=c;break;case g:if(!n(c))return void(e.enabled=!1);if((c=+c)<0||c>24)return void(e.enabled=!1);e.bounds[l]=o[l]=c}if(!1===r.autorange){var f=r.range;if(f[0]<f[1]){if(o[0]<f[0]&&o[1]>f[1])return void(e.enabled=!1)}else if(o[0]>f[0]&&o[1]<f[1])return void(e.enabled=!1)}}else{var p=a(\"values\");if(!p||!p.length)return void(e.enabled=!1);a(\"dvalue\")}}}e.exports=function(t,e,r,n,g){var v=n.letter,y=n.font||{},x=n.splomStash||{},b=r(\"visible\",!n.visibleDflt),_=e._template||{},w=e.type||_.type||\"-\";\"date\"===w&&a.getComponentMethod(\"calendars\",\"handleDefaults\")(t,e,\"calendar\",n.calendar);p(e,g);var T=!e.isValidRange(t.range);T&&n.reverseDflt&&(T=\"reversed\"),!r(\"autorange\",T)||\"linear\"!==w&&\"-\"!==w||r(\"rangemode\"),r(\"range\"),e.cleanRange(),h(t,e,r,n),\"category\"===w||n.noHover||r(\"hoverformat\");var k=r(\"color\"),M=k!==s.color.dflt?k:y.color,A=x.label||g._dfltTitle[v];if(u(t,e,r,w,n,{pass:1}),!b)return e;r(\"title.text\",A),i.coerceFont(r,\"title.font\",{family:y.family,size:Math.round(1.2*y.size),color:M}),l(t,e,r,w),u(t,e,r,w,n,{pass:2}),c(t,e,r,n),f(t,e,r,{dfltColor:k,bgColor:n.bgColor,showGrid:n.showGrid,attributes:s}),(e.showline||e.ticks)&&r(\"mirror\"),n.automargin&&r(\"automargin\");var S,E=\"multicategory\"===w;n.noTickson||\"category\"!==w&&!E||!e.ticks&&!e.showgrid||(E&&(S=\"boundaries\"),r(\"tickson\",S));E&&(r(\"showdividers\")&&(r(\"dividercolor\"),r(\"dividerwidth\")));if(\"date\"===w)if(n.noTicklabelmode||r(\"ticklabelmode\"),o(t,e,{name:\"rangebreaks\",inclusionAttr:\"enabled\",handleItemDefaults:m}),e.rangebreaks.length){for(var C=0;C<e.rangebreaks.length;C++)if(e.rangebreaks[C].pattern===d){e._hasDayOfWeekBreaks=!0;break}if(p(e,g),g._has(\"scattergl\")||g._has(\"splom\"))for(var L=0;L<n.data.length;L++){var P=n.data[L];\"scattergl\"!==P.type&&\"splom\"!==P.type||(P.visible=!1,i.warn(P.type+\" traces do not work on axes with rangebreaks. Setting trace \"+P.index+\" to `visible: false`.\"))}}else delete e.rangebreaks;return e};var v={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function y(t){if(\"string\"==typeof t)return v[t.substr(0,3).toLowerCase()]}},{\"../../lib\":749,\"../../registry\":881,\"../array_container_defaults\":793,\"./category_order_defaults\":802,\"./constants\":804,\"./layout_attributes\":812,\"./line_grid_defaults\":814,\"./set_convert\":818,\"./tick_label_defaults\":819,\"./tick_mark_defaults\":820,\"./tick_value_defaults\":821,\"fast-isnumeric\":241}],801:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"./constants\");r.id2name=function(t){if(\"string\"==typeof t&&t.match(a.AX_ID_PATTERN)){var e=t.substr(1);return\"1\"===e&&(e=\"\"),t.charAt(0)+\"axis\"+e}},r.name2id=function(t){if(t.match(a.AX_NAME_PATTERN)){var e=t.substr(5);return\"1\"===e&&(e=\"\"),t.charAt(0)+e}},r.cleanId=function(t,e){if(\"string\"==typeof t&&t.match(a.AX_ID_PATTERN)&&(!e||t.charAt(0)===e)){var r=t.substr(1).replace(/^0+/,\"\");return\"1\"===r&&(r=\"\"),t.charAt(0)+r}},r.list=function(t,e,n){var a=t._fullLayout;if(!a)return[];var i,o=r.listIds(t,e),s=new Array(o.length);for(i=0;i<o.length;i++){var l=o[i];s[i]=a[l.charAt(0)+\"axis\"+l.substr(1)]}if(!n){var c=a._subplots.gl3d||[];for(i=0;i<c.length;i++){var u=a[c[i]];e?s.push(u[e+\"axis\"]):s.push(u.xaxis,u.yaxis,u.zaxis)}}return s},r.listIds=function(t,e){var r=t._fullLayout;if(!r)return[];var n=r._subplots;return e?n[e+\"axis\"]:n.xaxis.concat(n.yaxis)},r.getFromId=function(t,e,n){var a=t._fullLayout;return\"x\"===n?e=e.replace(/y[0-9]*/,\"\"):\"y\"===n&&(e=e.replace(/x[0-9]*/,\"\")),a[r.id2name(e)]},r.getFromTrace=function(t,e,a){var i=t._fullLayout,o=null;if(n.traceIs(e,\"gl3d\")){var s=e.scene;\"scene\"===s.substr(0,5)&&(o=i[s][a+\"axis\"])}else o=r.getFromId(t,e[a+\"axis\"]||a);return o},r.idSort=function(t,e){var r=t.charAt(0),n=e.charAt(0);return r!==n?r>n?1:-1:+(t.substr(1)||1)-+(e.substr(1)||1)},r.getAxisGroup=function(t,e){for(var r=t._axisMatchGroups,n=0;n<r.length;n++){if(r[n][e])return\"g\"+n}return e}},{\"../../registry\":881,\"./constants\":804}],802:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){if(\"category\"===e.type){var a,i=t.categoryarray,o=Array.isArray(i)&&i.length>0;o&&(a=\"array\");var s,l=r(\"categoryorder\",a);\"array\"===l&&(s=r(\"categoryarray\")),o||\"array\"!==l||(l=e.categoryorder=\"trace\"),\"trace\"===l?e._initialCategories=[]:\"array\"===l?e._initialCategories=s.slice():(s=function(t,e){var r,n,a,i=e.dataAttr||t._id.charAt(0),o={};if(e.axData)r=e.axData;else for(r=[],n=0;n<e.data.length;n++){var s=e.data[n];s[i+\"axis\"]===t._id&&r.push(s)}for(n=0;n<r.length;n++){var l=r[n][i];for(a=0;a<l.length;a++){var c=l[a];null!=c&&(o[c]=1)}}return Object.keys(o)}(e,n).sort(),\"category ascending\"===l?e._initialCategories=s:\"category descending\"===l&&(e._initialCategories=s.reverse()))}}},{}],803:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\"),o=i.ONEDAY,s=i.ONEWEEK;r.dtick=function(t,e){var r=\"log\"===e,a=\"date\"===e,i=\"category\"===e,s=a?o:1;if(!t)return s;if(n(t))return(t=Number(t))<=0?s:i?Math.max(1,Math.round(t)):a?Math.max(.1,t):t;if(\"string\"!=typeof t||!a&&!r)return s;var l=t.charAt(0),c=t.substr(1);return(c=n(c)?Number(c):0)<=0||!(a&&\"M\"===l&&c===Math.round(c)||r&&\"L\"===l||r&&\"D\"===l&&(1===c||2===c))?s:t},r.tick0=function(t,e,r,i){return\"date\"===e?a.cleanDate(t,a.dateTick0(r,i%s==0?1:0)):\"D1\"!==i&&\"D2\"!==i?n(t)?Number(t):0:void 0}},{\"../../constants/numerical\":724,\"../../lib\":749,\"fast-isnumeric\":241}],804:[function(t,e,r){\"use strict\";var n=t(\"../../lib/regex\").counter;e.exports={idRegex:{x:n(\"x\"),y:n(\"y\")},attrRegex:n(\"[xy]axis\"),xAxisMatch:n(\"xaxis\"),yAxisMatch:n(\"yaxis\"),AX_ID_PATTERN:/^[xyz][0-9]*$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:\"hour\",WEEKDAY_PATTERN:\"day of week\",MINDRAG:8,MINSELECT:12,MINZOOM:20,DRAGGERSIZE:20,BENDPX:1.5,REDRAWDELAY:50,SELECTDELAY:100,SELECTID:\"-select\",DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:[\"imagelayer\",\"heatmaplayer\",\"contourcarpetlayer\",\"contourlayer\",\"funnellayer\",\"waterfalllayer\",\"barlayer\",\"carpetlayer\",\"violinlayer\",\"boxlayer\",\"ohlclayer\",\"scattercarpetlayer\",\"scatterlayer\"],clipOnAxisFalseQuery:[\".scatterlayer\",\".barlayer\",\".funnellayer\",\".waterfalllayer\"],layerValue2layerClass:{\"above traces\":\"above\",\"below traces\":\"below\"}}},{\"../../lib/regex\":765}],805:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./axis_ids\").id2name,i=t(\"./scale_zoom\"),o=t(\"./autorange\").makePadFn,s=t(\"./autorange\").concatExtremes,l=t(\"../../constants/numerical\").ALMOST_EQUAL,c=t(\"../../constants/alignment\").FROM_BL;function u(t,e,r,n,i){var o,s,l,c,u=\"range\"!==i,h=n[a(e)].type,f=[];for(s=0;s<r.length;s++)if((l=r[s])!==e&&(c=n[a(l)]).type===h)if(c.fixedrange){if(u&&c.anchor){n[a(c.anchor)].fixedrange&&f.push(l)}}else f.push(l);for(o=0;o<t.length;o++)if(t[o][e]){var p=t[o],d=[];for(s=0;s<f.length;s++)p[l=f[s]]||d.push(l);return{linkableAxes:d,thisGroup:p}}return{linkableAxes:f,thisGroup:null}}function h(t,e,r,n,a){var i,o,s,l,c;null===e?((e={})[r]=1,c=t.length,t.push(e)):c=t.indexOf(e);var u=Object.keys(e);for(i=0;i<t.length;i++)if(s=t[i],i!==c&&s[n]){var h=s[n];for(o=0;o<u.length;o++)s[l=u[o]]=h*a*e[l];return void t.splice(c,1)}if(1!==a)for(o=0;o<u.length;o++)e[u[o]]*=a;e[n]=1}function f(t,e){var r=t._inputDomain,n=c[t.constraintoward],a=r[0]+(r[1]-r[0])*n;t.domain=t._input.domain=[a+(r[0]-a)/e,a+(r[1]-a)/e],t.setScale()}r.handleConstraintDefaults=function(t,e,r,a){var i,o,s,l,c=a.allAxisIds,f=a.layoutOut,p=a.scaleanchorDflt,d=a.constrainDflt,g=f._axisConstraintGroups,m=f._axisMatchGroups,v=e._id,y=v.charAt(0),x=((f._splomAxes||{})[y]||{})[v]||{},b=e._id,_=b.charAt(0),w=r(\"constrain\",d);if(n.coerce(t,e,{constraintoward:{valType:\"enumerated\",values:\"x\"===_?[\"left\",\"center\",\"right\"]:[\"bottom\",\"middle\",\"top\"],dflt:\"x\"===_?\"center\":\"middle\"}},\"constraintoward\"),!t.matches&&!x.matches||e.fixedrange||(o=u(m,b,c,f),i=n.coerce(t,e,{matches:{valType:\"enumerated\",values:o.linkableAxes||[],dflt:x.matches}},\"matches\")),i||e.fixedrange&&\"domain\"!==w||!t.scaleanchor&&!p||(l=u(g,b,c,f,w),s=n.coerce(t,e,{scaleanchor:{valType:\"enumerated\",values:l.linkableAxes||[]}},\"scaleanchor\",p)),i?(delete e.constrain,h(m,o.thisGroup,b,i,1)):-1!==c.indexOf(t.matches)&&n.warn(\"ignored \"+e._name+'.matches: \"'+t.matches+'\" to avoid either an infinite loop or because the target axis has fixed range.'),s){var T=r(\"scaleratio\");T||(T=e.scaleratio=1),h(g,l.thisGroup,b,s,T)}else-1!==c.indexOf(t.scaleanchor)&&n.warn(\"ignored \"+e._name+'.scaleanchor: \"'+t.scaleanchor+'\" to avoid either an infinite loop and possibly inconsistent scaleratios, or because the target axis has fixed range or this axis declares a *matches* constraint.')},r.enforce=function(t){var e,r,n,c,u,h,p,d=t._fullLayout,g=d._axisConstraintGroups||[];for(e=0;e<g.length;e++){var m=g[e],v=Object.keys(m),y=1/0,x=0,b=1/0,_={},w={},T=!1;for(r=0;r<v.length;r++)w[n=v[r]]=c=d[a(n)],c._inputDomain?c.domain=c._inputDomain.slice():c._inputDomain=c.domain.slice(),c._inputRange||(c._inputRange=c.range.slice()),c.setScale(),_[n]=u=Math.abs(c._m)/m[n],y=Math.min(y,u),\"domain\"!==c.constrain&&c._constraintShrinkable||(b=Math.min(b,u)),delete c._constraintShrinkable,x=Math.max(x,u),\"domain\"===c.constrain&&(T=!0);if(!(y>l*x)||T)for(r=0;r<v.length;r++)if(u=_[n=v[r]],h=(c=w[n]).constrain,u!==b||\"domain\"===h)if(p=u/b,\"range\"===h)i(c,p);else{var k=c._inputDomain,M=(c.domain[1]-c.domain[0])/(k[1]-k[0]),A=(c.r2l(c.range[1])-c.r2l(c.range[0]))/(c.r2l(c._inputRange[1])-c.r2l(c._inputRange[0]));if((p/=M)*A<1){c.domain=c._input.domain=k.slice(),i(c,p);continue}if(A<1&&(c.range=c._input.range=c._inputRange.slice(),p*=A),c.autorange){var S=c.r2l(c.range[0]),E=c.r2l(c.range[1]),C=(S+E)/2,L=C,P=C,I=Math.abs(E-C),z=C-I*p*1.0001,O=C+I*p*1.0001,D=o(c);f(c,p);var R,F,B=Math.abs(c._m),N=s(t,c),j=N.min,U=N.max;for(F=0;F<j.length;F++)(R=j[F].val-D(j[F])/B)>z&&R<L&&(L=R);for(F=0;F<U.length;F++)(R=U[F].val+D(U[F])/B)<O&&R>P&&(P=R);p/=(P-L)/(2*I),L=c.l2r(L),P=c.l2r(P),c.range=c._input.range=S<E?[L,P]:[P,L]}f(c,p)}}},r.clean=function(t,e){if(e._inputDomain){for(var r=!1,n=e._id,a=t._fullLayout._axisConstraintGroups,i=0;i<a.length;i++)if(a[i][n]){r=!0;break}r&&\"domain\"===e.constrain||(e._input.domain=e.domain=e._inputDomain,delete e._inputDomain)}}},{\"../../constants/alignment\":717,\"../../constants/numerical\":724,\"../../lib\":749,\"./autorange\":797,\"./axis_ids\":801,\"./scale_zoom\":816}],806:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"has-passive-events\"),o=t(\"../../registry\"),s=t(\"../../lib\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../components/color\"),u=t(\"../../components/drawing\"),h=t(\"../../components/fx\"),f=t(\"./axes\"),p=t(\"../../lib/setcursor\"),d=t(\"../../components/dragelement\"),g=t(\"../../components/dragelement/helpers\"),m=g.selectingOrDrawing,v=g.freeMode,y=t(\"../../constants/alignment\").FROM_TL,x=t(\"../../lib/clear_gl_canvases\"),b=t(\"../../plot_api/subroutines\").redrawReglTraces,_=t(\"../plots\"),w=t(\"./axis_ids\").getFromId,T=t(\"./select\").prepSelect,k=t(\"./select\").clearSelect,M=t(\"./select\").selectOnClick,A=t(\"./scale_zoom\"),S=t(\"./constants\"),E=S.MINDRAG,C=S.MINZOOM,L=!0;function P(t,e,r,n){var a=s.ensureSingle(t.draglayer,e,r,(function(e){e.classed(\"drag\",!0).style({fill:\"transparent\",\"stroke-width\":0}).attr(\"data-subplot\",t.id)}));return a.call(p,n),a.node()}function I(t,e,r,a,i,o,s){var l=P(t,\"rect\",e,r);return n.select(l).call(u.setRect,a,i,o,s),l}function z(t,e){for(var r=0;r<t.length;r++)if(!t[r].fixedrange)return e;return\"\"}function O(t,e,r,n,a){for(var i=0;i<t.length;i++){var o=t[i];if(!o.fixedrange)if(o.rangebreaks){var s=\"y\"===o._id.charAt(0),l=s?1-e:e,c=s?1-r:r;n[o._name+\".range[0]\"]=o.l2r(o.p2l(l*o._length)),n[o._name+\".range[1]\"]=o.l2r(o.p2l(c*o._length))}else{var u=o._rl[0],h=o._rl[1]-u;n[o._name+\".range[0]\"]=o.l2r(u+h*e),n[o._name+\".range[1]\"]=o.l2r(u+h*r)}}if(a&&a.length){var f=(e+(1-r))/2;O(a,f,1-f,n,[])}}function D(t,e){for(var r=0;r<t.length;r++){var n=t[r];if(!n.fixedrange)if(n.rangebreaks){var a=n._length,i=(n.p2l(0+e)-n.p2l(0)+(n.p2l(a+e)-n.p2l(a)))/2;n.range=[n.l2r(n._rl[0]-i),n.l2r(n._rl[1]-i)]}else n.range=[n.l2r(n._rl[0]-e/n._m),n.l2r(n._rl[1]-e/n._m)]}}function R(t){return 1-(t>=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function F(t,e,r,n,a){return t.append(\"path\").attr(\"class\",\"zoombox\").style({fill:e>.2?\"rgba(0,0,0,0)\":\"rgba(255,255,255,0)\",\"stroke-width\":0}).attr(\"transform\",\"translate(\"+r+\", \"+n+\")\").attr(\"d\",a+\"Z\")}function B(t,e,r){return t.append(\"path\").attr(\"class\",\"zoombox-corners\").style({fill:c.background,stroke:c.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"transform\",\"translate(\"+e+\", \"+r+\")\").attr(\"d\",\"M0,0Z\")}function N(t,e,r,n,a,i){t.attr(\"d\",n+\"M\"+r.l+\",\"+r.t+\"v\"+r.h+\"h\"+r.w+\"v-\"+r.h+\"h-\"+r.w+\"Z\"),j(t,e,a,i)}function j(t,e,r,n){r||(t.transition().style(\"fill\",n>.2?\"rgba(0,0,0,0.4)\":\"rgba(255,255,255,0.3)\").duration(200),e.transition().style(\"opacity\",1).duration(200))}function U(t){n.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}function V(t){L&&t.data&&t._context.showTips&&(s.notifier(s._(t,\"Double-click to zoom back out\"),\"long\"),L=!1)}function q(t){var e=Math.floor(Math.min(t.b-t.t,t.r-t.l,C)/2);return\"M\"+(t.l-3.5)+\",\"+(t.t-.5+e)+\"h3v\"+-e+\"h\"+e+\"v-3h-\"+(e+3)+\"ZM\"+(t.r+3.5)+\",\"+(t.t-.5+e)+\"h-3v\"+-e+\"h\"+-e+\"v-3h\"+(e+3)+\"ZM\"+(t.r+3.5)+\",\"+(t.b+.5-e)+\"h-3v\"+e+\"h\"+-e+\"v3h\"+(e+3)+\"ZM\"+(t.l-3.5)+\",\"+(t.b+.5-e)+\"h3v\"+e+\"h\"+e+\"v3h-\"+(e+3)+\"Z\"}function H(t,e,r,n){for(var a,i,o,l,c=!1,u={},h={},f=0;f<e.length;f++){var p=e[f];for(a in r)if(p[a]){for(o in p)(\"x\"===o.charAt(0)?r:n)[o]||(u[o]=a);for(i in n)p[i]&&(c=!0)}for(i in n)if(p[i])for(l in p)(\"x\"===l.charAt(0)?r:n)[l]||(h[l]=i)}c&&(s.extendFlat(u,h),h={});var d={},g=[];for(o in u){var m=w(t,o);g.push(m),d[m._id]=m}var v={},y=[];for(l in h){var x=w(t,l);y.push(x),v[x._id]=x}return{xaHash:d,yaHash:v,xaxes:g,yaxes:y,xLinks:u,yLinks:h,isSubplotConstrained:c}}function G(t,e){if(i){var r=void 0!==t.onwheel?\"wheel\":\"mousewheel\";t._onwheel&&t.removeEventListener(r,t._onwheel),t._onwheel=e,t.addEventListener(r,e,{passive:!1})}else void 0!==t.onwheel?t.onwheel=e:void 0!==t.onmousewheel?t.onmousewheel=e:t.isAddedWheelEvent||(t.isAddedWheelEvent=!0,t.addEventListener(\"wheel\",e,{passive:!1}))}function Y(t){var e=[];for(var r in t)e.push(t[r]);return e}e.exports={makeDragBox:function(t,e,r,i,c,p,g,L){var P,j,W,Z,X,J,K,Q,$,tt,et,rt,nt,at,it,ot,st,lt,ct,ut,ht,ft=t._fullLayout._zoomlayer,pt=g+L===\"nsew\",dt=1===(g+L).length;function gt(){if(P=e.xaxis,j=e.yaxis,$=P._length,tt=j._length,K=P._offset,Q=j._offset,(W={})[P._id]=P,(Z={})[j._id]=j,g&&L)for(var r=e.overlays,n=0;n<r.length;n++){var a=r[n].xaxis;W[a._id]=a;var i=r[n].yaxis;Z[i._id]=i}X=Y(W),J=Y(Z),nt=z(X,L),at=z(J,g),it=!at&&!nt,et=H(t,t._fullLayout._axisConstraintGroups,W,Z),rt=H(t,t._fullLayout._axisMatchGroups,W,Z),ot=L||et.isSubplotConstrained||rt.isSubplotConstrained,st=g||et.isSubplotConstrained||rt.isSubplotConstrained;var o=t._fullLayout;lt=o._has(\"scattergl\"),ct=o._has(\"splom\"),ut=o._has(\"svg\")}gt();var mt=function(t,e,r){if(!t)return\"pointer\";if(\"nsew\"===t)return r?\"\":\"pan\"===e?\"move\":\"crosshair\";return t.toLowerCase()+\"-resize\"}(at+nt,t._fullLayout.dragmode,pt),vt=I(e,g+L+\"drag\",mt,r,i,c,p);if(it&&!pt)return vt.onmousedown=null,vt.style.pointerEvents=\"none\",vt;var yt,xt,bt,_t,wt,Tt,kt,Mt,At,St,Et={element:vt,gd:t,plotinfo:e};function Ct(){Et.plotinfo.selection=!1,k(t)}function Lt(t,r){var a=Et.gd;if(a._fullLayout._activeShapeIndex>=0)a._fullLayout._deactivateShape(a);else{var i=a._fullLayout.clickmode;if(U(a),2!==t||dt||Ut(),pt)i.indexOf(\"select\")>-1&&M(r,a,X,J,e.id,Et),i.indexOf(\"event\")>-1&&h.click(a,r,e.id);else if(1===t&&dt){var s=g?j:P,c=\"s\"===g||\"w\"===L?0:1,u=s._name+\".range[\"+c+\"]\",f=function(t,e){var r,a=t.range[e],i=Math.abs(a-t.range[1-e]);return\"date\"===t.type?a:\"log\"===t.type?(r=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,n.format(\".\"+r+\"g\")(Math.pow(10,a))):(r=Math.floor(Math.log(Math.abs(a))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,n.format(\".\"+String(r)+\"g\")(a))}(s,c),p=\"left\",d=\"middle\";if(s.fixedrange)return;g?(d=\"n\"===g?\"top\":\"bottom\",\"right\"===s.side&&(p=\"right\")):\"e\"===L&&(p=\"right\"),a._context.showAxisRangeEntryBoxes&&n.select(vt).call(l.makeEditable,{gd:a,immediate:!0,background:a._fullLayout.paper_bgcolor,text:String(f),fill:s.tickfont?s.tickfont.color:\"#444\",horizontalAlign:p,verticalAlign:d}).on(\"edit\",(function(t){var e=s.d2r(t);void 0!==e&&o.call(\"_guiRelayout\",a,u,e)}))}}}function Pt(e,r){if(t._transitioningWithDuration)return!1;var n=Math.max(0,Math.min($,e+yt)),a=Math.max(0,Math.min(tt,r+xt)),i=Math.abs(n-yt),o=Math.abs(a-xt);function s(){kt=\"\",bt.r=bt.l,bt.t=bt.b,At.attr(\"d\",\"M0,0Z\")}if(bt.l=Math.min(yt,n),bt.r=Math.max(yt,n),bt.t=Math.min(xt,a),bt.b=Math.max(xt,a),et.isSubplotConstrained)i>C||o>C?(kt=\"xy\",i/$>o/tt?(o=i*tt/$,xt>a?bt.t=xt-o:bt.b=xt+o):(i=o*$/tt,yt>n?bt.l=yt-i:bt.r=yt+i),At.attr(\"d\",q(bt))):s();else if(rt.isSubplotConstrained)if(i>C||o>C){kt=\"xy\";var l=Math.min(bt.l/$,(tt-bt.b)/tt),c=Math.max(bt.r/$,(tt-bt.t)/tt);bt.l=l*$,bt.r=c*$,bt.b=(1-l)*tt,bt.t=(1-c)*tt,At.attr(\"d\",q(bt))}else s();else!at||o<Math.min(Math.max(.6*i,E),C)?i<E||!nt?s():(bt.t=0,bt.b=tt,kt=\"x\",At.attr(\"d\",function(t,e){return\"M\"+(t.l-.5)+\",\"+(e-C-.5)+\"h-3v\"+(2*C+1)+\"h3ZM\"+(t.r+.5)+\",\"+(e-C-.5)+\"h3v\"+(2*C+1)+\"h-3Z\"}(bt,xt))):!nt||i<Math.min(.6*o,C)?(bt.l=0,bt.r=$,kt=\"y\",At.attr(\"d\",function(t,e){return\"M\"+(e-C-.5)+\",\"+(t.t-.5)+\"v-3h\"+(2*C+1)+\"v3ZM\"+(e-C-.5)+\",\"+(t.b+.5)+\"v3h\"+(2*C+1)+\"v-3Z\"}(bt,yt))):(kt=\"xy\",At.attr(\"d\",q(bt)));bt.w=bt.r-bt.l,bt.h=bt.b-bt.t,kt&&(St=!0),t._dragged=St,N(Mt,At,bt,wt,Tt,_t),It(),t.emit(\"plotly_relayouting\",ht),Tt=!0}function It(){ht={},\"xy\"!==kt&&\"x\"!==kt||(O(X,bt.l/$,bt.r/$,ht,et.xaxes),Nt(\"x\",ht)),\"xy\"!==kt&&\"y\"!==kt||(O(J,(tt-bt.b)/tt,(tt-bt.t)/tt,ht,et.yaxes),Nt(\"y\",ht))}function zt(){It(),U(t),Vt(),V(t)}Et.prepFn=function(e,r,n){var i=Et.dragmode,o=t._fullLayout.dragmode;o!==i&&(Et.dragmode=o),gt(),it||(pt?e.shiftKey?\"pan\"===o?o=\"zoom\":m(o)||(o=\"pan\"):e.ctrlKey&&(o=\"pan\"):o=\"pan\"),v(o)?Et.minDrag=1:Et.minDrag=void 0,m(o)?(Et.xaxes=X,Et.yaxes=J,T(e,r,n,Et,o)):(Et.clickFn=Lt,m(i)&&Ct(),it||(\"zoom\"===o?(Et.moveFn=Pt,Et.doneFn=zt,Et.minDrag=1,function(e,r,n){var i=vt.getBoundingClientRect();yt=r-i.left,xt=n-i.top,bt={l:yt,r:yt,w:0,t:xt,b:xt,h:0},_t=t._hmpixcount?t._hmlumcount/t._hmpixcount:a(t._fullLayout.plot_bgcolor).getLuminance(),Tt=!1,kt=\"xy\",St=!1,Mt=F(ft,_t,K,Q,wt=\"M0,0H\"+$+\"V\"+tt+\"H0V0\"),At=B(ft,K,Q)}(0,r,n)):\"pan\"===o&&(Et.moveFn=Bt,Et.doneFn=Vt))),t._fullLayout._redrag=function(){var e=t._dragdata;if(e&&e.element===vt){var r=t._fullLayout.dragmode;m(r)||(gt(),qt([0,0,$,tt]),Et.moveFn(e.dx,e.dy))}}},d.init(Et);var Ot=[0,0,$,tt],Dt=null,Rt=S.REDRAWDELAY,Ft=e.mainplot?t._fullLayout._plots[e.mainplot]:e;function Bt(e,r){if(!t._transitioningWithDuration){if(t._fullLayout._replotting=!0,\"ew\"===nt||\"ns\"===at)return nt&&(D(X,e),Nt(\"x\")),at&&(D(J,r),Nt(\"y\")),qt([nt?-e:0,at?-r:0,$,tt]),jt(),void t.emit(\"plotly_relayouting\",ht);if(et.isSubplotConstrained&&nt&&at){var n=\"w\"===nt==(\"n\"===at)?1:-1,a=(e/$+n*r/tt)/2;e=a*$,r=n*a*tt}\"w\"===nt?e=l(X,0,e):\"e\"===nt?e=l(X,1,-e):nt||(e=0),\"n\"===at?r=l(J,1,r):\"s\"===at?r=l(J,0,-r):at||(r=0);var i=\"w\"===nt?e:0,o=\"n\"===at?r:0;if(et.isSubplotConstrained){var s;if(!nt&&1===at.length){for(s=0;s<X.length;s++)X[s].range=X[s]._r.slice(),A(X[s],1-r/tt);i=(e=r*$/tt)/2}if(!at&&1===nt.length){for(s=0;s<J.length;s++)J[s].range=J[s]._r.slice(),A(J[s],1-e/$);o=(r=e*tt/$)/2}}Nt(\"x\"),Nt(\"y\"),qt([i,o,$-e,tt-r]),jt(),t.emit(\"plotly_relayouting\",ht)}function l(t,e,r){for(var n,a,i=1-e,o=0;o<t.length;o++){var s=t[o];if(!s.fixedrange){n=s,a=s._rl[i]+(s._rl[e]-s._rl[i])/R(r/s._length);var l=s.l2r(a);!1!==l&&void 0!==l&&(s.range[e]=l)}}return n._length*(n._rl[e]-a)/(n._rl[e]-n._rl[i])}}function Nt(t,e){for(var r=rt.isSubplotConstrained?{x:J,y:X}[t]:rt[t+\"axes\"],n=rt.isSubplotConstrained?{x:X,y:J}[t]:[],a=0;a<r.length;a++){var i=r[a],o=i._id,s=rt.xLinks[o]||rt.yLinks[o],l=n[0]||W[s]||Z[s];l&&(e?(e[i._name+\".range[0]\"]=e[l._name+\".range[0]\"],e[i._name+\".range[1]\"]=e[l._name+\".range[1]\"]):i.range=l.range.slice())}}function jt(){var e,r=[];function n(t){for(e=0;e<t.length;e++)t[e].fixedrange||r.push(t[e]._id)}for(ot&&(n(X),n(et.xaxes),n(rt.xaxes)),st&&(n(J),n(et.yaxes),n(rt.yaxes)),ht={},e=0;e<r.length;e++){var a=r[e],i=w(t,a);f.drawOne(t,i,{skipTitle:!0}),ht[i._name+\".range[0]\"]=i.range[0],ht[i._name+\".range[1]\"]=i.range[1]}f.redrawComponents(t,r)}function Ut(){if(!t._transitioningWithDuration){var e=t._context.doubleClick,r=[];nt&&(r=r.concat(X)),at&&(r=r.concat(J)),rt.xaxes&&(r=r.concat(rt.xaxes)),rt.yaxes&&(r=r.concat(rt.yaxes));var n,a,i,s={};if(\"reset+autosize\"===e)for(e=\"autosize\",a=0;a<r.length;a++)if((n=r[a])._rangeInitial&&(n.range[0]!==n._rangeInitial[0]||n.range[1]!==n._rangeInitial[1])||!n._rangeInitial&&!n.autorange){e=\"reset\";break}if(\"autosize\"===e)for(a=0;a<r.length;a++)(n=r[a]).fixedrange||(s[n._name+\".autorange\"]=!0);else if(\"reset\"===e)for((nt||et.isSubplotConstrained)&&(r=r.concat(et.xaxes)),at&&!et.isSubplotConstrained&&(r=r.concat(et.yaxes)),et.isSubplotConstrained&&(nt?at||(r=r.concat(J)):r=r.concat(X)),a=0;a<r.length;a++)(n=r[a]).fixedrange||(n._rangeInitial?(i=n._rangeInitial,s[n._name+\".range[0]\"]=i[0],s[n._name+\".range[1]\"]=i[1]):s[n._name+\".autorange\"]=!0);t.emit(\"plotly_doubleclick\",null),o.call(\"_guiRelayout\",t,s)}}function Vt(){qt([0,0,$,tt]),s.syncOrAsync([_.previousPromises,function(){t._fullLayout._replotting=!1,o.call(\"_guiRelayout\",t,ht)}],t)}function qt(e){var r,n,a,i,l=t._fullLayout,c=l._plots,h=l._subplots.cartesian;if(ct&&o.subplotsRegistry.splom.drag(t),lt)for(r=0;r<h.length;r++)if(a=(n=c[h[r]]).xaxis,i=n.yaxis,n._scene){var f=s.simpleMap(a.range,a.r2l),p=s.simpleMap(i.range,i.r2l);n._scene.update({range:[f[0],p[0],f[1],p[1]]})}if((ct||lt)&&(x(t),b(t)),ut){var d=e[2]/P._length,m=e[3]/j._length;for(r=0;r<h.length;r++){a=(n=c[h[r]]).xaxis,i=n.yaxis;var v,y,_,w,T=ot&&!a.fixedrange&&W[a._id],k=st&&!i.fixedrange&&Z[i._id];if(T?(v=d,_=L?e[0]:Yt(a,v)):rt.xaHash[a._id]?(v=d,_=e[0]*a._length/P._length):rt.yaHash[a._id]?(v=m,_=\"ns\"===at?-e[1]*a._length/j._length:Yt(a,v,{n:\"top\",s:\"bottom\"}[at])):_=Gt(a,v=Ht(a,d,m)),k?(y=m,w=g?e[1]:Yt(i,y)):rt.yaHash[i._id]?(y=m,w=e[1]*i._length/j._length):rt.xaHash[i._id]?(y=d,w=\"ew\"===nt?-e[0]*i._length/P._length:Yt(i,y,{e:\"right\",w:\"left\"}[nt])):w=Gt(i,y=Ht(i,d,m)),v||y){v||(v=1),y||(y=1);var M=a._offset-_/v,A=i._offset-w/y;n.clipRect.call(u.setTranslate,_,w).call(u.setScale,v,y),n.plot.call(u.setTranslate,M,A).call(u.setScale,1/v,1/y),v===n.xScaleFactor&&y===n.yScaleFactor||(u.setPointGroupScale(n.zoomScalePts,v,y),u.setTextPointsScale(n.zoomScaleTxt,v,y)),u.hideOutsideRangePoints(n.clipOnAxisFalseTraces,n),n.xScaleFactor=v,n.yScaleFactor=y}}}}function Ht(t,e,r){return t.fixedrange?0:ot&&et.xaHash[t._id]?e:st&&(et.isSubplotConstrained?et.xaHash:et.yaHash)[t._id]?r:0}function Gt(t,e){return e?(t.range=t._r.slice(),A(t,e),Yt(t,e)):0}function Yt(t,e,r){return t._length*(1-e)*y[r||t.constraintoward||\"middle\"]}return g.length*L.length!=1&&G(vt,(function(e){if(t._context._scrollZoom.cartesian||t._fullLayout._enablescrollzoom){if(Ct(),t._transitioningWithDuration)return e.preventDefault(),void e.stopPropagation();gt(),clearTimeout(Dt);var r=-e.deltaY;if(isFinite(r)||(r=e.wheelDelta/10),isFinite(r)){var n,a=Math.exp(-Math.min(Math.max(r,-20),20)/200),i=Ft.draglayer.select(\".nsewdrag\").node().getBoundingClientRect(),o=(e.clientX-i.left)/i.width,l=(i.bottom-e.clientY)/i.height;if(ot){for(L||(o=.5),n=0;n<X.length;n++)c(X[n],o,a);Nt(\"x\"),Ot[2]*=a,Ot[0]+=Ot[2]*o*(1/a-1)}if(st){for(g||(l=.5),n=0;n<J.length;n++)c(J[n],l,a);Nt(\"y\"),Ot[3]*=a,Ot[1]+=Ot[3]*(1-l)*(1/a-1)}qt(Ot),jt(),t.emit(\"plotly_relayouting\",ht),Dt=setTimeout((function(){Ot=[0,0,$,tt],Vt()}),Rt),e.preventDefault()}else s.log(\"Did not find wheel motion attributes: \",e)}function c(t,e,r){if(!t.fixedrange){var n=s.simpleMap(t.range,t.r2l),a=n[0]+(n[1]-n[0])*e;t.range=n.map((function(e){return t.l2r(a+(e-a)*r)}))}}})),vt},makeDragger:P,makeRectDragger:I,makeZoombox:F,makeCorners:B,updateZoombox:N,xyCorners:q,transitionZoombox:j,removeZoombox:U,showDoubleClickNotifier:V,attachWheelEventHandler:G}},{\"../../components/color\":615,\"../../components/dragelement\":634,\"../../components/dragelement/helpers\":633,\"../../components/drawing\":637,\"../../components/fx\":655,\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/clear_gl_canvases\":733,\"../../lib/setcursor\":769,\"../../lib/svg_text_utils\":773,\"../../plot_api/subroutines\":788,\"../../registry\":881,\"../plots\":861,\"./axes\":798,\"./axis_ids\":801,\"./constants\":804,\"./scale_zoom\":816,\"./select\":817,d3:169,\"has-passive-events\":415,tinycolor2:548}],807:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/fx\"),i=t(\"../../components/dragelement\"),o=t(\"../../lib/setcursor\"),s=t(\"./dragbox\").makeDragBox,l=t(\"./constants\").DRAGGERSIZE;r.initInteractions=function(t){var e=t._fullLayout;if(t._context.staticPlot)n.select(t).selectAll(\".drag\").remove();else if(e._has(\"cartesian\")||e._has(\"splom\")){Object.keys(e._plots||{}).sort((function(t,r){if((e._plots[t].mainplot&&!0)===(e._plots[r].mainplot&&!0)){var n=t.split(\"y\"),a=r.split(\"y\");return n[0]===a[0]?Number(n[1]||1)-Number(a[1]||1):Number(n[0]||1)-Number(a[0]||1)}return e._plots[t].mainplot?1:-1})).forEach((function(r){var n=e._plots[r],o=n.xaxis,c=n.yaxis;if(!n.mainplot){var u=s(t,n,o._offset,c._offset,o._length,c._length,\"ns\",\"ew\");u.onmousemove=function(e){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===r&&t._fullLayout._plots[r]&&a.hover(t,e,r)},a.hover(t,e,r),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=r},u.onmouseout=function(e){t._dragging||(t._fullLayout._hoversubplot=null,i.unhover(t,e))},t._context.showAxisDragHandles&&(s(t,n,o._offset-l,c._offset-l,l,l,\"n\",\"w\"),s(t,n,o._offset+o._length,c._offset-l,l,l,\"n\",\"e\"),s(t,n,o._offset-l,c._offset+c._length,l,l,\"s\",\"w\"),s(t,n,o._offset+o._length,c._offset+c._length,l,l,\"s\",\"e\"))}if(t._context.showAxisDragHandles){if(r===o._mainSubplot){var h=o._mainLinePosition;\"top\"===o.side&&(h-=l),s(t,n,o._offset+.1*o._length,h,.8*o._length,l,\"\",\"ew\"),s(t,n,o._offset,h,.1*o._length,l,\"\",\"w\"),s(t,n,o._offset+.9*o._length,h,.1*o._length,l,\"\",\"e\")}if(r===c._mainSubplot){var f=c._mainLinePosition;\"right\"!==c.side&&(f-=l),s(t,n,f,c._offset+.1*c._length,l,.8*c._length,\"ns\",\"\"),s(t,n,f,c._offset+.9*c._length,l,.1*c._length,\"s\",\"\"),s(t,n,f,c._offset,l,.1*c._length,\"n\",\"\")}}}));var o=e._hoverlayer.node();o.onmousemove=function(r){r.target=t._fullLayout._lasthover,a.hover(t,r,e._hoversubplot)},o.onclick=function(e){e.target=t._fullLayout._lasthover,a.click(t,e)},o.onmousedown=function(e){t._fullLayout._lasthover.onmousedown(e)},r.updateFx(t)}},r.updateFx=function(t){var e=t._fullLayout,r=\"pan\"===e.dragmode?\"move\":\"crosshair\";o(e._draggers,r)}},{\"../../components/dragelement\":634,\"../../components/fx\":655,\"../../lib/setcursor\":769,\"./constants\":804,\"./dragbox\":806,d3:169}],808:[function(t,e,r){\"use strict\";e.exports={clearOutlineControllers:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(\".outline-controllers\").remove()},clearSelect:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(\".select-outline\").remove(),t._fullLayout._drawing=!1}}},{}],809:[function(t,e,r){\"use strict\";function n(t,e){switch(t.type){case\"log\":return t.p2d(e);case\"date\":return t.p2r(e,0,t.calendar);default:return t.p2r(e)}}e.exports={p2r:n,r2p:function(t,e){switch(t.type){case\"log\":return t.d2p(e);case\"date\":return t.r2p(e,0,t.calendar);default:return t.r2p(e)}},axValue:function(t){var e=\"y\"===t._id.charAt(0)?1:0;return function(r){return n(t,r[e])}},getTransform:function(t){return\"translate(\"+t.xaxis._offset+\",\"+t.yaxis._offset+\")\"}}},{}],810:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\");e.exports=function(t){return function(e,r){var i=e[t];if(Array.isArray(i))for(var o=n.subplotsRegistry.cartesian,s=o.idRegex,l=r._subplots,c=l.xaxis,u=l.yaxis,h=l.cartesian,f=r._has(\"cartesian\")||r._has(\"gl2d\"),p=0;p<i.length;p++){var d=i[p];if(a.isPlainObject(d)){var g=d.xref,m=d.yref,v=s.x.test(g),y=s.y.test(m);if(v||y){f||a.pushUnique(r._basePlotModules,o);var x=!1;v&&-1===c.indexOf(g)&&(c.push(g),x=!0),y&&-1===u.indexOf(m)&&(u.push(m),x=!0),x&&v&&y&&h.push(g+m)}}}}}},{\"../../lib\":749,\"../../registry\":881}],811:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=t(\"../plots\"),s=t(\"../../components/drawing\"),l=t(\"../get_data\").getModuleCalcData,c=t(\"./axis_ids\"),u=t(\"./constants\"),h=t(\"../../constants/xmlns_namespaces\"),f=i.ensureSingle;function p(t,e,r){return i.ensureSingle(t,e,r,(function(t){t.datum(r)}))}function d(t,e,r,i,o){for(var c,h,f,p=u.traceLayerClasses,d=t._fullLayout,g=d._modules,m=[],v=[],y=0;y<g.length;y++){var x=(c=g[y]).name,b=a.modules[x].categories;if(b.svg){var _=c.layerName||x+\"layer\",w=c.plot;f=(h=l(r,w))[0],r=h[1],f.length&&m.push({i:p.indexOf(_),className:_,plotMethod:w,cdModule:f}),b.zoomScale&&v.push(\".\"+_)}}m.sort((function(t,e){return t.i-e.i}));var T=e.plot.selectAll(\"g.mlayer\").data(m,(function(t){return t.className}));if(T.enter().append(\"g\").attr(\"class\",(function(t){return t.className})).classed(\"mlayer\",!0).classed(\"rangeplot\",e.isRangePlot),T.exit().remove(),T.order(),T.each((function(r){var a=n.select(this),l=r.className;r.plotMethod(t,e,r.cdModule,a,i,o),-1===u.clipOnAxisFalseQuery.indexOf(\".\"+l)&&s.setClipUrl(a,e.layerClipId,t)})),d._has(\"scattergl\")&&(c=a.getModule(\"scattergl\"),f=l(r,c)[0],c.plot(t,e,f)),!t._context.staticPlot&&(e._hasClipOnAxisFalse&&(e.clipOnAxisFalseTraces=e.plot.selectAll(u.clipOnAxisFalseQuery.join(\",\")).selectAll(\".trace\")),v.length)){var k=e.plot.selectAll(v.join(\",\")).selectAll(\".trace\");e.zoomScalePts=k.selectAll(\"path.point\"),e.zoomScaleTxt=k.selectAll(\".textpoint\")}}function g(t,e){var r=e.plotgroup,n=e.id,a=u.layerValue2layerClass[e.xaxis.layer],i=u.layerValue2layerClass[e.yaxis.layer],o=t._fullLayout._hasOnlyLargeSploms;if(e.mainplot){var s=e.mainplotinfo,l=s.plotgroup,h=n+\"-x\",d=n+\"-y\";e.gridlayer=s.gridlayer,e.zerolinelayer=s.zerolinelayer,f(s.overlinesBelow,\"path\",h),f(s.overlinesBelow,\"path\",d),f(s.overaxesBelow,\"g\",h),f(s.overaxesBelow,\"g\",d),e.plot=f(s.overplot,\"g\",n),f(s.overlinesAbove,\"path\",h),f(s.overlinesAbove,\"path\",d),f(s.overaxesAbove,\"g\",h),f(s.overaxesAbove,\"g\",d),e.xlines=l.select(\".overlines-\"+a).select(\".\"+h),e.ylines=l.select(\".overlines-\"+i).select(\".\"+d),e.xaxislayer=l.select(\".overaxes-\"+a).select(\".\"+h),e.yaxislayer=l.select(\".overaxes-\"+i).select(\".\"+d)}else if(o)e.xlines=f(r,\"path\",\"xlines-above\"),e.ylines=f(r,\"path\",\"ylines-above\"),e.xaxislayer=f(r,\"g\",\"xaxislayer-above\"),e.yaxislayer=f(r,\"g\",\"yaxislayer-above\");else{var g=f(r,\"g\",\"layer-subplot\");e.shapelayer=f(g,\"g\",\"shapelayer\"),e.imagelayer=f(g,\"g\",\"imagelayer\"),e.gridlayer=f(r,\"g\",\"gridlayer\"),e.zerolinelayer=f(r,\"g\",\"zerolinelayer\"),f(r,\"path\",\"xlines-below\"),f(r,\"path\",\"ylines-below\"),e.overlinesBelow=f(r,\"g\",\"overlines-below\"),f(r,\"g\",\"xaxislayer-below\"),f(r,\"g\",\"yaxislayer-below\"),e.overaxesBelow=f(r,\"g\",\"overaxes-below\"),e.plot=f(r,\"g\",\"plot\"),e.overplot=f(r,\"g\",\"overplot\"),e.xlines=f(r,\"path\",\"xlines-above\"),e.ylines=f(r,\"path\",\"ylines-above\"),e.overlinesAbove=f(r,\"g\",\"overlines-above\"),f(r,\"g\",\"xaxislayer-above\"),f(r,\"g\",\"yaxislayer-above\"),e.overaxesAbove=f(r,\"g\",\"overaxes-above\"),e.xlines=r.select(\".xlines-\"+a),e.ylines=r.select(\".ylines-\"+i),e.xaxislayer=r.select(\".xaxislayer-\"+a),e.yaxislayer=r.select(\".yaxislayer-\"+i)}o||(p(e.gridlayer,\"g\",e.xaxis._id),p(e.gridlayer,\"g\",e.yaxis._id),e.gridlayer.selectAll(\"g\").map((function(t){return t[0]})).sort(c.idSort)),e.xlines.style(\"fill\",\"none\").classed(\"crisp\",!0),e.ylines.style(\"fill\",\"none\").classed(\"crisp\",!0)}function m(t,e){if(t){var r={};for(var a in t.each((function(t){var a=t[0];n.select(this).remove(),v(a,e),r[a]=!0})),e._plots)for(var i=e._plots[a].overlays||[],o=0;o<i.length;o++){var s=i[o];r[s.id]&&s.plot.selectAll(\".trace\").remove()}}}function v(t,e){e._draggers.selectAll(\"g.\"+t).remove(),e._defs.select(\"#clip\"+e._uid+t+\"plot\").remove()}r.name=\"cartesian\",r.attr=[\"xaxis\",\"yaxis\"],r.idRoot=[\"x\",\"y\"],r.idRegex=u.idRegex,r.attrRegex=u.attrRegex,r.attributes=t(\"./attributes\"),r.layoutAttributes=t(\"./layout_attributes\"),r.supplyLayoutDefaults=t(\"./layout_defaults\"),r.transitionAxes=t(\"./transition_axes\"),r.finalizeSubplots=function(t,e){var r,n,a,o=e._subplots,s=o.xaxis,l=o.yaxis,h=o.cartesian,f=h.concat(o.gl2d||[]),p={},d={};for(r=0;r<f.length;r++){var g=f[r].split(\"y\");p[g[0]]=1,d[\"y\"+g[1]]=1}for(r=0;r<s.length;r++)p[n=s[r]]||(a=(t[c.id2name(n)]||{}).anchor,u.idRegex.y.test(a)||(a=\"y\"),h.push(n+a),f.push(n+a),d[a]||(d[a]=1,i.pushUnique(l,a)));for(r=0;r<l.length;r++)d[a=l[r]]||(n=(t[c.id2name(a)]||{}).anchor,u.idRegex.x.test(n)||(n=\"x\"),h.push(n+a),f.push(n+a),p[n]||(p[n]=1,i.pushUnique(s,n)));if(!f.length){for(var m in n=\"\",a=\"\",t){if(u.attrRegex.test(m))\"x\"===m.charAt(0)?(!n||+m.substr(5)<+n.substr(5))&&(n=m):(!a||+m.substr(5)<+a.substr(5))&&(a=m)}n=n?c.name2id(n):\"x\",a=a?c.name2id(a):\"y\",s.push(n),l.push(a),h.push(n+a)}},r.plot=function(t,e,r,n){var a,i=t._fullLayout,o=i._subplots.cartesian,s=t.calcdata;if(!Array.isArray(e))for(e=[],a=0;a<s.length;a++)e.push(a);for(a=0;a<o.length;a++){for(var l,c=o[a],u=i._plots[c],h=[],f=0;f<s.length;f++){var p=s[f],g=p[0].trace;g.xaxis+g.yaxis===c&&((-1!==e.indexOf(g.index)||g.carpet)&&(l&&l[0].trace.xaxis+l[0].trace.yaxis===c&&-1!==[\"tonextx\",\"tonexty\",\"tonext\"].indexOf(g.fill)&&-1===h.indexOf(l)&&h.push(l),h.push(p)),l=p)}d(t,u,h,r,n)}},r.clean=function(t,e,r,n){var a,i,o,s=n._plots||{},l=e._plots||{},u=n._subplots||{};if(n._hasOnlyLargeSploms&&!e._hasOnlyLargeSploms)for(o in s)(a=s[o]).plotgroup&&a.plotgroup.remove();var h=n._has&&n._has(\"gl\"),f=e._has&&e._has(\"gl\");if(h&&!f)for(o in s)(a=s[o])._scene&&a._scene.destroy();if(u.xaxis&&u.yaxis){var p=c.listIds({_fullLayout:n});for(i=0;i<p.length;i++){var d=p[i];e[c.id2name(d)]||n._infolayer.selectAll(\".g-\"+d+\"title\").remove()}}var g=n._has&&n._has(\"cartesian\"),y=e._has&&e._has(\"cartesian\");if(g&&!y)m(n._cartesianlayer.selectAll(\".subplot\"),n),n._defs.selectAll(\".axesclip\").remove(),delete n._axisConstraintGroups;else if(u.cartesian)for(i=0;i<u.cartesian.length;i++){var x=u.cartesian[i];if(!l[x]){var b=\".\"+x+\",.\"+x+\"-x,.\"+x+\"-y\";n._cartesianlayer.selectAll(b).remove(),v(x,n)}}},r.drawFramework=function(t){var e=t._fullLayout,r=function(t){var e,r,n,a,i,o,s=t._fullLayout,l=s._subplots.cartesian,c=l.length,u=[],h=[];for(e=0;e<c;e++){n=l[e],a=s._plots[n],i=a.xaxis,o=a.yaxis;var f=i._mainAxis,p=o._mainAxis,d=f._id+p._id,g=s._plots[d];a.overlays=[],d!==n&&g?(a.mainplot=d,a.mainplotinfo=g,h.push(n)):(a.mainplot=void 0,a.mainplotinfo=void 0,u.push(n))}for(e=0;e<h.length;e++)n=h[e],(a=s._plots[n]).mainplotinfo.overlays.push(a);var m=u.concat(h),v=new Array(c);for(e=0;e<c;e++){n=m[e],a=s._plots[n],i=a.xaxis,o=a.yaxis;var y=[n,i.layer,o.layer,i.overlaying||\"\",o.overlaying||\"\"];for(r=0;r<a.overlays.length;r++)y.push(a.overlays[r].id);v[e]=y}return v}(t),a=e._cartesianlayer.selectAll(\".subplot\").data(r,String);a.enter().append(\"g\").attr(\"class\",(function(t){return\"subplot \"+t[0]})),a.order(),a.exit().call(m,e),a.each((function(r){var a=r[0],i=e._plots[a];i.plotgroup=n.select(this),g(t,i),i.draglayer=f(e._draggers,\"g\",a)}))},r.rangePlot=function(t,e,r){g(t,e),d(t,e,r),o.style(t)},r.toSVG=function(t){var e=t._fullLayout._glimages,r=n.select(t).selectAll(\".svg-container\");r.filter((function(t,e){return e===r.size()-1})).selectAll(\".gl-canvas-context, .gl-canvas-focus\").each((function(){var t=this.toDataURL(\"image/png\");e.append(\"svg:image\").attr({xmlns:h.svg,\"xlink:href\":t,preserveAspectRatio:\"none\",x:0,y:0,width:this.width,height:this.height})}))},r.updateFx=t(\"./graph_interact\").updateFx},{\"../../components/drawing\":637,\"../../constants/xmlns_namespaces\":725,\"../../lib\":749,\"../../registry\":881,\"../get_data\":835,\"../plots\":861,\"./attributes\":796,\"./axis_ids\":801,\"./constants\":804,\"./graph_interact\":807,\"./layout_attributes\":812,\"./layout_defaults\":813,\"./transition_axes\":822,d3:169}],812:[function(t,e,r){\"use strict\";var n=t(\"../font_attributes\"),a=t(\"../../components/color/attributes\"),i=t(\"../../components/drawing/attributes\").dash,o=t(\"../../lib/extend\").extendFlat,s=t(\"../../plot_api/plot_template\").templatedArray,l=(t(\"../../constants/docs\").FORMAT_LINK,t(\"../../constants/docs\").DATE_FORMAT_LINK,t(\"../../constants/numerical\").ONEDAY),c=t(\"./constants\"),u=c.HOUR_PATTERN,h=c.WEEKDAY_PATTERN;e.exports={visible:{valType:\"boolean\",editType:\"plot\"},color:{valType:\"color\",dflt:a.defaultLine,editType:\"ticks\"},title:{text:{valType:\"string\",editType:\"ticks\"},font:n({editType:\"ticks\"}),standoff:{valType:\"number\",min:0,editType:\"ticks\"},editType:\"ticks\"},type:{valType:\"enumerated\",values:[\"-\",\"linear\",\"log\",\"date\",\"category\",\"multicategory\"],dflt:\"-\",editType:\"calc\",_noTemplating:!0},autorange:{valType:\"enumerated\",values:[!0,!1,\"reversed\"],dflt:!0,editType:\"axrange\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},rangemode:{valType:\"enumerated\",values:[\"normal\",\"tozero\",\"nonnegative\"],dflt:\"normal\",editType:\"plot\"},range:{valType:\"info_array\",items:[{valType:\"any\",editType:\"axrange\",impliedEdits:{\"^autorange\":!1},anim:!0},{valType:\"any\",editType:\"axrange\",impliedEdits:{\"^autorange\":!1},anim:!0}],editType:\"axrange\",impliedEdits:{autorange:!1},anim:!0},fixedrange:{valType:\"boolean\",dflt:!1,editType:\"calc\"},scaleanchor:{valType:\"enumerated\",values:[c.idRegex.x.toString(),c.idRegex.y.toString()],editType:\"plot\"},scaleratio:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},constrain:{valType:\"enumerated\",values:[\"range\",\"domain\"],dflt:\"range\",editType:\"plot\"},constraintoward:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\",\"top\",\"middle\",\"bottom\"],editType:\"plot\"},matches:{valType:\"enumerated\",values:[c.idRegex.x.toString(),c.idRegex.y.toString()],editType:\"calc\"},rangebreaks:s(\"rangebreak\",{enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},bounds:{valType:\"info_array\",items:[{valType:\"any\",editType:\"calc\"},{valType:\"any\",editType:\"calc\"}],editType:\"calc\"},pattern:{valType:\"enumerated\",values:[h,u,\"\"],editType:\"calc\"},values:{valType:\"info_array\",freeLength:!0,editType:\"calc\",items:{valType:\"any\",editType:\"calc\"}},dvalue:{valType:\"number\",editType:\"calc\",min:0,dflt:l},editType:\"calc\"}),tickmode:{valType:\"enumerated\",values:[\"auto\",\"linear\",\"array\"],editType:\"ticks\",impliedEdits:{tick0:void 0,dtick:void 0}},nticks:{valType:\"integer\",min:0,dflt:0,editType:\"ticks\"},tick0:{valType:\"any\",editType:\"ticks\",impliedEdits:{tickmode:\"linear\"}},dtick:{valType:\"any\",editType:\"ticks\",impliedEdits:{tickmode:\"linear\"}},tickvals:{valType:\"data_array\",editType:\"ticks\"},ticktext:{valType:\"data_array\",editType:\"ticks\"},ticks:{valType:\"enumerated\",values:[\"outside\",\"inside\",\"\"],editType:\"ticks\"},tickson:{valType:\"enumerated\",values:[\"labels\",\"boundaries\"],dflt:\"labels\",editType:\"ticks\"},ticklabelmode:{valType:\"enumerated\",values:[\"instant\",\"period\"],dflt:\"instant\",editType:\"ticks\"},mirror:{valType:\"enumerated\",values:[!0,\"ticks\",!1,\"all\",\"allticks\"],dflt:!1,editType:\"ticks+layoutstyle\"},ticklen:{valType:\"number\",min:0,dflt:5,editType:\"ticks\"},tickwidth:{valType:\"number\",min:0,dflt:1,editType:\"ticks\"},tickcolor:{valType:\"color\",dflt:a.defaultLine,editType:\"ticks\"},showticklabels:{valType:\"boolean\",dflt:!0,editType:\"ticks\"},automargin:{valType:\"boolean\",dflt:!1,editType:\"ticks\"},showspikes:{valType:\"boolean\",dflt:!1,editType:\"modebar\"},spikecolor:{valType:\"color\",dflt:null,editType:\"none\"},spikethickness:{valType:\"number\",dflt:3,editType:\"none\"},spikedash:o({},i,{dflt:\"dash\",editType:\"none\"}),spikemode:{valType:\"flaglist\",flags:[\"toaxis\",\"across\",\"marker\"],dflt:\"toaxis\",editType:\"none\"},spikesnap:{valType:\"enumerated\",values:[\"data\",\"cursor\",\"hovered data\"],dflt:\"data\",editType:\"none\"},tickfont:n({editType:\"ticks\"}),tickangle:{valType:\"angle\",dflt:\"auto\",editType:\"ticks\"},tickprefix:{valType:\"string\",dflt:\"\",editType:\"ticks\"},showtickprefix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"ticks\"},ticksuffix:{valType:\"string\",dflt:\"\",editType:\"ticks\"},showticksuffix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"ticks\"},showexponent:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"ticks\"},exponentformat:{valType:\"enumerated\",values:[\"none\",\"e\",\"E\",\"power\",\"SI\",\"B\"],dflt:\"B\",editType:\"ticks\"},minexponent:{valType:\"number\",dflt:3,min:0,editType:\"ticks\"},separatethousands:{valType:\"boolean\",dflt:!1,editType:\"ticks\"},tickformat:{valType:\"string\",dflt:\"\",editType:\"ticks\"},tickformatstops:s(\"tickformatstop\",{enabled:{valType:\"boolean\",dflt:!0,editType:\"ticks\"},dtickrange:{valType:\"info_array\",items:[{valType:\"any\",editType:\"ticks\"},{valType:\"any\",editType:\"ticks\"}],editType:\"ticks\"},value:{valType:\"string\",dflt:\"\",editType:\"ticks\"},editType:\"ticks\"}),hoverformat:{valType:\"string\",dflt:\"\",editType:\"none\"},showline:{valType:\"boolean\",dflt:!1,editType:\"ticks+layoutstyle\"},linecolor:{valType:\"color\",dflt:a.defaultLine,editType:\"layoutstyle\"},linewidth:{valType:\"number\",min:0,dflt:1,editType:\"ticks+layoutstyle\"},showgrid:{valType:\"boolean\",editType:\"ticks\"},gridcolor:{valType:\"color\",dflt:a.lightLine,editType:\"ticks\"},gridwidth:{valType:\"number\",min:0,dflt:1,editType:\"ticks\"},zeroline:{valType:\"boolean\",editType:\"ticks\"},zerolinecolor:{valType:\"color\",dflt:a.defaultLine,editType:\"ticks\"},zerolinewidth:{valType:\"number\",dflt:1,editType:\"ticks\"},showdividers:{valType:\"boolean\",dflt:!0,editType:\"ticks\"},dividercolor:{valType:\"color\",dflt:a.defaultLine,editType:\"ticks\"},dividerwidth:{valType:\"number\",dflt:1,editType:\"ticks\"},anchor:{valType:\"enumerated\",values:[\"free\",c.idRegex.x.toString(),c.idRegex.y.toString()],editType:\"plot\"},side:{valType:\"enumerated\",values:[\"top\",\"bottom\",\"left\",\"right\"],editType:\"plot\"},overlaying:{valType:\"enumerated\",values:[\"free\",c.idRegex.x.toString(),c.idRegex.y.toString()],editType:\"plot\"},layer:{valType:\"enumerated\",values:[\"above traces\",\"below traces\"],dflt:\"above traces\",editType:\"plot\"},domain:{valType:\"info_array\",items:[{valType:\"number\",min:0,max:1,editType:\"plot\"},{valType:\"number\",min:0,max:1,editType:\"plot\"}],dflt:[0,1],editType:\"plot\"},position:{valType:\"number\",min:0,max:1,dflt:0,editType:\"plot\"},categoryorder:{valType:\"enumerated\",values:[\"trace\",\"category ascending\",\"category descending\",\"array\",\"total ascending\",\"total descending\",\"min ascending\",\"min descending\",\"max ascending\",\"max descending\",\"sum ascending\",\"sum descending\",\"mean ascending\",\"mean descending\",\"median ascending\",\"median descending\"],dflt:\"trace\",editType:\"calc\"},categoryarray:{valType:\"data_array\",editType:\"calc\"},uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\",_deprecated:{autotick:{valType:\"boolean\",editType:\"ticks\"},title:{valType:\"string\",editType:\"ticks\"},titlefont:n({editType:\"ticks\"})}}},{\"../../components/color/attributes\":614,\"../../components/drawing/attributes\":636,\"../../constants/docs\":719,\"../../constants/numerical\":724,\"../../lib/extend\":739,\"../../plot_api/plot_template\":787,\"../font_attributes\":826,\"./constants\":804}],813:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../../components/fx/helpers\").isUnifiedHover,o=t(\"../../components/fx/hovermode_defaults\"),s=t(\"../../plot_api/plot_template\"),l=t(\"../layout_attributes\"),c=t(\"./layout_attributes\"),u=t(\"./type_defaults\"),h=t(\"./axis_defaults\"),f=t(\"./constraints\").handleConstraintDefaults,p=t(\"./position_defaults\"),d=t(\"./axis_ids\"),g=d.id2name,m=d.name2id,v=t(\"./constants\").AX_ID_PATTERN,y=t(\"../../registry\"),x=y.traceIs,b=y.getComponentMethod;function _(t,e,r){Array.isArray(t[e])?t[e].push(r):t[e]=[r]}e.exports=function(t,e,r){var d,y,w={},T={},k={},M={},A={},S={},E={},C={},L={},P={};for(d=0;d<r.length;d++){var I=r[d];if(x(I,\"cartesian\")||x(I,\"gl2d\")){var z,O;if(I.xaxis)z=g(I.xaxis),_(w,z,I);else if(I.xaxes)for(y=0;y<I.xaxes.length;y++)_(w,g(I.xaxes[y]),I);if(I.yaxis)O=g(I.yaxis),_(w,O,I);else if(I.yaxes)for(y=0;y<I.yaxes.length;y++)_(w,g(I.yaxes[y]),I);if(\"funnel\"===I.type?\"h\"===I.orientation?(z&&(T[z]=!0),O&&(E[O]=!0)):O&&(k[O]=!0):\"image\"===I.type?(O&&(C[O]=!0),z&&(C[z]=!0)):(O&&(A[O]=!0,S[O]=!0),x(I,\"carpet\")&&(\"carpet\"!==I.type||I._cheater)||z&&(M[z]=!0)),\"carpet\"===I.type&&I._cheater&&z&&(T[z]=!0),x(I,\"2dMap\")&&(L[z]=!0,L[O]=!0),x(I,\"oriented\"))P[\"h\"===I.orientation?O:z]=!0}}var D=e._subplots,R=D.xaxis,F=D.yaxis,B=n.simpleMap(R,g),N=n.simpleMap(F,g),j=B.concat(N),U=a.background;R.length&&F.length&&(U=n.coerce(t,e,l,\"plot_bgcolor\"));var V,q,H,G,Y,W=a.combine(U,e.paper_bgcolor);function Z(){var t=w[V]||[];Y._traceIndices=t.map((function(t){return t._expandedIndex})),Y._annIndices=[],Y._shapeIndices=[],Y._imgIndices=[],Y._subplotsWith=[],Y._counterAxes=[],Y._name=Y._attr=V,Y._id=q}function X(t,e){return n.coerce(G,Y,c,t,e)}function J(t,e){return n.coerce2(G,Y,c,t,e)}function K(t){return\"x\"===t?F:R}function Q(e,r){for(var n=\"x\"===e?B:N,a=[],i=0;i<n.length;i++){var o=n[i];o===r||(t[o]||{}).overlaying||a.push(m(o))}return a}var $={x:K(\"x\"),y:K(\"y\")},tt=$.x.concat($.y),et={},rt=[];function nt(){var t=G.matches;v.test(t)&&-1===tt.indexOf(t)&&(et[t]=G.type,rt=Object.keys(et))}var at=o(t,e,r),it=i(at);for(d=0;d<j.length;d++){V=j[d],q=m(V),H=V.charAt(0),n.isPlainObject(t[V])||(t[V]={}),G=t[V],Y=s.newContainer(e,V,H+\"axis\"),Z();var ot=\"x\"===H&&!M[V]&&T[V]||\"y\"===H&&!A[V]&&k[V],st=\"y\"===H&&(!S[V]&&E[V]||C[V]),lt={letter:H,font:e.font,outerTicks:L[V],showGrid:!P[V],data:w[V]||[],bgColor:W,calendar:e.calendar,automargin:!0,visibleDflt:ot,reverseDflt:st,splomStash:((e._splomAxes||{})[H]||{})[q]};X(\"uirevision\",e.uirevision),u(G,Y,X,lt),h(G,Y,X,lt,e);var ct=it&&H===at.charAt(0),ut=J(\"spikecolor\",it?Y.color:void 0),ht=J(\"spikethickness\",it?1.5:void 0),ft=J(\"spikedash\",it?\"dot\":void 0),pt=J(\"spikemode\",it?\"across\":void 0),dt=J(\"spikesnap\",it?\"hovered data\":void 0);X(\"showspikes\",!!(ct||ut||ht||ft||pt||dt))||(delete Y.spikecolor,delete Y.spikethickness,delete Y.spikedash,delete Y.spikemode,delete Y.spikesnap),p(G,Y,X,{letter:H,counterAxes:$[H],overlayableAxes:Q(H,V),grid:e.grid}),X(\"title.standoff\"),nt(),Y._input=G}for(d=0;d<rt.length;){q=rt[d++],H=(V=g(q)).charAt(0),n.isPlainObject(t[V])||(t[V]={}),G=t[V],Y=s.newContainer(e,V,H+\"axis\"),Z();var gt={letter:H,font:e.font,outerTicks:L[V],showGrid:!P[V],data:[],bgColor:W,calendar:e.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,splomStash:((e._splomAxes||{})[H]||{})[q]};X(\"uirevision\",e.uirevision),Y.type=et[q]||\"linear\",h(G,Y,X,gt,e),p(G,Y,X,{letter:H,counterAxes:$[H],overlayableAxes:Q(H,V),grid:e.grid}),X(\"fixedrange\"),nt(),Y._input=G}var mt=b(\"rangeslider\",\"handleDefaults\"),vt=b(\"rangeselector\",\"handleDefaults\");for(d=0;d<B.length;d++)V=B[d],G=t[V],Y=e[V],mt(t,e,V),\"date\"===Y.type&&vt(G,Y,e,N,Y.calendar),X(\"fixedrange\");for(d=0;d<N.length;d++){V=N[d],G=t[V],Y=e[V];var yt=e[g(Y.anchor)];X(\"fixedrange\",b(\"rangeslider\",\"isVisible\")(yt))}var xt=e._axisConstraintGroups=[],bt=e._axisMatchGroups=[],_t=tt.concat(rt),wt=j.concat(n.simpleMap(rt,g));for(d=0;d<wt.length;d++){var Tt,kt;H=(V=wt[d]).charAt(0),G=t[V],Y=e[V],Tt=\"y\"===H&&!G.hasOwnProperty(\"scaleanchor\")&&C[V]?Y.anchor:void 0,kt=!G.hasOwnProperty(\"constrain\")&&C[V]?\"domain\":void 0,f(G,Y,X,{allAxisIds:_t,layoutOut:e,scaleanchorDflt:Tt,constrainDflt:kt})}for(d=0;d<bt.length;d++){var Mt=bt[d],At=null,St=null;for(q in Mt)(Y=e[g(q)]).matches||(At=Y.range,St=Y.autorange);if(null===At||null===St)for(q in Mt){At=(Y=e[g(q)]).range,St=Y.autorange;break}for(q in Mt)(Y=e[g(q)]).matches&&(Y.range=At.slice(),Y.autorange=St),Y._matchGroup=Mt;if(xt.length)for(q in Mt)for(y=0;y<xt.length;y++){var Et=xt[y];for(var Ct in Et)q===Ct&&(n.warn(\"Axis \"+Ct+\" is set with both a *scaleanchor* and *matches* constraint; ignoring the scale constraint.\"),delete Et[Ct],Object.keys(Et).length<2&&xt.splice(y,1))}}}},{\"../../components/color\":615,\"../../components/fx/helpers\":651,\"../../components/fx/hovermode_defaults\":654,\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../registry\":881,\"../layout_attributes\":852,\"./axis_defaults\":800,\"./axis_ids\":801,\"./constants\":804,\"./constraints\":805,\"./layout_attributes\":812,\"./position_defaults\":815,\"./type_defaults\":823}],814:[function(t,e,r){\"use strict\";var n=t(\"tinycolor2\").mix,a=t(\"../../components/color/attributes\").lightFraction,i=t(\"../../lib\");e.exports=function(t,e,r,o){var s=(o=o||{}).dfltColor;function l(r,n){return i.coerce2(t,e,o.attributes,r,n)}var c=l(\"linecolor\",s),u=l(\"linewidth\");r(\"showline\",o.showLine||!!c||!!u)||(delete e.linecolor,delete e.linewidth);var h=l(\"gridcolor\",n(s,o.bgColor,o.blend||a).toRgbString()),f=l(\"gridwidth\");if(r(\"showgrid\",o.showGrid||!!h||!!f)||(delete e.gridcolor,delete e.gridwidth),!o.noZeroLine){var p=l(\"zerolinecolor\",s),d=l(\"zerolinewidth\");r(\"zeroline\",o.showGrid||!!p||!!d)||(delete e.zerolinecolor,delete e.zerolinewidth)}}},{\"../../components/color/attributes\":614,\"../../lib\":749,tinycolor2:548}],815:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\");e.exports=function(t,e,r,i){var o,s,l,c,u=i.counterAxes||[],h=i.overlayableAxes||[],f=i.letter,p=i.grid;p&&(s=p._domains[f][p._axisMap[e._id]],o=p._anchors[e._id],s&&(l=p[f+\"side\"].split(\" \")[0],c=p.domain[f][\"right\"===l||\"top\"===l?1:0])),s=s||[0,1],o=o||(n(t.position)?\"free\":u[0]||\"free\"),l=l||(\"x\"===f?\"bottom\":\"left\"),c=c||0,\"free\"===a.coerce(t,e,{anchor:{valType:\"enumerated\",values:[\"free\"].concat(u),dflt:o}},\"anchor\")&&r(\"position\",c),a.coerce(t,e,{side:{valType:\"enumerated\",values:\"x\"===f?[\"bottom\",\"top\"]:[\"left\",\"right\"],dflt:l}},\"side\");var d=!1;if(h.length&&(d=a.coerce(t,e,{overlaying:{valType:\"enumerated\",values:[!1].concat(h),dflt:!1}},\"overlaying\")),!d){var g=r(\"domain\",s);g[0]>g[1]-1/4096&&(e.domain=s),a.noneOrAll(t.domain,e.domain,s)}return r(\"layer\"),e}},{\"../../lib\":749,\"fast-isnumeric\":241}],816:[function(t,e,r){\"use strict\";var n=t(\"../../constants/alignment\").FROM_BL;e.exports=function(t,e,r){void 0===r&&(r=n[t.constraintoward||\"center\"]);var a=[t.r2l(t.range[0]),t.r2l(t.range[1])],i=a[0]+(a[1]-a[0])*r;t.range=t._input.range=[t.l2r(i+(a[0]-i)*e),t.l2r(i+(a[1]-i)*e)]}},{\"../../constants/alignment\":717}],817:[function(t,e,r){\"use strict\";var n=t(\"polybooljs\"),a=t(\"../../registry\"),i=t(\"../../components/drawing\").dashStyle,o=t(\"../../components/color\"),s=t(\"../../components/fx\"),l=t(\"../../components/fx/helpers\").makeEventData,c=t(\"../../components/dragelement/helpers\"),u=c.freeMode,h=c.rectMode,f=c.drawMode,p=c.openMode,d=c.selectMode,g=t(\"../../components/shapes/draw_newshape/display_outlines\"),m=t(\"../../components/shapes/draw_newshape/helpers\").handleEllipse,v=t(\"../../components/shapes/draw_newshape/newshapes\"),y=t(\"../../lib\"),x=t(\"../../lib/polygon\"),b=t(\"../../lib/throttle\"),_=t(\"./axis_ids\").getFromId,w=t(\"../../lib/clear_gl_canvases\"),T=t(\"../../plot_api/subroutines\").redrawReglTraces,k=t(\"./constants\"),M=k.MINSELECT,A=x.filter,S=x.tester,E=t(\"./handle_outline\").clearSelect,C=t(\"./helpers\"),L=C.p2r,P=C.axValue,I=C.getTransform;function z(t,e,r,n,a,i,o){var s,l,c,u,h,f,d,m,v,y=e._hoverdata,x=e._fullLayout.clickmode.indexOf(\"event\")>-1,b=[];if(function(t){return t&&Array.isArray(t)&&!0!==t[0].hoverOnBox}(y)){F(t,e,i);var _=function(t,e){var r,n,a=t[0],i=-1,o=[];for(n=0;n<e.length;n++)if(r=e[n],a.fullData._expandedIndex===r.cd[0].trace._expandedIndex){if(!0===a.hoverOnBox)break;void 0!==a.pointNumber?i=a.pointNumber:void 0!==a.binNumber&&(i=a.binNumber,o=a.pointNumbers);break}return{pointNumber:i,pointNumbers:o,searchInfo:r}}(y,s=N(e,r,n,a));if(_.pointNumbers.length>0?function(t,e){var r,n,a,i=[];for(a=0;a<t.length;a++)(r=t[a]).cd[0].trace.selectedpoints&&r.cd[0].trace.selectedpoints.length>0&&i.push(r);if(1===i.length&&i[0]===e.searchInfo&&(n=e.searchInfo.cd[0].trace).selectedpoints.length===e.pointNumbers.length){for(a=0;a<e.pointNumbers.length;a++)if(n.selectedpoints.indexOf(e.pointNumbers[a])<0)return!1;return!0}return!1}(s,_):function(t){var e,r,n,a=0;for(n=0;n<t.length;n++)if(e=t[n],(r=e.cd[0].trace).selectedpoints){if(r.selectedpoints.length>1)return!1;if((a+=r.selectedpoints.length)>1)return!1}return 1===a}(s)&&(f=j(_))){for(o&&o.remove(),v=0;v<s.length;v++)(l=s[v])._module.selectPoints(l,!1);U(e,s),B(i),x&&e.emit(\"plotly_deselect\",null)}else{for(d=t.shiftKey&&(void 0!==f?f:j(_)),c=function(t,e,r){return{pointNumber:t,searchInfo:e,subtract:r}}(_.pointNumber,_.searchInfo,d),u=R(i.selectionDefs.concat([c])),v=0;v<s.length;v++)if(h=V(s[v]._module.selectPoints(s[v],u),s[v]),b.length)for(var w=0;w<h.length;w++)b.push(h[w]);else b=h;if(U(e,s,m={points:b}),c&&i&&i.selectionDefs.push(c),o){var T=i.mergedPolygons,k=p(i.dragmode);g(q(T,k),o,i)}x&&e.emit(\"plotly_selected\",m)}}}function O(t){return\"pointNumber\"in t&&\"searchInfo\"in t}function D(t){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(e,r,n,a){var i=t.searchInfo.cd[0].trace._expandedIndex;return a.cd[0].trace._expandedIndex===i&&n===t.pointNumber},isRect:!1,degenerate:!1,subtract:t.subtract}}function R(t){for(var e=[],r=O(t[0])?0:t[0][0][0],n=r,a=O(t[0])?0:t[0][0][1],i=a,o=0;o<t.length;o++)if(O(t[o]))e.push(D(t[o]));else{var s=x.tester(t[o]);s.subtract=t[o].subtract,e.push(s),r=Math.min(r,s.xmin),n=Math.max(n,s.xmax),a=Math.min(a,s.ymin),i=Math.max(i,s.ymax)}return{xmin:r,xmax:n,ymin:a,ymax:i,pts:[],contains:function(t,r,n,a){for(var i=!1,o=0;o<e.length;o++)e[o].contains(t,r,n,a)&&(i=!1===e[o].subtract);return i},isRect:!1,degenerate:!1}}function F(t,e,r){e._fullLayout._drawing=!1;var n=e._fullLayout,a=r.plotinfo,i=r.dragmode,o=n._lastSelectedSubplot&&n._lastSelectedSubplot===a.id,s=(t.shiftKey||t.altKey)&&!(f(i)&&p(i));o&&s&&a.selection&&a.selection.selectionDefs&&!r.selectionDefs?(r.selectionDefs=a.selection.selectionDefs,r.mergedPolygons=a.selection.mergedPolygons):s&&a.selection||B(r),o||(E(e),n._lastSelectedSubplot=a.id)}function B(t){var e=t.dragmode,r=t.plotinfo,n=t.gd;if(n._fullLayout._activeShapeIndex>=0&&n._fullLayout._deactivateShape(n),f(e)){var i=n._fullLayout._zoomlayer.selectAll(\".select-outline-\"+r.id);if(i&&n._fullLayout._drawing){var o=v(i,t);o&&a.call(\"_guiRelayout\",n,{shapes:o}),n._fullLayout._drawing=!1}}r.selection={},r.selection.selectionDefs=t.selectionDefs=[],r.selection.mergedPolygons=t.mergedPolygons=[]}function N(t,e,r,n){var a,i,o,s=[],l=e.map((function(t){return t._id})),c=r.map((function(t){return t._id}));for(o=0;o<t.calcdata.length;o++)if(!0===(i=(a=t.calcdata[o])[0].trace).visible&&i._module&&i._module.selectPoints)if(!n||i.subplot!==n&&i.geo!==n)if(\"splom\"===i.type&&i._xaxes[l[0]]&&i._yaxes[c[0]]){var u=f(i._module,a,e[0],r[0]);u.scene=t._fullLayout._splomScenes[i.uid],s.push(u)}else if(\"sankey\"===i.type){var h=f(i._module,a,e[0],r[0]);s.push(h)}else{if(-1===l.indexOf(i.xaxis))continue;if(-1===c.indexOf(i.yaxis))continue;s.push(f(i._module,a,_(t,i.xaxis),_(t,i.yaxis)))}else s.push(f(i._module,a,e[0],r[0]));return s;function f(t,e,r,n){return{_module:t,cd:e,xaxis:r,yaxis:n}}}function j(t){var e=t.searchInfo.cd[0].trace,r=t.pointNumber,n=t.pointNumbers,a=n.length>0?n[0]:r;return!!e.selectedpoints&&e.selectedpoints.indexOf(a)>-1}function U(t,e,r){var n,i,o,s;for(n=0;n<e.length;n++){var l=e[n].cd[0].trace._fullInput,c=t._fullLayout._tracePreGUI[l.uid]||{};void 0===c.selectedpoints&&(c.selectedpoints=l._input.selectedpoints||null)}if(r){var u=r.points||[];for(n=0;n<e.length;n++)(s=e[n].cd[0].trace)._input.selectedpoints=s._fullInput.selectedpoints=[],s._fullInput!==s&&(s.selectedpoints=[]);for(n=0;n<u.length;n++){var h=u[n],f=h.data,p=h.fullData;h.pointIndices?([].push.apply(f.selectedpoints,h.pointIndices),s._fullInput!==s&&[].push.apply(p.selectedpoints,h.pointIndices)):(f.selectedpoints.push(h.pointIndex),s._fullInput!==s&&p.selectedpoints.push(h.pointIndex))}}else for(n=0;n<e.length;n++)delete(s=e[n].cd[0].trace).selectedpoints,delete s._input.selectedpoints,s._fullInput!==s&&delete s._fullInput.selectedpoints;var d=!1;for(n=0;n<e.length;n++){s=(o=(i=e[n]).cd)[0].trace,a.traceIs(s,\"regl\")&&(d=!0);var g=i._module,m=g.styleOnSelect||g.style;m&&(m(t,o,o[0].node3),o[0].nodeRangePlot3&&m(t,o,o[0].nodeRangePlot3))}d&&(w(t),T(t))}function V(t,e){if(Array.isArray(t))for(var r=e.cd,n=e.cd[0].trace,a=0;a<t.length;a++)t[a]=l(t[a],n,r);return t}function q(t,e){for(var r=[],n=0;n<t.length;n++){r[n]=[];for(var a=0;a<t[n].length;a++){r[n][a]=[],r[n][a][0]=a?\"L\":\"M\";for(var i=0;i<t[n][a].length;i++)r[n][a].push(t[n][a][i])}e||r[n].push([\"Z\",r[n][0][1],r[n][0][2]])}return r}e.exports={prepSelect:function(t,e,r,a,l){var c,v,x,_,w,T,E,C=u(l),O=h(l),D=p(l),j=f(l),H=d(l),G=\"drawcircle\"===l,Y=\"drawline\"===l||G,W=a.gd,Z=W._fullLayout,X=Z._zoomlayer,J=a.element.getBoundingClientRect(),K=a.plotinfo,Q=I(K),$=e-J.left,tt=r-J.top,et=$,rt=tt,nt=\"M\"+$+\",\"+tt,at=a.xaxes[0]._length,it=a.yaxes[0]._length,ot=a.xaxes.concat(a.yaxes),st=t.altKey&&!(f(l)&&D);F(t,W,a),C&&(c=A([[$,tt]],k.BENDPX));var lt=X.selectAll(\"path.select-outline-\"+K.id).data(j?[0]:[1,2]),ct=Z.newshape;lt.enter().append(\"path\").attr(\"class\",(function(t){return\"select-outline select-outline-\"+t+\" select-outline-\"+K.id})).style(j?{opacity:ct.opacity/2,fill:D?void 0:ct.fillcolor,stroke:ct.line.color,\"stroke-dasharray\":i(ct.line.dash,ct.line.width),\"stroke-width\":ct.line.width+\"px\"}:{}).attr(\"fill-rule\",ct.fillrule).classed(\"cursor-move\",!!j).attr(\"transform\",Q).attr(\"d\",nt+\"Z\");var ut,ht=X.append(\"path\").attr(\"class\",\"zoombox-corners\").style({fill:o.background,stroke:o.defaultLine,\"stroke-width\":1}).attr(\"transform\",Q).attr(\"d\",\"M0,0Z\"),ft=Z._uid+k.SELECTID,pt=[],dt=N(W,a.xaxes,a.yaxes,a.subplot);function gt(t,e){return t-e}ut=K.fillRangeItems?K.fillRangeItems:O?function(t,e){var r=t.range={};for(w=0;w<ot.length;w++){var n=ot[w],a=n._id.charAt(0);r[n._id]=[L(n,e[a+\"min\"]),L(n,e[a+\"max\"])].sort(gt)}}:function(t,e,r){var n=t.lassoPoints={};for(w=0;w<ot.length;w++){var a=ot[w];n[a._id]=r.filtered.map(P(a))}},a.moveFn=function(t,e){et=Math.max(0,Math.min(at,t+$)),rt=Math.max(0,Math.min(it,e+tt));var r=Math.abs(et-$),i=Math.abs(rt-tt);if(O){var o,s,l;if(H){var u=Z.selectdirection;switch(o=\"any\"===u?i<Math.min(.6*r,M)?\"h\":r<Math.min(.6*i,M)?\"v\":\"d\":u){case\"h\":s=G?it/2:0,l=it;break;case\"v\":s=G?at/2:0,l=at}}if(j)switch(Z.newshape.drawdirection){case\"vertical\":o=\"h\",s=G?it/2:0,l=it;break;case\"horizontal\":o=\"v\",s=G?at/2:0,l=at;break;case\"ortho\":r<i?(o=\"h\",s=tt,l=rt):(o=\"v\",s=$,l=et);break;default:o=\"d\"}\"h\"===o?((_=Y?m(G,[et,s],[et,l]):[[$,s],[$,l],[et,l],[et,s]]).xmin=Y?et:Math.min($,et),_.xmax=Y?et:Math.max($,et),_.ymin=Math.min(s,l),_.ymax=Math.max(s,l),ht.attr(\"d\",\"M\"+_.xmin+\",\"+(tt-M)+\"h-4v\"+2*M+\"h4ZM\"+(_.xmax-1)+\",\"+(tt-M)+\"h4v\"+2*M+\"h-4Z\")):\"v\"===o?((_=Y?m(G,[s,rt],[l,rt]):[[s,tt],[s,rt],[l,rt],[l,tt]]).xmin=Math.min(s,l),_.xmax=Math.max(s,l),_.ymin=Y?rt:Math.min(tt,rt),_.ymax=Y?rt:Math.max(tt,rt),ht.attr(\"d\",\"M\"+($-M)+\",\"+_.ymin+\"v-4h\"+2*M+\"v4ZM\"+($-M)+\",\"+(_.ymax-1)+\"v4h\"+2*M+\"v-4Z\")):\"d\"===o&&((_=Y?m(G,[$,tt],[et,rt]):[[$,tt],[$,rt],[et,rt],[et,tt]]).xmin=Math.min($,et),_.xmax=Math.max($,et),_.ymin=Math.min(tt,rt),_.ymax=Math.max(tt,rt),ht.attr(\"d\",\"M0,0Z\"))}else C&&(c.addPt([et,rt]),_=c.filtered);a.selectionDefs&&a.selectionDefs.length?(x=function(t,e,r){if(r)return n.difference({regions:t,inverted:!1},{regions:[e],inverted:!1}).regions;return n.union({regions:t,inverted:!1},{regions:[e],inverted:!1}).regions}(a.mergedPolygons,_,st),_.subtract=st,v=R(a.selectionDefs.concat([_]))):(x=[_],v=S(_)),g(q(x,D),lt,a),H&&b.throttle(ft,k.SELECTDELAY,(function(){var t;pt=[];var e,r=[];for(w=0;w<dt.length;w++)if(e=(T=dt[w])._module.selectPoints(T,v),r.push(e),t=V(e,T),pt.length)for(var n=0;n<t.length;n++)pt.push(t[n]);else pt=t;U(W,dt,E={points:pt}),ut(E,_,c),a.gd.emit(\"plotly_selecting\",E)}))},a.clickFn=function(t,e){if(ht.remove(),W._fullLayout._activeShapeIndex>=0)W._fullLayout._deactivateShape(W);else if(!j){var r=Z.clickmode;b.done(ft).then((function(){if(b.clear(ft),2===t){for(lt.remove(),w=0;w<dt.length;w++)(T=dt[w])._module.selectPoints(T,!1);U(W,dt),B(a),W.emit(\"plotly_deselect\",null)}else r.indexOf(\"select\")>-1&&z(e,W,a.xaxes,a.yaxes,a.subplot,a,lt),\"event\"===r&&W.emit(\"plotly_selected\",void 0);s.click(W,e)})).catch(y.error)}},a.doneFn=function(){ht.remove(),b.done(ft).then((function(){b.clear(ft),a.gd.emit(\"plotly_selected\",E),_&&a.selectionDefs&&(_.subtract=st,a.selectionDefs.push(_),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,x)),a.doneFnCompleted&&a.doneFnCompleted(pt)})).catch(y.error),j&&B(a)}},clearSelect:E,clearSelectionsCache:B,selectOnClick:z}},{\"../../components/color\":615,\"../../components/dragelement/helpers\":633,\"../../components/drawing\":637,\"../../components/fx\":655,\"../../components/fx/helpers\":651,\"../../components/shapes/draw_newshape/display_outlines\":700,\"../../components/shapes/draw_newshape/helpers\":701,\"../../components/shapes/draw_newshape/newshapes\":702,\"../../lib\":749,\"../../lib/clear_gl_canvases\":733,\"../../lib/polygon\":761,\"../../lib/throttle\":774,\"../../plot_api/subroutines\":788,\"../../registry\":881,\"./axis_ids\":801,\"./constants\":804,\"./handle_outline\":808,\"./helpers\":809,polybooljs:491}],818:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"d3-time-format\").utcFormat,i=t(\"fast-isnumeric\"),o=t(\"../../lib\"),s=o.cleanNumber,l=o.ms2DateTime,c=o.dateTime2ms,u=o.ensureNumber,h=o.isArrayOrTypedArray,f=t(\"../../constants/numerical\"),p=f.FP_SAFE,d=f.BADNUM,g=f.LOG_CLIP,m=f.ONEWEEK,v=f.ONEDAY,y=f.ONEHOUR,x=f.ONEMIN,b=f.ONESEC,_=t(\"./axis_ids\"),w=t(\"./constants\"),T=w.HOUR_PATTERN,k=w.WEEKDAY_PATTERN;function M(t){return Math.pow(10,t)}function A(t){return null!=t}e.exports=function(t,e){e=e||{};var r=t._id||\"x\",f=r.charAt(0);function S(e,r){if(e>0)return Math.log(e)/Math.LN10;if(e<=0&&r&&t.range&&2===t.range.length){var n=t.range[0],a=t.range[1];return.5*(n+a-2*g*Math.abs(n-a))}return d}function E(e,r,n,a){if((a||{}).msUTC&&i(e))return+e;var s=c(e,n||t.calendar);if(s===d){if(!i(e))return d;e=+e;var l=Math.floor(10*o.mod(e+.05,1)),u=Math.round(e-l/10);s=c(new Date(u))+l/10}return s}function C(e,r,n){return l(e,r,n||t.calendar)}function L(e){return t._categories[Math.round(e)]}function P(e){if(A(e)){if(void 0===t._categoriesMap&&(t._categoriesMap={}),void 0!==t._categoriesMap[e])return t._categoriesMap[e];t._categories.push(\"number\"==typeof e?String(e):e);var r=t._categories.length-1;return t._categoriesMap[e]=r,r}return d}function I(e){if(t._categoriesMap)return t._categoriesMap[e]}function z(t){var e=I(t);return void 0!==e?e:i(t)?+t:void 0}function O(t,e,r){return n.round(r+e*t,2)}function D(t,e,r){return(t-r)/e}var R=function(e){return i(e)?O(e,t._m,t._b):d},F=function(e){return D(e,t._m,t._b)};if(t.rangebreaks){var B=\"y\"===f;R=function(e){if(!i(e))return d;var r=t._rangebreaks.length;if(!r)return O(e,t._m,t._b);var n=B;t.range[0]>t.range[1]&&(n=!n);for(var a=n?-1:1,o=a*e,s=0,l=0;l<r;l++){var c=a*t._rangebreaks[l].min,u=a*t._rangebreaks[l].max;if(o<c)break;if(!(o>u)){s=o<(c+u)/2?l:l+1;break}s=l+1}var h=t._B[s]||0;return isFinite(h)?O(e,t._m2,h):0},F=function(e){var r=t._rangebreaks.length;if(!r)return D(e,t._m,t._b);for(var n=0,a=0;a<r&&!(e<t._rangebreaks[a].pmin);a++)e>t._rangebreaks[a].pmax&&(n=a+1);return D(e,t._m2,t._B[n])}}t.c2l=\"log\"===t.type?S:u,t.l2c=\"log\"===t.type?M:u,t.l2p=R,t.p2l=F,t.c2p=\"log\"===t.type?function(t,e){return R(S(t,e))}:R,t.p2c=\"log\"===t.type?function(t){return M(F(t))}:F,-1!==[\"linear\",\"-\"].indexOf(t.type)?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=s,t.c2d=t.c2r=t.l2d=t.l2r=u,t.d2p=t.r2p=function(e){return t.l2p(s(e))},t.p2d=t.p2r=F,t.cleanPos=u):\"log\"===t.type?(t.d2r=t.d2l=function(t,e){return S(s(t),e)},t.r2d=t.r2c=function(t){return M(s(t))},t.d2c=t.r2l=s,t.c2d=t.l2r=u,t.c2r=S,t.l2d=M,t.d2p=function(e,r){return t.l2p(t.d2r(e,r))},t.p2d=function(t){return M(F(t))},t.r2p=function(e){return t.l2p(s(e))},t.p2r=F,t.cleanPos=u):\"date\"===t.type?(t.d2r=t.r2d=o.identity,t.d2c=t.r2c=t.d2l=t.r2l=E,t.c2d=t.c2r=t.l2d=t.l2r=C,t.d2p=t.r2p=function(e,r,n){return t.l2p(E(e,0,n))},t.p2d=t.p2r=function(t,e,r){return C(F(t),e,r)},t.cleanPos=function(e){return o.cleanDate(e,d,t.calendar)}):\"category\"===t.type?(t.d2c=t.d2l=P,t.r2d=t.c2d=t.l2d=L,t.d2r=t.d2l_noadd=z,t.r2c=function(e){var r=z(e);return void 0!==r?r:t.fraction2r(.5)},t.l2r=t.c2r=u,t.r2l=z,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return L(F(t))},t.r2p=t.d2p,t.p2r=F,t.cleanPos=function(t){return\"string\"==typeof t&&\"\"!==t?t:u(t)}):\"multicategory\"===t.type&&(t.r2d=t.c2d=t.l2d=L,t.d2r=t.d2l_noadd=z,t.r2c=function(e){var r=z(e);return void 0!==r?r:t.fraction2r(.5)},t.r2c_just_indices=I,t.l2r=t.c2r=u,t.r2l=z,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return L(F(t))},t.r2p=t.d2p,t.p2r=F,t.cleanPos=function(t){return Array.isArray(t)||\"string\"==typeof t&&\"\"!==t?t:u(t)},t.setupMultiCategory=function(n){var a,i,s=t._traceIndices,l=e._axisMatchGroups;if(l&&l.length&&0===t._categories.length)for(a=0;a<l.length;a++){var c=l[a];if(c[r])for(var u in c)if(u!==r){var p=e[_.id2name(u)];s=s.concat(p._traceIndices)}}var d=[[0,{}],[0,{}]],g=[];for(a=0;a<s.length;a++){var m=n[s[a]];if(f in m){var v=m[f],y=m._length||o.minRowLength(v);if(h(v[0])&&h(v[1]))for(i=0;i<y;i++){var x=v[0][i],b=v[1][i];A(x)&&A(b)&&(g.push([x,b]),x in d[0][1]||(d[0][1][x]=d[0][0]++),b in d[1][1]||(d[1][1][b]=d[1][0]++))}}}for(g.sort((function(t,e){var r=d[0][1],n=r[t[0]]-r[e[0]];if(n)return n;var a=d[1][1];return a[t[1]]-a[e[1]]})),a=0;a<g.length;a++)P(g[a])}),t.fraction2r=function(e){var r=t.r2l(t.range[0]),n=t.r2l(t.range[1]);return t.l2r(r+e*(n-r))},t.r2fraction=function(e){var r=t.r2l(t.range[0]),n=t.r2l(t.range[1]);return(t.r2l(e)-r)/(n-r)},t.cleanRange=function(e,r){r||(r={}),e||(e=\"range\");var n,a,s=o.nestedProperty(t,e).get();if(a=(a=\"date\"===t.type?o.dfltRange(t.calendar):\"y\"===f?w.DFLTRANGEY:r.dfltRange||w.DFLTRANGEX).slice(),\"tozero\"!==t.rangemode&&\"nonnegative\"!==t.rangemode||(a[0]=0),s&&2===s.length)for(\"date\"!==t.type||t.autorange||(s[0]=o.cleanDate(s[0],d,t.calendar),s[1]=o.cleanDate(s[1],d,t.calendar)),n=0;n<2;n++)if(\"date\"===t.type){if(!o.isDateTime(s[n],t.calendar)){t[e]=a;break}if(t.r2l(s[0])===t.r2l(s[1])){var l=o.constrain(t.r2l(s[0]),o.MIN_MS+1e3,o.MAX_MS-1e3);s[0]=t.l2r(l-1e3),s[1]=t.l2r(l+1e3);break}}else{if(!i(s[n])){if(!i(s[1-n])){t[e]=a;break}s[n]=s[1-n]*(n?10:.1)}if(s[n]<-p?s[n]=-p:s[n]>p&&(s[n]=p),s[0]===s[1]){var c=Math.max(1,Math.abs(1e-6*s[0]));s[0]-=c,s[1]+=c}}else o.nestedProperty(t,e).set(a)},t.setScale=function(r){var n=e._size;if(t.overlaying){var a=_.getFromId({_fullLayout:e},t.overlaying);t.domain=a.domain}var i=r&&t._r?\"_r\":\"range\",o=t.calendar;t.cleanRange(i);var s,l,c=t.r2l(t[i][0],o),u=t.r2l(t[i][1],o),h=\"y\"===f;if((h?(t._offset=n.t+(1-t.domain[1])*n.h,t._length=n.h*(t.domain[1]-t.domain[0]),t._m=t._length/(c-u),t._b=-t._m*u):(t._offset=n.l+t.domain[0]*n.w,t._length=n.w*(t.domain[1]-t.domain[0]),t._m=t._length/(u-c),t._b=-t._m*c),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks)&&(t._rangebreaks=t.locateBreaks(Math.min(c,u),Math.max(c,u)),t._rangebreaks.length)){for(s=0;s<t._rangebreaks.length;s++)l=t._rangebreaks[s],t._lBreaks+=Math.abs(l.max-l.min);var p=h;c>u&&(p=!p),p&&t._rangebreaks.reverse();var d=p?-1:1;for(t._m2=d*t._length/(Math.abs(u-c)-t._lBreaks),t._B.push(-t._m2*(h?u:c)),s=0;s<t._rangebreaks.length;s++)l=t._rangebreaks[s],t._B.push(t._B[t._B.length-1]-d*t._m2*(l.max-l.min));for(s=0;s<t._rangebreaks.length;s++)(l=t._rangebreaks[s]).pmin=R(l.min),l.pmax=R(l.max)}if(!isFinite(t._m)||!isFinite(t._b)||t._length<0)throw e._replotting=!1,new Error(\"Something went wrong with axis scaling\")},t.maskBreaks=function(e){for(var r,n,a,i,l,c=t.rangebreaks||[],u=0;u<c.length;u++){var h=c[u];if(h.enabled)if(h.bounds){var f=h.pattern;switch(n=(r=o.simpleMap(h.bounds,f?s:t.d2c))[0],a=r[1],f){case k:i=(l=new Date(e)).getUTCDay(),n>a&&(a+=7,i<n&&(i+=7));break;case T:i=(l=new Date(e)).getUTCHours()+(l.getUTCMinutes()/60+l.getUTCSeconds()/3600+l.getUTCMilliseconds()/36e5),n>a&&(a+=24,i<n&&(i+=24));break;case\"\":i=e}if(i>=n&&i<a)return d}else for(var p=o.simpleMap(h.values,t.d2c).sort(o.sorterAsc),g=0;g<p.length;g++)if(a=(n=p[g])+h.dvalue,e>=n&&e<a)return d}return e},t.locateBreaks=function(e,r){var n,a,i,l,c=[];if(!t.rangebreaks)return c;var u=t.rangebreaks.slice().sort((function(t,e){return t.pattern===k&&e.pattern===T?-1:e.pattern===k&&t.pattern===T?1:0})),h=function(t,n){if((t=o.constrain(t,e,r))!==(n=o.constrain(n,e,r))){for(var a=!0,i=0;i<c.length;i++){var s=c[i];t<s.max&&n>=s.min&&(t<s.min&&(s.min=t),n>s.max&&(s.max=n),a=!1)}a&&c.push({min:t,max:n})}};for(n=0;n<u.length;n++){var f=u[n];if(f.enabled)if(f.bounds){var p=e,d=r;f.pattern&&(p=Math.floor(p)),i=(a=o.simpleMap(f.bounds,f.pattern?s:t.r2l))[0],l=a[1];var g,_,w=new Date(p);switch(f.pattern){case k:_=m,g=(l-i+(l<i?7:0))*v,p+=i*v-(w.getUTCDay()*v+w.getUTCHours()*y+w.getUTCMinutes()*x+w.getUTCSeconds()*b+w.getUTCMilliseconds());break;case T:_=v,g=(l-i+(l<i?24:0))*y,p+=i*y-(w.getUTCHours()*y+w.getUTCMinutes()*x+w.getUTCSeconds()*b+w.getUTCMilliseconds());break;default:p=Math.min(a[0],a[1]),g=_=(d=Math.max(a[0],a[1]))-p}for(var M=p;M<d;M+=_)h(M,M+g)}else for(var A=o.simpleMap(f.values,t.d2c),S=0;S<A.length;S++)h(i=A[S],l=i+f.dvalue)}return c.sort((function(t,e){return t.min-e.min})),c},t.makeCalcdata=function(e,r,n){var a,i,s,l,c=t.type,u=\"date\"===c&&e[r+\"calendar\"];if(r in e){if(a=e[r],l=e._length||o.minRowLength(a),o.isTypedArray(a)&&(\"linear\"===c||\"log\"===c)){if(l===a.length)return a;if(a.subarray)return a.subarray(0,l)}if(\"multicategory\"===c)return function(t,e){for(var r=new Array(e),n=0;n<e;n++){var a=(t[0]||[])[n],i=(t[1]||[])[n];r[n]=I([a,i])}return r}(a,l);for(i=new Array(l),s=0;s<l;s++)i[s]=t.d2c(a[s],0,u,n)}else{var h=r+\"0\"in e?t.d2c(e[r+\"0\"],0,u):0,f=e[\"d\"+r]?Number(e[\"d\"+r]):1;for(a=e[{x:\"y\",y:\"x\"}[r]],l=e._length||a.length,i=new Array(l),s=0;s<l;s++)i[s]=h+s*f}if(t.rangebreaks)for(s=0;s<l;s++)i[s]=t.maskBreaks(i[s]);return i},t.isValidRange=function(e){return Array.isArray(e)&&2===e.length&&i(t.r2l(e[0]))&&i(t.r2l(e[1]))},t.isPtWithinRange=function(e,r){var n=t.c2l(e[f],null,r),a=t.r2l(t.range[0]),i=t.r2l(t.range[1]);return a<i?a<=n&&n<=i:i<=n&&n<=a},t._emptyCategories=function(){t._categories=[],t._categoriesMap={}},t.clearCalc=function(){var n=e._axisMatchGroups;if(n&&n.length){for(var a=!1,i=0;i<n.length;i++){var o=n[i];if(o[r]){a=!0;var s=null,l=null;for(var c in o){var u=e[_.id2name(c)];if(u._categories){s=u._categories,l=u._categoriesMap;break}}s&&l?(t._categories=s,t._categoriesMap=l):t._emptyCategories();break}}a||t._emptyCategories()}else t._emptyCategories();if(t._initialCategories)for(var h=0;h<t._initialCategories.length;h++)P(t._initialCategories[h])},t.sortByInitialCategories=function(){var n=[];if(t._emptyCategories(),t._initialCategories)for(var a=0;a<t._initialCategories.length;a++)P(t._initialCategories[a]);n=n.concat(t._traceIndices);var i=t._matchGroup;for(var o in i)if(r!==o){var s=e[_.id2name(o)];s._categories=t._categories,s._categoriesMap=t._categoriesMap,n=n.concat(s._traceIndices)}return n};var N=e._d3locale;\"date\"===t.type&&(t._dateFormat=N?N.timeFormat:a,t._extraFormat=e._extraFormat),t._separators=e.separators,t._numFormat=N?N.numberFormat:n.format,delete t._minDtick,delete t._forceTick0}},{\"../../constants/numerical\":724,\"../../lib\":749,\"./axis_ids\":801,\"./constants\":804,d3:169,\"d3-time-format\":166,\"fast-isnumeric\":241}],819:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\"),i=t(\"../array_container_defaults\");function o(t){var e=[\"showexponent\",\"showtickprefix\",\"showticksuffix\"].filter((function(e){return void 0!==t[e]}));if(e.every((function(r){return t[r]===t[e[0]]}))||1===e.length)return t[e[0]]}function s(t,e){function r(r,i){return n.coerce(t,e,a.tickformatstops,r,i)}r(\"enabled\")&&(r(\"dtickrange\"),r(\"value\"))}e.exports=function(t,e,r,l,c,u){u&&1!==u.pass||function(t,e,r,n,a){var i=o(t);r(\"tickprefix\")&&r(\"showtickprefix\",i);r(\"ticksuffix\",a.tickSuffixDflt)&&r(\"showticksuffix\",i)}(t,0,r,0,c),u&&2!==u.pass||function(t,e,r,l,c){var u=o(t);r(\"tickprefix\")&&r(\"showtickprefix\",u);r(\"ticksuffix\",c.tickSuffixDflt)&&r(\"showticksuffix\",u);if(r(\"showticklabels\")){var h=c.font||{},f=e.color,p=f&&f!==a.color.dflt?f:h.color;if(n.coerceFont(r,\"tickfont\",{family:h.family,size:h.size,color:p}),r(\"tickangle\"),\"category\"!==l){var d=r(\"tickformat\");i(t,e,{name:\"tickformatstops\",inclusionAttr:\"enabled\",handleItemDefaults:s}),e.tickformatstops.length||delete e.tickformatstops,d||\"date\"===l||(r(\"showexponent\",u),r(\"exponentformat\"),r(\"minexponent\"),r(\"separatethousands\"))}}}(t,e,r,l,c)}},{\"../../lib\":749,\"../array_container_defaults\":793,\"./layout_attributes\":812}],820:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r,i){var o=n.coerce2(t,e,a,\"ticklen\"),s=n.coerce2(t,e,a,\"tickwidth\"),l=n.coerce2(t,e,a,\"tickcolor\",e.color);r(\"ticks\",i.outerTicks||o||s||l?\"outside\":\"\")||(delete e.ticklen,delete e.tickwidth,delete e.tickcolor)}},{\"../../lib\":749,\"./layout_attributes\":812}],821:[function(t,e,r){\"use strict\";var n=t(\"./clean_ticks\"),a=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r,i){function o(r){var n=t[r];return void 0!==n?n:(e._template||{})[r]}var s=o(\"tick0\"),l=o(\"dtick\"),c=o(\"tickvals\"),u=r(\"tickmode\",a(c)?\"array\":l?\"linear\":\"auto\");if(\"auto\"===u)r(\"nticks\");else if(\"linear\"===u){var h=e.dtick=n.dtick(l,i);e.tick0=n.tick0(s,i,e.calendar,h)}else if(\"multicategory\"!==i){void 0===r(\"tickvals\")?e.tickmode=\"auto\":r(\"ticktext\")}}},{\"../../lib\":749,\"./clean_ticks\":803}],822:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=t(\"../../components/drawing\"),s=t(\"./axes\");e.exports=function(t,e,r,l){var c=t._fullLayout;if(0!==e.length){var u,h,f,p;l&&(u=l());var d=n.ease(r.easing);return t._transitionData._interruptCallbacks.push((function(){return window.cancelAnimationFrame(p),p=null,function(){for(var r={},n=0;n<e.length;n++){var i=e[n],o=i.plotinfo.xaxis,s=i.plotinfo.yaxis;i.xr0&&(r[o._name+\".range\"]=i.xr0.slice()),i.yr0&&(r[s._name+\".range\"]=i.yr0.slice())}return a.call(\"relayout\",t,r).then((function(){for(var t=0;t<e.length;t++)g(e[t].plotinfo)}))}()})),h=Date.now(),p=window.requestAnimationFrame((function n(){f=Date.now();for(var i=Math.min(1,(f-h)/r.duration),o=d(i),s=0;s<e.length;s++)m(e[s],o);f-h>r.duration?(!function(){for(var r={},n=0;n<e.length;n++){var i=e[n],o=i.plotinfo.xaxis,s=i.plotinfo.yaxis;i.xr1&&(r[o._name+\".range\"]=i.xr1.slice()),i.yr1&&(r[s._name+\".range\"]=i.yr1.slice())}u&&u(),a.call(\"relayout\",t,r).then((function(){for(var t=0;t<e.length;t++)g(e[t].plotinfo)}))}(),p=window.cancelAnimationFrame(n)):p=window.requestAnimationFrame(n)})),Promise.resolve()}function g(t){var e=t.xaxis,r=t.yaxis;c._defs.select(\"#\"+t.clipId+\"> rect\").call(o.setTranslate,0,0).call(o.setScale,1,1),t.plot.call(o.setTranslate,e._offset,r._offset).call(o.setScale,1,1);var n=t.plot.selectAll(\".scatterlayer .trace\");n.selectAll(\".point\").call(o.setPointGroupScale,1,1),n.selectAll(\".textpoint\").call(o.setTextPointsScale,1,1),n.call(o.hideOutsideRangePoints,t)}function m(e,r){var n=e.plotinfo,a=n.xaxis,l=n.yaxis,c=a._length,u=l._length,h=!!e.xr1,f=!!e.yr1,p=[];if(h){var d=i.simpleMap(e.xr0,a.r2l),g=i.simpleMap(e.xr1,a.r2l),m=d[1]-d[0],v=g[1]-g[0];p[0]=(d[0]*(1-r)+r*g[0]-d[0])/(d[1]-d[0])*c,p[2]=c*(1-r+r*v/m),a.range[0]=a.l2r(d[0]*(1-r)+r*g[0]),a.range[1]=a.l2r(d[1]*(1-r)+r*g[1])}else p[0]=0,p[2]=c;if(f){var y=i.simpleMap(e.yr0,l.r2l),x=i.simpleMap(e.yr1,l.r2l),b=y[1]-y[0],_=x[1]-x[0];p[1]=(y[1]*(1-r)+r*x[1]-y[1])/(y[0]-y[1])*u,p[3]=u*(1-r+r*_/b),l.range[0]=a.l2r(y[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(y[1]*(1-r)+r*x[1])}else p[1]=0,p[3]=u;s.drawOne(t,a,{skipTitle:!0}),s.drawOne(t,l,{skipTitle:!0}),s.redrawComponents(t,[a._id,l._id]);var w=h?c/p[2]:1,T=f?u/p[3]:1,k=h?p[0]:0,M=f?p[1]:0,A=h?p[0]/p[2]*c:0,S=f?p[1]/p[3]*u:0,E=a._offset-A,C=l._offset-S;n.clipRect.call(o.setTranslate,k,M).call(o.setScale,1/w,1/T),n.plot.call(o.setTranslate,E,C).call(o.setScale,w,T),o.setPointGroupScale(n.zoomScalePts,1/w,1/T),o.setTextPointsScale(n.zoomScaleTxt,1/w,1/T)}s.redrawComponents(t)}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../registry\":881,\"./axes\":798,d3:169}],823:[function(t,e,r){\"use strict\";var n=t(\"../../registry\").traceIs,a=t(\"./axis_autotype\");function i(t){return{v:\"x\",h:\"y\"}[t.orientation||\"v\"]}function o(t,e){var r=i(t),a=n(t,\"box-violin\"),o=n(t._fullInput||{},\"candlestick\");return a&&!o&&e===r&&void 0===t[r]&&void 0===t[r+\"0\"]}e.exports=function(t,e,r,s){\"-\"===r(\"type\",(s.splomStash||{}).type)&&(!function(t,e){if(\"-\"!==t.type)return;var r,s=t._id,l=s.charAt(0);-1!==s.indexOf(\"scene\")&&(s=l);var c=function(t,e,r){for(var n=0;n<t.length;n++){var a=t[n];if(\"splom\"===a.type&&a._length>0&&(a[\"_\"+r+\"axes\"]||{})[e])return a;if((a[r+\"axis\"]||r)===e){if(o(a,r))return a;if((a[r]||[]).length||a[r+\"0\"])return a}}}(e,s,l);if(!c)return;if(\"histogram\"===c.type&&l==={v:\"y\",h:\"x\"}[c.orientation||\"v\"])return void(t.type=\"linear\");var u=l+\"calendar\",h=c[u],f={noMultiCategory:!n(c,\"cartesian\")||n(c,\"noMultiCategory\")};\"box\"===c.type&&c._hasPreCompStats&&l==={h:\"x\",v:\"y\"}[c.orientation||\"v\"]&&(f.noMultiCategory=!0);if(o(c,l)){var p=i(c),d=[];for(r=0;r<e.length;r++){var g=e[r];n(g,\"box-violin\")&&(g[l+\"axis\"]||l)===s&&(void 0!==g[p]?d.push(g[p][0]):void 0!==g.name?d.push(g.name):d.push(\"text\"),g[u]!==h&&(h=void 0))}t.type=a(d,h,f)}else if(\"splom\"===c.type){var m=c.dimensions[c._axesDim[s]];m.visible&&(t.type=a(m.values,h,f))}else t.type=a(c[l]||[c[l+\"0\"]],h,f)}(e,s.data),\"-\"===e.type?e.type=\"linear\":t.type=e.type)}},{\"../../registry\":881,\"./axis_autotype\":799}],824:[function(t,e,r){\"use strict\";var n=t(\"../registry\"),a=t(\"../lib\");function i(t,e,r){var n,i,o,s=!1;if(\"data\"===e.type)n=t._fullData[null!==e.traces?e.traces[0]:0];else{if(\"layout\"!==e.type)return!1;n=t._fullLayout}return i=a.nestedProperty(n,e.prop).get(),(o=r[e.type]=r[e.type]||{}).hasOwnProperty(e.prop)&&o[e.prop]!==i&&(s=!0),o[e.prop]=i,{changed:s,value:i}}function o(t,e){var r=[],n=e[0],i={};if(\"string\"==typeof n)i[n]=e[1];else{if(!a.isPlainObject(n))return r;i=n}return l(i,(function(t,e,n){r.push({type:\"layout\",prop:t,value:n})}),\"\",0),r}function s(t,e){var r,n,i,o,s=[];if(n=e[0],i=e[1],r=e[2],o={},\"string\"==typeof n)o[n]=i;else{if(!a.isPlainObject(n))return s;o=n,void 0===r&&(r=i)}return void 0===r&&(r=null),l(o,(function(e,n,a){var i,o;if(Array.isArray(a)){o=a.slice();var l=Math.min(o.length,t.data.length);r&&(l=Math.min(l,r.length)),i=[];for(var c=0;c<l;c++)i[c]=r?r[c]:c}else o=a,i=r?r.slice():null;if(null===i)Array.isArray(o)&&(o=o[0]);else if(Array.isArray(i)){if(!Array.isArray(o)){var u=o;o=[];for(var h=0;h<i.length;h++)o[h]=u}o.length=Math.min(i.length,o.length)}s.push({type:\"data\",prop:e,traces:i,value:o})}),\"\",0),s}function l(t,e,r,n){Object.keys(t).forEach((function(i){var o=t[i];if(\"_\"!==i[0]){var s=r+(n>0?\".\":\"\")+i;a.isPlainObject(o)?l(o,e,s,n+1):e(s,i,o)}}))}r.manageCommandObserver=function(t,e,n,o){var s={},l=!0;e&&e._commandObserver&&(s=e._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var c=r.hasSimpleAPICommandBindings(t,n,s.lookupTable);if(e&&e._commandObserver){if(c)return s;if(e._commandObserver.remove)return e._commandObserver.remove(),e._commandObserver=null,s}if(c){i(t,c,s.cache),s.check=function(){if(l){var e=i(t,c,s.cache);return e.changed&&o&&void 0!==s.lookupTable[e.value]&&(s.disable(),Promise.resolve(o({value:e.value,type:c.type,prop:c.prop,traces:c.traces,index:s.lookupTable[e.value]})).then(s.enable,s.enable)),e.changed}};for(var u=[\"plotly_relayout\",\"plotly_redraw\",\"plotly_restyle\",\"plotly_update\",\"plotly_animatingframe\",\"plotly_afterplot\"],h=0;h<u.length;h++)t._internalOn(u[h],s.check);s.remove=function(){for(var e=0;e<u.length;e++)t._removeInternalListener(u[e],s.check)}}else a.log(\"Unable to automatically bind plot updates to API command\"),s.lookupTable={},s.remove=function(){};return s.disable=function(){l=!1},s.enable=function(){l=!0},e&&(e._commandObserver=s),s},r.hasSimpleAPICommandBindings=function(t,e,n){var a,i,o=e.length;for(a=0;a<o;a++){var s,l=e[a],c=l.method,u=l.args;if(Array.isArray(u)||(u=[]),!c)return!1;var h=r.computeAPICommandBindings(t,c,u);if(1!==h.length)return!1;if(i){if((s=h[0]).type!==i.type)return!1;if(s.prop!==i.prop)return!1;if(Array.isArray(i.traces)){if(!Array.isArray(s.traces))return!1;s.traces.sort();for(var f=0;f<i.traces.length;f++)if(i.traces[f]!==s.traces[f])return!1}else if(s.prop!==i.prop)return!1}else i=h[0],Array.isArray(i.traces)&&i.traces.sort();var p=(s=h[0]).value;if(Array.isArray(p)){if(1!==p.length)return!1;p=p[0]}n&&(n[p]=a)}return i},r.executeAPICommand=function(t,e,r){if(\"skip\"===e)return Promise.resolve();var i=n.apiMethodRegistry[e],o=[t];Array.isArray(r)||(r=[]);for(var s=0;s<r.length;s++)o.push(r[s]);return i.apply(null,o).catch((function(t){return a.warn(\"API call to Plotly.\"+e+\" rejected.\",t),Promise.reject(t)}))},r.computeAPICommandBindings=function(t,e,r){var n;switch(Array.isArray(r)||(r=[]),e){case\"restyle\":n=s(t,r);break;case\"relayout\":n=o(t,r);break;case\"update\":n=s(t,[r[0],r[2]]).concat(o(t,[r[1]]));break;case\"animate\":n=function(t,e){return Array.isArray(e[0])&&1===e[0].length&&-1!==[\"string\",\"number\"].indexOf(typeof e[0][0])?[{type:\"layout\",prop:\"_currentFrame\",value:e[0][0].toString()}]:[]}(0,r);break;default:n=[]}return n}},{\"../lib\":749,\"../registry\":881}],825:[function(t,e,r){\"use strict\";var n=t(\"../lib/extend\").extendFlat;r.attributes=function(t,e){e=e||{};var r={valType:\"info_array\",editType:(t=t||{}).editType,items:[{valType:\"number\",min:0,max:1,editType:t.editType},{valType:\"number\",min:0,max:1,editType:t.editType}],dflt:[0,1]},a=(t.name&&t.name,t.trace,e.description&&e.description,{x:n({},r,{}),y:n({},r,{}),editType:t.editType});return t.noGridCell||(a.row={valType:\"integer\",min:0,dflt:0,editType:t.editType},a.column={valType:\"integer\",min:0,dflt:0,editType:t.editType}),a},r.defaults=function(t,e,r,n){var a=n&&n.x||[0,1],i=n&&n.y||[0,1],o=e.grid;if(o){var s=r(\"domain.column\");void 0!==s&&(s<o.columns?a=o._domains.x[s]:delete t.domain.column);var l=r(\"domain.row\");void 0!==l&&(l<o.rows?i=o._domains.y[l]:delete t.domain.row)}var c=r(\"domain.x\",a),u=r(\"domain.y\",i);c[0]<c[1]||(t.domain.x=a.slice()),u[0]<u[1]||(t.domain.y=i.slice())}},{\"../lib/extend\":739}],826:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.editType,r=t.colorEditType;void 0===r&&(r=e);var n={family:{valType:\"string\",noBlank:!0,strict:!0,editType:e},size:{valType:\"number\",min:1,editType:e},color:{valType:\"color\",editType:r},editType:e};return t.arrayOk&&(n.family.arrayOk=!0,n.size.arrayOk=!0,n.color.arrayOk=!0),n}},{}],827:[function(t,e,r){\"use strict\";e.exports={_isLinkedToArray:\"frames_entry\",group:{valType:\"string\"},name:{valType:\"string\"},traces:{valType:\"any\"},baseframe:{valType:\"string\"},data:{valType:\"any\"},layout:{valType:\"any\"}}},{}],828:[function(t,e,r){\"use strict\";r.projNames={equirectangular:\"equirectangular\",mercator:\"mercator\",orthographic:\"orthographic\",\"natural earth\":\"naturalEarth\",kavrayskiy7:\"kavrayskiy7\",miller:\"miller\",robinson:\"robinson\",eckert4:\"eckert4\",\"azimuthal equal area\":\"azimuthalEqualArea\",\"azimuthal equidistant\":\"azimuthalEquidistant\",\"conic equal area\":\"conicEqualArea\",\"conic conformal\":\"conicConformal\",\"conic equidistant\":\"conicEquidistant\",gnomonic:\"gnomonic\",stereographic:\"stereographic\",mollweide:\"mollweide\",hammer:\"hammer\",\"transverse mercator\":\"transverseMercator\",\"albers usa\":\"albersUsa\",\"winkel tripel\":\"winkel3\",aitoff:\"aitoff\",sinusoidal:\"sinusoidal\"},r.axesNames=[\"lonaxis\",\"lataxis\"],r.lonaxisSpan={orthographic:180,\"azimuthal equal area\":360,\"azimuthal equidistant\":360,\"conic conformal\":180,gnomonic:160,stereographic:180,\"transverse mercator\":180,\"*\":360},r.lataxisSpan={\"conic conformal\":150,stereographic:179.5,\"*\":180},r.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:\"equirectangular\",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:\"albers usa\"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:\"conic conformal\",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:\"mercator\",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:\"mercator\",projRotate:[0,0,0]},\"north america\":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:\"conic conformal\",projRotate:[-100,0,0],projParallels:[29.5,45.5]},\"south america\":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:\"mercator\",projRotate:[0,0,0]}},r.clipPad=.001,r.precision=.1,r.landColor=\"#F0DC82\",r.waterColor=\"#3399FF\",r.locationmodeToLayer={\"ISO-3\":\"countries\",\"USA-states\":\"subunits\",\"country names\":\"countries\"},r.sphereSVG={type:\"Sphere\"},r.fillLayers={ocean:1,land:1,lakes:1},r.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},r.layers=[\"bg\",\"ocean\",\"land\",\"lakes\",\"subunits\",\"countries\",\"coastlines\",\"rivers\",\"lataxis\",\"lonaxis\",\"frame\",\"backplot\",\"frontplot\"],r.layersForChoropleth=[\"bg\",\"ocean\",\"land\",\"subunits\",\"countries\",\"coastlines\",\"lataxis\",\"lonaxis\",\"frame\",\"backplot\",\"rivers\",\"lakes\",\"frontplot\"],r.layerNameToAdjective={ocean:\"ocean\",land:\"land\",lakes:\"lake\",subunits:\"subunit\",countries:\"country\",coastlines:\"coastline\",rivers:\"river\",frame:\"frame\"}},{}],829:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=t(\"../../components/color\"),s=t(\"../../components/drawing\"),l=t(\"../../components/fx\"),c=t(\"../plots\"),u=t(\"../cartesian/axes\"),h=t(\"../cartesian/autorange\").getAutoRange,f=t(\"../../components/dragelement\"),p=t(\"../cartesian/select\").prepSelect,d=t(\"../cartesian/select\").clearSelect,g=t(\"../cartesian/select\").selectOnClick,m=t(\"./zoom\"),v=t(\"./constants\"),y=t(\"../../lib/geo_location_utils\"),x=t(\"../../lib/topojson_utils\"),b=t(\"topojson-client\").feature;function _(t){this.id=t.id,this.graphDiv=t.graphDiv,this.container=t.container,this.topojsonURL=t.topojsonURL,this.isStatic=t.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}t(\"./projections\")(n);var w=_.prototype;function T(t,e){var r=v.clipPad,n=t[0]+r,a=t[1]-r,i=e[0]+r,o=e[1]-r;n>0&&a<0&&(a+=360);var s=(a-n)/4;return{type:\"Polygon\",coordinates:[[[n,i],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[a,o],[a,i],[a-s,i],[a-2*s,i],[a-3*s,i],[n,i]]]}}e.exports=function(t){return new _(t)},w.plot=function(t,e,r){var n=this,a=e[this.id],i=[],o=!1;for(var s in v.layerNameToAdjective)if(\"frame\"!==s&&a[\"show\"+s]){o=!0;break}for(var l=0;l<t.length;l++)if(t[0][0].trace.locationmode){o=!0;break}if(o){var c=x.getTopojsonName(a);null!==n.topojson&&c===n.topojsonName||(n.topojsonName=c,void 0===PlotlyGeoAssets.topojson[n.topojsonName]&&i.push(n.fetchTopojson()))}i=i.concat(y.fetchTraceGeoData(t)),r.push(new Promise((function(r,a){Promise.all(i).then((function(){n.topojson=PlotlyGeoAssets.topojson[n.topojsonName],n.update(t,e),r()})).catch(a)})))},w.fetchTopojson=function(){var t=this,e=x.getTopojsonPath(t.topojsonURL,t.topojsonName);return new Promise((function(r,a){n.json(e,(function(n,i){if(n)return 404===n.status?a(new Error([\"plotly.js could not find topojson file at\",e,\".\",\"Make sure the *topojsonURL* plot config option\",\"is set properly.\"].join(\" \"))):a(new Error([\"unexpected error while fetching topojson file at\",e].join(\" \")));PlotlyGeoAssets.topojson[t.topojsonName]=i,r()}))}))},w.update=function(t,e){var r=e[this.id];this.hasChoropleth=!1;for(var n=0;n<t.length;n++){var a=t[n],i=a[0].trace;\"choropleth\"===i.type&&(this.hasChoropleth=!0),!0===i.visible&&i._length>0&&i._module.calcGeoJSON(a,e)}if(!this.updateProjection(t,e)){this.viewInitial&&this.scope===r.scope||this.saveViewInitial(r),this.scope=r.scope,this.updateBaseLayers(e,r),this.updateDims(e,r),this.updateFx(e,r),c.generalUpdatePerTraceModule(this.graphDiv,this,t,r);var o=this.layers.frontplot.select(\".scatterlayer\");this.dataPoints.point=o.selectAll(\".point\"),this.dataPoints.text=o.selectAll(\"text\"),this.dataPaths.line=o.selectAll(\".js-line\");var s=this.layers.backplot.select(\".choroplethlayer\");this.dataPaths.choropleth=s.selectAll(\"path\"),this.render()}},w.updateProjection=function(t,e){var r=this.graphDiv,o=e[this.id],s=e._size,l=o.domain,c=o.projection,u=o.lonaxis,f=o.lataxis,p=u._ax,d=f._ax,g=this.projection=function(t){for(var e=t.projection.type,r=n.geo[v.projNames[e]](),a=t._isClipped?v.lonaxisSpan[e]/2:null,i=[\"center\",\"rotate\",\"parallels\",\"clipExtent\"],o=function(t){return t?r:[]},s=0;s<i.length;s++){var l=i[s];\"function\"!=typeof r[l]&&(r[l]=o)}r.isLonLatOverEdges=function(t){if(null===r(t))return!0;if(a){var e=r.rotate();return n.geo.distance(t,[-e[0],-e[1]])>a*Math.PI/180}return!1},r.getPath=function(){return n.geo.path().projection(r)},r.getBounds=function(t){return r.getPath().bounds(t)},r.fitExtent=function(t,e){var n=t[1][0]-t[0][0],a=t[1][1]-t[0][1],i=r.clipExtent&&r.clipExtent();r.scale(150).translate([0,0]),i&&r.clipExtent(null);var o=r.getBounds(e),s=Math.min(n/(o[1][0]-o[0][0]),a/(o[1][1]-o[0][1])),l=+t[0][0]+(n-s*(o[1][0]+o[0][0]))/2,c=+t[0][1]+(a-s*(o[1][1]+o[0][1]))/2;return i&&r.clipExtent(i),r.scale(150*s).translate([l,c])},r.precision(v.precision),a&&r.clipAngle(a-v.clipPad);return r}(o),m=[[s.l+s.w*l.x[0],s.t+s.h*(1-l.y[1])],[s.l+s.w*l.x[1],s.t+s.h*(1-l.y[0])]],y=o.center||{},x=c.rotation||{},b=u.range||[],_=f.range||[];if(o.fitbounds){p._length=m[1][0]-m[0][0],d._length=m[1][1]-m[0][1],p.range=h(r,p),d.range=h(r,d);var w=(p.range[0]+p.range[1])/2,k=(d.range[0]+d.range[1])/2;if(o._isScoped)y={lon:w,lat:k};else if(o._isClipped){y={lon:w,lat:k},x={lon:w,lat:k,roll:x.roll};var M=c.type,A=v.lonaxisSpan[M]/2||180,S=v.lataxisSpan[M]/2||90;b=[w-A,w+A],_=[k-S,k+S]}else y={lon:w,lat:k},x={lon:w,lat:x.lat,roll:x.roll}}g.center([y.lon-x.lon,y.lat-x.lat]).rotate([-x.lon,-x.lat,x.roll]).parallels(c.parallels);var E=T(b,_);g.fitExtent(m,E);var C=this.bounds=g.getBounds(E),L=this.fitScale=g.scale(),P=g.translate();if(!isFinite(C[0][0])||!isFinite(C[0][1])||!isFinite(C[1][0])||!isFinite(C[1][1])||isNaN(P[0])||isNaN(P[0])){for(var I=[\"fitbounds\",\"projection.rotation\",\"center\",\"lonaxis.range\",\"lataxis.range\"],z=\"Invalid geo settings, relayout'ing to default view.\",O={},D=0;D<I.length;D++)O[this.id+\".\"+I[D]]=null;return this.viewInitial=null,i.warn(z),r._promises.push(a.call(\"relayout\",r,O)),z}if(o.fitbounds){var R=g.getBounds(T(p.range,d.range)),F=Math.min((C[1][0]-C[0][0])/(R[1][0]-R[0][0]),(C[1][1]-C[0][1])/(R[1][1]-R[0][1]));isFinite(F)?g.scale(F*L):i.warn(\"Something went wrong during\"+this.id+\"fitbounds computations.\")}else g.scale(c.scale*L);var B=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(g.translate([P[0]+(B[0]-P[0]),P[1]+(B[1]-P[1])]).clipExtent(C),o._isAlbersUsa){var N=g([y.lon,y.lat]),j=g.translate();g.translate([j[0]-(N[0]-j[0]),j[1]-(N[1]-j[1])])}},w.updateBaseLayers=function(t,e){var r=this,a=r.topojson,i=r.layers,l=r.basePaths;function c(t){return\"lonaxis\"===t||\"lataxis\"===t}function h(t){return Boolean(v.lineLayers[t])}function f(t){return Boolean(v.fillLayers[t])}var p=(this.hasChoropleth?v.layersForChoropleth:v.layers).filter((function(t){return h(t)||f(t)?e[\"show\"+t]:!c(t)||e[t].showgrid})),d=r.framework.selectAll(\".layer\").data(p,String);d.exit().each((function(t){delete i[t],delete l[t],n.select(this).remove()})),d.enter().append(\"g\").attr(\"class\",(function(t){return\"layer \"+t})).each((function(t){var e=i[t]=n.select(this);\"bg\"===t?r.bgRect=e.append(\"rect\").style(\"pointer-events\",\"all\"):c(t)?l[t]=e.append(\"path\").style(\"fill\",\"none\"):\"backplot\"===t?e.append(\"g\").classed(\"choroplethlayer\",!0):\"frontplot\"===t?e.append(\"g\").classed(\"scatterlayer\",!0):h(t)?l[t]=e.append(\"path\").style(\"fill\",\"none\").style(\"stroke-miterlimit\",2):f(t)&&(l[t]=e.append(\"path\").style(\"stroke\",\"none\"))})),d.order(),d.each((function(r){var n=l[r],i=v.layerNameToAdjective[r];\"frame\"===r?n.datum(v.sphereSVG):h(r)||f(r)?n.datum(b(a,a.objects[r])):c(r)&&n.datum(function(t,e,r){var n,a,i,o=e[t],s=v.scopeDefaults[e.scope];\"lonaxis\"===t?(n=s.lonaxisRange,a=s.lataxisRange,i=function(t,e){return[t,e]}):\"lataxis\"===t&&(n=s.lataxisRange,a=s.lonaxisRange,i=function(t,e){return[e,t]});var l={type:\"linear\",range:[n[0],n[1]-1e-6],tick0:o.tick0,dtick:o.dtick};u.setConvert(l,r);var c=u.calcTicks(l);e.isScoped||\"lonaxis\"!==t||c.pop();for(var h=c.length,f=new Array(h),p=0;p<h;p++)for(var d=c[p].x,g=f[p]=[],m=a[0];m<a[1]+2.5;m+=2.5)g.push(i(d,m));return{type:\"MultiLineString\",coordinates:f}}(r,e,t)).call(o.stroke,e[r].gridcolor).call(s.dashLine,\"\",e[r].gridwidth),h(r)?n.call(o.stroke,e[i+\"color\"]).call(s.dashLine,\"\",e[i+\"width\"]):f(r)&&n.call(o.fill,e[i+\"color\"])}))},w.updateDims=function(t,e){var r=this.bounds,n=(e.framewidth||0)/2,a=r[0][0]-n,i=r[0][1]-n,l=r[1][0]-a+n,c=r[1][1]-i+n;s.setRect(this.clipRect,a,i,l,c),this.bgRect.call(s.setRect,a,i,l,c).call(o.fill,e.bgcolor),this.xaxis._offset=a,this.xaxis._length=l,this.yaxis._offset=i,this.yaxis._length=c},w.updateFx=function(t,e){var r=this,i=r.graphDiv,o=r.bgRect,s=t.dragmode,c=t.clickmode;if(!r.isStatic){var u;\"select\"===s?u=function(t,e){(t.range={})[r.id]=[v([e.xmin,e.ymin]),v([e.xmax,e.ymax])]}:\"lasso\"===s&&(u=function(t,e,n){(t.lassoPoints={})[r.id]=n.filtered.map(v)});var h={element:r.bgRect.node(),gd:i,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(t){2===t&&d(i)}};\"pan\"===s?(o.node().onmousedown=null,o.call(m(r,e)),o.on(\"dblclick.zoom\",(function(){var t=r.viewInitial,e={};for(var n in t)e[r.id+\".\"+n]=t[n];a.call(\"_guiRelayout\",i,e),i.emit(\"plotly_doubleclick\",null)})),i._context._scrollZoom.geo||o.on(\"wheel.zoom\",null)):\"select\"!==s&&\"lasso\"!==s||(o.on(\".zoom\",null),h.prepFn=function(t,e,r){p(t,e,r,h,s)},f.init(h)),o.on(\"mousemove\",(function(){var t=r.projection.invert(n.mouse(this));if(!t||isNaN(t[0])||isNaN(t[1]))return f.unhover(i,n.event);r.xaxis.p2c=function(){return t[0]},r.yaxis.p2c=function(){return t[1]},l.hover(i,n.event,r.id)})),o.on(\"mouseout\",(function(){i._dragging||f.unhover(i,n.event)})),o.on(\"click\",(function(){\"select\"!==s&&\"lasso\"!==s&&(c.indexOf(\"select\")>-1&&g(n.event,i,[r.xaxis],[r.yaxis],r.id,h),c.indexOf(\"event\")>-1&&l.click(i,n.event))}))}function v(t){return r.projection.invert([t[0]+r.xaxis._offset,t[1]+r.yaxis._offset])}},w.makeFramework=function(){var t=this,e=t.graphDiv,r=e._fullLayout,a=\"clip\"+r._uid+t.id;t.clipDef=r._clips.append(\"clipPath\").attr(\"id\",a),t.clipRect=t.clipDef.append(\"rect\"),t.framework=n.select(t.container).append(\"g\").attr(\"class\",\"geo \"+t.id).call(s.setClipUrl,a,e),t.project=function(e){var r=t.projection(e);return r?[r[0]-t.xaxis._offset,r[1]-t.yaxis._offset]:[null,null]},t.xaxis={_id:\"x\",c2p:function(e){return t.project(e)[0]}},t.yaxis={_id:\"y\",c2p:function(e){return t.project(e)[1]}},t.mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},u.setConvert(t.mockAxis,r)},w.saveViewInitial=function(t){var e,r=t.center||{},n=t.projection,a=n.rotation||{};this.viewInitial={fitbounds:t.fitbounds,\"projection.scale\":n.scale},e=t._isScoped?{\"center.lon\":r.lon,\"center.lat\":r.lat}:t._isClipped?{\"projection.rotation.lon\":a.lon,\"projection.rotation.lat\":a.lat}:{\"center.lon\":r.lon,\"center.lat\":r.lat,\"projection.rotation.lon\":a.lon},i.extendFlat(this.viewInitial,e)},w.render=function(){var t,e=this.projection,r=e.getPath();function n(t){var r=e(t.lonlat);return r?\"translate(\"+r[0]+\",\"+r[1]+\")\":null}function a(t){return e.isLonLatOverEdges(t.lonlat)?\"none\":null}for(t in this.basePaths)this.basePaths[t].attr(\"d\",r);for(t in this.dataPaths)this.dataPaths[t].attr(\"d\",(function(t){return r(t.geojson)}));for(t in this.dataPoints)this.dataPoints[t].attr(\"display\",a).attr(\"transform\",n)}},{\"../../components/color\":615,\"../../components/dragelement\":634,\"../../components/drawing\":637,\"../../components/fx\":655,\"../../lib\":749,\"../../lib/geo_location_utils\":742,\"../../lib/topojson_utils\":776,\"../../registry\":881,\"../cartesian/autorange\":797,\"../cartesian/axes\":798,\"../cartesian/select\":817,\"../plots\":861,\"./constants\":828,\"./projections\":833,\"./zoom\":834,d3:169,\"topojson-client\":551}],830:[function(t,e,r){\"use strict\";var n=t(\"../../plots/get_data\").getSubplotCalcData,a=t(\"../../lib\").counterRegex,i=t(\"./geo\"),o=\"geo\",s=a(o),l={};l.geo={valType:\"subplotid\",dflt:o,editType:\"calc\"},e.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:t(\"./layout_attributes\"),supplyLayoutDefaults:t(\"./layout_defaults\"),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,a=e._subplots.geo,s=0;s<a.length;s++){var l=a[s],c=n(r,o,l),u=e[l]._subplot;u||(u=i({id:l,graphDiv:t,container:e._geolayer.node(),topojsonURL:t._context.topojsonURL,staticPlot:t._context.staticPlot}),e[l]._subplot=u),u.plot(c,e,t._promises)}},updateFx:function(t){for(var e=t._fullLayout,r=e._subplots.geo,n=0;n<r.length;n++){var a=e[r[n]];a._subplot.updateFx(e,a)}},clean:function(t,e,r,n){for(var a=n._subplots.geo||[],i=0;i<a.length;i++){var o=a[i],s=n[o]._subplot;!e[o]&&s&&(s.framework.remove(),s.clipDef.remove())}}}},{\"../../lib\":749,\"../../plots/get_data\":835,\"./geo\":829,\"./layout_attributes\":831,\"./layout_defaults\":832}],831:[function(t,e,r){\"use strict\";var n=t(\"../../components/color/attributes\"),a=t(\"../domain\").attributes,i=t(\"./constants\"),o=t(\"../../plot_api/edit_types\").overrideAll,s={range:{valType:\"info_array\",items:[{valType:\"number\"},{valType:\"number\"}]},showgrid:{valType:\"boolean\",dflt:!1},tick0:{valType:\"number\",dflt:0},dtick:{valType:\"number\"},gridcolor:{valType:\"color\",dflt:n.lightLine},gridwidth:{valType:\"number\",min:0,dflt:1}};(e.exports=o({domain:a({name:\"geo\"},{}),fitbounds:{valType:\"enumerated\",values:[!1,\"locations\",\"geojson\"],dflt:!1,editType:\"plot\"},resolution:{valType:\"enumerated\",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:\"enumerated\",values:Object.keys(i.scopeDefaults),dflt:\"world\"},projection:{type:{valType:\"enumerated\",values:Object.keys(i.projNames)},rotation:{lon:{valType:\"number\"},lat:{valType:\"number\"},roll:{valType:\"number\"}},parallels:{valType:\"info_array\",items:[{valType:\"number\"},{valType:\"number\"}]},scale:{valType:\"number\",min:0,dflt:1}},center:{lon:{valType:\"number\"},lat:{valType:\"number\"}},visible:{valType:\"boolean\",dflt:!0},showcoastlines:{valType:\"boolean\"},coastlinecolor:{valType:\"color\",dflt:n.defaultLine},coastlinewidth:{valType:\"number\",min:0,dflt:1},showland:{valType:\"boolean\",dflt:!1},landcolor:{valType:\"color\",dflt:i.landColor},showocean:{valType:\"boolean\",dflt:!1},oceancolor:{valType:\"color\",dflt:i.waterColor},showlakes:{valType:\"boolean\",dflt:!1},lakecolor:{valType:\"color\",dflt:i.waterColor},showrivers:{valType:\"boolean\",dflt:!1},rivercolor:{valType:\"color\",dflt:i.waterColor},riverwidth:{valType:\"number\",min:0,dflt:1},showcountries:{valType:\"boolean\"},countrycolor:{valType:\"color\",dflt:n.defaultLine},countrywidth:{valType:\"number\",min:0,dflt:1},showsubunits:{valType:\"boolean\"},subunitcolor:{valType:\"color\",dflt:n.defaultLine},subunitwidth:{valType:\"number\",min:0,dflt:1},showframe:{valType:\"boolean\"},framecolor:{valType:\"color\",dflt:n.defaultLine},framewidth:{valType:\"number\",min:0,dflt:1},bgcolor:{valType:\"color\",dflt:n.background},lonaxis:s,lataxis:s},\"plot\",\"from-root\")).uirevision={valType:\"any\",editType:\"none\"}},{\"../../components/color/attributes\":614,\"../../plot_api/edit_types\":780,\"../domain\":825,\"./constants\":828}],832:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../subplot_defaults\"),i=t(\"../get_data\").getSubplotData,o=t(\"./constants\"),s=t(\"./layout_attributes\"),l=o.axesNames;function c(t,e,r,a){var s=i(a.fullData,\"geo\",a.id).map((function(t){return t._expandedIndex})),c=r(\"resolution\"),u=r(\"scope\"),h=o.scopeDefaults[u],f=r(\"projection.type\",h.projType),p=e._isAlbersUsa=\"albers usa\"===f;p&&(u=e.scope=\"usa\");var d=e._isScoped=\"world\"!==u,g=e._isConic=-1!==f.indexOf(\"conic\"),m=e._isClipped=!!o.lonaxisSpan[f];if(!1===t.visible){var v=n.extendDeep({},e._template);v.showcoastlines=!1,v.showcountries=!1,v.showframe=!1,v.showlakes=!1,v.showland=!1,v.showocean=!1,v.showrivers=!1,v.showsubunits=!1,v.lonaxis&&(v.lonaxis.showgrid=!1),v.lataxis&&(v.lataxis.showgrid=!1),e._template=v}for(var y=r(\"visible\"),x=0;x<l.length;x++){var b,_=l[x],w=[30,10][x];if(d)b=h[_+\"Range\"];else{var T=o[_+\"Span\"],k=(T[f]||T[\"*\"])/2,M=r(\"projection.rotation.\"+_.substr(0,3),h.projRotate[x]);b=[M-k,M+k]}var A=r(_+\".range\",b);r(_+\".tick0\"),r(_+\".dtick\",w),r(_+\".showgrid\",!!y&&void 0)&&(r(_+\".gridcolor\"),r(_+\".gridwidth\")),e[_]._ax={type:\"linear\",_id:_.slice(0,3),_traceIndices:s,setScale:n.identity,c2l:n.identity,r2l:n.identity,autorange:!0,range:A.slice(),_m:1,_input:{}}}var S=e.lonaxis.range,E=e.lataxis.range,C=S[0],L=S[1];C>0&&L<0&&(L+=360);var P,I,z,O=(C+L)/2;if(!p){var D=d?h.projRotate:[O,0,0];P=r(\"projection.rotation.lon\",D[0]),r(\"projection.rotation.lat\",D[1]),r(\"projection.rotation.roll\",D[2]),r(\"showcoastlines\",!d&&y)&&(r(\"coastlinecolor\"),r(\"coastlinewidth\")),r(\"showocean\",!!y&&void 0)&&r(\"oceancolor\")}(p?(I=-96.6,z=38.7):(I=d?O:P,z=(E[0]+E[1])/2),r(\"center.lon\",I),r(\"center.lat\",z),g)&&r(\"projection.parallels\",h.projParallels||[0,60]);r(\"projection.scale\"),r(\"showland\",!!y&&void 0)&&r(\"landcolor\"),r(\"showlakes\",!!y&&void 0)&&r(\"lakecolor\"),r(\"showrivers\",!!y&&void 0)&&(r(\"rivercolor\"),r(\"riverwidth\")),r(\"showcountries\",d&&\"usa\"!==u&&y)&&(r(\"countrycolor\"),r(\"countrywidth\")),(\"usa\"===u||\"north america\"===u&&50===c)&&(r(\"showsubunits\",y),r(\"subunitcolor\"),r(\"subunitwidth\")),d||r(\"showframe\",y)&&(r(\"framecolor\"),r(\"framewidth\")),r(\"bgcolor\"),r(\"fitbounds\")&&(delete e.projection.scale,d?(delete e.center.lon,delete e.center.lat):m?(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon,delete e.projection.rotation.lat,delete e.lonaxis.range,delete e.lataxis.range):(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon))}e.exports=function(t,e,r){a(t,e,r,{type:\"geo\",attributes:s,handleDefaults:c,fullData:r,partition:\"y\"})}},{\"../../lib\":749,\"../get_data\":835,\"../subplot_defaults\":875,\"./constants\":828,\"./layout_attributes\":831}],833:[function(t,e,r){\"use strict\";e.exports=function(t){function e(t,e){return{type:\"Feature\",id:t.id,properties:t.properties,geometry:r(t.geometry,e)}}function r(e,n){if(!e)return null;if(\"GeometryCollection\"===e.type)return{type:\"GeometryCollection\",geometries:object.geometries.map((function(t){return r(t,n)}))};if(!c.hasOwnProperty(e.type))return null;var a=c[e.type];return t.geo.stream(e,n(a)),a.result()}t.geo.project=function(t,e){var a=e.stream;if(!a)throw new Error(\"not yet supported\");return(t&&n.hasOwnProperty(t.type)?n[t.type]:r)(t,a)};var n={Feature:e,FeatureCollection:function(t,r){return{type:\"FeatureCollection\",features:t.features.map((function(t){return e(t,r)}))}}},a=[],i=[],o={point:function(t,e){a.push([t,e])},result:function(){var t=a.length?a.length<2?{type:\"Point\",coordinates:a[0]}:{type:\"MultiPoint\",coordinates:a}:null;return a=[],t}},s={lineStart:u,point:function(t,e){a.push([t,e])},lineEnd:function(){a.length&&(i.push(a),a=[])},result:function(){var t=i.length?i.length<2?{type:\"LineString\",coordinates:i[0]}:{type:\"MultiLineString\",coordinates:i}:null;return i=[],t}},l={polygonStart:u,lineStart:u,point:function(t,e){a.push([t,e])},lineEnd:function(){var t=a.length;if(t){do{a.push(a[0].slice())}while(++t<4);i.push(a),a=[]}},polygonEnd:u,result:function(){if(!i.length)return null;var t=[],e=[];return i.forEach((function(r){!function(t){if((e=t.length)<4)return!1;var e,r=0,n=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];for(;++r<e;)n+=t[r-1][1]*t[r][0]-t[r-1][0]*t[r][1];return n<=0}(r)?e.push(r):t.push([r])})),e.forEach((function(e){var r=e[0];t.some((function(t){if(function(t,e){for(var r=e[0],n=e[1],a=!1,i=0,o=t.length,s=o-1;i<o;s=i++){var l=t[i],c=l[0],u=l[1],h=t[s],f=h[0],p=h[1];u>n^p>n&&r<(f-c)*(n-u)/(p-u)+c&&(a=!a)}return a}(t[0],r))return t.push(e),!0}))||t.push([e])})),i=[],t.length?t.length>1?{type:\"MultiPolygon\",coordinates:t}:{type:\"Polygon\",coordinates:t[0]}:null}},c={Point:o,MultiPoint:o,LineString:s,MultiLineString:s,Polygon:l,MultiPolygon:l,Sphere:l};function u(){}var h=1e-6,f=Math.PI,p=f/2,d=(Math.sqrt(f),f/180),g=180/f;function m(t){return t>1?p:t<-1?-p:Math.asin(t)}function v(t){return t>1?0:t<-1?f:Math.acos(t)}var y=t.geo.projection,x=t.geo.projectionMutator;function b(t,e){var r=(2+p)*Math.sin(e);e/=2;for(var n=0,a=1/0;n<10&&Math.abs(a)>h;n++){var i=Math.cos(e);e-=a=(e+Math.sin(e)*(i+2)-r)/(2*i*(1+i))}return[2/Math.sqrt(f*(4+f))*t*(1+Math.cos(e)),2*Math.sqrt(f/(4+f))*Math.sin(e)]}t.geo.interrupt=function(e){var r,n=[[[[-f,0],[0,p],[f,0]]],[[[-f,0],[0,-p],[f,0]]]];function a(t,r){for(var a=r<0?-1:1,i=n[+(r<0)],o=0,s=i.length-1;o<s&&t>i[o][2][0];++o);var l=e(t-i[o][1][0],r);return l[0]+=e(i[o][1][0],a*r>a*i[o][0][1]?i[o][0][1]:r)[0],l}function i(){r=n.map((function(t){return t.map((function(t){var r,n=e(t[0][0],t[0][1])[0],a=e(t[2][0],t[2][1])[0],i=e(t[1][0],t[0][1])[1],o=e(t[1][0],t[1][1])[1];return i>o&&(r=i,i=o,o=r),[[n,i],[a,o]]}))}))}e.invert&&(a.invert=function(t,i){for(var o=r[+(i<0)],s=n[+(i<0)],l=0,u=o.length;l<u;++l){var h=o[l];if(h[0][0]<=t&&t<h[1][0]&&h[0][1]<=i&&i<h[1][1]){var f=e.invert(t-e(s[l][1][0],0)[0],i);return f[0]+=s[l][1][0],c(a(f[0],f[1]),[t,i])?f:null}}});var o=t.geo.projection(a),s=o.stream;function l(t,e){for(var r,n,a,i=-1,o=t.length,s=t[0],l=[];++i<o;){n=((r=t[i])[0]-s[0])/e,a=(r[1]-s[1])/e;for(var c=0;c<e;++c)l.push([s[0]+c*n,s[1]+c*a]);s=r}return l.push(r),l}function c(t,e){return Math.abs(t[0]-e[0])<h&&Math.abs(t[1]-e[1])<h}return o.stream=function(e){var r=o.rotate(),a=s(e),i=(o.rotate([0,0]),s(e));return o.rotate(r),a.sphere=function(){t.geo.stream(function(){for(var e=1e-6,r=[],a=0,i=n[0].length;a<i;++a){var o=180*(p=n[0][a])[0][0]/f,s=180*p[0][1]/f,c=180*p[1][1]/f,u=180*p[2][0]/f,h=180*p[2][1]/f;r.push(l([[o+e,s+e],[o+e,c-e],[u-e,c-e],[u-e,h+e]],30))}for(a=n[1].length-1;a>=0;--a){var p;o=180*(p=n[1][a])[0][0]/f,s=180*p[0][1]/f,c=180*p[1][1]/f,u=180*p[2][0]/f,h=180*p[2][1]/f;r.push(l([[u-e,h-e],[u-e,c+e],[o+e,c+e],[o+e,s-e]],30))}return{type:\"Polygon\",coordinates:[t.merge(r)]}}(),i)},a},o.lobes=function(t){return arguments.length?(n=t.map((function(t){return t.map((function(t){return[[t[0][0]*f/180,t[0][1]*f/180],[t[1][0]*f/180,t[1][1]*f/180],[t[2][0]*f/180,t[2][1]*f/180]]}))})),i(),o):n.map((function(t){return t.map((function(t){return[[180*t[0][0]/f,180*t[0][1]/f],[180*t[1][0]/f,180*t[1][1]/f],[180*t[2][0]/f,180*t[2][1]/f]]}))}))},o},b.invert=function(t,e){var r=.5*e*Math.sqrt((4+f)/f),n=m(r),a=Math.cos(n);return[t/(2/Math.sqrt(f*(4+f))*(1+a)),m((n+r*(a+2))/(2+p))]},(t.geo.eckert4=function(){return y(b)}).raw=b;var _=t.geo.azimuthalEqualArea.raw;function w(t,e){if(arguments.length<2&&(e=t),1===e)return _;if(e===1/0)return T;function r(r,n){var a=_(r/e,n);return a[0]*=t,a}return r.invert=function(r,n){var a=_.invert(r/t,n);return a[0]*=e,a},r}function T(t,e){return[t*Math.cos(e)/Math.cos(e/=2),2*Math.sin(e)]}function k(t,e){return[3*t/(2*f)*Math.sqrt(f*f/3-e*e),e]}function M(t,e){return[t,1.25*Math.log(Math.tan(f/4+.4*e))]}function A(t){return function(e){var r,n=t*Math.sin(e),a=30;do{e-=r=(e+Math.sin(e)-n)/(1+Math.cos(e))}while(Math.abs(r)>h&&--a>0);return e/2}}T.invert=function(t,e){var r=2*m(e/2);return[t*Math.cos(r/2)/Math.cos(r),r]},(t.geo.hammer=function(){var t=2,e=x(w),r=e(t);return r.coefficient=function(r){return arguments.length?e(t=+r):t},r}).raw=w,k.invert=function(t,e){return[2/3*f*t/Math.sqrt(f*f/3-e*e),e]},(t.geo.kavrayskiy7=function(){return y(k)}).raw=k,M.invert=function(t,e){return[t,2.5*Math.atan(Math.exp(.8*e))-.625*f]},(t.geo.miller=function(){return y(M)}).raw=M,A(f);var S=function(t,e,r){var n=A(r);function a(r,a){return[t*r*Math.cos(a=n(a)),e*Math.sin(a)]}return a.invert=function(n,a){var i=m(a/e);return[n/(t*Math.cos(i)),m((2*i+Math.sin(2*i))/r)]},a}(Math.SQRT2/p,Math.SQRT2,f);function E(t,e){var r=e*e,n=r*r;return[t*(.8707-.131979*r+n*(n*(.003971*r-.001529*n)-.013791)),e*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))]}(t.geo.mollweide=function(){return y(S)}).raw=S,E.invert=function(t,e){var r,n=e,a=25;do{var i=n*n,o=i*i;n-=r=(n*(1.007226+i*(.015085+o*(.028874*i-.044475-.005916*o)))-e)/(1.007226+i*(.045255+o*(.259866*i-.311325-.005916*11*o)))}while(Math.abs(r)>h&&--a>0);return[t/(.8707+(i=n*n)*(i*(i*i*i*(.003971-.001529*i)-.013791)-.131979)),n]},(t.geo.naturalEarth=function(){return y(E)}).raw=E;var C=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];function L(t,e){var r,n=Math.min(18,36*Math.abs(e)/f),a=Math.floor(n),i=n-a,o=(r=C[a])[0],s=r[1],l=(r=C[++a])[0],c=r[1],u=(r=C[Math.min(19,++a)])[0],h=r[1];return[t*(l+i*(u-o)/2+i*i*(u-2*l+o)/2),(e>0?p:-p)*(c+i*(h-s)/2+i*i*(h-2*c+s)/2)]}function P(t,e){return[t*Math.cos(e),e]}function I(t,e){var r,n=Math.cos(e),a=(r=v(n*Math.cos(t/=2)))?r/Math.sin(r):1;return[2*n*Math.sin(t)*a,Math.sin(e)*a]}function z(t,e){var r=I(t,e);return[(r[0]+t/p)/2,(r[1]+e)/2]}C.forEach((function(t){t[1]*=1.0144})),L.invert=function(t,e){var r=e/p,n=90*r,a=Math.min(18,Math.abs(n/5)),i=Math.max(0,Math.floor(a));do{var o=C[i][1],s=C[i+1][1],l=C[Math.min(19,i+2)][1],c=l-o,u=l-2*s+o,h=2*(Math.abs(r)-s)/c,f=u/c,m=h*(1-f*h*(1-2*f*h));if(m>=0||1===i){n=(e>=0?5:-5)*(m+a);var v,y=50;do{m=(a=Math.min(18,Math.abs(n)/5))-(i=Math.floor(a)),o=C[i][1],s=C[i+1][1],l=C[Math.min(19,i+2)][1],n-=(v=(e>=0?p:-p)*(s+m*(l-o)/2+m*m*(l-2*s+o)/2)-e)*g}while(Math.abs(v)>1e-12&&--y>0);break}}while(--i>=0);var x=C[i][0],b=C[i+1][0],_=C[Math.min(19,i+2)][0];return[t/(b+m*(_-x)/2+m*m*(_-2*b+x)/2),n*d]},(t.geo.robinson=function(){return y(L)}).raw=L,P.invert=function(t,e){return[t/Math.cos(e),e]},(t.geo.sinusoidal=function(){return y(P)}).raw=P,I.invert=function(t,e){if(!(t*t+4*e*e>f*f+h)){var r=t,n=e,a=25;do{var i,o=Math.sin(r),s=Math.sin(r/2),l=Math.cos(r/2),c=Math.sin(n),u=Math.cos(n),p=Math.sin(2*n),d=c*c,g=u*u,m=s*s,y=1-g*l*l,x=y?v(u*l)*Math.sqrt(i=1/y):i=0,b=2*x*u*s-t,_=x*c-e,w=i*(g*m+x*u*l*d),T=i*(.5*o*p-2*x*c*s),k=.25*i*(p*s-x*c*g*o),M=i*(d*l+x*m*u),A=T*k-M*w;if(!A)break;var S=(_*T-b*M)/A,E=(b*k-_*w)/A;r-=S,n-=E}while((Math.abs(S)>h||Math.abs(E)>h)&&--a>0);return[r,n]}},(t.geo.aitoff=function(){return y(I)}).raw=I,z.invert=function(t,e){var r=t,n=e,a=25;do{var i,o=Math.cos(n),s=Math.sin(n),l=Math.sin(2*n),c=s*s,u=o*o,f=Math.sin(r),d=Math.cos(r/2),g=Math.sin(r/2),m=g*g,y=1-u*d*d,x=y?v(o*d)*Math.sqrt(i=1/y):i=0,b=.5*(2*x*o*g+r/p)-t,_=.5*(x*s+n)-e,w=.5*i*(u*m+x*o*d*c)+.5/p,T=i*(f*l/4-x*s*g),k=.125*i*(l*g-x*s*u*f),M=.5*i*(c*d+x*m*o)+.5,A=T*k-M*w,S=(_*T-b*M)/A,E=(b*k-_*w)/A;r-=S,n-=E}while((Math.abs(S)>h||Math.abs(E)>h)&&--a>0);return[r,n]},(t.geo.winkel3=function(){return y(z)}).raw=z}},{}],834:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../registry\"),o=Math.PI/180,s=180/Math.PI,l={cursor:\"pointer\"},c={cursor:\"auto\"};function u(t,e){return n.behavior.zoom().translate(e.translate()).scale(e.scale())}function h(t,e,r){var n=t.id,o=t.graphDiv,s=o.layout,l=s[n],c=o._fullLayout,u=c[n],h={},f={};function p(t,e){h[n+\".\"+t]=a.nestedProperty(l,t).get(),i.call(\"_storeDirectGUIEdit\",s,c._preGUI,h);var r=a.nestedProperty(u,t);r.get()!==e&&(r.set(e),a.nestedProperty(l,t).set(e),f[n+\".\"+t]=e)}r(p),p(\"projection.scale\",e.scale()/t.fitScale),p(\"fitbounds\",!1),o.emit(\"plotly_relayout\",f)}function f(t,e){var r=u(0,e);function a(r){var n=e.invert(t.midPt);r(\"center.lon\",n[0]),r(\"center.lat\",n[1])}return r.on(\"zoomstart\",(function(){n.select(this).style(l)})).on(\"zoom\",(function(){e.scale(n.event.scale).translate(n.event.translate),t.render();var r=e.invert(t.midPt);t.graphDiv.emit(\"plotly_relayouting\",{\"geo.projection.scale\":e.scale()/t.fitScale,\"geo.center.lon\":r[0],\"geo.center.lat\":r[1]})})).on(\"zoomend\",(function(){n.select(this).style(c),h(t,e,a)})),r}function p(t,e){var r,a,i,o,s,f,p,d,g,m=u(0,e);function v(t){return e.invert(t)}function y(r){var n=e.rotate(),a=e.invert(t.midPt);r(\"projection.rotation.lon\",-n[0]),r(\"center.lon\",a[0]),r(\"center.lat\",a[1])}return m.on(\"zoomstart\",(function(){n.select(this).style(l),r=n.mouse(this),a=e.rotate(),i=e.translate(),o=a,s=v(r)})).on(\"zoom\",(function(){if(f=n.mouse(this),function(t){var r=v(t);if(!r)return!0;var n=e(r);return Math.abs(n[0]-t[0])>2||Math.abs(n[1]-t[1])>2}(r))return m.scale(e.scale()),void m.translate(e.translate());e.scale(n.event.scale),e.translate([i[0],n.event.translate[1]]),s?v(f)&&(d=v(f),p=[o[0]+(d[0]-s[0]),a[1],a[2]],e.rotate(p),o=p):s=v(r=f),g=!0,t.render();var l=e.rotate(),c=e.invert(t.midPt);t.graphDiv.emit(\"plotly_relayouting\",{\"geo.projection.scale\":e.scale()/t.fitScale,\"geo.center.lon\":c[0],\"geo.center.lat\":c[1],\"geo.projection.rotation.lon\":-l[0]})})).on(\"zoomend\",(function(){n.select(this).style(c),g&&h(t,e,y)})),m}function d(t,e){var r,a={r:e.rotate(),k:e.scale()},i=u(0,e),o=function(t){var e=0,r=arguments.length,a=[];for(;++e<r;)a.push(arguments[e]);var i=n.dispatch.apply(null,a);return i.of=function(e,r){return function(a){var o;try{o=a.sourceEvent=n.event,a.target=t,n.event=a,i[a.type].apply(e,r)}finally{n.event=o}}},i}(i,\"zoomstart\",\"zoom\",\"zoomend\"),s=0,f=i.on;function p(t){s++||t({type:\"zoomstart\"})}function d(t){t({type:\"zoom\"})}function b(t){--s||t({type:\"zoomend\"})}function _(t){var r=e.rotate();t(\"projection.rotation.lon\",-r[0]),t(\"projection.rotation.lat\",-r[1])}return i.on(\"zoomstart\",(function(){n.select(this).style(l);var t=n.mouse(this),s=e.rotate(),c=s,u=e.translate(),h=m(s);r=g(e,t),f.call(i,\"zoom\",(function(){var i=n.mouse(this);if(e.scale(a.k=n.event.scale),r){if(g(e,i)){e.rotate(s).translate(u);var l=g(e,i),f=y(r,l),p=T(v(h,f)),m=a.r=x(p,r,c);isFinite(m[0])&&isFinite(m[1])&&isFinite(m[2])||(m=c),e.rotate(m),c=m}}else r=g(e,t=i);d(o.of(this,arguments))})),p(o.of(this,arguments))})).on(\"zoomend\",(function(){n.select(this).style(c),f.call(i,\"zoom\",null),b(o.of(this,arguments)),h(t,e,_)})).on(\"zoom.redraw\",(function(){t.render();var r=e.rotate();t.graphDiv.emit(\"plotly_relayouting\",{\"geo.projection.scale\":e.scale()/t.fitScale,\"geo.projection.rotation.lon\":-r[0],\"geo.projection.rotation.lat\":-r[1]})})),n.rebind(i,o,\"on\")}function g(t,e){var r=t.invert(e);return r&&isFinite(r[0])&&isFinite(r[1])&&function(t){var e=t[0]*o,r=t[1]*o,n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}(r)}function m(t){var e=.5*t[0]*o,r=.5*t[1]*o,n=.5*t[2]*o,a=Math.sin(e),i=Math.cos(e),s=Math.sin(r),l=Math.cos(r),c=Math.sin(n),u=Math.cos(n);return[i*l*u+a*s*c,a*l*u-i*s*c,i*s*u+a*l*c,i*l*c-a*s*u]}function v(t,e){var r=t[0],n=t[1],a=t[2],i=t[3],o=e[0],s=e[1],l=e[2],c=e[3];return[r*o-n*s-a*l-i*c,r*s+n*o+a*c-i*l,r*l-n*c+a*o+i*s,r*c+n*l-a*s+i*o]}function y(t,e){if(t&&e){var r=function(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}(t,e),n=Math.sqrt(k(r,r)),a=.5*Math.acos(Math.max(-1,Math.min(1,k(t,e)))),i=Math.sin(a)/n;return n&&[Math.cos(a),r[2]*i,-r[1]*i,r[0]*i]}}function x(t,e,r){var n=w(e,2,t[0]);n=w(n,1,t[1]),n=w(n,0,t[2]-r[2]);var a,i,o=e[0],l=e[1],c=e[2],u=n[0],h=n[1],f=n[2],p=Math.atan2(l,o)*s,d=Math.sqrt(o*o+l*l);Math.abs(h)>d?(i=(h>0?90:-90)-p,a=0):(i=Math.asin(h/d)*s-p,a=Math.sqrt(d*d-h*h));var g=180-i-2*p,m=(Math.atan2(f,u)-Math.atan2(c,a))*s,v=(Math.atan2(f,u)-Math.atan2(c,-a))*s;return b(r[0],r[1],i,m)<=b(r[0],r[1],g,v)?[i,m,r[2]]:[g,v,r[2]]}function b(t,e,r,n){var a=_(r-t),i=_(n-e);return Math.sqrt(a*a+i*i)}function _(t){return(t%360+540)%360-180}function w(t,e,r){var n=r*o,a=t.slice(),i=0===e?1:0,s=2===e?1:2,l=Math.cos(n),c=Math.sin(n);return a[i]=t[i]*l-t[s]*c,a[s]=t[s]*l+t[i]*c,a}function T(t){return[Math.atan2(2*(t[0]*t[1]+t[2]*t[3]),1-2*(t[1]*t[1]+t[2]*t[2]))*s,Math.asin(Math.max(-1,Math.min(1,2*(t[0]*t[2]-t[3]*t[1]))))*s,Math.atan2(2*(t[0]*t[3]+t[1]*t[2]),1-2*(t[2]*t[2]+t[3]*t[3]))*s]}function k(t,e){for(var r=0,n=0,a=t.length;n<a;++n)r+=t[n]*e[n];return r}e.exports=function(t,e){var r=t.projection;return(e._isScoped?f:e._isClipped?d:p)(t,r)}},{\"../../lib\":749,\"../../registry\":881,d3:169}],835:[function(t,e,r){\"use strict\";var n=t(\"../registry\"),a=t(\"./cartesian/constants\").SUBPLOT_PATTERN;r.getSubplotCalcData=function(t,e,r){var a=n.subplotsRegistry[e];if(!a)return[];for(var i=a.attr,o=[],s=0;s<t.length;s++){var l=t[s];l[0].trace[i]===r&&o.push(l)}return o},r.getModuleCalcData=function(t,e){var r,a=[],i=[];if(!(r=\"string\"==typeof e?n.getModule(e).plot:\"function\"==typeof e?e:e.plot))return[a,t];for(var o=0;o<t.length;o++){var s=t[o],l=s[0].trace;!0===l.visible&&0!==l._length&&(l._module.plot===r?a.push(s):i.push(s))}return[a,i]},r.getSubplotData=function(t,e,r){if(!n.subplotsRegistry[e])return[];var i,o,s,l=n.subplotsRegistry[e].attr,c=[];if(\"gl2d\"===e){var u=r.match(a);o=\"x\"+u[1],s=\"y\"+u[2]}for(var h=0;h<t.length;h++)i=t[h],\"gl2d\"===e&&n.traceIs(i,\"gl2d\")?i[l[0]]===o&&i[l[1]]===s&&c.push(i):i[l]===r&&c.push(i);return c}},{\"../registry\":881,\"./cartesian/constants\":804}],836:[function(t,e,r){\"use strict\";var n=t(\"mouse-change\"),a=t(\"mouse-wheel\"),i=t(\"mouse-event-offset\"),o=t(\"../cartesian/constants\"),s=t(\"has-passive-events\");function l(t,e){this.element=t,this.plot=e,this.mouseListener=null,this.wheelListener=null,this.lastInputTime=Date.now(),this.lastPos=[0,0],this.boxEnabled=!1,this.boxInited=!1,this.boxStart=[0,0],this.boxEnd=[0,0],this.dragStart=[0,0]}e.exports=function(t){var e=t.mouseContainer,r=t.glplot,c=new l(e,r);function u(){t.xaxis.autorange=!1,t.yaxis.autorange=!1}function h(e,n,a){var i,s,l=t.calcDataBox(),h=r.viewBox,f=c.lastPos[0],p=c.lastPos[1],d=o.MINDRAG*r.pixelRatio,g=o.MINZOOM*r.pixelRatio;function m(e,r,n){var a=Math.min(r,n),i=Math.max(r,n);a!==i?(l[e]=a,l[e+2]=i,c.dataBox=l,t.setRanges(l)):(t.selectBox.selectBox=[0,0,1,1],t.glplot.setDirty())}switch(n*=r.pixelRatio,a*=r.pixelRatio,a=h[3]-h[1]-a,t.fullLayout.dragmode){case\"zoom\":if(e){var v=n/(h[2]-h[0])*(l[2]-l[0])+l[0],y=a/(h[3]-h[1])*(l[3]-l[1])+l[1];c.boxInited||(c.boxStart[0]=v,c.boxStart[1]=y,c.dragStart[0]=n,c.dragStart[1]=a),c.boxEnd[0]=v,c.boxEnd[1]=y,c.boxInited=!0,c.boxEnabled||c.boxStart[0]===c.boxEnd[0]&&c.boxStart[1]===c.boxEnd[1]||(c.boxEnabled=!0);var x=Math.abs(c.dragStart[0]-n)<g,b=Math.abs(c.dragStart[1]-a)<g;if(!function(){for(var e=t.graphDiv._fullLayout._axisConstraintGroups,r=t.xaxis._id,n=t.yaxis._id,a=0;a<e.length;a++)if(-1!==e[a][r]){if(-1!==e[a][n])return!0;break}return!1}()||x&&b)x&&(c.boxEnd[0]=c.boxStart[0]),b&&(c.boxEnd[1]=c.boxStart[1]);else{i=c.boxEnd[0]-c.boxStart[0],s=c.boxEnd[1]-c.boxStart[1];var _=(l[3]-l[1])/(l[2]-l[0]);Math.abs(i*_)>Math.abs(s)?(c.boxEnd[1]=c.boxStart[1]+Math.abs(i)*_*(s>=0?1:-1),c.boxEnd[1]<l[1]?(c.boxEnd[1]=l[1],c.boxEnd[0]=c.boxStart[0]+(l[1]-c.boxStart[1])/Math.abs(_)):c.boxEnd[1]>l[3]&&(c.boxEnd[1]=l[3],c.boxEnd[0]=c.boxStart[0]+(l[3]-c.boxStart[1])/Math.abs(_))):(c.boxEnd[0]=c.boxStart[0]+Math.abs(s)/_*(i>=0?1:-1),c.boxEnd[0]<l[0]?(c.boxEnd[0]=l[0],c.boxEnd[1]=c.boxStart[1]+(l[0]-c.boxStart[0])*Math.abs(_)):c.boxEnd[0]>l[2]&&(c.boxEnd[0]=l[2],c.boxEnd[1]=c.boxStart[1]+(l[2]-c.boxStart[0])*Math.abs(_)))}}else c.boxEnabled?(i=c.boxStart[0]!==c.boxEnd[0],s=c.boxStart[1]!==c.boxEnd[1],i||s?(i&&(m(0,c.boxStart[0],c.boxEnd[0]),t.xaxis.autorange=!1),s&&(m(1,c.boxStart[1],c.boxEnd[1]),t.yaxis.autorange=!1),t.relayoutCallback()):t.glplot.setDirty(),c.boxEnabled=!1,c.boxInited=!1):c.boxInited&&(c.boxInited=!1);break;case\"pan\":c.boxEnabled=!1,c.boxInited=!1,e?(c.panning||(c.dragStart[0]=n,c.dragStart[1]=a),Math.abs(c.dragStart[0]-n)<d&&(n=c.dragStart[0]),Math.abs(c.dragStart[1]-a)<d&&(a=c.dragStart[1]),i=(f-n)*(l[2]-l[0])/(r.viewBox[2]-r.viewBox[0]),s=(p-a)*(l[3]-l[1])/(r.viewBox[3]-r.viewBox[1]),l[0]+=i,l[2]+=i,l[1]+=s,l[3]+=s,t.setRanges(l),c.panning=!0,c.lastInputTime=Date.now(),u(),t.cameraChanged(),t.handleAnnotations()):c.panning&&(c.panning=!1,t.relayoutCallback())}c.lastPos[0]=n,c.lastPos[1]=a}return c.mouseListener=n(e,h),e.addEventListener(\"touchstart\",(function(t){var r=i(t.changedTouches[0],e);h(0,r[0],r[1]),h(1,r[0],r[1]),t.preventDefault()}),!!s&&{passive:!1}),e.addEventListener(\"touchmove\",(function(t){t.preventDefault();var r=i(t.changedTouches[0],e);h(1,r[0],r[1]),t.preventDefault()}),!!s&&{passive:!1}),e.addEventListener(\"touchend\",(function(t){h(0,c.lastPos[0],c.lastPos[1]),t.preventDefault()}),!!s&&{passive:!1}),c.wheelListener=a(e,(function(e,n){if(!t.scrollZoom)return!1;var a=t.calcDataBox(),i=r.viewBox,o=c.lastPos[0],s=c.lastPos[1],l=Math.exp(5*n/(i[3]-i[1])),h=o/(i[2]-i[0])*(a[2]-a[0])+a[0],f=s/(i[3]-i[1])*(a[3]-a[1])+a[1];return a[0]=(a[0]-h)*l+h,a[2]=(a[2]-h)*l+h,a[1]=(a[1]-f)*l+f,a[3]=(a[3]-f)*l+f,t.setRanges(a),c.lastInputTime=Date.now(),u(),t.cameraChanged(),t.handleAnnotations(),t.relayoutCallback(),!0}),!0),c}},{\"../cartesian/constants\":804,\"has-passive-events\":415,\"mouse-change\":457,\"mouse-event-offset\":458,\"mouse-wheel\":460}],837:[function(t,e,r){\"use strict\";var n=t(\"../cartesian/axes\"),a=t(\"../../lib/str2rgbarray\");function i(t){this.scene=t,this.gl=t.gl,this.pixelRatio=t.pixelRatio,this.screenBox=[0,0,1,1],this.viewBox=[0,0,1,1],this.dataBox=[-1,-1,1,1],this.borderLineEnable=[!1,!1,!1,!1],this.borderLineWidth=[1,1,1,1],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.ticks=[[],[]],this.tickEnable=[!0,!0,!1,!1],this.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickMarkLength=[0,0,0,0],this.tickMarkWidth=[0,0,0,0],this.tickMarkColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labels=[\"x\",\"y\"],this.labelEnable=[!0,!0,!1,!1],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelPad=[15,15,15,15],this.labelSize=[12,12],this.labelFont=[\"sans-serif\",\"sans-serif\"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.title=\"\",this.titleEnable=!0,this.titleCenter=[0,0,0,0],this.titleAngle=0,this.titleColor=[0,0,0,1],this.titleFont=\"sans-serif\",this.titleSize=18,this.gridLineEnable=[!0,!0],this.gridLineColor=[[0,0,0,.5],[0,0,0,.5]],this.gridLineWidth=[1,1],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[1,1],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.static=this.scene.staticPlot}var o=i.prototype,s=[\"xaxis\",\"yaxis\"];o.merge=function(t){var e,r,n,i,o,l,c,u,h,f,p;for(this.titleEnable=!1,this.backgroundColor=a(t.plot_bgcolor),f=0;f<2;++f){var d=(e=s[f]).charAt(0);for(n=(r=t[this.scene[e]._name]).title.text===this.scene.fullLayout._dfltTitle[d]?\"\":r.title.text,p=0;p<=2;p+=2)this.labelEnable[f+p]=!1,this.labels[f+p]=n,this.labelColor[f+p]=a(r.title.font.color),this.labelFont[f+p]=r.title.font.family,this.labelSize[f+p]=r.title.font.size,this.labelPad[f+p]=this.getLabelPad(e,r),this.tickEnable[f+p]=!1,this.tickColor[f+p]=a((r.tickfont||{}).color),this.tickAngle[f+p]=\"auto\"===r.tickangle?0:Math.PI*-r.tickangle/180,this.tickPad[f+p]=this.getTickPad(r),this.tickMarkLength[f+p]=0,this.tickMarkWidth[f+p]=r.tickwidth||0,this.tickMarkColor[f+p]=a(r.tickcolor),this.borderLineEnable[f+p]=!1,this.borderLineColor[f+p]=a(r.linecolor),this.borderLineWidth[f+p]=r.linewidth||0;c=this.hasSharedAxis(r),o=this.hasAxisInDfltPos(e,r)&&!c,l=this.hasAxisInAltrPos(e,r)&&!c,i=r.mirror||!1,u=c?-1!==String(i).indexOf(\"all\"):!!i,h=c?\"allticks\"===i:-1!==String(i).indexOf(\"ticks\"),o?this.labelEnable[f]=!0:l&&(this.labelEnable[f+2]=!0),o?this.tickEnable[f]=r.showticklabels:l&&(this.tickEnable[f+2]=r.showticklabels),(o||u)&&(this.borderLineEnable[f]=r.showline),(l||u)&&(this.borderLineEnable[f+2]=r.showline),(o||h)&&(this.tickMarkLength[f]=this.getTickMarkLength(r)),(l||h)&&(this.tickMarkLength[f+2]=this.getTickMarkLength(r)),this.gridLineEnable[f]=r.showgrid,this.gridLineColor[f]=a(r.gridcolor),this.gridLineWidth[f]=r.gridwidth,this.zeroLineEnable[f]=r.zeroline,this.zeroLineColor[f]=a(r.zerolinecolor),this.zeroLineWidth[f]=r.zerolinewidth}},o.hasSharedAxis=function(t){var e=this.scene,r=e.fullLayout._subplots.gl2d;return 0!==n.findSubplotsWithAxis(r,t).indexOf(e.id)},o.hasAxisInDfltPos=function(t,e){var r=e.side;return\"xaxis\"===t?\"bottom\"===r:\"yaxis\"===t?\"left\"===r:void 0},o.hasAxisInAltrPos=function(t,e){var r=e.side;return\"xaxis\"===t?\"top\"===r:\"yaxis\"===t?\"right\"===r:void 0},o.getLabelPad=function(t,e){var r=e.title.font.size,n=e.showticklabels;return\"xaxis\"===t?\"top\"===e.side?r*(1.5+(n?1:0))-10:r*(1.5+(n?.5:0))-10:\"yaxis\"===t?\"right\"===e.side?10+r*(1.5+(n?1:.5)):10+r*(1.5+(n?.5:0)):void 0},o.getTickPad=function(t){return\"outside\"===t.ticks?10+t.ticklen:15},o.getTickMarkLength=function(t){if(!t.ticks)return 0;var e=t.ticklen;return\"inside\"===t.ticks?-e:e},e.exports=function(t){return new i(t)}},{\"../../lib/str2rgbarray\":772,\"../cartesian/axes\":798}],838:[function(t,e,r){\"use strict\";var n=t(\"../../plot_api/edit_types\").overrideAll,a=t(\"./scene2d\"),i=t(\"../layout_attributes\"),o=t(\"../../constants/xmlns_namespaces\"),s=t(\"../cartesian/constants\"),l=t(\"../cartesian\"),c=t(\"../../components/fx/layout_attributes\"),u=t(\"../get_data\").getSubplotData;r.name=\"gl2d\",r.attr=[\"xaxis\",\"yaxis\"],r.idRoot=[\"x\",\"y\"],r.idRegex=s.idRegex,r.attrRegex=s.attrRegex,r.attributes=t(\"../cartesian/attributes\"),r.supplyLayoutDefaults=function(t,e,r){e._has(\"cartesian\")||l.supplyLayoutDefaults(t,e,r)},r.layoutAttrOverrides=n(l.layoutAttributes,\"plot\",\"from-root\"),r.baseLayoutAttrOverrides=n({plot_bgcolor:i.plot_bgcolor,hoverlabel:c.hoverlabel},\"plot\",\"nested\"),r.plot=function(t){for(var e=t._fullLayout,r=t._fullData,n=e._subplots.gl2d,i=0;i<n.length;i++){var o=n[i],s=e._plots[o],l=u(r,\"gl2d\",o),c=s._scene2d;void 0===c&&(c=new a({id:o,graphDiv:t,container:t.querySelector(\".gl-container\"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio},e),s._scene2d=c),c.plot(l,t.calcdata,e,t.layout)}},r.clean=function(t,e,r,n){for(var a=n._subplots.gl2d||[],i=0;i<a.length;i++){var o=a[i],s=n._plots[o];if(s._scene2d){var c=u(t,\"gl2d\",o);0===c.length&&(s._scene2d.destroy(),delete n._plots[o])}}l.clean.apply(this,arguments)},r.drawFramework=function(t){t._context.staticPlot||l.drawFramework(t)},r.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.gl2d,n=0;n<r.length;n++){var a=e._plots[r[n]]._scene2d,i=a.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:o.svg,\"xlink:href\":i,x:0,y:0,width:\"100%\",height:\"100%\",preserveAspectRatio:\"none\"}),a.destroy()}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.gl2d,n=0;n<r.length;n++){e._plots[r[n]]._scene2d.updateFx(e.dragmode)}}},{\"../../components/fx/layout_attributes\":656,\"../../constants/xmlns_namespaces\":725,\"../../plot_api/edit_types\":780,\"../cartesian\":811,\"../cartesian/attributes\":796,\"../cartesian/constants\":804,\"../get_data\":835,\"../layout_attributes\":852,\"./scene2d\":839}],839:[function(t,e,r){\"use strict\";var n,a,i=t(\"../../registry\"),o=t(\"../../plots/cartesian/axes\"),s=t(\"../../components/fx\"),l=t(\"gl-plot2d\"),c=t(\"gl-spikes2d\"),u=t(\"gl-select-box\"),h=t(\"webgl-context\"),f=t(\"./convert\"),p=t(\"./camera\"),d=t(\"../../lib/show_no_webgl_msg\"),g=t(\"../cartesian/constraints\"),m=g.enforce,v=g.clean,y=t(\"../cartesian/autorange\").doAutoRange,x=t(\"../../components/dragelement/helpers\"),b=x.drawMode,_=x.selectMode,w=[\"xaxis\",\"yaxis\"],T=t(\"../cartesian/constants\").SUBPLOT_PATTERN;function k(t,e){this.container=t.container,this.graphDiv=t.graphDiv,this.pixelRatio=t.plotGlPixelRatio||window.devicePixelRatio,this.id=t.id,this.staticPlot=!!t.staticPlot,this.scrollZoom=this.graphDiv._context._scrollZoom.cartesian,this.fullData=null,this.updateRefs(e),this.makeFramework(),this.stopped||(this.glplotOptions=f(this),this.glplotOptions.merge(e),this.glplot=l(this.glplotOptions),this.camera=p(this),this.traces={},this.spikes=c(this.glplot),this.selectBox=u(this.glplot,{innerFill:!1,outerFill:!0}),this.lastButtonState=0,this.pickResult=null,this.isMouseOver=!0,this.stopped=!1,this.redraw=this.draw.bind(this),this.redraw())}e.exports=k;var M=k.prototype;M.makeFramework=function(){if(this.staticPlot){if(!(a||(n=document.createElement(\"canvas\"),a=h({canvas:n,preserveDrawingBuffer:!1,premultipliedAlpha:!0,antialias:!0}))))throw new Error(\"Error creating static canvas/context for image server\");this.canvas=n,this.gl=a}else{var t=this.container.querySelector(\".gl-canvas-focus\"),e=h({canvas:t,preserveDrawingBuffer:!0,premultipliedAlpha:!0});if(!e)return d(this),void(this.stopped=!0);this.canvas=t,this.gl=e}var r=this.canvas;r.style.width=\"100%\",r.style.height=\"100%\",r.style.position=\"absolute\",r.style.top=\"0px\",r.style.left=\"0px\",r.style[\"pointer-events\"]=\"none\",this.updateSize(r);var i=this.svgContainer=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");i.style.position=\"absolute\",i.style.top=i.style.left=\"0px\",i.style.width=i.style.height=\"100%\",i.style[\"z-index\"]=20,i.style[\"pointer-events\"]=\"none\";var o=this.mouseContainer=document.createElement(\"div\");o.style.position=\"absolute\",o.style[\"pointer-events\"]=\"auto\",this.pickCanvas=this.container.querySelector(\".gl-canvas-pick\");var s=this.container;s.appendChild(i),s.appendChild(o);var l=this;o.addEventListener(\"mouseout\",(function(){l.isMouseOver=!1,l.unhover()})),o.addEventListener(\"mouseover\",(function(){l.isMouseOver=!0}))},M.toImage=function(t){t||(t=\"png\"),this.stopped=!0,this.staticPlot&&this.container.appendChild(n),this.updateSize(this.canvas);var e=this.glplot.gl,r=e.drawingBufferWidth,a=e.drawingBufferHeight;e.clearColor(1,1,1,0),e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.glplot.setDirty(),this.glplot.draw(),e.bindFramebuffer(e.FRAMEBUFFER,null);var i=new Uint8Array(r*a*4);e.readPixels(0,0,r,a,e.RGBA,e.UNSIGNED_BYTE,i);for(var o=0,s=a-1;o<s;++o,--s)for(var l=0;l<r;++l)for(var c=0;c<4;++c){var u=i[4*(r*o+l)+c];i[4*(r*o+l)+c]=i[4*(r*s+l)+c],i[4*(r*s+l)+c]=u}var h=document.createElement(\"canvas\");h.width=r,h.height=a;var f,p=h.getContext(\"2d\"),d=p.createImageData(r,a);switch(d.data.set(i),p.putImageData(d,0,0),t){case\"jpeg\":f=h.toDataURL(\"image/jpeg\");break;case\"webp\":f=h.toDataURL(\"image/webp\");break;default:f=h.toDataURL(\"image/png\")}return this.staticPlot&&this.container.removeChild(n),f},M.updateSize=function(t){t||(t=this.canvas);var e=this.pixelRatio,r=this.fullLayout,n=r.width,a=r.height,i=0|Math.ceil(e*n),o=0|Math.ceil(e*a);return t.width===i&&t.height===o||(t.width=i,t.height=o),t},M.computeTickMarks=function(){this.xaxis.setScale(),this.yaxis.setScale();for(var t=[o.calcTicks(this.xaxis),o.calcTicks(this.yaxis)],e=0;e<2;++e)for(var r=0;r<t[e].length;++r)t[e][r].text=t[e][r].text+\"\";return t},M.updateRefs=function(t){this.fullLayout=t;var e=this.id.match(T),r=\"xaxis\"+e[1],n=\"yaxis\"+e[2];this.xaxis=this.fullLayout[r],this.yaxis=this.fullLayout[n]},M.relayoutCallback=function(){var t=this.graphDiv,e=this.xaxis,r=this.yaxis,n=t.layout,a={},o=a[e._name+\".range\"]=e.range.slice(),s=a[r._name+\".range\"]=r.range.slice();a[e._name+\".autorange\"]=e.autorange,a[r._name+\".autorange\"]=r.autorange,i.call(\"_storeDirectGUIEdit\",t.layout,t._fullLayout._preGUI,a);var l=n[e._name];l.range=o,l.autorange=e.autorange;var c=n[r._name];c.range=s,c.autorange=r.autorange,a.lastInputTime=this.camera.lastInputTime,t.emit(\"plotly_relayout\",a)},M.cameraChanged=function(){var t=this.camera;this.glplot.setDataBox(this.calcDataBox());var e=this.computeTickMarks();(function(t,e){for(var r=0;r<2;++r){var n=t[r],a=e[r];if(n.length!==a.length)return!0;for(var i=0;i<n.length;++i)if(n[i].x!==a[i].x)return!0}return!1})(e,this.glplotOptions.ticks)&&(this.glplotOptions.ticks=e,this.glplotOptions.dataBox=t.dataBox,this.glplot.update(this.glplotOptions),this.handleAnnotations())},M.handleAnnotations=function(){for(var t=this.graphDiv,e=this.fullLayout.annotations,r=0;r<e.length;r++){var n=e[r];n.xref===this.xaxis._id&&n.yref===this.yaxis._id&&i.getComponentMethod(\"annotations\",\"drawOne\")(t,r)}},M.destroy=function(){if(this.glplot){var t=this.traces;t&&Object.keys(t).map((function(e){t[e].dispose(),delete t[e]})),this.glplot.dispose(),this.container.removeChild(this.svgContainer),this.container.removeChild(this.mouseContainer),this.fullData=null,this.glplot=null,this.stopped=!0,this.camera.mouseListener.enabled=!1,this.mouseContainer.removeEventListener(\"wheel\",this.camera.wheelListener),this.camera=null}},M.plot=function(t,e,r){var n=this.glplot;this.updateRefs(r),this.xaxis.clearCalc(),this.yaxis.clearCalc(),this.updateTraces(t,e),this.updateFx(r.dragmode);var a=r.width,i=r.height;this.updateSize(this.canvas);var o=this.glplotOptions;o.merge(r),o.screenBox=[0,0,a,i];var s={_fullLayout:{_axisConstraintGroups:this.graphDiv._fullLayout._axisConstraintGroups,xaxis:this.xaxis,yaxis:this.yaxis}};v(s,this.xaxis),v(s,this.yaxis);var l,c,u=r._size,h=this.xaxis.domain,f=this.yaxis.domain;for(o.viewBox=[u.l+h[0]*u.w,u.b+f[0]*u.h,a-u.r-(1-h[1])*u.w,i-u.t-(1-f[1])*u.h],this.mouseContainer.style.width=u.w*(h[1]-h[0])+\"px\",this.mouseContainer.style.height=u.h*(f[1]-f[0])+\"px\",this.mouseContainer.height=u.h*(f[1]-f[0]),this.mouseContainer.style.left=u.l+h[0]*u.w+\"px\",this.mouseContainer.style.top=u.t+(1-f[1])*u.h+\"px\",c=0;c<2;++c)(l=this[w[c]])._length=o.viewBox[c+2]-o.viewBox[c],y(this.graphDiv,l),l.setScale();m(s),o.ticks=this.computeTickMarks(),o.dataBox=this.calcDataBox(),o.merge(r),n.update(o),this.glplot.draw()},M.calcDataBox=function(){var t=this.xaxis,e=this.yaxis,r=t.range,n=e.range,a=t.r2l,i=e.r2l;return[a(r[0]),i(n[0]),a(r[1]),i(n[1])]},M.setRanges=function(t){var e=this.xaxis,r=this.yaxis,n=e.l2r,a=r.l2r;e.range=[n(t[0]),n(t[2])],r.range=[a(t[1]),a(t[3])]},M.updateTraces=function(t,e){var r,n,a,i=Object.keys(this.traces);this.fullData=t;t:for(r=0;r<i.length;r++){var o=i[r],s=this.traces[o];for(n=0;n<t.length;n++)if((a=t[n]).uid===o&&a.type===s.type)continue t;s.dispose(),delete this.traces[o]}for(r=0;r<t.length;r++){a=t[r];var l=e[r],c=this.traces[a.uid];c?c.update(a,l):(c=a._module.plot(this,a,l),this.traces[a.uid]=c)}this.glplot.objects.sort((function(t,e){return t._trace.index-e._trace.index}))},M.updateFx=function(t){_(t)||b(t)?(this.pickCanvas.style[\"pointer-events\"]=\"none\",this.mouseContainer.style[\"pointer-events\"]=\"none\"):(this.pickCanvas.style[\"pointer-events\"]=\"auto\",this.mouseContainer.style[\"pointer-events\"]=\"auto\"),this.mouseContainer.style.cursor=\"pan\"===t?\"move\":\"zoom\"===t?\"crosshair\":null},M.emitPointAction=function(t,e){for(var r,n=t.trace.uid,a=t.pointIndex,i=0;i<this.fullData.length;i++)this.fullData[i].uid===n&&(r=this.fullData[i]);var o={x:t.traceCoord[0],y:t.traceCoord[1],curveNumber:r.index,pointNumber:a,data:r._input,fullData:this.fullData,xaxis:this.xaxis,yaxis:this.yaxis};s.appendArrayPointValue(o,r,a),this.graphDiv.emit(e,{points:[o]})},M.draw=function(){if(!this.stopped){requestAnimationFrame(this.redraw);var t=this.glplot,e=this.camera,r=e.mouseListener,n=1===this.lastButtonState&&0===r.buttons,a=this.fullLayout;this.lastButtonState=r.buttons,this.cameraChanged();var i,o=r.x*t.pixelRatio,l=this.canvas.height-t.pixelRatio*r.y;if(e.boxEnabled&&\"zoom\"===a.dragmode){this.selectBox.enabled=!0;for(var c=this.selectBox.selectBox=[Math.min(e.boxStart[0],e.boxEnd[0]),Math.min(e.boxStart[1],e.boxEnd[1]),Math.max(e.boxStart[0],e.boxEnd[0]),Math.max(e.boxStart[1],e.boxEnd[1])],u=0;u<2;u++)e.boxStart[u]===e.boxEnd[u]&&(c[u]=t.dataBox[u],c[u+2]=t.dataBox[u+2]);t.setDirty()}else if(!e.panning&&this.isMouseOver){this.selectBox.enabled=!1;var h=a._size,f=this.xaxis.domain,p=this.yaxis.domain,d=(i=t.pick(o/t.pixelRatio+h.l+f[0]*h.w,l/t.pixelRatio-(h.t+(1-p[1])*h.h)))&&i.object._trace.handlePick(i);if(d&&n&&this.emitPointAction(d,\"plotly_click\"),i&&\"skip\"!==i.object._trace.hoverinfo&&a.hovermode&&d&&(!this.lastPickResult||this.lastPickResult.traceUid!==d.trace.uid||this.lastPickResult.dataCoord[0]!==d.dataCoord[0]||this.lastPickResult.dataCoord[1]!==d.dataCoord[1])){var g=d;this.lastPickResult={traceUid:d.trace?d.trace.uid:null,dataCoord:d.dataCoord.slice()},this.spikes.update({center:i.dataCoord}),g.screenCoord=[((t.viewBox[2]-t.viewBox[0])*(i.dataCoord[0]-t.dataBox[0])/(t.dataBox[2]-t.dataBox[0])+t.viewBox[0])/t.pixelRatio,(this.canvas.height-(t.viewBox[3]-t.viewBox[1])*(i.dataCoord[1]-t.dataBox[1])/(t.dataBox[3]-t.dataBox[1])-t.viewBox[1])/t.pixelRatio],this.emitPointAction(d,\"plotly_hover\");var m=this.fullData[g.trace.index]||{},v=g.pointIndex,y=s.castHoverinfo(m,a,v);if(y&&\"all\"!==y){var x=y.split(\"+\");-1===x.indexOf(\"x\")&&(g.traceCoord[0]=void 0),-1===x.indexOf(\"y\")&&(g.traceCoord[1]=void 0),-1===x.indexOf(\"z\")&&(g.traceCoord[2]=void 0),-1===x.indexOf(\"text\")&&(g.textLabel=void 0),-1===x.indexOf(\"name\")&&(g.name=void 0)}s.loneHover({x:g.screenCoord[0],y:g.screenCoord[1],xLabel:this.hoverFormatter(\"xaxis\",g.traceCoord[0]),yLabel:this.hoverFormatter(\"yaxis\",g.traceCoord[1]),zLabel:g.traceCoord[2],text:g.textLabel,name:g.name,color:s.castHoverOption(m,v,\"bgcolor\")||g.color,borderColor:s.castHoverOption(m,v,\"bordercolor\"),fontFamily:s.castHoverOption(m,v,\"font.family\"),fontSize:s.castHoverOption(m,v,\"font.size\"),fontColor:s.castHoverOption(m,v,\"font.color\"),nameLength:s.castHoverOption(m,v,\"namelength\"),textAlign:s.castHoverOption(m,v,\"align\")},{container:this.svgContainer,gd:this.graphDiv})}}i||this.unhover(),t.draw()}},M.unhover=function(){this.lastPickResult&&(this.spikes.update({}),this.lastPickResult=null,this.graphDiv.emit(\"plotly_unhover\"),s.loneUnhover(this.svgContainer))},M.hoverFormatter=function(t,e){if(void 0!==e){var r=this[t];return o.tickText(r,r.c2l(e),\"hover\").text}}},{\"../../components/dragelement/helpers\":633,\"../../components/fx\":655,\"../../lib/show_no_webgl_msg\":770,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"../cartesian/autorange\":797,\"../cartesian/constants\":804,\"../cartesian/constraints\":805,\"./camera\":836,\"./convert\":837,\"gl-plot2d\":298,\"gl-select-box\":310,\"gl-spikes2d\":319,\"webgl-context\":578}],840:[function(t,e,r){\"use strict\";var n=t(\"../../plot_api/edit_types\").overrideAll,a=t(\"../../components/fx/layout_attributes\"),i=t(\"./scene\"),o=t(\"../get_data\").getSubplotData,s=t(\"../../lib\"),l=t(\"../../constants/xmlns_namespaces\");r.name=\"gl3d\",r.attr=\"scene\",r.idRoot=\"scene\",r.idRegex=r.attrRegex=s.counterRegex(\"scene\"),r.attributes=t(\"./layout/attributes\"),r.layoutAttributes=t(\"./layout/layout_attributes\"),r.baseLayoutAttrOverrides=n({hoverlabel:a.hoverlabel},\"plot\",\"nested\"),r.supplyLayoutDefaults=t(\"./layout/defaults\"),r.plot=function(t){for(var e=t._fullLayout,r=t._fullData,n=e._subplots.gl3d,a=0;a<n.length;a++){var s=n[a],l=o(r,\"gl3d\",s),c=e[s],u=c.camera,h=c._scene;h||(h=new i({id:s,graphDiv:t,container:t.querySelector(\".gl-container\"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio,camera:u},e),c._scene=h),h.viewInitial||(h.viewInitial={up:{x:u.up.x,y:u.up.y,z:u.up.z},eye:{x:u.eye.x,y:u.eye.y,z:u.eye.z},center:{x:u.center.x,y:u.center.y,z:u.center.z}}),h.plot(l,e,t.layout)}},r.clean=function(t,e,r,n){for(var a=n._subplots.gl3d||[],i=0;i<a.length;i++){var o=a[i];!e[o]&&n[o]._scene&&(n[o]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(\".annotation-\"+o).remove())}},r.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=e._size,a=0;a<r.length;a++){var i=e[r[a]],o=i.domain,s=i._scene,c=s.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:l.svg,\"xlink:href\":c,x:n.l+n.w*o.x[0],y:n.t+n.h*(1-o.y[1]),width:n.w*(o.x[1]-o.x[0]),height:n.h*(o.y[1]-o.y[0]),preserveAspectRatio:\"none\"}),s.destroy()}},r.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var e=t.substr(5);return\"1\"===e&&(e=\"\"),\"scene\"+e}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=0;n<r.length;n++){e[r[n]]._scene.updateFx(e.dragmode,e.hovermode)}}},{\"../../components/fx/layout_attributes\":656,\"../../constants/xmlns_namespaces\":725,\"../../lib\":749,\"../../plot_api/edit_types\":780,\"../get_data\":835,\"./layout/attributes\":841,\"./layout/defaults\":845,\"./layout/layout_attributes\":846,\"./scene\":850}],841:[function(t,e,r){\"use strict\";e.exports={scene:{valType:\"subplotid\",dflt:\"scene\",editType:\"calc+clearAxisTypes\"}}},{}],842:[function(t,e,r){\"use strict\";var n=t(\"../../../components/color\"),a=t(\"../../cartesian/layout_attributes\"),i=t(\"../../../lib/extend\").extendFlat,o=t(\"../../../plot_api/edit_types\").overrideAll;e.exports=o({visible:a.visible,showspikes:{valType:\"boolean\",dflt:!0},spikesides:{valType:\"boolean\",dflt:!0},spikethickness:{valType:\"number\",min:0,dflt:2},spikecolor:{valType:\"color\",dflt:n.defaultLine},showbackground:{valType:\"boolean\",dflt:!1},backgroundcolor:{valType:\"color\",dflt:\"rgba(204, 204, 204, 0.5)\"},showaxeslabels:{valType:\"boolean\",dflt:!0},color:a.color,categoryorder:a.categoryorder,categoryarray:a.categoryarray,title:{text:a.title.text,font:a.title.font},type:i({},a.type,{values:[\"-\",\"linear\",\"log\",\"date\",\"category\"]}),autorange:a.autorange,rangemode:a.rangemode,range:i({},a.range,{items:[{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}},{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}}],anim:!1}),tickmode:a.tickmode,nticks:a.nticks,tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:a.ticks,mirror:a.mirror,ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,showticklabels:a.showticklabels,tickfont:a.tickfont,tickangle:a.tickangle,tickprefix:a.tickprefix,showtickprefix:a.showtickprefix,ticksuffix:a.ticksuffix,showticksuffix:a.showticksuffix,showexponent:a.showexponent,exponentformat:a.exponentformat,minexponent:a.minexponent,separatethousands:a.separatethousands,tickformat:a.tickformat,tickformatstops:a.tickformatstops,hoverformat:a.hoverformat,showline:a.showline,linecolor:a.linecolor,linewidth:a.linewidth,showgrid:a.showgrid,gridcolor:i({},a.gridcolor,{dflt:\"rgb(204, 204, 204)\"}),gridwidth:a.gridwidth,zeroline:a.zeroline,zerolinecolor:a.zerolinecolor,zerolinewidth:a.zerolinewidth,_deprecated:{title:a._deprecated.title,titlefont:a._deprecated.titlefont}},\"plot\",\"from-root\")},{\"../../../components/color\":615,\"../../../lib/extend\":739,\"../../../plot_api/edit_types\":780,\"../../cartesian/layout_attributes\":812}],843:[function(t,e,r){\"use strict\";var n=t(\"tinycolor2\").mix,a=t(\"../../../lib\"),i=t(\"../../../plot_api/plot_template\"),o=t(\"./axis_attributes\"),s=t(\"../../cartesian/type_defaults\"),l=t(\"../../cartesian/axis_defaults\"),c=[\"xaxis\",\"yaxis\",\"zaxis\"];e.exports=function(t,e,r){var u,h;function f(t,e){return a.coerce(u,h,o,t,e)}for(var p=0;p<c.length;p++){var d=c[p];u=t[d]||{},(h=i.newContainer(e,d))._id=d[0]+r.scene,h._name=d,s(u,h,f,r),l(u,h,f,{font:r.font,letter:d[0],data:r.data,showGrid:!0,noTickson:!0,noTicklabelmode:!0,bgColor:r.bgColor,calendar:r.calendar},r.fullLayout),f(\"gridcolor\",n(h.color,r.bgColor,13600/187).toRgbString()),f(\"title.text\",d[0]),h.setScale=a.noop,f(\"showspikes\")&&(f(\"spikesides\"),f(\"spikethickness\"),f(\"spikecolor\",h.color)),f(\"showaxeslabels\"),f(\"showbackground\")&&f(\"backgroundcolor\")}}},{\"../../../lib\":749,\"../../../plot_api/plot_template\":787,\"../../cartesian/axis_defaults\":800,\"../../cartesian/type_defaults\":823,\"./axis_attributes\":842,tinycolor2:548}],844:[function(t,e,r){\"use strict\";var n=t(\"../../../lib/str2rgbarray\"),a=t(\"../../../lib\"),i=[\"xaxis\",\"yaxis\",\"zaxis\"];function o(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=[\"x\",\"y\",\"z\"],this.labelEnable=[!0,!0,!0],this.labelFont=[\"Open Sans\",\"Open Sans\",\"Open Sans\"],this.labelSize=[20,20,20],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}o.prototype.merge=function(t,e){for(var r=0;r<3;++r){var o=e[i[r]];o.visible?(this.labels[r]=t._meta?a.templateString(o.title.text,t._meta):o.title.text,\"font\"in o.title&&(o.title.font.color&&(this.labelColor[r]=n(o.title.font.color)),o.title.font.family&&(this.labelFont[r]=o.title.font.family),o.title.font.size&&(this.labelSize[r]=o.title.font.size)),\"showline\"in o&&(this.lineEnable[r]=o.showline),\"linecolor\"in o&&(this.lineColor[r]=n(o.linecolor)),\"linewidth\"in o&&(this.lineWidth[r]=o.linewidth),\"showgrid\"in o&&(this.gridEnable[r]=o.showgrid),\"gridcolor\"in o&&(this.gridColor[r]=n(o.gridcolor)),\"gridwidth\"in o&&(this.gridWidth[r]=o.gridwidth),\"log\"===o.type?this.zeroEnable[r]=!1:\"zeroline\"in o&&(this.zeroEnable[r]=o.zeroline),\"zerolinecolor\"in o&&(this.zeroLineColor[r]=n(o.zerolinecolor)),\"zerolinewidth\"in o&&(this.zeroLineWidth[r]=o.zerolinewidth),\"ticks\"in o&&o.ticks?this.lineTickEnable[r]=!0:this.lineTickEnable[r]=!1,\"ticklen\"in o&&(this.lineTickLength[r]=this._defaultLineTickLength[r]=o.ticklen),\"tickcolor\"in o&&(this.lineTickColor[r]=n(o.tickcolor)),\"tickwidth\"in o&&(this.lineTickWidth[r]=o.tickwidth),\"tickangle\"in o&&(this.tickAngle[r]=\"auto\"===o.tickangle?-3600:Math.PI*-o.tickangle/180),\"showticklabels\"in o&&(this.tickEnable[r]=o.showticklabels),\"tickfont\"in o&&(o.tickfont.color&&(this.tickColor[r]=n(o.tickfont.color)),o.tickfont.family&&(this.tickFont[r]=o.tickfont.family),o.tickfont.size&&(this.tickSize[r]=o.tickfont.size)),\"mirror\"in o?-1!==[\"ticks\",\"all\",\"allticks\"].indexOf(o.mirror)?(this.lineTickMirror[r]=!0,this.lineMirror[r]=!0):!0===o.mirror?(this.lineTickMirror[r]=!1,this.lineMirror[r]=!0):(this.lineTickMirror[r]=!1,this.lineMirror[r]=!1):this.lineMirror[r]=!1,\"showbackground\"in o&&!1!==o.showbackground?(this.backgroundEnable[r]=!0,this.backgroundColor[r]=n(o.backgroundcolor)):this.backgroundEnable[r]=!1):(this.tickEnable[r]=!1,this.labelEnable[r]=!1,this.lineEnable[r]=!1,this.lineTickEnable[r]=!1,this.gridEnable[r]=!1,this.zeroEnable[r]=!1,this.backgroundEnable[r]=!1)}},e.exports=function(t,e){var r=new o;return r.merge(t,e),r}},{\"../../../lib\":749,\"../../../lib/str2rgbarray\":772}],845:[function(t,e,r){\"use strict\";var n=t(\"../../../lib\"),a=t(\"../../../components/color\"),i=t(\"../../../registry\"),o=t(\"../../subplot_defaults\"),s=t(\"./axis_defaults\"),l=t(\"./layout_attributes\"),c=t(\"../../get_data\").getSubplotData;function u(t,e,r,n){for(var o=r(\"bgcolor\"),l=a.combine(o,n.paper_bgcolor),u=[\"up\",\"center\",\"eye\"],h=0;h<u.length;h++)r(\"camera.\"+u[h]+\".x\"),r(\"camera.\"+u[h]+\".y\"),r(\"camera.\"+u[h]+\".z\");r(\"camera.projection.type\");var f=!!r(\"aspectratio.x\")&&!!r(\"aspectratio.y\")&&!!r(\"aspectratio.z\"),p=r(\"aspectmode\",f?\"manual\":\"auto\");f||(t.aspectratio=e.aspectratio={x:1,y:1,z:1},\"manual\"===p&&(e.aspectmode=\"auto\"),t.aspectmode=e.aspectmode);var d=c(n.fullData,\"gl3d\",n.id);s(t,e,{font:n.font,scene:n.id,data:d,bgColor:l,calendar:n.calendar,fullLayout:n.fullLayout}),i.getComponentMethod(\"annotations3d\",\"handleDefaults\")(t,e,n);var g=n.getDfltFromLayout(\"dragmode\");if(!1!==g&&!g)if(g=\"orbit\",t.camera&&t.camera.up){var m=t.camera.up.x,v=t.camera.up.y,y=t.camera.up.z;0!==y&&(m&&v&&y?y/Math.sqrt(m*m+v*v+y*y)>.999&&(g=\"turntable\"):g=\"turntable\")}else g=\"turntable\";r(\"dragmode\",g),r(\"hovermode\",n.getDfltFromLayout(\"hovermode\"))}e.exports=function(t,e,r){var a=e._basePlotModules.length>1;o(t,e,r,{type:\"gl3d\",attributes:l,handleDefaults:u,fullLayout:e,font:e.font,fullData:r,getDfltFromLayout:function(e){if(!a)return n.validate(t[e],l[e])?t[e]:void 0},paper_bgcolor:e.paper_bgcolor,calendar:e.calendar})}},{\"../../../components/color\":615,\"../../../lib\":749,\"../../../registry\":881,\"../../get_data\":835,\"../../subplot_defaults\":875,\"./axis_defaults\":843,\"./layout_attributes\":846}],846:[function(t,e,r){\"use strict\";var n=t(\"./axis_attributes\"),a=t(\"../../domain\").attributes,i=t(\"../../../lib/extend\").extendFlat,o=t(\"../../../lib\").counterRegex;function s(t,e,r){return{x:{valType:\"number\",dflt:t,editType:\"camera\"},y:{valType:\"number\",dflt:e,editType:\"camera\"},z:{valType:\"number\",dflt:r,editType:\"camera\"},editType:\"camera\"}}e.exports={_arrayAttrRegexps:[o(\"scene\",\".annotations\",!0)],bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"plot\"},camera:{up:i(s(0,0,1),{}),center:i(s(0,0,0),{}),eye:i(s(1.25,1.25,1.25),{}),projection:{type:{valType:\"enumerated\",values:[\"perspective\",\"orthographic\"],dflt:\"perspective\",editType:\"calc\"},editType:\"calc\"},editType:\"camera\"},domain:a({name:\"scene\",editType:\"plot\"}),aspectmode:{valType:\"enumerated\",values:[\"auto\",\"cube\",\"data\",\"manual\"],dflt:\"auto\",editType:\"plot\",impliedEdits:{\"aspectratio.x\":void 0,\"aspectratio.y\":void 0,\"aspectratio.z\":void 0}},aspectratio:{x:{valType:\"number\",min:0,editType:\"plot\",impliedEdits:{\"^aspectmode\":\"manual\"}},y:{valType:\"number\",min:0,editType:\"plot\",impliedEdits:{\"^aspectmode\":\"manual\"}},z:{valType:\"number\",min:0,editType:\"plot\",impliedEdits:{\"^aspectmode\":\"manual\"}},editType:\"plot\",impliedEdits:{aspectmode:\"manual\"}},xaxis:n,yaxis:n,zaxis:n,dragmode:{valType:\"enumerated\",values:[\"orbit\",\"turntable\",\"zoom\",\"pan\",!1],editType:\"plot\"},hovermode:{valType:\"enumerated\",values:[\"closest\",!1],dflt:\"closest\",editType:\"modebar\"},uirevision:{valType:\"any\",editType:\"none\"},editType:\"plot\",_deprecated:{cameraposition:{valType:\"info_array\",editType:\"camera\"}}}},{\"../../../lib\":749,\"../../../lib/extend\":739,\"../../domain\":825,\"./axis_attributes\":842}],847:[function(t,e,r){\"use strict\";var n=t(\"../../../lib/str2rgbarray\"),a=[\"xaxis\",\"yaxis\",\"zaxis\"];function i(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}i.prototype.merge=function(t){for(var e=0;e<3;++e){var r=t[a[e]];r.visible?(this.enabled[e]=r.showspikes,this.colors[e]=n(r.spikecolor),this.drawSides[e]=r.spikesides,this.lineWidth[e]=r.spikethickness):(this.enabled[e]=!1,this.drawSides[e]=!1)}},e.exports=function(t){var e=new i;return e.merge(t),e}},{\"../../../lib/str2rgbarray\":772}],848:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=t.axesOptions,r=t.glplot.axesPixels,s=t.fullSceneLayout,l=[[],[],[]],c=0;c<3;++c){var u=s[i[c]];if(u._length=(r[c].hi-r[c].lo)*r[c].pixelsPerDataUnit/t.dataScale[c],Math.abs(u._length)===1/0||isNaN(u._length))l[c]=[];else{u._input_range=u.range.slice(),u.range[0]=r[c].lo/t.dataScale[c],u.range[1]=r[c].hi/t.dataScale[c],u._m=1/(t.dataScale[c]*r[c].pixelsPerDataUnit),u.range[0]===u.range[1]&&(u.range[0]-=1,u.range[1]+=1);var h=u.tickmode;if(\"auto\"===u.tickmode){u.tickmode=\"linear\";var f=u.nticks||a.constrain(u._length/40,4,9);n.autoTicks(u,Math.abs(u.range[1]-u.range[0])/f)}for(var p=n.calcTicks(u,{msUTC:!0}),d=0;d<p.length;++d)p[d].x=p[d].x*t.dataScale[c],\"date\"===u.type&&(p[d].text=p[d].text.replace(/\\<br\\>/g,\" \"));l[c]=p,u.tickmode=h}}e.ticks=l;for(c=0;c<3;++c){o[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]);for(d=0;d<2;++d)e.bounds[d][c]=t.glplot.bounds[d][c]}t.contourLevels=function(t){for(var e=new Array(3),r=0;r<3;++r){for(var n=t[r],a=new Array(n.length),i=0;i<n.length;++i)a[i]=n[i].x;e[r]=a}return e}(l)};var n=t(\"../../cartesian/axes\"),a=t(\"../../../lib\"),i=[\"xaxis\",\"yaxis\",\"zaxis\"],o=[0,0,0]},{\"../../../lib\":749,\"../../cartesian/axes\":798}],849:[function(t,e,r){\"use strict\";function n(t,e){var r,n,a=[0,0,0,0];for(r=0;r<4;++r)for(n=0;n<4;++n)a[n]+=t[4*r+n]*e[r];return a}e.exports=function(t,e){return n(t.projection,n(t.view,n(t.model,[e[0],e[1],e[2],1])))}},{}],850:[function(t,e,r){\"use strict\";var n,a,i=t(\"gl-plot3d\"),o=i.createCamera,s=i.createScene,l=t(\"webgl-context\"),c=t(\"has-passive-events\"),u=t(\"../../registry\"),h=t(\"../../lib\"),f=t(\"../../plots/cartesian/axes\"),p=t(\"../../components/fx\"),d=t(\"../../lib/str2rgbarray\"),g=t(\"../../lib/show_no_webgl_msg\"),m=t(\"./project\"),v=t(\"./layout/convert\"),y=t(\"./layout/spikes\"),x=t(\"./layout/tick_marks\"),b=t(\"is-mobile\")({tablet:!0,featureDetect:!0});function _(t,e){var r=document.createElement(\"div\"),n=t.container;this.graphDiv=t.graphDiv;var a=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");a.style.position=\"absolute\",a.style.top=a.style.left=\"0px\",a.style.width=a.style.height=\"100%\",a.style[\"z-index\"]=20,a.style[\"pointer-events\"]=\"none\",r.appendChild(a),this.svgContainer=a,r.id=t.id,r.style.position=\"absolute\",r.style.top=r.style.left=\"0px\",r.style.width=r.style.height=\"100%\",n.appendChild(r),this.fullLayout=e,this.id=t.id||\"scene\",this.fullSceneLayout=e[this.id],this.plotArgs=[[],{},{}],this.axesOptions=v(e,e[this.id]),this.spikeOptions=y(e[this.id]),this.container=r,this.staticMode=!!t.staticPlot,this.pixelRatio=this.pixelRatio||t.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=u.getComponentMethod(\"annotations3d\",\"convert\"),this.drawAnnotations=u.getComponentMethod(\"annotations3d\",\"draw\"),this.initializeGLPlot()}var w=_.prototype;w.prepareOptions=function(){var t={canvas:this.canvas,gl:this.gl,glOptions:{preserveDrawingBuffer:b,premultipliedAlpha:!0,antialias:!0},container:this.container,axes:this.axesOptions,spikes:this.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:this.camera,pixelRatio:this.pixelRatio};if(this.staticMode){if(!(a||(n=document.createElement(\"canvas\"),a=l({canvas:n,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}))))throw new Error(\"error creating static canvas/context for image server\");t.gl=a,t.canvas=n}return t},w.tryCreatePlot=function(){var t=this.prepareOptions(),e=!0;try{this.glplot=s(t)}catch(r){if(this.staticMode)e=!1;else try{h.warn([\"webgl setup failed possibly due to\",b?\"disabling\":\"enabling\",\"preserveDrawingBuffer config.\",\"The device may not be supported by is-mobile module!\",\"Inverting preserveDrawingBuffer option in second attempt to create webgl scene.\"].join(\" \")),b=t.glOptions.preserveDrawingBuffer=!t.glOptions.preserveDrawingBuffer,this.glplot=s(t)}catch(t){e=!1}}return e},w.initializeGLCamera=function(){var t=this.fullSceneLayout.camera,e=\"orthographic\"===t.projection.type;this.camera=o(this.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:e,zoomMin:.01,zoomMax:100,mode:\"orbit\"})},w.initializeGLPlot=function(){var t=this;if(t.initializeGLCamera(),!t.tryCreatePlot())return g(t);t.traces={},t.make4thDimension();var e=t.graphDiv,r=e.layout,n=function(){var e={};return t.isCameraChanged(r)&&(e[t.id+\".camera\"]=t.getCamera()),t.isAspectChanged(r)&&(e[t.id+\".aspectratio\"]=t.glplot.getAspectratio(),\"manual\"!==r[t.id].aspectmode&&(t.fullSceneLayout.aspectmode=r[t.id].aspectmode=e[t.id+\".aspectmode\"]=\"manual\")),e},a=function(t){if(!1!==t.fullSceneLayout.dragmode){var e=n();t.saveLayout(r),t.graphDiv.emit(\"plotly_relayout\",e)}};return t.glplot.canvas.addEventListener(\"mouseup\",(function(){a(t)})),t.glplot.canvas.addEventListener(\"wheel\",(function(r){if(e._context._scrollZoom.gl3d){if(t.camera._ortho){var n=r.deltaX>r.deltaY?1.1:1/1.1,i=t.glplot.getAspectratio();t.glplot.setAspectratio({x:n*i.x,y:n*i.y,z:n*i.z})}a(t)}}),!!c&&{passive:!1}),t.glplot.canvas.addEventListener(\"mousemove\",(function(){if(!1!==t.fullSceneLayout.dragmode&&0!==t.camera.mouseListener.buttons){var e=n();t.graphDiv.emit(\"plotly_relayouting\",e)}})),t.staticMode||t.glplot.canvas.addEventListener(\"webglcontextlost\",(function(r){e&&e.emit&&e.emit(\"plotly_webglcontextlost\",{event:r,layer:t.id})}),!1),t.glplot.oncontextloss=function(){t.recoverContext()},t.glplot.onrender=function(){t.render()},!0},w.render=function(){var t,e=this,r=e.graphDiv,n=e.svgContainer,a=e.container.getBoundingClientRect(),i=a.width,o=a.height;n.setAttributeNS(null,\"viewBox\",\"0 0 \"+i+\" \"+o),n.setAttributeNS(null,\"width\",i),n.setAttributeNS(null,\"height\",o),x(e),e.glplot.axes.update(e.axesOptions);for(var s,l=Object.keys(e.traces),c=null,u=e.glplot.selection,d=0;d<l.length;++d)\"skip\"!==(t=e.traces[l[d]]).data.hoverinfo&&t.handlePick(u)&&(c=t),t.setContourLevels&&t.setContourLevels();function g(t,r){var n=e.fullSceneLayout[t];return f.tickText(n,n.d2l(r),\"hover\").text}if(null!==c){var v=m(e.glplot.cameraParams,u.dataCoordinate);t=c.data;var y,b=r._fullData[t.index],_=u.index,w={xLabel:g(\"xaxis\",u.traceCoordinate[0]),yLabel:g(\"yaxis\",u.traceCoordinate[1]),zLabel:g(\"zaxis\",u.traceCoordinate[2])},T=p.castHoverinfo(b,e.fullLayout,_),k=(T||\"\").split(\"+\"),M=T&&\"all\"===T;b.hovertemplate||M||(-1===k.indexOf(\"x\")&&(w.xLabel=void 0),-1===k.indexOf(\"y\")&&(w.yLabel=void 0),-1===k.indexOf(\"z\")&&(w.zLabel=void 0),-1===k.indexOf(\"text\")&&(u.textLabel=void 0),-1===k.indexOf(\"name\")&&(c.name=void 0));var A=[];\"cone\"===t.type||\"streamtube\"===t.type?(w.uLabel=g(\"xaxis\",u.traceCoordinate[3]),(M||-1!==k.indexOf(\"u\"))&&A.push(\"u: \"+w.uLabel),w.vLabel=g(\"yaxis\",u.traceCoordinate[4]),(M||-1!==k.indexOf(\"v\"))&&A.push(\"v: \"+w.vLabel),w.wLabel=g(\"zaxis\",u.traceCoordinate[5]),(M||-1!==k.indexOf(\"w\"))&&A.push(\"w: \"+w.wLabel),w.normLabel=u.traceCoordinate[6].toPrecision(3),(M||-1!==k.indexOf(\"norm\"))&&A.push(\"norm: \"+w.normLabel),\"streamtube\"===t.type&&(w.divergenceLabel=u.traceCoordinate[7].toPrecision(3),(M||-1!==k.indexOf(\"divergence\"))&&A.push(\"divergence: \"+w.divergenceLabel)),u.textLabel&&A.push(u.textLabel),y=A.join(\"<br>\")):\"isosurface\"===t.type||\"volume\"===t.type?(w.valueLabel=f.tickText(e._mockAxis,e._mockAxis.d2l(u.traceCoordinate[3]),\"hover\").text,A.push(\"value: \"+w.valueLabel),u.textLabel&&A.push(u.textLabel),y=A.join(\"<br>\")):y=u.textLabel;var S={x:u.traceCoordinate[0],y:u.traceCoordinate[1],z:u.traceCoordinate[2],data:b._input,fullData:b,curveNumber:b.index,pointNumber:_};p.appendArrayPointValue(S,b,_),t._module.eventData&&(S=b._module.eventData(S,u,b,{},_));var E={points:[S]};e.fullSceneLayout.hovermode&&p.loneHover({trace:b,x:(.5+.5*v[0]/v[3])*i,y:(.5-.5*v[1]/v[3])*o,xLabel:w.xLabel,yLabel:w.yLabel,zLabel:w.zLabel,text:y,name:c.name,color:p.castHoverOption(b,_,\"bgcolor\")||c.color,borderColor:p.castHoverOption(b,_,\"bordercolor\"),fontFamily:p.castHoverOption(b,_,\"font.family\"),fontSize:p.castHoverOption(b,_,\"font.size\"),fontColor:p.castHoverOption(b,_,\"font.color\"),nameLength:p.castHoverOption(b,_,\"namelength\"),textAlign:p.castHoverOption(b,_,\"align\"),hovertemplate:h.castOption(b,_,\"hovertemplate\"),hovertemplateLabels:h.extendFlat({},S,w),eventData:[S]},{container:n,gd:r}),u.buttons&&u.distance<5?r.emit(\"plotly_click\",E):r.emit(\"plotly_hover\",E),s=E}else p.loneUnhover(n),r.emit(\"plotly_unhover\",s);e.drawAnnotations(e)},w.recoverContext=function(){var t=this;t.glplot.dispose();var e=function(){t.glplot.gl.isContextLost()?requestAnimationFrame(e):t.initializeGLPlot()?t.plot.apply(t,t.plotArgs):h.error(\"Catastrophic and unrecoverable WebGL error. Context lost.\")};requestAnimationFrame(e)};var T=[\"xaxis\",\"yaxis\",\"zaxis\"];function k(t,e,r){for(var n=t.fullSceneLayout,a=0;a<3;a++){var i=T[a],o=i.charAt(0),s=n[i],l=e[o],c=e[o+\"calendar\"],u=e[\"_\"+o+\"length\"];if(h.isArrayOrTypedArray(l))for(var f,p=0;p<(u||l.length);p++)if(h.isArrayOrTypedArray(l[p]))for(var d=0;d<l[p].length;++d)f=s.d2l(l[p][d],0,c),!isNaN(f)&&isFinite(f)&&(r[0][a]=Math.min(r[0][a],f),r[1][a]=Math.max(r[1][a],f));else f=s.d2l(l[p],0,c),!isNaN(f)&&isFinite(f)&&(r[0][a]=Math.min(r[0][a],f),r[1][a]=Math.max(r[1][a],f));else r[0][a]=Math.min(r[0][a],0),r[1][a]=Math.max(r[1][a],u-1)}}w.plot=function(t,e,r){if(this.plotArgs=[t,e,r],!this.glplot.contextLost){var n,a,i,o,s,l,c=e[this.id],u=r[this.id];this.fullLayout=e,this.fullSceneLayout=c,this.axesOptions.merge(e,c),this.spikeOptions.merge(c),this.setViewport(c),this.updateFx(c.dragmode,c.hovermode),this.camera.enableWheel=this.graphDiv._context._scrollZoom.gl3d,this.glplot.setClearColor(d(c.bgcolor)),this.setConvert(s),t?Array.isArray(t)||(t=[t]):t=[];var h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(i=0;i<t.length;++i)!0===(n=t[i]).visible&&0!==n._length&&k(this,n,h);!function(t,e){for(var r=t.fullSceneLayout,n=r.annotations||[],a=0;a<3;a++)for(var i=T[a],o=i.charAt(0),s=r[i],l=0;l<n.length;l++){var c=n[l];if(c.visible){var u=s.r2l(c[o]);!isNaN(u)&&isFinite(u)&&(e[0][a]=Math.min(e[0][a],u),e[1][a]=Math.max(e[1][a],u))}}}(this,h);var f=[1,1,1];for(o=0;o<3;++o)h[1][o]===h[0][o]?f[o]=1:f[o]=1/(h[1][o]-h[0][o]);for(this.dataScale=f,this.convertAnnotations(this),i=0;i<t.length;++i)!0===(n=t[i]).visible&&0!==n._length&&((a=this.traces[n.uid])?a.data.type===n.type?a.update(n):(a.dispose(),a=n._module.plot(this,n),this.traces[n.uid]=a):(a=n._module.plot(this,n),this.traces[n.uid]=a),a.name=n.name);var p=Object.keys(this.traces);t:for(i=0;i<p.length;++i){for(o=0;o<t.length;++o)if(t[o].uid===p[i]&&!0===t[o].visible&&0!==t[o]._length)continue t;(a=this.traces[p[i]]).dispose(),delete this.traces[p[i]]}this.glplot.objects.sort((function(t,e){return t._trace.data.index-e._trace.data.index}));var g,m=[[0,0,0],[0,0,0]],v=[],y={};for(i=0;i<3;++i){if((l=(s=c[T[i]]).type)in y?(y[l].acc*=f[i],y[l].count+=1):y[l]={acc:f[i],count:1},s.autorange){m[0][i]=1/0,m[1][i]=-1/0;var x=this.glplot.objects,b=this.fullSceneLayout.annotations||[],_=s._name.charAt(0);for(o=0;o<x.length;o++){var w=x[o],M=w.bounds,A=w._trace.data._pad||0;\"ErrorBars\"===w.constructor.name&&s._lowerLogErrorBound?m[0][i]=Math.min(m[0][i],s._lowerLogErrorBound):m[0][i]=Math.min(m[0][i],M[0][i]/f[i]-A),m[1][i]=Math.max(m[1][i],M[1][i]/f[i]+A)}for(o=0;o<b.length;o++){var S=b[o];if(S.visible){var E=s.r2l(S[_]);m[0][i]=Math.min(m[0][i],E),m[1][i]=Math.max(m[1][i],E)}}if(\"rangemode\"in s&&\"tozero\"===s.rangemode&&(m[0][i]=Math.min(m[0][i],0),m[1][i]=Math.max(m[1][i],0)),m[0][i]>m[1][i])m[0][i]=-1,m[1][i]=1;else{var C=m[1][i]-m[0][i];m[0][i]-=C/32,m[1][i]+=C/32}if(\"reversed\"===s.autorange){var L=m[0][i];m[0][i]=m[1][i],m[1][i]=L}}else{var P=s.range;m[0][i]=s.r2l(P[0]),m[1][i]=s.r2l(P[1])}m[0][i]===m[1][i]&&(m[0][i]-=1,m[1][i]+=1),v[i]=m[1][i]-m[0][i],this.glplot.setBounds(i,{min:m[0][i]*f[i],max:m[1][i]*f[i]})}var I=c.aspectmode;if(\"cube\"===I)g=[1,1,1];else if(\"manual\"===I){var z=c.aspectratio;g=[z.x,z.y,z.z]}else{if(\"auto\"!==I&&\"data\"!==I)throw new Error(\"scene.js aspectRatio was not one of the enumerated types\");var O=[1,1,1];for(i=0;i<3;++i){var D=y[l=(s=c[T[i]]).type];O[i]=Math.pow(D.acc,1/D.count)/f[i]}g=\"data\"===I||Math.max.apply(null,O)/Math.min.apply(null,O)<=4?O:[1,1,1]}c.aspectratio.x=u.aspectratio.x=g[0],c.aspectratio.y=u.aspectratio.y=g[1],c.aspectratio.z=u.aspectratio.z=g[2],this.glplot.setAspectratio(c.aspectratio),this.viewInitial.aspectratio||(this.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),this.viewInitial.aspectmode||(this.viewInitial.aspectmode=c.aspectmode);var R=c.domain||null,F=e._size||null;if(R&&F){var B=this.container.style;B.position=\"absolute\",B.left=F.l+R.x[0]*F.w+\"px\",B.top=F.t+(1-R.y[1])*F.h+\"px\",B.width=F.w*(R.x[1]-R.x[0])+\"px\",B.height=F.h*(R.y[1]-R.y[0])+\"px\"}this.glplot.redraw()}},w.destroy=function(){this.glplot&&(this.camera.mouseListener.enabled=!1,this.container.removeEventListener(\"wheel\",this.camera.wheelListener),this.camera=null,this.glplot.dispose(),this.container.parentNode.removeChild(this.container),this.glplot=null)},w.getCamera=function(){var t;return this.camera.view.recalcMatrix(this.camera.view.lastT()),{up:{x:(t=this.camera).up[0],y:t.up[1],z:t.up[2]},center:{x:t.center[0],y:t.center[1],z:t.center[2]},eye:{x:t.eye[0],y:t.eye[1],z:t.eye[2]},projection:{type:!0===t._ortho?\"orthographic\":\"perspective\"}}},w.setViewport=function(t){var e,r=t.camera;this.camera.lookAt.apply(this,[[(e=r).eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]),this.glplot.setAspectratio(t.aspectratio),\"orthographic\"===r.projection.type!==this.camera._ortho&&(this.glplot.redraw(),this.glplot.clearRGBA(),this.glplot.dispose(),this.initializeGLPlot())},w.isCameraChanged=function(t){var e=this.getCamera(),r=h.nestedProperty(t,this.id+\".camera\").get();function n(t,e,r,n){var a=[\"up\",\"center\",\"eye\"],i=[\"x\",\"y\",\"z\"];return e[a[r]]&&t[a[r]][i[n]]===e[a[r]][i[n]]}var a=!1;if(void 0===r)a=!0;else{for(var i=0;i<3;i++)for(var o=0;o<3;o++)if(!n(e,r,i,o)){a=!0;break}(!r.projection||e.projection&&e.projection.type!==r.projection.type)&&(a=!0)}return a},w.isAspectChanged=function(t){var e=this.glplot.getAspectratio(),r=h.nestedProperty(t,this.id+\".aspectratio\").get();return void 0===r||r.x!==e.x||r.y!==e.y||r.z!==e.z},w.saveLayout=function(t){var e,r,n,a,i,o,s=this.fullLayout,l=this.isCameraChanged(t),c=this.isAspectChanged(t),f=l||c;if(f){var p={};if(l&&(e=this.getCamera(),n=(r=h.nestedProperty(t,this.id+\".camera\")).get(),p[this.id+\".camera\"]=n),c&&(a=this.glplot.getAspectratio(),o=(i=h.nestedProperty(t,this.id+\".aspectratio\")).get(),p[this.id+\".aspectratio\"]=o),u.call(\"_storeDirectGUIEdit\",t,s._preGUI,p),l)r.set(e),h.nestedProperty(s,this.id+\".camera\").set(e);if(c)i.set(a),h.nestedProperty(s,this.id+\".aspectratio\").set(a),this.glplot.redraw()}return f},w.updateFx=function(t,e){var r=this.camera;if(r)if(\"orbit\"===t)r.mode=\"orbit\",r.keyBindingMode=\"rotate\";else if(\"turntable\"===t){r.up=[0,0,1],r.mode=\"turntable\",r.keyBindingMode=\"rotate\";var n=this.graphDiv,a=n._fullLayout,i=this.fullSceneLayout.camera,o=i.up.x,s=i.up.y,l=i.up.z;if(l/Math.sqrt(o*o+s*s+l*l)<.999){var c=this.id+\".camera.up\",f={x:0,y:0,z:1},p={};p[c]=f;var d=n.layout;u.call(\"_storeDirectGUIEdit\",d,a._preGUI,p),i.up=f,h.nestedProperty(d,c).set(f)}}else r.keyBindingMode=t;this.fullSceneLayout.hovermode=e},w.toImage=function(t){t||(t=\"png\"),this.staticMode&&this.container.appendChild(n),this.glplot.redraw();var e=this.glplot.gl,r=e.drawingBufferWidth,a=e.drawingBufferHeight;e.bindFramebuffer(e.FRAMEBUFFER,null);var i=new Uint8Array(r*a*4);e.readPixels(0,0,r,a,e.RGBA,e.UNSIGNED_BYTE,i),function(t,e,r){for(var n=0,a=r-1;n<a;++n,--a)for(var i=0;i<e;++i)for(var o=0;o<4;++o){var s=4*(e*n+i)+o,l=4*(e*a+i)+o,c=t[s];t[s]=t[l],t[l]=c}}(i,r,a),function(t,e,r){for(var n=0;n<r;++n)for(var a=0;a<e;++a){var i=4*(e*n+a),o=t[i+3];if(o>0)for(var s=255/o,l=0;l<3;++l)t[i+l]=Math.min(s*t[i+l],255)}}(i,r,a);var o=document.createElement(\"canvas\");o.width=r,o.height=a;var s,l=o.getContext(\"2d\"),c=l.createImageData(r,a);switch(c.data.set(i),l.putImageData(c,0,0),t){case\"jpeg\":s=o.toDataURL(\"image/jpeg\");break;case\"webp\":s=o.toDataURL(\"image/webp\");break;default:s=o.toDataURL(\"image/png\")}return this.staticMode&&this.container.removeChild(n),s},w.setConvert=function(){for(var t=0;t<3;t++){var e=this.fullSceneLayout[T[t]];f.setConvert(e,this.fullLayout),e.setScale=h.noop}},w.make4thDimension=function(){var t=this.graphDiv._fullLayout;this._mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},f.setConvert(this._mockAxis,t)},e.exports=_},{\"../../components/fx\":655,\"../../lib\":749,\"../../lib/show_no_webgl_msg\":770,\"../../lib/str2rgbarray\":772,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"./layout/convert\":844,\"./layout/spikes\":847,\"./layout/tick_marks\":848,\"./project\":849,\"gl-plot3d\":301,\"has-passive-events\":415,\"is-mobile\":441,\"webgl-context\":578}],851:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){n=n||t.length;for(var a=new Array(n),i=0;i<n;i++)a[i]=[t[i],e[i],r[i]];return a}},{}],852:[function(t,e,r){\"use strict\";var n=t(\"./font_attributes\"),a=t(\"./animation_attributes\"),i=t(\"../components/color/attributes\"),o=t(\"../components/shapes/draw_newshape/attributes\"),s=t(\"./pad_attributes\"),l=t(\"../lib/extend\").extendFlat,c=n({editType:\"calc\"});c.family.dflt='\"Open Sans\", verdana, arial, sans-serif',c.size.dflt=12,c.color.dflt=i.defaultLine,e.exports={font:c,title:{text:{valType:\"string\",editType:\"layoutstyle\"},font:n({editType:\"layoutstyle\"}),xref:{valType:\"enumerated\",dflt:\"container\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},yref:{valType:\"enumerated\",dflt:\"container\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},x:{valType:\"number\",min:0,max:1,dflt:.5,editType:\"layoutstyle\"},y:{valType:\"number\",min:0,max:1,dflt:\"auto\",editType:\"layoutstyle\"},xanchor:{valType:\"enumerated\",dflt:\"auto\",values:[\"auto\",\"left\",\"center\",\"right\"],editType:\"layoutstyle\"},yanchor:{valType:\"enumerated\",dflt:\"auto\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],editType:\"layoutstyle\"},pad:l(s({editType:\"layoutstyle\"}),{}),editType:\"layoutstyle\"},uniformtext:{mode:{valType:\"enumerated\",values:[!1,\"hide\",\"show\"],dflt:!1,editType:\"plot\"},minsize:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"plot\"},autosize:{valType:\"boolean\",dflt:!1,editType:\"none\"},width:{valType:\"number\",min:10,dflt:700,editType:\"plot\"},height:{valType:\"number\",min:10,dflt:450,editType:\"plot\"},margin:{l:{valType:\"number\",min:0,dflt:80,editType:\"plot\"},r:{valType:\"number\",min:0,dflt:80,editType:\"plot\"},t:{valType:\"number\",min:0,dflt:100,editType:\"plot\"},b:{valType:\"number\",min:0,dflt:80,editType:\"plot\"},pad:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},autoexpand:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},paper_bgcolor:{valType:\"color\",dflt:i.background,editType:\"plot\"},plot_bgcolor:{valType:\"color\",dflt:i.background,editType:\"layoutstyle\"},separators:{valType:\"string\",editType:\"plot\"},hidesources:{valType:\"boolean\",dflt:!1,editType:\"plot\"},showlegend:{valType:\"boolean\",editType:\"legend\"},colorway:{valType:\"colorlist\",dflt:i.defaults,editType:\"calc\"},datarevision:{valType:\"any\",editType:\"calc\"},uirevision:{valType:\"any\",editType:\"none\"},editrevision:{valType:\"any\",editType:\"none\"},selectionrevision:{valType:\"any\",editType:\"none\"},template:{valType:\"any\",editType:\"calc\"},modebar:{orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],dflt:\"h\",editType:\"modebar\"},bgcolor:{valType:\"color\",editType:\"modebar\"},color:{valType:\"color\",editType:\"modebar\"},activecolor:{valType:\"color\",editType:\"modebar\"},uirevision:{valType:\"any\",editType:\"none\"},editType:\"modebar\"},newshape:o.newshape,activeshape:o.activeshape,meta:{valType:\"any\",arrayOk:!0,editType:\"plot\"},transition:l({},a.transition,{editType:\"none\"}),_deprecated:{title:{valType:\"string\",editType:\"layoutstyle\"},titlefont:n({editType:\"layoutstyle\"})}}},{\"../components/color/attributes\":614,\"../components/shapes/draw_newshape/attributes\":697,\"../lib/extend\":739,\"./animation_attributes\":792,\"./font_attributes\":826,\"./pad_attributes\":860}],853:[function(t,e,r){\"use strict\";var n={\"open-street-map\":{id:\"osm\",version:8,sources:{\"plotly-osm-tiles\":{type:\"raster\",attribution:'<a href=\"http://www.openstreetmap.org/about/\" target=\"_blank\">\\xa9 OpenStreetMap</a>',tiles:[\"https://a.tile.openstreetmap.org/{z}/{x}/{y}.png\",\"https://b.tile.openstreetmap.org/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-osm-tiles\",type:\"raster\",source:\"plotly-osm-tiles\",minzoom:0,maxzoom:22}]},\"white-bg\":{id:\"white-bg\",version:8,sources:{},layers:[{id:\"white-bg\",type:\"background\",paint:{\"background-color\":\"#FFFFFF\"},minzoom:0,maxzoom:22}]},\"carto-positron\":{id:\"carto-positron\",version:8,sources:{\"plotly-carto-positron\":{type:\"raster\",attribution:'<a href=\"https://carto.com/\" target=\"_blank\">\\xa9 CARTO</a>',tiles:[\"https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-carto-positron\",type:\"raster\",source:\"plotly-carto-positron\",minzoom:0,maxzoom:22}]},\"carto-darkmatter\":{id:\"carto-darkmatter\",version:8,sources:{\"plotly-carto-darkmatter\":{type:\"raster\",attribution:'<a href=\"https://carto.com/\" target=\"_blank\">\\xa9 CARTO</a>',tiles:[\"https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-carto-darkmatter\",type:\"raster\",source:\"plotly-carto-darkmatter\",minzoom:0,maxzoom:22}]},\"stamen-terrain\":{id:\"stamen-terrain\",version:8,sources:{\"plotly-stamen-terrain\":{type:\"raster\",attribution:'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, under <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> | Data by <a href=\"http://openstreetmap.org\">OpenStreetMap</a>, under <a href=\"http://www.openstreetmap.org/copyright\">ODbL</a>.',tiles:[\"https://stamen-tiles.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-stamen-terrain\",type:\"raster\",source:\"plotly-stamen-terrain\",minzoom:0,maxzoom:22}]},\"stamen-toner\":{id:\"stamen-toner\",version:8,sources:{\"plotly-stamen-toner\":{type:\"raster\",attribution:'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, under <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> | Data by <a href=\"http://openstreetmap.org\">OpenStreetMap</a>, under <a href=\"http://www.openstreetmap.org/copyright\">ODbL</a>.',tiles:[\"https://stamen-tiles.a.ssl.fastly.net/toner/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-stamen-toner\",type:\"raster\",source:\"plotly-stamen-toner\",minzoom:0,maxzoom:22}]},\"stamen-watercolor\":{id:\"stamen-watercolor\",version:8,sources:{\"plotly-stamen-watercolor\":{type:\"raster\",attribution:'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, under <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> | Data by <a href=\"http://openstreetmap.org\">OpenStreetMap</a>, under <a href=\"http://creativecommons.org/licenses/by-sa/3.0\">CC BY SA</a>.',tiles:[\"https://stamen-tiles.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-stamen-watercolor\",type:\"raster\",source:\"plotly-stamen-watercolor\",minzoom:0,maxzoom:22}]}},a=Object.keys(n);e.exports={requiredVersion:\"1.10.1\",styleUrlPrefix:\"mapbox://styles/mapbox/\",styleUrlSuffix:\"v9\",styleValuesMapbox:[\"basic\",\"streets\",\"outdoors\",\"light\",\"dark\",\"satellite\",\"satellite-streets\"],styleValueDflt:\"basic\",stylesNonMapbox:n,styleValuesNonMapbox:a,traceLayerPrefix:\"plotly-trace-layer-\",layoutLayerPrefix:\"plotly-layout-layer-\",wrongVersionErrorMsg:[\"Your custom plotly.js bundle is not using the correct mapbox-gl version\",\"Please install mapbox-gl@1.10.1.\"].join(\"\\n\"),noAccessTokenErrorMsg:[\"Missing Mapbox access token.\",\"Mapbox trace type require a Mapbox access token to be registered.\",\"For example:\",\"  Plotly.plot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });\",\"More info here: https://www.mapbox.com/help/define-access-token/\"].join(\"\\n\"),missingStyleErrorMsg:[\"No valid mapbox style found, please set `mapbox.style` to one of:\",a.join(\", \"),\"or register a Mapbox access token to use a Mapbox-served style.\"].join(\"\\n\"),multipleTokensErrorMsg:[\"Set multiple mapbox access token across different mapbox subplot,\",\"using first token found as mapbox-gl does not allow multipleaccess tokens on the same page.\"].join(\"\\n\"),mapOnErrorMsg:\"Mapbox error.\",mapboxLogo:{path0:\"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z\",path1:\"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z\",path2:\"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z\",polygon:\"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34\"},styleRules:{map:\"overflow:hidden;position:relative;\",\"missing-css\":\"display:none;\",canary:\"background-color:salmon;\",\"ctrl-bottom-left\":\"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;\",\"ctrl-bottom-right\":\"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;\",ctrl:\"clear: both; pointer-events: auto; transform: translate(0, 0);\",\"ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner\":\"display: none;\",\"ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner\":\"display: block; margin-top:2px\",\"ctrl-attrib.mapboxgl-compact:hover\":\"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;\",\"ctrl-attrib.mapboxgl-compact::after\":'content: \"\"; cursor: pointer; position: absolute; background-image: url(\\'data:image/svg+xml;charset=utf-8,%3Csvg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"%3E %3Cpath fill=\"%23333333\" fill-rule=\"evenodd\" d=\"M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0\"/%3E %3C/svg%3E\\'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;',\"ctrl-attrib.mapboxgl-compact\":\"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;\",\"ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after\":\"bottom: 0; right: 0\",\"ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after\":\"bottom: 0; left: 0\",\"ctrl-bottom-left .mapboxgl-ctrl\":\"margin: 0 0 10px 10px; float: left;\",\"ctrl-bottom-right .mapboxgl-ctrl\":\"margin: 0 10px 10px 0; float: right;\",\"ctrl-attrib\":\"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px\",\"ctrl-attrib a\":\"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px\",\"ctrl-attrib a:hover\":\"color: inherit; text-decoration: underline;\",\"ctrl-attrib .mapbox-improve-map\":\"font-weight: bold; margin-left: 2px;\",\"attrib-empty\":\"display: none;\",\"ctrl-logo\":'display:block; width: 21px; height: 21px; background-image: url(\\'data:image/svg+xml;charset=utf-8,%3C?xml version=\"1.0\" encoding=\"utf-8\"?%3E %3Csvg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\" viewBox=\"0 0 21 21\" style=\"enable-background:new 0 0 21 21;\" xml:space=\"preserve\"%3E%3Cg transform=\"translate(0,0.01)\"%3E%3Cpath d=\"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z\" style=\"opacity:0.9;fill:%23ffffff;enable-background:new\" class=\"st0\"/%3E%3Cpath d=\"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z\" style=\"opacity:0.35;enable-background:new\" class=\"st1\"/%3E%3Cpath d=\"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z\" style=\"opacity:0.35;enable-background:new\" class=\"st1\"/%3E%3Cpolygon points=\"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 \" style=\"opacity:0.9;fill:%23ffffff;enable-background:new\" class=\"st0\"/%3E%3C/g%3E%3C/svg%3E\\')'}}},{}],854:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){var r=t.split(\" \"),a=r[0],i=r[1],o=n.isArrayOrTypedArray(e)?n.mean(e):e,s=.5+o/100,l=1.5+o/100,c=[\"\",\"\"],u=[0,0];switch(a){case\"top\":c[0]=\"top\",u[1]=-l;break;case\"bottom\":c[0]=\"bottom\",u[1]=l}switch(i){case\"left\":c[1]=\"right\",u[0]=-s;break;case\"right\":c[1]=\"left\",u[0]=s}return{anchor:c[0]&&c[1]?c.join(\"-\"):c[0]?c[0]:c[1]?c[1]:\"center\",offset:u}}},{\"../../lib\":749}],855:[function(t,e,r){\"use strict\";var n=t(\"mapbox-gl\"),a=t(\"../../lib\"),i=t(\"../../plots/get_data\").getSubplotCalcData,o=t(\"../../constants/xmlns_namespaces\"),s=t(\"d3\"),l=t(\"../../components/drawing\"),c=t(\"../../lib/svg_text_utils\"),u=t(\"./mapbox\"),h=r.constants=t(\"./constants\");function f(t){return\"string\"==typeof t&&(-1!==h.styleValuesMapbox.indexOf(t)||0===t.indexOf(\"mapbox://\"))}r.name=\"mapbox\",r.attr=\"subplot\",r.idRoot=\"mapbox\",r.idRegex=r.attrRegex=a.counterRegex(\"mapbox\"),r.attributes={subplot:{valType:\"subplotid\",dflt:\"mapbox\",editType:\"calc\"}},r.layoutAttributes=t(\"./layout_attributes\"),r.supplyLayoutDefaults=t(\"./layout_defaults\"),r.plot=function(t){var e=t._fullLayout,r=t.calcdata,o=e._subplots.mapbox;if(n.version!==h.requiredVersion)throw new Error(h.wrongVersionErrorMsg);var s=function(t,e){var r=t._fullLayout;if(\"\"===t._context.mapboxAccessToken)return\"\";for(var n=[],i=[],o=!1,s=!1,l=0;l<e.length;l++){var c=r[e[l]],u=c.accesstoken;f(c.style)&&(u?a.pushUnique(n,u):(f(c._input.style)&&(a.error(\"Uses Mapbox map style, but did not set an access token.\"),o=!0),s=!0)),u&&a.pushUnique(i,u)}if(s){var p=o?h.noAccessTokenErrorMsg:h.missingStyleErrorMsg;throw a.error(p),new Error(p)}return n.length?(n.length>1&&a.warn(h.multipleTokensErrorMsg),n[0]):(i.length&&a.log([\"Listed mapbox access token(s)\",i.join(\",\"),\"but did not use a Mapbox map style, ignoring token(s).\"].join(\" \")),\"\")}(t,o);n.accessToken=s;for(var l=0;l<o.length;l++){var c=o[l],p=i(r,\"mapbox\",c),d=e[c],g=d._subplot;g||(g=new u(t,c),e[c]._subplot=g),g.viewInitial||(g.viewInitial={center:a.extendFlat({},d.center),zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),g.plot(p,e,t._promises)}},r.clean=function(t,e,r,n){for(var a=n._subplots.mapbox||[],i=0;i<a.length;i++){var o=a[i];!e[o]&&n[o]._subplot&&n[o]._subplot.destroy()}},r.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.mapbox,n=e._size,a=0;a<r.length;a++){var i=e[r[a]],u=i.domain,f=i._subplot.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:o.svg,\"xlink:href\":f,x:n.l+n.w*u.x[0],y:n.t+n.h*(1-u.y[1]),width:n.w*(u.x[1]-u.x[0]),height:n.h*(u.y[1]-u.y[0]),preserveAspectRatio:\"none\"});var p=s.select(i._subplot.div);if(!(null===p.select(\".mapboxgl-ctrl-logo\").node().offsetParent)){var d=e._glimages.append(\"g\");d.attr(\"transform\",\"translate(\"+(n.l+n.w*u.x[0]+10)+\", \"+(n.t+n.h*(1-u.y[0])-31)+\")\"),d.append(\"path\").attr(\"d\",h.mapboxLogo.path0).style({opacity:.9,fill:\"#ffffff\",\"enable-background\":\"new\"}),d.append(\"path\").attr(\"d\",h.mapboxLogo.path1).style(\"opacity\",.35).style(\"enable-background\",\"new\"),d.append(\"path\").attr(\"d\",h.mapboxLogo.path2).style(\"opacity\",.35).style(\"enable-background\",\"new\"),d.append(\"polygon\").attr(\"points\",h.mapboxLogo.polygon).style({opacity:.9,fill:\"#ffffff\",\"enable-background\":\"new\"})}var g=p.select(\".mapboxgl-ctrl-attrib\").text().replace(\"Improve this map\",\"\"),m=e._glimages.append(\"g\"),v=m.append(\"text\");v.text(g).classed(\"static-attribution\",!0).attr({\"font-size\":12,\"font-family\":\"Arial\",color:\"rgba(0, 0, 0, 0.75)\",\"text-anchor\":\"end\",\"data-unformatted\":g});var y=l.bBox(v.node()),x=n.w*(u.x[1]-u.x[0]);if(y.width>x/2){var b=g.split(\"|\").join(\"<br>\");v.text(b).attr(\"data-unformatted\",b).call(c.convertToTspans,t),y=l.bBox(v.node())}v.attr(\"transform\",\"translate(-3, \"+(8-y.height)+\")\"),m.insert(\"rect\",\".static-attribution\").attr({x:-y.width-6,y:-y.height-3,width:y.width+6,height:y.height+3,fill:\"rgba(255, 255, 255, 0.75)\"});var _=1;y.width+6>x&&(_=x/(y.width+6));var w=[n.l+n.w*u.x[1],n.t+n.h*(1-u.y[0])];m.attr(\"transform\",\"translate(\"+w[0]+\",\"+w[1]+\") scale(\"+_+\")\")}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.mapbox,n=0;n<r.length;n++){e[r[n]]._subplot.updateFx(e)}}},{\"../../components/drawing\":637,\"../../constants/xmlns_namespaces\":725,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/get_data\":835,\"./constants\":853,\"./layout_attributes\":857,\"./layout_defaults\":858,\"./mapbox\":859,d3:169,\"mapbox-gl\":447}],856:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../lib/svg_text_utils\").sanitizeHTML,i=t(\"./convert_text_opts\"),o=t(\"./constants\");function s(t,e){this.subplot=t,this.uid=t.uid+\"-\"+e,this.index=e,this.idSource=\"source-\"+this.uid,this.idLayer=o.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var l=s.prototype;function c(t){if(!t.visible)return!1;var e=t.source;if(Array.isArray(e)&&e.length>0){for(var r=0;r<e.length;r++)if(\"string\"!=typeof e[r]||0===e[r].length)return!1;return!0}return n.isPlainObject(e)||\"string\"==typeof e&&e.length>0}function u(t){var e={},r={};switch(t.type){case\"circle\":n.extendFlat(r,{\"circle-radius\":t.circle.radius,\"circle-color\":t.color,\"circle-opacity\":t.opacity});break;case\"line\":n.extendFlat(r,{\"line-width\":t.line.width,\"line-color\":t.color,\"line-opacity\":t.opacity,\"line-dasharray\":t.line.dash});break;case\"fill\":n.extendFlat(r,{\"fill-color\":t.color,\"fill-outline-color\":t.fill.outlinecolor,\"fill-opacity\":t.opacity});break;case\"symbol\":var a=t.symbol,o=i(a.textposition,a.iconsize);n.extendFlat(e,{\"icon-image\":a.icon+\"-15\",\"icon-size\":a.iconsize/10,\"text-field\":a.text,\"text-size\":a.textfont.size,\"text-anchor\":o.anchor,\"text-offset\":o.offset,\"symbol-placement\":a.placement}),n.extendFlat(r,{\"icon-color\":t.color,\"text-color\":a.textfont.color,\"text-opacity\":t.opacity});break;case\"raster\":n.extendFlat(r,{\"raster-fade-duration\":0,\"raster-opacity\":t.opacity})}return{layout:e,paint:r}}l.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c(t)},l.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&\"image\"===this.sourceType&&\"image\"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},l.needsNewSource=function(t){return this.sourceType!==t.sourcetype||this.source!==t.source||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup[\"layout-\"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates})},l.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,c(t)){var r=function(t){var e,r=t.sourcetype,n=t.source,i={type:r};\"geojson\"===r?e=\"data\":\"vector\"===r?e=\"string\"==typeof n?\"url\":\"tiles\":\"raster\"===r?(e=\"tiles\",i.tileSize=256):\"image\"===r&&(e=\"url\",i.coordinates=t.coordinates);i[e]=n,t.sourceattribution&&(i.attribution=a(t.sourceattribution));return i}(t);e.addSource(this.idSource,r)}},l.updateLayer=function(t){var e,r=this.subplot,n=u(t),a=this.subplot.belowLookup[\"layout-\"+this.index];if(\"traces\"===a)for(var i=r.getMapLayers(),s=0;s<i.length;s++){var l=i[s].id;if(\"string\"==typeof l&&0===l.indexOf(o.traceLayerPrefix)){e=l;break}}else e=a;this.removeLayer(),c(t)&&r.addLayer({id:this.idLayer,source:this.idSource,\"source-layer\":t.sourcelayer||\"\",type:t.type,minzoom:t.minzoom,maxzoom:t.maxzoom,layout:n.layout,paint:n.paint},e),this.layerType=t.type,this.below=a},l.updateStyle=function(t){if(c(t)){var e=u(t);this.subplot.setOptions(this.idLayer,\"setLayoutProperty\",e.layout),this.subplot.setOptions(this.idLayer,\"setPaintProperty\",e.paint)}},l.removeLayer=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer)},l.dispose=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer),t.getSource(this.idSource)&&t.removeSource(this.idSource)},e.exports=function(t,e,r){var n=new s(t,e);return n.update(r),n}},{\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"./constants\":853,\"./convert_text_opts\":854}],857:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\").defaultLine,i=t(\"../domain\").attributes,o=t(\"../font_attributes\"),s=t(\"../../traces/scatter/attributes\").textposition,l=t(\"../../plot_api/edit_types\").overrideAll,c=t(\"../../plot_api/plot_template\").templatedArray,u=t(\"./constants\"),h=o({});h.family.dflt=\"Open Sans Regular, Arial Unicode MS Regular\",(e.exports=l({_arrayAttrRegexps:[n.counterRegex(\"mapbox\",\".layers\",!0)],domain:i({name:\"mapbox\"}),accesstoken:{valType:\"string\",noBlank:!0,strict:!0},style:{valType:\"any\",values:u.styleValuesMapbox.concat(u.styleValuesNonMapbox),dflt:u.styleValueDflt},center:{lon:{valType:\"number\",dflt:0},lat:{valType:\"number\",dflt:0}},zoom:{valType:\"number\",dflt:1},bearing:{valType:\"number\",dflt:0},pitch:{valType:\"number\",dflt:0},layers:c(\"layer\",{visible:{valType:\"boolean\",dflt:!0},sourcetype:{valType:\"enumerated\",values:[\"geojson\",\"vector\",\"raster\",\"image\"],dflt:\"geojson\"},source:{valType:\"any\"},sourcelayer:{valType:\"string\",dflt:\"\"},sourceattribution:{valType:\"string\"},type:{valType:\"enumerated\",values:[\"circle\",\"line\",\"fill\",\"symbol\",\"raster\"],dflt:\"circle\"},coordinates:{valType:\"any\"},below:{valType:\"string\"},color:{valType:\"color\",dflt:a},opacity:{valType:\"number\",min:0,max:1,dflt:1},minzoom:{valType:\"number\",min:0,max:24,dflt:0},maxzoom:{valType:\"number\",min:0,max:24,dflt:24},circle:{radius:{valType:\"number\",dflt:15}},line:{width:{valType:\"number\",dflt:2},dash:{valType:\"data_array\"}},fill:{outlinecolor:{valType:\"color\",dflt:a}},symbol:{icon:{valType:\"string\",dflt:\"marker\"},iconsize:{valType:\"number\",dflt:10},text:{valType:\"string\",dflt:\"\"},placement:{valType:\"enumerated\",values:[\"point\",\"line\",\"line-center\"],dflt:\"point\"},textfont:h,textposition:n.extendFlat({},s,{arrayOk:!1})}})},\"plot\",\"from-root\")).uirevision={valType:\"any\",editType:\"none\"}},{\"../../components/color\":615,\"../../lib\":749,\"../../plot_api/edit_types\":780,\"../../plot_api/plot_template\":787,\"../../traces/scatter/attributes\":1156,\"../domain\":825,\"../font_attributes\":826,\"./constants\":853}],858:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../subplot_defaults\"),i=t(\"../array_container_defaults\"),o=t(\"./layout_attributes\");function s(t,e,r,n){r(\"accesstoken\",n.accessToken),r(\"style\"),r(\"center.lon\"),r(\"center.lat\"),r(\"zoom\"),r(\"bearing\"),r(\"pitch\"),i(t,e,{name:\"layers\",handleItemDefaults:l}),e._input=t}function l(t,e){function r(r,a){return n.coerce(t,e,o.layers,r,a)}if(r(\"visible\")){var a,i=r(\"sourcetype\"),s=\"raster\"===i||\"image\"===i;r(\"source\"),r(\"sourceattribution\"),\"vector\"===i&&r(\"sourcelayer\"),\"image\"===i&&r(\"coordinates\"),s&&(a=\"raster\");var l=r(\"type\",a);s&&\"raster\"!==l&&(l=e.type=\"raster\",n.log(\"Source types *raster* and *image* must drawn *raster* layer type.\")),r(\"below\"),r(\"color\"),r(\"opacity\"),r(\"minzoom\"),r(\"maxzoom\"),\"circle\"===l&&r(\"circle.radius\"),\"line\"===l&&(r(\"line.width\"),r(\"line.dash\")),\"fill\"===l&&r(\"fill.outlinecolor\"),\"symbol\"===l&&(r(\"symbol.icon\"),r(\"symbol.iconsize\"),r(\"symbol.text\"),n.coerceFont(r,\"symbol.textfont\"),r(\"symbol.textposition\"),r(\"symbol.placement\"))}}e.exports=function(t,e,r){a(t,e,r,{type:\"mapbox\",attributes:o,handleDefaults:s,partition:\"y\",accessToken:e._mapboxAccessToken})}},{\"../../lib\":749,\"../array_container_defaults\":793,\"../subplot_defaults\":875,\"./layout_attributes\":857}],859:[function(t,e,r){\"use strict\";var n=t(\"mapbox-gl\"),a=t(\"../../lib\"),i=t(\"../../lib/geo_location_utils\"),o=t(\"../../registry\"),s=t(\"../cartesian/axes\"),l=t(\"../../components/dragelement\"),c=t(\"../../components/fx\"),u=t(\"../../components/dragelement/helpers\"),h=u.rectMode,f=u.drawMode,p=u.selectMode,d=t(\"../cartesian/select\").prepSelect,g=t(\"../cartesian/select\").clearSelect,m=t(\"../cartesian/select\").clearSelectionsCache,v=t(\"../cartesian/select\").selectOnClick,y=t(\"./constants\"),x=t(\"./layers\");function b(t,e){this.id=e,this.gd=t;var r=t._fullLayout,n=t._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+\"-\"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var _=b.prototype;_.plot=function(t,e,r){var n,a=this,i=e[a.id];a.map&&i.accesstoken!==a.accessToken&&(a.map.remove(),a.map=null,a.styleObj=null,a.traceHash={},a.layerList=[]),n=a.map?new Promise((function(r,n){a.updateMap(t,e,r,n)})):new Promise((function(r,n){a.createMap(t,e,r,n)})),r.push(n)},_.createMap=function(t,e,r,a){var o=this,s=e[o.id],l=o.styleObj=T(s.style);o.accessToken=s.accesstoken;var c=o.map=new n.Map({container:o.div,style:l.style,center:M(s.center),zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,interactive:!o.isStatic,preserveDrawingBuffer:o.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new n.AttributionControl({compact:!0}));c._canvas.style.left=\"0px\",c._canvas.style.top=\"0px\",o.rejectOnError(a),o.isStatic||o.initFx(t,e);var u=[];u.push(new Promise((function(t){c.once(\"load\",t)}))),u=u.concat(i.fetchTraceGeoData(t)),Promise.all(u).then((function(){o.fillBelowLookup(t,e),o.updateData(t),o.updateLayout(e),o.resolveOnRender(r)})).catch(a)},_.updateMap=function(t,e,r,n){var a=this,o=a.map,s=e[this.id];a.rejectOnError(n);var l=[],c=T(s.style);JSON.stringify(a.styleObj)!==JSON.stringify(c)&&(a.styleObj=c,o.setStyle(c.style),a.traceHash={},l.push(new Promise((function(t){o.once(\"styledata\",t)})))),l=l.concat(i.fetchTraceGeoData(t)),Promise.all(l).then((function(){a.fillBelowLookup(t,e),a.updateData(t),a.updateLayout(e),a.resolveOnRender(r)})).catch(n)},_.fillBelowLookup=function(t,e){var r,n,a=e[this.id].layers,i=this.belowLookup={},o=!1;for(r=0;r<t.length;r++){var s=t[r][0].trace,l=s._module;\"string\"==typeof s.below?n=s.below:l.getBelow&&(n=l.getBelow(s,this)),\"\"===n&&(o=!0),i[\"trace-\"+s.uid]=n||\"\"}for(r=0;r<a.length;r++){var c=a[r];n=\"string\"==typeof c.below?c.below:o?\"traces\":\"\",i[\"layout-\"+r]=n}var u,h,f={};for(u in i)f[n=i[u]]?f[n].push(u):f[n]=[u];for(n in f){var p=f[n];if(p.length>1)for(r=0;r<p.length;r++)0===(u=p[r]).indexOf(\"trace-\")?(h=u.split(\"trace-\")[1],this.traceHash[h]&&(this.traceHash[h].below=null)):0===u.indexOf(\"layout-\")&&(h=u.split(\"layout-\")[1],this.layerList[h]&&(this.layerList[h].below=null))}};var w={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};function T(t){var e={};return a.isPlainObject(t)?(e.id=t.id,e.style=t):\"string\"==typeof t?(e.id=t,-1!==y.styleValuesMapbox.indexOf(t)?e.style=k(t):y.stylesNonMapbox[t]?e.style=y.stylesNonMapbox[t]:e.style=t):(e.id=y.styleValueDflt,e.style=k(y.styleValueDflt)),e.transition={duration:0,delay:0},e}function k(t){return y.styleUrlPrefix+t+\"-\"+y.styleUrlSuffix}function M(t){return[t.lon,t.lat]}_.updateData=function(t){var e,r,n,a,i=this.traceHash,o=t.slice().sort((function(t,e){return w[t[0].trace.type]-w[e[0].trace.type]}));for(n=0;n<o.length;n++){var s=o[n],l=!1;(e=i[(r=s[0].trace).uid])&&(e.type===r.type?(e.update(s),l=!0):e.dispose()),!l&&r._module&&(i[r.uid]=r._module.plot(this,s))}var c=Object.keys(i);t:for(n=0;n<c.length;n++){var u=c[n];for(a=0;a<t.length;a++)if(u===(r=t[a][0].trace).uid)continue t;(e=i[u]).dispose(),delete i[u]}},_.updateLayout=function(t){var e=this.map,r=t[this.id];this.dragging||this.wheeling||(e.setCenter(M(r.center)),e.setZoom(r.zoom),e.setBearing(r.bearing),e.setPitch(r.pitch)),this.updateLayers(t),this.updateFramework(t),this.updateFx(t),this.map.resize(),this.gd._context._scrollZoom.mapbox?e.scrollZoom.enable():e.scrollZoom.disable()},_.resolveOnRender=function(t){var e=this.map;e.on(\"render\",(function r(){e.loaded()&&(e.off(\"render\",r),setTimeout(t,10))}))},_.rejectOnError=function(t){var e=this.map;function r(){t(new Error(y.mapOnErrorMsg))}e.once(\"error\",r),e.once(\"style.error\",r),e.once(\"source.error\",r),e.once(\"tile.error\",r),e.once(\"layer.error\",r)},_.createFramework=function(t){var e=this,r=e.div=document.createElement(\"div\");r.id=e.uid,r.style.position=\"absolute\",e.container.appendChild(r),e.xaxis={_id:\"x\",c2p:function(t){return e.project(t).x}},e.yaxis={_id:\"y\",c2p:function(t){return e.project(t).y}},e.updateFramework(t),e.mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},s.setConvert(e.mockAxis,t)},_.initFx=function(t,e){var r=this,n=r.gd,a=r.map;function i(){c.loneUnhover(e._hoverlayer)}function s(){var t=r.getView();n.emit(\"plotly_relayouting\",r.getViewEditsWithDerived(t))}a.on(\"moveend\",(function(t){if(r.map){var e=n._fullLayout;if(t.originalEvent||r.wheeling){var a=e[r.id];o.call(\"_storeDirectGUIEdit\",n.layout,e._preGUI,r.getViewEdits(a));var i=r.getView();a._input.center=a.center=i.center,a._input.zoom=a.zoom=i.zoom,a._input.bearing=a.bearing=i.bearing,a._input.pitch=a.pitch=i.pitch,n.emit(\"plotly_relayout\",r.getViewEditsWithDerived(i))}t.originalEvent&&\"mouseup\"===t.originalEvent.type?r.dragging=!1:r.wheeling&&(r.wheeling=!1),e._rehover&&e._rehover()}})),a.on(\"wheel\",(function(){r.wheeling=!0})),a.on(\"mousemove\",(function(t){var e=r.div.getBoundingClientRect();t.clientX=t.point.x+e.left,t.clientY=t.point.y+e.top,t.target.getBoundingClientRect=function(){return e},r.xaxis.p2c=function(){return t.lngLat.lng},r.yaxis.p2c=function(){return t.lngLat.lat},n._fullLayout._rehover=function(){n._fullLayout._hoversubplot===r.id&&n._fullLayout[r.id]&&c.hover(n,t,r.id)},c.hover(n,t,r.id),n._fullLayout._hoversubplot=r.id})),a.on(\"dragstart\",(function(){r.dragging=!0,i()})),a.on(\"zoomstart\",i),a.on(\"mouseout\",(function(){n._fullLayout._hoversubplot=null})),a.on(\"drag\",s),a.on(\"zoom\",s),a.on(\"dblclick\",(function(){var t=n._fullLayout[r.id];o.call(\"_storeDirectGUIEdit\",n.layout,n._fullLayout._preGUI,r.getViewEdits(t));var e=r.viewInitial;a.setCenter(M(e.center)),a.setZoom(e.zoom),a.setBearing(e.bearing),a.setPitch(e.pitch);var i=r.getView();t._input.center=t.center=i.center,t._input.zoom=t.zoom=i.zoom,t._input.bearing=t.bearing=i.bearing,t._input.pitch=t.pitch=i.pitch,n.emit(\"plotly_doubleclick\",null),n.emit(\"plotly_relayout\",r.getViewEditsWithDerived(i))})),r.clearSelect=function(){m(r.dragOptions),g(r.dragOptions.gd)},r.onClickInPanFn=function(t){return function(e){var a=n._fullLayout.clickmode;a.indexOf(\"select\")>-1&&v(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),a.indexOf(\"event\")>-1&&c.click(n,e.originalEvent)}}},_.updateFx=function(t){var e=this,r=e.map,n=e.gd;if(!e.isStatic){var i,o=t.dragmode;i=h(o)?function(t,r){(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]}:function(t,r,n){(t.lassoPoints={})[e.id]=n.filtered.map(c)};var s=e.dragOptions;e.dragOptions=a.extendDeep(s||{},{dragmode:t.dragmode,element:e.div,gd:n,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:i},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off(\"click\",e.onClickInPanHandler),p(o)||f(o)?(r.dragPan.disable(),r.on(\"zoomstart\",e.clearSelect),e.dragOptions.prepFn=function(t,r,n){d(t,r,n,e.dragOptions,o)},l.init(e.dragOptions)):(r.dragPan.enable(),r.off(\"zoomstart\",e.clearSelect),e.div.onmousedown=null,e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),r.on(\"click\",e.onClickInPanHandler))}function c(t){var r=e.map.unproject(t);return[r.lng,r.lat]}},_.updateFramework=function(t){var e=t[this.id].domain,r=t._size,n=this.div.style;n.width=r.w*(e.x[1]-e.x[0])+\"px\",n.height=r.h*(e.y[1]-e.y[0])+\"px\",n.left=r.l+e.x[0]*r.w+\"px\",n.top=r.t+(1-e.y[1])*r.h+\"px\",this.xaxis._offset=r.l+e.x[0]*r.w,this.xaxis._length=r.w*(e.x[1]-e.x[0]),this.yaxis._offset=r.t+(1-e.y[1])*r.h,this.yaxis._length=r.h*(e.y[1]-e.y[0])},_.updateLayers=function(t){var e,r=t[this.id].layers,n=this.layerList;if(r.length!==n.length){for(e=0;e<n.length;e++)n[e].dispose();for(n=this.layerList=[],e=0;e<r.length;e++)n.push(x(this,e,r[e]))}else for(e=0;e<r.length;e++)n[e].update(r[e])},_.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},_.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},_.setOptions=function(t,e,r){for(var n in r)this.map[e](t,n,r[n])},_.getMapLayers=function(){return this.map.getStyle().layers},_.addLayer=function(t,e){var r=this.map;if(\"string\"==typeof e){if(\"\"===e)return void r.addLayer(t,e);for(var n=this.getMapLayers(),i=0;i<n.length;i++)if(e===n[i].id)return void r.addLayer(t,e);a.warn([\"Trying to add layer with *below* value\",e,\"referencing a layer that does not exist\",\"or that does not yet exist.\"].join(\" \"))}r.addLayer(t)},_.project=function(t){return this.map.project(new n.LngLat(t[0],t[1]))},_.getView=function(){var t=this.map,e=t.getCenter(),r={lon:e.lng,lat:e.lat},n=t.getCanvas(),a=n.width,i=n.height;return{center:r,zoom:t.getZoom(),bearing:t.getBearing(),pitch:t.getPitch(),_derived:{coordinates:[t.unproject([0,0]).toArray(),t.unproject([a,0]).toArray(),t.unproject([a,i]).toArray(),t.unproject([0,i]).toArray()]}}},_.getViewEdits=function(t){for(var e=this.id,r=[\"center\",\"zoom\",\"bearing\",\"pitch\"],n={},a=0;a<r.length;a++){var i=r[a];n[e+\".\"+i]=t[i]}return n},_.getViewEditsWithDerived=function(t){var e=this.id,r=this.getViewEdits(t);return r[e+\"._derived\"]=t._derived,r},e.exports=b},{\"../../components/dragelement\":634,\"../../components/dragelement/helpers\":633,\"../../components/fx\":655,\"../../lib\":749,\"../../lib/geo_location_utils\":742,\"../../registry\":881,\"../cartesian/axes\":798,\"../cartesian/select\":817,\"./constants\":853,\"./layers\":856,\"mapbox-gl\":447}],860:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.editType;return{t:{valType:\"number\",dflt:0,editType:e},r:{valType:\"number\",dflt:0,editType:e},b:{valType:\"number\",dflt:0,editType:e},l:{valType:\"number\",dflt:0,editType:e},editType:e}}},{}],861:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"d3-time-format\").timeFormatLocale,i=t(\"fast-isnumeric\"),o=t(\"../registry\"),s=t(\"../plot_api/plot_schema\"),l=t(\"../plot_api/plot_template\"),c=t(\"../lib\"),u=t(\"../components/color\"),h=t(\"../constants/numerical\").BADNUM,f=t(\"./cartesian/axis_ids\"),p=t(\"./cartesian/handle_outline\").clearSelect,d=t(\"./animation_attributes\"),g=t(\"./frame_attributes\"),m=t(\"../plots/get_data\").getModuleCalcData,v=c.relinkPrivateKeys,y=c._,x=e.exports={};c.extendFlat(x,o),x.attributes=t(\"./attributes\"),x.attributes.type.values=x.allTypes,x.fontAttrs=t(\"./font_attributes\"),x.layoutAttributes=t(\"./layout_attributes\"),x.fontWeight=\"normal\";var b=x.transformsRegistry,_=t(\"./command\");x.executeAPICommand=_.executeAPICommand,x.computeAPICommandBindings=_.computeAPICommandBindings,x.manageCommandObserver=_.manageCommandObserver,x.hasSimpleAPICommandBindings=_.hasSimpleAPICommandBindings,x.redrawText=function(t){var e=(t=c.getGraphDiv(t))._fullLayout||{};if(!(!(e._has&&e._has(\"polar\"))&&t.data&&t.data[0]&&t.data[0].r))return new Promise((function(e){setTimeout((function(){o.getComponentMethod(\"annotations\",\"draw\")(t),o.getComponentMethod(\"legend\",\"draw\")(t),o.getComponentMethod(\"colorbar\",\"draw\")(t),e(x.previousPromises(t))}),300)}))},x.resize=function(t){var e;t=c.getGraphDiv(t);var r=new Promise((function(r,n){t&&!c.isHidden(t)||n(new Error(\"Resize must be passed a displayed plot div element.\")),t._redrawTimer&&clearTimeout(t._redrawTimer),t._resolveResize&&(e=t._resolveResize),t._resolveResize=r,t._redrawTimer=setTimeout((function(){if(!t.layout||t.layout.width&&t.layout.height||c.isHidden(t))r(t);else{delete t.layout.width,delete t.layout.height;var e=t.changed;t.autoplay=!0,o.call(\"relayout\",t,{autosize:!0}).then((function(){t.changed=e,t._resolveResize===r&&(delete t._resolveResize,r(t))}))}}),100)}));return e&&e(r),r},x.previousPromises=function(t){if((t._promises||[]).length)return Promise.all(t._promises).then((function(){t._promises=[]}))},x.addLinks=function(t){if(t._context.showLink||t._context.showSources){var e=t._fullLayout,r=c.ensureSingle(e._paper,\"text\",\"js-plot-link-container\",(function(t){t.style({\"font-family\":'\"Open Sans\", Arial, sans-serif',\"font-size\":\"12px\",fill:u.defaultLine,\"pointer-events\":\"all\"}).each((function(){var t=n.select(this);t.append(\"tspan\").classed(\"js-link-to-tool\",!0),t.append(\"tspan\").classed(\"js-link-spacer\",!0),t.append(\"tspan\").classed(\"js-sourcelinks\",!0)}))})),a=r.node(),i={y:e._paper.attr(\"height\")-9};document.body.contains(a)&&a.getComputedTextLength()>=e.width-20?(i[\"text-anchor\"]=\"start\",i.x=5):(i[\"text-anchor\"]=\"end\",i.x=e._paper.attr(\"width\")-7),r.attr(i);var o=r.select(\".js-link-to-tool\"),s=r.select(\".js-link-spacer\"),l=r.select(\".js-sourcelinks\");t._context.showSources&&t._context.showSources(t),t._context.showLink&&function(t,e){e.text(\"\");var r=e.append(\"a\").attr({\"xlink:xlink:href\":\"#\",class:\"link--impt link--embedview\",\"font-weight\":\"bold\"}).text(t._context.linkText+\" \"+String.fromCharCode(187));if(t._context.sendData)r.on(\"click\",(function(){x.sendDataToCloud(t)}));else{var n=window.location.pathname.split(\"/\"),a=window.location.search;r.attr({\"xlink:xlink:show\":\"new\",\"xlink:xlink:href\":\"/\"+n[2].split(\".\")[0]+\"/\"+n[1]+a})}}(t,o),s.text(o.text()&&l.text()?\" - \":\"\")}},x.sendDataToCloud=function(t){var e=(window.PLOTLYENV||{}).BASE_URL||t._context.plotlyServerURL;if(e){t.emit(\"plotly_beforeexport\");var r=n.select(t).append(\"div\").attr(\"id\",\"hiddenform\").style(\"display\",\"none\"),a=r.append(\"form\").attr({action:e+\"/external\",method:\"post\",target:\"_blank\"});return a.append(\"input\").attr({type:\"text\",name:\"data\"}).node().value=x.graphJson(t,!1,\"keepdata\"),a.node().submit(),r.remove(),t.emit(\"plotly_afterexport\"),!1}};var w=[\"days\",\"shortDays\",\"months\",\"shortMonths\",\"periods\",\"dateTime\",\"date\",\"time\",\"decimal\",\"thousands\",\"grouping\",\"currency\"],T=[\"year\",\"month\",\"dayMonth\",\"dayMonthYear\"];function k(t,e){var r=t._context.locale,n=!1,a={};function i(t){for(var r=!0,i=0;i<e.length;i++){var o=e[i];a[o]||(t[o]?a[o]=t[o]:r=!1)}r&&(n=!0)}for(var s=0;s<2;s++){for(var l=t._context.locales,c=0;c<2;c++){var u=(l[r]||{}).format;if(u&&(i(u),n))break;l=o.localeRegistry}var h=r.split(\"-\")[0];if(n||h===r)break;r=h}return n||i(o.localeRegistry.en.format),a}function M(t,e){var r={_fullLayout:e},n=\"x\"===t._id.charAt(0),a=t._mainAxis._anchorAxis,i=\"\",o=\"\",s=\"\";if(a&&(s=a._mainAxis._id,i=n?t._id+s:s+t._id),!i||!e._plots[i]){i=\"\";for(var l=t._counterAxes,c=0;c<l.length;c++){var u=l[c],h=n?t._id+u:u+t._id;o||(o=h);var p=f.getFromId(r,u);if(s&&p.overlaying===s){i=h;break}}}return i||o}function A(t){var e=t.transforms;if(Array.isArray(e)&&e.length)for(var r=0;r<e.length;r++){var n=e[r],a=n._module||b[n.type];if(a&&a.makesData)return!0}return!1}function S(t,e,r,n){for(var a=t.transforms,i=[t],o=0;o<a.length;o++){var s=a[o],l=b[s.type];l&&l.transform&&(i=l.transform(i,{transform:s,fullTrace:t,fullData:e,layout:r,fullLayout:n,transformIndex:o}))}return i}function E(t){return\"string\"==typeof t&&\"px\"===t.substr(t.length-2)&&parseFloat(t)}function C(t){var e=t.margin;if(!t._size){var r=t._size={l:Math.round(e.l),r:Math.round(e.r),t:Math.round(e.t),b:Math.round(e.b),p:Math.round(e.pad)};r.w=Math.round(t.width)-r.l-r.r,r.h=Math.round(t.height)-r.t-r.b}t._pushmargin||(t._pushmargin={}),t._pushmarginIds||(t._pushmarginIds={})}x.supplyDefaults=function(t,e){var r=e&&e.skipUpdateCalc,i=t._fullLayout||{};if(i._skipDefaults)delete i._skipDefaults;else{var s,l=t._fullLayout={},u=t.layout||{},h=t._fullData||[],f=t._fullData=[],d=t.data||[],g=t.calcdata||[],m=t._context||{};t._transitionData||x.createTransitionData(t),l._dfltTitle={plot:y(t,\"Click to enter Plot title\"),x:y(t,\"Click to enter X axis title\"),y:y(t,\"Click to enter Y axis title\"),colorbar:y(t,\"Click to enter Colorscale title\"),annotation:y(t,\"new text\")},l._traceWord=y(t,\"trace\");var b=k(t,w);if(l._mapboxAccessToken=m.mapboxAccessToken,i._initialAutoSizeIsDone){var _=i.width,M=i.height;x.supplyLayoutGlobalDefaults(u,l,b),u.width||(l.width=_),u.height||(l.height=M),x.sanitizeMargins(l)}else{x.supplyLayoutGlobalDefaults(u,l,b);var A=!u.width||!u.height,S=l.autosize,E=m.autosizable;A&&(S||E)?x.plotAutoSize(t,u,l):A&&x.sanitizeMargins(l),!S&&A&&(u.width=l.width,u.height=l.height)}l._d3locale=function(t,e){return t.decimal=e.charAt(0),t.thousands=e.charAt(1),{numberFormat:n.locale(t).numberFormat,timeFormat:a(t).utcFormat}}(b,l.separators),l._extraFormat=k(t,T),l._initialAutoSizeIsDone=!0,l._dataLength=d.length,l._modules=[],l._visibleModules=[],l._basePlotModules=[];var L=l._subplots=function(){var t,e,r=o.collectableSubplotTypes,n={};if(!r){r=[];var a=o.subplotsRegistry;for(var i in a){var s=a[i].attr;if(s&&(r.push(i),Array.isArray(s)))for(e=0;e<s.length;e++)c.pushUnique(r,s[e])}}for(t=0;t<r.length;t++)n[r[t]]=[];return n}(),P=l._splomAxes={x:{},y:{}},I=l._splomSubplots={};l._splomGridDflt={},l._scatterStackOpts={},l._firstScatter={},l._alignmentOpts={},l._colorAxes={},l._requestRangeslider={},l._traceUids=function(t,e){var r,n,a=e.length,i=[];for(r=0;r<t.length;r++){var o=t[r]._fullInput;o!==n&&i.push(o),n=o}var s=i.length,l=new Array(a),u={};function h(t,e){l[e]=t,u[t]=1}function f(t,e){if(t&&\"string\"==typeof t&&!u[t])return h(t,e),!0}for(r=0;r<a;r++){var p=e[r].uid;\"number\"==typeof p&&(p=String(p)),f(p,r)||(r<s&&f(i[r].uid,r)||h(c.randstr(u),r))}return l}(h,d),l._globalTransforms=(t._context||{}).globalTransforms,x.supplyDataDefaults(d,f,u,l);var z=Object.keys(P.x),O=Object.keys(P.y);if(z.length>1&&O.length>1){for(o.getComponentMethod(\"grid\",\"sizeDefaults\")(u,l),s=0;s<z.length;s++)c.pushUnique(L.xaxis,z[s]);for(s=0;s<O.length;s++)c.pushUnique(L.yaxis,O[s]);for(var D in I)c.pushUnique(L.cartesian,D)}if(l._has=x._hasPlotType.bind(l),h.length===f.length)for(s=0;s<f.length;s++)v(f[s],h[s]);x.supplyLayoutModuleDefaults(u,l,f,t._transitionData);var R=l._visibleModules,F=[];for(s=0;s<R.length;s++){var B=R[s].crossTraceDefaults;B&&c.pushUnique(F,B)}for(s=0;s<F.length;s++)F[s](f,l);l._hasOnlyLargeSploms=1===l._basePlotModules.length&&\"splom\"===l._basePlotModules[0].name&&z.length>15&&O.length>15&&0===l.shapes.length&&0===l.images.length,l._hasCartesian=l._has(\"cartesian\"),l._hasGeo=l._has(\"geo\"),l._hasGL3D=l._has(\"gl3d\"),l._hasGL2D=l._has(\"gl2d\"),l._hasTernary=l._has(\"ternary\"),l._hasPie=l._has(\"pie\"),x.linkSubplots(f,l,h,i),x.cleanPlot(f,l,h,i);var N=!(!i._has||!i._has(\"gl2d\")),j=!(!l._has||!l._has(\"gl2d\")),U=!(!i._has||!i._has(\"cartesian\"))||N,V=!(!l._has||!l._has(\"cartesian\"))||j;U&&!V?i._bgLayer.remove():V&&!U&&(l._shouldCreateBgLayer=!0),i._zoomlayer&&!t._dragging&&p({_fullLayout:i}),function(t,e){var r,n=[];e.meta&&(r=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var a=0;a<t.length;a++){var i=t[a];i.meta?n[i.index]=i._meta={meta:i.meta}:e.meta&&(i._meta={meta:e.meta}),e.meta&&(i._meta.layout={meta:e.meta})}n.length&&(r||(r=e._meta={}),r.data=n)}(f,l),v(l,i),o.getComponentMethod(\"colorscale\",\"crossTraceDefaults\")(f,l),l._preGUI||(l._preGUI={}),l._tracePreGUI||(l._tracePreGUI={});var q,H=l._tracePreGUI,G={};for(q in H)G[q]=\"old\";for(s=0;s<f.length;s++)G[q=f[s]._fullInput.uid]||(H[q]={}),G[q]=\"new\";for(q in G)\"old\"===G[q]&&delete H[q];C(l),o.getComponentMethod(\"rangeslider\",\"makeData\")(l),r||g.length!==f.length||x.supplyDefaultsUpdateCalc(g,f)}},x.supplyDefaultsUpdateCalc=function(t,e){for(var r=0;r<e.length;r++){var n=e[r],a=(t[r]||[])[0];if(a&&a.trace){var i=a.trace;if(i._hasCalcTransform){var o,s,l,u=i._arrayAttrs;for(o=0;o<u.length;o++)s=u[o],l=c.nestedProperty(i,s).get().slice(),c.nestedProperty(n,s).set(l)}a.trace=n}}},x.createTransitionData=function(t){t._transitionData||(t._transitionData={}),t._transitionData._frames||(t._transitionData._frames=[]),t._transitionData._frameHash||(t._transitionData._frameHash={}),t._transitionData._counter||(t._transitionData._counter=0),t._transitionData._interruptCallbacks||(t._transitionData._interruptCallbacks=[])},x._hasPlotType=function(t){var e,r=this._basePlotModules||[];for(e=0;e<r.length;e++)if(r[e].name===t)return!0;var n=this._modules||[];for(e=0;e<n.length;e++){var a=n[e].name;if(a===t)return!0;var i=o.modules[a];if(i&&i.categories[t])return!0}return!1},x.cleanPlot=function(t,e,r,n){var a,i,o=n._basePlotModules||[];for(a=0;a<o.length;a++){var s=o[a];s.clean&&s.clean(t,e,r,n)}var l=n._has&&n._has(\"gl\"),c=e._has&&e._has(\"gl\");l&&!c&&void 0!==n._glcontainer&&(n._glcontainer.selectAll(\".gl-canvas\").remove(),n._glcontainer.selectAll(\".no-webgl\").remove(),n._glcanvas=null);var u=!!n._infolayer;t:for(a=0;a<r.length;a++){var h=r[a].uid;for(i=0;i<t.length;i++){if(h===t[i].uid)continue t}u&&n._infolayer.select(\".cb\"+h).remove()}},x.linkSubplots=function(t,e,r,n){var a,i,s=n._plots||{},l=e._plots={},u=e._subplots,h={_fullData:t,_fullLayout:e},p=u.cartesian.concat(u.gl2d||[]);for(a=0;a<p.length;a++){var d,g=p[a],m=s[g],v=f.getFromId(h,g,\"x\"),y=f.getFromId(h,g,\"y\");for(m?d=l[g]=m:(d=l[g]={}).id=g,v._counterAxes.push(y._id),y._counterAxes.push(v._id),v._subplotsWith.push(g),y._subplotsWith.push(g),d.xaxis=v,d.yaxis=y,d._hasClipOnAxisFalse=!1,i=0;i<t.length;i++){var x=t[i];if(x.xaxis===d.xaxis._id&&x.yaxis===d.yaxis._id&&!1===x.cliponaxis){d._hasClipOnAxisFalse=!0;break}}}var b,_=f.list(h,null,!0);for(a=0;a<_.length;a++){var w=null;(b=_[a]).overlaying&&(w=f.getFromId(h,b.overlaying))&&w.overlaying&&(b.overlaying=!1,w=null),b._mainAxis=w||b,w&&(b.domain=w.domain.slice()),b._anchorAxis=\"free\"===b.anchor?null:f.getFromId(h,b.anchor)}for(a=0;a<_.length;a++)if((b=_[a])._counterAxes.sort(f.idSort),b._subplotsWith.sort(c.subplotSort),b._mainSubplot=M(b,e),b._counterAxes.length&&(b.spikemode&&-1!==b.spikemode.indexOf(\"across\")||b.automargin&&b.mirror&&\"free\"!==b.anchor||o.getComponentMethod(\"rangeslider\",\"isVisible\")(b))){var T=1,k=0;for(i=0;i<b._counterAxes.length;i++){var A=f.getFromId(h,b._counterAxes[i]);T=Math.min(T,A.domain[0]),k=Math.max(k,A.domain[1])}T<k&&(b._counterDomainMin=T,b._counterDomainMax=k)}},x.clearExpandedTraceDefaultColors=function(t){var e,r,n;for(r=[],(e=t._module._colorAttrs)||(t._module._colorAttrs=e=[],s.crawl(t._module.attributes,(function(t,n,a,i){r[i]=n,r.length=i+1,\"color\"===t.valType&&void 0===t.dflt&&e.push(r.join(\".\"))}))),n=0;n<e.length;n++){c.nestedProperty(t,\"_input.\"+e[n]).get()||c.nestedProperty(t,e[n]).set(null)}},x.supplyDataDefaults=function(t,e,r,n){var a,i,s,u=n._modules,h=n._visibleModules,f=n._basePlotModules,p=0,d=0;function g(t){e.push(t);var r=t._module;r&&(c.pushUnique(u,r),!0===t.visible&&c.pushUnique(h,r),c.pushUnique(f,t._module.basePlotModule),p++,!1!==t._input.visible&&d++)}n._transformModules=[];var m={},y=[],b=(r.template||{}).data||{},_=l.traceTemplater(b);for(a=0;a<t.length;a++){if(s=t[a],(i=_.newTrace(s)).uid=n._traceUids[a],x.supplyTraceDefaults(s,i,d,n,a),i.index=a,i._input=s,i._expandedIndex=p,i.transforms&&i.transforms.length)for(var w=!1!==s.visible&&!1===i.visible,T=S(i,e,r,n),k=0;k<T.length;k++){var M=T[k],A={_template:i._template,type:i.type,uid:i.uid+k};w&&!1===M.visible&&delete M.visible,x.supplyTraceDefaults(M,A,p,n,a),v(A,M),A.index=a,A._input=s,A._fullInput=i,A._expandedIndex=p,A._expandedInput=M,g(A)}else i._fullInput=i,i._expandedInput=i,g(i);o.traceIs(i,\"carpetAxis\")&&(m[i.carpet]=i),o.traceIs(i,\"carpetDependent\")&&y.push(a)}for(a=0;a<y.length;a++)if((i=e[y[a]]).visible){var E=m[i.carpet];i._carpet=E,E&&E.visible?(i.xaxis=E.xaxis,i.yaxis=E.yaxis):i.visible=!1}},x.supplyAnimationDefaults=function(t){var e;t=t||{};var r={};function n(e,n){return c.coerce(t||{},r,d,e,n)}if(n(\"mode\"),n(\"direction\"),n(\"fromcurrent\"),Array.isArray(t.frame))for(r.frame=[],e=0;e<t.frame.length;e++)r.frame[e]=x.supplyAnimationFrameDefaults(t.frame[e]||{});else r.frame=x.supplyAnimationFrameDefaults(t.frame||{});if(Array.isArray(t.transition))for(r.transition=[],e=0;e<t.transition.length;e++)r.transition[e]=x.supplyAnimationTransitionDefaults(t.transition[e]||{});else r.transition=x.supplyAnimationTransitionDefaults(t.transition||{});return r},x.supplyAnimationFrameDefaults=function(t){var e={};function r(r,n){return c.coerce(t||{},e,d.frame,r,n)}return r(\"duration\"),r(\"redraw\"),e},x.supplyAnimationTransitionDefaults=function(t){var e={};function r(r,n){return c.coerce(t||{},e,d.transition,r,n)}return r(\"duration\"),r(\"easing\"),e},x.supplyFrameDefaults=function(t){var e={};function r(r,n){return c.coerce(t,e,g,r,n)}return r(\"group\"),r(\"name\"),r(\"traces\"),r(\"baseframe\"),r(\"data\"),r(\"layout\"),e},x.supplyTraceDefaults=function(t,e,r,n,a){var i,s=n.colorway||u.defaults,l=s[r%s.length];function h(r,n){return c.coerce(t,e,x.attributes,r,n)}var f=h(\"visible\");h(\"type\"),h(\"name\",n._traceWord+\" \"+a),h(\"uirevision\",n.uirevision);var p=x.getModule(e);if(e._module=p,p){var d=p.basePlotModule,g=d.attr,m=d.attributes;if(g&&m){var v=n._subplots,y=\"\";if(f||\"gl2d\"!==d.name){if(Array.isArray(g))for(i=0;i<g.length;i++){var b=g[i],_=c.coerce(t,e,m,b);v[b]&&c.pushUnique(v[b],_),y+=_}else y=c.coerce(t,e,m,g);v[d.name]&&c.pushUnique(v[d.name],y)}}}return f&&(h(\"customdata\"),h(\"ids\"),h(\"meta\"),o.traceIs(e,\"showLegend\")?(c.coerce(t,e,p.attributes.showlegend?p.attributes:x.attributes,\"showlegend\"),h(\"legendgroup\"),e._dfltShowLegend=!0):e._dfltShowLegend=!1,p&&p.supplyDefaults(t,e,l,n),o.traceIs(e,\"noOpacity\")||h(\"opacity\"),o.traceIs(e,\"notLegendIsolatable\")&&(e.visible=!!e.visible),o.traceIs(e,\"noHover\")||(e.hovertemplate||c.coerceHoverinfo(t,e,n),\"parcats\"!==e.type&&o.getComponentMethod(\"fx\",\"supplyDefaults\")(t,e,l,n)),p&&p.selectPoints&&h(\"selectedpoints\"),x.supplyTransformDefaults(t,e,n)),e},x.hasMakesDataTransform=A,x.supplyTransformDefaults=function(t,e,r){if(e._length||A(t)){var n=r._globalTransforms||[],a=r._transformModules||[];if(Array.isArray(t.transforms)||0!==n.length)for(var i=t.transforms||[],o=n.concat(i),s=e.transforms=[],l=0;l<o.length;l++){var u,h=o[l],f=h.type,p=b[f],d=!(h._module&&h._module===p),g=p&&\"function\"==typeof p.transform;p||c.warn(\"Unrecognized transform type \"+f+\".\"),p&&p.supplyDefaults&&(d||g)?((u=p.supplyDefaults(h,e,r,t)).type=f,u._module=p,c.pushUnique(a,p)):u=c.extendFlat({},h),s.push(u)}}},x.supplyLayoutGlobalDefaults=function(t,e,r){function n(r,n){return c.coerce(t,e,x.layoutAttributes,r,n)}var a=t.template;c.isPlainObject(a)&&(e.template=a,e._template=a.layout,e._dataTemplate=a.data);var i=c.coerceFont(n,\"font\");n(\"title.text\",e._dfltTitle.plot),c.coerceFont(n,\"title.font\",{family:i.family,size:Math.round(1.4*i.size),color:i.color}),n(\"title.xref\"),n(\"title.yref\"),n(\"title.x\"),n(\"title.y\"),n(\"title.xanchor\"),n(\"title.yanchor\"),n(\"title.pad.t\"),n(\"title.pad.r\"),n(\"title.pad.b\"),n(\"title.pad.l\"),n(\"uniformtext.mode\")&&n(\"uniformtext.minsize\"),n(\"autosize\",!(t.width&&t.height)),n(\"width\"),n(\"height\"),n(\"margin.l\"),n(\"margin.r\"),n(\"margin.t\"),n(\"margin.b\"),n(\"margin.pad\"),n(\"margin.autoexpand\"),t.width&&t.height&&x.sanitizeMargins(e),o.getComponentMethod(\"grid\",\"sizeDefaults\")(t,e),n(\"paper_bgcolor\"),n(\"separators\",r.decimal+r.thousands),n(\"hidesources\"),n(\"colorway\"),n(\"datarevision\");var s=n(\"uirevision\");n(\"editrevision\",s),n(\"selectionrevision\",s),n(\"modebar.orientation\"),n(\"modebar.bgcolor\",u.addOpacity(e.paper_bgcolor,.5));var l=u.contrast(u.rgb(e.modebar.bgcolor));n(\"modebar.color\",u.addOpacity(l,.3)),n(\"modebar.activecolor\",u.addOpacity(l,.7)),n(\"modebar.uirevision\",s),o.getComponentMethod(\"shapes\",\"supplyDrawNewShapeDefaults\")(t,e,n),n(\"meta\"),c.isPlainObject(t.transition)&&(n(\"transition.duration\"),n(\"transition.easing\"),n(\"transition.ordering\")),o.getComponentMethod(\"calendars\",\"handleDefaults\")(t,e,\"calendar\"),o.getComponentMethod(\"fx\",\"supplyLayoutGlobalDefaults\")(t,e,n)},x.plotAutoSize=function(t,e,r){var n,a,o=t._context||{},s=o.frameMargins,l=c.isPlotDiv(t);if(l&&t.emit(\"plotly_autosize\"),o.fillFrame)n=window.innerWidth,a=window.innerHeight,document.body.style.overflow=\"hidden\";else{var u=l?window.getComputedStyle(t):{};if(n=E(u.width)||E(u.maxWidth)||r.width,a=E(u.height)||E(u.maxHeight)||r.height,i(s)&&s>0){var h=1-2*s;n=Math.round(h*n),a=Math.round(h*a)}}var f=x.layoutAttributes.width.min,p=x.layoutAttributes.height.min;n<f&&(n=f),a<p&&(a=p);var d=!e.width&&Math.abs(r.width-n)>1,g=!e.height&&Math.abs(r.height-a)>1;(g||d)&&(d&&(r.width=n),g&&(r.height=a)),t._initialAutoSize||(t._initialAutoSize={width:n,height:a}),x.sanitizeMargins(r)},x.supplyLayoutModuleDefaults=function(t,e,r,n){var a,i,s,l=o.componentsRegistry,u=e._basePlotModules,h=o.subplotsRegistry.cartesian;for(a in l)(s=l[a]).includeBasePlot&&s.includeBasePlot(t,e);for(var f in u.length||u.push(h),e._has(\"cartesian\")&&(o.getComponentMethod(\"grid\",\"contentDefaults\")(t,e),h.finalizeSubplots(t,e)),e._subplots)e._subplots[f].sort(c.subplotSort);for(i=0;i<u.length;i++)(s=u[i]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r);var p=e._modules;for(i=0;i<p.length;i++)(s=p[i]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r);var d=e._transformModules;for(i=0;i<d.length;i++)(s=d[i]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r,n);for(a in l)(s=l[a]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r)},x.purge=function(t){var e=t._fullLayout||{};void 0!==e._glcontainer&&(e._glcontainer.selectAll(\".gl-canvas\").remove(),e._glcontainer.remove(),e._glcanvas=null),e._modeBar&&e._modeBar.destroy(),t._transitionData&&(t._transitionData._interruptCallbacks&&(t._transitionData._interruptCallbacks.length=0),t._transitionData._animationRaf&&window.cancelAnimationFrame(t._transitionData._animationRaf)),c.clearThrottle(),c.clearResponsive(t),delete t.data,delete t.layout,delete t._fullData,delete t._fullLayout,delete t.calcdata,delete t.framework,delete t.empty,delete t.fid,delete t.undoqueue,delete t.undonum,delete t.autoplay,delete t.changed,delete t._promises,delete t._redrawTimer,delete t._hmlumcount,delete t._hmpixcount,delete t._transitionData,delete t._transitioning,delete t._initialAutoSize,delete t._transitioningWithDuration,delete t._dragging,delete t._dragged,delete t._dragdata,delete t._hoverdata,delete t._snapshotInProgress,delete t._editing,delete t._mouseDownTime,delete t._legendMouseDownTime,t.removeAllListeners&&t.removeAllListeners()},x.style=function(t){var e,r=t._fullLayout._visibleModules,n=[];for(e=0;e<r.length;e++){var a=r[e];a.style&&c.pushUnique(n,a.style)}for(e=0;e<n.length;e++)n[e](t)},x.sanitizeMargins=function(t){if(t&&t.margin){var e,r=t.width,n=t.height,a=t.margin,i=r-(a.l+a.r),o=n-(a.t+a.b);i<0&&(e=(r-1)/(a.l+a.r),a.l=Math.floor(e*a.l),a.r=Math.floor(e*a.r)),o<0&&(e=(n-1)/(a.t+a.b),a.t=Math.floor(e*a.t),a.b=Math.floor(e*a.b))}},x.clearAutoMarginIds=function(t){t._fullLayout._pushmarginIds={}},x.allowAutoMargin=function(t,e){t._fullLayout._pushmarginIds[e]=1},x.autoMargin=function(t,e,r){var n=t._fullLayout,a=n._pushmargin,i=n._pushmarginIds;if(!1!==n.margin.autoexpand){if(r){var o=r.pad;if(void 0===o){var s=n.margin;o=Math.min(12,s.l,s.r,s.t,s.b)}r.l+r.r>.5*n.width&&(c.log(\"Margin push\",e,\"is too big in x, dropping\"),r.l=r.r=0),r.b+r.t>.5*n.height&&(c.log(\"Margin push\",e,\"is too big in y, dropping\"),r.b=r.t=0);var l=void 0!==r.xl?r.xl:r.x,u=void 0!==r.xr?r.xr:r.x,h=void 0!==r.yt?r.yt:r.y,f=void 0!==r.yb?r.yb:r.y;a[e]={l:{val:l,size:r.l+o},r:{val:u,size:r.r+o},b:{val:f,size:r.b+o},t:{val:h,size:r.t+o}},i[e]=1}else delete a[e],delete i[e];if(!n._replotting)return x.doAutoMargin(t)}},x.doAutoMargin=function(t){var e=t._fullLayout;e._size||(e._size={}),C(e);var r=e._size,n=e.margin,a=c.extendFlat({},r),s=n.l,l=n.r,u=n.t,h=n.b,f=e.width,p=e.height,d=e._pushmargin,g=e._pushmarginIds;if(!1!==e.margin.autoexpand){for(var m in d)g[m]||delete d[m];for(var v in d.base={l:{val:0,size:s},r:{val:1,size:l},t:{val:1,size:u},b:{val:0,size:h}},d){var y=d[v].l||{},b=d[v].b||{},_=y.val,w=y.size,T=b.val,k=b.size;for(var M in d){if(i(w)&&d[M].r){var A=d[M].r.val,S=d[M].r.size;if(A>_){var E=(w*A+(S-f)*_)/(A-_),L=(S*(1-_)+(w-f)*(1-A))/(A-_);E>=0&&L>=0&&f-(E+L)>0&&E+L>s+l&&(s=E,l=L)}}if(i(k)&&d[M].t){var P=d[M].t.val,I=d[M].t.size;if(P>T){var z=(k*P+(I-p)*T)/(P-T),O=(I*(1-T)+(k-p)*(1-P))/(P-T);z>=0&&O>=0&&p-(O+z)>0&&z+O>h+u&&(h=z,u=O)}}}}}if(r.l=Math.round(s),r.r=Math.round(l),r.t=Math.round(u),r.b=Math.round(h),r.p=Math.round(n.pad),r.w=Math.round(f)-r.l-r.r,r.h=Math.round(p)-r.t-r.b,!e._replotting&&x.didMarginChange(a,r)){\"_redrawFromAutoMarginCount\"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var D=3*(1+Object.keys(g).length);if(e._redrawFromAutoMarginCount<D)return o.call(\"plot\",t);c.warn(\"Too many auto-margin redraws.\")}};var L=[\"l\",\"r\",\"t\",\"b\",\"p\",\"w\",\"h\"];function P(t,e,r){var n=!1;var a=[x.previousPromises,function(){if(t._transitionData)return t._transitioning=!1,function(t){var e=Promise.resolve();if(!t)return e;for(;t.length;)e=e.then(t.shift());return e}(t._transitionData._interruptCallbacks)},r.prepareFn,x.rehover,function(){return t.emit(\"plotly_transitioning\",[]),new Promise((function(a){t._transitioning=!0,e.duration>0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&t._transitionData._interruptCallbacks.push((function(){return o.call(\"redraw\",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit(\"plotly_transitioninterrupted\",[])}));var i=0,s=0;function l(){return i++,function(){s++,n||s!==i||function(e){if(!t._transitionData)return;(function(t){if(t)for(;t.length;)t.shift()})(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return o.call(\"redraw\",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit(\"plotly_transitioned\",[])})).then(e)}(a)}}r.runFn(l),setTimeout(l())}))}],i=c.syncOrAsync(a,t);return i&&i.then||(i=Promise.resolve()),i.then((function(){return t}))}x.didMarginChange=function(t,e){for(var r=0;r<L.length;r++){var n=L[r],a=t[n],o=e[n];if(!i(a)||Math.abs(o-a)>1)return!0}return!1},x.graphJson=function(t,e,r,n,a,i){(a&&e&&!t._fullData||a&&!e&&!t._fullLayout)&&x.supplyDefaults(t);var o=a?t._fullData:t.data,s=a?t._fullLayout:t.layout,l=(t._transitionData||{})._frames;function u(t,e){if(\"function\"==typeof t)return e?\"_function_\":null;if(c.isPlainObject(t)){var n,a={};return Object.keys(t).sort().forEach((function(i){if(-1===[\"_\",\"[\"].indexOf(i.charAt(0)))if(\"function\"!=typeof t[i]){if(\"keepdata\"===r){if(\"src\"===i.substr(i.length-3))return}else if(\"keepstream\"===r){if(\"string\"==typeof(n=t[i+\"src\"])&&n.indexOf(\":\")>0&&!c.isPlainObject(t.stream))return}else if(\"keepall\"!==r&&\"string\"==typeof(n=t[i+\"src\"])&&n.indexOf(\":\")>0)return;a[i]=u(t[i],e)}else e&&(a[i]=\"_function\")})),a}return Array.isArray(t)?t.map((function(t){return u(t,e)})):c.isTypedArray(t)?c.simpleMap(t,c.identity):c.isJSDate(t)?c.ms2DateTimeLocal(+t):t}var h={data:(o||[]).map((function(t){var r=u(t);return e&&delete r.fit,r}))};return e||(h.layout=u(s)),t.framework&&t.framework.isPolar&&(h=t.framework.getConfig()),l&&(h.frames=u(l)),i&&(h.config=u(t._context,!0)),\"object\"===n?h:JSON.stringify(h)},x.modifyFrames=function(t,e){var r,n,a,i=t._transitionData._frames,o=t._transitionData._frameHash;for(r=0;r<e.length;r++)switch((n=e[r]).type){case\"replace\":a=n.value;var s=(i[n.index]||{}).name,l=a.name;i[n.index]=o[l]=a,l!==s&&(delete o[s],o[l]=a);break;case\"insert\":o[(a=n.value).name]=a,i.splice(n.index,0,a);break;case\"delete\":delete o[(a=i[n.index]).name],i.splice(n.index,1)}return Promise.resolve()},x.computeFrame=function(t,e){var r,n,a,i,o=t._transitionData._frameHash;if(!e)throw new Error(\"computeFrame must be given a string frame name\");var s=o[e.toString()];if(!s)return!1;for(var l=[s],c=[s.name];s.baseframe&&(s=o[s.baseframe.toString()])&&-1===c.indexOf(s.name);)l.push(s),c.push(s.name);for(var u={};s=l.pop();)if(s.layout&&(u.layout=x.extendLayout(u.layout,s.layout)),s.data){if(u.data||(u.data=[]),!(n=s.traces))for(n=[],r=0;r<s.data.length;r++)n[r]=r;for(u.traces||(u.traces=[]),r=0;r<s.data.length;r++)null!=(a=n[r])&&(-1===(i=u.traces.indexOf(a))&&(i=u.data.length,u.traces[i]=a),u.data[i]=x.extendTrace(u.data[i],s.data[r]))}return u},x.recomputeFrameHash=function(t){for(var e=t._transitionData._frameHash={},r=t._transitionData._frames,n=0;n<r.length;n++){var a=r[n];a&&a.name&&(e[a.name]=a)}},x.extendObjectWithContainers=function(t,e,r){var n,a,i,o,s,l,u,h=c.extendDeepNoArrays({},e||{}),f=c.expandObjectPaths(h),p={};if(r&&r.length)for(i=0;i<r.length;i++)void 0===(a=(n=c.nestedProperty(f,r[i])).get())?c.nestedProperty(p,r[i]).set(null):(n.set(null),c.nestedProperty(p,r[i]).set(a));if(t=c.extendDeepNoArrays(t||{},f),r&&r.length)for(i=0;i<r.length;i++)if(l=c.nestedProperty(p,r[i]).get()){for(u=(s=c.nestedProperty(t,r[i])).get(),Array.isArray(u)||(u=[],s.set(u)),o=0;o<l.length;o++){var d=l[o];u[o]=null===d?null:x.extendObjectWithContainers(u[o],d)}s.set(u)}return t},x.dataArrayContainers=[\"transforms\",\"dimensions\"],x.layoutArrayContainers=o.layoutArrayContainers,x.extendTrace=function(t,e){return x.extendObjectWithContainers(t,e,x.dataArrayContainers)},x.extendLayout=function(t,e){return x.extendObjectWithContainers(t,e,x.layoutArrayContainers)},x.transition=function(t,e,r,n,a,i){var o={redraw:a.redraw},s={},l=[];return o.prepareFn=function(){for(var a=Array.isArray(e)?e.length:0,i=n.slice(0,a),o=0;o<i.length;o++){var u=i[o],h=t._fullData[u]._module;if(h){if(h.animatable){var f=h.basePlotModule.name;s[f]||(s[f]=[]),s[f].push(u)}t.data[i[o]]=x.extendTrace(t.data[i[o]],e[o])}}var p=c.expandObjectPaths(c.extendDeepNoArrays({},r)),d=/^[xy]axis[0-9]*$/;for(var g in p)d.test(g)&&delete p[g].range;x.extendLayout(t.layout,p),delete t.calcdata,x.supplyDefaults(t),x.doCalcdata(t);var m=c.expandObjectPaths(r);if(m){var v=t._fullLayout._plots;for(var y in v){var b=v[y],_=b.xaxis,w=b.yaxis,T=_.range.slice(),k=w.range.slice(),M=null,A=null,S=null,E=null;Array.isArray(m[_._name+\".range\"])?M=m[_._name+\".range\"].slice():Array.isArray((m[_._name]||{}).range)&&(M=m[_._name].range.slice()),Array.isArray(m[w._name+\".range\"])?A=m[w._name+\".range\"].slice():Array.isArray((m[w._name]||{}).range)&&(A=m[w._name].range.slice()),T&&M&&(_.r2l(T[0])!==_.r2l(M[0])||_.r2l(T[1])!==_.r2l(M[1]))&&(S={xr0:T,xr1:M}),k&&A&&(w.r2l(k[0])!==w.r2l(A[0])||w.r2l(k[1])!==w.r2l(A[1]))&&(E={yr0:k,yr1:A}),(S||E)&&l.push(c.extendFlat({plotinfo:b},S,E))}}return Promise.resolve()},o.runFn=function(e){var n,a,o=t._fullLayout._basePlotModules,u=l.length;if(r)for(a=0;a<o.length;a++)o[a].transitionAxes&&o[a].transitionAxes(t,l,i,e);for(var h in u?((n=c.extendFlat({},i)).duration=0,delete s.cartesian):n=i,s){var f=s[h];t._fullData[f[0]]._module.basePlotModule.plot(t,f,n,e)}},P(t,i,o)},x.transitionFromReact=function(t,e,r,n){var a=t._fullLayout,i=a.transition,o={},s=[];return o.prepareFn=function(){var t=a._plots;for(var i in o.redraw=!1,\"some\"===e.anim&&(o.redraw=!0),\"some\"===r.anim&&(o.redraw=!0),t){var l=t[i],u=l.xaxis,h=l.yaxis,f=n[u._name].range.slice(),p=n[h._name].range.slice(),d=u.range.slice(),g=h.range.slice();u.setScale(),h.setScale();var m=null,v=null;u.r2l(f[0])===u.r2l(d[0])&&u.r2l(f[1])===u.r2l(d[1])||(m={xr0:f,xr1:d}),h.r2l(p[0])===h.r2l(g[0])&&h.r2l(p[1])===h.r2l(g[1])||(v={yr0:p,yr1:g}),(m||v)&&s.push(c.extendFlat({plotinfo:l},m,v))}return Promise.resolve()},o.runFn=function(r){for(var n,a,o,l=t._fullData,u=t._fullLayout._basePlotModules,h=[],f=0;f<l.length;f++)h.push(f);function p(){for(var e=0;e<u.length;e++)u[e].transitionAxes&&u[e].transitionAxes(t,s,n,r)}function d(){for(var e=0;e<u.length;e++)u[e].plot(t,o,a,r)}s.length&&e.anim?\"traces first\"===i.ordering?(n=c.extendFlat({},i,{duration:0}),o=h,a=i,setTimeout(p,i.duration),d()):(n=i,o=null,a=c.extendFlat({},i,{duration:0}),setTimeout(d,n.duration),p()):s.length?(n=i,p()):e.anim&&(o=h,a=i,d())},P(t,i,o)},x.doCalcdata=function(t,e){var r,n,a,i,l=f.list(t),u=t._fullData,p=t._fullLayout,d=new Array(u.length),g=(t.calcdata||[]).slice();for(t.calcdata=d,p._numBoxes=0,p._numViolins=0,p._violinScaleGroupStats={},t._hmpixcount=0,t._hmlumcount=0,p._piecolormap={},p._sunburstcolormap={},p._treemapcolormap={},p._funnelareacolormap={},a=0;a<u.length;a++)Array.isArray(e)&&-1===e.indexOf(a)&&(d[a]=g[a]);for(a=0;a<u.length;a++)(r=u[a])._arrayAttrs=s.findArrayAttributes(r),r._extremes={};var m=p._subplots.polar||[];for(a=0;a<m.length;a++)l.push(p[m[a]].radialaxis,p[m[a]].angularaxis);for(var v in p._colorAxes){var y=p[v];!1!==y.cauto&&(delete y.cmin,delete y.cmax)}var x=!1;function _(e){if(r=u[e],n=r._module,!0===r.visible&&r.transforms){if(n&&n.calc){var a=n.calc(t,r);a[0]&&a[0].t&&a[0].t._scene&&delete a[0].t._scene.dirty}for(i=0;i<r.transforms.length;i++){var o=r.transforms[i];(n=b[o.type])&&n.calcTransform&&(r._hasCalcTransform=!0,x=!0,n.calcTransform(t,r,o))}}}function w(e,a){if(r=u[e],!!(n=r._module).isContainer===a){var o=[];if(!0===r.visible&&0!==r._length){delete r._indexToPoints;var s=r.transforms||[];for(i=s.length-1;i>=0;i--)if(s[i].enabled){r._indexToPoints=s[i]._indexToPoints;break}n&&n.calc&&(o=n.calc(t,r))}Array.isArray(o)&&o[0]||(o=[{x:h,y:h}]),o[0].t||(o[0].t={}),o[0].trace=r,d[e]=o}}for(z(l,u,p),a=0;a<u.length;a++)w(a,!0);for(a=0;a<u.length;a++)_(a);for(x&&z(l,u,p),a=0;a<u.length;a++)w(a,!0);for(a=0;a<u.length;a++)w(a,!1);O(t);var T=function(t,e){var r,n,a,i,s,l=[];function u(t,r,n){var a=r._id.charAt(0);if(\"histogram2dcontour\"===t){var i=r._counterAxes[0],o=f.getFromId(e,i),s=\"x\"===a||\"x\"===i&&\"category\"===o.type,l=\"y\"===a||\"y\"===i&&\"category\"===o.type;return function(t,e){return 0===t||0===e||s&&t===n[e].length-1||l&&e===n.length-1?-1:(\"y\"===a?e:t)-1}}return function(t,e){return\"y\"===a?e:t}}var h={min:function(t){return c.aggNums(Math.min,null,t)},max:function(t){return c.aggNums(Math.max,null,t)},sum:function(t){return c.aggNums((function(t,e){return t+e}),null,t)},total:function(t){return c.aggNums((function(t,e){return t+e}),null,t)},mean:function(t){return c.mean(t)},median:function(t){return c.median(t)}};for(r=0;r<t.length;r++){var p=t[r];if(\"category\"===p.type){var d=p.categoryorder.match(I);if(d){var g=d[1],m=d[2],v=[];for(n=0;n<p._categories.length;n++)v.push([p._categories[n],[]]);for(n=0;n<p._traceIndices.length;n++){var y=p._traceIndices[n],x=e._fullData[y],b=p._id.charAt(0);if(!0===x.visible){var _=x.type;o.traceIs(x,\"histogram\")&&(delete x._xautoBinFinished,delete x._yautoBinFinished);var w=e.calcdata[y];for(a=0;a<w.length;a++){var T,k,M,A=w[a];if(\"splom\"===_){var S=x._axesDim[p._id];if(\"y\"===b){var E=x._diag[S][0];E&&(p=e._fullLayout[f.id2name(E)])}var C=A.trace.dimensions[S].values;for(i=0;i<C.length;i++)for(T=C[i],k=p._categoriesMap[T],s=0;s<A.trace.dimensions.length;s++)if(s!==S){var L=A.trace.dimensions[s];v[k][1].push(L.values[i])}}else if(\"scattergl\"===_){for(i=0;i<A.t.x.length;i++)\"x\"===b&&(T=A.t.x[i],k=T,M=A.t.y[i]),\"y\"===b&&(T=A.t.y[i],k=T,M=A.t.x[i]),v[k][1].push(M);A.t&&A.t._scene&&delete A.t._scene.dirty}else if(A.hasOwnProperty(\"z\")){M=A.z;var P=u(x.type,p,M);for(i=0;i<M.length;i++)for(s=0;s<M[i].length;s++)(k=P(s,i))+1&&v[k][1].push(M[i][s])}else for(\"x\"===b?(T=A.p+1?A.p:A.x,M=A.s||A.v||A.y):\"y\"===b&&(T=A.p+1?A.p:A.y,M=A.s||A.v||A.x),Array.isArray(M)||(M=[M]),i=0;i<M.length;i++)v[T][1].push(M[i])}}}p._categoriesValue=v;var z=[];for(n=0;n<v.length;n++)z.push([v[n][0],h[g](v[n][1])]);z.sort((function(t,e){return t[1]-e[1]})),p._categoriesAggregatedValue=z,p._initialCategories=z.map((function(t){return t[0]})),\"descending\"===m&&p._initialCategories.reverse(),l=l.concat(p.sortByInitialCategories())}}}return l}(l,t);if(T.length){for(p._numBoxes=0,p._numViolins=0,a=0;a<T.length;a++)w(T[a],!0);for(a=0;a<T.length;a++)w(T[a],!1);O(t)}o.getComponentMethod(\"fx\",\"calc\")(t),o.getComponentMethod(\"errorbars\",\"calc\")(t)};var I=/(total|sum|min|max|mean|median) (ascending|descending)/;function z(t,e,r){var n,a,i,o={};for(n=0;n<t.length;n++)i=(a=t[n])._id,a.clearCalc(),\"multicategory\"===a.type&&a.setupMultiCategory(e),o[a._id]=1;var s=r._axisMatchGroups||[];for(n=0;n<s.length;n++)for(i in s[n])o[i]||(a=r[f.id2name(i)]).clearCalc()}function O(t){var e,r,n,a=t._fullLayout,i=a._visibleModules,o={};for(r=0;r<i.length;r++){var s=i[r],l=s.crossTraceCalc;if(l){var u=s.basePlotModule.name;o[u]?c.pushUnique(o[u],l):o[u]=[l]}}for(n in o){var h=o[n],f=a._subplots[n];if(Array.isArray(f))for(e=0;e<f.length;e++){var p=f[e],d=\"cartesian\"===n?a._plots[p]:a[p];for(r=0;r<h.length;r++)h[r](t,d,p)}else for(r=0;r<h.length;r++)h[r](t)}}x.rehover=function(t){t._fullLayout._rehover&&t._fullLayout._rehover()},x.redrag=function(t){t._fullLayout._redrag&&t._fullLayout._redrag()},x.generalUpdatePerTraceModule=function(t,e,r,n){var a,i=e.traceHash,o={};for(a=0;a<r.length;a++){var s=r[a],l=s[0].trace;l.visible&&(o[l.type]=o[l.type]||[],o[l.type].push(s))}for(var u in i)if(!o[u]){var h=i[u][0];h[0].trace.visible=!1,o[u]=[h]}for(var f in o){var p=o[f];p[0][0].trace._module.plot(t,e,c.filterVisible(p),n)}e.traceHash=o},x.plotBasePlot=function(t,e,r,n,a){var i=o.getModule(t),s=m(e.calcdata,i)[0];i.plot(e,s,n,a)},x.cleanBasePlot=function(t,e,r,n,a){var i=a._has&&a._has(t),o=r._has&&r._has(t);i&&!o&&a[\"_\"+t+\"layer\"].selectAll(\"g.trace\").remove()}},{\"../components/color\":615,\"../constants/numerical\":724,\"../lib\":749,\"../plot_api/plot_schema\":786,\"../plot_api/plot_template\":787,\"../plots/get_data\":835,\"../registry\":881,\"./animation_attributes\":792,\"./attributes\":794,\"./cartesian/axis_ids\":801,\"./cartesian/handle_outline\":808,\"./command\":824,\"./font_attributes\":826,\"./frame_attributes\":827,\"./layout_attributes\":852,d3:169,\"d3-time-format\":166,\"fast-isnumeric\":241}],862:[function(t,e,r){\"use strict\";e.exports={attr:\"subplot\",name:\"polar\",axisNames:[\"angularaxis\",\"radialaxis\"],axisName2dataArray:{angularaxis:\"theta\",radialaxis:\"r\"},layerNames:[\"draglayer\",\"plotbg\",\"backplot\",\"angular-grid\",\"radial-grid\",\"frontplot\",\"angular-line\",\"radial-line\",\"angular-axis\",\"radial-axis\"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}},{}],863:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../lib/polygon\").tester,i=n.findIndexOfMin,o=n.isAngleInsideSector,s=n.angleDelta,l=n.angleDist;function c(t,e,r,n){var a,i,o=n[0],s=n[1],l=h(Math.sin(e)-Math.sin(t)),c=h(Math.cos(e)-Math.cos(t)),u=Math.tan(r),f=h(1/u),p=l/c,d=s-p*o;return f?l&&c?i=u*(a=d/(u-p)):c?(a=s*f,i=s):(a=o,i=o*u):l&&c?(a=0,i=d):c?(a=0,i=s):a=i=NaN,[a,i]}function u(t,e,r,a){return n.isFullCircle([e,r])?function(t,e){var r,n=e.length,a=new Array(n+1);for(r=0;r<n;r++){var i=e[r];a[r]=[t*Math.cos(i),t*Math.sin(i)]}return a[r]=a[0].slice(),a}(t,a):function(t,e,r,a){var s,u,h=a.length,f=[];function p(e){return[t*Math.cos(e),t*Math.sin(e)]}function d(t,e,r){return c(t,e,r,p(t))}function g(t){return n.mod(t,h)}function m(t){return o(t,[e,r])}var v=i(a,(function(t){return m(t)?l(t,e):1/0})),y=d(a[v],a[g(v-1)],e);for(f.push(y),s=v,u=0;u<h;s++,u++){var x=a[g(s)];if(!m(x))break;f.push(p(x))}var b=i(a,(function(t){return m(t)?l(t,r):1/0})),_=d(a[b],a[g(b+1)],r);return f.push(_),f.push([0,0]),f.push(f[0].slice()),f}(t,e,r,a)}function h(t){return Math.abs(t)>1e-10?t:0}function f(t,e,r){e=e||0,r=r||0;for(var n=t.length,a=new Array(n),i=0;i<n;i++){var o=t[i];a[i]=[e+o[0],r-o[1]]}return a}e.exports={isPtInsidePolygon:function(t,e,r,n,i){if(!o(e,n))return!1;var s,l;r[0]<r[1]?(s=r[0],l=r[1]):(s=r[1],l=r[0]);var c=a(u(s,n[0],n[1],i)),h=a(u(l,n[0],n[1],i)),f=[t*Math.cos(e),t*Math.sin(e)];return h.contains(f)&&!c.contains(f)},findPolygonOffset:function(t,e,r,n){for(var a=1/0,i=1/0,o=u(t,e,r,n),s=0;s<o.length;s++){var l=o[s];a=Math.min(a,l[0]),i=Math.min(i,-l[1])}return[a,i]},findEnclosingVertexAngles:function(t,e){var r=i(e,(function(e){var r=s(e,t);return r>0?r:1/0})),a=n.mod(r+1,e.length);return[e[r],e[a]]},findIntersectionXY:c,findXYatLength:function(t,e,r,n){var a=-e*r,i=e*e+1,o=2*(e*a-r),s=a*a+r*r-t*t,l=Math.sqrt(o*o-4*i*s),c=(-o+l)/(2*i),u=(-o-l)/(2*i);return[[c,e*c+a+n],[u,e*u+a+n]]},clampTiny:h,pathPolygon:function(t,e,r,n,a,i){return\"M\"+f(u(t,e,r,n),a,i).join(\"L\")},pathPolygonAnnulus:function(t,e,r,n,a,i,o){var s,l;t<e?(s=t,l=e):(s=e,l=t);var c=f(u(s,r,n,a),i,o);return\"M\"+f(u(l,r,n,a),i,o).reverse().join(\"L\")+\"M\"+c.join(\"L\")}}},{\"../../lib\":749,\"../../lib/polygon\":761}],864:[function(t,e,r){\"use strict\";var n=t(\"../get_data\").getSubplotCalcData,a=t(\"../../lib\").counterRegex,i=t(\"./polar\"),o=t(\"./constants\"),s=o.attr,l=o.name,c=a(l),u={};u[s]={valType:\"subplotid\",dflt:l,editType:\"calc\"},e.exports={attr:s,name:l,idRoot:l,idRegex:c,attrRegex:c,attributes:u,layoutAttributes:t(\"./layout_attributes\"),supplyLayoutDefaults:t(\"./layout_defaults\"),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,a=e._subplots[l],o=0;o<a.length;o++){var s=a[o],c=n(r,l,s),u=e[s]._subplot;u||(u=i(t,s),e[s]._subplot=u),u.plot(c,e,t._promises)}},clean:function(t,e,r,n){for(var a=n._subplots[l]||[],i=n._has&&n._has(\"gl\"),o=e._has&&e._has(\"gl\"),s=i&&!o,c=0;c<a.length;c++){var u=a[c],h=n[u]._subplot;if(!e[u]&&h)for(var f in h.framework.remove(),h.layers[\"radial-axis-title\"].remove(),h.clipPaths)h.clipPaths[f].remove();s&&h._scene&&(h._scene.destroy(),h._scene=null)}},toSVG:t(\"../cartesian\").toSVG}},{\"../../lib\":749,\"../cartesian\":811,\"../get_data\":835,\"./constants\":862,\"./layout_attributes\":865,\"./layout_defaults\":866,\"./polar\":873}],865:[function(t,e,r){\"use strict\";var n=t(\"../../components/color/attributes\"),a=t(\"../cartesian/layout_attributes\"),i=t(\"../domain\").attributes,o=t(\"../../lib\").extendFlat,s=t(\"../../plot_api/edit_types\").overrideAll,l=s({color:a.color,showline:o({},a.showline,{dflt:!0}),linecolor:a.linecolor,linewidth:a.linewidth,showgrid:o({},a.showgrid,{dflt:!0}),gridcolor:a.gridcolor,gridwidth:a.gridwidth},\"plot\",\"from-root\"),c=s({tickmode:a.tickmode,nticks:a.nticks,tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:a.ticks,ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,showticklabels:a.showticklabels,showtickprefix:a.showtickprefix,tickprefix:a.tickprefix,showticksuffix:a.showticksuffix,ticksuffix:a.ticksuffix,showexponent:a.showexponent,exponentformat:a.exponentformat,minexponent:a.minexponent,separatethousands:a.separatethousands,tickfont:a.tickfont,tickangle:a.tickangle,tickformat:a.tickformat,tickformatstops:a.tickformatstops,layer:a.layer},\"plot\",\"from-root\"),u={visible:o({},a.visible,{dflt:!0}),type:o({},a.type,{values:[\"-\",\"linear\",\"log\",\"date\",\"category\"]}),autorange:o({},a.autorange,{editType:\"plot\"}),rangemode:{valType:\"enumerated\",values:[\"tozero\",\"nonnegative\",\"normal\"],dflt:\"tozero\",editType:\"calc\"},range:o({},a.range,{items:[{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}},{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}}],editType:\"plot\"}),categoryorder:a.categoryorder,categoryarray:a.categoryarray,angle:{valType:\"angle\",editType:\"plot\"},side:{valType:\"enumerated\",values:[\"clockwise\",\"counterclockwise\"],dflt:\"clockwise\",editType:\"plot\"},title:{text:o({},a.title.text,{editType:\"plot\",dflt:\"\"}),font:o({},a.title.font,{editType:\"plot\"}),editType:\"plot\"},hoverformat:a.hoverformat,uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\",_deprecated:{title:a._deprecated.title,titlefont:a._deprecated.titlefont}};o(u,l,c);var h={visible:o({},a.visible,{dflt:!0}),type:{valType:\"enumerated\",values:[\"-\",\"linear\",\"category\"],dflt:\"-\",editType:\"calc\",_noTemplating:!0},categoryorder:a.categoryorder,categoryarray:a.categoryarray,thetaunit:{valType:\"enumerated\",values:[\"radians\",\"degrees\"],dflt:\"degrees\",editType:\"calc\"},period:{valType:\"number\",editType:\"calc\",min:0},direction:{valType:\"enumerated\",values:[\"counterclockwise\",\"clockwise\"],dflt:\"counterclockwise\",editType:\"calc\"},rotation:{valType:\"angle\",editType:\"calc\"},hoverformat:a.hoverformat,uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\"};o(h,l,c),e.exports={domain:i({name:\"polar\",editType:\"plot\"}),sector:{valType:\"info_array\",items:[{valType:\"number\",editType:\"plot\"},{valType:\"number\",editType:\"plot\"}],dflt:[0,360],editType:\"plot\"},hole:{valType:\"number\",min:0,max:1,dflt:0,editType:\"plot\"},bgcolor:{valType:\"color\",editType:\"plot\",dflt:n.background},radialaxis:u,angularaxis:h,gridshape:{valType:\"enumerated\",values:[\"circular\",\"linear\"],dflt:\"circular\",editType:\"plot\"},uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\"}},{\"../../components/color/attributes\":614,\"../../lib\":749,\"../../plot_api/edit_types\":780,\"../cartesian/layout_attributes\":812,\"../domain\":825}],866:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../../plot_api/plot_template\"),o=t(\"../subplot_defaults\"),s=t(\"../get_data\").getSubplotData,l=t(\"../cartesian/tick_value_defaults\"),c=t(\"../cartesian/tick_mark_defaults\"),u=t(\"../cartesian/tick_label_defaults\"),h=t(\"../cartesian/category_order_defaults\"),f=t(\"../cartesian/line_grid_defaults\"),p=t(\"../cartesian/axis_autotype\"),d=t(\"./layout_attributes\"),g=t(\"./set_convert\"),m=t(\"./constants\"),v=m.axisNames;function y(t,e,r,o){var p=r(\"bgcolor\");o.bgColor=a.combine(p,o.paper_bgcolor);var y=r(\"sector\");r(\"hole\");var b,_=s(o.fullData,m.name,o.id),w=o.layoutOut;function T(t,e){return r(b+\".\"+t,e)}for(var k=0;k<v.length;k++){b=v[k],n.isPlainObject(t[b])||(t[b]={});var M=t[b],A=i.newContainer(e,b);A._id=A._name=b,A._attr=o.id+\".\"+b,A._traceIndices=_.map((function(t){return t._expandedIndex}));var S=m.axisName2dataArray[b],E=x(M,A,T,_,S);h(M,A,T,{axData:_,dataAttr:S});var C,L,P=T(\"visible\");switch(g(A,e,w),T(\"uirevision\",e.uirevision),P&&(L=(C=T(\"color\"))===M.color?C:o.font.color),A._m=1,b){case\"radialaxis\":var I=T(\"autorange\",!A.isValidRange(M.range));M.autorange=I,!I||\"linear\"!==E&&\"-\"!==E||T(\"rangemode\"),\"reversed\"===I&&(A._m=-1),T(\"range\"),A.cleanRange(\"range\",{dfltRange:[0,1]}),P&&(T(\"side\"),T(\"angle\",y[0]),T(\"title.text\"),n.coerceFont(T,\"title.font\",{family:o.font.family,size:Math.round(1.2*o.font.size),color:L}));break;case\"angularaxis\":if(\"date\"===E){n.log(\"Polar plots do not support date angular axes yet.\");for(var z=0;z<_.length;z++)_[z].visible=!1;E=M.type=A.type=\"linear\"}T(\"linear\"===E?\"thetaunit\":\"period\");var O=T(\"direction\");T(\"rotation\",{counterclockwise:0,clockwise:90}[O])}if(P)l(M,A,T,A.type),u(M,A,T,A.type,{tickSuffixDflt:\"degrees\"===A.thetaunit?\"\\xb0\":void 0}),c(M,A,T,{outerTicks:!0}),T(\"showticklabels\")&&(n.coerceFont(T,\"tickfont\",{family:o.font.family,size:o.font.size,color:L}),T(\"tickangle\"),T(\"tickformat\")),f(M,A,T,{dfltColor:C,bgColor:o.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:d[b]}),T(\"layer\");\"category\"!==E&&T(\"hoverformat\"),A._input=M}\"category\"===e.angularaxis.type&&r(\"gridshape\")}function x(t,e,r,n,a){if(\"-\"===r(\"type\")){for(var i,o=0;o<n.length;o++)if(n[o].visible){i=n[o];break}i&&i[a]&&(e.type=p(i[a],\"gregorian\")),\"-\"===e.type?e.type=\"linear\":t.type=e.type}return e.type}e.exports=function(t,e,r){o(t,e,r,{type:m.name,attributes:d,handleDefaults:y,font:e.font,paper_bgcolor:e.paper_bgcolor,fullData:r,layoutOut:e})}},{\"../../components/color\":615,\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../cartesian/axis_autotype\":799,\"../cartesian/category_order_defaults\":802,\"../cartesian/line_grid_defaults\":814,\"../cartesian/tick_label_defaults\":819,\"../cartesian/tick_mark_defaults\":820,\"../cartesian/tick_value_defaults\":821,\"../get_data\":835,\"../subplot_defaults\":875,\"./constants\":862,\"./layout_attributes\":865,\"./set_convert\":874}],867:[function(t,e,r){\"use strict\";var n=t(\"../../../traces/scatter/attributes\"),a=n.marker,i=t(\"../../../lib/extend\").extendFlat;[\"Area traces are deprecated!\",\"Please switch to the *barpolar* trace type.\"].join(\" \");e.exports={r:i({},n.r,{}),t:i({},n.t,{}),marker:{color:i({},a.color,{}),size:i({},a.size,{}),symbol:i({},a.symbol,{}),opacity:i({},a.opacity,{}),editType:\"calc\"}}},{\"../../../lib/extend\":739,\"../../../traces/scatter/attributes\":1156}],868:[function(t,e,r){\"use strict\";var n=t(\"../../cartesian/layout_attributes\"),a=t(\"../../../lib/extend\").extendFlat,i=t(\"../../../plot_api/edit_types\").overrideAll,o=[\"Legacy polar charts are deprecated!\",\"Please switch to *polar* subplots.\"].join(\" \"),s=a({},n.domain,{});function l(t,e){return a({},e,{showline:{valType:\"boolean\"},showticklabels:{valType:\"boolean\"},tickorientation:{valType:\"enumerated\",values:[\"horizontal\",\"vertical\"]},ticklen:{valType:\"number\",min:0},tickcolor:{valType:\"color\"},ticksuffix:{valType:\"string\"},endpadding:{valType:\"number\",description:o},visible:{valType:\"boolean\"}})}e.exports=i({radialaxis:l(0,{range:{valType:\"info_array\",items:[{valType:\"number\"},{valType:\"number\"}]},domain:s,orientation:{valType:\"number\"}}),angularaxis:l(0,{range:{valType:\"info_array\",items:[{valType:\"number\",dflt:0},{valType:\"number\",dflt:360}]},domain:s}),layout:{direction:{valType:\"enumerated\",values:[\"clockwise\",\"counterclockwise\"]},orientation:{valType:\"angle\"}}},\"plot\",\"nested\")},{\"../../../lib/extend\":739,\"../../../plot_api/edit_types\":780,\"../../cartesian/layout_attributes\":812}],869:[function(t,e,r){\"use strict\";(e.exports=t(\"./micropolar\")).manager=t(\"./micropolar_manager\")},{\"./micropolar\":870,\"./micropolar_manager\":871}],870:[function(t,e,r){var n=t(\"d3\"),a=t(\"../../../lib\").extendDeepAll,i=t(\"../../../constants/alignment\").MID_SHIFT,o=e.exports={version:\"0.2.2\"};o.Axis=function(){var t,e,r,s,l={data:[],layout:{}},c={},u={},h=n.dispatch(\"hover\"),f={};return f.render=function(c){return function(c){e=c||e;var h=l.data,f=l.layout;(\"string\"==typeof e||e.nodeName)&&(e=n.select(e)),e.datum(h).each((function(e,l){var c=e.slice();u={data:o.util.cloneJson(c),layout:o.util.cloneJson(f)};var h=0;c.forEach((function(t,e){t.color||(t.color=f.defaultColorRange[h],h=(h+1)%f.defaultColorRange.length),t.strokeColor||(t.strokeColor=\"LinePlot\"===t.geometry?t.color:n.rgb(t.color).darker().toString()),u.data[e].color=t.color,u.data[e].strokeColor=t.strokeColor,u.data[e].strokeDash=t.strokeDash,u.data[e].strokeSize=t.strokeSize}));var p=c.filter((function(t,e){var r=t.visible;return\"undefined\"==typeof r||!0===r})),d=!1,g=p.map((function(t,e){return d=d||\"undefined\"!=typeof t.groupId,t}));if(d){var m=n.nest().key((function(t,e){return\"undefined\"!=typeof t.groupId?t.groupId:\"unstacked\"})).entries(g),v=[],y=m.map((function(t,e){if(\"unstacked\"===t.key)return t.values;var r=t.values[0].r.map((function(t,e){return 0}));return t.values.forEach((function(t,e,n){t.yStack=[r],v.push(r),r=o.util.sumArrays(t.r,r)})),t.values}));p=n.merge(y)}p.forEach((function(t,e){t.t=Array.isArray(t.t[0])?t.t:[t.t],t.r=Array.isArray(t.r[0])?t.r:[t.r]}));var x=Math.min(f.width-f.margin.left-f.margin.right,f.height-f.margin.top-f.margin.bottom)/2;x=Math.max(10,x);var b,_=[f.margin.left+x,f.margin.top+x];d?b=[0,n.max(o.util.sumArrays(o.util.arrayLast(p).r[0],o.util.arrayLast(v)))]:b=n.extent(o.util.flattenArray(p.map((function(t,e){return t.r}))));f.radialAxis.domain!=o.DATAEXTENT&&(b[0]=0),r=n.scale.linear().domain(f.radialAxis.domain!=o.DATAEXTENT&&f.radialAxis.domain?f.radialAxis.domain:b).range([0,x]),u.layout.radialAxis.domain=r.domain();var w,T=o.util.flattenArray(p.map((function(t,e){return t.t}))),k=\"string\"==typeof T[0];k&&(T=o.util.deduplicate(T),w=T.slice(),T=n.range(T.length),p=p.map((function(t,e){var r=t;return t.t=[T],d&&(r.yStack=t.yStack),r})));var M=p.filter((function(t,e){return\"LinePlot\"===t.geometry||\"DotPlot\"===t.geometry})).length===p.length,A=null===f.needsEndSpacing?k||!M:f.needsEndSpacing,S=f.angularAxis.domain&&f.angularAxis.domain!=o.DATAEXTENT&&!k&&f.angularAxis.domain[0]>=0?f.angularAxis.domain:n.extent(T),E=Math.abs(T[1]-T[0]);M&&!k&&(E=0);var C=S.slice();A&&k&&(C[1]+=E);var L=f.angularAxis.ticksCount||4;L>8&&(L=L/(L/8)+L%8),f.angularAxis.ticksStep&&(L=(C[1]-C[0])/L);var P=f.angularAxis.ticksStep||(C[1]-C[0])/(L*(f.minorTicks+1));w&&(P=Math.max(Math.round(P),1)),C[2]||(C[2]=P);var I=n.range.apply(this,C);if(I=I.map((function(t,e){return parseFloat(t.toPrecision(12))})),s=n.scale.linear().domain(C.slice(0,2)).range(\"clockwise\"===f.direction?[0,360]:[360,0]),u.layout.angularAxis.domain=s.domain(),u.layout.angularAxis.endPadding=A?E:0,\"undefined\"==typeof(t=n.select(this).select(\"svg.chart-root\"))||t.empty()){var z=(new DOMParser).parseFromString(\"<svg xmlns='http://www.w3.org/2000/svg' class='chart-root'>' + '<g class='outer-group'>' + '<g class='chart-group'>' + '<circle class='background-circle'></circle>' + '<g class='geometry-group'></g>' + '<g class='radial axis-group'>' + '<circle class='outside-circle'></circle>' + '</g>' + '<g class='angular axis-group'></g>' + '<g class='guides-group'><line></line><circle r='0'></circle></g>' + '</g>' + '<g class='legend-group'></g>' + '<g class='tooltips-group'></g>' + '<g class='title-group'><text></text></g>' + '</g>' + '</svg>\",\"application/xml\"),O=this.appendChild(this.ownerDocument.importNode(z.documentElement,!0));t=n.select(O)}t.select(\".guides-group\").style({\"pointer-events\":\"none\"}),t.select(\".angular.axis-group\").style({\"pointer-events\":\"none\"}),t.select(\".radial.axis-group\").style({\"pointer-events\":\"none\"});var D,R=t.select(\".chart-group\"),F={fill:\"none\",stroke:f.tickColor},B={\"font-size\":f.font.size,\"font-family\":f.font.family,fill:f.font.color,\"text-shadow\":[\"-1px 0px\",\"1px -1px\",\"-1px 1px\",\"1px 1px\"].map((function(t,e){return\" \"+t+\" 0 \"+f.font.outlineColor})).join(\",\")};if(f.showLegend){D=t.select(\".legend-group\").attr({transform:\"translate(\"+[x,f.margin.top]+\")\"}).style({display:\"block\"});var N=p.map((function(t,e){var r=o.util.cloneJson(t);return r.symbol=\"DotPlot\"===t.geometry?t.dotType||\"circle\":\"LinePlot\"!=t.geometry?\"square\":\"line\",r.visibleInLegend=\"undefined\"==typeof t.visibleInLegend||t.visibleInLegend,r.color=\"LinePlot\"===t.geometry?t.strokeColor:t.color,r}));o.Legend().config({data:p.map((function(t,e){return t.name||\"Element\"+e})),legendConfig:a({},o.Legend.defaultConfig().legendConfig,{container:D,elements:N,reverseOrder:f.legend.reverseOrder})})();var j=D.node().getBBox();x=Math.min(f.width-j.width-f.margin.left-f.margin.right,f.height-f.margin.top-f.margin.bottom)/2,x=Math.max(10,x),_=[f.margin.left+x,f.margin.top+x],r.range([0,x]),u.layout.radialAxis.domain=r.domain(),D.attr(\"transform\",\"translate(\"+[_[0]+x,_[1]-x]+\")\")}else D=t.select(\".legend-group\").style({display:\"none\"});t.attr({width:f.width,height:f.height}).style({opacity:f.opacity}),R.attr(\"transform\",\"translate(\"+_+\")\").style({cursor:\"crosshair\"});var U=[(f.width-(f.margin.left+f.margin.right+2*x+(j?j.width:0)))/2,(f.height-(f.margin.top+f.margin.bottom+2*x))/2];if(U[0]=Math.max(0,U[0]),U[1]=Math.max(0,U[1]),t.select(\".outer-group\").attr(\"transform\",\"translate(\"+U+\")\"),f.title&&f.title.text){var V=t.select(\"g.title-group text\").style(B).text(f.title.text),q=V.node().getBBox();V.attr({x:_[0]-q.width/2,y:_[1]-x-20})}var H=t.select(\".radial.axis-group\");if(f.radialAxis.gridLinesVisible){var G=H.selectAll(\"circle.grid-circle\").data(r.ticks(5));G.enter().append(\"circle\").attr({class:\"grid-circle\"}).style(F),G.attr(\"r\",r),G.exit().remove()}H.select(\"circle.outside-circle\").attr({r:x}).style(F);var Y=t.select(\"circle.background-circle\").attr({r:x}).style({fill:f.backgroundColor,stroke:f.stroke});function W(t,e){return s(t)%360+f.orientation}if(f.radialAxis.visible){var Z=n.svg.axis().scale(r).ticks(5).tickSize(5);H.call(Z).attr({transform:\"rotate(\"+f.radialAxis.orientation+\")\"}),H.selectAll(\".domain\").style(F),H.selectAll(\"g>text\").text((function(t,e){return this.textContent+f.radialAxis.ticksSuffix})).style(B).style({\"text-anchor\":\"start\"}).attr({x:0,y:0,dx:0,dy:0,transform:function(t,e){return\"horizontal\"===f.radialAxis.tickOrientation?\"rotate(\"+-f.radialAxis.orientation+\") translate(\"+[0,B[\"font-size\"]]+\")\":\"translate(\"+[0,B[\"font-size\"]]+\")\"}}),H.selectAll(\"g>line\").style({stroke:\"black\"})}var X=t.select(\".angular.axis-group\").selectAll(\"g.angular-tick\").data(I),J=X.enter().append(\"g\").classed(\"angular-tick\",!0);X.attr({transform:function(t,e){return\"rotate(\"+W(t)+\")\"}}).style({display:f.angularAxis.visible?\"block\":\"none\"}),X.exit().remove(),J.append(\"line\").classed(\"grid-line\",!0).classed(\"major\",(function(t,e){return e%(f.minorTicks+1)==0})).classed(\"minor\",(function(t,e){return!(e%(f.minorTicks+1)==0)})).style(F),J.selectAll(\".minor\").style({stroke:f.minorTickColor}),X.select(\"line.grid-line\").attr({x1:f.tickLength?x-f.tickLength:0,x2:x}).style({display:f.angularAxis.gridLinesVisible?\"block\":\"none\"}),J.append(\"text\").classed(\"axis-text\",!0).style(B);var K=X.select(\"text.axis-text\").attr({x:x+f.labelOffset,dy:i+\"em\",transform:function(t,e){var r=W(t),n=x+f.labelOffset,a=f.angularAxis.tickOrientation;return\"horizontal\"==a?\"rotate(\"+-r+\" \"+n+\" 0)\":\"radial\"==a?r<270&&r>90?\"rotate(180 \"+n+\" 0)\":null:\"rotate(\"+(r<=180&&r>0?-90:90)+\" \"+n+\" 0)\"}}).style({\"text-anchor\":\"middle\",display:f.angularAxis.labelsVisible?\"block\":\"none\"}).text((function(t,e){return e%(f.minorTicks+1)!=0?\"\":w?w[t]+f.angularAxis.ticksSuffix:t+f.angularAxis.ticksSuffix})).style(B);f.angularAxis.rewriteTicks&&K.text((function(t,e){return e%(f.minorTicks+1)!=0?\"\":f.angularAxis.rewriteTicks(this.textContent,e)}));var Q=n.max(R.selectAll(\".angular-tick text\")[0].map((function(t,e){return t.getCTM().e+t.getBBox().width})));D.attr({transform:\"translate(\"+[x+Q,f.margin.top]+\")\"});var $=t.select(\"g.geometry-group\").selectAll(\"g\").size()>0,tt=t.select(\"g.geometry-group\").selectAll(\"g.geometry\").data(p);if(tt.enter().append(\"g\").attr({class:function(t,e){return\"geometry geometry\"+e}}),tt.exit().remove(),p[0]||$){var et=[];p.forEach((function(t,e){var n={};n.radialScale=r,n.angularScale=s,n.container=tt.filter((function(t,r){return r==e})),n.geometry=t.geometry,n.orientation=f.orientation,n.direction=f.direction,n.index=e,et.push({data:t,geometryConfig:n})}));var rt=n.nest().key((function(t,e){return\"undefined\"!=typeof t.data.groupId||\"unstacked\"})).entries(et),nt=[];rt.forEach((function(t,e){\"unstacked\"===t.key?nt=nt.concat(t.values.map((function(t,e){return[t]}))):nt.push(t.values)})),nt.forEach((function(t,e){var r;r=Array.isArray(t)?t[0].geometryConfig.geometry:t.geometryConfig.geometry;var n=t.map((function(t,e){return a(o[r].defaultConfig(),t)}));o[r]().config(n)()}))}var at,it,ot=t.select(\".guides-group\"),st=t.select(\".tooltips-group\"),lt=o.tooltipPanel().config({container:st,fontSize:8})(),ct=o.tooltipPanel().config({container:st,fontSize:8})(),ut=o.tooltipPanel().config({container:st,hasTick:!0})();if(!k){var ht=ot.select(\"line\").attr({x1:0,y1:0,y2:0}).style({stroke:\"grey\",\"pointer-events\":\"none\"});R.on(\"mousemove.angular-guide\",(function(t,e){var r=o.util.getMousePos(Y).angle;ht.attr({x2:-x,transform:\"rotate(\"+r+\")\"}).style({opacity:.5});var n=(r+180+360-f.orientation)%360;at=s.invert(n);var a=o.util.convertToCartesian(x+12,r+180);lt.text(o.util.round(at)).move([a[0]+_[0],a[1]+_[1]])})).on(\"mouseout.angular-guide\",(function(t,e){ot.select(\"line\").style({opacity:0})}))}var ft=ot.select(\"circle\").style({stroke:\"grey\",fill:\"none\"});R.on(\"mousemove.radial-guide\",(function(t,e){var n=o.util.getMousePos(Y).radius;ft.attr({r:n}).style({opacity:.5}),it=r.invert(o.util.getMousePos(Y).radius);var a=o.util.convertToCartesian(n,f.radialAxis.orientation);ct.text(o.util.round(it)).move([a[0]+_[0],a[1]+_[1]])})).on(\"mouseout.radial-guide\",(function(t,e){ft.style({opacity:0}),ut.hide(),lt.hide(),ct.hide()})),t.selectAll(\".geometry-group .mark\").on(\"mouseover.tooltip\",(function(e,r){var a=n.select(this),i=this.style.fill,s=\"black\",l=this.style.opacity||1;if(a.attr({\"data-opacity\":l}),i&&\"none\"!==i){a.attr({\"data-fill\":i}),s=n.hsl(i).darker().toString(),a.style({fill:s,opacity:1});var c={t:o.util.round(e[0]),r:o.util.round(e[1])};k&&(c.t=w[e[0]]);var u=\"t: \"+c.t+\", r: \"+c.r,h=this.getBoundingClientRect(),f=t.node().getBoundingClientRect(),p=[h.left+h.width/2-U[0]-f.left,h.top+h.height/2-U[1]-f.top];ut.config({color:s}).text(u),ut.move(p)}else i=this.style.stroke||\"black\",a.attr({\"data-stroke\":i}),s=n.hsl(i).darker().toString(),a.style({stroke:s,opacity:1})})).on(\"mousemove.tooltip\",(function(t,e){if(0!=n.event.which)return!1;n.select(this).attr(\"data-fill\")&&ut.show()})).on(\"mouseout.tooltip\",(function(t,e){ut.hide();var r=n.select(this),a=r.attr(\"data-fill\");a?r.style({fill:a,opacity:r.attr(\"data-opacity\")}):r.style({stroke:r.attr(\"data-stroke\"),opacity:r.attr(\"data-opacity\")})}))}))}(c),this},f.config=function(t){if(!arguments.length)return l;var e=o.util.cloneJson(t);return e.data.forEach((function(t,e){l.data[e]||(l.data[e]={}),a(l.data[e],o.Axis.defaultConfig().data[0]),a(l.data[e],t)})),a(l.layout,o.Axis.defaultConfig().layout),a(l.layout,e.layout),this},f.getLiveConfig=function(){return u},f.getinputConfig=function(){return c},f.radialScale=function(t){return r},f.angularScale=function(t){return s},f.svg=function(){return t},n.rebind(f,h,\"on\"),f},o.Axis.defaultConfig=function(t,e){return{data:[{t:[1,2,3,4],r:[10,11,12,13],name:\"Line1\",geometry:\"LinePlot\",color:null,strokeDash:\"solid\",strokeColor:null,strokeSize:\"1\",visibleInLegend:!0,opacity:1}],layout:{defaultColorRange:n.scale.category10().range(),title:null,height:450,width:500,margin:{top:40,right:40,bottom:40,left:40},font:{size:12,color:\"gray\",outlineColor:\"white\",family:\"Tahoma, sans-serif\"},direction:\"clockwise\",orientation:0,labelOffset:10,radialAxis:{domain:null,orientation:-45,ticksSuffix:\"\",visible:!0,gridLinesVisible:!0,tickOrientation:\"horizontal\",rewriteTicks:null},angularAxis:{domain:[0,360],ticksSuffix:\"\",visible:!0,gridLinesVisible:!0,labelsVisible:!0,tickOrientation:\"horizontal\",rewriteTicks:null,ticksCount:null,ticksStep:null},minorTicks:0,tickLength:null,tickColor:\"silver\",minorTickColor:\"#eee\",backgroundColor:\"none\",needsEndSpacing:null,showLegend:!0,legend:{reverseOrder:!1},opacity:1}}},o.util={},o.DATAEXTENT=\"dataExtent\",o.AREA=\"AreaChart\",o.LINE=\"LinePlot\",o.DOT=\"DotPlot\",o.BAR=\"BarChart\",o.util._override=function(t,e){for(var r in t)r in e&&(e[r]=t[r])},o.util._extend=function(t,e){for(var r in t)e[r]=t[r]},o.util._rndSnd=function(){return 2*Math.random()-1+(2*Math.random()-1)+(2*Math.random()-1)},o.util.dataFromEquation2=function(t,e){var r=e||6;return n.range(0,360+r,r).map((function(e,r){var n=e*Math.PI/180;return[e,t(n)]}))},o.util.dataFromEquation=function(t,e,r){var a=e||6,i=[],o=[];n.range(0,360+a,a).forEach((function(e,r){var n=e*Math.PI/180,a=t(n);i.push(e),o.push(a)}));var s={t:i,r:o};return r&&(s.name=r),s},o.util.ensureArray=function(t,e){if(\"undefined\"==typeof t)return null;var r=[].concat(t);return n.range(e).map((function(t,e){return r[e]||r[0]}))},o.util.fillArrays=function(t,e,r){return e.forEach((function(e,n){t[e]=o.util.ensureArray(t[e],r)})),t},o.util.cloneJson=function(t){return JSON.parse(JSON.stringify(t))},o.util.validateKeys=function(t,e){\"string\"==typeof e&&(e=e.split(\".\"));var r=e.shift();return t[r]&&(!e.length||objHasKeys(t[r],e))},o.util.sumArrays=function(t,e){return n.zip(t,e).map((function(t,e){return n.sum(t)}))},o.util.arrayLast=function(t){return t[t.length-1]},o.util.arrayEqual=function(t,e){for(var r=Math.max(t.length,e.length,1);r-- >=0&&t[r]===e[r];);return-2===r},o.util.flattenArray=function(t){for(var e=[];!o.util.arrayEqual(e,t);)e=t,t=[].concat.apply([],t);return t},o.util.deduplicate=function(t){return t.filter((function(t,e,r){return r.indexOf(t)==e}))},o.util.convertToCartesian=function(t,e){var r=e*Math.PI/180;return[t*Math.cos(r),t*Math.sin(r)]},o.util.round=function(t,e){var r=e||2,n=Math.pow(10,r);return Math.round(t*n)/n},o.util.getMousePos=function(t){var e=n.mouse(t.node()),r=e[0],a=e[1],i={};return i.x=r,i.y=a,i.pos=e,i.angle=180*(Math.atan2(a,r)+Math.PI)/Math.PI,i.radius=Math.sqrt(r*r+a*a),i},o.util.duplicatesCount=function(t){for(var e,r={},n={},a=0,i=t.length;a<i;a++)(e=t[a])in r?(r[e]++,n[e]=r[e]):r[e]=1;return n},o.util.duplicates=function(t){return Object.keys(o.util.duplicatesCount(t))},o.util.translator=function(t,e,r,n){if(n){var a=r.slice();r=e,e=a}var i=e.reduce((function(t,e){if(\"undefined\"!=typeof t)return t[e]}),t);\"undefined\"!=typeof i&&(e.reduce((function(t,r,n){if(\"undefined\"!=typeof t)return n===e.length-1&&delete t[r],t[r]}),t),r.reduce((function(t,e,n){return\"undefined\"==typeof t[e]&&(t[e]={}),n===r.length-1&&(t[e]=i),t[e]}),t))},o.PolyChart=function(){var t=[o.PolyChart.defaultConfig()],e=n.dispatch(\"hover\"),r={solid:\"none\",dash:[5,2],dot:[2,5]};function i(){var e=t[0].geometryConfig,a=e.container;\"string\"==typeof a&&(a=n.select(a)),a.datum(t).each((function(t,a){var i=!!t[0].data.yStack,o=t.map((function(t,e){return i?n.zip(t.data.t[0],t.data.r[0],t.data.yStack[0]):n.zip(t.data.t[0],t.data.r[0])})),s=e.angularScale,l=e.radialScale.domain()[0],c={bar:function(r,a,i){var o=t[i].data,l=e.radialScale(r[1])-e.radialScale(0),c=e.radialScale(r[2]||0),u=o.barWidth;n.select(this).attr({class:\"mark bar\",d:\"M\"+[[l+c,-u/2],[l+c,u/2],[c,u/2],[c,-u/2]].join(\"L\")+\"Z\",transform:function(t,r){return\"rotate(\"+(e.orientation+s(t[0]))+\")\"}})}};c.dot=function(r,a,i){var o=r[2]?[r[0],r[1]+r[2]]:r,s=n.svg.symbol().size(t[i].data.dotSize).type(t[i].data.dotType)(r,a);n.select(this).attr({class:\"mark dot\",d:s,transform:function(t,r){var n,a,i,s=(n=function(t,r){var n=e.radialScale(t[1]),a=(e.angularScale(t[0])+e.orientation)*Math.PI/180;return{r:n,t:a}}(o),a=n.r*Math.cos(n.t),i=n.r*Math.sin(n.t),{x:a,y:i});return\"translate(\"+[s.x,s.y]+\")\"}})};var u=n.svg.line.radial().interpolate(t[0].data.lineInterpolation).radius((function(t){return e.radialScale(t[1])})).angle((function(t){return e.angularScale(t[0])*Math.PI/180}));c.line=function(r,a,i){var s=r[2]?o[i].map((function(t,e){return[t[0],t[1]+t[2]]})):o[i];if(n.select(this).each(c.dot).style({opacity:function(e,r){return+t[i].data.dotVisible},fill:d.stroke(r,a,i)}).attr({class:\"mark dot\"}),!(a>0)){var l=n.select(this.parentNode).selectAll(\"path.line\").data([0]);l.enter().insert(\"path\"),l.attr({class:\"line\",d:u(s),transform:function(t,r){return\"rotate(\"+(e.orientation+90)+\")\"},\"pointer-events\":\"none\"}).style({fill:function(t,e){return d.fill(r,a,i)},\"fill-opacity\":0,stroke:function(t,e){return d.stroke(r,a,i)},\"stroke-width\":function(t,e){return d[\"stroke-width\"](r,a,i)},\"stroke-dasharray\":function(t,e){return d[\"stroke-dasharray\"](r,a,i)},opacity:function(t,e){return d.opacity(r,a,i)},display:function(t,e){return d.display(r,a,i)}})}};var h=e.angularScale.range(),f=Math.abs(h[1]-h[0])/o[0].length*Math.PI/180,p=n.svg.arc().startAngle((function(t){return-f/2})).endAngle((function(t){return f/2})).innerRadius((function(t){return e.radialScale(l+(t[2]||0))})).outerRadius((function(t){return e.radialScale(l+(t[2]||0))+e.radialScale(t[1])}));c.arc=function(t,r,a){n.select(this).attr({class:\"mark arc\",d:p,transform:function(t,r){return\"rotate(\"+(e.orientation+s(t[0])+90)+\")\"}})};var d={fill:function(e,r,n){return t[n].data.color},stroke:function(e,r,n){return t[n].data.strokeColor},\"stroke-width\":function(e,r,n){return t[n].data.strokeSize+\"px\"},\"stroke-dasharray\":function(e,n,a){return r[t[a].data.strokeDash]},opacity:function(e,r,n){return t[n].data.opacity},display:function(e,r,n){return\"undefined\"==typeof t[n].data.visible||t[n].data.visible?\"block\":\"none\"}},g=n.select(this).selectAll(\"g.layer\").data(o);g.enter().append(\"g\").attr({class:\"layer\"});var m=g.selectAll(\"path.mark\").data((function(t,e){return t}));m.enter().append(\"path\").attr({class:\"mark\"}),m.style(d).each(c[e.geometryType]),m.exit().remove(),g.exit().remove()}))}return i.config=function(e){return arguments.length?(e.forEach((function(e,r){t[r]||(t[r]={}),a(t[r],o.PolyChart.defaultConfig()),a(t[r],e)})),this):t},i.getColorScale=function(){},n.rebind(i,e,\"on\"),i},o.PolyChart.defaultConfig=function(){return{data:{name:\"geom1\",t:[[1,2,3,4]],r:[[1,2,3,4]],dotType:\"circle\",dotSize:64,dotVisible:!1,barWidth:20,color:\"#ffa500\",strokeSize:1,strokeColor:\"silver\",strokeDash:\"solid\",opacity:1,index:0,visible:!0,visibleInLegend:!0},geometryConfig:{geometry:\"LinePlot\",geometryType:\"arc\",direction:\"clockwise\",orientation:0,container:\"body\",radialScale:null,angularScale:null,colorScale:n.scale.category20()}}},o.BarChart=function(){return o.PolyChart()},o.BarChart.defaultConfig=function(){return{geometryConfig:{geometryType:\"bar\"}}},o.AreaChart=function(){return o.PolyChart()},o.AreaChart.defaultConfig=function(){return{geometryConfig:{geometryType:\"arc\"}}},o.DotPlot=function(){return o.PolyChart()},o.DotPlot.defaultConfig=function(){return{geometryConfig:{geometryType:\"dot\",dotType:\"circle\"}}},o.LinePlot=function(){return o.PolyChart()},o.LinePlot.defaultConfig=function(){return{geometryConfig:{geometryType:\"line\"}}},o.Legend=function(){var t=o.Legend.defaultConfig(),e=n.dispatch(\"hover\");function r(){var e=t.legendConfig,i=t.data.map((function(t,r){return[].concat(t).map((function(t,n){var i=a({},e.elements[r]);return i.name=t,i.color=[].concat(e.elements[r].color)[n],i}))})),o=n.merge(i);o=o.filter((function(t,r){return e.elements[r]&&(e.elements[r].visibleInLegend||\"undefined\"==typeof e.elements[r].visibleInLegend)})),e.reverseOrder&&(o=o.reverse());var s=e.container;(\"string\"==typeof s||s.nodeName)&&(s=n.select(s));var l=o.map((function(t,e){return t.color})),c=e.fontSize,u=null==e.isContinuous?\"number\"==typeof o[0]:e.isContinuous,h=u?e.height:c*o.length,f=s.classed(\"legend-group\",!0).selectAll(\"svg\").data([0]),p=f.enter().append(\"svg\").attr({width:300,height:h+c,xmlns:\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",version:\"1.1\"});p.append(\"g\").classed(\"legend-axis\",!0),p.append(\"g\").classed(\"legend-marks\",!0);var d=n.range(o.length),g=n.scale[u?\"linear\":\"ordinal\"]().domain(d).range(l),m=n.scale[u?\"linear\":\"ordinal\"]().domain(d)[u?\"range\":\"rangePoints\"]([0,h]);if(u){var v=f.select(\".legend-marks\").append(\"defs\").append(\"linearGradient\").attr({id:\"grad1\",x1:\"0%\",y1:\"0%\",x2:\"0%\",y2:\"100%\"}).selectAll(\"stop\").data(l);v.enter().append(\"stop\"),v.attr({offset:function(t,e){return e/(l.length-1)*100+\"%\"}}).style({\"stop-color\":function(t,e){return t}}),f.append(\"rect\").classed(\"legend-mark\",!0).attr({height:e.height,width:e.colorBandWidth,fill:\"url(#grad1)\"})}else{var y=f.select(\".legend-marks\").selectAll(\"path.legend-mark\").data(o);y.enter().append(\"path\").classed(\"legend-mark\",!0),y.attr({transform:function(t,e){return\"translate(\"+[c/2,m(e)+c/2]+\")\"},d:function(t,e){var r,a,i,o=t.symbol;return i=3*(a=c),\"line\"===(r=o)?\"M\"+[[-a/2,-a/12],[a/2,-a/12],[a/2,a/12],[-a/2,a/12]]+\"Z\":-1!=n.svg.symbolTypes.indexOf(r)?n.svg.symbol().type(r).size(i)():n.svg.symbol().type(\"square\").size(i)()},fill:function(t,e){return g(e)}}),y.exit().remove()}var x=n.svg.axis().scale(m).orient(\"right\"),b=f.select(\"g.legend-axis\").attr({transform:\"translate(\"+[u?e.colorBandWidth:c,c/2]+\")\"}).call(x);return b.selectAll(\".domain\").style({fill:\"none\",stroke:\"none\"}),b.selectAll(\"line\").style({fill:\"none\",stroke:u?e.textColor:\"none\"}),b.selectAll(\"text\").style({fill:e.textColor,\"font-size\":e.fontSize}).text((function(t,e){return o[e].name})),r}return r.config=function(e){return arguments.length?(a(t,e),this):t},n.rebind(r,e,\"on\"),r},o.Legend.defaultConfig=function(t,e){return{data:[\"a\",\"b\",\"c\"],legendConfig:{elements:[{symbol:\"line\",color:\"red\"},{symbol:\"square\",color:\"yellow\"},{symbol:\"diamond\",color:\"limegreen\"}],height:150,colorBandWidth:30,fontSize:12,container:\"body\",isContinuous:null,textColor:\"grey\",reverseOrder:!1}}},o.tooltipPanel=function(){var t,e,r,i={container:null,hasTick:!1,fontSize:12,color:\"white\",padding:5},s=\"tooltip-\"+o.tooltipPanel.uid++,l=10,c=function(){var n=(t=i.container.selectAll(\"g.\"+s).data([0])).enter().append(\"g\").classed(s,!0).style({\"pointer-events\":\"none\",display:\"none\"});return r=n.append(\"path\").style({fill:\"white\",\"fill-opacity\":.9}).attr({d:\"M0 0\"}),e=n.append(\"text\").attr({dx:i.padding+l,dy:.3*+i.fontSize}),c};return c.text=function(a){var o=n.hsl(i.color).l,s=o>=.5?\"#aaa\":\"white\",u=o>=.5?\"black\":\"white\",h=a||\"\";e.style({fill:u,\"font-size\":i.fontSize+\"px\"}).text(h);var f=i.padding,p=e.node().getBBox(),d={fill:i.color,stroke:s,\"stroke-width\":\"2px\"},g=p.width+2*f+l,m=p.height+2*f;return r.attr({d:\"M\"+[[l,-m/2],[l,-m/4],[i.hasTick?0:l,0],[l,m/4],[l,m/2],[g,m/2],[g,-m/2]].join(\"L\")+\"Z\"}).style(d),t.attr({transform:\"translate(\"+[l,-m/2+2*f]+\")\"}),t.style({display:\"block\"}),c},c.move=function(e){if(t)return t.attr({transform:\"translate(\"+[e[0],e[1]]+\")\"}).style({display:\"block\"}),c},c.hide=function(){if(t)return t.style({display:\"none\"}),c},c.show=function(){if(t)return t.style({display:\"block\"}),c},c.config=function(t){return a(i,t),c},c},o.tooltipPanel.uid=1,o.adapter={},o.adapter.plotly=function(){var t={convert:function(t,e){var r={};if(t.data&&(r.data=t.data.map((function(t,r){var n=a({},t);return[[n,[\"marker\",\"color\"],[\"color\"]],[n,[\"marker\",\"opacity\"],[\"opacity\"]],[n,[\"marker\",\"line\",\"color\"],[\"strokeColor\"]],[n,[\"marker\",\"line\",\"dash\"],[\"strokeDash\"]],[n,[\"marker\",\"line\",\"width\"],[\"strokeSize\"]],[n,[\"marker\",\"symbol\"],[\"dotType\"]],[n,[\"marker\",\"size\"],[\"dotSize\"]],[n,[\"marker\",\"barWidth\"],[\"barWidth\"]],[n,[\"line\",\"interpolation\"],[\"lineInterpolation\"]],[n,[\"showlegend\"],[\"visibleInLegend\"]]].forEach((function(t,r){o.util.translator.apply(null,t.concat(e))})),e||delete n.marker,e&&delete n.groupId,e?(\"LinePlot\"===n.geometry?(n.type=\"scatter\",!0===n.dotVisible?(delete n.dotVisible,n.mode=\"lines+markers\"):n.mode=\"lines\"):\"DotPlot\"===n.geometry?(n.type=\"scatter\",n.mode=\"markers\"):\"AreaChart\"===n.geometry?n.type=\"area\":\"BarChart\"===n.geometry&&(n.type=\"bar\"),delete n.geometry):(\"scatter\"===n.type?\"lines\"===n.mode?n.geometry=\"LinePlot\":\"markers\"===n.mode?n.geometry=\"DotPlot\":\"lines+markers\"===n.mode&&(n.geometry=\"LinePlot\",n.dotVisible=!0):\"area\"===n.type?n.geometry=\"AreaChart\":\"bar\"===n.type&&(n.geometry=\"BarChart\"),delete n.mode,delete n.type),n})),!e&&t.layout&&\"stack\"===t.layout.barmode)){var i=o.util.duplicates(r.data.map((function(t,e){return t.geometry})));r.data.forEach((function(t,e){var n=i.indexOf(t.geometry);-1!=n&&(r.data[e].groupId=n)}))}if(t.layout){var s=a({},t.layout);if([[s,[\"plot_bgcolor\"],[\"backgroundColor\"]],[s,[\"showlegend\"],[\"showLegend\"]],[s,[\"radialaxis\"],[\"radialAxis\"]],[s,[\"angularaxis\"],[\"angularAxis\"]],[s.angularaxis,[\"showline\"],[\"gridLinesVisible\"]],[s.angularaxis,[\"showticklabels\"],[\"labelsVisible\"]],[s.angularaxis,[\"nticks\"],[\"ticksCount\"]],[s.angularaxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.angularaxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.angularaxis,[\"range\"],[\"domain\"]],[s.angularaxis,[\"endpadding\"],[\"endPadding\"]],[s.radialaxis,[\"showline\"],[\"gridLinesVisible\"]],[s.radialaxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.radialaxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.radialaxis,[\"range\"],[\"domain\"]],[s.angularAxis,[\"showline\"],[\"gridLinesVisible\"]],[s.angularAxis,[\"showticklabels\"],[\"labelsVisible\"]],[s.angularAxis,[\"nticks\"],[\"ticksCount\"]],[s.angularAxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.angularAxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.angularAxis,[\"range\"],[\"domain\"]],[s.angularAxis,[\"endpadding\"],[\"endPadding\"]],[s.radialAxis,[\"showline\"],[\"gridLinesVisible\"]],[s.radialAxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.radialAxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.radialAxis,[\"range\"],[\"domain\"]],[s.font,[\"outlinecolor\"],[\"outlineColor\"]],[s.legend,[\"traceorder\"],[\"reverseOrder\"]],[s,[\"labeloffset\"],[\"labelOffset\"]],[s,[\"defaultcolorrange\"],[\"defaultColorRange\"]]].forEach((function(t,r){o.util.translator.apply(null,t.concat(e))})),e?(\"undefined\"!=typeof s.tickLength&&(s.angularaxis.ticklen=s.tickLength,delete s.tickLength),s.tickColor&&(s.angularaxis.tickcolor=s.tickColor,delete s.tickColor)):(s.angularAxis&&\"undefined\"!=typeof s.angularAxis.ticklen&&(s.tickLength=s.angularAxis.ticklen),s.angularAxis&&\"undefined\"!=typeof s.angularAxis.tickcolor&&(s.tickColor=s.angularAxis.tickcolor)),s.legend&&\"boolean\"!=typeof s.legend.reverseOrder&&(s.legend.reverseOrder=\"normal\"!=s.legend.reverseOrder),s.legend&&\"boolean\"==typeof s.legend.traceorder&&(s.legend.traceorder=s.legend.traceorder?\"reversed\":\"normal\",delete s.legend.reverseOrder),s.margin&&\"undefined\"!=typeof s.margin.t){var l=[\"t\",\"r\",\"b\",\"l\",\"pad\"],c=[\"top\",\"right\",\"bottom\",\"left\",\"pad\"],u={};n.entries(s.margin).forEach((function(t,e){u[c[l.indexOf(t.key)]]=t.value})),s.margin=u}e&&(delete s.needsEndSpacing,delete s.minorTickColor,delete s.minorTicks,delete s.angularaxis.ticksCount,delete s.angularaxis.ticksCount,delete s.angularaxis.ticksStep,delete s.angularaxis.rewriteTicks,delete s.angularaxis.nticks,delete s.radialaxis.ticksCount,delete s.radialaxis.ticksCount,delete s.radialaxis.ticksStep,delete s.radialaxis.rewriteTicks,delete s.radialaxis.nticks),r.layout=s}return r}};return t}},{\"../../../constants/alignment\":717,\"../../../lib\":749,d3:169}],871:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../../lib\"),i=t(\"../../../components/color\"),o=t(\"./micropolar\"),s=t(\"./undo_manager\"),l=a.extendDeepAll,c=e.exports={};c.framework=function(t){var e,r,a,i,u,h=new s;function f(r,s){return s&&(u=s),n.select(n.select(u).node().parentNode).selectAll(\".svg-container>*:not(.chart-root)\").remove(),e=e?l(e,r):r,a||(a=o.Axis()),i=o.adapter.plotly().convert(e),a.config(i).render(u),t.data=e.data,t.layout=e.layout,c.fillLayout(t),e}return f.isPolar=!0,f.svg=function(){return a.svg()},f.getConfig=function(){return e},f.getLiveConfig=function(){return o.adapter.plotly().convert(a.getLiveConfig(),!0)},f.getLiveScales=function(){return{t:a.angularScale(),r:a.radialScale()}},f.setUndoPoint=function(){var t,n,a=this,i=o.util.cloneJson(e);t=i,n=r,h.add({undo:function(){n&&a(n)},redo:function(){a(t)}}),r=o.util.cloneJson(i)},f.undo=function(){h.undo()},f.redo=function(){h.redo()},f},c.fillLayout=function(t){var e=n.select(t).selectAll(\".plot-container\"),r=e.selectAll(\".svg-container\"),a=t.framework&&t.framework.svg&&t.framework.svg(),o={width:800,height:600,paper_bgcolor:i.background,_container:e,_paperdiv:r,_paper:a};t._fullLayout=l(o,t.layout)}},{\"../../../components/color\":615,\"../../../lib\":749,\"./micropolar\":870,\"./undo_manager\":872,d3:169}],872:[function(t,e,r){\"use strict\";e.exports=function(){var t,e=[],r=-1,n=!1;function a(t,e){return t?(n=!0,t[e](),n=!1,this):this}return{add:function(t){return n||(e.splice(r+1,e.length-r),e.push(t),r=e.length-1),this},setCallback:function(e){t=e},undo:function(){var n=e[r];return n?(a(n,\"undo\"),r-=1,t&&t(n.undo),this):this},redo:function(){var n=e[r+1];return n?(a(n,\"redo\"),r+=1,t&&t(n.redo),this):this},clear:function(){e=[],r=-1},hasUndo:function(){return-1!==r},hasRedo:function(){return r<e.length-1},getCommands:function(){return e},getPreviousCommand:function(){return e[r-1]},getIndex:function(){return r}}}},{}],873:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"../../registry\"),o=t(\"../../lib\"),s=t(\"../../components/color\"),l=t(\"../../components/drawing\"),c=t(\"../plots\"),u=t(\"../../plots/cartesian/axes\"),h=t(\"../cartesian/set_convert\"),f=t(\"./set_convert\"),p=t(\"../cartesian/autorange\").doAutoRange,d=t(\"../cartesian/dragbox\"),g=t(\"../../components/dragelement\"),m=t(\"../../components/fx\"),v=t(\"../../components/titles\"),y=t(\"../cartesian/select\").prepSelect,x=t(\"../cartesian/select\").selectOnClick,b=t(\"../cartesian/select\").clearSelect,_=t(\"../../lib/setcursor\"),w=t(\"../../lib/clear_gl_canvases\"),T=t(\"../../plot_api/subroutines\").redrawReglTraces,k=t(\"../../constants/alignment\").MID_SHIFT,M=t(\"./constants\"),A=t(\"./helpers\"),S=o._,E=o.mod,C=o.deg2rad,L=o.rad2deg;function P(t,e){this.id=e,this.gd=t,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var r=t._fullLayout,n=\"clip\"+r._uid+e;this.clipIds.forTraces=n+\"-for-traces\",this.clipPaths.forTraces=r._clips.append(\"clipPath\").attr(\"id\",this.clipIds.forTraces),this.clipPaths.forTraces.append(\"path\"),this.framework=r._polarlayer.append(\"g\").attr(\"class\",e),this.radialTickLayout=null,this.angularTickLayout=null}var I=P.prototype;function z(t){var e=t.ticks+String(t.ticklen)+String(t.showticklabels);return\"side\"in t&&(e+=t.side),e}function O(t,e){return e[o.findIndexOfMin(e,(function(e){return o.angleDist(t,e)}))]}function D(t,e,r){return e?(t.attr(\"display\",null),t.attr(r)):t&&t.attr(\"display\",\"none\"),t}function R(t,e){return\"translate(\"+t+\",\"+e+\")\"}function F(t){return\"rotate(\"+t+\")\"}e.exports=function(t,e){return new P(t,e)},I.plot=function(t,e){var r=e[this.id];this._hasClipOnAxisFalse=!1;for(var n=0;n<t.length;n++){if(!1===t[n][0].trace.cliponaxis){this._hasClipOnAxisFalse=!0;break}}this.updateLayers(e,r),this.updateLayout(e,r),c.generalUpdatePerTraceModule(this.gd,this,t,r),this.updateFx(e,r)},I.updateLayers=function(t,e){var r=this.layers,a=e.radialaxis,i=e.angularaxis,o=M.layerNames,s=o.indexOf(\"frontplot\"),l=o.slice(0,s),c=\"below traces\"===i.layer,u=\"below traces\"===a.layer;c&&l.push(\"angular-line\"),u&&l.push(\"radial-line\"),c&&l.push(\"angular-axis\"),u&&l.push(\"radial-axis\"),l.push(\"frontplot\"),c||l.push(\"angular-line\"),u||l.push(\"radial-line\"),c||l.push(\"angular-axis\"),u||l.push(\"radial-axis\");var h=this.framework.selectAll(\".polarsublayer\").data(l,String);h.enter().append(\"g\").attr(\"class\",(function(t){return\"polarsublayer \"+t})).each((function(t){var e=r[t]=n.select(this);switch(t){case\"frontplot\":e.append(\"g\").classed(\"barlayer\",!0),e.append(\"g\").classed(\"scatterlayer\",!0);break;case\"backplot\":e.append(\"g\").classed(\"maplayer\",!0);break;case\"plotbg\":r.bg=e.append(\"path\");break;case\"radial-grid\":case\"angular-grid\":e.style(\"fill\",\"none\");break;case\"radial-line\":e.append(\"line\").style(\"fill\",\"none\");break;case\"angular-line\":e.append(\"path\").style(\"fill\",\"none\")}})),h.order()},I.updateLayout=function(t,e){var r=this.layers,n=t._size,a=e.radialaxis,i=e.angularaxis,o=e.domain.x,c=e.domain.y;this.xOffset=n.l+n.w*o[0],this.yOffset=n.t+n.h*(1-c[1]);var u=this.xLength=n.w*(o[1]-o[0]),h=this.yLength=n.h*(c[1]-c[0]),f=e.sector;this.sectorInRad=f.map(C);var p,d,g,m,v,y=this.sectorBBox=function(t){var e,r,n,a,i=t[0],o=t[1]-i,s=E(i,360),l=s+o,c=Math.cos(C(s)),u=Math.sin(C(s)),h=Math.cos(C(l)),f=Math.sin(C(l));a=s<=90&&l>=90||s>90&&l>=450?1:u<=0&&f<=0?0:Math.max(u,f);e=s<=180&&l>=180||s>180&&l>=540?-1:c>=0&&h>=0?0:Math.min(c,h);r=s<=270&&l>=270||s>270&&l>=630?-1:u>=0&&f>=0?0:Math.min(u,f);n=l>=360?1:c<=0&&h<=0?0:Math.max(c,h);return[e,r,n,a]}(f),x=y[2]-y[0],b=y[3]-y[1],_=h/u,w=Math.abs(b/x);_>w?(p=u,v=(h-(d=u*w))/n.h/2,g=[o[0],o[1]],m=[c[0]+v,c[1]-v]):(d=h,v=(u-(p=h/w))/n.w/2,g=[o[0]+v,o[1]-v],m=[c[0],c[1]]),this.xLength2=p,this.yLength2=d,this.xDomain2=g,this.yDomain2=m;var T=this.xOffset2=n.l+n.w*g[0],k=this.yOffset2=n.t+n.h*(1-m[1]),M=this.radius=p/x,A=this.innerRadius=e.hole*M,S=this.cx=T-M*y[0],L=this.cy=k+M*y[3],P=this.cxx=S-T,I=this.cyy=L-k;this.radialAxis=this.mockAxis(t,e,a,{_id:\"x\",side:{counterclockwise:\"top\",clockwise:\"bottom\"}[a.side],domain:[A/n.w,M/n.w]}),this.angularAxis=this.mockAxis(t,e,i,{side:\"right\",domain:[0,Math.PI],autorange:!1}),this.doAutoRange(t,e),this.updateAngularAxis(t,e),this.updateRadialAxis(t,e),this.updateRadialAxisTitle(t,e),this.xaxis=this.mockCartesianAxis(t,e,{_id:\"x\",domain:g}),this.yaxis=this.mockCartesianAxis(t,e,{_id:\"y\",domain:m});var z=this.pathSubplot();this.clipPaths.forTraces.select(\"path\").attr(\"d\",z).attr(\"transform\",R(P,I)),r.frontplot.attr(\"transform\",R(T,k)).call(l.setClipUrl,this._hasClipOnAxisFalse?null:this.clipIds.forTraces,this.gd),r.bg.attr(\"d\",z).attr(\"transform\",R(S,L)).call(s.fill,e.bgcolor)},I.mockAxis=function(t,e,r,n){var a=o.extendFlat({},r,n);return f(a,e,t),a},I.mockCartesianAxis=function(t,e,r){var n=this,a=r._id,i=o.extendFlat({type:\"linear\"},r);h(i,t);var s={x:[0,2],y:[1,3]};return i.setRange=function(){var t=n.sectorBBox,r=s[a],o=n.radialAxis._rl,l=(o[1]-o[0])/(1-e.hole);i.range=[t[r[0]]*l,t[r[1]]*l]},i.isPtWithinRange=\"x\"===a?function(t){return n.isPtInside(t)}:function(){return!0},i.setRange(),i.setScale(),i},I.doAutoRange=function(t,e){var r=this.gd,n=this.radialAxis,a=e.radialaxis;n.setScale(),p(r,n);var i=n.range;a.range=i.slice(),a._input.range=i.slice(),n._rl=[n.r2l(i[0],null,\"gregorian\"),n.r2l(i[1],null,\"gregorian\")]},I.updateRadialAxis=function(t,e){var r=this,n=r.gd,a=r.layers,i=r.radius,l=r.innerRadius,c=r.cx,h=r.cy,f=e.radialaxis,p=E(e.sector[0],360),d=r.radialAxis,g=l<i;r.fillViewInitialKey(\"radialaxis.angle\",f.angle),r.fillViewInitialKey(\"radialaxis.range\",d.range.slice()),d.setGeometry(),\"auto\"===d.tickangle&&p>90&&p<=270&&(d.tickangle=180);var m=function(t){return\"translate(\"+(d.l2p(t.x)+l)+\",0)\"},v=z(f);if(r.radialTickLayout!==v&&(a[\"radial-axis\"].selectAll(\".xtick\").remove(),r.radialTickLayout=v),g){d.setScale();var y=u.calcTicks(d),x=u.clipEnds(d,y),b=u.getTickSigns(d)[2];u.drawTicks(n,d,{vals:y,layer:a[\"radial-axis\"],path:u.makeTickPath(d,0,b),transFn:m,crisp:!1}),u.drawGrid(n,d,{vals:x,layer:a[\"radial-grid\"],path:function(t){return r.pathArc(d.r2p(t.x)+l)},transFn:o.noop,crisp:!1}),u.drawLabels(n,d,{vals:y,layer:a[\"radial-axis\"],transFn:m,labelFns:u.makeLabelFns(d,0)})}var _=r.radialAxisAngle=r.vangles?L(O(C(f.angle),r.vangles)):f.angle,w=R(c,h),T=w+F(-_);D(a[\"radial-axis\"],g&&(f.showticklabels||f.ticks),{transform:T}),D(a[\"radial-grid\"],g&&f.showgrid,{transform:w}),D(a[\"radial-line\"].select(\"line\"),g&&f.showline,{x1:l,y1:0,x2:i,y2:0,transform:T}).attr(\"stroke-width\",f.linewidth).call(s.stroke,f.linecolor)},I.updateRadialAxisTitle=function(t,e,r){var n=this.gd,a=this.radius,i=this.cx,o=this.cy,s=e.radialaxis,c=this.id+\"title\",u=void 0!==r?r:this.radialAxisAngle,h=C(u),f=Math.cos(h),p=Math.sin(h),d=0;if(s.title){var g=l.bBox(this.layers[\"radial-axis\"].node()).height,m=s.title.font.size;d=\"counterclockwise\"===s.side?-g-.4*m:g+.8*m}this.layers[\"radial-axis-title\"]=v.draw(n,c,{propContainer:s,propName:this.id+\".radialaxis.title\",placeholder:S(n,\"Click to enter radial axis title\"),attributes:{x:i+a/2*f+d*p,y:o-a/2*p+d*f,\"text-anchor\":\"middle\"},transform:{rotate:-u}})},I.updateAngularAxis=function(t,e){var r=this,n=r.gd,a=r.layers,i=r.radius,l=r.innerRadius,c=r.cx,h=r.cy,f=e.angularaxis,p=r.angularAxis;r.fillViewInitialKey(\"angularaxis.rotation\",f.rotation),p.setGeometry(),p.setScale();var d=function(t){return p.t2g(t.x)};\"linear\"===p.type&&\"radians\"===p.thetaunit&&(p.tick0=L(p.tick0),p.dtick=L(p.dtick));var g=function(t){return R(c+i*Math.cos(t),h-i*Math.sin(t))},m=u.makeLabelFns(p,0).labelStandoff,v={xFn:function(t){var e=d(t);return Math.cos(e)*m},yFn:function(t){var e=d(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(m+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*k)},anchorFn:function(t){var e=d(t),r=Math.cos(e);return Math.abs(r)<.1?\"middle\":r>0?\"start\":\"end\"},heightFn:function(t,e,r){var n=d(t);return-.5*(1+Math.sin(n))*r}},y=z(f);r.angularTickLayout!==y&&(a[\"angular-axis\"].selectAll(\".\"+p._id+\"tick\").remove(),r.angularTickLayout=y);var x,b=u.calcTicks(p);if(\"linear\"===e.gridshape?(x=b.map(d),o.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,\"category\"===p.type&&(b=b.filter((function(t){return o.isAngleInsideSector(d(t),r.sectorInRad)}))),p.visible){var _=\"inside\"===p.ticks?-1:1,w=(p.linewidth||1)/2;u.drawTicks(n,p,{vals:b,layer:a[\"angular-axis\"],path:\"M\"+_*w+\",0h\"+_*p.ticklen,transFn:function(t){var e=d(t);return g(e)+F(-L(e))},crisp:!1}),u.drawGrid(n,p,{vals:b,layer:a[\"angular-grid\"],path:function(t){var e=d(t),r=Math.cos(e),n=Math.sin(e);return\"M\"+[c+l*r,h-l*n]+\"L\"+[c+i*r,h-i*n]},transFn:o.noop,crisp:!1}),u.drawLabels(n,p,{vals:b,layer:a[\"angular-axis\"],repositionOnUpdate:!0,transFn:function(t){return g(d(t))},labelFns:v})}D(a[\"angular-line\"].select(\"path\"),f.showline,{d:r.pathSubplot(),transform:R(c,h)}).attr(\"stroke-width\",f.linewidth).call(s.stroke,f.linecolor)},I.updateFx=function(t,e){this.gd._context.staticPlot||(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1),this.updateMainDrag(t))},I.updateMainDrag=function(t){var e=this,r=e.gd,o=e.layers,s=t._zoomlayer,l=M.MINZOOM,c=M.OFFEDGE,u=e.radius,h=e.innerRadius,f=e.cx,p=e.cy,v=e.cxx,_=e.cyy,w=e.sectorInRad,T=e.vangles,k=e.radialAxis,S=A.clampTiny,E=A.findXYatLength,C=A.findEnclosingVertexAngles,L=M.cornerHalfWidth,P=M.cornerLen/2,I=d.makeDragger(o,\"path\",\"maindrag\",\"crosshair\");n.select(I).attr(\"d\",e.pathSubplot()).attr(\"transform\",R(f,p));var z,O,D,F,B,N,j,U,V,q={element:I,gd:r,subplot:e.id,plotinfo:{id:e.id,xaxis:e.xaxis,yaxis:e.yaxis},xaxes:[e.xaxis],yaxes:[e.yaxis]};function H(t,e){return Math.sqrt(t*t+e*e)}function G(t,e){return H(t-v,e-_)}function Y(t,e){return Math.atan2(_-e,t-v)}function W(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function Z(t,r){if(0===t)return e.pathSector(2*L);var n=P/t,a=r-n,i=r+n,o=Math.max(0,Math.min(t,u)),s=o-L,l=o+L;return\"M\"+W(s,a)+\"A\"+[s,s]+\" 0,0,0 \"+W(s,i)+\"L\"+W(l,i)+\"A\"+[l,l]+\" 0,0,1 \"+W(l,a)+\"Z\"}function X(t,r,n){if(0===t)return e.pathSector(2*L);var a,i,o=W(t,r),s=W(t,n),l=S((o[0]+s[0])/2),c=S((o[1]+s[1])/2);if(l&&c){var u=c/l,h=-1/u,f=E(L,u,l,c);a=E(P,h,f[0][0],f[0][1]),i=E(P,h,f[1][0],f[1][1])}else{var p,d;c?(p=P,d=L):(p=L,d=P),a=[[l-p,c-d],[l+p,c-d]],i=[[l-p,c+d],[l+p,c+d]]}return\"M\"+a.join(\"L\")+\"L\"+i.reverse().join(\"L\")+\"Z\"}function J(t,e){return e=Math.max(Math.min(e,u),h),t<c?t=0:u-t<c?t=u:e<c?e=0:u-e<c&&(e=u),Math.abs(e-t)>l?(t<e?(D=t,F=e):(D=e,F=t),!0):(D=null,F=null,!1)}function K(t,e){t=t||B,e=e||\"M0,0Z\",U.attr(\"d\",t),V.attr(\"d\",e),d.transitionZoombox(U,V,N,j),N=!0;var n={};rt(n),r.emit(\"plotly_relayouting\",n)}function Q(t,r){var n,a,i=z+t,o=O+r,s=G(z,O),l=Math.min(G(i,o),u),c=Y(z,O);J(s,l)&&(n=B+e.pathSector(F),D&&(n+=e.pathSector(D)),a=Z(D,c)+Z(F,c)),K(n,a)}function $(t,e,r,n){var a=A.findIntersectionXY(r,n,r,[t-v,_-e]);return H(a[0],a[1])}function tt(t,r){var n,a,i=z+t,o=O+r,s=Y(z,O),l=Y(i,o),c=C(s,T),h=C(l,T);J($(z,O,c[0],c[1]),Math.min($(i,o,h[0],h[1]),u))&&(n=B+e.pathSector(F),D&&(n+=e.pathSector(D)),a=[X(D,c[0],c[1]),X(F,c[0],c[1])].join(\" \")),K(n,a)}function et(){if(d.removeZoombox(r),null!==D&&null!==F){var t={};rt(t),d.showDoubleClickNotifier(r),i.call(\"_guiRelayout\",r,t)}}function rt(t){var r=k._rl,n=(r[1]-r[0])/(1-h/u)/u,a=[r[0]+(D-h)*n,r[0]+(F-h)*n];t[e.id+\".radialaxis.range\"]=a}function nt(t,n){var a=r._fullLayout.clickmode;if(d.removeZoombox(r),2===t){var o={};for(var s in e.viewInitial)o[e.id+\".\"+s]=e.viewInitial[s];r.emit(\"plotly_doubleclick\",null),i.call(\"_guiRelayout\",r,o)}a.indexOf(\"select\")>-1&&1===t&&x(n,r,[e.xaxis],[e.yaxis],e.id,q),a.indexOf(\"event\")>-1&&m.click(r,n,e.id)}q.prepFn=function(t,n,i){var o=r._fullLayout.dragmode,l=I.getBoundingClientRect();if(z=n-l.left,O=i-l.top,T){var c=A.findPolygonOffset(u,w[0],w[1],T);z+=v+c[0],O+=_+c[1]}switch(o){case\"zoom\":q.moveFn=T?tt:Q,q.clickFn=nt,q.doneFn=et,function(){D=null,F=null,B=e.pathSubplot(),N=!1;var t=r._fullLayout[e.id];j=a(t.bgcolor).getLuminance(),(U=d.makeZoombox(s,j,f,p,B)).attr(\"fill-rule\",\"evenodd\"),V=d.makeCorners(s,f,p),b(r)}();break;case\"select\":case\"lasso\":y(t,n,i,q,o)}},I.onmousemove=function(t){m.hover(r,t,e.id),r._fullLayout._lasthover=I,r._fullLayout._hoversubplot=e.id},I.onmouseout=function(t){r._dragging||g.unhover(r,t)},g.init(q)},I.updateRadialDrag=function(t,e,r){var a=this,s=a.gd,l=a.layers,c=a.radius,u=a.innerRadius,h=a.cx,f=a.cy,p=a.radialAxis,m=M.radialDragBoxSize,v=m/2;if(p.visible){var y,x,_,k=C(a.radialAxisAngle),A=p._rl,S=A[0],E=A[1],P=A[r],I=.75*(A[1]-A[0])/(1-e.hole)/c;r?(y=h+(c+v)*Math.cos(k),x=f-(c+v)*Math.sin(k),_=\"radialdrag\"):(y=h+(u-v)*Math.cos(k),x=f-(u-v)*Math.sin(k),_=\"radialdrag-inner\");var z,B,N,j=d.makeRectDragger(l,_,\"crosshair\",-v,-v,m,m),U={element:j,gd:s};D(n.select(j),p.visible&&u<c,{transform:R(y,x)}),U.prepFn=function(){z=null,B=null,N=null,U.moveFn=V,U.doneFn=q,b(s)},U.clampFn=function(t,e){return Math.sqrt(t*t+e*e)<M.MINDRAG&&(t=0,e=0),[t,e]},g.init(U)}function V(t,e){if(z)z(t,e);else{var n=[t,-e],i=[Math.cos(k),Math.sin(k)],l=Math.abs(o.dot(n,i)/Math.sqrt(o.dot(n,n)));isNaN(l)||(z=l<.5?H:G)}var c={};!function(t){null!==B?t[a.id+\".radialaxis.angle\"]=B:null!==N&&(t[a.id+\".radialaxis.range[\"+r+\"]\"]=N)}(c),s.emit(\"plotly_relayouting\",c)}function q(){null!==B?i.call(\"_guiRelayout\",s,a.id+\".radialaxis.angle\",B):null!==N&&i.call(\"_guiRelayout\",s,a.id+\".radialaxis.range[\"+r+\"]\",N)}function H(t,e){if(0!==r){var n=y+t,i=x+e;B=Math.atan2(f-i,n-h),a.vangles&&(B=O(B,a.vangles)),B=L(B);var o=R(h,f)+F(-B);l[\"radial-axis\"].attr(\"transform\",o),l[\"radial-line\"].select(\"line\").attr(\"transform\",o);var s=a.gd._fullLayout,c=s[a.id];a.updateRadialAxisTitle(s,c,B)}}function G(t,e){var n=o.dot([t,-e],[Math.cos(k),Math.sin(k)]);if(N=P-I*n,I>0==(r?N>S:N<E)){var l=s._fullLayout,c=l[a.id];p.range[r]=N,p._rl[r]=N,a.updateRadialAxis(l,c),a.xaxis.setRange(),a.xaxis.setScale(),a.yaxis.setRange(),a.yaxis.setScale();var u=!1;for(var h in a.traceHash){var f=a.traceHash[h],d=o.filterVisible(f);f[0][0].trace._module.plot(s,a,d,c),i.traceIs(h,\"gl\")&&d.length&&(u=!0)}u&&(w(s),T(s))}else N=null}},I.updateAngularDrag=function(t){var e=this,r=e.gd,a=e.layers,s=e.radius,c=e.angularAxis,u=e.cx,h=e.cy,f=e.cxx,p=e.cyy,m=M.angularDragBoxSize,v=d.makeDragger(a,\"path\",\"angulardrag\",\"move\"),y={element:v,gd:r};function x(t,e){return Math.atan2(p+m-e,t-f-m)}n.select(v).attr(\"d\",e.pathAnnulus(s,s+m)).attr(\"transform\",R(u,h)).call(_,\"move\");var k,A,S,E,C,P,I=a.frontplot.select(\".scatterlayer\").selectAll(\".trace\"),z=I.selectAll(\".point\"),O=I.selectAll(\".textpoint\");function D(t,s){var d=e.gd._fullLayout,g=d[e.id],m=x(k+t,A+s),v=L(m-P);if(E=S+v,a.frontplot.attr(\"transform\",R(e.xOffset2,e.yOffset2)+F([-v,f,p])),e.vangles){C=e.radialAxisAngle+v;var y=R(u,h)+F(-v),b=R(u,h)+F(-C);a.bg.attr(\"transform\",y),a[\"radial-grid\"].attr(\"transform\",y),a[\"radial-axis\"].attr(\"transform\",b),a[\"radial-line\"].select(\"line\").attr(\"transform\",b),e.updateRadialAxisTitle(d,g,C)}else e.clipPaths.forTraces.select(\"path\").attr(\"transform\",R(f,p)+F(v));z.each((function(){var t=n.select(this),e=l.getTranslate(t);t.attr(\"transform\",R(e.x,e.y)+F([v]))})),O.each((function(){var t=n.select(this),e=t.select(\"text\"),r=l.getTranslate(t);t.attr(\"transform\",F([v,e.attr(\"x\"),e.attr(\"y\")])+R(r.x,r.y))})),c.rotation=o.modHalf(E,360),e.updateAngularAxis(d,g),e._hasClipOnAxisFalse&&!o.isFullCircle(e.sectorInRad)&&I.call(l.hideOutsideRangePoints,e);var _=!1;for(var M in e.traceHash)if(i.traceIs(M,\"gl\")){var D=e.traceHash[M],N=o.filterVisible(D);D[0][0].trace._module.plot(r,e,N,g),N.length&&(_=!0)}_&&(w(r),T(r));var j={};B(j),r.emit(\"plotly_relayouting\",j)}function B(t){t[e.id+\".angularaxis.rotation\"]=E,e.vangles&&(t[e.id+\".radialaxis.angle\"]=C)}function N(){O.select(\"text\").attr(\"transform\",null);var t={};B(t),i.call(\"_guiRelayout\",r,t)}y.prepFn=function(n,a,i){var o=t[e.id];S=o.angularaxis.rotation;var s=v.getBoundingClientRect();k=a-s.left,A=i-s.top,P=x(k,A),y.moveFn=D,y.doneFn=N,b(r)},e.vangles&&!o.isFullCircle(e.sectorInRad)&&(y.prepFn=o.noop,_(n.select(v),null)),g.init(y)},I.isPtInside=function(t){var e=this.sectorInRad,r=this.vangles,n=this.angularAxis.c2g(t.theta),a=this.radialAxis,i=a.c2l(t.r),s=a._rl;return(r?A.isPtInsidePolygon:o.isPtInsideSector)(i,n,s,e,r)},I.pathArc=function(t){var e=this.sectorInRad,r=this.vangles;return(r?A.pathPolygon:o.pathArc)(t,e[0],e[1],r)},I.pathSector=function(t){var e=this.sectorInRad,r=this.vangles;return(r?A.pathPolygon:o.pathSector)(t,e[0],e[1],r)},I.pathAnnulus=function(t,e){var r=this.sectorInRad,n=this.vangles;return(n?A.pathPolygonAnnulus:o.pathAnnulus)(t,e,r[0],r[1],n)},I.pathSubplot=function(){var t=this.innerRadius,e=this.radius;return t?this.pathAnnulus(t,e):this.pathSector(e)},I.fillViewInitialKey=function(t,e){t in this.viewInitial||(this.viewInitial[t]=e)}},{\"../../components/color\":615,\"../../components/dragelement\":634,\"../../components/drawing\":637,\"../../components/fx\":655,\"../../components/titles\":710,\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/clear_gl_canvases\":733,\"../../lib/setcursor\":769,\"../../plot_api/subroutines\":788,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"../cartesian/autorange\":797,\"../cartesian/dragbox\":806,\"../cartesian/select\":817,\"../cartesian/set_convert\":818,\"../plots\":861,\"./constants\":862,\"./helpers\":863,\"./set_convert\":874,d3:169,tinycolor2:548}],874:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../cartesian/set_convert\"),i=n.deg2rad,o=n.rad2deg;e.exports=function(t,e,r){switch(a(t,r),t._id){case\"x\":case\"radialaxis\":!function(t,e){var r=e._subplot;t.setGeometry=function(){var e=t._rl[0],n=t._rl[1],a=r.innerRadius,i=(r.radius-a)/(n-e),o=a/i,s=e>n?function(t){return t<=0}:function(t){return t>=0};t.c2g=function(r){var n=t.c2l(r)-e;return(s(n)?n:0)+o},t.g2c=function(r){return t.l2c(r+e-o)},t.g2p=function(t){return t*i},t.c2p=function(e){return t.g2p(t.c2g(e))}}}(t,e);break;case\"angularaxis\":!function(t,e){var r=t.type;if(\"linear\"===r){var a=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return\"degrees\"===e?i(t):t}(a(t),e)},t.c2d=function(t,e){return s(function(t,e){return\"degrees\"===e?o(t):t}(t,e))}}t.makeCalcdata=function(e,a){var i,o,s=e[a],l=e._length,c=function(r){return t.d2c(r,e.thetaunit)};if(s){if(n.isTypedArray(s)&&\"linear\"===r){if(l===s.length)return s;if(s.subarray)return s.subarray(0,l)}for(i=new Array(l),o=0;o<l;o++)i[o]=c(s[o])}else{var u=a+\"0\",h=\"d\"+a,f=u in e?c(e[u]):0,p=e[h]?c(e[h]):(t.period||2*Math.PI)/l;for(i=new Array(l),o=0;o<l;o++)i[o]=f+o*p}return i},t.setGeometry=function(){var a,s,l,c,u=e.sector,h=u.map(i),f={clockwise:-1,counterclockwise:1}[t.direction],p=i(t.rotation),d=function(t){return f*t+p},g=function(t){return(t-p)/f};switch(r){case\"linear\":s=a=n.identity,c=i,l=o,t.range=n.isFullCircle(h)?[u[0],u[0]+360]:h.map(g).map(o);break;case\"category\":var m=t._categories.length,v=t.period?Math.max(t.period,m):m;0===v&&(v=1),s=c=function(t){return 2*t*Math.PI/v},a=l=function(t){return t*v/Math.PI/2},t.range=[0,v]}t.c2g=function(t){return d(s(t))},t.g2c=function(t){return a(g(t))},t.t2g=function(t){return d(c(t))},t.g2t=function(t){return l(g(t))}}}(t,e)}}},{\"../../lib\":749,\"../cartesian/set_convert\":818}],875:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plot_api/plot_template\"),i=t(\"./domain\").defaults;e.exports=function(t,e,r,o){var s,l,c=o.type,u=o.attributes,h=o.handleDefaults,f=o.partition||\"x\",p=e._subplots[c],d=p.length,g=d&&p[0].replace(/\\d+$/,\"\");function m(t,e){return n.coerce(s,l,u,t,e)}for(var v=0;v<d;v++){var y=p[v];s=t[y]?t[y]:t[y]={},l=a.newContainer(e,y,g),m(\"uirevision\",e.uirevision);var x={};x[f]=[v/d,(v+1)/d],i(l,e,m,x),o.id=y,h(s,l,m,o)}}},{\"../lib\":749,\"../plot_api/plot_template\":787,\"./domain\":825}],876:[function(t,e,r){\"use strict\";['Variables are inserted using %{variable}, for example \"y: %{y}\".','Numbers are formatted using d3-format\\'s syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\".',t(\"../constants/docs\").FORMAT_LINK,\"for details on the formatting syntax.\",'Dates are formatted using d3-time-format\\'s syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\".',t(\"../constants/docs\").DATE_FORMAT_LINK,\"for details on the date formatting syntax.\"].join(\" \");function n(t){var e=t.description?\" \"+t.description:\"\",r=t.keys||[];if(r.length>0){for(var n=[],a=0;a<r.length;a++)n[a]=\"`\"+r[a]+\"`\";e+=\"Finally, the template string has access to \",e=1===r.length?\"variable \"+n[0]:\"variables \"+n.slice(0,-1).join(\", \")+\" and \"+n.slice(-1)+\".\"}return e}r.hovertemplateAttrs=function(t,e){t=t||{};n(e=e||{});var r={valType:\"string\",dflt:\"\",editType:t.editType||\"none\"};return!1!==t.arrayOk&&(r.arrayOk=!0),r},r.texttemplateAttrs=function(t,e){t=t||{};n(e=e||{});var r={valType:\"string\",dflt:\"\",editType:t.editType||\"calc\"};return!1!==t.arrayOk&&(r.arrayOk=!0),r}},{\"../constants/docs\":719}],877:[function(t,e,r){\"use strict\";var n=t(\"./ternary\"),a=t(\"../../plots/get_data\").getSubplotCalcData,i=t(\"../../lib\").counterRegex;r.name=\"ternary\";var o=r.attr=\"subplot\";r.idRoot=\"ternary\",r.idRegex=r.attrRegex=i(\"ternary\"),(r.attributes={})[o]={valType:\"subplotid\",dflt:\"ternary\",editType:\"calc\"},r.layoutAttributes=t(\"./layout_attributes\"),r.supplyLayoutDefaults=t(\"./layout_defaults\"),r.plot=function(t){for(var e=t._fullLayout,r=t.calcdata,i=e._subplots.ternary,o=0;o<i.length;o++){var s=i[o],l=a(r,\"ternary\",s),c=e[s]._subplot;c||(c=new n({id:s,graphDiv:t,container:e._ternarylayer.node()},e),e[s]._subplot=c),c.plot(l,e,t._promises)}},r.clean=function(t,e,r,n){for(var a=n._subplots.ternary||[],i=0;i<a.length;i++){var o=a[i],s=n[o]._subplot;!e[o]&&s&&(s.plotContainer.remove(),s.clipDef.remove(),s.clipDefRelative.remove(),s.layers[\"a-title\"].remove(),s.layers[\"b-title\"].remove(),s.layers[\"c-title\"].remove())}}},{\"../../lib\":749,\"../../plots/get_data\":835,\"./layout_attributes\":878,\"./layout_defaults\":879,\"./ternary\":880}],878:[function(t,e,r){\"use strict\";var n=t(\"../../components/color/attributes\"),a=t(\"../domain\").attributes,i=t(\"../cartesian/layout_attributes\"),o=t(\"../../plot_api/edit_types\").overrideAll,s=t(\"../../lib/extend\").extendFlat,l={title:{text:i.title.text,font:i.title.font},color:i.color,tickmode:i.tickmode,nticks:s({},i.nticks,{dflt:6,min:1}),tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,showticklabels:i.showticklabels,showtickprefix:i.showtickprefix,tickprefix:i.tickprefix,showticksuffix:i.showticksuffix,ticksuffix:i.ticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,minexponent:i.minexponent,separatethousands:i.separatethousands,tickfont:i.tickfont,tickangle:i.tickangle,tickformat:i.tickformat,tickformatstops:i.tickformatstops,hoverformat:i.hoverformat,showline:s({},i.showline,{dflt:!0}),linecolor:i.linecolor,linewidth:i.linewidth,showgrid:s({},i.showgrid,{dflt:!0}),gridcolor:i.gridcolor,gridwidth:i.gridwidth,layer:i.layer,min:{valType:\"number\",dflt:0,min:0},_deprecated:{title:i._deprecated.title,titlefont:i._deprecated.titlefont}},c=e.exports=o({domain:a({name:\"ternary\"}),bgcolor:{valType:\"color\",dflt:n.background},sum:{valType:\"number\",dflt:1,min:0},aaxis:l,baxis:l,caxis:l},\"plot\",\"from-root\");c.uirevision={valType:\"any\",editType:\"none\"},c.aaxis.uirevision=c.baxis.uirevision=c.caxis.uirevision={valType:\"any\",editType:\"none\"}},{\"../../components/color/attributes\":614,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../cartesian/layout_attributes\":812,\"../domain\":825}],879:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../plot_api/plot_template\"),i=t(\"../../lib\"),o=t(\"../subplot_defaults\"),s=t(\"../cartesian/tick_label_defaults\"),l=t(\"../cartesian/tick_mark_defaults\"),c=t(\"../cartesian/tick_value_defaults\"),u=t(\"../cartesian/line_grid_defaults\"),h=t(\"./layout_attributes\"),f=[\"aaxis\",\"baxis\",\"caxis\"];function p(t,e,r,i){var o,s,l,c=r(\"bgcolor\"),u=r(\"sum\");i.bgColor=n.combine(c,i.paper_bgcolor);for(var h=0;h<f.length;h++)s=t[o=f[h]]||{},(l=a.newContainer(e,o))._name=o,d(s,l,i,e);var p=e.aaxis,g=e.baxis,m=e.caxis;p.min+g.min+m.min>=u&&(p.min=0,g.min=0,m.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function d(t,e,r,n){var a=h[e._name];function o(r,n){return i.coerce(t,e,a,r,n)}o(\"uirevision\",n.uirevision),e.type=\"linear\";var f=o(\"color\"),p=f!==a.color.dflt?f:r.font.color,d=e._name.charAt(0).toUpperCase(),g=\"Component \"+d,m=o(\"title.text\",g);e._hovertitle=m===g?m:d,i.coerceFont(o,\"title.font\",{family:r.font.family,size:Math.round(1.2*r.font.size),color:p}),o(\"min\"),c(t,e,o,\"linear\"),s(t,e,o,\"linear\",{}),l(t,e,o,{outerTicks:!0}),o(\"showticklabels\")&&(i.coerceFont(o,\"tickfont\",{family:r.font.family,size:r.font.size,color:p}),o(\"tickangle\"),o(\"tickformat\")),u(t,e,o,{dfltColor:f,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:a}),o(\"hoverformat\"),o(\"layer\")}e.exports=function(t,e,r){o(t,e,r,{type:\"ternary\",attributes:h,handleDefaults:p,font:e.font,paper_bgcolor:e.paper_bgcolor})}},{\"../../components/color\":615,\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../cartesian/line_grid_defaults\":814,\"../cartesian/tick_label_defaults\":819,\"../cartesian/tick_mark_defaults\":820,\"../cartesian/tick_value_defaults\":821,\"../subplot_defaults\":875,\"./layout_attributes\":878}],880:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"../../registry\"),o=t(\"../../lib\"),s=o._,l=t(\"../../components/color\"),c=t(\"../../components/drawing\"),u=t(\"../cartesian/set_convert\"),h=t(\"../../lib/extend\").extendFlat,f=t(\"../plots\"),p=t(\"../cartesian/axes\"),d=t(\"../../components/dragelement\"),g=t(\"../../components/fx\"),m=t(\"../../components/dragelement/helpers\"),v=m.freeMode,y=m.rectMode,x=t(\"../../components/titles\"),b=t(\"../cartesian/select\").prepSelect,_=t(\"../cartesian/select\").selectOnClick,w=t(\"../cartesian/select\").clearSelect,T=t(\"../cartesian/select\").clearSelectionsCache,k=t(\"../cartesian/constants\");function M(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}e.exports=M;var A=M.prototype;A.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},A.plot=function(t,e){var r=e[this.id],n=e._size;this._hasClipOnAxisFalse=!1;for(var a=0;a<t.length;a++){if(!1===t[a][0].trace.cliponaxis){this._hasClipOnAxisFalse=!0;break}}this.updateLayers(r),this.adjustLayout(r,n),f.generalUpdatePerTraceModule(this.graphDiv,this,t,r),this.layers.plotbg.select(\"path\").call(l.fill,r.bgcolor)},A.makeFramework=function(t){var e=this.graphDiv,r=t[this.id],n=this.clipId=\"clip\"+this.layoutId+this.id,a=this.clipIdRelative=\"clip-relative\"+this.layoutId+this.id;this.clipDef=o.ensureSingleById(t._clips,\"clipPath\",n,(function(t){t.append(\"path\").attr(\"d\",\"M0,0Z\")})),this.clipDefRelative=o.ensureSingleById(t._clips,\"clipPath\",a,(function(t){t.append(\"path\").attr(\"d\",\"M0,0Z\")})),this.plotContainer=o.ensureSingle(this.container,\"g\",this.id),this.updateLayers(r),c.setClipUrl(this.layers.backplot,n,e),c.setClipUrl(this.layers.grids,n,e)},A.updateLayers=function(t){var e=this.layers,r=[\"draglayer\",\"plotbg\",\"backplot\",\"grids\"];\"below traces\"===t.aaxis.layer&&r.push(\"aaxis\",\"aline\"),\"below traces\"===t.baxis.layer&&r.push(\"baxis\",\"bline\"),\"below traces\"===t.caxis.layer&&r.push(\"caxis\",\"cline\"),r.push(\"frontplot\"),\"above traces\"===t.aaxis.layer&&r.push(\"aaxis\",\"aline\"),\"above traces\"===t.baxis.layer&&r.push(\"baxis\",\"bline\"),\"above traces\"===t.caxis.layer&&r.push(\"caxis\",\"cline\");var a=this.plotContainer.selectAll(\"g.toplevel\").data(r,String),i=[\"agrid\",\"bgrid\",\"cgrid\"];a.enter().append(\"g\").attr(\"class\",(function(t){return\"toplevel \"+t})).each((function(t){var r=n.select(this);e[t]=r,\"frontplot\"===t?r.append(\"g\").classed(\"scatterlayer\",!0):\"backplot\"===t?r.append(\"g\").classed(\"maplayer\",!0):\"plotbg\"===t?r.append(\"path\").attr(\"d\",\"M0,0Z\"):\"aline\"===t||\"bline\"===t||\"cline\"===t?r.append(\"path\"):\"grids\"===t&&i.forEach((function(t){e[t]=r.append(\"g\").classed(\"grid \"+t,!0)}))})),a.order()};var S=Math.sqrt(4/3);A.adjustLayout=function(t,e){var r,n,a,i,o,s,f=this,p=t.domain,d=(p.x[0]+p.x[1])/2,g=(p.y[0]+p.y[1])/2,m=p.x[1]-p.x[0],v=p.y[1]-p.y[0],y=m*e.w,x=v*e.h,b=t.sum,_=t.aaxis.min,w=t.baxis.min,T=t.caxis.min;y>S*x?a=(i=x)*S:i=(a=y)/S,o=m*a/y,s=v*i/x,r=e.l+e.w*d-a/2,n=e.t+e.h*(1-g)-i/2,f.x0=r,f.y0=n,f.w=a,f.h=i,f.sum=b,f.xaxis={type:\"linear\",range:[_+2*T-b,b-_-2*w],domain:[d-o/2,d+o/2],_id:\"x\"},u(f.xaxis,f.graphDiv._fullLayout),f.xaxis.setScale(),f.xaxis.isPtWithinRange=function(t){return t.a>=f.aaxis.range[0]&&t.a<=f.aaxis.range[1]&&t.b>=f.baxis.range[1]&&t.b<=f.baxis.range[0]&&t.c>=f.caxis.range[1]&&t.c<=f.caxis.range[0]},f.yaxis={type:\"linear\",range:[_,b-w-T],domain:[g-s/2,g+s/2],_id:\"y\"},u(f.yaxis,f.graphDiv._fullLayout),f.yaxis.setScale(),f.yaxis.isPtWithinRange=function(){return!0};var k=f.yaxis.domain[0],M=f.aaxis=h({},t.aaxis,{range:[_,b-w-T],side:\"left\",tickangle:(+t.aaxis.tickangle||0)-30,domain:[k,k+s*S],anchor:\"free\",position:0,_id:\"y\",_length:a});u(M,f.graphDiv._fullLayout),M.setScale();var A=f.baxis=h({},t.baxis,{range:[b-_-T,w],side:\"bottom\",domain:f.xaxis.domain,anchor:\"free\",position:0,_id:\"x\",_length:a});u(A,f.graphDiv._fullLayout),A.setScale();var E=f.caxis=h({},t.caxis,{range:[b-_-w,T],side:\"right\",tickangle:(+t.caxis.tickangle||0)+30,domain:[k,k+s*S],anchor:\"free\",position:0,_id:\"y\",_length:a});u(E,f.graphDiv._fullLayout),E.setScale();var C=\"M\"+r+\",\"+(n+i)+\"h\"+a+\"l-\"+a/2+\",-\"+i+\"Z\";f.clipDef.select(\"path\").attr(\"d\",C),f.layers.plotbg.select(\"path\").attr(\"d\",C);var L=\"M0,\"+i+\"h\"+a+\"l-\"+a/2+\",-\"+i+\"Z\";f.clipDefRelative.select(\"path\").attr(\"d\",L);var P=\"translate(\"+r+\",\"+n+\")\";f.plotContainer.selectAll(\".scatterlayer,.maplayer\").attr(\"transform\",P),f.clipDefRelative.select(\"path\").attr(\"transform\",null);var I=\"translate(\"+(r-A._offset)+\",\"+(n+i)+\")\";f.layers.baxis.attr(\"transform\",I),f.layers.bgrid.attr(\"transform\",I);var z=\"translate(\"+(r+a/2)+\",\"+n+\")rotate(30)translate(0,\"+-M._offset+\")\";f.layers.aaxis.attr(\"transform\",z),f.layers.agrid.attr(\"transform\",z);var O=\"translate(\"+(r+a/2)+\",\"+n+\")rotate(-30)translate(0,\"+-E._offset+\")\";f.layers.caxis.attr(\"transform\",O),f.layers.cgrid.attr(\"transform\",O),f.drawAxes(!0),f.layers.aline.select(\"path\").attr(\"d\",M.showline?\"M\"+r+\",\"+(n+i)+\"l\"+a/2+\",-\"+i:\"M0,0\").call(l.stroke,M.linecolor||\"#000\").style(\"stroke-width\",(M.linewidth||0)+\"px\"),f.layers.bline.select(\"path\").attr(\"d\",A.showline?\"M\"+r+\",\"+(n+i)+\"h\"+a:\"M0,0\").call(l.stroke,A.linecolor||\"#000\").style(\"stroke-width\",(A.linewidth||0)+\"px\"),f.layers.cline.select(\"path\").attr(\"d\",E.showline?\"M\"+(r+a/2)+\",\"+n+\"l\"+a/2+\",\"+i:\"M0,0\").call(l.stroke,E.linecolor||\"#000\").style(\"stroke-width\",(E.linewidth||0)+\"px\"),f.graphDiv._context.staticPlot||f.initInteractions(),c.setClipUrl(f.layers.frontplot,f._hasClipOnAxisFalse?null:f.clipId,f.graphDiv)},A.drawAxes=function(t){var e=this.graphDiv,r=this.id.substr(7)+\"title\",n=this.layers,a=this.aaxis,i=this.baxis,o=this.caxis;if(this.drawAx(a),this.drawAx(i),this.drawAx(o),t){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(o.showticklabels?.75*o.tickfont.size:0)+(\"outside\"===o.ticks?.87*o.ticklen:0)),c=(i.showticklabels?i.tickfont.size:0)+(\"outside\"===i.ticks?i.ticklen:0)+3;n[\"a-title\"]=x.draw(e,\"a\"+r,{propContainer:a,propName:this.id+\".aaxis.title\",placeholder:s(e,\"Click to enter Component A title\"),attributes:{x:this.x0+this.w/2,y:this.y0-a.title.font.size/3-l,\"text-anchor\":\"middle\"}}),n[\"b-title\"]=x.draw(e,\"b\"+r,{propContainer:i,propName:this.id+\".baxis.title\",placeholder:s(e,\"Click to enter Component B title\"),attributes:{x:this.x0-c,y:this.y0+this.h+.83*i.title.font.size+c,\"text-anchor\":\"middle\"}}),n[\"c-title\"]=x.draw(e,\"c\"+r,{propContainer:o,propName:this.id+\".caxis.title\",placeholder:s(e,\"Click to enter Component C title\"),attributes:{x:this.x0+this.w+c,y:this.y0+this.h+.83*o.title.font.size+c,\"text-anchor\":\"middle\"}})}},A.drawAx=function(t){var e,r=this.graphDiv,n=t._name,a=n.charAt(0),i=t._id,s=this.layers[n],l=a+\"tickLayout\",c=(e=t).ticks+String(e.ticklen)+String(e.showticklabels);this[l]!==c&&(s.selectAll(\".\"+i+\"tick\").remove(),this[l]=c),t.setScale();var u=p.calcTicks(t),h=p.clipEnds(t,u),f=p.makeTransFn(t),d=p.getTickSigns(t)[2],g=o.deg2rad(30),m=d*(t.linewidth||1)/2,v=d*t.ticklen,y=this.w,x=this.h,b=\"b\"===a?\"M0,\"+m+\"l\"+Math.sin(g)*v+\",\"+Math.cos(g)*v:\"M\"+m+\",0l\"+Math.cos(g)*v+\",\"+-Math.sin(g)*v,_={a:\"M0,0l\"+x+\",-\"+y/2,b:\"M0,0l-\"+y/2+\",-\"+x,c:\"M0,0l-\"+x+\",\"+y/2}[a];p.drawTicks(r,t,{vals:\"inside\"===t.ticks?h:u,layer:s,path:b,transFn:f,crisp:!1}),p.drawGrid(r,t,{vals:h,layer:this.layers[a+\"grid\"],path:_,transFn:f,crisp:!1}),p.drawLabels(r,t,{vals:u,layer:s,transFn:f,labelFns:p.makeLabelFns(t,0,30)})};var E=k.MINZOOM/2+.87,C=\"m-0.87,.5h\"+E+\"v3h-\"+(E+5.2)+\"l\"+(E/2+2.6)+\",-\"+(.87*E+4.5)+\"l2.6,1.5l-\"+E/2+\",\"+.87*E+\"Z\",L=\"m0.87,.5h-\"+E+\"v3h\"+(E+5.2)+\"l-\"+(E/2+2.6)+\",-\"+(.87*E+4.5)+\"l-2.6,1.5l\"+E/2+\",\"+.87*E+\"Z\",P=\"m0,1l\"+E/2+\",\"+.87*E+\"l2.6,-1.5l-\"+(E/2+2.6)+\",-\"+(.87*E+4.5)+\"l-\"+(E/2+2.6)+\",\"+(.87*E+4.5)+\"l2.6,1.5l\"+E/2+\",-\"+.87*E+\"Z\",I=!0;function z(t){n.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}A.clearSelect=function(){T(this.dragOptions),w(this.dragOptions.gd)},A.initInteractions=function(){var t,e,r,n,u,h,f,p,m,x,w=this,T=w.layers.plotbg.select(\"path\").node(),M=w.graphDiv,A=M._fullLayout._zoomlayer;function E(t){var e={};return e[w.id+\".aaxis.min\"]=t.a,e[w.id+\".baxis.min\"]=t.b,e[w.id+\".caxis.min\"]=t.c,e}function O(t,e){var r=M._fullLayout.clickmode;z(M),2===t&&(M.emit(\"plotly_doubleclick\",null),i.call(\"_guiRelayout\",M,E({a:0,b:0,c:0}))),r.indexOf(\"select\")>-1&&1===t&&_(e,M,[w.xaxis],[w.yaxis],w.id,w.dragOptions),r.indexOf(\"event\")>-1&&g.click(M,e,w.id)}function D(t,e){return 1-e/w.h}function R(t,e){return 1-(t+(w.h-e)/Math.sqrt(3))/w.w}function F(t,e){return(t-(w.h-e)/Math.sqrt(3))/w.w}function B(a,i){var o=t+a,s=e+i,l=Math.max(0,Math.min(1,D(0,e),D(0,s))),c=Math.max(0,Math.min(1,R(t,e),R(o,s))),d=Math.max(0,Math.min(1,F(t,e),F(o,s))),g=(l/2+d)*w.w,v=(1-l/2-c)*w.w,y=(g+v)/2,b=v-g,_=(1-l)*w.h,T=_-b/S;b<k.MINZOOM?(u=r,m.attr(\"d\",f),x.attr(\"d\",\"M0,0Z\")):(u={a:r.a+l*n,b:r.b+c*n,c:r.c+d*n},m.attr(\"d\",f+\"M\"+g+\",\"+_+\"H\"+v+\"L\"+y+\",\"+T+\"L\"+g+\",\"+_+\"Z\"),x.attr(\"d\",\"M\"+t+\",\"+e+\"m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2ZM\"+g+\",\"+_+C+\"M\"+v+\",\"+_+L+\"M\"+y+\",\"+T+P)),p||(m.transition().style(\"fill\",h>.2?\"rgba(0,0,0,0.4)\":\"rgba(255,255,255,0.3)\").duration(200),x.transition().style(\"opacity\",1).duration(200),p=!0),M.emit(\"plotly_relayouting\",E(u))}function N(){z(M),u!==r&&(i.call(\"_guiRelayout\",M,E(u)),I&&M.data&&M._context.showTips&&(o.notifier(s(M,\"Double-click to zoom back out\"),\"long\"),I=!1))}function j(t,e){var n=t/w.xaxis._m,a=e/w.yaxis._m,i=[(u={a:r.a-a,b:r.b+(n+a)/2,c:r.c-(n-a)/2}).a,u.b,u.c].sort(o.sorterAsc),s=i.indexOf(u.a),l=i.indexOf(u.b),h=i.indexOf(u.c);i[0]<0&&(i[1]+i[0]/2<0?(i[2]+=i[0]+i[1],i[0]=i[1]=0):(i[2]+=i[0]/2,i[1]+=i[0]/2,i[0]=0),u={a:i[s],b:i[l],c:i[h]},e=(r.a-u.a)*w.yaxis._m,t=(r.c-u.c-r.b+u.b)*w.xaxis._m);var f=\"translate(\"+(w.x0+t)+\",\"+(w.y0+e)+\")\";w.plotContainer.selectAll(\".scatterlayer,.maplayer\").attr(\"transform\",f);var p=\"translate(\"+-t+\",\"+-e+\")\";w.clipDefRelative.select(\"path\").attr(\"transform\",p),w.aaxis.range=[u.a,w.sum-u.b-u.c],w.baxis.range=[w.sum-u.a-u.c,u.b],w.caxis.range=[w.sum-u.a-u.b,u.c],w.drawAxes(!1),w._hasClipOnAxisFalse&&w.plotContainer.select(\".scatterlayer\").selectAll(\".trace\").call(c.hideOutsideRangePoints,w),M.emit(\"plotly_relayouting\",E(u))}function U(){i.call(\"_guiRelayout\",M,E(u))}this.dragOptions={element:T,gd:M,plotinfo:{id:w.id,domain:M._fullLayout[w.id].domain,xaxis:w.xaxis,yaxis:w.yaxis},subplot:w.id,prepFn:function(i,o,s){w.dragOptions.xaxes=[w.xaxis],w.dragOptions.yaxes=[w.yaxis];var c=w.dragOptions.dragmode=M._fullLayout.dragmode;v(c)?w.dragOptions.minDrag=1:w.dragOptions.minDrag=void 0,\"zoom\"===c?(w.dragOptions.moveFn=B,w.dragOptions.clickFn=O,w.dragOptions.doneFn=N,function(i,o,s){var c=T.getBoundingClientRect();t=o-c.left,e=s-c.top,r={a:w.aaxis.range[0],b:w.baxis.range[1],c:w.caxis.range[1]},u=r,n=w.aaxis.range[1]-r.a,h=a(w.graphDiv._fullLayout[w.id].bgcolor).getLuminance(),f=\"M0,\"+w.h+\"L\"+w.w/2+\", 0L\"+w.w+\",\"+w.h+\"Z\",p=!1,m=A.append(\"path\").attr(\"class\",\"zoombox\").attr(\"transform\",\"translate(\"+w.x0+\", \"+w.y0+\")\").style({fill:h>.2?\"rgba(0,0,0,0)\":\"rgba(255,255,255,0)\",\"stroke-width\":0}).attr(\"d\",f),x=A.append(\"path\").attr(\"class\",\"zoombox-corners\").attr(\"transform\",\"translate(\"+w.x0+\", \"+w.y0+\")\").style({fill:l.background,stroke:l.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"d\",\"M0,0Z\"),w.clearSelect(M)}(0,o,s)):\"pan\"===c?(w.dragOptions.moveFn=j,w.dragOptions.clickFn=O,w.dragOptions.doneFn=U,r={a:w.aaxis.range[0],b:w.baxis.range[1],c:w.caxis.range[1]},u=r,w.clearSelect(M)):(y(c)||v(c))&&b(i,o,s,w.dragOptions,c)}},T.onmousemove=function(t){g.hover(M,t,w.id),M._fullLayout._lasthover=T,M._fullLayout._hoversubplot=w.id},T.onmouseout=function(t){M._dragging||d.unhover(M,t)},d.init(this.dragOptions)}},{\"../../components/color\":615,\"../../components/dragelement\":634,\"../../components/dragelement/helpers\":633,\"../../components/drawing\":637,\"../../components/fx\":655,\"../../components/titles\":710,\"../../lib\":749,\"../../lib/extend\":739,\"../../registry\":881,\"../cartesian/axes\":798,\"../cartesian/constants\":804,\"../cartesian/select\":817,\"../cartesian/set_convert\":818,\"../plots\":861,d3:169,tinycolor2:548}],881:[function(t,e,r){\"use strict\";var n=t(\"./lib/loggers\"),a=t(\"./lib/noop\"),i=t(\"./lib/push_unique\"),o=t(\"./lib/is_plain_object\"),s=t(\"./lib/dom\").addStyleRule,l=t(\"./lib/extend\"),c=t(\"./plots/attributes\"),u=t(\"./plots/layout_attributes\"),h=l.extendFlat,f=l.extendDeepAll;function p(t){var e=t.name,a=t.categories,i=t.meta;if(r.modules[e])n.log(\"Type \"+e+\" already registered\");else{r.subplotsRegistry[t.basePlotModule.name]||function(t){var e=t.name;if(r.subplotsRegistry[e])return void n.log(\"Plot type \"+e+\" already registered.\");for(var a in v(t),r.subplotsRegistry[e]=t,r.componentsRegistry)b(a,t.name)}(t.basePlotModule);for(var o={},l=0;l<a.length;l++)o[a[l]]=!0,r.allCategories[a[l]]=!0;for(var c in r.modules[e]={_module:t,categories:o},i&&Object.keys(i).length&&(r.modules[e].meta=i),r.allTypes.push(e),r.componentsRegistry)y(c,e);t.layoutAttributes&&h(r.traceLayoutAttributes,t.layoutAttributes);var u=t.basePlotModule,f=u.name;if(\"mapbox\"===f){var p=u.constants.styleRules;for(var d in p)s(\".js-plotly-plot .plotly .mapboxgl-\"+d,p[d])}\"geo\"!==f&&\"mapbox\"!==f||void 0===typeof window||void 0!==window.PlotlyGeoAssets||(window.PlotlyGeoAssets={topojson:{}})}}function d(t){if(\"string\"!=typeof t.name)throw new Error(\"Component module *name* must be a string.\");var e=t.name;for(var n in r.componentsRegistry[e]=t,t.layoutAttributes&&(t.layoutAttributes._isLinkedToArray&&i(r.layoutArrayContainers,e),v(t)),r.modules)y(e,n);for(var a in r.subplotsRegistry)b(e,a);for(var o in r.transformsRegistry)x(e,o);t.schema&&t.schema.layout&&f(u,t.schema.layout)}function g(t){if(\"string\"!=typeof t.name)throw new Error(\"Transform module *name* must be a string.\");var e=\"Transform module \"+t.name,a=\"function\"==typeof t.transform,i=\"function\"==typeof t.calcTransform;if(!a&&!i)throw new Error(e+\" is missing a *transform* or *calcTransform* method.\");for(var s in a&&i&&n.log([e+\" has both a *transform* and *calcTransform* methods.\",\"Please note that all *transform* methods are executed\",\"before all *calcTransform* methods.\"].join(\" \")),o(t.attributes)||n.log(e+\" registered without an *attributes* object.\"),\"function\"!=typeof t.supplyDefaults&&n.log(e+\" registered without a *supplyDefaults* method.\"),r.transformsRegistry[t.name]=t,r.componentsRegistry)x(s,t.name)}function m(t){var e=t.name,n=e.split(\"-\")[0],a=t.dictionary,i=t.format,o=a&&Object.keys(a).length,s=i&&Object.keys(i).length,l=r.localeRegistry,c=l[e];if(c||(l[e]=c={}),n!==e){var u=l[n];u||(l[n]=u={}),o&&u.dictionary===c.dictionary&&(u.dictionary=a),s&&u.format===c.format&&(u.format=i)}o&&(c.dictionary=a),s&&(c.format=i)}function v(t){if(t.layoutAttributes){var e=t.layoutAttributes._arrayAttrRegexps;if(e)for(var n=0;n<e.length;n++)i(r.layoutArrayRegexes,e[n])}}function y(t,e){var n=r.componentsRegistry[t].schema;if(n&&n.traces){var a=n.traces[e];a&&f(r.modules[e]._module.attributes,a)}}function x(t,e){var n=r.componentsRegistry[t].schema;if(n&&n.transforms){var a=n.transforms[e];a&&f(r.transformsRegistry[e].attributes,a)}}function b(t,e){var n=r.componentsRegistry[t].schema;if(n&&n.subplots){var a=r.subplotsRegistry[e],i=a.layoutAttributes,o=\"subplot\"===a.attr?a.name:a.attr;Array.isArray(o)&&(o=o[0]);var s=n.subplots[o];i&&s&&f(i,s)}}function _(t){return\"object\"==typeof t&&(t=t.type),t}r.modules={},r.allCategories={},r.allTypes=[],r.subplotsRegistry={},r.transformsRegistry={},r.componentsRegistry={},r.layoutArrayContainers=[],r.layoutArrayRegexes=[],r.traceLayoutAttributes={},r.localeRegistry={},r.apiMethodRegistry={},r.collectableSubplotTypes=null,r.register=function(t){if(r.collectableSubplotTypes=null,!t)throw new Error(\"No argument passed to Plotly.register.\");t&&!Array.isArray(t)&&(t=[t]);for(var e=0;e<t.length;e++){var n=t[e];if(!n)throw new Error(\"Invalid module was attempted to be registered!\");switch(n.moduleType){case\"trace\":p(n);break;case\"transform\":g(n);break;case\"component\":d(n);break;case\"locale\":m(n);break;case\"apiMethod\":var a=n.name;r.apiMethodRegistry[a]=n.fn;break;default:throw new Error(\"Invalid module was attempted to be registered!\")}}},r.getModule=function(t){var e=r.modules[_(t)];return!!e&&e._module},r.traceIs=function(t,e){if(\"various\"===(t=_(t)))return!1;var a=r.modules[t];return a||(t&&\"area\"!==t&&n.log(\"Unrecognized trace type \"+t+\".\"),a=r.modules[c.type.dflt]),!!a.categories[e]},r.getTransformIndices=function(t,e){for(var r=[],n=t.transforms||[],a=0;a<n.length;a++)n[a].type===e&&r.push(a);return r},r.hasTransform=function(t,e){for(var r=t.transforms||[],n=0;n<r.length;n++)if(r[n].type===e)return!0;return!1},r.getComponentMethod=function(t,e){var n=r.componentsRegistry[t];return n&&n[e]||a},r.call=function(){var t=arguments[0],e=[].slice.call(arguments,1);return r.apiMethodRegistry[t].apply(null,e)}},{\"./lib/dom\":737,\"./lib/extend\":739,\"./lib/is_plain_object\":750,\"./lib/loggers\":753,\"./lib/noop\":758,\"./lib/push_unique\":763,\"./plots/attributes\":794,\"./plots/layout_attributes\":852}],882:[function(t,e,r){\"use strict\";var n=t(\"../registry\"),a=t(\"../lib\"),i=a.extendFlat,o=a.extendDeep;function s(t){var e;switch(t){case\"themes__thumb\":e={autosize:!0,width:150,height:150,title:{text:\"\"},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case\"thumbnail\":e={title:{text:\"\"},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:\"\",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:e={}}return e}e.exports=function(t,e){var r;t.framework&&t.framework.isPolar&&(t=t.framework.getConfig());var a,l=t.data,c=t.layout,u=o([],l),h=o({},c,s(e.tileClass)),f=t._context||{};if(e.width&&(h.width=e.width),e.height&&(h.height=e.height),\"thumbnail\"===e.tileClass||\"themes__thumb\"===e.tileClass){h.annotations=[];var p=Object.keys(h);for(r=0;r<p.length;r++)a=p[r],[\"xaxis\",\"yaxis\",\"zaxis\"].indexOf(a.slice(0,5))>-1&&(h[p[r]].title={text:\"\"});for(r=0;r<u.length;r++){var d=u[r];d.showscale=!1,d.marker&&(d.marker.showscale=!1),n.traceIs(d,\"pie-like\")&&(d.textposition=\"none\")}}if(Array.isArray(e.annotations))for(r=0;r<e.annotations.length;r++)h.annotations.push(e.annotations[r]);var g=Object.keys(h).filter((function(t){return t.match(/^scene\\d*$/)}));if(g.length){var m={};for(\"thumbnail\"===e.tileClass&&(m={title:{text:\"\"},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),r=0;r<g.length;r++){var v=h[g[r]];v.xaxis||(v.xaxis={}),v.yaxis||(v.yaxis={}),v.zaxis||(v.zaxis={}),i(v.xaxis,m),i(v.yaxis,m),i(v.zaxis,m),v._scene=null}}var y=document.createElement(\"div\");e.tileClass&&(y.className=e.tileClass);var x={gd:y,td:y,layout:h,data:u,config:{staticPlot:void 0===e.staticPlot||e.staticPlot,plotGlPixelRatio:void 0===e.plotGlPixelRatio?2:e.plotGlPixelRatio,displaylogo:e.displaylogo||!1,showLink:e.showLink||!1,showTips:e.showTips||!1,mapboxAccessToken:f.mapboxAccessToken}};return\"transparent\"!==e.setBackground&&(x.config.setBackground=e.setBackground||\"opaque\"),x.gd.defaultLayout=s(e.tileClass),x}},{\"../lib\":749,\"../registry\":881}],883:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plot_api/to_image\"),i=t(\"./filesaver\"),o=t(\"./helpers\");e.exports=function(t,e){var r;return n.isPlainObject(t)||(r=n.getGraphDiv(t)),(e=e||{}).format=e.format||\"png\",e.imageDataOnly=!0,new Promise((function(s,l){r&&r._snapshotInProgress&&l(new Error(\"Snapshotting already in progress.\")),n.isIE()&&\"svg\"!==e.format&&l(new Error(o.MSG_IE_BAD_FORMAT)),r&&(r._snapshotInProgress=!0);var c=a(t,e),u=e.filename||t.fn||\"newplot\";u+=\".\"+e.format.replace(\"-\",\".\"),c.then((function(t){return r&&(r._snapshotInProgress=!1),i(t,u,e.format)})).then((function(t){s(t)})).catch((function(t){r&&(r._snapshotInProgress=!1),l(t)}))}))}},{\"../lib\":749,\"../plot_api/to_image\":790,\"./filesaver\":884,\"./helpers\":885}],884:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"./helpers\");e.exports=function(t,e,r){var i=document.createElement(\"a\"),o=\"download\"in i;return new Promise((function(s,l){var c,u;if(n.isIE9orBelow()&&l(new Error(\"IE < 10 unsupported\")),n.isSafari()){var h=\"svg\"===r?\",\":\";base64,\";return a.octetStream(h+encodeURIComponent(t)),s(e)}return n.isIE()?(c=a.createBlob(t,\"svg\"),window.navigator.msSaveBlob(c,e),c=null,s(e)):o?(c=a.createBlob(t,r),u=a.createObjectURL(c),i.href=u,i.download=e,document.body.appendChild(i),i.click(),document.body.removeChild(i),a.revokeObjectURL(u),c=null,s(e)):void l(new Error(\"download error\"))}))}},{\"../lib\":749,\"./helpers\":885}],885:[function(t,e,r){\"use strict\";var n=t(\"../registry\");r.getDelay=function(t){return t._has&&(t._has(\"gl3d\")||t._has(\"gl2d\")||t._has(\"mapbox\"))?500:0},r.getRedrawFunc=function(t){return function(){var e=t._fullLayout||{};!(e._has&&e._has(\"polar\"))&&t.data&&t.data[0]&&t.data[0].r||n.getComponentMethod(\"colorbar\",\"draw\")(t)}},r.encodeSVG=function(t){return\"data:image/svg+xml,\"+encodeURIComponent(t)},r.encodeJSON=function(t){return\"data:application/json,\"+encodeURIComponent(t)};var a=window.URL||window.webkitURL;r.createObjectURL=function(t){return a.createObjectURL(t)},r.revokeObjectURL=function(t){return a.revokeObjectURL(t)},r.createBlob=function(t,e){if(\"svg\"===e)return new window.Blob([t],{type:\"image/svg+xml;charset=utf-8\"});if(\"full-json\"===e)return new window.Blob([t],{type:\"application/json;charset=utf-8\"});var r=function(t){for(var e=t.length,r=new ArrayBuffer(e),n=new Uint8Array(r),a=0;a<e;a++)n[a]=t.charCodeAt(a);return r}(window.atob(t));return new window.Blob([r],{type:\"image/\"+e})},r.octetStream=function(t){document.location.href=\"data:application/octet-stream\"+t},r.IMAGE_URL_PREFIX=/^data:image\\/\\w+;base64,/,r.MSG_IE_BAD_FORMAT=\"Sorry IE does not support downloading from canvas. Try {format:'svg'} instead.\"},{\"../registry\":881}],886:[function(t,e,r){\"use strict\";var n=t(\"./helpers\"),a={getDelay:n.getDelay,getRedrawFunc:n.getRedrawFunc,clone:t(\"./cloneplot\"),toSVG:t(\"./tosvg\"),svgToImg:t(\"./svgtoimg\"),toImage:t(\"./toimage\"),downloadImage:t(\"./download\")};e.exports=a},{\"./cloneplot\":882,\"./download\":883,\"./helpers\":885,\"./svgtoimg\":887,\"./toimage\":888,\"./tosvg\":889}],887:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"events\").EventEmitter,i=t(\"./helpers\");e.exports=function(t){var e=t.emitter||new a,r=new Promise((function(a,o){var s=window.Image,l=t.svg,c=t.format||\"png\";if(n.isIE()&&\"svg\"!==c){var u=new Error(i.MSG_IE_BAD_FORMAT);return o(u),t.promise?r:e.emit(\"error\",u)}var h,f,p=t.canvas,d=t.scale||1,g=t.width||300,m=t.height||150,v=d*g,y=d*m,x=p.getContext(\"2d\"),b=new s;\"svg\"===c||n.isIE9orBelow()||n.isSafari()?f=i.encodeSVG(l):(h=i.createBlob(l,\"svg\"),f=i.createObjectURL(h)),p.width=v,p.height=y,b.onload=function(){var r;switch(h=null,i.revokeObjectURL(f),\"svg\"!==c&&x.drawImage(b,0,0,v,y),c){case\"jpeg\":r=p.toDataURL(\"image/jpeg\");break;case\"png\":r=p.toDataURL(\"image/png\");break;case\"webp\":r=p.toDataURL(\"image/webp\");break;case\"svg\":r=f;break;default:var n=\"Image format is not jpeg, png, svg or webp.\";if(o(new Error(n)),!t.promise)return e.emit(\"error\",n)}a(r),t.promise||e.emit(\"success\",r)},b.onerror=function(r){if(h=null,i.revokeObjectURL(f),o(r),!t.promise)return e.emit(\"error\",r)},b.src=f}));return t.promise?r:e}},{\"../lib\":749,\"./helpers\":885,events:110}],888:[function(t,e,r){\"use strict\";var n=t(\"events\").EventEmitter,a=t(\"../registry\"),i=t(\"../lib\"),o=t(\"./helpers\"),s=t(\"./cloneplot\"),l=t(\"./tosvg\"),c=t(\"./svgtoimg\");e.exports=function(t,e){var r=new n,u=s(t,{format:\"png\"}),h=u.gd;h.style.position=\"absolute\",h.style.left=\"-5000px\",document.body.appendChild(h);var f=o.getRedrawFunc(h);return a.call(\"plot\",h,u.data,u.layout,u.config).then(f).then((function(){var t=o.getDelay(h._fullLayout);setTimeout((function(){var t=l(h),n=document.createElement(\"canvas\");n.id=i.randstr(),(r=c({format:e.format,width:h._fullLayout.width,height:h._fullLayout.height,canvas:n,emitter:r,svg:t})).clean=function(){h&&document.body.removeChild(h)}}),t)})).catch((function(t){r.emit(\"error\",t)})),r}},{\"../lib\":749,\"../registry\":881,\"./cloneplot\":882,\"./helpers\":885,\"./svgtoimg\":887,\"./tosvg\":889,events:110}],889:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../lib\"),i=t(\"../components/drawing\"),o=t(\"../components/color\"),s=t(\"../constants/xmlns_namespaces\"),l=/\"/g,c=new RegExp('(\"TOBESTRIPPED)|(TOBESTRIPPED\")',\"g\");e.exports=function(t,e,r){var u,h=t._fullLayout,f=h._paper,p=h._toppaper,d=h.width,g=h.height;f.insert(\"rect\",\":first-child\").call(i.setRect,0,0,d,g).call(o.fill,h.paper_bgcolor);var m=h._basePlotModules||[];for(u=0;u<m.length;u++){var v=m[u];v.toSVG&&v.toSVG(t)}if(p){var y=p.node().childNodes,x=Array.prototype.slice.call(y);for(u=0;u<x.length;u++){var b=x[u];b.childNodes.length&&f.node().appendChild(b)}}if(h._draggers&&h._draggers.remove(),f.node().style.background=\"\",f.selectAll(\"text\").attr({\"data-unformatted\":null,\"data-math\":null}).each((function(){var t=n.select(this);if(\"hidden\"!==this.style.visibility&&\"none\"!==this.style.display){t.style({visibility:null,display:null});var e=this.style.fontFamily;e&&-1!==e.indexOf('\"')&&t.style(\"font-family\",e.replace(l,\"TOBESTRIPPED\"))}else t.remove()})),h._gradientUrlQueryParts){var _=[];for(var w in h._gradientUrlQueryParts)_.push(w);_.length&&f.selectAll(_.join(\",\")).each((function(){var t=n.select(this),e=this.style.fill;e&&-1!==e.indexOf(\"url(\")&&t.style(\"fill\",e.replace(l,\"TOBESTRIPPED\"));var r=this.style.stroke;r&&-1!==r.indexOf(\"url(\")&&t.style(\"stroke\",r.replace(l,\"TOBESTRIPPED\"))}))}\"pdf\"!==e&&\"eps\"!==e||f.selectAll(\"#MathJax_SVG_glyphs path\").attr(\"stroke-width\",0),f.node().setAttributeNS(s.xmlns,\"xmlns\",s.svg),f.node().setAttributeNS(s.xmlns,\"xmlns:xlink\",s.xlink),\"svg\"===e&&r&&(f.attr(\"width\",r*d),f.attr(\"height\",r*g),f.attr(\"viewBox\",\"0 0 \"+d+\" \"+g));var T=(new window.XMLSerializer).serializeToString(f.node());return T=function(t){var e=n.select(\"body\").append(\"div\").style({display:\"none\"}).html(\"\"),r=t.replace(/(&[^;]*;)/gi,(function(t){return\"&lt;\"===t?\"&#60;\":\"&rt;\"===t?\"&#62;\":-1!==t.indexOf(\"<\")||-1!==t.indexOf(\">\")?\"\":e.html(t).text()}));return e.remove(),r}(T),T=(T=T.replace(/&(?!\\w+;|\\#[0-9]+;| \\#x[0-9A-F]+;)/g,\"&amp;\")).replace(c,\"'\"),a.isIE()&&(T=(T=(T=T.replace(/\"/gi,\"'\")).replace(/(\\('#)([^']*)('\\))/gi,'(\"#$2\")')).replace(/(\\\\')/gi,'\"')),T}},{\"../components/color\":615,\"../components/drawing\":637,\"../constants/xmlns_namespaces\":725,\"../lib\":749,d3:169}],890:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,\"tx\"),n.mergeArray(e.hovertext,t,\"htx\");var a=e.marker;if(a){n.mergeArray(a.opacity,t,\"mo\",!0),n.mergeArray(a.color,t,\"mc\");var i=a.line;i&&(n.mergeArray(i.color,t,\"mlc\"),n.mergeArrayCastPositive(i.width,t,\"mlw\"))}}},{\"../../lib\":749}],891:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../../plots/template_attributes\").texttemplateAttrs,o=t(\"../../components/colorscale/attributes\"),s=t(\"../../plots/font_attributes\"),l=t(\"./constants\"),c=t(\"../../lib/extend\").extendFlat,u=s({editType:\"calc\",arrayOk:!0,colorEditType:\"style\"}),h=c({},n.marker.line.width,{dflt:0}),f=c({width:h,editType:\"calc\"},o(\"marker.line\")),p=c({line:f,editType:\"calc\"},o(\"marker\"),{opacity:{valType:\"number\",arrayOk:!0,dflt:1,min:0,max:1,editType:\"style\"}});e.exports={x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,text:n.text,texttemplate:i({editType:\"plot\"},{keys:l.eventDataKeys}),hovertext:n.hovertext,hovertemplate:a({},{keys:l.eventDataKeys}),textposition:{valType:\"enumerated\",values:[\"inside\",\"outside\",\"auto\",\"none\"],dflt:\"none\",arrayOk:!0,editType:\"calc\"},insidetextanchor:{valType:\"enumerated\",values:[\"end\",\"middle\",\"start\"],dflt:\"end\",editType:\"plot\"},textangle:{valType:\"angle\",dflt:\"auto\",editType:\"plot\"},textfont:c({},u,{}),insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),constraintext:{valType:\"enumerated\",values:[\"inside\",\"outside\",\"both\",\"none\"],dflt:\"both\",editType:\"calc\"},cliponaxis:c({},n.cliponaxis,{}),orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],editType:\"calc+clearAxisTypes\"},base:{valType:\"any\",dflt:null,arrayOk:!0,editType:\"calc\"},offset:{valType:\"number\",dflt:null,arrayOk:!0,editType:\"calc\"},width:{valType:\"number\",dflt:null,min:0,arrayOk:!0,editType:\"calc\"},marker:p,offsetgroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},alignmentgroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},selected:{marker:{opacity:n.selected.marker.opacity,color:n.selected.marker.color,editType:\"style\"},textfont:n.selected.textfont,editType:\"style\"},unselected:{marker:{opacity:n.unselected.marker.opacity,color:n.unselected.marker.color,editType:\"style\"},textfont:n.unselected.textfont,editType:\"style\"},r:n.r,t:n.t,_deprecated:{bardir:{valType:\"enumerated\",editType:\"calc\",values:[\"v\",\"h\"]}}}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/font_attributes\":826,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156,\"./constants\":893}],892:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../plots/cartesian/align_period\"),i=t(\"../../components/colorscale/helpers\").hasColorscale,o=t(\"../../components/colorscale/calc\"),s=t(\"./arrays_to_calcdata\"),l=t(\"../scatter/calc_selection\");e.exports=function(t,e){var r,c,u,h,f=n.getFromId(t,e.xaxis||\"x\"),p=n.getFromId(t,e.yaxis||\"y\"),d={msUTC:!(!e.base&&0!==e.base)};\"h\"===e.orientation?(r=f.makeCalcdata(e,\"x\",d),u=p.makeCalcdata(e,\"y\"),c=a(e,p,\"y\",u),h=!!e.yperiodalignment):(r=p.makeCalcdata(e,\"y\",d),u=f.makeCalcdata(e,\"x\"),c=a(e,f,\"x\",u),h=!!e.xperiodalignment);for(var g=Math.min(c.length,r.length),m=new Array(g),v=0;v<g;v++)m[v]={p:c[v],s:r[v]},h&&(m[v].orig_p=u[v]),e.ids&&(m[v].id=String(e.ids[v]));return i(e,\"marker\")&&o(t,e,{vals:e.marker.color,containerStr:\"marker\",cLetter:\"c\"}),i(e,\"marker.line\")&&o(t,e,{vals:e.marker.line.color,containerStr:\"marker.line\",cLetter:\"c\"}),s(m,e),l(m,e),m}},{\"../../components/colorscale/calc\":623,\"../../components/colorscale/helpers\":626,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"../scatter/calc_selection\":1158,\"./arrays_to_calcdata\":890}],893:[function(t,e,r){\"use strict\";e.exports={TEXTPAD:3,eventDataKeys:[\"value\",\"label\"]}},{}],894:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\").isArrayOrTypedArray,i=t(\"../../constants/numerical\").BADNUM,o=t(\"../../registry\"),s=t(\"../../plots/cartesian/axes\"),l=t(\"../../plots/cartesian/axis_ids\").getAxisGroup,c=t(\"./sieve.js\");function u(t,e,r,o,u){if(o.length){var b,_,w,T;switch(function(t,e){var r,i;for(r=0;r<e.length;r++){var o,s=e[r],l=s[0].trace,c=\"funnel\"===l.type?l._base:l.base,u=\"h\"===l.orientation?l.xcalendar:l.ycalendar,h=\"category\"===t.type||\"multicategory\"===t.type?function(){return null}:t.d2c;if(a(c)){for(i=0;i<Math.min(c.length,s.length);i++)o=h(c[i],0,u),n(o)?(s[i].b=+o,s[i].hasB=1):s[i].b=0;for(;i<s.length;i++)s[i].b=0}else{o=h(c,0,u);var f=n(o);for(o=f?o:0,i=0;i<s.length;i++)s[i].b=o,f&&(s[i].hasB=1)}}}(r,o),u.mode){case\"overlay\":h(e,r,o,u);break;case\"group\":for(b=[],_=[],w=0;w<o.length;w++)void 0===(T=o[w])[0].trace.offset?_.push(T):b.push(T);_.length&&function(t,e,r,n,a){var o=new c(n,{sepNegVal:!1,overlapNoMerge:!a.norm});(function(t,e,r,n){for(var a=t._fullLayout,i=r.positions,o=r.distinctPositions,s=r.minDiff,c=r.traces,u=c.length,h=i.length!==o.length,f=s*(1-n.gap),m=l(a,e._id)+c[0][0].trace.orientation,v=a._alignmentOpts[m]||{},y=0;y<u;y++){var x,b,_=c[y],w=_[0].trace,T=v[w.alignmentgroup]||{},k=Object.keys(T.offsetGroups||{}).length,M=(x=k?f/k:h?f/u:f)*(1-(n.groupgap||0));b=k?((2*w._offsetIndex+1-k)*x-M)/2:h?((2*y+1-u)*x-M)/2:-M/2;var A=_[0].t;A.barwidth=M,A.poffset=b,A.bargroupwidth=f,A.bardelta=s}r.binWidth=c[0][0].t.barwidth/100,p(r),d(e,r),g(e,r,h)})(t,e,o,a),function(t){for(var e=t.traces,r=0;r<e.length;r++){var n=e[r];if(void 0===n[0].trace.base)for(var a=new c([n],{sepNegVal:!0,overlapNoMerge:!0}),o=0;o<n.length;o++){var s=n[o];if(s.p!==i){var l=a.put(s.p,s.b+s.s);l&&(s.b=l)}}}}(o),a.norm?(v(o),y(r,o,a)):m(r,o)}(t,e,r,_,u),b.length&&h(e,r,b,u);break;case\"stack\":case\"relative\":for(b=[],_=[],w=0;w<o.length;w++)void 0===(T=o[w])[0].trace.base?_.push(T):b.push(T);_.length&&function(t,e,r,n,a){var o=new c(n,{sepNegVal:\"relative\"===a.mode,overlapNoMerge:!(a.norm||\"stack\"===a.mode||\"relative\"===a.mode)});f(e,o,a),function(t,e,r){var n,a,o,l,c,u,h=x(t),f=e.traces;for(l=0;l<f.length;l++)if(n=f[l],\"funnel\"===(a=n[0].trace).type)for(c=0;c<n.length;c++)(u=n[c]).s!==i&&e.put(u.p,-.5*u.s);for(l=0;l<f.length;l++){n=f[l],a=n[0].trace,o=\"funnel\"===a.type;var p=[];for(c=0;c<n.length;c++)if((u=n[c]).s!==i){var d;d=o?u.s:u.s+u.b;var g=e.put(u.p,d),m=g+d;u.b=g,u[h]=m,r.norm||(p.push(m),u.hasB&&p.push(g))}r.norm||(a._extremes[t._id]=s.findExtremes(t,p,{tozero:!0,padded:!0}))}}(r,o,a);for(var l=0;l<n.length;l++)for(var u=n[l],h=0;h<u.length;h++){var p=u[h];if(p.s!==i)p.b+p.s===o.get(p.p,p.s)&&(p._outmost=!0)}a.norm&&y(r,o,a)}(0,e,r,_,u),b.length&&h(e,r,b,u)}!function(t,e){var r,a,i,o=x(e),s={},l=1/0,c=-1/0;for(r=0;r<t.length;r++)for(i=t[r],a=0;a<i.length;a++){var u=i[a].p;n(u)&&(l=Math.min(l,u),c=Math.max(c,u))}var h=1e4/(c-l),f=s.round=function(t){return String(Math.round(h*(t-l)))};for(r=0;r<t.length;r++){(i=t[r])[0].t.extents=s;var p=i[0].t.poffset,d=Array.isArray(p);for(a=0;a<i.length;a++){var g=i[a],m=g[o]-g.w/2;if(n(m)){var v=g[o]+g.w/2,y=f(g.p);s[y]?s[y]=[Math.min(m,s[y][0]),Math.max(v,s[y][1])]:s[y]=[m,v]}g.p0=g.p+(d?p[a]:p),g.p1=g.p0+g.w,g.s0=g.b,g.s1=g.s0+g.s}}}(o,e)}}function h(t,e,r,n){for(var a=0;a<r.length;a++){var i=r[a],o=new c([i],{unitMinDiff:n.xCat||n.yCat,sepNegVal:!1,overlapNoMerge:!n.norm});f(t,o,n),n.norm?(v(o),y(e,o,n)):m(e,o)}}function f(t,e,r){for(var n=e.minDiff,a=e.traces,i=n*(1-r.gap),o=i*(1-(r.groupgap||0)),s=-o/2,l=0;l<a.length;l++){var c=a[l][0].t;c.barwidth=o,c.poffset=s,c.bargroupwidth=i,c.bardelta=n}e.binWidth=a[0][0].t.barwidth/100,p(e),d(t,e),g(t,e)}function p(t){var e,r,i=t.traces;for(e=0;e<i.length;e++){var o,s=i[e],l=s[0],c=l.trace,u=l.t,h=c._offset||c.offset,f=u.poffset;if(a(h)){for(o=Array.prototype.slice.call(h,0,s.length),r=0;r<o.length;r++)n(o[r])||(o[r]=f);for(r=o.length;r<s.length;r++)o.push(f);u.poffset=o}else void 0!==h&&(u.poffset=h);var p=c._width||c.width,d=u.barwidth;if(a(p)){var g=Array.prototype.slice.call(p,0,s.length);for(r=0;r<g.length;r++)n(g[r])||(g[r]=d);for(r=g.length;r<s.length;r++)g.push(d);if(u.barwidth=g,void 0===h){for(o=[],r=0;r<s.length;r++)o.push(f+(d-g[r])/2);u.poffset=o}}else void 0!==p&&(u.barwidth=p,void 0===h&&(u.poffset=f+(d-p)/2))}}function d(t,e){for(var r=e.traces,n=x(t),a=0;a<r.length;a++)for(var i=r[a],o=i[0].t,s=o.poffset,l=Array.isArray(s),c=o.barwidth,u=Array.isArray(c),h=0;h<i.length;h++){var f=i[h],p=f.w=u?c[h]:c;f[n]=f.p+(l?s[h]:s)+p/2}}function g(t,e,r){var n=e.traces,a=e.minDiff/2;s.minDtick(t,e.minDiff,e.distinctPositions[0],r);for(var i=0;i<n.length;i++){var o,l,c,u,h=n[i],f=h[0],p=f.trace,d=[];for(u=0;u<h.length;u++)l=(o=h[u]).p-a,c=o.p+a,d.push(l,c);if(p.width||p.offset){var g=f.t,m=g.poffset,v=g.barwidth,y=Array.isArray(m),x=Array.isArray(v);for(u=0;u<h.length;u++){o=h[u];var b=y?m[u]:m,_=x?v[u]:v;c=(l=o.p+b)+_,d.push(l,c)}}p._extremes[t._id]=s.findExtremes(t,d,{padded:!1})}}function m(t,e){for(var r=e.traces,n=x(t),a=0;a<r.length;a++){for(var i=r[a],o=i[0].trace,l=[],c=!1,u=0;u<i.length;u++){var h=i[u],f=h.b,p=f+h.s;h[n]=p,l.push(p),h.hasB&&l.push(f),h.hasB&&h.b||(c=!0)}o._extremes[t._id]=s.findExtremes(t,l,{tozero:c,padded:!0})}}function v(t){for(var e=t.traces,r=0;r<e.length;r++)for(var n=e[r],a=0;a<n.length;a++){var o=n[a];o.s!==i&&t.put(o.p,o.b+o.s)}}function y(t,e,r){var a=e.traces,o=x(t),l=\"fraction\"===r.norm?1:100,c=l/1e9,u=t.l2c(t.c2l(0)),h=\"stack\"===r.mode?l:u;function f(e){return n(t.c2l(e))&&(e<u-c||e>h+c||!n(u))}for(var p=0;p<a.length;p++){for(var d=a[p],g=d[0].trace,m=[],v=!1,y=!1,b=0;b<d.length;b++){var _=d[b];if(_.s!==i){var w=Math.abs(l/e.get(_.p,_.s));_.b*=w,_.s*=w;var T=_.b,k=T+_.s;_[o]=k,m.push(k),y=y||f(k),_.hasB&&(m.push(T),y=y||f(T)),_.hasB&&_.b||(v=!0)}}g._extremes[t._id]=s.findExtremes(t,m,{tozero:v,padded:y})}}function x(t){return t._id.charAt(0)}e.exports={crossTraceCalc:function(t,e){for(var r=e.xaxis,n=e.yaxis,a=t._fullLayout,i=t._fullData,s=t.calcdata,l=[],c=[],h=0;h<i.length;h++){var f=i[h];if(!0===f.visible&&o.traceIs(f,\"bar\")&&f.xaxis===r._id&&f.yaxis===n._id&&(\"h\"===f.orientation?l.push(s[h]):c.push(s[h]),f._computePh))for(var p=t.calcdata[h],d=0;d<p.length;d++)\"function\"==typeof p[d].ph0&&(p[d].ph0=p[d].ph0()),\"function\"==typeof p[d].ph1&&(p[d].ph1=p[d].ph1())}var g={xCat:\"category\"===r.type||\"multicategory\"===r.type,yCat:\"category\"===n.type||\"multicategory\"===n.type,mode:a.barmode,norm:a.barnorm,gap:a.bargap,groupgap:a.bargroupgap};u(t,r,n,c,g),u(t,n,r,l,g)},setGroupPositions:u}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/axis_ids\":801,\"../../registry\":881,\"./sieve.js\":904,\"fast-isnumeric\":241}],895:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../../registry\"),o=t(\"../scatter/xy_defaults\"),s=t(\"../scatter/period_defaults\"),l=t(\"./style_defaults\"),c=t(\"../../plots/cartesian/axis_ids\").getAxisGroup,u=t(\"./attributes\"),h=n.coerceFont;function f(t,e,r,n){var a=e.orientation,i=e[{v:\"x\",h:\"y\"}[a]+\"axis\"],o=c(r,i)+a,s=r._alignmentOpts||{},l=n(\"alignmentgroup\"),u=s[o];u||(u=s[o]={});var h=u[l];h?h.traces.push(e):h=u[l]={traces:[e],alignmentIndex:Object.keys(u).length,offsetGroups:{}};var f=n(\"offsetgroup\"),p=h.offsetGroups,d=p[f];f&&(d||(d=p[f]={offsetIndex:Object.keys(p).length}),e._offsetIndex=d.offsetIndex)}function p(t,e,r,a,i,o){var s=!(!1===(o=o||{}).moduleHasSelected),l=!(!1===o.moduleHasUnselected),c=!(!1===o.moduleHasConstrain),u=!(!1===o.moduleHasCliponaxis),f=!(!1===o.moduleHasTextangle),p=!(!1===o.moduleHasInsideanchor),d=!!o.hasPathbar,g=Array.isArray(i)||\"auto\"===i,m=g||\"inside\"===i,v=g||\"outside\"===i;if(m||v){var y=h(a,\"textfont\",r.font),x=n.extendFlat({},y),b=!(t.textfont&&t.textfont.color);if(b&&delete x.color,h(a,\"insidetextfont\",x),d){var _=n.extendFlat({},y);b&&delete _.color,h(a,\"pathbar.textfont\",_)}v&&h(a,\"outsidetextfont\",y),s&&a(\"selected.textfont.color\"),l&&a(\"unselected.textfont.color\"),c&&a(\"constraintext\"),u&&a(\"cliponaxis\"),f&&a(\"textangle\"),a(\"texttemplate\")}m&&p&&a(\"insidetextanchor\")}e.exports={supplyDefaults:function(t,e,r,c){function h(r,a){return n.coerce(t,e,u,r,a)}if(o(t,e,c,h)){s(t,e,c,h),h(\"orientation\",e.x&&!e.y?\"h\":\"v\"),h(\"base\"),h(\"offset\"),h(\"width\"),h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\");var f=h(\"textposition\");p(t,e,c,h,f,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),l(t,e,h,r,c);var d=(e.marker.line||{}).color,g=i.getComponentMethod(\"errorbars\",\"supplyDefaults\");g(t,e,d||a.defaultLine,{axis:\"y\"}),g(t,e,d||a.defaultLine,{axis:\"x\",inherit:\"y\"}),n.coerceSelectionMarkerOpacity(e,h)}else e.visible=!1},crossTraceDefaults:function(t,e){var r;function a(t){return n.coerce(r._input,r,u,t)}if(\"group\"===e.barmode)for(var i=0;i<t.length;i++)\"bar\"===(r=t[i]).type&&(r._input,f(0,r,e,a))},handleGroupingDefaults:f,handleText:p}},{\"../../components/color\":615,\"../../lib\":749,\"../../plots/cartesian/axis_ids\":801,\"../../registry\":881,\"../scatter/period_defaults\":1176,\"../scatter/xy_defaults\":1183,\"./attributes\":891,\"./style_defaults\":906}],896:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){return t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),\"h\"===r.orientation?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}},{}],897:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"tinycolor2\"),i=t(\"../../lib\").isArrayOrTypedArray;r.coerceString=function(t,e,r){if(\"string\"==typeof e){if(e||!t.noBlank)return e}else if((\"number\"==typeof e||!0===e)&&!t.strict)return String(e);return void 0!==r?r:t.dflt},r.coerceNumber=function(t,e,r){if(n(e)){e=+e;var a=t.min,i=t.max;if(!(void 0!==a&&e<a||void 0!==i&&e>i))return e}return void 0!==r?r:t.dflt},r.coerceColor=function(t,e,r){return a(e).isValid()?e:void 0!==r?r:t.dflt},r.coerceEnumerated=function(t,e,r){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==r?r:t.dflt},r.getValue=function(t,e){var r;return Array.isArray(t)?e<t.length&&(r=t[e]):r=t,r},r.getLineWidth=function(t,e){return 0<e.mlw?e.mlw:i(t.marker.line.width)?0:t.marker.line.width}},{\"../../lib\":749,\"fast-isnumeric\":241,tinycolor2:548}],898:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../registry\"),i=t(\"../../components/color\"),o=t(\"../../lib\").fillText,s=t(\"./helpers\").getLineWidth,l=t(\"../../plots/cartesian/axes\").hoverLabelText,c=t(\"../../constants/numerical\").BADNUM;function u(t,e,r,a){var i,s,u,h,f,p,d,g=t.cd,m=g[0].trace,v=g[0].t,y=\"closest\"===a,x=\"waterfall\"===m.type,b=t.maxHoverDistance;function _(t){return t[u]-t.w/2}function w(t){return t[u]+t.w/2}var T=y?_:function(t){return Math.min(_(t),t.p-v.bardelta/2)},k=y?w:function(t){return Math.max(w(t),t.p+v.bardelta/2)};function M(t,e){return n.inbox(t-i,e-i,b+Math.min(1,Math.abs(e-t)/d)-1)}function A(t){return M(T(t),k(t))}function S(t){var e=s,r=t.b,a=t[h];if(x){var i=Math.abs(t.rawS)||0;e>0?a+=i:e<0&&(a-=i)}return n.inbox(r-e,a-e,b+(a-e)/(a-r)-1)}\"h\"===m.orientation?(i=r,s=e,u=\"y\",h=\"x\",f=S,p=A):(i=e,s=r,u=\"x\",h=\"y\",p=S,f=A);var E=t[u+\"a\"],C=t[h+\"a\"];d=Math.abs(E.r2c(E.range[1])-E.r2c(E.range[0]));var L=n.getDistanceFunction(a,f,p,(function(t){return(f(t)+p(t))/2}));if(n.getClosest(g,L,t),!1!==t.index&&g[t.index].p!==c){y||(T=function(t){return Math.min(_(t),t.p-v.bargroupwidth/2)},k=function(t){return Math.max(w(t),t.p+v.bargroupwidth/2)});var P=g[t.index],I=m.base?P.b+P.s:P.s;t[h+\"0\"]=t[h+\"1\"]=C.c2p(P[h],!0),t[h+\"LabelVal\"]=I;var z=v.extents[v.extents.round(P.p)];t[u+\"0\"]=E.c2p(y?T(P):z[0],!0),t[u+\"1\"]=E.c2p(y?k(P):z[1],!0);var O=void 0!==P.orig_p;return t[u+\"LabelVal\"]=O?P.orig_p:P.p,t.labelLabel=l(E,t[u+\"LabelVal\"]),t.valueLabel=l(C,t[h+\"LabelVal\"]),t.spikeDistance=(S(P)+function(t){return M(_(t),w(t))}(P))/2-b,t[u+\"Spike\"]=E.c2p(P.p,!0),o(P,m,t),t.hovertemplate=m.hovertemplate,t}}function h(t,e){var r=e.mcc||t.marker.color,n=e.mlcc||t.marker.line.color,a=s(t,e);return i.opacity(r)?r:i.opacity(n)&&a?n:void 0}e.exports={hoverPoints:function(t,e,r,n){var i=u(t,e,r,n);if(i){var o=i.cd,s=o[0].trace,l=o[i.index];return i.color=h(s,l),a.getComponentMethod(\"errorbars\",\"hoverInfo\")(l,s,i),[i]}},hoverOnBars:u,getTraceColor:h}},{\"../../components/color\":615,\"../../components/fx\":655,\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"./helpers\":897}],899:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\").crossTraceCalc,colorbar:t(\"../scatter/marker_colorbar\"),arraysToCalcdata:t(\"./arrays_to_calcdata\"),plot:t(\"./plot\").plot,style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\").hoverPoints,eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"bar\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"bar\",\"oriented\",\"errorBarsOK\",\"showLegend\",\"zoomScale\"],animatable:!0,meta:{}}},{\"../../plots/cartesian\":811,\"../scatter/marker_colorbar\":1174,\"./arrays_to_calcdata\":890,\"./attributes\":891,\"./calc\":892,\"./cross_trace_calc\":894,\"./defaults\":895,\"./event_data\":896,\"./hover\":898,\"./layout_attributes\":900,\"./layout_defaults\":901,\"./plot\":902,\"./select\":903,\"./style\":905}],900:[function(t,e,r){\"use strict\";e.exports={barmode:{valType:\"enumerated\",values:[\"stack\",\"group\",\"overlay\",\"relative\"],dflt:\"group\",editType:\"calc\"},barnorm:{valType:\"enumerated\",values:[\"\",\"fraction\",\"percent\"],dflt:\"\",editType:\"calc\"},bargap:{valType:\"number\",min:0,max:1,editType:\"calc\"},bargroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},{}],901:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../lib\"),o=t(\"./layout_attributes\");e.exports=function(t,e,r){function s(r,n){return i.coerce(t,e,o,r,n)}for(var l=!1,c=!1,u=!1,h={},f=s(\"barmode\"),p=0;p<r.length;p++){var d=r[p];if(n.traceIs(d,\"bar\")&&d.visible){if(l=!0,\"group\"===f){var g=d.xaxis+d.yaxis;h[g]&&(u=!0),h[g]=!0}if(d.visible&&\"histogram\"===d.type)\"category\"!==a.getFromId({_fullLayout:e},d[\"v\"===d.orientation?\"xaxis\":\"yaxis\"]).type&&(c=!0)}}l?(\"overlay\"!==f&&s(\"barnorm\"),s(\"bargap\",c&&!u?0:.2),s(\"bargroupgap\")):delete e.barmode}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"./layout_attributes\":900}],902:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../lib\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"../../components/color\"),l=t(\"../../components/drawing\"),c=t(\"../../registry\"),u=t(\"../../plots/cartesian/axes\").tickText,h=t(\"./uniform_text\"),f=h.recordMinTextSize,p=h.clearMinTextSize,d=t(\"./style\"),g=t(\"./helpers\"),m=t(\"./constants\"),v=t(\"./attributes\"),y=v.text,x=v.textposition,b=t(\"../../components/fx/helpers\").appendArrayPointValue,_=m.TEXTPAD;function w(t){return t.id}function T(t){if(t.ids)return w}function k(t,e){return t<e?1:-1}function M(t,e,r,n){var a;return!e.uniformtext.mode&&A(r)?(n&&(a=n()),t.transition().duration(r.duration).ease(r.easing).each(\"end\",(function(){a&&a()})).each(\"interrupt\",(function(){a&&a()}))):t}function A(t){return t&&t.duration>0}function S(t){return\"auto\"===t?0:t}function E(t,e){var r=Math.PI/180*e,n=Math.abs(Math.sin(r)),a=Math.abs(Math.cos(r));return{x:t.width*a+t.height*n,y:t.width*n+t.height*a}}function C(t,e,r,n,a,i){var o=!!i.isHorizontal,s=!!i.constrained,l=i.angle||0,c=i.anchor||\"end\",u=\"end\"===c,h=\"start\"===c,f=((i.leftToRight||0)+1)/2,p=1-f,d=a.width,g=a.height,m=Math.abs(e-t),v=Math.abs(n-r),y=m>2*_&&v>2*_?_:0;m-=2*y,v-=2*y;var x=S(l);\"auto\"!==l||d<=m&&g<=v||!(d>m||g>v)||(d>v||g>m)&&d<g==m<v||(x+=90);var b=E(a,x),w=1;s&&(w=Math.min(1,m/b.x,v/b.y));var T=a.left*p+a.right*f,M=(a.top+a.bottom)/2,A=(t+_)*p+(e-_)*f,C=(r+n)/2,L=0,P=0;if(h||u){var I=(o?b.x:b.y)/2,z=o?k(t,e):k(r,n);o?h?(A=t+z*y,L=-z*I):(A=e-z*y,L=z*I):h?(C=r+z*y,P=-z*I):(C=n-z*y,P=z*I)}return{textX:T,textY:M,targetX:A,targetY:C,anchorX:L,anchorY:P,scale:w,rotate:x}}e.exports={plot:function(t,e,r,h,m,v){var w=e.xaxis,L=e.yaxis,P=t._fullLayout;m||(m={mode:P.barmode,norm:P.barmode,gap:P.bargap,groupgap:P.bargroupgap},p(\"bar\",P));var I=i.makeTraceGroups(h,r,\"trace bars\").each((function(r){var c=n.select(this),h=r[0].trace,p=\"waterfall\"===h.type,I=\"funnel\"===h.type,z=\"bar\"===h.type||I,O=0;p&&h.connector.visible&&\"between\"===h.connector.mode&&(O=h.connector.line.width/2);var D=\"h\"===h.orientation,R=A(m),F=i.ensureSingle(c,\"g\",\"points\"),B=T(h),N=F.selectAll(\"g.point\").data(i.identity,B);N.enter().append(\"g\").classed(\"point\",!0),N.exit().remove(),N.each((function(c,p){var T,A,I=n.select(this),F=function(t,e,r,n){var a=[],i=[],o=n?e:r,s=n?r:e;return a[0]=o.c2p(t.s0,!0),i[0]=s.c2p(t.p0,!0),a[1]=o.c2p(t.s1,!0),i[1]=s.c2p(t.p1,!0),n?[a,i]:[i,a]}(c,w,L,D),B=F[0][0],N=F[0][1],j=F[1][0],U=F[1][1],V=0==(D?N-B:U-j);if(V&&z&&g.getLineWidth(h,c)&&(V=!1),V||(V=!(a(B)&&a(N)&&a(j)&&a(U))),c.isBlank=V,V&&(D?N=B:U=j),O&&!V&&(D?(B-=k(B,N)*O,N+=k(B,N)*O):(j-=k(j,U)*O,U+=k(j,U)*O)),\"waterfall\"===h.type){if(!V){var q=h[c.dir].marker;T=q.line.width,A=q.color}}else T=g.getLineWidth(h,c),A=c.mc||h.marker.color;function H(t){var e=n.round(T/2%1,2);return 0===m.gap&&0===m.groupgap?n.round(Math.round(t)-e,2):t}if(!t._context.staticPlot){var G=s.opacity(A)<1||T>.01?H:function(t,e,r){return r&&t===e?t:Math.abs(t-e)>=2?H(t):t>e?Math.ceil(t):Math.floor(t)};B=G(B,N,D),N=G(N,B,D),j=G(j,U,!D),U=G(U,j,!D)}var Y=M(i.ensureSingle(I,\"path\"),P,m,v);if(Y.style(\"vector-effect\",\"non-scaling-stroke\").attr(\"d\",isNaN((N-B)*(U-j))?\"M0,0Z\":\"M\"+B+\",\"+j+\"V\"+U+\"H\"+N+\"V\"+j+\"Z\").call(l.setClipUrl,e.layerClipId,t),!P.uniformtext.mode&&R){var W=l.makePointStyleFns(h);l.singlePointStyle(c,Y,h,W,t)}!function(t,e,r,n,a,s,c,h,p,m,v){var w,T=e.xaxis,A=e.yaxis,L=t._fullLayout;function P(e,r,n){return i.ensureSingle(e,\"text\").text(r).attr({class:\"bartext bartext-\"+w,\"text-anchor\":\"middle\",\"data-notex\":1}).call(l.font,n).call(o.convertToTspans,t)}var I=n[0].trace,z=\"h\"===I.orientation,O=function(t,e,r,n,a){var o,s=e[0].trace;o=s.texttemplate?function(t,e,r,n,a){var o=e[0].trace,s=i.castOption(o,r,\"texttemplate\");if(!s)return\"\";var l,c,h,f,p=\"waterfall\"===o.type,d=\"funnel\"===o.type;\"h\"===o.orientation?(l=\"y\",c=a,h=\"x\",f=n):(l=\"x\",c=n,h=\"y\",f=a);function g(t){return u(f,+t,!0).text}var m=e[r],v={};v.label=m.p,v.labelLabel=v[l+\"Label\"]=(y=m.p,u(c,y,!0).text);var y;var x=i.castOption(o,m.i,\"text\");(0===x||x)&&(v.text=x);v.value=m.s,v.valueLabel=v[h+\"Label\"]=g(m.s);var _={};b(_,o,m.i),p&&(v.delta=+m.rawS||m.s,v.deltaLabel=g(v.delta),v.final=m.v,v.finalLabel=g(v.final),v.initial=v.final-v.delta,v.initialLabel=g(v.initial));d&&(v.value=m.s,v.valueLabel=g(v.value),v.percentInitial=m.begR,v.percentInitialLabel=i.formatPercent(m.begR),v.percentPrevious=m.difR,v.percentPreviousLabel=i.formatPercent(m.difR),v.percentTotal=m.sumR,v.percenTotalLabel=i.formatPercent(m.sumR));var w=i.castOption(o,m.i,\"customdata\");w&&(v.customdata=w);return i.texttemplateString(s,v,t._d3locale,_,v,o._meta||{})}(t,e,r,n,a):s.textinfo?function(t,e,r,n){var a=t[0].trace,o=\"h\"===a.orientation,s=\"waterfall\"===a.type,l=\"funnel\"===a.type;function c(t){return u(o?r:n,+t,!0).text}var h,f=a.textinfo,p=t[e],d=f.split(\"+\"),g=[],m=function(t){return-1!==d.indexOf(t)};m(\"label\")&&g.push((v=t[e].p,u(o?n:r,v,!0).text));var v;m(\"text\")&&(0===(h=i.castOption(a,p.i,\"text\"))||h)&&g.push(h);if(s){var y=+p.rawS||p.s,x=p.v,b=x-y;m(\"initial\")&&g.push(c(b)),m(\"delta\")&&g.push(c(y)),m(\"final\")&&g.push(c(x))}if(l){m(\"value\")&&g.push(c(p.s));var _=0;m(\"percent initial\")&&_++,m(\"percent previous\")&&_++,m(\"percent total\")&&_++;var w=_>1;m(\"percent initial\")&&(h=i.formatPercent(p.begR),w&&(h+=\" of initial\"),g.push(h)),m(\"percent previous\")&&(h=i.formatPercent(p.difR),w&&(h+=\" of previous\"),g.push(h)),m(\"percent total\")&&(h=i.formatPercent(p.sumR),w&&(h+=\" of total\"),g.push(h))}return g.join(\"<br>\")}(e,r,n,a):g.getValue(s.text,r);return g.coerceString(y,o)}(L,n,a,T,A);w=function(t,e){var r=g.getValue(t.textposition,e);return g.coerceEnumerated(x,r)}(I,a);var D=\"stack\"===m.mode||\"relative\"===m.mode,R=n[a],F=!D||R._outmost;if(!O||\"none\"===w||(R.isBlank||s===c||h===p)&&(\"auto\"===w||\"inside\"===w))return void r.select(\"text\").remove();var B=L.font,N=d.getBarColor(n[a],I),j=d.getInsideTextFont(I,a,B,N),U=d.getOutsideTextFont(I,a,B),V=r.datum();z?\"log\"===T.type&&V.s0<=0&&(s=T.range[0]<T.range[1]?0:T._length):\"log\"===A.type&&V.s0<=0&&(h=A.range[0]<A.range[1]?A._length:0);var q,H,G,Y,W,Z=Math.abs(c-s)-2*_,X=Math.abs(p-h)-2*_;\"outside\"===w&&(F||R.hasB||(w=\"inside\"));if(\"auto\"===w)if(F){w=\"inside\",W=i.ensureUniformFontSize(t,j),q=P(r,O,W),H=l.bBox(q.node()),G=H.width,Y=H.height;var J=G<=Z&&Y<=X,K=G<=X&&Y<=Z,Q=z?Z>=G*(X/Y):X>=Y*(Z/G);G>0&&Y>0&&(J||K||Q)?w=\"inside\":(w=\"outside\",q.remove(),q=null)}else w=\"inside\";if(!q){W=i.ensureUniformFontSize(t,\"outside\"===w?U:j);var $=(q=P(r,O,W)).attr(\"transform\");if(q.attr(\"transform\",\"\"),H=l.bBox(q.node()),G=H.width,Y=H.height,q.attr(\"transform\",$),G<=0||Y<=0)return void q.remove()}var tt,et,rt=I.textangle;\"outside\"===w?(et=\"both\"===I.constraintext||\"outside\"===I.constraintext,tt=function(t,e,r,n,a,i){var o,s=!!i.isHorizontal,l=!!i.constrained,c=i.angle||0,u=a.width,h=a.height,f=Math.abs(e-t),p=Math.abs(n-r);o=s?p>2*_?_:0:f>2*_?_:0;var d=1;l&&(d=s?Math.min(1,p/h):Math.min(1,f/u));var g=S(c),m=E(a,g),v=(s?m.x:m.y)/2,y=(a.left+a.right)/2,x=(a.top+a.bottom)/2,b=(t+e)/2,w=(r+n)/2,T=0,M=0,A=s?k(e,t):k(r,n);s?(b=e-A*o,T=A*v):(w=n+A*o,M=-A*v);return{textX:y,textY:x,targetX:b,targetY:w,anchorX:T,anchorY:M,scale:d,rotate:g}}(s,c,h,p,H,{isHorizontal:z,constrained:et,angle:rt})):(et=\"both\"===I.constraintext||\"inside\"===I.constraintext,tt=C(s,c,h,p,H,{isHorizontal:z,constrained:et,angle:rt,anchor:I.insidetextanchor}));tt.fontSize=W.size,f(I.type,tt,L),R.transform=tt,M(q,L,m,v).attr(\"transform\",i.getTextTransform(tt))}(t,e,I,r,p,B,N,j,U,m,v),e.layerClipId&&l.hideOutsideRangePoint(c,I.select(\"text\"),w,L,h.xcalendar,h.ycalendar)}));var j=!1===h.cliponaxis;l.setClipUrl(c,j?null:e.layerClipId,t)}));c.getComponentMethod(\"errorbars\",\"plot\")(t,I,e,m)},toMoveInsideBar:C}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../components/fx/helpers\":651,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"./attributes\":891,\"./constants\":893,\"./helpers\":897,\"./style\":905,\"./uniform_text\":907,d3:169,\"fast-isnumeric\":241}],903:[function(t,e,r){\"use strict\";function n(t,e,r,n,a){var i=e.c2p(n?t.s0:t.p0,!0),o=e.c2p(n?t.s1:t.p1,!0),s=r.c2p(n?t.p0:t.s0,!0),l=r.c2p(n?t.p1:t.s1,!0);return a?[(i+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(i+o)/2,l]}e.exports=function(t,e){var r,a=t.cd,i=t.xaxis,o=t.yaxis,s=a[0].trace,l=\"funnel\"===s.type,c=\"h\"===s.orientation,u=[];if(!1===e)for(r=0;r<a.length;r++)a[r].selected=0;else for(r=0;r<a.length;r++){var h=a[r],f=\"ct\"in h?h.ct:n(h,i,o,c,l);e.contains(f,!1,r,t)?(u.push({pointNumber:r,x:i.c2d(h.x),y:o.c2d(h.y)}),h.selected=1):h.selected=0}return u}},{}],904:[function(t,e,r){\"use strict\";e.exports=i;var n=t(\"../../lib\").distinctVals,a=t(\"../../constants/numerical\").BADNUM;function i(t,e){this.traces=t,this.sepNegVal=e.sepNegVal,this.overlapNoMerge=e.overlapNoMerge;for(var r=1/0,i=[],o=0;o<t.length;o++){for(var s=t[o],l=0;l<s.length;l++){var c=s[l];c.p!==a&&i.push(c.p)}s[0]&&s[0].width1&&(r=Math.min(s[0].width1,r))}this.positions=i;var u=n(i,{unitMinDiff:e.unitMinDiff});this.distinctPositions=u.vals,1===u.vals.length&&r!==1/0?this.minDiff=r:this.minDiff=Math.min(u.minDiff,r),this.binWidth=this.minDiff,this.bins={}}i.prototype.put=function(t,e){var r=this.getLabel(t,e),n=this.bins[r]||0;return this.bins[r]=n+e,n},i.prototype.get=function(t,e){var r=this.getLabel(t,e);return this.bins[r]||0},i.prototype.getLabel=function(t,e){return(e<0&&this.sepNegVal?\"v\":\"^\")+(this.overlapNoMerge?t:Math.round(t/this.binWidth))}},{\"../../constants/numerical\":724,\"../../lib\":749}],905:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../components/drawing\"),o=t(\"../../lib\"),s=t(\"../../registry\"),l=t(\"./uniform_text\").resizeText,c=t(\"./attributes\"),u=c.textfont,h=c.insidetextfont,f=c.outsidetextfont,p=t(\"./helpers\");function d(t,e,r){i.pointStyle(t.selectAll(\"path\"),e,r),g(t,e,r)}function g(t,e,r){t.selectAll(\"text\").each((function(t){var a=n.select(this),s=o.ensureUniformFontSize(r,m(a,t,e,r));i.font(a,s)}))}function m(t,e,r,n){var a=n._fullLayout.font,i=r.textfont;if(t.classed(\"bartext-inside\")){var o=_(e,r);i=y(r,e.i,a,o)}else t.classed(\"bartext-outside\")&&(i=x(r,e.i,a));return i}function v(t,e,r){return b(u,t.textfont,e,r)}function y(t,e,r,n){var i=v(t,e,r);return(void 0===t._input.textfont||void 0===t._input.textfont.color||Array.isArray(t.textfont.color)&&void 0===t.textfont.color[e])&&(i={color:a.contrast(n),family:i.family,size:i.size}),b(h,t.insidetextfont,e,i)}function x(t,e,r){var n=v(t,e,r);return b(f,t.outsidetextfont,e,n)}function b(t,e,r,n){e=e||{};var a=p.getValue(e.family,r),i=p.getValue(e.size,r),o=p.getValue(e.color,r);return{family:p.coerceString(t.family,a,n.family),size:p.coerceNumber(t.size,i,n.size),color:p.coerceColor(t.color,o,n.color)}}function _(t,e){return\"waterfall\"===e.type?e[t.dir].marker.color:t.mc||e.marker.color}e.exports={style:function(t){var e=n.select(t).selectAll(\"g.barlayer\").selectAll(\"g.trace\");l(t,e,\"bar\");var r=e.size(),a=t._fullLayout;e.style(\"opacity\",(function(t){return t[0].trace.opacity})).each((function(t){(\"stack\"===a.barmode&&r>1||0===a.bargap&&0===a.bargroupgap&&!t[0].trace.marker.line.width)&&n.select(this).attr(\"shape-rendering\",\"crispEdges\")})),e.selectAll(\"g.points\").each((function(e){d(n.select(this),e[0].trace,t)})),s.getComponentMethod(\"errorbars\",\"style\")(e)},styleTextPoints:g,styleOnSelect:function(t,e,r){var a=e[0].trace;a.selectedpoints?function(t,e,r){i.selectedPointStyle(t.selectAll(\"path\"),e),function(t,e,r){t.each((function(t){var a,s=n.select(this);if(t.selected){a=o.ensureUniformFontSize(r,m(s,t,e,r));var l=e.selected.textfont&&e.selected.textfont.color;l&&(a.color=l),i.font(s,a)}else i.selectedTextStyle(s,e)}))}(t.selectAll(\"text\"),e,r)}(r,a,t):(d(r,a,t),s.getComponentMethod(\"errorbars\",\"style\")(r))},getInsideTextFont:y,getOutsideTextFont:x,getBarColor:_,resizeText:l}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../lib\":749,\"../../registry\":881,\"./attributes\":891,\"./helpers\":897,\"./uniform_text\":907,d3:169}],906:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\");e.exports=function(t,e,r,o,s){r(\"marker.color\",o),a(t,\"marker\")&&i(t,e,s,r,{prefix:\"marker.\",cLetter:\"c\"}),r(\"marker.line.color\",n.defaultLine),a(t,\"marker.line\")&&i(t,e,s,r,{prefix:\"marker.line.\",cLetter:\"c\"}),r(\"marker.line.width\"),r(\"marker.opacity\"),r(\"selected.marker.color\"),r(\"unselected.marker.color\")}},{\"../../components/color\":615,\"../../components/colorscale/defaults\":625,\"../../components/colorscale/helpers\":626}],907:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\");function i(t){return\"_\"+t+\"Text_minsize\"}e.exports={recordMinTextSize:function(t,e,r){if(r.uniformtext.mode){var n=i(t),a=r.uniformtext.minsize,o=e.scale*e.fontSize;e.hide=o<a,r[n]=r[n]||1/0,e.hide||(r[n]=Math.min(r[n],Math.max(o,a)))}},clearMinTextSize:function(t,e){e[i(t)]=void 0},resizeText:function(t,e,r){var i=t._fullLayout,o=i[\"_\"+r+\"Text_minsize\"];if(o){var s,l=\"hide\"===i.uniformtext.mode;switch(r){case\"funnelarea\":case\"pie\":case\"sunburst\":s=\"g.slice\";break;case\"treemap\":s=\"g.slice, g.pathbar\";break;default:s=\"g.points > g.point\"}e.selectAll(s).each((function(t){var e=t.transform;e&&(e.scale=l&&e.hide?0:o/e.fontSize,n.select(this).select(\"text\").attr(\"transform\",a.getTextTransform(e)))}))}}}},{\"../../lib\":749,d3:169}],908:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../lib/extend\").extendFlat,i=t(\"../scatterpolar/attributes\"),o=t(\"../bar/attributes\");e.exports={r:i.r,theta:i.theta,r0:i.r0,dr:i.dr,theta0:i.theta0,dtheta:i.dtheta,thetaunit:i.thetaunit,base:a({},o.base,{}),offset:a({},o.offset,{}),width:a({},o.width,{}),text:a({},o.text,{}),hovertext:a({},o.hovertext,{}),marker:o.marker,hoverinfo:i.hoverinfo,hovertemplate:n(),selected:o.selected,unselected:o.unselected}},{\"../../lib/extend\":739,\"../../plots/template_attributes\":876,\"../bar/attributes\":891,\"../scatterpolar/attributes\":1230}],909:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/helpers\").hasColorscale,a=t(\"../../components/colorscale/calc\"),i=t(\"../bar/arrays_to_calcdata\"),o=t(\"../bar/cross_trace_calc\").setGroupPositions,s=t(\"../scatter/calc_selection\"),l=t(\"../../registry\").traceIs,c=t(\"../../lib\").extendFlat;e.exports={calc:function(t,e){for(var r=t._fullLayout,o=e.subplot,l=r[o].radialaxis,c=r[o].angularaxis,u=l.makeCalcdata(e,\"r\"),h=c.makeCalcdata(e,\"theta\"),f=e._length,p=new Array(f),d=u,g=h,m=0;m<f;m++)p[m]={p:g[m],s:d[m]};function v(t){var r=e[t];void 0!==r&&(e[\"_\"+t]=Array.isArray(r)?c.makeCalcdata(e,t):c.d2c(r,e.thetaunit))}return\"linear\"===c.type&&(v(\"width\"),v(\"offset\")),n(e,\"marker\")&&a(t,e,{vals:e.marker.color,containerStr:\"marker\",cLetter:\"c\"}),n(e,\"marker.line\")&&a(t,e,{vals:e.marker.line.color,containerStr:\"marker.line\",cLetter:\"c\"}),i(p,e),s(p,e),p},crossTraceCalc:function(t,e,r){for(var n=t.calcdata,a=[],i=0;i<n.length;i++){var s=n[i],u=s[0].trace;!0===u.visible&&l(u,\"bar\")&&u.subplot===r&&a.push(s)}var h=c({},e.radialaxis,{_id:\"x\"}),f=e.angularaxis;o(t,f,h,a,{mode:e.barmode,norm:e.barnorm,gap:e.bargap,groupgap:e.bargroupgap})}}},{\"../../components/colorscale/calc\":623,\"../../components/colorscale/helpers\":626,\"../../lib\":749,\"../../registry\":881,\"../bar/arrays_to_calcdata\":890,\"../bar/cross_trace_calc\":894,\"../scatter/calc_selection\":1158}],910:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatterpolar/defaults\").handleRThetaDefaults,i=t(\"../bar/style_defaults\"),o=t(\"./attributes\");e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,o,r,a)}a(t,e,s,l)?(l(\"thetaunit\"),l(\"base\"),l(\"offset\"),l(\"width\"),l(\"text\"),l(\"hovertext\"),l(\"hovertemplate\"),i(t,e,l,r,s),n.coerceSelectionMarkerOpacity(e,l)):e.visible=!1}},{\"../../lib\":749,\"../bar/style_defaults\":906,\"../scatterpolar/defaults\":1232,\"./attributes\":908}],911:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../lib\"),i=t(\"../bar/hover\").getTraceColor,o=a.fillText,s=t(\"../scatterpolar/hover\").makeHoverPointText,l=t(\"../../plots/polar/helpers\").isPtInsidePolygon;e.exports=function(t,e,r){var c=t.cd,u=c[0].trace,h=t.subplot,f=h.radialAxis,p=h.angularAxis,d=h.vangles,g=d?l:a.isPtInsideSector,m=t.maxHoverDistance,v=p._period||2*Math.PI,y=Math.abs(f.g2p(Math.sqrt(e*e+r*r))),x=Math.atan2(r,e);f.range[0]>f.range[1]&&(x+=Math.PI);if(n.getClosest(c,(function(t){return g(y,x,[t.rp0,t.rp1],[t.thetag0,t.thetag1],d)?m+Math.min(1,Math.abs(t.thetag1-t.thetag0)/v)-1+(t.rp1-y)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var b=c[t.index];t.x0=t.x1=b.ct[0],t.y0=t.y1=b.ct[1];var _=a.extendFlat({},b,{r:b.s,theta:b.p});return o(b,u,t),s(_,u,h,t),t.hovertemplate=u.hovertemplate,t.color=i(u,b),t.xLabelVal=t.yLabelVal=void 0,b.s<0&&(t.idealAlign=\"left\"),[t]}}},{\"../../components/fx\":655,\"../../lib\":749,\"../../plots/polar/helpers\":863,\"../bar/hover\":898,\"../scatterpolar/hover\":1234}],912:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"barpolar\",basePlotModule:t(\"../../plots/polar\"),categories:[\"polar\",\"bar\",\"showLegend\"],attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"../scatterpolar/format_labels\"),style:t(\"../bar/style\").style,styleOnSelect:t(\"../bar/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../bar/select\"),meta:{}}},{\"../../plots/polar\":864,\"../bar/select\":903,\"../bar/style\":905,\"../scatter/marker_colorbar\":1174,\"../scatterpolar/format_labels\":1233,\"./attributes\":908,\"./calc\":909,\"./defaults\":910,\"./hover\":911,\"./layout_attributes\":913,\"./layout_defaults\":914,\"./plot\":915}],913:[function(t,e,r){\"use strict\";e.exports={barmode:{valType:\"enumerated\",values:[\"stack\",\"overlay\"],dflt:\"stack\",editType:\"calc\"},bargap:{valType:\"number\",dflt:.1,min:0,max:1,editType:\"calc\"}}},{}],914:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){var i,o={};function s(r,o){return n.coerce(t[i]||{},e[i],a,r,o)}for(var l=0;l<r.length;l++){var c=r[l];\"barpolar\"===c.type&&!0===c.visible&&(o[i=c.subplot]||(s(\"barmode\"),s(\"bargap\"),o[i]=1))}}},{\"../../lib\":749,\"./layout_attributes\":913}],915:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../lib\"),o=t(\"../../components/drawing\"),s=t(\"../../plots/polar/helpers\");e.exports=function(t,e,r){var l=e.xaxis,c=e.yaxis,u=e.radialAxis,h=e.angularAxis,f=function(t){var e=t.cxx,r=t.cyy;if(t.vangles)return function(n,a,o,l){var c,u;i.angleDelta(o,l)>0?(c=o,u=l):(c=l,u=o);var h=[s.findEnclosingVertexAngles(c,t.vangles)[0],(c+u)/2,s.findEnclosingVertexAngles(u,t.vangles)[1]];return s.pathPolygonAnnulus(n,a,c,u,h,e,r)};return function(t,n,a,o){return i.pathAnnulus(t,n,a,o,e,r)}}(e),p=e.layers.frontplot.select(\"g.barlayer\");i.makeTraceGroups(p,r,\"trace bars\").each((function(){var r=n.select(this),s=i.ensureSingle(r,\"g\",\"points\").selectAll(\"g.point\").data(i.identity);s.enter().append(\"g\").style(\"vector-effect\",\"non-scaling-stroke\").style(\"stroke-miterlimit\",2).classed(\"point\",!0),s.exit().remove(),s.each((function(t){var e,r=n.select(this),o=t.rp0=u.c2p(t.s0),s=t.rp1=u.c2p(t.s1),p=t.thetag0=h.c2g(t.p0),d=t.thetag1=h.c2g(t.p1);if(a(o)&&a(s)&&a(p)&&a(d)&&o!==s&&p!==d){var g=u.c2g(t.s1),m=(p+d)/2;t.ct=[l.c2p(g*Math.cos(m)),c.c2p(g*Math.sin(m))],e=f(o,s,p,d)}else e=\"M0,0Z\";i.ensureSingle(r,\"path\").attr(\"d\",e)})),o.setClipUrl(r,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../plots/polar/helpers\":863,d3:169,\"fast-isnumeric\":241}],916:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../bar/attributes\"),i=t(\"../../components/color/attributes\"),o=t(\"../../plots/template_attributes\").hovertemplateAttrs,s=t(\"../../lib/extend\").extendFlat,l=n.marker,c=l.line;e.exports={y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},x0:{valType:\"any\",editType:\"calc+clearAxisTypes\"},y0:{valType:\"any\",editType:\"calc+clearAxisTypes\"},dx:{valType:\"number\",editType:\"calc\"},dy:{valType:\"number\",editType:\"calc\"},xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,name:{valType:\"string\",editType:\"calc+clearAxisTypes\"},q1:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},median:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},q3:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},lowerfence:{valType:\"data_array\",editType:\"calc\"},upperfence:{valType:\"data_array\",editType:\"calc\"},notched:{valType:\"boolean\",editType:\"calc\"},notchwidth:{valType:\"number\",min:0,max:.5,dflt:.25,editType:\"calc\"},notchspan:{valType:\"data_array\",editType:\"calc\"},boxpoints:{valType:\"enumerated\",values:[\"all\",\"outliers\",\"suspectedoutliers\",!1],editType:\"calc\"},jitter:{valType:\"number\",min:0,max:1,editType:\"calc\"},pointpos:{valType:\"number\",min:-2,max:2,editType:\"calc\"},boxmean:{valType:\"enumerated\",values:[!0,\"sd\",!1],editType:\"calc\"},mean:{valType:\"data_array\",editType:\"calc\"},sd:{valType:\"data_array\",editType:\"calc\"},orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],editType:\"calc+clearAxisTypes\"},quartilemethod:{valType:\"enumerated\",values:[\"linear\",\"exclusive\",\"inclusive\"],dflt:\"linear\",editType:\"calc\"},width:{valType:\"number\",min:0,dflt:0,editType:\"calc\"},marker:{outliercolor:{valType:\"color\",dflt:\"rgba(0, 0, 0, 0)\",editType:\"style\"},symbol:s({},l.symbol,{arrayOk:!1,editType:\"plot\"}),opacity:s({},l.opacity,{arrayOk:!1,dflt:1,editType:\"style\"}),size:s({},l.size,{arrayOk:!1,editType:\"calc\"}),color:s({},l.color,{arrayOk:!1,editType:\"style\"}),line:{color:s({},c.color,{arrayOk:!1,dflt:i.defaultLine,editType:\"style\"}),width:s({},c.width,{arrayOk:!1,dflt:0,editType:\"style\"}),outliercolor:{valType:\"color\",editType:\"style\"},outlierwidth:{valType:\"number\",min:0,dflt:1,editType:\"style\"},editType:\"style\"},editType:\"plot\"},line:{color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,dflt:2,editType:\"style\"},editType:\"plot\"},fillcolor:n.fillcolor,whiskerwidth:{valType:\"number\",min:0,max:1,dflt:.5,editType:\"calc\"},offsetgroup:a.offsetgroup,alignmentgroup:a.alignmentgroup,selected:{marker:n.selected.marker,editType:\"style\"},unselected:{marker:n.unselected.marker,editType:\"style\"},text:s({},n.text,{}),hovertext:s({},n.hovertext,{}),hovertemplate:o({}),hoveron:{valType:\"flaglist\",flags:[\"boxes\",\"points\"],dflt:\"boxes+points\",editType:\"style\"}}},{\"../../components/color/attributes\":614,\"../../lib/extend\":739,\"../../plots/template_attributes\":876,\"../bar/attributes\":891,\"../scatter/attributes\":1156}],917:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../plots/cartesian/align_period\"),o=t(\"../../lib\"),s=t(\"../../constants/numerical\").BADNUM,l=o._;e.exports=function(t,e){var r,c,y,x,b,_,w,T=t._fullLayout,k=a.getFromId(t,e.xaxis||\"x\"),M=a.getFromId(t,e.yaxis||\"y\"),A=[],S=\"violin\"===e.type?\"_numViolins\":\"_numBoxes\";\"h\"===e.orientation?(y=k,x=\"x\",b=M,_=\"y\",w=!!e.yperiodalignment):(y=M,x=\"y\",b=k,_=\"x\",w=!!e.xperiodalignment);var E,C,L,P,I,z,O=function(t,e,r,a){var s,l=e+\"0\"in t,c=\"d\"+e in t;if(e in t||l&&c){var u=r.makeCalcdata(t,e);return[i(t,r,e,u),u]}s=l?t[e+\"0\"]:\"name\"in t&&(\"category\"===r.type||n(t.name)&&-1!==[\"linear\",\"log\"].indexOf(r.type)||o.isDateTime(t.name)&&\"date\"===r.type)?t.name:a;for(var h=\"multicategory\"===r.type?r.r2c_just_indices(s):r.d2c(s,0,t[e+\"calendar\"]),f=t._length,p=new Array(f),d=0;d<f;d++)p[d]=h;return[p]}(e,_,b,T[S]),D=O[0],R=O[1],F=o.distinctVals(D),B=F.vals,N=F.minDiff/2,j=\"all\"===(e.boxpoints||e.points)?o.identity:function(t){return t.v<E.lf||t.v>E.uf};if(e._hasPreCompStats){var U=e[x],V=function(t){return y.d2c((e[t]||[])[r])},q=1/0,H=-1/0;for(r=0;r<e._length;r++){var G=D[r];if(n(G)){if((E={}).pos=E[_]=G,w&&R&&(E.orig_p=R[r]),E.q1=V(\"q1\"),E.med=V(\"median\"),E.q3=V(\"q3\"),C=[],U&&o.isArrayOrTypedArray(U[r]))for(c=0;c<U[r].length;c++)(z=y.d2c(U[r][c]))!==s&&(u(I={v:z,i:[r,c]},e,[r,c]),C.push(I));if(E.pts=C.sort(h),P=(L=E[x]=C.map(f)).length,E.med!==s&&E.q1!==s&&E.q3!==s&&E.med>=E.q1&&E.q3>=E.med){var Y=V(\"lowerfence\");E.lf=Y!==s&&Y<=E.q1?Y:p(E,L,P);var W=V(\"upperfence\");E.uf=W!==s&&W>=E.q3?W:d(E,L,P);var Z=V(\"mean\");E.mean=Z!==s?Z:P?o.mean(L,P):(E.q1+E.q3)/2;var X=V(\"sd\");E.sd=Z!==s&&X>=0?X:P?o.stdev(L,P,E.mean):E.q3-E.q1,E.lo=g(E),E.uo=m(E);var J=V(\"notchspan\");J=J!==s&&J>0?J:v(E,P),E.ln=E.med-J,E.un=E.med+J;var K=E.lf,Q=E.uf;e.boxpoints&&L.length&&(K=Math.min(K,L[0]),Q=Math.max(Q,L[P-1])),e.notched&&(K=Math.min(K,E.ln),Q=Math.max(Q,E.un)),E.min=K,E.max=Q}else{var $;o.warn([\"Invalid input - make sure that q1 <= median <= q3\",\"q1 = \"+E.q1,\"median = \"+E.med,\"q3 = \"+E.q3].join(\"\\n\")),$=E.med!==s?E.med:E.q1!==s?E.q3!==s?(E.q1+E.q3)/2:E.q1:E.q3!==s?E.q3:0,E.med=$,E.q1=E.q3=$,E.lf=E.uf=$,E.mean=E.sd=$,E.ln=E.un=$,E.min=E.max=$}q=Math.min(q,E.min),H=Math.max(H,E.max),E.pts2=C.filter(j),A.push(E)}}e._extremes[y._id]=a.findExtremes(y,[q,H],{padded:!0})}else{var tt=y.makeCalcdata(e,x),et=function(t,e){for(var r=t.length,n=new Array(r+1),a=0;a<r;a++)n[a]=t[a]-e;return n[r]=t[r-1]+e,n}(B,N),rt=B.length,nt=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=[];return e}(rt);for(r=0;r<e._length;r++)if(z=tt[r],n(z)){var at=o.findBin(D[r],et);at>=0&&at<rt&&(u(I={v:z,i:r},e,r),nt[at].push(I))}var it=1/0,ot=-1/0,st=e.quartilemethod,lt=\"exclusive\"===st,ct=\"inclusive\"===st;for(r=0;r<rt;r++)if(nt[r].length>0){var ut,ht;if((E={}).pos=E[_]=B[r],C=E.pts=nt[r].sort(h),P=(L=E[x]=C.map(f)).length,E.min=L[0],E.max=L[P-1],E.mean=o.mean(L,P),E.sd=o.stdev(L,P,E.mean),E.med=o.interp(L,.5),P%2&&(lt||ct))lt?(ut=L.slice(0,P/2),ht=L.slice(P/2+1)):ct&&(ut=L.slice(0,P/2+1),ht=L.slice(P/2)),E.q1=o.interp(ut,.5),E.q3=o.interp(ht,.5);else E.q1=o.interp(L,.25),E.q3=o.interp(L,.75);E.lf=p(E,L,P),E.uf=d(E,L,P),E.lo=g(E),E.uo=m(E);var ft=v(E,P);E.ln=E.med-ft,E.un=E.med+ft,it=Math.min(it,E.ln),ot=Math.max(ot,E.un),E.pts2=C.filter(j),A.push(E)}e._extremes[y._id]=a.findExtremes(y,e.notched?tt.concat([it,ot]):tt,{padded:!0})}return function(t,e){if(o.isArrayOrTypedArray(e.selectedpoints))for(var r=0;r<t.length;r++){for(var n=t[r].pts||[],a={},i=0;i<n.length;i++)a[n[i].i]=i;o.tagSelected(n,e,a)}}(A,e),A.length>0?(A[0].t={num:T[S],dPos:N,posLetter:_,valLetter:x,labels:{med:l(t,\"median:\"),min:l(t,\"min:\"),q1:l(t,\"q1:\"),q3:l(t,\"q3:\"),max:l(t,\"max:\"),mean:\"sd\"===e.boxmean?l(t,\"mean \\xb1 \\u03c3:\"):l(t,\"mean:\"),lf:l(t,\"lower fence:\"),uf:l(t,\"upper fence:\")}},T[S]++,A):[{t:{empty:!0}}]};var c={text:\"tx\",hovertext:\"htx\"};function u(t,e,r){for(var n in c)o.isArrayOrTypedArray(e[n])&&(Array.isArray(r)?o.isArrayOrTypedArray(e[n][r[0]])&&(t[c[n]]=e[n][r[0]][r[1]]):t[c[n]]=e[n][r])}function h(t,e){return t.v-e.v}function f(t){return t.v}function p(t,e,r){return 0===r?t.q1:Math.min(t.q1,e[Math.min(o.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,r-1)])}function d(t,e,r){return 0===r?t.q3:Math.max(t.q3,e[Math.max(o.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function g(t){return 4*t.q1-3*t.q3}function m(t){return 4*t.q3-3*t.q1}function v(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"fast-isnumeric\":241}],918:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axis_ids\").getAxisGroup,o=[\"v\",\"h\"];function s(t,e,r,o){var s,l,c,u=e.calcdata,h=e._fullLayout,f=o._id,p=f.charAt(0),d=[],g=0;for(s=0;s<r.length;s++)for(c=u[r[s]],l=0;l<c.length;l++)d.push(o.c2l(c[l].pos,!0)),g+=(c[l].pts2||[]).length;if(d.length){var m=a.distinctVals(d,{unitMinDiff:\"category\"===o.type||\"multicategory\"===o.type}),v=m.minDiff/2;n.minDtick(o,m.minDiff,m.vals[0],!0);var y=h[\"violin\"===t?\"_numViolins\":\"_numBoxes\"],x=\"group\"===h[t+\"mode\"]&&y>1,b=1-h[t+\"gap\"],_=1-h[t+\"groupgap\"];for(s=0;s<r.length;s++){var w,T,k,M,A,S,E=(c=u[r[s]])[0].trace,C=c[0].t,L=E.width,P=E.side;if(L)w=T=M=L/2,k=0;else if(w=v,x){var I=i(h,o._id)+E.orientation,z=(h._alignmentOpts[I]||{})[E.alignmentgroup]||{},O=Object.keys(z.offsetGroups||{}).length,D=O||y;T=w*b*_/D,k=2*w*(((O?E._offsetIndex:C.num)+.5)/D-.5)*b,M=w*b/D}else T=w*b*_,k=0,M=w;C.dPos=w,C.bPos=k,C.bdPos=T,C.wHover=M;var R,F,B,N,j,U,V=k+T,q=Boolean(L);if(\"positive\"===P?(A=w*(L?1:.5),R=V,S=R=k):\"negative\"===P?(A=R=k,S=w*(L?1:.5),F=V):(A=S=w,R=F=V),(E.boxpoints||E.points)&&g>0){var H=E.pointpos,G=E.jitter,Y=E.marker.size/2,W=0;H+G>=0&&((W=V*(H+G))>A?(q=!0,j=Y,B=W):W>R&&(j=Y,B=A)),W<=A&&(B=A);var Z=0;H-G<=0&&((Z=-V*(H-G))>S?(q=!0,U=Y,N=Z):Z>F&&(U=Y,N=S)),Z<=S&&(N=S)}else B=A,N=S;var X=new Array(c.length);for(l=0;l<c.length;l++)X[l]=c[l].pos;E._extremes[f]=n.findExtremes(o,X,{padded:q,vpadminus:N,vpadplus:B,vpadLinearized:!0,ppadminus:{x:U,y:j}[p],ppadplus:{x:j,y:U}[p]})}}}e.exports={crossTraceCalc:function(t,e){for(var r=t.calcdata,n=e.xaxis,a=e.yaxis,i=0;i<o.length;i++){for(var l=o[i],c=\"h\"===l?a:n,u=[],h=0;h<r.length;h++){var f=r[h],p=f[0].t,d=f[0].trace;!0!==d.visible||\"box\"!==d.type&&\"candlestick\"!==d.type||p.empty||(d.orientation||\"v\")!==l||d.xaxis!==n._id||d.yaxis!==a._id||u.push(h)}s(\"box\",t,u,c)}},setPositionOffset:s}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/axis_ids\":801}],919:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"../../components/color\"),o=t(\"../scatter/period_defaults\"),s=t(\"../bar/defaults\").handleGroupingDefaults,l=t(\"../../plots/cartesian/axis_autotype\"),c=t(\"./attributes\");function u(t,e,r,i){function o(t){var e=0;return t&&t.length&&(e+=1,n.isArrayOrTypedArray(t[0])&&t[0].length&&(e+=1)),e}function s(e){return n.validate(t[e],c[e])}var u,h=r(\"y\"),f=r(\"x\");if(\"box\"===e.type){var p=r(\"q1\"),d=r(\"median\"),g=r(\"q3\");e._hasPreCompStats=p&&p.length&&d&&d.length&&g&&g.length,u=Math.min(n.minRowLength(p),n.minRowLength(d),n.minRowLength(g))}var m,v,y=o(h),x=o(f),b=y&&n.minRowLength(h),_=x&&n.minRowLength(f);if(e._hasPreCompStats)switch(String(x)+String(y)){case\"00\":var w=s(\"x0\")||s(\"dx\");m=(s(\"y0\")||s(\"dy\"))&&!w?\"h\":\"v\",v=u;break;case\"10\":m=\"v\",v=Math.min(u,_);break;case\"20\":m=\"h\",v=Math.min(u,f.length);break;case\"01\":m=\"h\",v=Math.min(u,b);break;case\"02\":m=\"v\",v=Math.min(u,h.length);break;case\"12\":m=\"v\",v=Math.min(u,_,h.length);break;case\"21\":m=\"h\",v=Math.min(u,f.length,b);break;case\"11\":v=0;break;case\"22\":var T,k=!1;for(T=0;T<f.length;T++)if(\"category\"===l(f[T])){k=!0;break}if(k)m=\"v\",v=Math.min(u,_,h.length);else{for(T=0;T<h.length;T++)if(\"category\"===l(h[T])){k=!0;break}k?(m=\"h\",v=Math.min(u,f.length,b)):(m=\"v\",v=Math.min(u,_,h.length))}}else y>0?(m=\"v\",v=x>0?Math.min(_,b):Math.min(b)):x>0?(m=\"h\",v=Math.min(_)):v=0;if(v){e._length=v;var M=r(\"orientation\",m);e._hasPreCompStats?\"v\"===M&&0===x?(r(\"x0\",0),r(\"dx\",1)):\"h\"===M&&0===y&&(r(\"y0\",0),r(\"dy\",1)):\"v\"===M&&0===x?r(\"x0\"):\"h\"===M&&0===y&&r(\"y0\"),a.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],i)}else e.visible=!1}function h(t,e,r,a){var i=a.prefix,o=n.coerce2(t,e,c,\"marker.outliercolor\"),s=r(\"marker.line.outliercolor\"),l=\"outliers\";e._hasPreCompStats?l=\"all\":(o||s)&&(l=\"suspectedoutliers\");var u=r(i+\"points\",l);u?(r(\"jitter\",\"all\"===u?.3:0),r(\"pointpos\",\"all\"===u?-1.5:0),r(\"marker.symbol\"),r(\"marker.opacity\"),r(\"marker.size\"),r(\"marker.color\",e.line.color),r(\"marker.line.color\"),r(\"marker.line.width\"),\"suspectedoutliers\"===u&&(r(\"marker.line.outliercolor\",e.marker.color),r(\"marker.line.outlierwidth\")),r(\"selected.marker.color\"),r(\"unselected.marker.color\"),r(\"selected.marker.size\"),r(\"unselected.marker.size\"),r(\"text\"),r(\"hovertext\")):delete e.marker;var h=r(\"hoveron\");\"all\"!==h&&-1===h.indexOf(\"points\")||r(\"hovertemplate\"),n.coerceSelectionMarkerOpacity(e,r)}e.exports={supplyDefaults:function(t,e,r,a){function s(r,a){return n.coerce(t,e,c,r,a)}if(u(t,e,s,a),!1!==e.visible){o(t,e,a,s);var l=e._hasPreCompStats;l&&(s(\"lowerfence\"),s(\"upperfence\")),s(\"line.color\",(t.marker||{}).color||r),s(\"line.width\"),s(\"fillcolor\",i.addOpacity(e.line.color,.5));var f=!1;if(l){var p=s(\"mean\"),d=s(\"sd\");p&&p.length&&(f=!0,d&&d.length&&(f=\"sd\"))}s(\"boxmean\",f),s(\"whiskerwidth\"),s(\"width\"),s(\"quartilemethod\");var g=!1;if(l){var m=s(\"notchspan\");m&&m.length&&(g=!0)}else n.validate(t.notchwidth,c.notchwidth)&&(g=!0);s(\"notched\",g)&&s(\"notchwidth\"),h(t,e,s,{prefix:\"box\"})}},crossTraceDefaults:function(t,e){var r,a;function i(t){return n.coerce(a._input,a,c,t)}for(var o=0;o<t.length;o++){var l=(a=t[o]).type;\"box\"!==l&&\"violin\"!==l||(r=a._input,\"group\"===e[l+\"mode\"]&&s(r,a,e,i))}},handleSampleDefaults:u,handlePointsDefaults:h}},{\"../../components/color\":615,\"../../lib\":749,\"../../plots/cartesian/axis_autotype\":799,\"../../registry\":881,\"../bar/defaults\":895,\"../scatter/period_defaults\":1176,\"./attributes\":916}],920:[function(t,e,r){\"use strict\";e.exports=function(t,e){return e.hoverOnBox&&(t.hoverOnBox=e.hoverOnBox),\"xVal\"in e&&(t.x=e.xVal),\"yVal\"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},{}],921:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib\"),i=t(\"../../components/fx\"),o=t(\"../../components/color\"),s=a.fillText;function l(t,e,r,s){var l,c,u,h,f,p,d,g,m,v,y,x,b,_,w=t.cd,T=t.xa,k=t.ya,M=w[0].trace,A=w[0].t,S=\"violin\"===M.type,E=[],C=A.bdPos,L=A.wHover,P=function(t){return u.c2l(t.pos)+A.bPos-u.c2l(p)};S&&\"both\"!==M.side?(\"positive\"===M.side&&(m=function(t){var e=P(t);return i.inbox(e,e+L,v)},x=C,b=0),\"negative\"===M.side&&(m=function(t){var e=P(t);return i.inbox(e-L,e,v)},x=0,b=C)):(m=function(t){var e=P(t);return i.inbox(e-L,e+L,v)},x=b=C),_=S?function(t){return i.inbox(t.span[0]-f,t.span[1]-f,v)}:function(t){return i.inbox(t.min-f,t.max-f,v)},\"h\"===M.orientation?(f=e,p=r,d=_,g=m,l=\"y\",u=k,c=\"x\",h=T):(f=r,p=e,d=m,g=_,l=\"x\",u=T,c=\"y\",h=k);var I=Math.min(1,C/Math.abs(u.r2c(u.range[1])-u.r2c(u.range[0])));function z(t){return(d(t)+g(t))/2}v=t.maxHoverDistance-I,y=t.maxSpikeDistance-I;var O=i.getDistanceFunction(s,d,g,z);if(i.getClosest(w,O,t),!1===t.index)return[];var D=w[t.index],R=M.line.color,F=(M.marker||{}).color;o.opacity(R)&&M.line.width?t.color=R:o.opacity(F)&&M.boxpoints?t.color=F:t.color=M.fillcolor,t[l+\"0\"]=u.c2p(D.pos+A.bPos-b,!0),t[l+\"1\"]=u.c2p(D.pos+A.bPos+x,!0),t[l+\"LabelVal\"]=void 0!==D.orig_p?D.orig_p:D.pos;var B=l+\"Spike\";t.spikeDistance=z(D)*y/v,t[B]=u.c2p(D.pos,!0);var N={},j=[\"med\",\"q1\",\"q3\",\"min\",\"max\"];(M.boxmean||(M.meanline||{}).visible)&&j.push(\"mean\"),(M.boxpoints||M.points)&&j.push(\"lf\",\"uf\");for(var U=0;U<j.length;U++){var V=j[U];if(V in D&&!(D[V]in N)){N[D[V]]=!0;var q=D[V],H=h.c2p(q,!0),G=a.extendFlat({},t);G.attr=V,G[c+\"0\"]=G[c+\"1\"]=H,G[c+\"LabelVal\"]=q,G[c+\"Label\"]=(A.labels?A.labels[V]+\" \":\"\")+n.hoverLabelText(h,q),G.hoverOnBox=!0,\"mean\"===V&&\"sd\"in D&&\"sd\"===M.boxmean&&(G[c+\"err\"]=D.sd),t.name=\"\",t.spikeDistance=void 0,t[B]=void 0,G.hovertemplate=!1,E.push(G)}}return E}function c(t,e,r){for(var n,o,l,c=t.cd,u=t.xa,h=t.ya,f=c[0].trace,p=u.c2p(e),d=h.c2p(r),g=i.quadrature((function(t){var e=Math.max(3,t.mrc||0);return Math.max(Math.abs(u.c2p(t.x)-p)-e,1-3/e)}),(function(t){var e=Math.max(3,t.mrc||0);return Math.max(Math.abs(h.c2p(t.y)-d)-e,1-3/e)})),m=!1,v=0;v<c.length;v++){o=c[v];for(var y=0;y<(o.pts||[]).length;y++){var x=g(l=o.pts[y]);x<=t.distance&&(t.distance=x,m=[v,y])}}if(!m)return!1;l=(o=c[m[0]]).pts[m[1]];var b=u.c2p(l.x,!0),_=h.c2p(l.y,!0),w=l.mrc||1;n=a.extendFlat({},t,{index:l.i,color:(f.marker||{}).color,name:f.name,x0:b-w,x1:b+w,y0:_-w,y1:_+w,spikeDistance:t.distance,hovertemplate:f.hovertemplate});var T,k=o.orig_p,M=void 0!==k?k:o.pos;return\"h\"===f.orientation?(T=h,n.xLabelVal=l.x,n.yLabelVal=M):(T=u,n.xLabelVal=M,n.yLabelVal=l.y),n[T._id.charAt(0)+\"Spike\"]=T.c2p(o.pos,!0),s(l,f,n),n}e.exports={hoverPoints:function(t,e,r,n){var a,i=t.cd[0].trace.hoveron,o=[];return-1!==i.indexOf(\"boxes\")&&(o=o.concat(l(t,e,r,n))),-1!==i.indexOf(\"points\")&&(a=c(t,e,r)),\"closest\"===n?a?[a]:o:a?(o.push(a),o):o},hoverOnBoxes:l,hoverOnPoints:c}},{\"../../components/color\":615,\"../../components/fx\":655,\"../../lib\":749,\"../../plots/cartesian/axes\":798}],922:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\").supplyLayoutDefaults,calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\").crossTraceCalc,plot:t(\"./plot\").plot,style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\").hoverPoints,eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"box\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"symbols\",\"oriented\",\"box-violin\",\"showLegend\",\"boxLayout\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":811,\"./attributes\":916,\"./calc\":917,\"./cross_trace_calc\":918,\"./defaults\":919,\"./event_data\":920,\"./hover\":921,\"./layout_attributes\":923,\"./layout_defaults\":924,\"./plot\":925,\"./select\":926,\"./style\":927}],923:[function(t,e,r){\"use strict\";e.exports={boxmode:{valType:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"overlay\",editType:\"calc\"},boxgap:{valType:\"number\",min:0,max:1,dflt:.3,editType:\"calc\"},boxgroupgap:{valType:\"number\",min:0,max:1,dflt:.3,editType:\"calc\"}}},{}],924:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"./layout_attributes\");function o(t,e,r,a,i){for(var o=i+\"Layout\",s=!1,l=0;l<r.length;l++){var c=r[l];if(n.traceIs(c,o)){s=!0;break}}s&&(a(i+\"mode\"),a(i+\"gap\"),a(i+\"groupgap\"))}e.exports={supplyLayoutDefaults:function(t,e,r){o(0,0,r,(function(r,n){return a.coerce(t,e,i,r,n)}),\"box\")},_supply:o}},{\"../../lib\":749,\"../../registry\":881,\"./layout_attributes\":923}],925:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\");function o(t,e,r,i){var o,s,l=\"h\"===r.orientation,c=e.val,u=e.pos,h=!!u.rangebreaks,f=i.bPos,p=i.wdPos||0,d=i.bPosPxOffset||0,g=r.whiskerwidth||0,m=r.notched||!1,v=m?1-2*r.notchwidth:1;Array.isArray(i.bdPos)?(o=i.bdPos[0],s=i.bdPos[1]):(o=i.bdPos,s=i.bdPos);var y=t.selectAll(\"path.box\").data(\"violin\"!==r.type||r.box.visible?a.identity:[]);y.enter().append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").attr(\"class\",\"box\"),y.exit().remove(),y.each((function(t){if(t.empty)return\"M0,0Z\";var e=u.c2l(t.pos+f,!0),i=u.l2p(e-o)+d,y=u.l2p(e+s)+d,x=h?(i+y)/2:u.l2p(e)+d,b=r.whiskerwidth,_=h?i*b+(1-b)*x:u.l2p(e-p)+d,w=h?y*b+(1-b)*x:u.l2p(e+p)+d,T=u.l2p(e-o*v)+d,k=u.l2p(e+s*v)+d,M=c.c2p(t.q1,!0),A=c.c2p(t.q3,!0),S=a.constrain(c.c2p(t.med,!0),Math.min(M,A)+1,Math.max(M,A)-1),E=void 0===t.lf||!1===r.boxpoints,C=c.c2p(E?t.min:t.lf,!0),L=c.c2p(E?t.max:t.uf,!0),P=c.c2p(t.ln,!0),I=c.c2p(t.un,!0);l?n.select(this).attr(\"d\",\"M\"+S+\",\"+T+\"V\"+k+\"M\"+M+\",\"+i+\"V\"+y+(m?\"H\"+P+\"L\"+S+\",\"+k+\"L\"+I+\",\"+y:\"\")+\"H\"+A+\"V\"+i+(m?\"H\"+I+\"L\"+S+\",\"+T+\"L\"+P+\",\"+i:\"\")+\"ZM\"+M+\",\"+x+\"H\"+C+\"M\"+A+\",\"+x+\"H\"+L+(0===g?\"\":\"M\"+C+\",\"+_+\"V\"+w+\"M\"+L+\",\"+_+\"V\"+w)):n.select(this).attr(\"d\",\"M\"+T+\",\"+S+\"H\"+k+\"M\"+i+\",\"+M+\"H\"+y+(m?\"V\"+P+\"L\"+k+\",\"+S+\"L\"+y+\",\"+I:\"\")+\"V\"+A+\"H\"+i+(m?\"V\"+I+\"L\"+T+\",\"+S+\"L\"+i+\",\"+P:\"\")+\"ZM\"+x+\",\"+M+\"V\"+C+\"M\"+x+\",\"+A+\"V\"+L+(0===g?\"\":\"M\"+_+\",\"+C+\"H\"+w+\"M\"+_+\",\"+L+\"H\"+w))}))}function s(t,e,r,n){var o=e.x,s=e.y,l=n.bdPos,c=n.bPos,u=r.boxpoints||r.points;a.seedPseudoRandom();var h=t.selectAll(\"g.points\").data(u?function(t){return t.forEach((function(t){t.t=n,t.trace=r})),t}:[]);h.enter().append(\"g\").attr(\"class\",\"points\"),h.exit().remove();var f=h.selectAll(\"path\").data((function(t){var e,n,i=t.pts2,o=Math.max((t.max-t.min)/10,t.q3-t.q1),s=1e-9*o,h=.01*o,f=[],p=0;if(r.jitter){if(0===o)for(p=1,f=new Array(i.length),e=0;e<i.length;e++)f[e]=1;else for(e=0;e<i.length;e++){var d=Math.max(0,e-5),g=i[d].v,m=Math.min(i.length-1,e+5),v=i[m].v;\"all\"!==u&&(i[e].v<t.lf?v=Math.min(v,t.lf):g=Math.max(g,t.uf));var y=Math.sqrt(h*(m-d)/(v-g+s))||0;y=a.constrain(Math.abs(y),0,1),f.push(y),p=Math.max(y,p)}n=2*r.jitter/(p||1)}for(e=0;e<i.length;e++){var x=i[e],b=x.v,_=r.jitter?n*f[e]*(a.pseudoRandom()-.5):0,w=t.pos+c+l*(r.pointpos+_);\"h\"===r.orientation?(x.y=w,x.x=b):(x.x=w,x.y=b),\"suspectedoutliers\"===u&&b<t.uo&&b>t.lo&&(x.so=!0)}return i}));f.enter().append(\"path\").classed(\"point\",!0),f.exit().remove(),f.call(i.translatePoints,o,s)}function l(t,e,r,i){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,h=i.bPos,f=i.bPosPxOffset||0,p=r.boxmean||(r.meanline||{}).visible;Array.isArray(i.bdPos)?(o=i.bdPos[0],s=i.bdPos[1]):(o=i.bdPos,s=i.bdPos);var d=t.selectAll(\"path.mean\").data(\"box\"===r.type&&r.boxmean||\"violin\"===r.type&&r.box.visible&&r.meanline.visible?a.identity:[]);d.enter().append(\"path\").attr(\"class\",\"mean\").style({fill:\"none\",\"vector-effect\":\"non-scaling-stroke\"}),d.exit().remove(),d.each((function(t){var e=c.c2l(t.pos+h,!0),a=c.l2p(e-o)+f,i=c.l2p(e+s)+f,d=u?(a+i)/2:c.l2p(e)+f,g=l.c2p(t.mean,!0),m=l.c2p(t.mean-t.sd,!0),v=l.c2p(t.mean+t.sd,!0);\"h\"===r.orientation?n.select(this).attr(\"d\",\"M\"+g+\",\"+a+\"V\"+i+(\"sd\"===p?\"m0,0L\"+m+\",\"+d+\"L\"+g+\",\"+a+\"L\"+v+\",\"+d+\"Z\":\"\")):n.select(this).attr(\"d\",\"M\"+a+\",\"+g+\"H\"+i+(\"sd\"===p?\"m0,0L\"+d+\",\"+m+\"L\"+a+\",\"+g+\"L\"+d+\",\"+v+\"Z\":\"\"))}))}e.exports={plot:function(t,e,r,i){var c=e.xaxis,u=e.yaxis;a.makeTraceGroups(i,r,\"trace boxes\").each((function(t){var e,r,a=n.select(this),i=t[0],h=i.t,f=i.trace;(h.wdPos=h.bdPos*f.whiskerwidth,!0!==f.visible||h.empty)?a.remove():(\"h\"===f.orientation?(e=u,r=c):(e=c,r=u),o(a,{pos:e,val:r},f,h),s(a,{x:c,y:u},f,h),l(a,{pos:e,val:r},f,h))}))},plotBoxAndWhiskers:o,plotPoints:s,plotBoxMean:l}},{\"../../components/drawing\":637,\"../../lib\":749,d3:169}],926:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,n,a=t.cd,i=t.xaxis,o=t.yaxis,s=[];if(!1===e)for(r=0;r<a.length;r++)for(n=0;n<(a[r].pts||[]).length;n++)a[r].pts[n].selected=0;else for(r=0;r<a.length;r++)for(n=0;n<(a[r].pts||[]).length;n++){var l=a[r].pts[n],c=i.c2p(l.x),u=o.c2p(l.y);e.contains([c,u],null,l.i,t)?(s.push({pointNumber:l.i,x:i.c2d(l.x),y:o.c2d(l.y)}),l.selected=1):l.selected=0}return s}},{}],927:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../components/drawing\");e.exports={style:function(t,e,r){var o=r||n.select(t).selectAll(\"g.trace.boxes\");o.style(\"opacity\",(function(t){return t[0].trace.opacity})),o.each((function(e){var r=n.select(this),o=e[0].trace,s=o.line.width;function l(t,e,r,n){t.style(\"stroke-width\",e+\"px\").call(a.stroke,r).call(a.fill,n)}var c=r.selectAll(\"path.box\");if(\"candlestick\"===o.type)c.each((function(t){if(!t.empty){var e=n.select(this),r=o[t.dir];l(e,r.line.width,r.line.color,r.fillcolor),e.style(\"opacity\",o.selectedpoints&&!t.selected?.3:1)}}));else{l(c,s,o.line.color,o.fillcolor),r.selectAll(\"path.mean\").style({\"stroke-width\":s,\"stroke-dasharray\":2*s+\"px,\"+s+\"px\"}).call(a.stroke,o.line.color);var u=r.selectAll(\"path.point\");i.pointStyle(u,o,t)}}))},styleOnSelect:function(t,e,r){var n=e[0].trace,a=r.selectAll(\"path.point\");n.selectedpoints?i.selectedPointStyle(a,n):i.pointStyle(a,n,t)}}},{\"../../components/color\":615,\"../../components/drawing\":637,d3:169}],928:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").extendFlat,a=t(\"../ohlc/attributes\"),i=t(\"../box/attributes\");function o(t){return{line:{color:n({},i.line.color,{dflt:t}),width:i.line.width,editType:\"style\"},fillcolor:i.fillcolor,editType:\"style\"}}e.exports={xperiod:a.xperiod,xperiod0:a.xperiod0,xperiodalignment:a.xperiodalignment,x:a.x,open:a.open,high:a.high,low:a.low,close:a.close,line:{width:n({},i.line.width,{}),editType:\"style\"},increasing:o(a.increasing.line.color.dflt),decreasing:o(a.decreasing.line.color.dflt),text:a.text,hovertext:a.hovertext,whiskerwidth:n({},i.whiskerwidth,{dflt:0}),hoverlabel:a.hoverlabel}},{\"../../lib\":749,\"../box/attributes\":916,\"../ohlc/attributes\":1102}],929:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../plots/cartesian/align_period\"),o=t(\"../ohlc/calc\").calcCommon;function s(t,e,r,n){return{min:r,q1:Math.min(t,n),med:n,q3:Math.max(t,n),max:e}}e.exports=function(t,e){var r=t._fullLayout,l=a.getFromId(t,e.xaxis),c=a.getFromId(t,e.yaxis),u=l.makeCalcdata(e,\"x\"),h=i(e,l,\"x\",u),f=o(t,e,u,h,c,s);return f.length?(n.extendFlat(f[0].t,{num:r._numBoxes,dPos:n.distinctVals(h).minDiff/2,posLetter:\"x\",valLetter:\"y\"}),r._numBoxes++,f):[{t:{empty:!0}}]}},{\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"../ohlc/calc\":1103}],930:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../ohlc/ohlc_defaults\"),o=t(\"../scatter/period_defaults\"),s=t(\"./attributes\");function l(t,e,r,n){var i=r(n+\".line.color\");r(n+\".line.width\",e.line.width),r(n+\".fillcolor\",a.addOpacity(i,.5))}e.exports=function(t,e,r,a){function c(r,a){return n.coerce(t,e,s,r,a)}i(t,e,c,a)?(o(t,e,a,c,{x:!0}),c(\"line.width\"),l(t,e,c,\"increasing\"),l(t,e,c,\"decreasing\"),c(\"text\"),c(\"hovertext\"),c(\"whiskerwidth\"),a._requestRangeslider[e.xaxis]=!0):e.visible=!1}},{\"../../components/color\":615,\"../../lib\":749,\"../ohlc/ohlc_defaults\":1107,\"../scatter/period_defaults\":1176,\"./attributes\":928}],931:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"candlestick\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"showLegend\",\"candlestick\",\"boxLayout\"],meta:{},attributes:t(\"./attributes\"),layoutAttributes:t(\"../box/layout_attributes\"),supplyLayoutDefaults:t(\"../box/layout_defaults\").supplyLayoutDefaults,crossTraceCalc:t(\"../box/cross_trace_calc\").crossTraceCalc,supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"../box/plot\").plot,layerName:\"boxlayer\",style:t(\"../box/style\").style,hoverPoints:t(\"../ohlc/hover\").hoverPoints,selectPoints:t(\"../ohlc/select\")}},{\"../../plots/cartesian\":811,\"../box/cross_trace_calc\":918,\"../box/layout_attributes\":923,\"../box/layout_defaults\":924,\"../box/plot\":925,\"../box/style\":927,\"../ohlc/hover\":1105,\"../ohlc/select\":1109,\"./attributes\":928,\"./calc\":929,\"./defaults\":930}],932:[function(t,e,r){\"use strict\";var n=t(\"./axis_defaults\"),a=t(\"../../plot_api/plot_template\");e.exports=function(t,e,r,i,o){i(\"a\")||(i(\"da\"),i(\"a0\")),i(\"b\")||(i(\"db\"),i(\"b0\")),function(t,e,r,i){[\"aaxis\",\"baxis\"].forEach((function(o){var s=o.charAt(0),l=t[o]||{},c=a.newContainer(e,o),u={tickfont:\"x\",id:s+\"axis\",letter:s,font:e.font,name:o,data:t[s],calendar:e.calendar,dfltColor:i,bgColor:r.paper_bgcolor,fullLayout:r};n(l,c,u),c._categories=c._categories||[],t[o]||\"-\"===l.type||(t[o]={type:l.type})}))}(t,e,r,o)}},{\"../../plot_api/plot_template\":787,\"./axis_defaults\":937}],933:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t){return function t(e,r){if(!n(e)||r>=10)return null;for(var a=1/0,i=-1/0,o=e.length,s=0;s<o;s++){var l=e[s];if(n(l)){var c=t(l,r+1);c&&(a=Math.min(c[0],a),i=Math.max(c[1],i))}else a=Math.min(l,a),i=Math.max(l,i)}return[a,i]}(t,0)}},{\"../../lib\":749}],934:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"./axis_attributes\"),i=t(\"../../components/color/attributes\"),o=n({editType:\"calc\"});o.family.dflt='\"Open Sans\", verdana, arial, sans-serif',o.size.dflt=12,o.color.dflt=i.defaultLine,e.exports={carpet:{valType:\"string\",editType:\"calc\"},x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},a:{valType:\"data_array\",editType:\"calc\"},a0:{valType:\"number\",dflt:0,editType:\"calc\"},da:{valType:\"number\",dflt:1,editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},b0:{valType:\"number\",dflt:0,editType:\"calc\"},db:{valType:\"number\",dflt:1,editType:\"calc\"},cheaterslope:{valType:\"number\",dflt:1,editType:\"calc\"},aaxis:a,baxis:a,font:o,color:{valType:\"color\",dflt:i.defaultLine,editType:\"plot\"},transforms:void 0}},{\"../../components/color/attributes\":614,\"../../plots/font_attributes\":826,\"./axis_attributes\":936}],935:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r,a){var i,o,s,l,c,u,h,f,p,d,g,m,v,y=n(r)?\"a\":\"b\",x=(\"a\"===y?t.aaxis:t.baxis).smoothing,b=\"a\"===y?t.a2i:t.b2j,_=\"a\"===y?r:a,w=\"a\"===y?a:r,T=\"a\"===y?e.a.length:e.b.length,k=\"a\"===y?e.b.length:e.a.length,M=Math.floor(\"a\"===y?t.b2j(w):t.a2i(w)),A=\"a\"===y?function(e){return t.evalxy([],e,M)}:function(e){return t.evalxy([],M,e)};x&&(s=Math.max(0,Math.min(k-2,M)),l=M-s,o=\"a\"===y?function(e,r){return t.dxydi([],e,s,r,l)}:function(e,r){return t.dxydj([],s,e,l,r)});var S=b(_[0]),E=b(_[1]),C=S<E?1:-1,L=1e-8*(E-S),P=C>0?Math.floor:Math.ceil,I=C>0?Math.ceil:Math.floor,z=C>0?Math.min:Math.max,O=C>0?Math.max:Math.min,D=P(S+L),R=I(E-L),F=[[h=A(S)]];for(i=D;i*C<R*C;i+=C)c=[],g=O(S,i),v=(m=z(E,i+C))-g,u=Math.max(0,Math.min(T-2,Math.floor(.5*(g+m)))),f=A(m),x&&(p=o(u,g-u),d=o(u,m-u),c.push([h[0]+p[0]/3*v,h[1]+p[1]/3*v]),c.push([f[0]-d[0]/3*v,f[1]-d[1]/3*v])),c.push(f),F.push(c),h=f;return F}},{\"../../lib\":749}],936:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../../components/color/attributes\"),i=t(\"../../plots/cartesian/layout_attributes\"),o=t(\"../../plot_api/edit_types\").overrideAll;t(\"../../constants/docs\").FORMAT_LINK,t(\"../../constants/docs\").TIME_FORMAT_LINK;e.exports={color:{valType:\"color\",editType:\"calc\"},smoothing:{valType:\"number\",dflt:1,min:0,max:1.3,editType:\"calc\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"calc\"},font:n({editType:\"calc\"}),offset:{valType:\"number\",dflt:10,editType:\"calc\"},editType:\"calc\"},type:{valType:\"enumerated\",values:[\"-\",\"linear\",\"date\",\"category\"],dflt:\"-\",editType:\"calc\"},autorange:{valType:\"enumerated\",values:[!0,!1,\"reversed\"],dflt:!0,editType:\"calc\"},rangemode:{valType:\"enumerated\",values:[\"normal\",\"tozero\",\"nonnegative\"],dflt:\"normal\",editType:\"calc\"},range:{valType:\"info_array\",editType:\"calc\",items:[{valType:\"any\",editType:\"calc\"},{valType:\"any\",editType:\"calc\"}]},fixedrange:{valType:\"boolean\",dflt:!1,editType:\"calc\"},cheatertype:{valType:\"enumerated\",values:[\"index\",\"value\"],dflt:\"value\",editType:\"calc\"},tickmode:{valType:\"enumerated\",values:[\"linear\",\"array\"],dflt:\"array\",editType:\"calc\"},nticks:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},tickvals:{valType:\"data_array\",editType:\"calc\"},ticktext:{valType:\"data_array\",editType:\"calc\"},showticklabels:{valType:\"enumerated\",values:[\"start\",\"end\",\"both\",\"none\"],dflt:\"start\",editType:\"calc\"},tickfont:n({editType:\"calc\"}),tickangle:{valType:\"angle\",dflt:\"auto\",editType:\"calc\"},tickprefix:{valType:\"string\",dflt:\"\",editType:\"calc\"},showtickprefix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"calc\"},ticksuffix:{valType:\"string\",dflt:\"\",editType:\"calc\"},showticksuffix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"calc\"},showexponent:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"calc\"},exponentformat:{valType:\"enumerated\",values:[\"none\",\"e\",\"E\",\"power\",\"SI\",\"B\"],dflt:\"B\",editType:\"calc\"},minexponent:{valType:\"number\",dflt:3,min:0,editType:\"calc\"},separatethousands:{valType:\"boolean\",dflt:!1,editType:\"calc\"},tickformat:{valType:\"string\",dflt:\"\",editType:\"calc\"},tickformatstops:o(i.tickformatstops,\"calc\",\"from-root\"),categoryorder:{valType:\"enumerated\",values:[\"trace\",\"category ascending\",\"category descending\",\"array\"],dflt:\"trace\",editType:\"calc\"},categoryarray:{valType:\"data_array\",editType:\"calc\"},labelpadding:{valType:\"integer\",dflt:10,editType:\"calc\"},labelprefix:{valType:\"string\",editType:\"calc\"},labelsuffix:{valType:\"string\",dflt:\"\",editType:\"calc\"},showline:{valType:\"boolean\",dflt:!1,editType:\"calc\"},linecolor:{valType:\"color\",dflt:a.defaultLine,editType:\"calc\"},linewidth:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},gridcolor:{valType:\"color\",editType:\"calc\"},gridwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},showgrid:{valType:\"boolean\",dflt:!0,editType:\"calc\"},minorgridcount:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},minorgridwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},minorgridcolor:{valType:\"color\",dflt:a.lightLine,editType:\"calc\"},startline:{valType:\"boolean\",editType:\"calc\"},startlinecolor:{valType:\"color\",editType:\"calc\"},startlinewidth:{valType:\"number\",dflt:1,editType:\"calc\"},endline:{valType:\"boolean\",editType:\"calc\"},endlinewidth:{valType:\"number\",dflt:1,editType:\"calc\"},endlinecolor:{valType:\"color\",editType:\"calc\"},tick0:{valType:\"number\",min:0,dflt:0,editType:\"calc\"},dtick:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},arraytick0:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},arraydtick:{valType:\"integer\",min:1,dflt:1,editType:\"calc\"},_deprecated:{title:{valType:\"string\",editType:\"calc\"},titlefont:n({editType:\"calc\"}),titleoffset:{valType:\"number\",dflt:10,editType:\"calc\"}},editType:\"calc\"}},{\"../../components/color/attributes\":614,\"../../constants/docs\":719,\"../../plot_api/edit_types\":780,\"../../plots/cartesian/layout_attributes\":812,\"../../plots/font_attributes\":826}],937:[function(t,e,r){\"use strict\";var n=t(\"./attributes\"),a=t(\"../../components/color\").addOpacity,i=t(\"../../registry\"),o=t(\"../../lib\"),s=t(\"../../plots/cartesian/tick_value_defaults\"),l=t(\"../../plots/cartesian/tick_label_defaults\"),c=t(\"../../plots/cartesian/category_order_defaults\"),u=t(\"../../plots/cartesian/set_convert\"),h=t(\"../../plots/cartesian/axis_autotype\");e.exports=function(t,e,r){var f=r.letter,p=r.font||{},d=n[f+\"axis\"];function g(r,n){return o.coerce(t,e,d,r,n)}function m(r,n){return o.coerce2(t,e,d,r,n)}r.name&&(e._name=r.name,e._id=r.name);var v=g(\"type\");(\"-\"===v&&(r.data&&function(t,e){if(\"-\"!==t.type)return;var r=t._id.charAt(0),n=t[r+\"calendar\"];t.type=h(e,n)}(e,r.data),\"-\"===e.type?e.type=\"linear\":v=t.type=e.type),g(\"smoothing\"),g(\"cheatertype\"),g(\"showticklabels\"),g(\"labelprefix\",f+\" = \"),g(\"labelsuffix\"),g(\"showtickprefix\"),g(\"showticksuffix\"),g(\"separatethousands\"),g(\"tickformat\"),g(\"exponentformat\"),g(\"minexponent\"),g(\"showexponent\"),g(\"categoryorder\"),g(\"tickmode\"),g(\"tickvals\"),g(\"ticktext\"),g(\"tick0\"),g(\"dtick\"),\"array\"===e.tickmode&&(g(\"arraytick0\"),g(\"arraydtick\")),g(\"labelpadding\"),e._hovertitle=f,\"date\"===v)&&i.getComponentMethod(\"calendars\",\"handleDefaults\")(t,e,\"calendar\",r.calendar);u(e,r.fullLayout),e.c2p=o.identity;var y=g(\"color\",r.dfltColor),x=y===t.color?y:p.color;g(\"title.text\")&&(o.coerceFont(g,\"title.font\",{family:p.family,size:Math.round(1.2*p.size),color:x}),g(\"title.offset\")),g(\"tickangle\"),g(\"autorange\",!e.isValidRange(t.range))&&g(\"rangemode\"),g(\"range\"),e.cleanRange(),g(\"fixedrange\"),s(t,e,g,v),l(t,e,g,v,r),c(t,e,g,{data:r.data,dataAttr:f});var b=m(\"gridcolor\",a(y,.3)),_=m(\"gridwidth\"),w=g(\"showgrid\");w||(delete e.gridcolor,delete e.gridwidth);var T=m(\"startlinecolor\",y),k=m(\"startlinewidth\",_);g(\"startline\",e.showgrid||!!T||!!k)||(delete e.startlinecolor,delete e.startlinewidth);var M=m(\"endlinecolor\",y),A=m(\"endlinewidth\",_);return g(\"endline\",e.showgrid||!!M||!!A)||(delete e.endlinecolor,delete e.endlinewidth),w?(g(\"minorgridcount\"),g(\"minorgridwidth\",_),g(\"minorgridcolor\",a(b,.06)),e.minorgridcount||(delete e.minorgridwidth,delete e.minorgridcolor)):(delete e.gridcolor,delete e.gridWidth),\"none\"===e.showticklabels&&(delete e.tickfont,delete e.tickangle,delete e.showexponent,delete e.exponentformat,delete e.minexponent,delete e.tickformat,delete e.showticksuffix,delete e.showtickprefix),e.showticksuffix||delete e.ticksuffix,e.showtickprefix||delete e.tickprefix,g(\"tickmode\"),e}},{\"../../components/color\":615,\"../../lib\":749,\"../../plots/cartesian/axis_autotype\":799,\"../../plots/cartesian/category_order_defaults\":802,\"../../plots/cartesian/set_convert\":818,\"../../plots/cartesian/tick_label_defaults\":819,\"../../plots/cartesian/tick_value_defaults\":821,\"../../registry\":881,\"./attributes\":934}],938:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib\").isArray1D,i=t(\"./cheater_basis\"),o=t(\"./array_minmax\"),s=t(\"./calc_gridlines\"),l=t(\"./calc_labels\"),c=t(\"./calc_clippath\"),u=t(\"../heatmap/clean_2d_array\"),h=t(\"./smooth_fill_2d_array\"),f=t(\"../heatmap/convert_column_xyz\"),p=t(\"./set_convert\");e.exports=function(t,e){var r=n.getFromId(t,e.xaxis),d=n.getFromId(t,e.yaxis),g=e.aaxis,m=e.baxis,v=e.x,y=e.y,x=[];v&&a(v)&&x.push(\"x\"),y&&a(y)&&x.push(\"y\"),x.length&&f(e,g,m,\"a\",\"b\",x);var b=e._a=e._a||e.a,_=e._b=e._b||e.b;v=e._x||e.x,y=e._y||e.y;var w={};if(e._cheater){var T=\"index\"===g.cheatertype?b.length:b,k=\"index\"===m.cheatertype?_.length:_;v=i(T,k,e.cheaterslope)}e._x=v=u(v),e._y=y=u(y),h(v,b,_),h(y,b,_),p(e),e.setScale();var M=o(v),A=o(y),S=.5*(M[1]-M[0]),E=.5*(M[1]+M[0]),C=.5*(A[1]-A[0]),L=.5*(A[1]+A[0]);return M=[E-1.3*S,E+1.3*S],A=[L-1.3*C,L+1.3*C],e._extremes[r._id]=n.findExtremes(r,M,{padded:!0}),e._extremes[d._id]=n.findExtremes(d,A,{padded:!0}),s(e,\"a\",\"b\"),s(e,\"b\",\"a\"),l(e,g),l(e,m),w.clipsegments=c(e._xctrl,e._yctrl,g,m),w.x=v,w.y=y,w.a=b,w.b=_,[w]}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../heatmap/clean_2d_array\":1037,\"../heatmap/convert_column_xyz\":1039,\"./array_minmax\":933,\"./calc_clippath\":939,\"./calc_gridlines\":940,\"./calc_labels\":941,\"./cheater_basis\":943,\"./set_convert\":956,\"./smooth_fill_2d_array\":957}],939:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var a,i,o,s=[],l=!!r.smoothing,c=!!n.smoothing,u=t[0].length-1,h=t.length-1;for(a=0,i=[],o=[];a<=u;a++)i[a]=t[0][a],o[a]=e[0][a];for(s.push({x:i,y:o,bicubic:l}),a=0,i=[],o=[];a<=h;a++)i[a]=t[a][u],o[a]=e[a][u];for(s.push({x:i,y:o,bicubic:c}),a=u,i=[],o=[];a>=0;a--)i[u-a]=t[h][a],o[u-a]=e[h][a];for(s.push({x:i,y:o,bicubic:l}),a=h,i=[],o=[];a>=0;a--)i[h-a]=t[a][0],o[h-a]=e[a][0];return s.push({x:i,y:o,bicubic:c}),s}},{}],940:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib/extend\").extendFlat;e.exports=function(t,e,r){var i,o,s,l,c,u,h,f,p,d,g,m,v,y,x=t[\"_\"+e],b=t[e+\"axis\"],_=b._gridlines=[],w=b._minorgridlines=[],T=b._boundarylines=[],k=t[\"_\"+r],M=t[r+\"axis\"];\"array\"===b.tickmode&&(b.tickvals=x.slice());var A=t._xctrl,S=t._yctrl,E=A[0].length,C=A.length,L=t._a.length,P=t._b.length;n.prepTicks(b),\"array\"===b.tickmode&&delete b.tickvals;var I=b.smoothing?3:1;function z(n){var a,i,o,s,l,c,u,h,p,d,g,m,v=[],y=[],x={};if(\"b\"===e)for(i=t.b2j(n),o=Math.floor(Math.max(0,Math.min(P-2,i))),s=i-o,x.length=P,x.crossLength=L,x.xy=function(e){return t.evalxy([],e,i)},x.dxy=function(e,r){return t.dxydi([],e,o,r,s)},a=0;a<L;a++)c=Math.min(L-2,a),u=a-c,h=t.evalxy([],a,i),M.smoothing&&a>0&&(p=t.dxydi([],a-1,o,0,s),v.push(l[0]+p[0]/3),y.push(l[1]+p[1]/3),d=t.dxydi([],a-1,o,1,s),v.push(h[0]-d[0]/3),y.push(h[1]-d[1]/3)),v.push(h[0]),y.push(h[1]),l=h;else for(a=t.a2i(n),c=Math.floor(Math.max(0,Math.min(L-2,a))),u=a-c,x.length=L,x.crossLength=P,x.xy=function(e){return t.evalxy([],a,e)},x.dxy=function(e,r){return t.dxydj([],c,e,u,r)},i=0;i<P;i++)o=Math.min(P-2,i),s=i-o,h=t.evalxy([],a,i),M.smoothing&&i>0&&(g=t.dxydj([],c,i-1,u,0),v.push(l[0]+g[0]/3),y.push(l[1]+g[1]/3),m=t.dxydj([],c,i-1,u,1),v.push(h[0]-m[0]/3),y.push(h[1]-m[1]/3)),v.push(h[0]),y.push(h[1]),l=h;return x.axisLetter=e,x.axis=b,x.crossAxis=M,x.value=n,x.constvar=r,x.index=f,x.x=v,x.y=y,x.smoothing=M.smoothing,x}function O(n){var a,i,o,s,l,c=[],u=[],h={};if(h.length=x.length,h.crossLength=k.length,\"b\"===e)for(o=Math.max(0,Math.min(P-2,n)),l=Math.min(1,Math.max(0,n-o)),h.xy=function(e){return t.evalxy([],e,n)},h.dxy=function(e,r){return t.dxydi([],e,o,r,l)},a=0;a<E;a++)c[a]=A[n*I][a],u[a]=S[n*I][a];else for(i=Math.max(0,Math.min(L-2,n)),s=Math.min(1,Math.max(0,n-i)),h.xy=function(e){return t.evalxy([],n,e)},h.dxy=function(e,r){return t.dxydj([],i,e,s,r)},a=0;a<C;a++)c[a]=A[a][n*I],u[a]=S[a][n*I];return h.axisLetter=e,h.axis=b,h.crossAxis=M,h.value=x[n],h.constvar=r,h.index=n,h.x=c,h.y=u,h.smoothing=M.smoothing,h}if(\"array\"===b.tickmode){for(l=5e-15,u=(c=[Math.floor((x.length-1-b.arraytick0)/b.arraydtick*(1+l)),Math.ceil(-b.arraytick0/b.arraydtick/(1+l))].sort((function(t,e){return t-e})))[0]-1,h=c[1]+1,f=u;f<h;f++)(o=b.arraytick0+b.arraydtick*f)<0||o>x.length-1||_.push(a(O(o),{color:b.gridcolor,width:b.gridwidth}));for(f=u;f<h;f++)if(s=b.arraytick0+b.arraydtick*f,g=Math.min(s+b.arraydtick,x.length-1),!(s<0||s>x.length-1||g<0||g>x.length-1))for(m=x[s],v=x[g],i=0;i<b.minorgridcount;i++)(y=g-s)<=0||(d=m+(v-m)*(i+1)/(b.minorgridcount+1)*(b.arraydtick/y))<x[0]||d>x[x.length-1]||w.push(a(z(d),{color:b.minorgridcolor,width:b.minorgridwidth}));b.startline&&T.push(a(O(0),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&T.push(a(O(x.length-1),{color:b.endlinecolor,width:b.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((x[x.length-1]-b.tick0)/b.dtick*(1+l)),Math.ceil((x[0]-b.tick0)/b.dtick/(1+l))].sort((function(t,e){return t-e})))[0],h=c[1],f=u;f<=h;f++)p=b.tick0+b.dtick*f,_.push(a(z(p),{color:b.gridcolor,width:b.gridwidth}));for(f=u-1;f<h+1;f++)for(p=b.tick0+b.dtick*f,i=0;i<b.minorgridcount;i++)(d=p+b.dtick*(i+1)/(b.minorgridcount+1))<x[0]||d>x[x.length-1]||w.push(a(z(d),{color:b.minorgridcolor,width:b.minorgridwidth}));b.startline&&T.push(a(z(x[0]),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&T.push(a(z(x[x.length-1]),{color:b.endlinecolor,width:b.endlinewidth}))}}},{\"../../lib/extend\":739,\"../../plots/cartesian/axes\":798}],941:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib/extend\").extendFlat;e.exports=function(t,e){var r,i,o,s=e._labels=[],l=e._gridlines;for(r=0;r<l.length;r++)o=l[r],-1!==[\"start\",\"both\"].indexOf(e.showticklabels)&&(i=n.tickText(e,o.value),a(i,{prefix:void 0,suffix:void 0,endAnchor:!0,xy:o.xy(0),dxy:o.dxy(0,0),axis:o.axis,length:o.crossAxis.length,font:o.axis.tickfont,isFirst:0===r,isLast:r===l.length-1}),s.push(i)),-1!==[\"end\",\"both\"].indexOf(e.showticklabels)&&(i=n.tickText(e,o.value),a(i,{endAnchor:!1,xy:o.xy(o.crossLength-1),dxy:o.dxy(o.crossLength-2,1),axis:o.axis,length:o.crossAxis.length,font:o.axis.tickfont,isFirst:0===r,isLast:r===l.length-1}),s.push(i))}},{\"../../lib/extend\":739,\"../../plots/cartesian/axes\":798}],942:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var a=t[0]-e[0],i=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(a*a+i*i,.25),c=Math.pow(o*o+s*s,.25),u=(c*c*a-l*l*o)*n,h=(c*c*i-l*l*s)*n,f=c*(l+c)*3,p=l*(l+c)*3;return[[e[0]+(f&&u/f),e[1]+(f&&h/f)],[e[0]-(p&&u/p),e[1]-(p&&h/p)]]}},{}],943:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r){var a,i,o,s,l,c,u=[],h=n(t)?t.length:t,f=n(e)?e.length:e,p=n(t)?t:null,d=n(e)?e:null;p&&(o=(p.length-1)/(p[p.length-1]-p[0])/(h-1)),d&&(s=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var g=1/0,m=-1/0;for(i=0;i<f;i++)for(u[i]=[],l=d?(d[i]-d[0])*s:i/(f-1),a=0;a<h;a++)c=(p?(p[a]-p[0])*o:a/(h-1))-l*r,g=Math.min(c,g),m=Math.max(c,m),u[i][a]=c;var v=1/(m-g),y=-g*v;for(i=0;i<f;i++)for(a=0;a<h;a++)u[i][a]=v*u[i][a]+y;return u}},{\"../../lib\":749}],944:[function(t,e,r){\"use strict\";var n=t(\"./catmull_rom\"),a=t(\"../../lib\").ensureArray;function i(t,e,r){var n=-.5*r[0]+1.5*e[0],a=-.5*r[1]+1.5*e[1];return[(2*n+t[0])/3,(2*a+t[1])/3]}e.exports=function(t,e,r,o,s,l){var c,u,h,f,p,d,g,m,v,y,x=r[0].length,b=r.length,_=s?3*x-2:x,w=l?3*b-2:b;for(t=a(t,w),e=a(e,w),h=0;h<w;h++)t[h]=a(t[h],_),e[h]=a(e[h],_);for(u=0,f=0;u<b;u++,f+=l?3:1)for(p=t[f],d=e[f],g=r[u],m=o[u],c=0,h=0;c<x;c++,h+=s?3:1)p[h]=g[c],d[h]=m[c];if(s)for(u=0,f=0;u<b;u++,f+=l?3:1){for(c=1,h=3;c<x-1;c++,h+=3)v=n([r[u][c-1],o[u][c-1]],[r[u][c],o[u][c]],[r[u][c+1],o[u][c+1]],s),t[f][h-1]=v[0][0],e[f][h-1]=v[0][1],t[f][h+1]=v[1][0],e[f][h+1]=v[1][1];y=i([t[f][0],e[f][0]],[t[f][2],e[f][2]],[t[f][3],e[f][3]]),t[f][1]=y[0],e[f][1]=y[1],y=i([t[f][_-1],e[f][_-1]],[t[f][_-3],e[f][_-3]],[t[f][_-4],e[f][_-4]]),t[f][_-2]=y[0],e[f][_-2]=y[1]}if(l)for(h=0;h<_;h++){for(f=3;f<w-3;f+=3)v=n([t[f-3][h],e[f-3][h]],[t[f][h],e[f][h]],[t[f+3][h],e[f+3][h]],l),t[f-1][h]=v[0][0],e[f-1][h]=v[0][1],t[f+1][h]=v[1][0],e[f+1][h]=v[1][1];y=i([t[0][h],e[0][h]],[t[2][h],e[2][h]],[t[3][h],e[3][h]]),t[1][h]=y[0],e[1][h]=y[1],y=i([t[w-1][h],e[w-1][h]],[t[w-3][h],e[w-3][h]],[t[w-4][h],e[w-4][h]]),t[w-2][h]=y[0],e[w-2][h]=y[1]}if(s&&l)for(f=1;f<w;f+=(f+1)%3==0?2:1){for(h=3;h<_-3;h+=3)v=n([t[f][h-3],e[f][h-3]],[t[f][h],e[f][h]],[t[f][h+3],e[f][h+3]],s),t[f][h-1]=.5*(t[f][h-1]+v[0][0]),e[f][h-1]=.5*(e[f][h-1]+v[0][1]),t[f][h+1]=.5*(t[f][h+1]+v[1][0]),e[f][h+1]=.5*(e[f][h+1]+v[1][1]);y=i([t[f][0],e[f][0]],[t[f][2],e[f][2]],[t[f][3],e[f][3]]),t[f][1]=.5*(t[f][1]+y[0]),e[f][1]=.5*(e[f][1]+y[1]),y=i([t[f][_-1],e[f][_-1]],[t[f][_-3],e[f][_-3]],[t[f][_-4],e[f][_-4]]),t[f][_-2]=.5*(t[f][_-2]+y[0]),e[f][_-2]=.5*(e[f][_-2]+y[1])}return[t,e]}},{\"../../lib\":749,\"./catmull_rom\":942}],945:[function(t,e,r){\"use strict\";e.exports={RELATIVE_CULL_TOLERANCE:1e-6}},{}],946:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){return e&&r?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),r*=3,n*=3;var f=a*a,p=1-a,d=p*p,g=p*a*2,m=-3*d,v=3*(d-g),y=3*(g-f),x=3*f,b=i*i,_=b*i,w=1-i,T=w*w,k=T*w;for(h=0;h<t.length;h++)o=m*(u=t[h])[n][r]+v*u[n][r+1]+y*u[n][r+2]+x*u[n][r+3],s=m*u[n+1][r]+v*u[n+1][r+1]+y*u[n+1][r+2]+x*u[n+1][r+3],l=m*u[n+2][r]+v*u[n+2][r+1]+y*u[n+2][r+2]+x*u[n+2][r+3],c=m*u[n+3][r]+v*u[n+3][r+1]+y*u[n+3][r+2]+x*u[n+3][r+3],e[h]=k*o+3*(T*i*s+w*b*l)+_*c;return e}:e?function(e,r,n,a,i){var o,s,l,c;e||(e=[]),r*=3;var u=a*a,h=1-a,f=h*h,p=h*a*2,d=-3*f,g=3*(f-p),m=3*(p-u),v=3*u,y=1-i;for(l=0;l<t.length;l++)o=d*(c=t[l])[n][r]+g*c[n][r+1]+m*c[n][r+2]+v*c[n][r+3],s=d*c[n+1][r]+g*c[n+1][r+1]+m*c[n+1][r+2]+v*c[n+1][r+3],e[l]=y*o+i*s;return e}:r?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),n*=3;var f=i*i,p=f*i,d=1-i,g=d*d,m=g*d;for(u=0;u<t.length;u++)o=(h=t[u])[n][r+1]-h[n][r],s=h[n+1][r+1]-h[n+1][r],l=h[n+2][r+1]-h[n+2][r],c=h[n+3][r+1]-h[n+3][r],e[u]=m*o+3*(g*i*s+d*f*l)+p*c;return e}:function(e,r,n,a,i){var o,s,l,c;e||(e=[]);var u=1-i;for(l=0;l<t.length;l++)o=(c=t[l])[n][r+1]-c[n][r],s=c[n+1][r+1]-c[n+1][r],e[l]=u*o+i*s;return e}}},{}],947:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){return e&&r?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),r*=3,n*=3;var f=a*a,p=f*a,d=1-a,g=d*d,m=g*d,v=i*i,y=1-i,x=y*y,b=y*i*2,_=-3*x,w=3*(x-b),T=3*(b-v),k=3*v;for(h=0;h<t.length;h++)o=_*(u=t[h])[n][r]+w*u[n+1][r]+T*u[n+2][r]+k*u[n+3][r],s=_*u[n][r+1]+w*u[n+1][r+1]+T*u[n+2][r+1]+k*u[n+3][r+1],l=_*u[n][r+2]+w*u[n+1][r+2]+T*u[n+2][r+2]+k*u[n+3][r+2],c=_*u[n][r+3]+w*u[n+1][r+3]+T*u[n+2][r+3]+k*u[n+3][r+3],e[h]=m*o+3*(g*a*s+d*f*l)+p*c;return e}:e?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),r*=3;var f=i*i,p=f*i,d=1-i,g=d*d,m=g*d;for(u=0;u<t.length;u++)o=(h=t[u])[n+1][r]-h[n][r],s=h[n+1][r+1]-h[n][r+1],l=h[n+1][r+2]-h[n][r+2],c=h[n+1][r+3]-h[n][r+3],e[u]=m*o+3*(g*i*s+d*f*l)+p*c;return e}:r?function(e,r,n,a,i){var o,s,l,c;e||(e=[]),n*=3;var u=1-a,h=i*i,f=1-i,p=f*f,d=f*i*2,g=-3*p,m=3*(p-d),v=3*(d-h),y=3*h;for(l=0;l<t.length;l++)o=g*(c=t[l])[n][r]+m*c[n+1][r]+v*c[n+2][r]+y*c[n+3][r],s=g*c[n][r+1]+m*c[n+1][r+1]+v*c[n+2][r+1]+y*c[n+3][r+1],e[l]=u*o+a*s;return e}:function(e,r,n,a,i){var o,s,l,c;e||(e=[]);var u=1-a;for(l=0;l<t.length;l++)o=(c=t[l])[n+1][r]-c[n][r],s=c[n+1][r+1]-c[n][r+1],e[l]=u*o+a*s;return e}}},{}],948:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){var i=e-2,o=r-2;return n&&a?function(e,r,n){var a,s,l,c,u,h;e||(e=[]);var f=Math.max(0,Math.min(Math.floor(r),i)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),g=Math.max(0,Math.min(1,n-p));f*=3,p*=3;var m=d*d,v=m*d,y=1-d,x=y*y,b=x*y,_=g*g,w=_*g,T=1-g,k=T*T,M=k*T;for(h=0;h<t.length;h++)a=b*(u=t[h])[p][f]+3*(x*d*u[p][f+1]+y*m*u[p][f+2])+v*u[p][f+3],s=b*u[p+1][f]+3*(x*d*u[p+1][f+1]+y*m*u[p+1][f+2])+v*u[p+1][f+3],l=b*u[p+2][f]+3*(x*d*u[p+2][f+1]+y*m*u[p+2][f+2])+v*u[p+2][f+3],c=b*u[p+3][f]+3*(x*d*u[p+3][f+1]+y*m*u[p+3][f+2])+v*u[p+3][f+3],e[h]=M*a+3*(k*g*s+T*_*l)+w*c;return e}:n?function(e,r,n){e||(e=[]);var a,s,l,c,u,h,f=Math.max(0,Math.min(Math.floor(r),i)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),g=Math.max(0,Math.min(1,n-p));f*=3;var m=d*d,v=m*d,y=1-d,x=y*y,b=x*y,_=1-g;for(u=0;u<t.length;u++)a=_*(h=t[u])[p][f]+g*h[p+1][f],s=_*h[p][f+1]+g*h[p+1][f+1],l=_*h[p][f+2]+g*h[p+1][f+1],c=_*h[p][f+3]+g*h[p+1][f+1],e[u]=b*a+3*(x*d*s+y*m*l)+v*c;return e}:a?function(e,r,n){e||(e=[]);var a,s,l,c,u,h,f=Math.max(0,Math.min(Math.floor(r),i)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),g=Math.max(0,Math.min(1,n-p));p*=3;var m=g*g,v=m*g,y=1-g,x=y*y,b=x*y,_=1-d;for(u=0;u<t.length;u++)a=_*(h=t[u])[p][f]+d*h[p][f+1],s=_*h[p+1][f]+d*h[p+1][f+1],l=_*h[p+2][f]+d*h[p+2][f+1],c=_*h[p+3][f]+d*h[p+3][f+1],e[u]=b*a+3*(x*g*s+y*m*l)+v*c;return e}:function(e,r,n){e||(e=[]);var a,s,l,c,u=Math.max(0,Math.min(Math.floor(r),i)),h=Math.max(0,Math.min(Math.floor(n),o)),f=Math.max(0,Math.min(1,r-u)),p=Math.max(0,Math.min(1,n-h)),d=1-p,g=1-f;for(l=0;l<t.length;l++)a=g*(c=t[l])[h][u]+f*c[h][u+1],s=g*c[h+1][u]+f*c[h+1][u+1],e[l]=d*a+p*s;return e}}},{}],949:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./xy_defaults\"),i=t(\"./ab_defaults\"),o=t(\"./attributes\"),s=t(\"../../components/color/attributes\");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,o,r,a)}e._clipPathId=\"clip\"+e.uid+\"carpet\";var u=c(\"color\",s.defaultLine);(n.coerceFont(c,\"font\"),c(\"carpet\"),i(t,e,l,c,u),e.a&&e.b)?(e.a.length<3&&(e.aaxis.smoothing=0),e.b.length<3&&(e.baxis.smoothing=0),a(t,e,c)||(e.visible=!1),e._cheater&&c(\"cheaterslope\")):e.visible=!1}},{\"../../components/color/attributes\":614,\"../../lib\":749,\"./ab_defaults\":932,\"./attributes\":934,\"./xy_defaults\":958}],950:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),plot:t(\"./plot\"),calc:t(\"./calc\"),animatable:!0,isContainer:!0,moduleType:\"trace\",name:\"carpet\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"carpet\",\"carpetAxis\",\"notLegendIsolatable\",\"noMultiCategory\",\"noHover\",\"noSortingByValue\"],meta:{}}},{\"../../plots/cartesian\":811,\"./attributes\":934,\"./calc\":938,\"./defaults\":949,\"./plot\":955}],951:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r,n=t._fullData.length,a=0;a<n;a++){var i=t._fullData[a];if(i.index!==e.index&&(\"carpet\"===i.type&&(r||(r=i),i.carpet===e.carpet)))return i}return r}},{}],952:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){if(0===t.length)return\"\";var n,a=[],i=r?3:1;for(n=0;n<t.length;n+=i)a.push(t[n]+\",\"+e[n]),r&&n<t.length-i&&(a.push(\"C\"),a.push([t[n+1]+\",\"+e[n+1],t[n+2]+\",\"+e[n+2]+\" \"].join(\" \")));return a.join(r?\"\":\"L\")}},{}],953:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r){var a;for(n(t)?t.length>e.length&&(t=t.slice(0,e.length)):t=[],a=0;a<e.length;a++)t[a]=r(e[a]);return t}},{\"../../lib\":749}],954:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a,i){var o=a[0]*t.dpdx(e),s=a[1]*t.dpdy(r),l=1,c=1;if(i){var u=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(i[0]*i[0]+i[1]*i[1]),f=(a[0]*i[0]+a[1]*i[1])/u/h;c=Math.max(0,f)}var p=180*Math.atan2(s,o)/Math.PI;return p<-90?(p+=180,l=-l):p>90&&(p-=180,l=-l),{angle:p,flip:l,p:t.c2p(n,e,r),offsetMultplier:c}}},{}],955:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"./map_1d_array\"),o=t(\"./makepath\"),s=t(\"./orient_text\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../lib\"),u=t(\"../../constants/alignment\");function h(t,e,r,a,s,l){var c=\"const-\"+s+\"-lines\",u=r.selectAll(\".\"+c).data(l);u.enter().append(\"path\").classed(c,!0).style(\"vector-effect\",\"non-scaling-stroke\"),u.each((function(r){var a=r,s=a.x,l=a.y,c=i([],s,t.c2p),u=i([],l,e.c2p),h=\"M\"+o(c,u,a.smoothing);n.select(this).attr(\"d\",h).style(\"stroke-width\",a.width).style(\"stroke\",a.color).style(\"fill\",\"none\")})),u.exit().remove()}function f(t,e,r,i,o,c,u,h){var f=c.selectAll(\"text.\"+h).data(u);f.enter().append(\"text\").classed(h,!0);var p=0,d={};return f.each((function(o,c){var u;if(\"auto\"===o.axis.tickangle)u=s(i,e,r,o.xy,o.dxy);else{var h=(o.axis.tickangle+180)*Math.PI/180;u=s(i,e,r,o.xy,[Math.cos(h),Math.sin(h)])}c||(d={angle:u.angle,flip:u.flip});var f=(o.endAnchor?-1:1)*u.flip,g=n.select(this).attr({\"text-anchor\":f>0?\"start\":\"end\",\"data-notex\":1}).call(a.font,o.font).text(o.text).call(l.convertToTspans,t),m=a.bBox(this);g.attr(\"transform\",\"translate(\"+u.p[0]+\",\"+u.p[1]+\") rotate(\"+u.angle+\")translate(\"+o.axis.labelpadding*f+\",\"+.3*m.height+\")\"),p=Math.max(p,m.width+o.axis.labelpadding)})),f.exit().remove(),d.maxExtent=p,d}e.exports=function(t,e,r,a){var l=e.xaxis,u=e.yaxis,p=t._fullLayout._clips;c.makeTraceGroups(a,r,\"trace\").each((function(e){var r=n.select(this),a=e[0],d=a.trace,m=d.aaxis,v=d.baxis,y=c.ensureSingle(r,\"g\",\"minorlayer\"),x=c.ensureSingle(r,\"g\",\"majorlayer\"),b=c.ensureSingle(r,\"g\",\"boundarylayer\"),_=c.ensureSingle(r,\"g\",\"labellayer\");r.style(\"opacity\",d.opacity),h(l,u,x,m,\"a\",m._gridlines),h(l,u,x,v,\"b\",v._gridlines),h(l,u,y,m,\"a\",m._minorgridlines),h(l,u,y,v,\"b\",v._minorgridlines),h(l,u,b,m,\"a-boundary\",m._boundarylines),h(l,u,b,v,\"b-boundary\",v._boundarylines);var w=f(t,l,u,d,a,_,m._labels,\"a-label\"),T=f(t,l,u,d,a,_,v._labels,\"b-label\");!function(t,e,r,n,a,i,o,l){var u,h,f,p,d=c.aggNums(Math.min,null,r.a),m=c.aggNums(Math.max,null,r.a),v=c.aggNums(Math.min,null,r.b),y=c.aggNums(Math.max,null,r.b);u=.5*(d+m),h=v,f=r.ab2xy(u,h,!0),p=r.dxyda_rough(u,h),void 0===o.angle&&c.extendFlat(o,s(r,a,i,f,r.dxydb_rough(u,h)));g(t,e,r,n,f,p,r.aaxis,a,i,o,\"a-title\"),u=d,h=.5*(v+y),f=r.ab2xy(u,h,!0),p=r.dxydb_rough(u,h),void 0===l.angle&&c.extendFlat(l,s(r,a,i,f,r.dxyda_rough(u,h)));g(t,e,r,n,f,p,r.baxis,a,i,l,\"b-title\")}(t,_,d,a,l,u,w,T),function(t,e,r,n,a){var s,l,u,h,f=r.select(\"#\"+t._clipPathId);f.size()||(f=r.append(\"clipPath\").classed(\"carpetclip\",!0));var p=c.ensureSingle(f,\"path\",\"carpetboundary\"),d=e.clipsegments,g=[];for(h=0;h<d.length;h++)s=d[h],l=i([],s.x,n.c2p),u=i([],s.y,a.c2p),g.push(o(l,u,s.bicubic));var m=\"M\"+g.join(\"L\")+\"Z\";f.attr(\"id\",t._clipPathId),p.attr(\"d\",m)}(d,a,p,l,u)}))};var p=u.LINE_SPACING,d=(1-u.MID_SHIFT)/p+1;function g(t,e,r,i,o,c,u,h,f,g,m){var v=[];u.title.text&&v.push(u.title.text);var y=e.selectAll(\"text.\"+m).data(v),x=g.maxExtent;y.enter().append(\"text\").classed(m,!0),y.each((function(){var e=s(r,h,f,o,c);-1===[\"start\",\"both\"].indexOf(u.showticklabels)&&(x=0);var i=u.title.font.size;x+=i+u.title.offset;var m=(g.angle+(g.flip<0?180:0)-e.angle+450)%360,v=m>90&&m<270,y=n.select(this);y.text(u.title.text).call(l.convertToTspans,t),v&&(x=(-l.lineCount(y)+d)*p*i-x),y.attr(\"transform\",\"translate(\"+e.p[0]+\",\"+e.p[1]+\") rotate(\"+e.angle+\") translate(0,\"+x+\")\").attr(\"text-anchor\",\"middle\").call(a.font,u.title.font)})),y.exit().remove()}},{\"../../components/drawing\":637,\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"./makepath\":952,\"./map_1d_array\":953,\"./orient_text\":954,d3:169}],956:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"../../lib/search\").findBin,i=t(\"./compute_control_points\"),o=t(\"./create_spline_evaluator\"),s=t(\"./create_i_derivative_evaluator\"),l=t(\"./create_j_derivative_evaluator\");e.exports=function(t){var e=t._a,r=t._b,c=e.length,u=r.length,h=t.aaxis,f=t.baxis,p=e[0],d=e[c-1],g=r[0],m=r[u-1],v=e[e.length-1]-e[0],y=r[r.length-1]-r[0],x=v*n.RELATIVE_CULL_TOLERANCE,b=y*n.RELATIVE_CULL_TOLERANCE;p-=x,d+=x,g-=b,m+=b,t.isVisible=function(t,e){return t>p&&t<d&&e>g&&e<m},t.isOccluded=function(t,e){return t<p||t>d||e<g||e>m},t.setScale=function(){var e=t._x,r=t._y,n=i(t._xctrl,t._yctrl,e,r,h.smoothing,f.smoothing);t._xctrl=n[0],t._yctrl=n[1],t.evalxy=o([t._xctrl,t._yctrl],c,u,h.smoothing,f.smoothing),t.dxydi=s([t._xctrl,t._yctrl],h.smoothing,f.smoothing),t.dxydj=l([t._xctrl,t._yctrl],h.smoothing,f.smoothing)},t.i2a=function(t){var r=Math.max(0,Math.floor(t[0]),c-2),n=t[0]-r;return(1-n)*e[r]+n*e[r+1]},t.j2b=function(t){var e=Math.max(0,Math.floor(t[1]),c-2),n=t[1]-e;return(1-n)*r[e]+n*r[e+1]},t.ij2ab=function(e){return[t.i2a(e[0]),t.j2b(e[1])]},t.a2i=function(t){var r=Math.max(0,Math.min(a(t,e),c-2)),n=e[r],i=e[r+1];return Math.max(0,Math.min(c-1,r+(t-n)/(i-n)))},t.b2j=function(t){var e=Math.max(0,Math.min(a(t,r),u-2)),n=r[e],i=r[e+1];return Math.max(0,Math.min(u-1,e+(t-n)/(i-n)))},t.ab2ij=function(e){return[t.a2i(e[0]),t.b2j(e[1])]},t.i2c=function(e,r){return t.evalxy([],e,r)},t.ab2xy=function(n,a,i){if(!i&&(n<e[0]||n>e[c-1]|a<r[0]||a>r[u-1]))return[!1,!1];var o=t.a2i(n),s=t.b2j(a),l=t.evalxy([],o,s);if(i){var h,f,p,d,g=0,m=0,v=[];n<e[0]?(h=0,f=0,g=(n-e[0])/(e[1]-e[0])):n>e[c-1]?(h=c-2,f=1,g=(n-e[c-1])/(e[c-1]-e[c-2])):f=o-(h=Math.max(0,Math.min(c-2,Math.floor(o)))),a<r[0]?(p=0,d=0,m=(a-r[0])/(r[1]-r[0])):a>r[u-1]?(p=u-2,d=1,m=(a-r[u-1])/(r[u-1]-r[u-2])):d=s-(p=Math.max(0,Math.min(u-2,Math.floor(s)))),g&&(t.dxydi(v,h,p,f,d),l[0]+=v[0]*g,l[1]+=v[1]*g),m&&(t.dxydj(v,h,p,f,d),l[0]+=v[0]*m,l[1]+=v[1]*m)}return l},t.c2p=function(t,e,r){return[e.c2p(t[0]),r.c2p(t[1])]},t.p2x=function(t,e,r){return[e.p2c(t[0]),r.p2c(t[1])]},t.dadi=function(t){var r=Math.max(0,Math.min(e.length-2,t));return e[r+1]-e[r]},t.dbdj=function(t){var e=Math.max(0,Math.min(r.length-2,t));return r[e+1]-r[e]},t.dxyda=function(e,r,n,a){var i=t.dxydi(null,e,r,n,a),o=t.dadi(e,n);return[i[0]/o,i[1]/o]},t.dxydb=function(e,r,n,a){var i=t.dxydj(null,e,r,n,a),o=t.dbdj(r,a);return[i[0]/o,i[1]/o]},t.dxyda_rough=function(e,r,n){var a=v*(n||.1),i=t.ab2xy(e+a,r,!0),o=t.ab2xy(e-a,r,!0);return[.5*(i[0]-o[0])/a,.5*(i[1]-o[1])/a]},t.dxydb_rough=function(e,r,n){var a=y*(n||.1),i=t.ab2xy(e,r+a,!0),o=t.ab2xy(e,r-a,!0);return[.5*(i[0]-o[0])/a,.5*(i[1]-o[1])/a]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}},{\"../../lib/search\":768,\"./compute_control_points\":944,\"./constants\":945,\"./create_i_derivative_evaluator\":946,\"./create_j_derivative_evaluator\":947,\"./create_spline_evaluator\":948}],957:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e,r){var a,i,o,s=[],l=[],c=t[0].length,u=t.length;function h(e,r){var n,a=0,i=0;return e>0&&void 0!==(n=t[r][e-1])&&(i++,a+=n),e<c-1&&void 0!==(n=t[r][e+1])&&(i++,a+=n),r>0&&void 0!==(n=t[r-1][e])&&(i++,a+=n),r<u-1&&void 0!==(n=t[r+1][e])&&(i++,a+=n),a/Math.max(1,i)}var f,p,d,g,m,v,y,x,b,_,w,T=0;for(a=0;a<c;a++)for(i=0;i<u;i++)void 0===t[i][a]&&(s.push(a),l.push(i),t[i][a]=h(a,i)),T=Math.max(T,Math.abs(t[i][a]));if(!s.length)return t;var k=0,M=0,A=s.length;do{for(k=0,o=0;o<A;o++){a=s[o],i=l[o];var S,E,C,L,P,I,z=0,O=0;0===a?(C=e[P=Math.min(c-1,2)],L=e[1],S=t[i][P],O+=(E=t[i][1])+(E-S)*(e[0]-L)/(L-C),z++):a===c-1&&(C=e[P=Math.max(0,c-3)],L=e[c-2],S=t[i][P],O+=(E=t[i][c-2])+(E-S)*(e[c-1]-L)/(L-C),z++),(0===a||a===c-1)&&i>0&&i<u-1&&(f=r[i+1]-r[i],O+=((p=r[i]-r[i-1])*t[i+1][a]+f*t[i-1][a])/(p+f),z++),0===i?(C=r[I=Math.min(u-1,2)],L=r[1],S=t[I][a],O+=(E=t[1][a])+(E-S)*(r[0]-L)/(L-C),z++):i===u-1&&(C=r[I=Math.max(0,u-3)],L=r[u-2],S=t[I][a],O+=(E=t[u-2][a])+(E-S)*(r[u-1]-L)/(L-C),z++),(0===i||i===u-1)&&a>0&&a<c-1&&(f=e[a+1]-e[a],O+=((p=e[a]-e[a-1])*t[i][a+1]+f*t[i][a-1])/(p+f),z++),z?O/=z:(d=e[a+1]-e[a],g=e[a]-e[a-1],x=(m=r[i+1]-r[i])*(v=r[i]-r[i-1])*(m+v),O=((y=d*g*(d+g))*(v*t[i+1][a]+m*t[i-1][a])+x*(g*t[i][a+1]+d*t[i][a-1]))/(x*(g+d)+y*(v+m))),k+=(_=(b=O-t[i][a])/T)*_,w=z?0:.85,t[i][a]+=b*(1+w)}k=Math.sqrt(k)}while(M++<100&&k>1e-5);return n.log(\"Smoother converged to\",k,\"after\",M,\"iterations\"),t}},{\"../../lib\":749}],958:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArray1D;e.exports=function(t,e,r){var a=r(\"x\"),i=a&&a.length,o=r(\"y\"),s=o&&o.length;if(!i&&!s)return!1;if(e._cheater=!a,i&&!n(a)||s&&!n(o))e._length=null;else{var l=i?a.length:1/0;s&&(l=Math.min(l,o.length)),e.a&&e.a.length&&(l=Math.min(l,e.a.length)),e.b&&e.b.length&&(l=Math.min(l,e.b.length)),e._length=l}return!0}},{\"../../lib\":749}],959:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../scattergeo/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../components/color/attributes\").defaultLine,l=t(\"../../lib/extend\").extendFlat,c=a.marker.line;e.exports=l({locations:{valType:\"data_array\",editType:\"calc\"},locationmode:a.locationmode,z:{valType:\"data_array\",editType:\"calc\"},geojson:l({},a.geojson,{}),featureidkey:a.featureidkey,text:l({},a.text,{}),hovertext:l({},a.hovertext,{}),marker:{line:{color:l({},c.color,{dflt:s}),width:l({},c.width,{dflt:1}),editType:\"calc\"},opacity:{valType:\"number\",arrayOk:!0,min:0,max:1,dflt:1,editType:\"style\"},editType:\"calc\"},selected:{marker:{opacity:a.selected.marker.opacity,editType:\"plot\"},editType:\"plot\"},unselected:{marker:{opacity:a.unselected.marker.opacity,editType:\"plot\"},editType:\"plot\"},hoverinfo:l({},o.hoverinfo,{editType:\"calc\",flags:[\"location\",\"z\",\"text\",\"name\"]}),hovertemplate:n(),showlegend:l({},o.showlegend,{dflt:!1})},i(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},{\"../../components/color/attributes\":614,\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scattergeo/attributes\":1198}],960:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../constants/numerical\").BADNUM,i=t(\"../../components/colorscale/calc\"),o=t(\"../scatter/arrays_to_calcdata\"),s=t(\"../scatter/calc_selection\");function l(t){return t&&\"string\"==typeof t}e.exports=function(t,e){var r,c=e._length,u=new Array(c);r=e.geojson?function(t){return l(t)||n(t)}:l;for(var h=0;h<c;h++){var f=u[h]={},p=e.locations[h],d=e.z[h];r(p)&&n(d)?(f.loc=p,f.z=d):(f.loc=null,f.z=a),f.index=h}return o(u,e),i(t,e,{vals:e.z,containerStr:\"\",cLetter:\"z\"}),s(u,e),u}},{\"../../components/colorscale/calc\":623,\"../../constants/numerical\":724,\"../scatter/arrays_to_calcdata\":1155,\"../scatter/calc_selection\":1158,\"fast-isnumeric\":241}],961:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/defaults\"),i=t(\"./attributes\");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s(\"locations\"),c=s(\"z\");if(l&&l.length&&n.isArrayOrTypedArray(c)&&c.length){e._length=Math.min(l.length,c.length);var u,h=s(\"geojson\");(\"string\"==typeof h&&\"\"!==h||n.isPlainObject(h))&&(u=\"geojson-id\"),\"geojson-id\"===s(\"locationmode\",u)&&s(\"featureidkey\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"marker.line.width\")&&s(\"marker.line.color\"),s(\"marker.opacity\"),a(t,e,o,s,{prefix:\"\",cLetter:\"z\"}),n.coerceSelectionMarkerOpacity(e,s)}else e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"./attributes\":959}],962:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){t.location=e.location,t.z=e.z;var i=n[a];return i.fIn&&i.fIn.properties&&(t.properties=i.fIn.properties),t.ct=i.ct,t}},{}],963:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"./attributes\"),i=t(\"../../lib\").fillText;e.exports=function(t,e,r){var o,s,l,c,u=t.cd,h=u[0].trace,f=t.subplot;for(s=0;s<u.length;s++)if(c=!1,(o=u[s])._polygons){for(l=0;l<o._polygons.length;l++)o._polygons[l].contains([e,r])&&(c=!c),o._polygons[l].contains([e+360,r])&&(c=!c);if(c)break}if(c&&o)return t.x0=t.x1=t.xa.c2p(o.ct),t.y0=t.y1=t.ya.c2p(o.ct),t.index=o.index,t.location=o.loc,t.z=o.z,t.zLabel=n.tickText(f.mockAxis,f.mockAxis.c2l(o.z),\"hover\").text,t.hovertemplate=o.hovertemplate,function(t,e,r){if(e.hovertemplate)return;var n=r.hi||e.hoverinfo,o=String(r.loc),s=\"all\"===n?a.hoverinfo.flags:n.split(\"+\"),l=-1!==s.indexOf(\"name\"),c=-1!==s.indexOf(\"location\"),u=-1!==s.indexOf(\"z\"),h=-1!==s.indexOf(\"text\"),f=[];!l&&c?t.nameOverride=o:(l&&(t.nameOverride=e.name),c&&f.push(o));u&&f.push(t.zLabel);h&&i(r,e,f);t.extraText=f.join(\"<br>\")}(t,h,o,f.mockAxis),[t]}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"./attributes\":959}],964:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../heatmap/colorbar\"),calc:t(\"./calc\"),calcGeoJSON:t(\"./plot\").calcGeoJSON,plot:t(\"./plot\").plot,style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"choropleth\",basePlotModule:t(\"../../plots/geo\"),categories:[\"geo\",\"noOpacity\",\"showLegend\"],meta:{}}},{\"../../plots/geo\":830,\"../heatmap/colorbar\":1038,\"./attributes\":959,\"./calc\":960,\"./defaults\":961,\"./event_data\":962,\"./hover\":963,\"./plot\":965,\"./select\":966,\"./style\":967}],965:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../lib/geo_location_utils\"),o=t(\"../../lib/topojson_utils\").getTopojsonFeatures,s=t(\"../../plots/cartesian/autorange\").findExtremes,l=t(\"./style\").style;e.exports={calcGeoJSON:function(t,e){for(var r=t[0].trace,n=e[r.geo],a=n._subplot,l=r.locationmode,c=r._length,u=\"geojson-id\"===l?i.extractTraceFeature(t):o(r,a.topojson),h=[],f=[],p=0;p<c;p++){var d=t[p],g=\"geojson-id\"===l?d.fOut:i.locationToFeature(l,d.loc,u);if(g){d.geojson=g,d.ct=g.properties.ct,d._polygons=i.feature2polygons(g);var m=i.computeBbox(g);h.push(m[0],m[2]),f.push(m[1],m[3])}else d.geojson=null}if(\"geojson\"===n.fitbounds&&\"geojson-id\"===l){var v=i.computeBbox(i.getTraceGeojson(r));h=[v[0],v[2]],f=[v[1],v[3]]}var y={padded:!0};r._extremes.lon=s(n.lonaxis._ax,h,y),r._extremes.lat=s(n.lataxis._ax,f,y)},plot:function(t,e,r){var i=e.layers.backplot.select(\".choroplethlayer\");a.makeTraceGroups(i,r,\"trace choropleth\").each((function(e){var r=n.select(this).selectAll(\"path.choroplethlocation\").data(a.identity);r.enter().append(\"path\").classed(\"choroplethlocation\",!0),r.exit().remove(),l(t,e)}))}}},{\"../../lib\":749,\"../../lib/geo_location_utils\":742,\"../../lib/topojson_utils\":776,\"../../plots/cartesian/autorange\":797,\"./style\":967,d3:169}],966:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,n,a,i,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[];if(!1===e)for(r=0;r<s.length;r++)s[r].selected=0;else for(r=0;r<s.length;r++)(a=(n=s[r]).ct)&&(i=l.c2p(a),o=c.c2p(a),e.contains([i,o],null,r,t)?(u.push({pointNumber:r,lon:a[0],lat:a[1]}),n.selected=1):n.selected=0);return u}},{}],967:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../components/drawing\"),o=t(\"../../components/colorscale\");function s(t,e){var r=e[0].trace,s=e[0].node3.selectAll(\".choroplethlocation\"),l=r.marker||{},c=l.line||{},u=o.makeColorScaleFuncFromTrace(r);s.each((function(t){n.select(this).attr(\"fill\",u(t.z)).call(a.stroke,t.mlc||c.color).call(i.dashLine,\"\",t.mlw||c.width||0).style(\"opacity\",l.opacity)})),i.selectedPointStyle(s,r,t)}e.exports={style:function(t,e){e&&s(t,e)},styleOnSelect:function(t,e){var r=e[0].node3,n=e[0].trace;n.selectedpoints?i.selectedPointStyle(r.selectAll(\".choroplethlocation\"),n,t):s(t,e)}}},{\"../../components/color\":615,\"../../components/colorscale\":627,\"../../components/drawing\":637,d3:169}],968:[function(t,e,r){\"use strict\";var n=t(\"../choropleth/attributes\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat;e.exports=s({locations:{valType:\"data_array\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},geojson:{valType:\"any\",editType:\"calc\"},featureidkey:s({},n.featureidkey,{}),below:{valType:\"string\",editType:\"plot\"},text:n.text,hovertext:n.hovertext,marker:{line:{color:s({},n.marker.line.color,{editType:\"plot\"}),width:s({},n.marker.line.width,{editType:\"plot\"}),editType:\"calc\"},opacity:s({},n.marker.opacity,{editType:\"plot\"}),editType:\"calc\"},selected:{marker:{opacity:s({},n.selected.marker.opacity,{editType:\"plot\"}),editType:\"plot\"},editType:\"plot\"},unselected:{marker:{opacity:s({},n.unselected.marker.opacity,{editType:\"plot\"}),editType:\"plot\"},editType:\"plot\"},hoverinfo:n.hoverinfo,hovertemplate:i({},{keys:[\"properties\"]}),showlegend:s({},o.showlegend,{dflt:!1})},a(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../choropleth/attributes\":959}],969:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../components/colorscale\"),o=t(\"../../components/drawing\"),s=t(\"../../lib/geojson_utils\").makeBlank,l=t(\"../../lib/geo_location_utils\");function c(t){var e,r=t[0].trace,n=r._opts;if(r.selectedpoints){for(var i=o.makeSelectedPointStyleFns(r),s=0;s<t.length;s++){var l=t[s];l.fOut&&(l.fOut.properties.mo2=i.selectedOpacityFn(l))}e={type:\"identity\",property:\"mo2\"}}else e=a.isArrayOrTypedArray(r.marker.opacity)?{type:\"identity\",property:\"mo\"}:r.marker.opacity;return a.extendFlat(n.fill.paint,{\"fill-opacity\":e}),a.extendFlat(n.line.paint,{\"line-opacity\":e}),n}e.exports={convert:function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,o={layout:{visibility:\"none\"},paint:{}},u={layout:{visibility:\"none\"},paint:{}},h=e._opts={fill:o,line:u,geojson:s()};if(!r)return h;var f=l.extractTraceFeature(t);if(!f)return h;var p,d,g,m=i.makeColorScaleFuncFromTrace(e),v=e.marker,y=v.line||{};a.isArrayOrTypedArray(v.opacity)&&(p=function(t){var e=t.mo;return n(e)?+a.constrain(e,0,1):0}),a.isArrayOrTypedArray(y.color)&&(d=function(t){return t.mlc}),a.isArrayOrTypedArray(y.width)&&(g=function(t){return t.mlw});for(var x=0;x<t.length;x++){var b=t[x],_=b.fOut;if(_){var w=_.properties;w.fc=m(b.z),p&&(w.mo=p(b)),d&&(w.mlc=d(b)),g&&(w.mlw=g(b)),b.ct=w.ct,b._polygons=l.feature2polygons(_)}}var T=p?{type:\"identity\",property:\"mo\"}:v.opacity;return a.extendFlat(o.paint,{\"fill-color\":{type:\"identity\",property:\"fc\"},\"fill-opacity\":T}),a.extendFlat(u.paint,{\"line-color\":d?{type:\"identity\",property:\"mlc\"}:y.color,\"line-width\":g?{type:\"identity\",property:\"mlw\"}:y.width,\"line-opacity\":T}),o.layout.visibility=\"visible\",u.layout.visibility=\"visible\",h.geojson={type:\"FeatureCollection\",features:f},c(t),h},convertOnSelect:c}},{\"../../components/colorscale\":627,\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/geo_location_utils\":742,\"../../lib/geojson_utils\":743,\"fast-isnumeric\":241}],970:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/defaults\"),i=t(\"./attributes\");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s(\"locations\"),c=s(\"z\"),u=s(\"geojson\");n.isArrayOrTypedArray(l)&&l.length&&n.isArrayOrTypedArray(c)&&c.length&&(\"string\"==typeof u&&\"\"!==u||n.isPlainObject(u))?(s(\"featureidkey\"),e._length=Math.min(l.length,c.length),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"marker.line.width\")&&s(\"marker.line.color\"),s(\"marker.opacity\"),a(t,e,o,s,{prefix:\"\",cLetter:\"z\"}),n.coerceSelectionMarkerOpacity(e,s)):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"./attributes\":968}],971:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../heatmap/colorbar\"),calc:t(\"../choropleth/calc\"),plot:t(\"./plot\"),hoverPoints:t(\"../choropleth/hover\"),eventData:t(\"../choropleth/event_data\"),selectPoints:t(\"../choropleth/select\"),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.updateOnSelect(e)},getBelow:function(t,e){for(var r=e.getMapLayers(),n=r.length-2;n>=0;n--){var a=r[n].id;if(\"string\"==typeof a&&0===a.indexOf(\"water\"))for(var i=n+1;i<r.length;i++)if(\"string\"==typeof(a=r[i].id)&&-1===a.indexOf(\"plotly-\"))return a}},moduleType:\"trace\",name:\"choroplethmapbox\",basePlotModule:t(\"../../plots/mapbox\"),categories:[\"mapbox\",\"gl\",\"noOpacity\",\"showLegend\"],meta:{hr_name:\"choropleth_mapbox\"}}},{\"../../plots/mapbox\":855,\"../choropleth/calc\":960,\"../choropleth/event_data\":962,\"../choropleth/hover\":963,\"../choropleth/select\":966,\"../heatmap/colorbar\":1038,\"./attributes\":968,\"./defaults\":970,\"./plot\":972}],972:[function(t,e,r){\"use strict\";var n=t(\"./convert\").convert,a=t(\"./convert\").convertOnSelect,i=t(\"../../plots/mapbox/constants\").traceLayerPrefix;function o(t,e){this.type=\"choroplethmapbox\",this.subplot=t,this.uid=e,this.sourceId=\"source-\"+e,this.layerList=[[\"fill\",i+e+\"-fill\"],[\"line\",i+e+\"-line\"]],this.below=null}var s=o.prototype;s.update=function(t){this._update(n(t))},s.updateOnSelect=function(t){this._update(a(t))},s._update=function(t){var e=this.subplot,r=this.layerList,n=e.belowLookup[\"trace-\"+this.uid];e.map.getSource(this.sourceId).setData(t.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(t,n),this.below=n);for(var a=0;a<r.length;a++){var i=r[a],o=i[0],s=i[1],l=t[o];e.setOptions(s,\"setLayoutProperty\",l.layout),\"visible\"===l.layout.visibility&&e.setOptions(s,\"setPaintProperty\",l.paint)}},s._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,a=this.sourceId,i=0;i<n.length;i++){var o=n[i],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:a,layout:l.layout,paint:l.paint},e)}},s._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var r=e[0].trace,a=new o(t,r.uid),i=a.sourceId,s=n(e),l=a.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(i,{type:\"geojson\",data:s.geojson}),a._addLayers(s,l),e[0].trace._glTrace=a,a}},{\"../../plots/mapbox/constants\":853,\"./convert\":969}],973:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../mesh3d/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},u:{valType:\"data_array\",editType:\"calc\"},v:{valType:\"data_array\",editType:\"calc\"},w:{valType:\"data_array\",editType:\"calc\"},sizemode:{valType:\"enumerated\",values:[\"scaled\",\"absolute\"],editType:\"calc\",dflt:\"scaled\"},sizeref:{valType:\"number\",editType:\"calc\",min:0},anchor:{valType:\"enumerated\",editType:\"calc\",values:[\"tip\",\"tail\",\"cm\",\"center\"],dflt:\"cm\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertemplate:a({editType:\"calc\"},{keys:[\"norm\"]}),showlegend:s({},o.showlegend,{dflt:!1})};s(l,n(\"\",{colorAttr:\"u/v/w norm\",showScaleDflt:!0,editTypeOverride:\"calc\"}));[\"opacity\",\"lightposition\",\"lighting\"].forEach((function(t){l[t]=i[t]})),l.hoverinfo=s({},o.hoverinfo,{editType:\"calc\",flags:[\"x\",\"y\",\"z\",\"u\",\"v\",\"w\",\"norm\",\"text\",\"name\"],dflt:\"x+y+z+norm+text+name\"}),l.transforms=void 0,e.exports=l},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../mesh3d/attributes\":1097}],974:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\");e.exports=function(t,e){for(var r=e.u,a=e.v,i=e.w,o=Math.min(e.x.length,e.y.length,e.z.length,r.length,a.length,i.length),s=-1/0,l=1/0,c=0;c<o;c++){var u=r[c],h=a[c],f=i[c],p=Math.sqrt(u*u+h*h+f*f);s=Math.max(s,p),l=Math.min(l,p)}e._len=o,e._normMax=s,n(t,e,{vals:[l,s],containerStr:\"\",cLetter:\"c\"})}},{\"../../components/colorscale/calc\":623}],975:[function(t,e,r){\"use strict\";var n=t(\"gl-cone3d\"),a=t(\"gl-cone3d\").createConeMesh,i=t(\"../../lib\").simpleMap,o=t(\"../../lib/gl_format_color\").parseColorScale,s=t(\"../../components/colorscale\").extractOpts,l=t(\"../../plots/gl3d/zip3\");function c(t,e){this.scene=t,this.uid=e,this.mesh=null,this.data=null}var u=c.prototype;u.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index,r=this.data.x[e],n=this.data.y[e],a=this.data.z[e],i=this.data.u[e],o=this.data.v[e],s=this.data.w[e];t.traceCoordinate=[r,n,a,i,o,s,Math.sqrt(i*i+o*o+s*s)];var l=this.data.hovertext||this.data.text;return Array.isArray(l)&&void 0!==l[e]?t.textLabel=l[e]:l&&(t.textLabel=l),!0}};var h={xaxis:0,yaxis:1,zaxis:2},f={tip:1,tail:0,cm:.25,center:.5},p={tip:1,tail:1,cm:.75,center:.5};function d(t,e){var r=t.fullSceneLayout,a=t.dataScale,c={};function u(t,e){var n=r[e],o=a[h[e]];return i(t,(function(t){return n.d2l(t)*o}))}c.vectors=l(u(e.u,\"xaxis\"),u(e.v,\"yaxis\"),u(e.w,\"zaxis\"),e._len),c.positions=l(u(e.x,\"xaxis\"),u(e.y,\"yaxis\"),u(e.z,\"zaxis\"),e._len);var d=s(e);c.colormap=o(e),c.vertexIntensityBounds=[d.min/e._normMax,d.max/e._normMax],c.coneOffset=f[e.anchor],\"scaled\"===e.sizemode?c.coneSize=e.sizeref||.5:c.coneSize=e.sizeref&&e._normMax?e.sizeref/e._normMax:.5;var g=n(c),m=e.lightposition;return g.lightPosition=[m.x,m.y,m.z],g.ambient=e.lighting.ambient,g.diffuse=e.lighting.diffuse,g.specular=e.lighting.specular,g.roughness=e.lighting.roughness,g.fresnel=e.lighting.fresnel,g.opacity=e.opacity,e._pad=p[e.anchor]*g.vectorScale*g.coneScale*e._normMax,g}u.update=function(t){this.data=t;var e=d(this.scene,t);this.mesh.update(e)},u.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,n=d(t,e),i=a(r,n),o=new c(t,e.uid);return o.mesh=i,o.data=e,i._trace=o,t.glplot.add(i),o}},{\"../../components/colorscale\":627,\"../../lib\":749,\"../../lib/gl_format_color\":745,\"../../plots/gl3d/zip3\":851,\"gl-cone3d\":259}],976:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/defaults\"),i=t(\"./attributes\");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s(\"u\"),c=s(\"v\"),u=s(\"w\"),h=s(\"x\"),f=s(\"y\"),p=s(\"z\");l&&l.length&&c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length&&p&&p.length?(s(\"sizeref\"),s(\"sizemode\"),s(\"anchor\"),s(\"lighting.ambient\"),s(\"lighting.diffuse\"),s(\"lighting.specular\"),s(\"lighting.roughness\"),s(\"lighting.fresnel\"),s(\"lightposition.x\"),s(\"lightposition.y\"),s(\"lightposition.z\"),a(t,e,o,s,{prefix:\"\",cLetter:\"c\"}),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),e._length=null):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"./attributes\":973}],977:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"cone\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"showLegend\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:{min:\"cmin\",max:\"cmax\"},calc:t(\"./calc\"),plot:t(\"./convert\"),eventData:function(t,e){return t.norm=e.traceCoordinate[6],t},meta:{}}},{\"../../plots/gl3d\":840,\"./attributes\":973,\"./calc\":974,\"./convert\":975,\"./defaults\":976}],978:[function(t,e,r){\"use strict\";var n=t(\"../heatmap/attributes\"),a=t(\"../scatter/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../components/drawing/attributes\").dash,s=t(\"../../plots/font_attributes\"),l=t(\"../../lib/extend\").extendFlat,c=t(\"../../constants/filter_ops\"),u=c.COMPARISON_OPS2,h=c.INTERVAL_OPS,f=(t(\"../../constants/docs\").FORMAT_LINK,a.line);e.exports=l({z:n.z,x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:a.xperiod0,yperiod0:a.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,text:n.text,hovertext:n.hovertext,transpose:n.transpose,xtype:n.xtype,ytype:n.ytype,zhoverformat:n.zhoverformat,hovertemplate:n.hovertemplate,hoverongaps:n.hoverongaps,connectgaps:l({},n.connectgaps,{}),fillcolor:{valType:\"color\",editType:\"calc\"},autocontour:{valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:{\"contours.start\":void 0,\"contours.end\":void 0,\"contours.size\":void 0}},ncontours:{valType:\"integer\",dflt:15,min:1,editType:\"calc\"},contours:{type:{valType:\"enumerated\",values:[\"levels\",\"constraint\"],dflt:\"levels\",editType:\"calc\"},start:{valType:\"number\",dflt:null,editType:\"plot\",impliedEdits:{\"^autocontour\":!1}},end:{valType:\"number\",dflt:null,editType:\"plot\",impliedEdits:{\"^autocontour\":!1}},size:{valType:\"number\",dflt:null,min:0,editType:\"plot\",impliedEdits:{\"^autocontour\":!1}},coloring:{valType:\"enumerated\",values:[\"fill\",\"heatmap\",\"lines\",\"none\"],dflt:\"fill\",editType:\"calc\"},showlines:{valType:\"boolean\",dflt:!0,editType:\"plot\"},showlabels:{valType:\"boolean\",dflt:!1,editType:\"plot\"},labelfont:s({editType:\"plot\",colorEditType:\"style\"}),labelformat:{valType:\"string\",dflt:\"\",editType:\"plot\"},operation:{valType:\"enumerated\",values:[].concat(u).concat(h),dflt:\"=\",editType:\"calc\"},value:{valType:\"any\",dflt:0,editType:\"calc\"},editType:\"calc\",impliedEdits:{autocontour:!1}},line:{color:l({},f.color,{editType:\"style+colorbars\"}),width:{valType:\"number\",min:0,editType:\"style+colorbars\"},dash:o,smoothing:l({},f.smoothing,{}),editType:\"plot\"}},i(\"\",{cLetter:\"z\",autoColorDflt:!1,editTypeOverride:\"calc\"}))},{\"../../components/colorscale/attributes\":622,\"../../components/drawing/attributes\":636,\"../../constants/docs\":719,\"../../constants/filter_ops\":720,\"../../lib/extend\":739,\"../../plots/font_attributes\":826,\"../heatmap/attributes\":1035,\"../scatter/attributes\":1156}],979:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale\"),a=t(\"../heatmap/calc\"),i=t(\"./set_contours\"),o=t(\"./end_plus\");e.exports=function(t,e){var r=a(t,e),s=r[0].z;i(e,s);var l,c=e.contours,u=n.extractOpts(e);if(\"heatmap\"===c.coloring&&u.auto&&!1===e.autocontour){var h=c.start,f=o(c),p=c.size||1,d=Math.floor((f-h)/p)+1;isFinite(p)||(p=1,d=1);var g=h-p/2;l=[g,g+d*p]}else l=s;return n.calc(t,e,{vals:l,cLetter:\"z\"}),r}},{\"../../components/colorscale\":627,\"../heatmap/calc\":1036,\"./end_plus\":989,\"./set_contours\":997}],980:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,n=t[0],a=n.z;switch(e.type){case\"levels\":var i=Math.min(a[0][0],a[0][1]);for(r=0;r<t.length;r++){var o=t[r];o.prefixBoundary=!o.edgepaths.length&&(i>o.level||o.starts.length&&i===o.level)}break;case\"constraint\":if(n.prefixBoundary=!1,n.edgepaths.length)return;var s=n.x.length,l=n.y.length,c=-1/0,u=1/0;for(r=0;r<l;r++)u=Math.min(u,a[r][0]),u=Math.min(u,a[r][s-1]),c=Math.max(c,a[r][0]),c=Math.max(c,a[r][s-1]);for(r=1;r<s-1;r++)u=Math.min(u,a[0][r]),u=Math.min(u,a[l-1][r]),c=Math.max(c,a[0][r]),c=Math.max(c,a[l-1][r]);var h,f,p=e.value;switch(e._operation){case\">\":p>c&&(n.prefixBoundary=!0);break;case\"<\":(p<u||n.starts.length&&p===u)&&(n.prefixBoundary=!0);break;case\"[]\":h=Math.min(p[0],p[1]),((f=Math.max(p[0],p[1]))<u||h>c||n.starts.length&&f===u)&&(n.prefixBoundary=!0);break;case\"][\":h=Math.min(p[0],p[1]),f=Math.max(p[0],p[1]),h<u&&f>c&&(n.prefixBoundary=!0)}}}},{}],981:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale\"),a=t(\"./make_color_map\"),i=t(\"./end_plus\");e.exports={min:\"zmin\",max:\"zmax\",calc:function(t,e,r){var o=e.contours,s=e.line,l=o.size||1,c=o.coloring,u=a(e,{isColorbar:!0});if(\"heatmap\"===c){var h=n.extractOpts(e);r._fillgradient=h.reversescale?n.flipScale(h.colorscale):h.colorscale,r._zrange=[h.min,h.max]}else\"fill\"===c&&(r._fillcolor=u);r._line={color:\"lines\"===c?u:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},r._levels={start:o.start,end:i(o),size:l}}}},{\"../../components/colorscale\":627,\"./end_plus\":989,\"./make_color_map\":994}],982:[function(t,e,r){\"use strict\";e.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}},{}],983:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./label_defaults\"),i=t(\"../../components/color\"),o=i.addOpacity,s=i.opacity,l=t(\"../../constants/filter_ops\"),c=l.CONSTRAINT_REDUCTION,u=l.COMPARISON_OPS2;e.exports=function(t,e,r,i,l,h){var f,p,d,g=e.contours,m=r(\"contours.operation\");(g._operation=c[m],function(t,e){var r;-1===u.indexOf(e.operation)?(t(\"contours.value\",[0,1]),Array.isArray(e.value)?e.value.length>2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(r=parseFloat(e.value[0]),e.value=[r,r+1]):e.value=[parseFloat(e.value[0]),parseFloat(e.value[1])]:n(e.value)&&(r=parseFloat(e.value),e.value=[r,r+1])):(t(\"contours.value\",0),n(e.value)||(Array.isArray(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(r,g),\"=\"===m?f=g.showlines=!0:(f=r(\"contours.showlines\"),d=r(\"fillcolor\",o((t.line||{}).color||l,.5))),f)&&(p=r(\"line.color\",d&&s(d)?o(e.fillcolor,1):l),r(\"line.width\",2),r(\"line.dash\"));r(\"line.smoothing\"),a(r,i,p,h)}},{\"../../components/color\":615,\"../../constants/filter_ops\":720,\"./label_defaults\":993,\"fast-isnumeric\":241}],984:[function(t,e,r){\"use strict\";var n=t(\"../../constants/filter_ops\"),a=t(\"fast-isnumeric\");function i(t,e){var r,i=Array.isArray(e);function o(t){return a(t)?+t:null}return-1!==n.COMPARISON_OPS2.indexOf(t)?r=o(i?e[0]:e):-1!==n.INTERVAL_OPS.indexOf(t)?r=i?[o(e[0]),o(e[1])]:[o(e),o(e)]:-1!==n.SET_OPS.indexOf(t)&&(r=i?e.map(o):[o(e)]),r}function o(t){return function(e){e=i(t,e);var r=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]);return{start:r,end:n,size:n-r}}}function s(t){return function(e){return{start:e=i(t,e),end:1/0,size:1/0}}}e.exports={\"[]\":o(\"[]\"),\"][\":o(\"][\"),\">\":s(\">\"),\"<\":s(\"<\"),\"=\":s(\"=\")}},{\"../../constants/filter_ops\":720,\"fast-isnumeric\":241}],985:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var a=n(\"contours.start\"),i=n(\"contours.end\"),o=!1===a||!1===i,s=r(\"contours.size\");!(o?e.autocontour=!0:r(\"autocontour\",!1))&&s||r(\"ncontours\")}},{}],986:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");function a(t){return n.extendFlat({},t,{edgepaths:n.extendDeep([],t.edgepaths),paths:n.extendDeep([],t.paths),starts:n.extendDeep([],t.starts)})}e.exports=function(t,e){var r,i,o,s=function(t){return t.reverse()},l=function(t){return t};switch(e){case\"=\":case\"<\":return t;case\">\":for(1!==t.length&&n.warn(\"Contour data invalid for the specified inequality operation.\"),i=t[0],r=0;r<i.edgepaths.length;r++)i.edgepaths[r]=s(i.edgepaths[r]);for(r=0;r<i.paths.length;r++)i.paths[r]=s(i.paths[r]);for(r=0;r<i.starts.length;r++)i.starts[r]=s(i.starts[r]);return t;case\"][\":var c=s;s=l,l=c;case\"[]\":for(2!==t.length&&n.warn(\"Contour data invalid for the specified inequality range operation.\"),i=a(t[0]),o=a(t[1]),r=0;r<i.edgepaths.length;r++)i.edgepaths[r]=s(i.edgepaths[r]);for(r=0;r<i.paths.length;r++)i.paths[r]=s(i.paths[r]);for(r=0;r<i.starts.length;r++)i.starts[r]=s(i.starts[r]);for(;o.edgepaths.length;)i.edgepaths.push(l(o.edgepaths.shift()));for(;o.paths.length;)i.paths.push(l(o.paths.shift()));for(;o.starts.length;)i.starts.push(l(o.starts.shift()));return[i]}}},{\"../../lib\":749}],987:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../heatmap/xyz_defaults\"),i=t(\"../scatter/period_defaults\"),o=t(\"./constraint_defaults\"),s=t(\"./contours_defaults\"),l=t(\"./style_defaults\"),c=t(\"./attributes\");e.exports=function(t,e,r,u){function h(r,a){return n.coerce(t,e,c,r,a)}if(a(t,e,h,u)){i(t,e,u,h),h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\"),h(\"hoverongaps\");var f=\"constraint\"===h(\"contours.type\");h(\"connectgaps\",n.isArray1D(e.z)),f?o(t,e,h,u,r):(s(t,e,h,(function(r){return n.coerce2(t,e,c,r)})),l(t,e,h,u))}else e.visible=!1}},{\"../../lib\":749,\"../heatmap/xyz_defaults\":1049,\"../scatter/period_defaults\":1176,\"./attributes\":978,\"./constraint_defaults\":983,\"./contours_defaults\":985,\"./style_defaults\":999}],988:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./constraint_mapping\"),i=t(\"./end_plus\");e.exports=function(t,e,r){for(var o=\"constraint\"===t.type?a[t._operation](t.value):t,s=o.size,l=[],c=i(o),u=r.trace._carpetTrace,h=u?{xaxis:u.aaxis,yaxis:u.baxis,x:r.a,y:r.b}:{xaxis:e.xaxis,yaxis:e.yaxis,x:r.x,y:r.y},f=o.start;f<c;f+=s)if(l.push(n.extendFlat({level:f,crossings:{},starts:[],edgepaths:[],paths:[],z:r.z,smoothing:r.trace.line.smoothing},h)),l.length>1e3){n.warn(\"Too many contours, clipping at 1000\",t);break}return l}},{\"../../lib\":749,\"./constraint_mapping\":984,\"./end_plus\":989}],989:[function(t,e,r){\"use strict\";e.exports=function(t){return t.end+t.size/1e6}},{}],990:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./constants\");function i(t,e,r,n){return Math.abs(t[0]-e[0])<r&&Math.abs(t[1]-e[1])<n}function o(t,e,r,o,l){var c,u=e.join(\",\"),h=t.crossings[u],f=function(t,e,r){var n=0,i=0;t>20&&e?208===t||1114===t?n=0===r[0]?1:-1:i=0===r[1]?1:-1:-1!==a.BOTTOMSTART.indexOf(t)?i=1:-1!==a.LEFTSTART.indexOf(t)?n=1:-1!==a.TOPSTART.indexOf(t)?i=-1:n=-1;return[n,i]}(h,r,e),p=[s(t,e,[-f[0],-f[1]])],d=t.z.length,g=t.z[0].length,m=e.slice(),v=f.slice();for(c=0;c<1e4;c++){if(h>20?(h=a.CHOOSESADDLE[h][(f[0]||f[1])<0?0:1],t.crossings[u]=a.SADDLEREMAINDER[h]):delete t.crossings[u],!(f=a.NEWDELTA[h])){n.log(\"Found bad marching index:\",h,e,t.level);break}p.push(s(t,e,f)),e[0]+=f[0],e[1]+=f[1],u=e.join(\",\"),i(p[p.length-1],p[p.length-2],o,l)&&p.pop();var y=f[0]&&(e[0]<0||e[0]>g-2)||f[1]&&(e[1]<0||e[1]>d-2);if(e[0]===m[0]&&e[1]===m[1]&&f[0]===v[0]&&f[1]===v[1]||r&&y)break;h=t.crossings[u]}1e4===c&&n.log(\"Infinite loop in contour?\");var x,b,_,w,T,k,M,A,S,E,C,L,P,I,z,O=i(p[0],p[p.length-1],o,l),D=0,R=.2*t.smoothing,F=[],B=0;for(c=1;c<p.length;c++)L=p[c],P=p[c-1],I=void 0,z=void 0,I=L[2]-P[2],z=L[3]-P[3],D+=M=Math.sqrt(I*I+z*z),F.push(M);var N=D/F.length*R;function j(t){return p[t%p.length]}for(c=p.length-2;c>=B;c--)if((x=F[c])<N){for(_=0,b=c-1;b>=B&&x+F[b]<N;b--)x+=F[b];if(O&&c===p.length-2)for(_=0;_<b&&x+F[_]<N;_++)x+=F[_];T=c-b+_+1,k=Math.floor((c+b+_+2)/2),w=O||c!==p.length-2?O||-1!==b?T%2?j(k):[(j(k)[0]+j(k+1)[0])/2,(j(k)[1]+j(k+1)[1])/2]:p[0]:p[p.length-1],p.splice(b+1,c-b+1,w),c=b+1,_&&(B=_),O&&(c===p.length-2?p[_]=p[p.length-1]:0===c&&(p[p.length-1]=p[0]))}for(p.splice(0,B),c=0;c<p.length;c++)p[c].length=2;if(!(p.length<2))if(O)p.pop(),t.paths.push(p);else{r||n.log(\"Unclosed interior contour?\",t.level,m.join(\",\"),p.join(\"L\"));var U=!1;for(A=0;A<t.edgepaths.length;A++)if(E=t.edgepaths[A],!U&&i(E[0],p[p.length-1],o,l)){p.pop(),U=!0;var V=!1;for(S=0;S<t.edgepaths.length;S++)if(i((C=t.edgepaths[S])[C.length-1],p[0],o,l)){V=!0,p.shift(),t.edgepaths.splice(A,1),S===A?t.paths.push(p.concat(C)):(S>A&&S--,t.edgepaths[S]=C.concat(p,E));break}V||(t.edgepaths[A]=p.concat(E))}for(A=0;A<t.edgepaths.length&&!U;A++)i((E=t.edgepaths[A])[E.length-1],p[0],o,l)&&(p.shift(),t.edgepaths[A]=E.concat(p),U=!0);U||t.edgepaths.push(p)}}function s(t,e,r){var n=e[0]+Math.max(r[0],0),a=e[1]+Math.max(r[1],0),i=t.z[a][n],o=t.xaxis,s=t.yaxis;if(r[1]){var l=(t.level-i)/(t.z[a][n+1]-i);return[o.c2p((1-l)*t.x[n]+l*t.x[n+1],!0),s.c2p(t.y[a],!0),n+l,a]}var c=(t.level-i)/(t.z[a+1][n]-i);return[o.c2p(t.x[n],!0),s.c2p((1-c)*t.y[a]+c*t.y[a+1],!0),n,a+c]}e.exports=function(t,e,r){var a,i,s,l;for(e=e||.01,r=r||.01,i=0;i<t.length;i++){for(s=t[i],l=0;l<s.starts.length;l++)o(s,s.starts[l],\"edge\",e,r);for(a=0;Object.keys(s.crossings).length&&a<1e4;)a++,o(s,Object.keys(s.crossings)[0].split(\",\").map(Number),void 0,e,r);1e4===a&&n.log(\"Infinite loop in contour?\")}}},{\"../../lib\":749,\"./constants\":982}],991:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../heatmap/hover\");e.exports=function(t,e,r,i,o){var s=a(t,e,r,i,o,!0);return s&&s.forEach((function(t){var e=t.trace;\"constraint\"===e.contours.type&&(e.fillcolor&&n.opacity(e.fillcolor)?t.color=n.addOpacity(e.fillcolor,1):e.contours.showlines&&n.opacity(e.line.color)&&(t.color=n.addOpacity(e.line.color,1)))})),s}},{\"../../components/color\":615,\"../heatmap/hover\":1042}],992:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\").plot,style:t(\"./style\"),colorbar:t(\"./colorbar\"),hoverPoints:t(\"./hover\"),moduleType:\"trace\",name:\"contour\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"2dMap\",\"contour\",\"showLegend\"],meta:{}}},{\"../../plots/cartesian\":811,\"./attributes\":978,\"./calc\":979,\"./colorbar\":981,\"./defaults\":987,\"./hover\":991,\"./plot\":996,\"./style\":998}],993:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e,r,a){if(a||(a={}),t(\"contours.showlabels\")){var i=e.font;n.coerceFont(t,\"contours.labelfont\",{family:i.family,size:i.size,color:r}),t(\"contours.labelformat\")}!1!==a.hasHover&&t(\"zhoverformat\")}},{\"../../lib\":749}],994:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/colorscale\"),i=t(\"./end_plus\");e.exports=function(t){var e=t.contours,r=e.start,o=i(e),s=e.size||1,l=Math.floor((o-r)/s)+1,c=\"lines\"===e.coloring?0:1,u=a.extractOpts(t);isFinite(s)||(s=1,l=1);var h,f,p=u.reversescale?a.flipScale(u.colorscale):u.colorscale,d=p.length,g=new Array(d),m=new Array(d);if(\"heatmap\"===e.coloring){var v=u.min,y=u.max;for(f=0;f<d;f++)h=p[f],g[f]=h[0]*(y-v)+v,m[f]=h[1];var x=n.extent([v,y,e.start,e.start+s*(l-1)]),b=x[v<y?0:1],_=x[v<y?1:0];b!==v&&(g.splice(0,0,b),m.splice(0,0,m[0])),_!==y&&(g.push(_),m.push(m[m.length-1]))}else for(f=0;f<d;f++)h=p[f],g[f]=(h[0]*(l+c-1)-c/2)*s+r,m[f]=h[1];return a.makeColorScaleFunc({domain:g,range:m},{noNumericCheck:!0})}},{\"../../components/colorscale\":627,\"./end_plus\":989,d3:169}],995:[function(t,e,r){\"use strict\";var n=t(\"./constants\");function a(t,e){var r=(e[0][0]>t?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);return 5===r||10===r?t>(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4?5===r?713:1114:5===r?104:208:15===r?0:r}e.exports=function(t){var e,r,i,o,s,l,c,u,h,f=t[0].z,p=f.length,d=f[0].length,g=2===p||2===d;for(r=0;r<p-1;r++)for(o=[],0===r&&(o=o.concat(n.BOTTOMSTART)),r===p-2&&(o=o.concat(n.TOPSTART)),e=0;e<d-1;e++)for(i=o.slice(),0===e&&(i=i.concat(n.LEFTSTART)),e===d-2&&(i=i.concat(n.RIGHTSTART)),s=e+\",\"+r,l=[[f[r][e],f[r][e+1]],[f[r+1][e],f[r+1][e+1]]],h=0;h<t.length;h++)(c=a((u=t[h]).level,l))&&(u.crossings[s]=c,-1!==i.indexOf(c)&&(u.starts.push([e,r]),g&&-1!==i.indexOf(c,i.indexOf(c)+1)&&u.starts.push([e,r])))}},{\"./constants\":982}],996:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../components/colorscale\"),s=t(\"../../lib/svg_text_utils\"),l=t(\"../../plots/cartesian/axes\"),c=t(\"../../plots/cartesian/set_convert\"),u=t(\"../heatmap/plot\"),h=t(\"./make_crossings\"),f=t(\"./find_all_paths\"),p=t(\"./empty_pathinfo\"),d=t(\"./convert_to_constraints\"),g=t(\"./close_boundaries\"),m=t(\"./constants\"),v=m.LABELOPTIMIZER;function y(t,e){var r,n,o,s,l,c,u,h=\"\",f=0,p=t.edgepaths.map((function(t,e){return e})),d=!0;function g(t){return Math.abs(t[1]-e[2][1])<.01}function m(t){return Math.abs(t[0]-e[0][0])<.01}function v(t){return Math.abs(t[0]-e[2][0])<.01}for(;p.length;){for(c=i.smoothopen(t.edgepaths[f],t.smoothing),h+=d?c:c.replace(/^M/,\"L\"),p.splice(p.indexOf(f),1),r=t.edgepaths[f][t.edgepaths[f].length-1],s=-1,o=0;o<4;o++){if(!r){a.log(\"Missing end?\",f,t);break}for(u=r,Math.abs(u[1]-e[0][1])<.01&&!v(r)?n=e[1]:m(r)?n=e[0]:g(r)?n=e[3]:v(r)&&(n=e[2]),l=0;l<t.edgepaths.length;l++){var y=t.edgepaths[l][0];Math.abs(r[0]-n[0])<.01?Math.abs(r[0]-y[0])<.01&&(y[1]-r[1])*(n[1]-y[1])>=0&&(n=y,s=l):Math.abs(r[1]-n[1])<.01?Math.abs(r[1]-y[1])<.01&&(y[0]-r[0])*(n[0]-y[0])>=0&&(n=y,s=l):a.log(\"endpt to newendpt is not vert. or horz.\",r,n,y)}if(r=n,s>=0)break;h+=\"L\"+n}if(s===t.edgepaths.length){a.log(\"unclosed perimeter path\");break}f=s,(d=-1===p.indexOf(f))&&(f=p[0],h+=\"Z\")}for(f=0;f<t.paths.length;f++)h+=i.smoothclosed(t.paths[f],t.smoothing);return h}function x(t,e,r,n){var i=e.width/2,o=e.height/2,s=t.x,l=t.y,c=t.theta,u=Math.cos(c)*i,h=Math.sin(c)*i,f=(s>n.center?n.right-s:s-n.left)/(u+Math.abs(Math.sin(c)*o)),p=(l>n.middle?n.bottom-l:l-n.top)/(Math.abs(h)+Math.cos(c)*o);if(f<1||p<1)return 1/0;var d=v.EDGECOST*(1/(f-1)+1/(p-1));d+=v.ANGLECOST*c*c;for(var g=s-u,m=l-h,y=s+u,x=l+h,b=0;b<r.length;b++){var _=r[b],w=Math.cos(_.theta)*_.width/2,T=Math.sin(_.theta)*_.width/2,k=2*a.segmentDistance(g,m,y,x,_.x-w,_.y-T,_.x+w,_.y+T)/(e.height+_.height),M=_.level===e.level,A=M?v.SAMELEVELDISTANCE:1;if(k<=A)return 1/0;d+=v.NEIGHBORCOST*(M?v.SAMELEVELFACTOR:1)/(k-A)}return d}function b(t){var e,r,n=t.trace._emptypoints,a=[],i=t.z.length,o=t.z[0].length,s=[];for(e=0;e<o;e++)s.push(1);for(e=0;e<i;e++)a.push(s.slice());for(e=0;e<n.length;e++)a[(r=n[e])[0]][r[1]]=0;return t.zmask=a,a}r.plot=function(t,e,o,s){var l=e.xaxis,c=e.yaxis;a.makeTraceGroups(s,o,\"contour\").each((function(o){var s=n.select(this),v=o[0],x=v.trace,_=v.x,w=v.y,T=x.contours,k=p(T,e,v),M=a.ensureSingle(s,\"g\",\"heatmapcoloring\"),A=[];\"heatmap\"===T.coloring&&(A=[o]),u(t,e,A,M),h(k),f(k);var S=l.c2p(_[0],!0),E=l.c2p(_[_.length-1],!0),C=c.c2p(w[0],!0),L=c.c2p(w[w.length-1],!0),P=[[S,L],[E,L],[E,C],[S,C]],I=k;\"constraint\"===T.type&&(I=d(k,T._operation)),function(t,e,r){var n=a.ensureSingle(t,\"g\",\"contourbg\").selectAll(\"path\").data(\"fill\"===r.coloring?[0]:[]);n.enter().append(\"path\"),n.exit().remove(),n.attr(\"d\",\"M\"+e.join(\"L\")+\"Z\").style(\"stroke\",\"none\")}(s,P,T),function(t,e,r,i){var o=\"fill\"===i.coloring||\"constraint\"===i.type&&\"=\"!==i._operation,s=\"M\"+r.join(\"L\")+\"Z\";o&&g(e,i);var l=a.ensureSingle(t,\"g\",\"contourfill\").selectAll(\"path\").data(o?e:[]);l.enter().append(\"path\"),l.exit().remove(),l.each((function(t){var e=(t.prefixBoundary?s:\"\")+y(t,r);e?n.select(this).attr(\"d\",e).style(\"stroke\",\"none\"):n.select(this).remove()}))}(s,I,P,T),function(t,e,o,s,l){var c=a.ensureSingle(t,\"g\",\"contourlines\"),u=!1!==l.showlines,h=l.showlabels,f=u&&h,p=r.createLines(c,u||h,e),d=r.createLineClip(c,f,o,s.trace.uid),g=t.selectAll(\"g.contourlabels\").data(h?[0]:[]);if(g.exit().remove(),g.enter().append(\"g\").classed(\"contourlabels\",!0),h){var v=[],y=[];a.clearLocationCache();var x=r.labelFormatter(o,s),b=i.tester.append(\"text\").attr(\"data-notex\",1).call(i.font,l.labelfont),_=e[0].xaxis,w=e[0].yaxis,T=_._length,k=w._length,M=_.range,A=w.range,S=a.aggNums(Math.min,null,s.x),E=a.aggNums(Math.max,null,s.x),C=a.aggNums(Math.min,null,s.y),L=a.aggNums(Math.max,null,s.y),P=Math.max(_.c2p(S,!0),0),I=Math.min(_.c2p(E,!0),T),z=Math.max(w.c2p(L,!0),0),O=Math.min(w.c2p(C,!0),k),D={};M[0]<M[1]?(D.left=P,D.right=I):(D.left=I,D.right=P),A[0]<A[1]?(D.top=z,D.bottom=O):(D.top=O,D.bottom=z),D.middle=(D.top+D.bottom)/2,D.center=(D.left+D.right)/2,v.push([[D.left,D.top],[D.right,D.top],[D.right,D.bottom],[D.left,D.bottom]]);var R=Math.sqrt(T*T+k*k),F=m.LABELDISTANCE*R/Math.max(1,e.length/m.LABELINCREASE);p.each((function(t){var e=r.calcTextOpts(t.level,x,b,o);n.select(this).selectAll(\"path\").each((function(){var t=a.getVisibleSegment(this,D,e.height/2);if(t&&!(t.len<(e.width+e.height)*m.LABELMIN))for(var n=Math.min(Math.ceil(t.len/F),m.LABELMAX),i=0;i<n;i++){var o=r.findBestTextLocation(this,t,e,y,D);if(!o)break;r.addLabelData(o,e,y,v)}}))})),b.remove(),r.drawLabels(g,y,o,d,f?v:null)}h&&!u&&p.remove()}(s,k,t,v,T),function(t,e,r,n,o){var s=n.trace,l=r._fullLayout._clips,c=\"clip\"+s.uid,u=l.selectAll(\"#\"+c).data(s.connectgaps?[]:[0]);if(u.enter().append(\"clipPath\").classed(\"contourclip\",!0).attr(\"id\",c),u.exit().remove(),!1===s.connectgaps){var p={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:e.xaxis,yaxis:e.yaxis,x:n.x,y:n.y,z:b(n),smoothing:0};h([p]),f([p]),g([p],{type:\"levels\"}),a.ensureSingle(u,\"path\",\"\").attr(\"d\",(p.prefixBoundary?\"M\"+o.join(\"L\")+\"Z\":\"\")+y(p,o))}else c=null;i.setClipUrl(t,c,r)}(s,e,t,v,P)}))},r.createLines=function(t,e,r){var n=r[0].smoothing,a=t.selectAll(\"g.contourlevel\").data(e?r:[]);if(a.exit().remove(),a.enter().append(\"g\").classed(\"contourlevel\",!0),e){var o=a.selectAll(\"path.openline\").data((function(t){return t.pedgepaths||t.edgepaths}));o.exit().remove(),o.enter().append(\"path\").classed(\"openline\",!0),o.attr(\"d\",(function(t){return i.smoothopen(t,n)})).style(\"stroke-miterlimit\",1).style(\"vector-effect\",\"non-scaling-stroke\");var s=a.selectAll(\"path.closedline\").data((function(t){return t.ppaths||t.paths}));s.exit().remove(),s.enter().append(\"path\").classed(\"closedline\",!0),s.attr(\"d\",(function(t){return i.smoothclosed(t,n)})).style(\"stroke-miterlimit\",1).style(\"vector-effect\",\"non-scaling-stroke\")}return a},r.createLineClip=function(t,e,r,n){var a=e?\"clipline\"+n:null,o=r._fullLayout._clips.selectAll(\"#\"+a).data(e?[0]:[]);return o.exit().remove(),o.enter().append(\"clipPath\").classed(\"contourlineclip\",!0).attr(\"id\",a),i.setClipUrl(t,a,r),o},r.labelFormatter=function(t,e){var r=t._fullLayout,n=e.trace,a=n.contours,i={type:\"linear\",_id:\"ycontour\",showexponent:\"all\",exponentformat:\"B\"};if(a.labelformat)i.tickformat=a.labelformat,c(i,r);else{var s=o.extractOpts(n);if(s&&s.colorbar&&s.colorbar._axis)i=s.colorbar._axis;else{if(\"constraint\"===a.type){var u=a.value;Array.isArray(u)?i.range=[u[0],u[u.length-1]]:i.range=[u,u]}else i.range=[a.start,a.end],i.nticks=(a.end-a.start)/a.size;i.range[0]===i.range[1]&&(i.range[1]+=i.range[0]||1),i.nticks||(i.nticks=1e3),c(i,r),l.prepTicks(i),i._tmin=null,i._tmax=null}}return function(t){return l.tickText(i,t).text}},r.calcTextOpts=function(t,e,r,n){var a=e(t);r.text(a).call(s.convertToTspans,n);var o=r.node(),l=i.bBox(o,!0);return{text:a,width:l.width,height:l.height,fontSize:+o.style[\"font-size\"].replace(\"px\",\"\"),level:t,dy:(l.top+l.bottom)/2}},r.findBestTextLocation=function(t,e,r,n,i){var o,s,l,c,u,h=r.width;e.isClosed?(s=e.len/v.INITIALSEARCHPOINTS,o=e.min+s/2,l=e.max):(s=(e.len-h)/(v.INITIALSEARCHPOINTS+1),o=e.min+s+h/2,l=e.max-(s+h)/2);for(var f=1/0,p=0;p<v.ITERATIONS;p++){for(var d=o;d<l;d+=s){var g=a.getTextLocation(t,e.total,d,h),m=x(g,r,n,i);m<f&&(f=m,u=g,c=d)}if(f>2*v.MAXCOST)break;p&&(s/=2),l=(o=c-s/2)+1.5*s}if(f<=v.MAXCOST)return u},r.addLabelData=function(t,e,r,n){var a=e.fontSize,i=e.width+a/3,o=Math.max(0,e.height-a/3),s=t.x,l=t.y,c=t.theta,u=Math.sin(c),h=Math.cos(c),f=function(t,e){return[s+t*h-e*u,l+t*u+e*h]},p=[f(-i/2,-o/2),f(-i/2,o/2),f(i/2,o/2),f(i/2,-o/2)];r.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:i,height:o}),n.push(p)},r.drawLabels=function(t,e,r,i,o){var l=t.selectAll(\"text\").data(e,(function(t){return t.text+\",\"+t.x+\",\"+t.y+\",\"+t.theta}));if(l.exit().remove(),l.enter().append(\"text\").attr({\"data-notex\":1,\"text-anchor\":\"middle\"}).each((function(t){var e=t.x+Math.sin(t.theta)*t.dy,a=t.y-Math.cos(t.theta)*t.dy;n.select(this).text(t.text).attr({x:e,y:a,transform:\"rotate(\"+180*t.theta/Math.PI+\" \"+e+\" \"+a+\")\"}).call(s.convertToTspans,r)})),o){for(var c=\"\",u=0;u<o.length;u++)c+=\"M\"+o[u].join(\"L\")+\"Z\";a.ensureSingle(i,\"path\",\"\").attr(\"d\",c)}}},{\"../../components/colorscale\":627,\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/set_convert\":818,\"../heatmap/plot\":1046,\"./close_boundaries\":980,\"./constants\":982,\"./convert_to_constraints\":986,\"./empty_pathinfo\":988,\"./find_all_paths\":990,\"./make_crossings\":995,d3:169}],997:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib\");function i(t,e,r){var a={type:\"linear\",range:[t,e]};return n.autoTicks(a,(e-t)/(r||15)),a}e.exports=function(t,e){var r=t.contours;if(t.autocontour){var o=t.zmin,s=t.zmax;(t.zauto||void 0===o)&&(o=a.aggNums(Math.min,null,e)),(t.zauto||void 0===s)&&(s=a.aggNums(Math.max,null,e));var l=i(o,s,t.ncontours);r.size=l.dtick,r.start=n.tickFirst(l),l.range.reverse(),r.end=n.tickFirst(l),r.start===o&&(r.start+=r.size),r.end===s&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),t._input.contours||(t._input.contours={}),a.extendFlat(t._input.contours,{start:r.start,end:r.end,size:r.size}),t._input.autocontour=!0}else if(\"constraint\"!==r.type){var c,u=r.start,h=r.end,f=t._input.contours;if(u>h&&(r.start=f.start=h,h=r.end=f.end=u,u=r.start),!(r.size>0))c=u===h?1:i(u,h,t.ncontours).dtick,f.size=r.size=c}}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798}],998:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../heatmap/style\"),o=t(\"./make_color_map\");e.exports=function(t){var e=n.select(t).selectAll(\"g.contour\");e.style(\"opacity\",(function(t){return t[0].trace.opacity})),e.each((function(t){var e=n.select(this),r=t[0].trace,i=r.contours,s=r.line,l=i.size||1,c=i.start,u=\"constraint\"===i.type,h=!u&&\"lines\"===i.coloring,f=!u&&\"fill\"===i.coloring,p=h||f?o(r):null;e.selectAll(\"g.contourlevel\").each((function(t){n.select(this).selectAll(\"path\").call(a.lineGroupStyle,s.width,h?p(t.level):s.color,s.dash)}));var d=i.labelfont;if(e.selectAll(\"g.contourlabels text\").each((function(t){a.font(n.select(this),{family:d.family,size:d.size,color:d.color||(h?p(t.level):s.color)})})),u)e.selectAll(\"g.contourfill path\").style(\"fill\",r.fillcolor);else if(f){var g;e.selectAll(\"g.contourfill path\").style(\"fill\",(function(t){return void 0===g&&(g=t.level),p(t.level+.5*l)})),void 0===g&&(g=c),e.selectAll(\"g.contourbg path\").style(\"fill\",p(g-.5*l))}})),i(t)}},{\"../../components/drawing\":637,\"../heatmap/style\":1047,\"./make_color_map\":994,d3:169}],999:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/defaults\"),a=t(\"./label_defaults\");e.exports=function(t,e,r,i,o){var s,l=r(\"contours.coloring\"),c=\"\";\"fill\"===l&&(s=r(\"contours.showlines\")),!1!==s&&(\"lines\"!==l&&(c=r(\"line.color\",\"#000\")),r(\"line.width\",.5),r(\"line.dash\")),\"none\"!==l&&(!0!==t.showlegend&&(e.showlegend=!1),e._dfltShowLegend=!1,n(t,e,i,r,{prefix:\"\",cLetter:\"z\"})),r(\"line.smoothing\"),a(r,i,c,o)}},{\"../../components/colorscale/defaults\":625,\"./label_defaults\":993}],1e3:[function(t,e,r){\"use strict\";var n=t(\"../heatmap/attributes\"),a=t(\"../contour/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../lib/extend\").extendFlat,s=a.contours;e.exports=o({carpet:{valType:\"string\",editType:\"calc\"},z:n.z,a:n.x,a0:n.x0,da:n.dx,b:n.y,b0:n.y0,db:n.dy,text:n.text,hovertext:n.hovertext,transpose:n.transpose,atype:n.xtype,btype:n.ytype,fillcolor:a.fillcolor,autocontour:a.autocontour,ncontours:a.ncontours,contours:{type:s.type,start:s.start,end:s.end,size:s.size,coloring:{valType:\"enumerated\",values:[\"fill\",\"lines\",\"none\"],dflt:\"fill\",editType:\"calc\"},showlines:s.showlines,showlabels:s.showlabels,labelfont:s.labelfont,labelformat:s.labelformat,operation:s.operation,value:s.value,editType:\"calc\",impliedEdits:{autocontour:!1}},line:{color:a.line.color,width:a.line.width,dash:a.line.dash,smoothing:a.line.smoothing,editType:\"plot\"},transforms:void 0},i(\"\",{cLetter:\"z\",autoColorDflt:!1}))},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../contour/attributes\":978,\"../heatmap/attributes\":1035}],1001:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\"),a=t(\"../../lib\"),i=t(\"../heatmap/convert_column_xyz\"),o=t(\"../heatmap/clean_2d_array\"),s=t(\"../heatmap/interp2d\"),l=t(\"../heatmap/find_empties\"),c=t(\"../heatmap/make_bound_array\"),u=t(\"./defaults\"),h=t(\"../carpet/lookup_carpetid\"),f=t(\"../contour/set_contours\");e.exports=function(t,e){var r=e._carpetTrace=h(t,e);if(r&&r.visible&&\"legendonly\"!==r.visible){if(!e.a||!e.b){var p=t.data[r.index],d=t.data[e.index];d.a||(d.a=p.a),d.b||(d.b=p.b),u(d,e,e._defaultColor,t._fullLayout)}var g=function(t,e){var r,u,h,f,p,d,g,m=e._carpetTrace,v=m.aaxis,y=m.baxis;v._minDtick=0,y._minDtick=0,a.isArray1D(e.z)&&i(e,v,y,\"a\",\"b\",[\"z\"]);r=e._a=e._a||e.a,f=e._b=e._b||e.b,r=r?v.makeCalcdata(e,\"_a\"):[],f=f?y.makeCalcdata(e,\"_b\"):[],u=e.a0||0,h=e.da||1,p=e.b0||0,d=e.db||1,g=e._z=o(e._z||e.z,e.transpose),e._emptypoints=l(g),s(g,e._emptypoints);var x=a.maxRowLength(g),b=\"scaled\"===e.xtype?\"\":r,_=c(e,b,u,h,x,v),w=\"scaled\"===e.ytype?\"\":f,T=c(e,w,p,d,g.length,y),k={a:_,b:T,z:g};\"levels\"===e.contours.type&&\"none\"!==e.contours.coloring&&n(t,e,{vals:g,containerStr:\"\",cLetter:\"z\"});return[k]}(t,e);return f(e,e._z),g}}},{\"../../components/colorscale/calc\":623,\"../../lib\":749,\"../carpet/lookup_carpetid\":951,\"../contour/set_contours\":997,\"../heatmap/clean_2d_array\":1037,\"../heatmap/convert_column_xyz\":1039,\"../heatmap/find_empties\":1041,\"../heatmap/interp2d\":1044,\"../heatmap/make_bound_array\":1045,\"./defaults\":1002}],1002:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../heatmap/xyz_defaults\"),i=t(\"./attributes\"),o=t(\"../contour/constraint_defaults\"),s=t(\"../contour/contours_defaults\"),l=t(\"../contour/style_defaults\");e.exports=function(t,e,r,c){function u(r,a){return n.coerce(t,e,i,r,a)}if(u(\"carpet\"),t.a&&t.b){if(!a(t,e,u,c,\"a\",\"b\"))return void(e.visible=!1);u(\"text\"),\"constraint\"===u(\"contours.type\")?o(t,e,u,c,r,{hasHover:!1}):(s(t,e,u,(function(r){return n.coerce2(t,e,i,r)})),l(t,e,u,c,{hasHover:!1}))}else e._defaultColor=r,e._length=null}},{\"../../lib\":749,\"../contour/constraint_defaults\":983,\"../contour/contours_defaults\":985,\"../contour/style_defaults\":999,\"../heatmap/xyz_defaults\":1049,\"./attributes\":1e3}],1003:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../contour/colorbar\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../contour/style\"),moduleType:\"trace\",name:\"contourcarpet\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"carpet\",\"contour\",\"symbols\",\"showLegend\",\"hasLines\",\"carpetDependent\",\"noHover\",\"noSortingByValue\"],meta:{}}},{\"../../plots/cartesian\":811,\"../contour/colorbar\":981,\"../contour/style\":998,\"./attributes\":1e3,\"./calc\":1001,\"./defaults\":1002,\"./plot\":1004}],1004:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../carpet/map_1d_array\"),i=t(\"../carpet/makepath\"),o=t(\"../../components/drawing\"),s=t(\"../../lib\"),l=t(\"../contour/make_crossings\"),c=t(\"../contour/find_all_paths\"),u=t(\"../contour/plot\"),h=t(\"../contour/constants\"),f=t(\"../contour/convert_to_constraints\"),p=t(\"../contour/empty_pathinfo\"),d=t(\"../contour/close_boundaries\"),g=t(\"../carpet/lookup_carpetid\"),m=t(\"../carpet/axis_aligned_line\");function v(t,e,r){var n=t.getPointAtLength(e),a=t.getPointAtLength(r),i=a.x-n.x,o=a.y-n.y,s=Math.sqrt(i*i+o*o);return[i/s,o/s]}function y(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function x(t,e){var r=Math.abs(t[0]*e[0]+t[1]*e[1]);return Math.sqrt(1-r*r)/r}e.exports=function(t,e,r,b){var _=e.xaxis,w=e.yaxis;s.makeTraceGroups(b,r,\"contour\").each((function(r){var b=n.select(this),T=r[0],k=T.trace,M=k._carpetTrace=g(t,k),A=t.calcdata[M.index][0];if(M.visible&&\"legendonly\"!==M.visible){var S=T.a,E=T.b,C=k.contours,L=p(C,e,T),P=\"constraint\"===C.type,I=C._operation,z=P?\"=\"===I?\"lines\":\"fill\":C.coloring,O=[[S[0],E[E.length-1]],[S[S.length-1],E[E.length-1]],[S[S.length-1],E[0]],[S[0],E[0]]];l(L);var D=1e-8*(S[S.length-1]-S[0]),R=1e-8*(E[E.length-1]-E[0]);c(L,D,R);var F,B,N,j,U=L;\"constraint\"===C.type&&(U=f(L,I)),function(t,e){var r,n,a,i,o,s,l,c,u;for(r=0;r<t.length;r++){for(i=t[r],o=i.pedgepaths=[],s=i.ppaths=[],n=0;n<i.edgepaths.length;n++){for(u=i.edgepaths[n],l=[],a=0;a<u.length;a++)l[a]=e(u[a]);o.push(l)}for(n=0;n<i.paths.length;n++){for(u=i.paths[n],c=[],a=0;a<u.length;a++)c[a]=e(u[a]);s.push(c)}}}(L,H);var V=[];for(j=A.clipsegments.length-1;j>=0;j--)F=A.clipsegments[j],B=a([],F.x,_.c2p),N=a([],F.y,w.c2p),B.reverse(),N.reverse(),V.push(i(B,N,F.bicubic));var q=\"M\"+V.join(\"L\")+\"Z\";!function(t,e,r,n,o,l){var c,u,h,f,p=s.ensureSingle(t,\"g\",\"contourbg\").selectAll(\"path\").data(\"fill\"!==l||o?[]:[0]);p.enter().append(\"path\"),p.exit().remove();var d=[];for(f=0;f<e.length;f++)c=e[f],u=a([],c.x,r.c2p),h=a([],c.y,n.c2p),d.push(i(u,h,c.bicubic));p.attr(\"d\",\"M\"+d.join(\"L\")+\"Z\").style(\"stroke\",\"none\")}(b,A.clipsegments,_,w,P,z),function(t,e,r,a,i,l,c,u,h,f,p){var g=\"fill\"===f;g&&d(i,t.contours);var v=s.ensureSingle(e,\"g\",\"contourfill\").selectAll(\"path\").data(g?i:[]);v.enter().append(\"path\"),v.exit().remove(),v.each((function(t){var e=(t.prefixBoundary?p:\"\")+function(t,e,r,n,a,i,l,c){var u,h,f,p,d,g,v,y=\"\",x=e.edgepaths.map((function(t,e){return e})),b=!0,_=1e-4*Math.abs(r[0][0]-r[2][0]),w=1e-4*Math.abs(r[0][1]-r[2][1]);function T(t){return Math.abs(t[1]-r[0][1])<w}function k(t){return Math.abs(t[1]-r[2][1])<w}function M(t){return Math.abs(t[0]-r[0][0])<_}function A(t){return Math.abs(t[0]-r[2][0])<_}function S(t,e){var r,n,o,s,u=\"\";for(T(t)&&!A(t)||k(t)&&!M(t)?(s=a.aaxis,o=m(a,i,[t[0],e[0]],.5*(t[1]+e[1]))):(s=a.baxis,o=m(a,i,.5*(t[0]+e[0]),[t[1],e[1]])),r=1;r<o.length;r++)for(u+=s.smoothing?\"C\":\"L\",n=0;n<o[r].length;n++){var h=o[r][n];u+=[l.c2p(h[0]),c.c2p(h[1])]+\" \"}return u}u=0,h=null;for(;x.length;){var E=e.edgepaths[u][0];for(h&&(y+=S(h,E)),v=o.smoothopen(e.edgepaths[u].map(n),e.smoothing),y+=b?v:v.replace(/^M/,\"L\"),x.splice(x.indexOf(u),1),h=e.edgepaths[u][e.edgepaths[u].length-1],d=-1,p=0;p<4;p++){if(!h){s.log(\"Missing end?\",u,e);break}for(T(h)&&!A(h)?f=r[1]:M(h)?f=r[0]:k(h)?f=r[3]:A(h)&&(f=r[2]),g=0;g<e.edgepaths.length;g++){var C=e.edgepaths[g][0];Math.abs(h[0]-f[0])<_?Math.abs(h[0]-C[0])<_&&(C[1]-h[1])*(f[1]-C[1])>=0&&(f=C,d=g):Math.abs(h[1]-f[1])<w?Math.abs(h[1]-C[1])<w&&(C[0]-h[0])*(f[0]-C[0])>=0&&(f=C,d=g):s.log(\"endpt to newendpt is not vert. or horz.\",h,f,C)}if(d>=0)break;y+=S(h,f),h=f}if(d===e.edgepaths.length){s.log(\"unclosed perimeter path\");break}u=d,(b=-1===x.indexOf(u))&&(u=x[0],y+=S(h,f)+\"Z\",h=null)}for(u=0;u<e.paths.length;u++)y+=o.smoothclosed(e.paths[u].map(n),e.smoothing);return y}(0,t,l,c,u,h,r,a);e?n.select(this).attr(\"d\",e).style(\"stroke\",\"none\"):n.select(this).remove()}))}(k,b,_,w,U,O,H,M,A,z,q),function(t,e,r,a,i,l,c){var f=s.ensureSingle(t,\"g\",\"contourlines\"),p=!1!==i.showlines,d=i.showlabels,g=p&&d,m=u.createLines(f,p||d,e),b=u.createLineClip(f,g,r,a.trace.uid),_=t.selectAll(\"g.contourlabels\").data(d?[0]:[]);if(_.exit().remove(),_.enter().append(\"g\").classed(\"contourlabels\",!0),d){var w=l.xaxis,T=l.yaxis,k=w._length,M=T._length,A=[[[0,0],[k,0],[k,M],[0,M]]],S=[];s.clearLocationCache();var E=u.labelFormatter(r,a),C=o.tester.append(\"text\").attr(\"data-notex\",1).call(o.font,i.labelfont),L={left:0,right:k,center:k/2,top:0,bottom:M,middle:M/2},P=Math.sqrt(k*k+M*M),I=h.LABELDISTANCE*P/Math.max(1,e.length/h.LABELINCREASE);m.each((function(t){var e=u.calcTextOpts(t.level,E,C,r);n.select(this).selectAll(\"path\").each((function(r){var n=s.getVisibleSegment(this,L,e.height/2);if(n&&(function(t,e,r,n,a,i){for(var o,s=0;s<r.pedgepaths.length;s++)e===r.pedgepaths[s]&&(o=r.edgepaths[s]);if(!o)return;var l=a.a[0],c=a.a[a.a.length-1],u=a.b[0],h=a.b[a.b.length-1];function f(t,e){var r,n=0;return(Math.abs(t[0]-l)<.1||Math.abs(t[0]-c)<.1)&&(r=y(a.dxydb_rough(t[0],t[1],.1)),n=Math.max(n,i*x(e,r)/2)),(Math.abs(t[1]-u)<.1||Math.abs(t[1]-h)<.1)&&(r=y(a.dxyda_rough(t[0],t[1],.1)),n=Math.max(n,i*x(e,r)/2)),n}var p=v(t,0,1),d=v(t,n.total,n.total-1),g=f(o[0],p),m=n.total-f(o[o.length-1],d);n.min<g&&(n.min=g);n.max>m&&(n.max=m);n.len=n.max-n.min}(this,r,t,n,c,e.height),!(n.len<(e.width+e.height)*h.LABELMIN)))for(var a=Math.min(Math.ceil(n.len/I),h.LABELMAX),i=0;i<a;i++){var o=u.findBestTextLocation(this,n,e,S,L);if(!o)break;u.addLabelData(o,e,S,A)}}))})),C.remove(),u.drawLabels(_,S,r,b,g?A:null)}d&&!p&&m.remove()}(b,L,t,T,C,e,M),o.setClipUrl(b,M._clipPathId,t)}function H(t){var e=M.ab2xy(t[0],t[1],!0);return[_.c2p(e[0]),w.c2p(e[1])]}}))}},{\"../../components/drawing\":637,\"../../lib\":749,\"../carpet/axis_aligned_line\":935,\"../carpet/lookup_carpetid\":951,\"../carpet/makepath\":952,\"../carpet/map_1d_array\":953,\"../contour/close_boundaries\":980,\"../contour/constants\":982,\"../contour/convert_to_constraints\":986,\"../contour/empty_pathinfo\":988,\"../contour/find_all_paths\":990,\"../contour/make_crossings\":995,\"../contour/plot\":996,d3:169}],1005:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../../plots/attributes\"),o=t(\"../scattermapbox/attributes\"),s=t(\"../../lib/extend\").extendFlat;e.exports=s({lon:o.lon,lat:o.lat,z:{valType:\"data_array\",editType:\"calc\"},radius:{valType:\"number\",editType:\"plot\",arrayOk:!0,min:1,dflt:30},below:{valType:\"string\",editType:\"plot\"},text:o.text,hovertext:o.hovertext,hoverinfo:s({},i.hoverinfo,{flags:[\"lon\",\"lat\",\"z\",\"text\",\"name\"]}),hovertemplate:a(),showlegend:s({},i.showlegend,{dflt:!1})},n(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scattermapbox/attributes\":1221}],1006:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\").isArrayOrTypedArray,i=t(\"../../constants/numerical\").BADNUM,o=t(\"../../components/colorscale/calc\"),s=t(\"../../lib\")._;e.exports=function(t,e){for(var r=e._length,l=new Array(r),c=e.z,u=a(c)&&c.length,h=0;h<r;h++){var f=l[h]={},p=e.lon[h],d=e.lat[h];if(f.lonlat=n(p)&&n(d)?[+p,+d]:[i,i],u){var g=c[h];f.z=n(g)?g:i}}return o(t,e,{vals:u?c:[0,1],containerStr:\"\",cLetter:\"z\"}),r&&(l[0].t={labels:{lat:s(t,\"lat:\")+\" \",lon:s(t,\"lon:\")+\" \"}}),l}},{\"../../components/colorscale/calc\":623,\"../../constants/numerical\":724,\"../../lib\":749,\"fast-isnumeric\":241}],1007:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../components/color\"),o=t(\"../../components/colorscale\"),s=t(\"../../constants/numerical\").BADNUM,l=t(\"../../lib/geojson_utils\").makeBlank;e.exports=function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,c=e._opts={heatmap:{layout:{visibility:\"none\"},paint:{}},geojson:l()};if(!r)return c;var u,h=[],f=e.z,p=e.radius,d=a.isArrayOrTypedArray(f)&&f.length,g=a.isArrayOrTypedArray(p);for(u=0;u<t.length;u++){var m=t[u],v=m.lonlat;if(v[0]!==s){var y={};if(d){var x=m.z;y.z=x!==s?x:0}g&&(y.r=n(p[u])&&p[u]>0?+p[u]:0),h.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:v},properties:y})}}var b=o.extractOpts(e),_=b.reversescale?o.flipScale(b.colorscale):b.colorscale,w=_[0][1],T=[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,i.opacity(w)<1?w:i.addOpacity(w,0)];for(u=1;u<_.length;u++)T.push(_[u][0],_[u][1]);var k=[\"interpolate\",[\"linear\"],[\"get\",\"z\"],b.min,0,b.max,1];return a.extendFlat(c.heatmap.paint,{\"heatmap-weight\":d?k:1/(b.max-b.min),\"heatmap-color\":T,\"heatmap-radius\":g?{type:\"identity\",property:\"r\"}:e.radius,\"heatmap-opacity\":e.opacity}),c.geojson={type:\"FeatureCollection\",features:h},c.heatmap.layout.visibility=\"visible\",c}},{\"../../components/color\":615,\"../../components/colorscale\":627,\"../../constants/numerical\":724,\"../../lib\":749,\"../../lib/geojson_utils\":743,\"fast-isnumeric\":241}],1008:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/defaults\"),i=t(\"./attributes\");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s(\"lon\")||[],c=s(\"lat\")||[],u=Math.min(l.length,c.length);u?(e._length=u,s(\"z\"),s(\"radius\"),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),a(t,e,o,s,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"./attributes\":1005}],1009:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}},{}],1010:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../scattermapbox/hover\");e.exports=function(t,e,r){var o=i(t,e,r);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,\"z\"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=a.tickText(h,h.c2l(u.z),\"hover\").text}return s.extraText=function(t,e,r){if(t.hovertemplate)return;var a=(e.hi||t.hoverinfo).split(\"+\"),i=-1!==a.indexOf(\"all\"),o=-1!==a.indexOf(\"lon\"),s=-1!==a.indexOf(\"lat\"),l=e.lonlat,c=[];function u(t){return t+\"\\xb0\"}i||o&&s?c.push(\"(\"+u(l[0])+\", \"+u(l[1])+\")\"):o?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1]));(i||-1!==a.indexOf(\"text\"))&&n.fillText(e,t,c);return c.join(\"<br>\")}(c,u,l[0].t.labels),[s]}}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../scattermapbox/hover\":1226}],1011:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../heatmap/colorbar\"),formatLabels:t(\"../scattermapbox/format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;n<r.length;n++){var a=r[n],i=a.id;if(\"symbol\"===a.type&&\"string\"==typeof i&&-1===i.indexOf(\"plotly-\"))return i}},moduleType:\"trace\",name:\"densitymapbox\",basePlotModule:t(\"../../plots/mapbox\"),categories:[\"mapbox\",\"gl\",\"showLegend\"],meta:{hr_name:\"density_mapbox\"}}},{\"../../plots/mapbox\":855,\"../heatmap/colorbar\":1038,\"../scattermapbox/format_labels\":1225,\"./attributes\":1005,\"./calc\":1006,\"./defaults\":1008,\"./event_data\":1009,\"./hover\":1010,\"./plot\":1012}],1012:[function(t,e,r){\"use strict\";var n=t(\"./convert\"),a=t(\"../../plots/mapbox/constants\").traceLayerPrefix;function i(t,e){this.type=\"densitymapbox\",this.subplot=t,this.uid=e,this.sourceId=\"source-\"+e,this.layerList=[[\"heatmap\",a+e+\"-heatmap\"]],this.below=null}var o=i.prototype;o.update=function(t){var e=this.subplot,r=this.layerList,a=n(t),i=e.belowLookup[\"trace-\"+this.uid];e.map.getSource(this.sourceId).setData(a.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(a,i),this.below=i);for(var o=0;o<r.length;o++){var s=r[o],l=s[0],c=s[1],u=a[l];e.setOptions(c,\"setLayoutProperty\",u.layout),\"visible\"===u.layout.visibility&&e.setOptions(c,\"setPaintProperty\",u.paint)}},o._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,a=this.sourceId,i=0;i<n.length;i++){var o=n[i],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:a,layout:l.layout,paint:l.paint},e)}},o._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var r=e[0].trace,a=new i(t,r.uid),o=a.sourceId,s=n(e),l=a.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(o,{type:\"geojson\",data:s.geojson}),a._addLayers(s,l),a}},{\"../../plots/mapbox/constants\":853,\"./convert\":1007}],1013:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,\"tx\"),n.mergeArray(e.hovertext,t,\"htx\");var a=e.marker;if(a){n.mergeArray(a.opacity,t,\"mo\"),n.mergeArray(a.color,t,\"mc\");var i=a.line;i&&(n.mergeArray(i.color,t,\"mlc\"),n.mergeArrayCastPositive(i.width,t,\"mlw\"))}}},{\"../../lib\":749}],1014:[function(t,e,r){\"use strict\";var n=t(\"../bar/attributes\"),a=t(\"../scatter/attributes\").line,i=t(\"../../plots/attributes\"),o=t(\"../../plots/template_attributes\").hovertemplateAttrs,s=t(\"../../plots/template_attributes\").texttemplateAttrs,l=t(\"./constants\"),c=t(\"../../lib/extend\").extendFlat,u=t(\"../../components/color\");e.exports={x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,hovertext:n.hovertext,hovertemplate:o({},{keys:l.eventDataKeys}),hoverinfo:c({},i.hoverinfo,{flags:[\"name\",\"x\",\"y\",\"text\",\"percent initial\",\"percent previous\",\"percent total\"]}),textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"percent initial\",\"percent previous\",\"percent total\",\"value\"],extras:[\"none\"],editType:\"plot\",arrayOk:!1},texttemplate:s({editType:\"plot\"},{keys:l.eventDataKeys.concat([\"label\",\"value\"])}),text:n.text,textposition:c({},n.textposition,{dflt:\"auto\"}),insidetextanchor:c({},n.insidetextanchor,{dflt:\"middle\"}),textangle:c({},n.textangle,{dflt:0}),textfont:n.textfont,insidetextfont:n.insidetextfont,outsidetextfont:n.outsidetextfont,constraintext:n.constraintext,cliponaxis:n.cliponaxis,orientation:c({},n.orientation,{}),offset:c({},n.offset,{arrayOk:!1}),width:c({},n.width,{arrayOk:!1}),marker:n.marker,connector:{fillcolor:{valType:\"color\",editType:\"style\"},line:{color:c({},a.color,{dflt:u.defaultLine}),width:c({},a.width,{dflt:0,editType:\"plot\"}),dash:a.dash,editType:\"style\"},visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup}},{\"../../components/color\":615,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../bar/attributes\":891,\"../scatter/attributes\":1156,\"./constants\":1016}],1015:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../plots/cartesian/align_period\"),i=t(\"./arrays_to_calcdata\"),o=t(\"../scatter/calc_selection\"),s=t(\"../../constants/numerical\").BADNUM;function l(t){return t===s?0:t}e.exports=function(t,e){var r,c,u,h,f,p,d=n.getFromId(t,e.xaxis||\"x\"),g=n.getFromId(t,e.yaxis||\"y\");\"h\"===e.orientation?(r=d.makeCalcdata(e,\"x\"),u=g.makeCalcdata(e,\"y\"),c=a(e,g,\"y\",u),p=!!e.yperiodalignment):(r=g.makeCalcdata(e,\"y\"),u=d.makeCalcdata(e,\"x\"),c=a(e,d,\"x\",u),p=!!e.xperiodalignment);var m,v=Math.min(c.length,r.length),y=new Array(v);for(e._base=[],h=0;h<v;h++){r[h]<0&&(r[h]=s);var x=!1;r[h]!==s&&h+1<v&&r[h+1]!==s&&(x=!0),f=y[h]={p:c[h],s:r[h],cNext:x},e._base[h]=-.5*f.s,p&&(y[h].orig_p=u[h]),e.ids&&(f.id=String(e.ids[h])),0===h&&(y[0].vTotal=0),y[0].vTotal+=l(f.s),f.begR=l(f.s)/l(y[0].s)}for(h=0;h<v;h++)(f=y[h]).s!==s&&(f.sumR=f.s/y[0].vTotal,f.difR=void 0!==m?f.s/m:1,m=f.s);return i(y,e),o(y,e),y}},{\"../../constants/numerical\":724,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"../scatter/calc_selection\":1158,\"./arrays_to_calcdata\":1013}],1016:[function(t,e,r){\"use strict\";e.exports={eventDataKeys:[\"percentInitial\",\"percentPrevious\",\"percentTotal\"]}},{}],1017:[function(t,e,r){\"use strict\";var n=t(\"../bar/cross_trace_calc\").setGroupPositions;e.exports=function(t,e){var r,a,i=t._fullLayout,o=t._fullData,s=t.calcdata,l=e.xaxis,c=e.yaxis,u=[],h=[],f=[];for(a=0;a<o.length;a++){var p=o[a],d=\"h\"===p.orientation;!0===p.visible&&p.xaxis===l._id&&p.yaxis===c._id&&\"funnel\"===p.type&&(r=s[a],d?f.push(r):h.push(r),u.push(r))}var g={mode:i.funnelmode,norm:i.funnelnorm,gap:i.funnelgap,groupgap:i.funnelgroupgap};for(n(t,l,c,h,g),n(t,c,l,f,g),a=0;a<u.length;a++){r=u[a];for(var m=0;m<r.length;m++)m+1<r.length&&(r[m].nextP0=r[m+1].p0,r[m].nextS0=r[m+1].s0,r[m].nextP1=r[m+1].p1,r[m].nextS1=r[m+1].s1)}}},{\"../bar/cross_trace_calc\":894}],1018:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../bar/defaults\").handleGroupingDefaults,i=t(\"../bar/defaults\").handleText,o=t(\"../scatter/xy_defaults\"),s=t(\"../scatter/period_defaults\"),l=t(\"./attributes\"),c=t(\"../../components/color\");e.exports={supplyDefaults:function(t,e,r,a){function u(r,a){return n.coerce(t,e,l,r,a)}if(o(t,e,a,u)){s(t,e,a,u),u(\"orientation\",e.y&&!e.x?\"v\":\"h\"),u(\"offset\"),u(\"width\");var h=u(\"text\");u(\"hovertext\"),u(\"hovertemplate\");var f=u(\"textposition\");i(t,e,a,u,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),\"none\"===e.textposition||e.texttemplate||u(\"textinfo\",Array.isArray(h)?\"text+value\":\"value\");var p=u(\"marker.color\",r);if(u(\"marker.line.color\",c.defaultLine),u(\"marker.line.width\"),u(\"connector.visible\"))u(\"connector.fillcolor\",function(t){var e=n.isArrayOrTypedArray(t)?\"#000\":t;return c.addOpacity(e,.5*c.opacity(e))}(p)),u(\"connector.line.width\")&&(u(\"connector.line.color\"),u(\"connector.line.dash\"))}else e.visible=!1},crossTraceDefaults:function(t,e){var r,i;function o(t){return n.coerce(i._input,i,l,t)}if(\"group\"===e.funnelmode)for(var s=0;s<t.length;s++)r=(i=t[s])._input,a(r,i,e,o)}}},{\"../../components/color\":615,\"../../lib\":749,\"../bar/defaults\":895,\"../scatter/period_defaults\":1176,\"../scatter/xy_defaults\":1183,\"./attributes\":1014}],1019:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,\"percentInitial\"in e&&(t.percentInitial=e.percentInitial),\"percentPrevious\"in e&&(t.percentPrevious=e.percentPrevious),\"percentTotal\"in e&&(t.percentTotal=e.percentTotal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},{}],1020:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\").opacity,a=t(\"../bar/hover\").hoverOnBars,i=t(\"../../lib\").formatPercent;e.exports=function(t,e,r,o){var s=a(t,e,r,o);if(s){var l=s.cd,c=l[0].trace,u=\"h\"===c.orientation,h=l[s.index];s[(u?\"x\":\"y\")+\"LabelVal\"]=h.s,s.percentInitial=h.begR,s.percentInitialLabel=i(h.begR,1),s.percentPrevious=h.difR,s.percentPreviousLabel=i(h.difR,1),s.percentTotal=h.sumR,s.percentTotalLabel=i(h.sumR,1);var f=h.hi||c.hoverinfo,p=[];if(f&&\"none\"!==f&&\"skip\"!==f){var d=\"all\"===f,g=f.split(\"+\"),m=function(t){return d||-1!==g.indexOf(t)};m(\"percent initial\")&&p.push(s.percentInitialLabel+\" of initial\"),m(\"percent previous\")&&p.push(s.percentPreviousLabel+\" of previous\"),m(\"percent total\")&&p.push(s.percentTotalLabel+\" of total\")}return s.extraText=p.join(\"<br>\"),s.color=function(t,e){var r=t.marker,a=e.mc||r.color,i=e.mlc||r.line.color,o=e.mlw||r.line.width;if(n(a))return a;if(n(i)&&o)return i}(c,h),[s]}}},{\"../../components/color\":615,\"../../lib\":749,\"../bar/hover\":898}],1021:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\"),plot:t(\"./plot\"),style:t(\"./style\").style,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"../bar/select\"),moduleType:\"trace\",name:\"funnel\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"oriented\",\"showLegend\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":811,\"../bar/select\":903,\"./attributes\":1014,\"./calc\":1015,\"./cross_trace_calc\":1017,\"./defaults\":1018,\"./event_data\":1019,\"./hover\":1020,\"./layout_attributes\":1022,\"./layout_defaults\":1023,\"./plot\":1024,\"./style\":1025}],1022:[function(t,e,r){\"use strict\";e.exports={funnelmode:{valType:\"enumerated\",values:[\"stack\",\"group\",\"overlay\"],dflt:\"stack\",editType:\"calc\"},funnelgap:{valType:\"number\",min:0,max:1,editType:\"calc\"},funnelgroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},{}],1023:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){var i=!1;function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=0;s<r.length;s++){var l=r[s];if(l.visible&&\"funnel\"===l.type){i=!0;break}}i&&(o(\"funnelmode\"),o(\"funnelgap\",.2),o(\"funnelgroupgap\"))}},{\"../../lib\":749,\"./layout_attributes\":1022}],1024:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../constants/numerical\").BADNUM,s=t(\"../bar/plot\"),l=t(\"../bar/uniform_text\").clearMinTextSize;function c(t,e,r,n){var a=[],i=[],o=n?e:r,s=n?r:e;return a[0]=o.c2p(t.s0,!0),i[0]=s.c2p(t.p0,!0),a[1]=o.c2p(t.s1,!0),i[1]=s.c2p(t.p1,!0),a[2]=o.c2p(t.nextS0,!0),i[2]=s.c2p(t.nextP0,!0),a[3]=o.c2p(t.nextS1,!0),i[3]=s.c2p(t.nextP1,!0),n?[a,i]:[i,a]}e.exports=function(t,e,r,u){var h=t._fullLayout;l(\"funnel\",h),function(t,e,r,s){var l=e.xaxis,u=e.yaxis;a.makeTraceGroups(s,r,\"trace bars\").each((function(r){var s=n.select(this),h=r[0].trace,f=a.ensureSingle(s,\"g\",\"regions\");if(h.connector&&h.connector.visible){var p=\"h\"===h.orientation,d=f.selectAll(\"g.region\").data(a.identity);d.enter().append(\"g\").classed(\"region\",!0),d.exit().remove();var g=d.size();d.each((function(r,s){if(s===g-1||r.cNext){var h=c(r,l,u,p),f=h[0],d=h[1],m=\"\";f[0]!==o&&d[0]!==o&&f[1]!==o&&d[1]!==o&&f[2]!==o&&d[2]!==o&&f[3]!==o&&d[3]!==o&&(m+=p?\"M\"+f[0]+\",\"+d[1]+\"L\"+f[2]+\",\"+d[2]+\"H\"+f[3]+\"L\"+f[1]+\",\"+d[1]+\"Z\":\"M\"+f[1]+\",\"+d[1]+\"L\"+f[2]+\",\"+d[3]+\"V\"+d[2]+\"L\"+f[1]+\",\"+d[0]+\"Z\"),\"\"===m&&(m=\"M0,0Z\"),a.ensureSingle(n.select(this),\"path\").attr(\"d\",m).call(i.setClipUrl,e.layerClipId,t)}}))}else f.remove()}))}(t,e,r,u),function(t,e,r,o){var s=e.xaxis,l=e.yaxis;a.makeTraceGroups(o,r,\"trace bars\").each((function(r){var o=n.select(this),u=r[0].trace,h=a.ensureSingle(o,\"g\",\"lines\");if(u.connector&&u.connector.visible&&u.connector.line.width){var f=\"h\"===u.orientation,p=h.selectAll(\"g.line\").data(a.identity);p.enter().append(\"g\").classed(\"line\",!0),p.exit().remove();var d=p.size();p.each((function(r,o){if(o===d-1||r.cNext){var u=c(r,s,l,f),h=u[0],p=u[1],g=\"\";void 0!==h[3]&&void 0!==p[3]&&(f?(g+=\"M\"+h[0]+\",\"+p[1]+\"L\"+h[2]+\",\"+p[2],g+=\"M\"+h[1]+\",\"+p[1]+\"L\"+h[3]+\",\"+p[2]):(g+=\"M\"+h[1]+\",\"+p[1]+\"L\"+h[2]+\",\"+p[3],g+=\"M\"+h[1]+\",\"+p[0]+\"L\"+h[2]+\",\"+p[2])),\"\"===g&&(g=\"M0,0Z\"),a.ensureSingle(n.select(this),\"path\").attr(\"d\",g).call(i.setClipUrl,e.layerClipId,t)}}))}else h.remove()}))}(t,e,r,u),s.plot(t,e,r,u,{mode:h.funnelmode,norm:h.funnelmode,gap:h.funnelgap,groupgap:h.funnelgroupgap})}},{\"../../components/drawing\":637,\"../../constants/numerical\":724,\"../../lib\":749,\"../bar/plot\":902,\"../bar/uniform_text\":907,d3:169}],1025:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../components/color\"),o=t(\"../../constants/interactions\").DESELECTDIM,s=t(\"../bar/style\"),l=t(\"../bar/uniform_text\").resizeText,c=s.styleTextPoints;e.exports={style:function(t,e,r){var s=r||n.select(t).selectAll(\"g.funnellayer\").selectAll(\"g.trace\");l(t,s,\"funnel\"),s.style(\"opacity\",(function(t){return t[0].trace.opacity})),s.each((function(e){var r=n.select(this),s=e[0].trace;r.selectAll(\".point > path\").each((function(t){if(!t.isBlank){var e=s.marker;n.select(this).call(i.fill,t.mc||e.color).call(i.stroke,t.mlc||e.line.color).call(a.dashLine,e.line.dash,t.mlw||e.line.width).style(\"opacity\",s.selectedpoints&&!t.selected?o:1)}})),c(r,s,t),r.selectAll(\".regions\").each((function(){n.select(this).selectAll(\"path\").style(\"stroke-width\",0).call(i.fill,s.connector.fillcolor)})),r.selectAll(\".lines\").each((function(){var t=s.connector.line;a.lineGroupStyle(n.select(this).selectAll(\"path\"),t.width,t.color,t.dash)}))}))}}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../constants/interactions\":723,\"../bar/style\":905,\"../bar/uniform_text\":907,d3:169}],1026:[function(t,e,r){\"use strict\";var n=t(\"../pie/attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../plots/domain\").attributes,o=t(\"../../plots/template_attributes\").hovertemplateAttrs,s=t(\"../../plots/template_attributes\").texttemplateAttrs,l=t(\"../../lib/extend\").extendFlat;e.exports={labels:n.labels,label0:n.label0,dlabel:n.dlabel,values:n.values,marker:{colors:n.marker.colors,line:{color:l({},n.marker.line.color,{dflt:null}),width:l({},n.marker.line.width,{dflt:1}),editType:\"calc\"},editType:\"calc\"},text:n.text,hovertext:n.hovertext,scalegroup:l({},n.scalegroup,{}),textinfo:l({},n.textinfo,{flags:[\"label\",\"text\",\"value\",\"percent\"]}),texttemplate:s({editType:\"plot\"},{keys:[\"label\",\"color\",\"value\",\"text\",\"percent\"]}),hoverinfo:l({},a.hoverinfo,{flags:[\"label\",\"text\",\"value\",\"percent\",\"name\"]}),hovertemplate:o({},{keys:[\"label\",\"color\",\"value\",\"text\",\"percent\"]}),textposition:l({},n.textposition,{values:[\"inside\",\"none\"],dflt:\"inside\"}),textfont:n.textfont,insidetextfont:n.insidetextfont,title:{text:n.title.text,font:n.title.font,position:l({},n.title.position,{values:[\"top left\",\"top center\",\"top right\"],dflt:\"top center\"}),editType:\"plot\"},domain:i({name:\"funnelarea\",trace:!0,editType:\"calc\"}),aspectratio:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},baseratio:{valType:\"number\",min:0,max:1,dflt:.333,editType:\"plot\"}}},{\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/domain\":825,\"../../plots/template_attributes\":876,\"../pie/attributes\":1130}],1027:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"funnelarea\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":861}],1028:[function(t,e,r){\"use strict\";var n=t(\"../pie/calc\");e.exports={calc:function(t,e){return n.calc(t,e)},crossTraceCalc:function(t){n.crossTraceCalc(t,{type:\"funnelarea\"})}}},{\"../pie/calc\":1132}],1029:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../plots/domain\").defaults,o=t(\"../bar/defaults\").handleText,s=t(\"../pie/defaults\").handleLabelsAndValues;e.exports=function(t,e,r,l){function c(r,i){return n.coerce(t,e,a,r,i)}var u=c(\"labels\"),h=c(\"values\"),f=s(u,h),p=f.len;if(e._hasLabels=f.hasLabels,e._hasValues=f.hasValues,!e._hasLabels&&e._hasValues&&(c(\"label0\"),c(\"dlabel\")),p){e._length=p,c(\"marker.line.width\")&&c(\"marker.line.color\",l.paper_bgcolor),c(\"marker.colors\"),c(\"scalegroup\");var d,g=c(\"text\"),m=c(\"texttemplate\");if(m||(d=c(\"textinfo\",Array.isArray(g)?\"text+percent\":\"percent\")),c(\"hovertext\"),c(\"hovertemplate\"),m||d&&\"none\"!==d){var v=c(\"textposition\");o(t,e,l,c,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}i(e,l,c),c(\"title.text\")&&(c(\"title.position\"),n.coerceFont(c,\"title.font\",l.font)),c(\"aspectratio\"),c(\"baseratio\")}else e.visible=!1}},{\"../../lib\":749,\"../../plots/domain\":825,\"../bar/defaults\":895,\"../pie/defaults\":1133,\"./attributes\":1026}],1030:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"funnelarea\",basePlotModule:t(\"./base_plot\"),categories:[\"pie-like\",\"funnelarea\",\"showLegend\"],attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\"),style:t(\"./style\"),styleOne:t(\"../pie/style_one\"),meta:{}}},{\"../pie/style_one\":1141,\"./attributes\":1026,\"./base_plot\":1027,\"./calc\":1028,\"./defaults\":1029,\"./layout_attributes\":1031,\"./layout_defaults\":1032,\"./plot\":1033,\"./style\":1034}],1031:[function(t,e,r){\"use strict\";var n=t(\"../pie/layout_attributes\").hiddenlabels;e.exports={hiddenlabels:n,funnelareacolorway:{valType:\"colorlist\",editType:\"calc\"},extendfunnelareacolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{\"../pie/layout_attributes\":1137}],1032:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"hiddenlabels\"),r(\"funnelareacolorway\",e.colorway),r(\"extendfunnelareacolors\")}},{\"../../lib\":749,\"./layout_attributes\":1031}],1033:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../lib\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"../bar/plot\").toMoveInsideBar,l=t(\"../bar/uniform_text\"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t(\"../pie/helpers\"),f=t(\"../pie/plot\"),p=f.attachFxHandlers,d=f.determineInsideTextFont,g=f.layoutAreas,m=f.prerenderTitles,v=f.positionTitleOutside,y=f.formatSliceLabel;function x(t,e){return\"l\"+(e[0]-t[0])+\",\"+(e[1]-t[1])}e.exports=function(t,e){var r=t._fullLayout;u(\"funnelarea\",r),m(e,t),g(e,r._size),i.makeTraceGroups(r._funnelarealayer,e,\"trace\").each((function(e){var l=n.select(this),u=e[0],f=u.trace;!function(t){if(!t.length)return;var e=t[0],r=e.trace,n=r.aspectratio,a=r.baseratio;a>.999&&(a=.999);var i,o=Math.pow(a,2),s=e.vTotal,l=s,c=s*o/(1-o)/s;function u(){var t,e={x:t=Math.sqrt(c),y:-t};return[e.x,e.y]}var h,f,p=[];for(p.push(u()),h=t.length-1;h>-1;h--)if(!(f=t[h]).hidden){var d=f.v/l;c+=d,p.push(u())}var g=1/0,m=-1/0;for(h=0;h<p.length;h++)i=p[h],g=Math.min(g,i[1]),m=Math.max(m,i[1]);for(h=0;h<p.length;h++)p[h][1]-=(m+g)/2;var v=p[p.length-1][0],y=e.r,x=(m-g)/2,b=y/v,_=y/x*n;for(e.r=_*x,h=0;h<p.length;h++)p[h][0]*=b,p[h][1]*=_;var w=[-(i=p[0])[0],i[1]],T=[i[0],i[1]],k=0;for(h=t.length-1;h>-1;h--)if(!(f=t[h]).hidden){var M=p[k+=1][0],A=p[k][1];f.TL=[-M,A],f.TR=[M,A],f.BL=w,f.BR=T,f.pxmid=(S=f.TR,E=f.BR,[.5*(S[0]+E[0]),.5*(S[1]+E[1])]),w=f.TL,T=f.TR}var S,E}(e),l.each((function(){var l=n.select(this).selectAll(\"g.slice\").data(e);l.enter().append(\"g\").classed(\"slice\",!0),l.exit().remove(),l.each((function(l,g){if(l.hidden)n.select(this).selectAll(\"path,g\").remove();else{l.pointNumber=l.i,l.curveNumber=f.index;var m=u.cx,v=u.cy,b=n.select(this),_=b.selectAll(\"path.surface\").data([l]);_.enter().append(\"path\").classed(\"surface\",!0).style({\"pointer-events\":\"all\"}),b.call(p,t,e);var w=\"M\"+(m+l.TR[0])+\",\"+(v+l.TR[1])+x(l.TR,l.BR)+x(l.BR,l.BL)+x(l.BL,l.TL)+\"Z\";_.attr(\"d\",w),y(t,l,u);var T=h.castOption(f.textposition,l.pts),k=b.selectAll(\"g.slicetext\").data(l.text&&\"none\"!==T?[0]:[]);k.enter().append(\"g\").classed(\"slicetext\",!0),k.exit().remove(),k.each((function(){var u=i.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),h=i.ensureUniformFontSize(t,d(f,l,r.font));u.text(l.text).attr({class:\"slicetext\",transform:\"\",\"text-anchor\":\"middle\"}).call(a.font,h).call(o.convertToTspans,t);var p,y,x,b=a.bBox(u.node()),_=Math.min(l.BL[1],l.BR[1])+v,w=Math.max(l.TL[1],l.TR[1])+v;y=Math.max(l.TL[0],l.BL[0])+m,x=Math.min(l.TR[0],l.BR[0])+m,(p=s(y,x,_,w,b,{isHorizontal:!0,constrained:!0,angle:0,anchor:\"middle\"})).fontSize=h.size,c(f.type,p,r),e[g].transform=p,u.attr(\"transform\",i.getTextTransform(p))}))}}));var g=n.select(this).selectAll(\"g.titletext\").data(f.title.text?[0]:[]);g.enter().append(\"g\").classed(\"titletext\",!0),g.exit().remove(),g.each((function(){var e=i.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),s=f.title.text;f._meta&&(s=i.templateString(s,f._meta)),e.text(s).attr({class:\"titletext\",transform:\"\",\"text-anchor\":\"middle\"}).call(a.font,f.title.font).call(o.convertToTspans,t);var l=v(u,r._size);e.attr(\"transform\",\"translate(\"+l.x+\",\"+l.y+\")\"+(l.scale<1?\"scale(\"+l.scale+\")\":\"\")+\"translate(\"+l.tx+\",\"+l.ty+\")\")}))}))}))}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../bar/plot\":902,\"../bar/uniform_text\":907,\"../pie/helpers\":1135,\"../pie/plot\":1139,d3:169}],1034:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../pie/style_one\"),i=t(\"../bar/uniform_text\").resizeText;e.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(\".trace\");i(t,e,\"funnelarea\"),e.each((function(t){var e=t[0].trace,r=n.select(this);r.style({opacity:e.opacity}),r.selectAll(\"path.surface\").each((function(t){n.select(this).call(a,t,e)}))}))}},{\"../bar/uniform_text\":907,\"../pie/style_one\":1141,d3:169}],1035:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../components/colorscale/attributes\"),s=(t(\"../../constants/docs\").FORMAT_LINK,t(\"../../lib/extend\").extendFlat);e.exports=s({z:{valType:\"data_array\",editType:\"calc\"},x:s({},n.x,{impliedEdits:{xtype:\"array\"}}),x0:s({},n.x0,{impliedEdits:{xtype:\"scaled\"}}),dx:s({},n.dx,{impliedEdits:{xtype:\"scaled\"}}),y:s({},n.y,{impliedEdits:{ytype:\"array\"}}),y0:s({},n.y0,{impliedEdits:{ytype:\"scaled\"}}),dy:s({},n.dy,{impliedEdits:{ytype:\"scaled\"}}),xperiod:s({},n.xperiod,{impliedEdits:{xtype:\"scaled\"}}),yperiod:s({},n.yperiod,{impliedEdits:{ytype:\"scaled\"}}),xperiod0:s({},n.xperiod0,{impliedEdits:{xtype:\"scaled\"}}),yperiod0:s({},n.yperiod0,{impliedEdits:{ytype:\"scaled\"}}),xperiodalignment:s({},n.xperiodalignment,{impliedEdits:{xtype:\"scaled\"}}),yperiodalignment:s({},n.yperiodalignment,{impliedEdits:{ytype:\"scaled\"}}),text:{valType:\"data_array\",editType:\"calc\"},hovertext:{valType:\"data_array\",editType:\"calc\"},transpose:{valType:\"boolean\",dflt:!1,editType:\"calc\"},xtype:{valType:\"enumerated\",values:[\"array\",\"scaled\"],editType:\"calc+clearAxisTypes\"},ytype:{valType:\"enumerated\",values:[\"array\",\"scaled\"],editType:\"calc+clearAxisTypes\"},zsmooth:{valType:\"enumerated\",values:[\"fast\",\"best\",!1],dflt:!1,editType:\"calc\"},hoverongaps:{valType:\"boolean\",dflt:!0,editType:\"none\"},connectgaps:{valType:\"boolean\",editType:\"calc\"},xgap:{valType:\"number\",dflt:0,min:0,editType:\"plot\"},ygap:{valType:\"number\",dflt:0,min:0,editType:\"plot\"},zhoverformat:{valType:\"string\",dflt:\"\",editType:\"none\"},hovertemplate:i(),showlegend:s({},a.showlegend,{dflt:!1})},{transforms:void 0},o(\"\",{cLetter:\"z\",autoColorDflt:!1}))},{\"../../components/colorscale/attributes\":622,\"../../constants/docs\":719,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156}],1036:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../plots/cartesian/align_period\"),s=t(\"../histogram2d/calc\"),l=t(\"../../components/colorscale/calc\"),c=t(\"./convert_column_xyz\"),u=t(\"./clean_2d_array\"),h=t(\"./interp2d\"),f=t(\"./find_empties\"),p=t(\"./make_bound_array\"),d=t(\"../../constants/numerical\").BADNUM;function g(t){for(var e=[],r=t.length,n=0;n<r;n++){var a=t[n];a!==d&&e.push(a)}return e}e.exports=function(t,e){var r,m,v,y,x,b,_,w,T,k,M,A=i.getFromId(t,e.xaxis||\"x\"),S=i.getFromId(t,e.yaxis||\"y\"),E=n.traceIs(e,\"contour\"),C=n.traceIs(e,\"histogram\"),L=n.traceIs(e,\"gl2d\"),P=E?\"best\":e.zsmooth;if(A._minDtick=0,S._minDtick=0,C)y=(M=s(t,e)).orig_x,r=M.x,m=M.x0,v=M.dx,w=M.orig_y,x=M.y,b=M.y0,_=M.dy,T=M.z;else{var I=e.z;a.isArray1D(I)?(c(e,A,S,\"x\",\"y\",[\"z\"]),r=e._x,x=e._y,I=e._z):(y=e.x?A.makeCalcdata(e,\"x\"):[],w=e.y?S.makeCalcdata(e,\"y\"):[],r=o(e,A,\"x\",y),x=o(e,S,\"y\",w),e._x=r,e._y=x),m=e.x0,v=e.dx,b=e.y0,_=e.dy,T=u(I,e,A,S)}function z(t){P=e._input.zsmooth=e.zsmooth=!1,a.warn('cannot use zsmooth: \"fast\": '+t)}if((A.rangebreaks||S.rangebreaks)&&(T=function(t,e,r){for(var n=[],a=-1,i=0;i<r.length;i++)if(e[i]!==d){a++,n[a]=[];for(var o=0;o<r[i].length;o++)t[o]!==d&&n[a].push(r[i][o])}return n}(r,x,T),C||(r=g(r),x=g(x),e._x=r,e._y=x)),C||!E&&!e.connectgaps||(e._emptypoints=f(T),h(T,e._emptypoints)),\"fast\"===P)if(\"log\"===A.type||\"log\"===S.type)z(\"log axis found\");else if(!C){if(r.length){var O=(r[r.length-1]-r[0])/(r.length-1),D=Math.abs(O/100);for(k=0;k<r.length-1;k++)if(Math.abs(r[k+1]-r[k]-O)>D){z(\"x scale is not linear\");break}}if(x.length&&\"fast\"===P){var R=(x[x.length-1]-x[0])/(x.length-1),F=Math.abs(R/100);for(k=0;k<x.length-1;k++)if(Math.abs(x[k+1]-x[k]-R)>F){z(\"y scale is not linear\");break}}}var B=a.maxRowLength(T),N=\"scaled\"===e.xtype?\"\":r,j=p(e,N,m,v,B,A),U=\"scaled\"===e.ytype?\"\":x,V=p(e,U,b,_,T.length,S);L||(e._extremes[A._id]=i.findExtremes(A,j),e._extremes[S._id]=i.findExtremes(S,V));var q={x:j,y:V,z:T,text:e._text||e.text,hovertext:e._hovertext||e.hovertext};if(e.xperiodalignment&&y&&(q.orig_x=y),e.yperiodalignment&&w&&(q.orig_y=w),N&&N.length===j.length-1&&(q.xCenter=N),U&&U.length===V.length-1&&(q.yCenter=U),C&&(q.xRanges=M.xRanges,q.yRanges=M.yRanges,q.pts=M.pts),E||l(t,e,{vals:T,cLetter:\"z\"}),E&&e.contours&&\"heatmap\"===e.contours.coloring){var H={type:\"contour\"===e.type?\"heatmap\":\"histogram2d\",xcalendar:e.xcalendar,ycalendar:e.ycalendar};q.xfill=p(H,N,m,v,B,A),q.yfill=p(H,U,b,_,T.length,S)}return[q]}},{\"../../components/colorscale/calc\":623,\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"../histogram2d/calc\":1068,\"./clean_2d_array\":1037,\"./convert_column_xyz\":1039,\"./find_empties\":1041,\"./interp2d\":1044,\"./make_bound_array\":1045}],1037:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e,r,o){var s,l,c,u,h,f;function p(t){if(n(t))return+t}if(e&&e.transpose){for(s=0,h=0;h<t.length;h++)s=Math.max(s,t[h].length);if(0===s)return!1;c=function(t){return t.length},u=function(t,e,r){return(t[r]||[])[e]}}else s=t.length,c=function(t,e){return t[e].length},u=function(t,e,r){return(t[e]||[])[r]};var d=function(t,e,r){return e===i||r===i?i:u(t,e,r)};function g(t){if(e&&\"carpet\"!==e.type&&\"contourcarpet\"!==e.type&&t&&\"category\"===t.type&&e[\"_\"+t._id.charAt(0)].length){var r=t._id.charAt(0),n={},o=e[\"_\"+r+\"CategoryMap\"]||e[r];for(h=0;h<o.length;h++)n[o[h]]=h;return function(e){var r=n[t._categories[e]];return r+1?r:i}}return a.identity}var m=g(r),v=g(o);o&&\"category\"===o.type&&(s=o._categories.length);var y=new Array(s);for(h=0;h<s;h++)for(l=r&&\"category\"===r.type?r._categories.length:c(t,h),y[h]=new Array(l),f=0;f<l;f++)y[h][f]=p(d(t,v(h),m(f)));return y}},{\"../../constants/numerical\":724,\"../../lib\":749,\"fast-isnumeric\":241}],1038:[function(t,e,r){\"use strict\";e.exports={min:\"zmin\",max:\"zmax\"}},{}],1039:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../constants/numerical\").BADNUM,i=t(\"../../plots/cartesian/align_period\");e.exports=function(t,e,r,o,s,l){var c=t._length,u=e.makeCalcdata(t,o),h=r.makeCalcdata(t,s);u=i(t,e,o,u),h=i(t,r,s,h);var f,p,d,g,m=t.text,v=void 0!==m&&n.isArray1D(m),y=t.hovertext,x=void 0!==y&&n.isArray1D(y),b=n.distinctVals(u),_=b.vals,w=n.distinctVals(h),T=w.vals,k=[],M=T.length,A=_.length;for(f=0;f<l.length;f++)k[f]=n.init2dArray(M,A);v&&(d=n.init2dArray(M,A)),x&&(g=n.init2dArray(M,A));var S=n.init2dArray(M,A);for(f=0;f<c;f++)if(u[f]!==a&&h[f]!==a){var E=n.findBin(u[f]+b.minDiff/2,_),C=n.findBin(h[f]+w.minDiff/2,T);for(p=0;p<l.length;p++){var L=t[l[p]];k[p][C][E]=L[f],S[C][E]=f}v&&(d[C][E]=m[f]),x&&(g[C][E]=y[f])}for(t[\"_\"+o]=_,t[\"_\"+s]=T,p=0;p<l.length;p++)t[\"_\"+l[p]]=k[p];v&&(t._text=d),x&&(t._hovertext=g),e&&\"category\"===e.type&&(t[\"_\"+o+\"CategoryMap\"]=_.map((function(t){return e._categories[t]}))),r&&\"category\"===r.type&&(t[\"_\"+s+\"CategoryMap\"]=T.map((function(t){return r._categories[t]}))),t._after2before=S}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795}],1040:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./xyz_defaults\"),i=t(\"../scatter/period_defaults\"),o=t(\"./style_defaults\"),s=t(\"../../components/colorscale/defaults\"),l=t(\"./attributes\");e.exports=function(t,e,r,c){function u(r,a){return n.coerce(t,e,l,r,a)}a(t,e,u,c)?(i(t,e,c,u),u(\"text\"),u(\"hovertext\"),u(\"hovertemplate\"),o(t,e,u,c),u(\"hoverongaps\"),u(\"connectgaps\",n.isArray1D(e.z)&&!1!==e.zsmooth),s(t,e,c,u,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"../scatter/period_defaults\":1176,\"./attributes\":1035,\"./style_defaults\":1048,\"./xyz_defaults\":1049}],1041:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").maxRowLength;e.exports=function(t){var e,r,a,i,o,s,l,c,u=[],h={},f=[],p=t[0],d=[],g=[0,0,0],m=n(t);for(r=0;r<t.length;r++)for(e=d,d=p,p=t[r+1]||[],a=0;a<m;a++)void 0===d[a]&&((s=(void 0!==d[a-1]?1:0)+(void 0!==d[a+1]?1:0)+(void 0!==e[a]?1:0)+(void 0!==p[a]?1:0))?(0===r&&s++,0===a&&s++,r===t.length-1&&s++,a===d.length-1&&s++,s<4&&(h[[r,a]]=[r,a,s]),u.push([r,a,s])):f.push([r,a]));for(;f.length;){for(l={},c=!1,o=f.length-1;o>=0;o--)(s=((h[[(r=(i=f[o])[0])-1,a=i[1]]]||g)[2]+(h[[r+1,a]]||g)[2]+(h[[r,a-1]]||g)[2]+(h[[r,a+1]]||g)[2])/20)&&(l[i]=[r,a,s],f.splice(o,1),c=!0);if(!c)throw\"findEmpties iterated with no new neighbors\";for(i in l)h[i]=l[i],u.push(l[i])}return u.sort((function(t,e){return e[2]-t[2]}))}},{\"../../lib\":749}],1042:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../components/colorscale\").extractOpts;e.exports=function(t,e,r,s,l,c){var u,h,f,p,d=t.cd[0],g=d.trace,m=t.xa,v=t.ya,y=d.x,x=d.y,b=d.z,_=d.xCenter,w=d.yCenter,T=d.zmask,k=g.zhoverformat,M=y,A=x;if(!1!==t.index){try{f=Math.round(t.index[1]),p=Math.round(t.index[0])}catch(e){return void a.error(\"Error hovering on heatmap, pointNumber must be [row,col], found:\",t.index)}if(f<0||f>=b[0].length||p<0||p>b.length)return}else{if(n.inbox(e-y[0],e-y[y.length-1],0)>0||n.inbox(r-x[0],r-x[x.length-1],0)>0)return;if(c){var S;for(M=[2*y[0]-y[1]],S=1;S<y.length;S++)M.push((y[S]+y[S-1])/2);for(M.push([2*y[y.length-1]-y[y.length-2]]),A=[2*x[0]-x[1]],S=1;S<x.length;S++)A.push((x[S]+x[S-1])/2);A.push([2*x[x.length-1]-x[x.length-2]])}f=Math.max(0,Math.min(M.length-2,a.findBin(e,M))),p=Math.max(0,Math.min(A.length-2,a.findBin(r,A)))}var E,C,L=m.c2p(y[f]),P=m.c2p(y[f+1]),I=v.c2p(x[p]),z=v.c2p(x[p+1]);c?(E=d.orig_x||y,C=d.orig_y||x,P=L,u=E[f],z=I,h=C[p]):(E=d.orig_x||_||y,C=d.orig_y||w||x,u=_?E[f]:(E[f]+E[f+1])/2,h=w?C[p]:(C[p]+C[p+1])/2,m&&\"category\"===m.type&&(u=y[f]),v&&\"category\"===v.type&&(h=x[p]),g.zsmooth&&(L=P=m.c2p(u),I=z=v.c2p(h)));var O=b[p][f];if(T&&!T[p][f]&&(O=void 0),void 0!==O||g.hoverongaps){var D;Array.isArray(d.hovertext)&&Array.isArray(d.hovertext[p])?D=d.hovertext[p][f]:Array.isArray(d.text)&&Array.isArray(d.text[p])&&(D=d.text[p][f]);var R=o(g),F={type:\"linear\",range:[R.min,R.max],hoverformat:k,_separators:m._separators,_numFormat:m._numFormat},B=i.tickText(F,O,\"hover\").text;return[a.extendFlat(t,{index:g._after2before?g._after2before[p][f]:[p,f],distance:t.maxHoverDistance,spikeDistance:t.maxSpikeDistance,x0:L,x1:P,y0:I,y1:z,xLabelVal:u,yLabelVal:h,zLabelVal:O,zLabel:B,text:D})]}}},{\"../../components/colorscale\":627,\"../../components/fx\":655,\"../../lib\":749,\"../../plots/cartesian/axes\":798}],1043:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),colorbar:t(\"./colorbar\"),style:t(\"./style\"),hoverPoints:t(\"./hover\"),moduleType:\"trace\",name:\"heatmap\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"2dMap\",\"showLegend\"],meta:{}}},{\"../../plots/cartesian\":811,\"./attributes\":1035,\"./calc\":1036,\"./colorbar\":1038,\"./defaults\":1040,\"./hover\":1042,\"./plot\":1046,\"./style\":1047}],1044:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=[[-1,0],[1,0],[0,-1],[0,1]];function i(t){return.5-.25*Math.min(1,.5*t)}function o(t,e,r){var n,i,o,s,l,c,u,h,f,p,d,g,m,v=0;for(s=0;s<e.length;s++){for(i=(n=e[s])[0],o=n[1],d=t[i][o],p=0,f=0,l=0;l<4;l++)(u=t[i+(c=a[l])[0]])&&void 0!==(h=u[o+c[1]])&&(0===p?g=m=h:(g=Math.min(g,h),m=Math.max(m,h)),f++,p+=h);if(0===f)throw\"iterateInterp2d order is wrong: no defined neighbors\";t[i][o]=p/f,void 0===d?f<4&&(v=1):(t[i][o]=(1+r)*t[i][o]-r*d,m>g&&(v=Math.max(v,Math.abs(t[i][o]-d)/(m-g))))}return v}e.exports=function(t,e){var r,a=1;for(o(t,e),r=0;r<e.length&&!(e[r][2]<4);r++);for(e=e.slice(r),r=0;r<100&&a>.01;r++)a=o(t,e,i(a));return a>.01&&n.log(\"interp2d didn't converge quickly\",a),t}},{\"../../lib\":749}],1045:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r,i,o,s){var l,c,u,h=[],f=n.traceIs(t,\"contour\"),p=n.traceIs(t,\"histogram\"),d=n.traceIs(t,\"gl2d\");if(a(e)&&e.length>1&&!p&&\"category\"!==s.type){var g=e.length;if(!(g<=o))return f?e.slice(0,o):e.slice(0,o+1);if(f||d)h=e.slice(0,o);else if(1===o)h=[e[0]-.5,e[0]+.5];else{for(h=[1.5*e[0]-.5*e[1]],u=1;u<g;u++)h.push(.5*(e[u-1]+e[u]));h.push(1.5*e[g-1]-.5*e[g-2])}if(g<o){var m=h[h.length-1],v=m-h[h.length-2];for(u=g;u<o;u++)m+=v,h.push(m)}}else{var y=t[s._id.charAt(0)+\"calendar\"];if(p)l=s.r2c(r,0,y);else if(a(e)&&1===e.length)l=e[0];else if(void 0===r)l=0;else{l=(\"log\"===s.type?s.d2c:s.r2c)(r,0,y)}for(c=i||1,u=f||d?0:-.5;u<o;u++)h.push(l+c*u)}return h}},{\"../../lib\":749,\"../../registry\":881}],1046:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"../../registry\"),o=t(\"../../lib\"),s=t(\"../../components/colorscale\").makeColorScaleFuncFromTrace,l=t(\"../../constants/xmlns_namespaces\");function c(t,e){var r=e.length-2,n=o.constrain(o.findBin(t,e),0,r),a=e[n],i=e[n+1],s=o.constrain(n+(t-a)/(i-a)-.5,0,r),l=Math.round(s),c=Math.abs(s-l);return s&&s!==r&&c?{bin0:l,frac:c,bin1:Math.round(l+c/(s-l))}:{bin0:l,bin1:l,frac:0}}function u(t,e){var r=e.length-1,n=o.constrain(o.findBin(t,e),0,r),a=e[n],i=(t-a)/(e[n+1]-a)||0;return i<=0?{bin0:n,bin1:n,frac:0}:i<.5?{bin0:n,bin1:n+1,frac:i}:{bin0:n+1,bin1:n,frac:1-i}}function h(t,e,r){t[e]=r[0],t[e+1]=r[1],t[e+2]=r[2],t[e+3]=Math.round(255*r[3])}e.exports=function(t,e,r,f){var p=e.xaxis,d=e.yaxis;o.makeTraceGroups(f,r,\"hm\").each((function(e){var r,f,g,m,v,y,x=n.select(this),b=e[0],_=b.trace,w=b.z,T=b.x,k=b.y,M=b.xCenter,A=b.yCenter,S=i.traceIs(_,\"contour\"),E=S?\"best\":_.zsmooth,C=w.length,L=o.maxRowLength(w),P=!1,I=!1;for(y=0;void 0===r&&y<T.length-1;)r=p.c2p(T[y]),y++;for(y=T.length-1;void 0===f&&y>0;)f=p.c2p(T[y]),y--;for(f<r&&(g=f,f=r,r=g,P=!0),y=0;void 0===m&&y<k.length-1;)m=d.c2p(k[y]),y++;for(y=k.length-1;void 0===v&&y>0;)v=d.c2p(k[y]),y--;if(v<m&&(g=m,m=v,v=g,I=!0),S&&(M=T,A=k,T=b.xfill,k=b.yfill),\"fast\"!==E){var z=\"best\"===E?0:.5;r=Math.max(-z*p._length,r),f=Math.min((1+z)*p._length,f),m=Math.max(-z*d._length,m),v=Math.min((1+z)*d._length,v)}var O=Math.round(f-r),D=Math.round(v-m);if(O<=0||D<=0){x.selectAll(\"image\").data([]).exit().remove()}else{var R,F;\"fast\"===E?(R=L,F=C):(R=O,F=D);var B=document.createElement(\"canvas\");B.width=R,B.height=F;var N,j,U=B.getContext(\"2d\"),V=s(_,{noNumericCheck:!0,returnArray:!0});\"fast\"===E?(N=P?function(t){return L-1-t}:o.identity,j=I?function(t){return C-1-t}:o.identity):(N=function(t){return o.constrain(Math.round(p.c2p(T[t])-r),0,O)},j=function(t){return o.constrain(Math.round(d.c2p(k[t])-m),0,D)});var q,H,G,Y,W,Z=j(0),X=[Z,Z],J=P?0:1,K=I?0:1,Q=0,$=0,tt=0,et=0;if(E){var rt,nt=0;try{rt=new Uint8Array(O*D*4)}catch(t){rt=new Array(O*D*4)}if(\"best\"===E){var at,it,ot,st=M||T,lt=A||k,ct=new Array(st.length),ut=new Array(lt.length),ht=new Array(O),ft=M?u:c,pt=A?u:c;for(y=0;y<st.length;y++)ct[y]=Math.round(p.c2p(st[y])-r);for(y=0;y<lt.length;y++)ut[y]=Math.round(d.c2p(lt[y])-m);for(y=0;y<O;y++)ht[y]=ft(y,ct);for(H=0;H<D;H++)for(it=w[(at=pt(H,ut)).bin0],ot=w[at.bin1],y=0;y<O;y++,nt+=4)h(rt,nt,W=kt(it,ot,ht[y],at))}else for(H=0;H<C;H++)for(Y=w[H],X=j(H),y=0;y<O;y++)W=Tt(Y[y],1),h(rt,nt=4*(X*O+N(y)),W);var dt=U.createImageData(O,D);try{dt.data.set(rt)}catch(t){var gt=dt.data,mt=gt.length;for(H=0;H<mt;H++)gt[H]=rt[H]}U.putImageData(dt,0,0)}else{var vt=_.xgap,yt=_.ygap,xt=Math.floor(vt/2),bt=Math.floor(yt/2);for(H=0;H<C;H++)if(Y=w[H],X.reverse(),X[K]=j(H+1),X[0]!==X[1]&&void 0!==X[0]&&void 0!==X[1])for(q=[G=N(0),G],y=0;y<L;y++)q.reverse(),q[J]=N(y+1),q[0]!==q[1]&&void 0!==q[0]&&void 0!==q[1]&&(W=Tt(Y[y],(q[1]-q[0])*(X[1]-X[0])),U.fillStyle=\"rgba(\"+W.join(\",\")+\")\",U.fillRect(q[0]+xt,X[0]+bt,q[1]-q[0]-vt,X[1]-X[0]-yt))}$=Math.round($/Q),tt=Math.round(tt/Q),et=Math.round(et/Q);var _t=a(\"rgb(\"+$+\",\"+tt+\",\"+et+\")\");t._hmpixcount=(t._hmpixcount||0)+Q,t._hmlumcount=(t._hmlumcount||0)+Q*_t.getLuminance();var wt=x.selectAll(\"image\").data(e);wt.enter().append(\"svg:image\").attr({xmlns:l.svg,preserveAspectRatio:\"none\"}),wt.attr({height:D,width:O,x:r,y:m,\"xlink:href\":B.toDataURL(\"image/png\")})}function Tt(t,e){if(void 0!==t){var r=V(t);return r[0]=Math.round(r[0]),r[1]=Math.round(r[1]),r[2]=Math.round(r[2]),Q+=e,$+=r[0]*e,tt+=r[1]*e,et+=r[2]*e,r}return[0,0,0,0]}function kt(t,e,r,n){var a=t[r.bin0];if(void 0===a)return Tt(void 0,1);var i,o=t[r.bin1],s=e[r.bin0],l=e[r.bin1],c=o-a||0,u=s-a||0;return i=void 0===o?void 0===l?0:void 0===s?2*(l-a):2*(2*l-s-a)/3:void 0===l?void 0===s?0:2*(2*a-o-s)/3:void 0===s?2*(2*l-o-a)/3:l+a-o-s,Tt(a+r.frac*c+n.frac*(u+r.frac*i))}}))}},{\"../../components/colorscale\":627,\"../../constants/xmlns_namespaces\":725,\"../../lib\":749,\"../../registry\":881,d3:169,tinycolor2:548}],1047:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports=function(t){n.select(t).selectAll(\".hm image\").style(\"opacity\",(function(t){return t.trace.opacity}))}},{d3:169}],1048:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){!1===r(\"zsmooth\")&&(r(\"xgap\"),r(\"ygap\")),r(\"zhoverformat\")}},{}],1049:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../registry\");function o(t,e){var r=e(t);return\"scaled\"===(r?e(t+\"type\",\"array\"):\"scaled\")&&(e(t+\"0\"),e(\"d\"+t)),r}e.exports=function(t,e,r,s,l,c){var u,h,f=r(\"z\");if(l=l||\"x\",c=c||\"y\",void 0===f||!f.length)return 0;if(a.isArray1D(t.z)){u=r(l),h=r(c);var p=a.minRowLength(u),d=a.minRowLength(h);if(0===p||0===d)return 0;e._length=Math.min(p,d,f.length)}else{if(u=o(l,r),h=o(c,r),!function(t){for(var e,r=!0,i=!1,o=!1,s=0;s<t.length;s++){if(e=t[s],!a.isArrayOrTypedArray(e)){r=!1;break}e.length>0&&(i=!0);for(var l=0;l<e.length;l++)if(n(e[l])){o=!0;break}}return r&&i&&o}(f))return 0;r(\"transpose\"),e._length=null}return\"heatmapgl\"===t.type||\"contourgl\"===t.type||i.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[l,c],s),!0}},{\"../../lib\":749,\"../../registry\":881,\"fast-isnumeric\":241}],1050:[function(t,e,r){\"use strict\";for(var n=t(\"../heatmap/attributes\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../lib/extend\").extendFlat,o=t(\"../../plot_api/edit_types\").overrideAll,s=[\"z\",\"x\",\"x0\",\"dx\",\"y\",\"y0\",\"dy\",\"text\",\"transpose\",\"xtype\",\"ytype\"],l={},c=0;c<s.length;c++){var u=s[c];l[u]=n[u]}l.zsmooth={valType:\"enumerated\",values:[\"fast\",!1],dflt:\"fast\",editType:\"calc\"},i(l,a(\"\",{cLetter:\"z\",autoColorDflt:!1})),e.exports=o(l,\"calc\",\"nested\")},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../heatmap/attributes\":1035}],1051:[function(t,e,r){\"use strict\";var n=t(\"gl-heatmap2d\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../lib/str2rgbarray\");function o(t,e){this.scene=t,this.uid=e,this.type=\"heatmapgl\",this.name=\"\",this.hoverinfo=\"all\",this.xData=[],this.yData=[],this.zData=[],this.textLabels=[],this.idToIndex=[],this.bounds=[0,0,0,0],this.options={zsmooth:\"fast\",z:[],x:[],y:[],shape:[0,0],colorLevels:[0],colorValues:[0,0,0,1]},this.heatmap=n(t.glplot,this.options),this.heatmap._trace=this}var s=o.prototype;s.handlePick=function(t){var e=this.options,r=e.shape,n=t.pointId,a=n%r[0],i=Math.floor(n/r[0]),o=n;return{trace:this,dataCoord:t.dataCoord,traceCoord:[e.x[a],e.y[i],e.z[o]],textLabel:this.textLabels[n],name:this.name,pointIndex:[i,a],hoverinfo:this.hoverinfo}},s.update=function(t,e){var r=e[0];this.index=t.index,this.name=t.name,this.hoverinfo=t.hoverinfo;var n=r.z;this.options.z=[].concat.apply([],n);var o=n[0].length,s=n.length;this.options.shape=[o,s],this.options.x=r.x,this.options.y=r.y,this.options.zsmooth=t.zsmooth;var l=function(t){for(var e=t.colorscale,r=t.zmin,n=t.zmax,a=e.length,o=new Array(a),s=new Array(4*a),l=0;l<a;l++){var c=e[l],u=i(c[1]);o[l]=r+c[0]*(n-r);for(var h=0;h<4;h++)s[4*l+h]=u[h]}return{colorLevels:o,colorValues:s}}(t);this.options.colorLevels=l.colorLevels,this.options.colorValues=l.colorValues,this.textLabels=[].concat.apply([],t.text),this.heatmap.update(this.options);var c,u,h=this.scene.xaxis,f=this.scene.yaxis;!1===t.zsmooth&&(c={ppad:r.x[1]-r.x[0]},u={ppad:r.y[1]-r.y[0]}),t._extremes[h._id]=a.findExtremes(h,r.x,c),t._extremes[f._id]=a.findExtremes(f,r.y,u)},s.dispose=function(){this.heatmap.dispose()},e.exports=function(t,e,r){var n=new o(t,e.uid);return n.update(e,r),n}},{\"../../lib/str2rgbarray\":772,\"../../plots/cartesian/axes\":798,\"gl-heatmap2d\":268}],1052:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../heatmap/xyz_defaults\"),i=t(\"../../components/colorscale/defaults\"),o=t(\"./attributes\");e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,o,r,a)}a(t,e,l,s)?(l(\"text\"),l(\"zsmooth\"),i(t,e,s,l,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"../heatmap/xyz_defaults\":1049,\"./attributes\":1050}],1053:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../heatmap/colorbar\"),calc:t(\"../heatmap/calc\"),plot:t(\"./convert\"),moduleType:\"trace\",name:\"heatmapgl\",basePlotModule:t(\"../../plots/gl2d\"),categories:[\"gl\",\"gl2d\",\"2dMap\"],meta:{}}},{\"../../plots/gl2d\":838,\"../heatmap/calc\":1036,\"../heatmap/colorbar\":1038,\"./attributes\":1050,\"./convert\":1051,\"./defaults\":1052}],1054:[function(t,e,r){\"use strict\";var n=t(\"../bar/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"./bin_attributes\"),o=t(\"./constants\"),s=t(\"../../lib/extend\").extendFlat;e.exports={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},text:s({},n.text,{}),hovertext:s({},n.hovertext,{}),orientation:n.orientation,histfunc:{valType:\"enumerated\",values:[\"count\",\"sum\",\"avg\",\"min\",\"max\"],dflt:\"count\",editType:\"calc\"},histnorm:{valType:\"enumerated\",values:[\"\",\"percent\",\"probability\",\"density\",\"probability density\"],dflt:\"\",editType:\"calc\"},cumulative:{enabled:{valType:\"boolean\",dflt:!1,editType:\"calc\"},direction:{valType:\"enumerated\",values:[\"increasing\",\"decreasing\"],dflt:\"increasing\",editType:\"calc\"},currentbin:{valType:\"enumerated\",values:[\"include\",\"exclude\",\"half\"],dflt:\"include\",editType:\"calc\"},editType:\"calc\"},nbinsx:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},xbins:i(\"x\",!0),nbinsy:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},ybins:i(\"y\",!0),autobinx:{valType:\"boolean\",dflt:null,editType:\"calc\"},autobiny:{valType:\"boolean\",dflt:null,editType:\"calc\"},bingroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},hovertemplate:a({},{keys:o.eventDataKeys}),marker:n.marker,offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:n.selected,unselected:n.unselected,_deprecated:{bardir:n._deprecated.bardir}}},{\"../../lib/extend\":739,\"../../plots/template_attributes\":876,\"../bar/attributes\":891,\"./bin_attributes\":1056,\"./constants\":1060}],1055:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=t.length,n=0,a=0;a<r;a++)e[a]?(t[a]/=e[a],n+=t[a]):t[a]=null;return n}},{}],1056:[function(t,e,r){\"use strict\";e.exports=function(t,e){return{start:{valType:\"any\",editType:\"calc\"},end:{valType:\"any\",editType:\"calc\"},size:{valType:\"any\",editType:\"calc\"},editType:\"calc\"}}},{}],1057:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\");e.exports={count:function(t,e,r){return r[t]++,1},sum:function(t,e,r,a){var i=a[e];return n(i)?(i=Number(i),r[t]+=i,i):0},avg:function(t,e,r,a,i){var o=a[e];return n(o)&&(o=Number(o),r[t]+=o,i[t]++),0},min:function(t,e,r,a){var i=a[e];if(n(i)){if(i=Number(i),!n(r[t]))return r[t]=i,i;if(r[t]>i){var o=i-r[t];return r[t]=i,o}}return 0},max:function(t,e,r,a){var i=a[e];if(n(i)){if(i=Number(i),!n(r[t]))return r[t]=i,i;if(r[t]<i){var o=i-r[t];return r[t]=i,o}}return 0}}},{\"fast-isnumeric\":241}],1058:[function(t,e,r){\"use strict\";var n=t(\"../../constants/numerical\"),a=n.ONEAVGYEAR,i=n.ONEAVGMONTH,o=n.ONEDAY,s=n.ONEHOUR,l=n.ONEMIN,c=n.ONESEC,u=t(\"../../plots/cartesian/axes\").tickIncrement;function h(t,e,r,n){if(t*e<=0)return 1/0;for(var a=Math.abs(e-t),i=\"date\"===r.type,o=f(a,i),s=0;s<10;s++){var l=f(80*o,i);if(o===l)break;if(!p(l,t,e,i,r,n))break;o=l}return o}function f(t,e){return e&&t>c?t>o?t>1.1*a?a:t>1.1*i?i:o:t>s?s:t>l?l:c:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function p(t,e,r,n,i,s){if(n&&t>o){var l=d(e,i,s),c=d(r,i,s),u=t===a?0:1;return l[u]!==c[u]}return Math.floor(r/t)-Math.floor(e/t)>.1}function d(t,e,r){var n=e.c2d(t,a,r).split(\"-\");return\"\"===n[0]&&(n.unshift(),n[0]=\"-\"+n[0]),n}e.exports=function(t,e,r,n,i){var s,l,c=-1.1*e,f=-.1*e,p=t-f,d=r[0],g=r[1],m=Math.min(h(d+f,d+p,n,i),h(g+f,g+p,n,i)),v=Math.min(h(d+c,d+f,n,i),h(g+c,g+f,n,i));if(m>v&&v<Math.abs(g-d)/4e3?(s=m,l=!1):(s=Math.min(m,v),l=!0),\"date\"===n.type&&s>o){var y=s===a?1:6,x=s===a?\"M12\":\"M1\";return function(e,r){var o=n.c2d(e,a,i),s=o.indexOf(\"-\",y);s>0&&(o=o.substr(0,s));var c=n.d2c(o,0,i);if(c<e){var h=u(c,x,!1,i);(c+h)/2<e+t&&(c=h)}return r&&l?u(c,x,!0,i):c}}return function(e,r){var n=s*Math.round(e/s);return n+s/10<e&&n+.9*s<e+t&&(n+=s),r&&l&&(n-=s),n}}},{\"../../constants/numerical\":724,\"../../plots/cartesian/axes\":798}],1059:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../registry\"),o=t(\"../../plots/cartesian/axes\"),s=t(\"../bar/arrays_to_calcdata\"),l=t(\"./bin_functions\"),c=t(\"./norm_functions\"),u=t(\"./average\"),h=t(\"./bin_label_vals\");function f(t,e,r,s,l){var c,u,h,p,d,g,m,v=s+\"bins\",y=t._fullLayout,x=e[\"_\"+s+\"bingroup\"],b=y._histogramBinOpts[x],_=\"overlay\"===y.barmode,w=function(t){return r.r2c(t,0,p)},T=function(t){return r.c2r(t,0,p)},k=\"date\"===r.type?function(t){return t||0===t?a.cleanDate(t,null,p):null}:function(t){return n(t)?Number(t):null};function M(t,e,r){e[t+\"Found\"]?(e[t]=k(e[t]),null===e[t]&&(e[t]=r[t])):(g[t]=e[t]=r[t],a.nestedProperty(u[0],v+\".\"+t).set(r[t]))}if(e[\"_\"+s+\"autoBinFinished\"])delete e[\"_\"+s+\"autoBinFinished\"];else{u=b.traces;var A=[],S=!0,E=!1,C=!1;for(c=0;c<u.length;c++)if((h=u[c]).visible){var L=b.dirs[c];d=h[\"_\"+L+\"pos0\"]=r.makeCalcdata(h,L),A=a.concat(A,d),delete h[\"_\"+s+\"autoBinFinished\"],!0===e.visible&&(S?S=!1:(delete h._autoBin,h[\"_\"+s+\"autoBinFinished\"]=1),i.traceIs(h,\"2dMap\")&&(E=!0),\"histogram2dcontour\"===h.type&&(C=!0))}p=u[0][s+\"calendar\"];var P=o.autoBin(A,r,b.nbins,E,p,b.sizeFound&&b.size),I=u[0]._autoBin={};if(g=I[b.dirs[0]]={},C&&(b.size||(P.start=T(o.tickIncrement(w(P.start),P.size,!0,p))),void 0===b.end&&(P.end=T(o.tickIncrement(w(P.end),P.size,!1,p)))),_&&!i.traceIs(e,\"2dMap\")&&0===P._dataSpan&&\"category\"!==r.type&&\"multicategory\"!==r.type){if(l)return[P,d,!0];P=function(t,e,r,n,i){var o,s,l,c=t._fullLayout,u=function(t,e){for(var r=e.xaxis,n=e.yaxis,a=e.orientation,i=[],o=t._fullData,s=0;s<o.length;s++){var l=o[s];\"histogram\"===l.type&&!0===l.visible&&l.orientation===a&&l.xaxis===r&&l.yaxis===n&&i.push(l)}return i}(t,e),h=!1,p=1/0,d=[e];for(o=0;o<u.length;o++)if((s=u[o])===e)h=!0;else if(h){var g=f(t,s,r,n,!0),m=g[0],v=g[2];s[\"_\"+n+\"autoBinFinished\"]=1,s[\"_\"+n+\"pos0\"]=g[1],v?d.push(s):p=Math.min(p,m.size)}else l=c._histogramBinOpts[s[\"_\"+n+\"bingroup\"]],p=Math.min(p,l.size||s[i].size);var y=new Array(d.length);for(o=0;o<d.length;o++)for(var x=d[o][\"_\"+n+\"pos0\"],b=0;b<x.length;b++)if(void 0!==x[b]){y[o]=x[b];break}isFinite(p)||(p=a.distinctVals(y).minDiff);for(o=0;o<d.length;o++){var _=(s=d[o])[n+\"calendar\"],w={start:r.c2r(y[o]-p/2,0,_),end:r.c2r(y[o]+p/2,0,_),size:p};s._input[i]=s[i]=w,(l=c._histogramBinOpts[s[\"_\"+n+\"bingroup\"]])&&a.extendFlat(l,w)}return e[i]}(t,e,r,s,v)}(m=h.cumulative||{}).enabled&&\"include\"!==m.currentbin&&(\"decreasing\"===m.direction?P.start=T(o.tickIncrement(w(P.start),P.size,!0,p)):P.end=T(o.tickIncrement(w(P.end),P.size,!1,p))),b.size=P.size,b.sizeFound||(g.size=P.size,a.nestedProperty(u[0],v+\".size\").set(P.size)),M(\"start\",b,P),M(\"end\",b,P)}d=e[\"_\"+s+\"pos0\"],delete e[\"_\"+s+\"pos0\"];var z=e._input[v]||{},O=a.extendFlat({},b),D=b.start,R=r.r2l(z.start),F=void 0!==R;if((b.startFound||F)&&R!==r.r2l(D)){var B=F?R:a.aggNums(Math.min,null,d),N={type:\"category\"===r.type||\"multicategory\"===r.type?\"linear\":r.type,r2l:r.r2l,dtick:b.size,tick0:D,calendar:p,range:[B,o.tickIncrement(B,b.size,!1,p)].map(r.l2r)},j=o.tickFirst(N);j>r.r2l(B)&&(j=o.tickIncrement(j,b.size,!0,p)),O.start=r.l2r(j),F||a.nestedProperty(e,v+\".start\").set(O.start)}var U=b.end,V=r.r2l(z.end),q=void 0!==V;if((b.endFound||q)&&V!==r.r2l(U)){var H=q?V:a.aggNums(Math.max,null,d);O.end=r.l2r(H),q||a.nestedProperty(e,v+\".start\").set(O.end)}var G=\"autobin\"+s;return!1===e._input[G]&&(e._input[v]=a.extendFlat({},e[v]||{}),delete e._input[G],delete e[G]),[O,d]}e.exports={calc:function(t,e){var r,i,p,d,g=[],m=[],v=o.getFromId(t,\"h\"===e.orientation?e.yaxis:e.xaxis),y=\"h\"===e.orientation?\"y\":\"x\",x={x:\"y\",y:\"x\"}[y],b=e[y+\"calendar\"],_=e.cumulative,w=f(t,e,v,y),T=w[0],k=w[1],M=\"string\"==typeof T.size,A=[],S=M?A:T,E=[],C=[],L=[],P=0,I=e.histnorm,z=e.histfunc,O=-1!==I.indexOf(\"density\");_.enabled&&O&&(I=I.replace(/ ?density$/,\"\"),O=!1);var D,R=\"max\"===z||\"min\"===z?null:0,F=l.count,B=c[I],N=!1,j=function(t){return v.r2c(t,0,b)};for(a.isArrayOrTypedArray(e[x])&&\"count\"!==z&&(D=e[x],N=\"avg\"===z,F=l[z]),r=j(T.start),p=j(T.end)+(r-o.tickIncrement(r,T.size,!1,b))/1e6;r<p&&g.length<1e6&&(i=o.tickIncrement(r,T.size,!1,b),g.push((r+i)/2),m.push(R),L.push([]),A.push(r),O&&E.push(1/(i-r)),N&&C.push(0),!(i<=r));)r=i;A.push(r),M||\"date\"!==v.type||(S={start:j(S.start),end:j(S.end),size:S.size}),t._fullLayout._roundFnOpts||(t._fullLayout._roundFnOpts={});var U=e[\"_\"+y+\"bingroup\"],V={leftGap:1/0,rightGap:1/0};U&&(t._fullLayout._roundFnOpts[U]||(t._fullLayout._roundFnOpts[U]=V),V=t._fullLayout._roundFnOpts[U]);var q,H=m.length,G=!0,Y=V.leftGap,W=V.rightGap,Z={};for(r=0;r<k.length;r++){var X=k[r];(d=a.findBin(X,S))>=0&&d<H&&(P+=F(d,r,m,D,C),G&&L[d].length&&X!==k[L[d][0]]&&(G=!1),L[d].push(r),Z[r]=d,Y=Math.min(Y,X-A[d]),W=Math.min(W,A[d+1]-X))}V.leftGap=Y,V.rightGap=W,G||(q=function(e,r){return function(){var n=t._fullLayout._roundFnOpts[U];return h(n.leftGap,n.rightGap,A,v,b)(e,r)}}),N&&(P=u(m,C)),B&&B(m,P,E),_.enabled&&function(t,e,r){var n,a,i;function o(e){i=t[e],t[e]/=2}function s(e){a=t[e],t[e]=i+a/2,i+=a}if(\"half\"===r)if(\"increasing\"===e)for(o(0),n=1;n<t.length;n++)s(n);else for(o(t.length-1),n=t.length-2;n>=0;n--)s(n);else if(\"increasing\"===e){for(n=1;n<t.length;n++)t[n]+=t[n-1];\"exclude\"===r&&(t.unshift(0),t.pop())}else{for(n=t.length-2;n>=0;n--)t[n]+=t[n+1];\"exclude\"===r&&(t.push(0),t.shift())}}(m,_.direction,_.currentbin);var J=Math.min(g.length,m.length),K=[],Q=0,$=J-1;for(r=0;r<J;r++)if(m[r]){Q=r;break}for(r=J-1;r>=Q;r--)if(m[r]){$=r;break}for(r=Q;r<=$;r++)if(n(g[r])&&n(m[r])){var tt={p:g[r],s:m[r],b:0};_.enabled||(tt.pts=L[r],G?tt.ph0=tt.ph1=L[r].length?k[L[r][0]]:g[r]:(e._computePh=!0,tt.ph0=q(A[r]),tt.ph1=q(A[r+1],!0))),K.push(tt)}return 1===K.length&&(K[0].width1=o.tickIncrement(K[0].p,T.size,!1,b)-K[0].p),s(K,e),a.isArrayOrTypedArray(e.selectedpoints)&&a.tagSelected(K,e,Z),K},calcAllAutoBins:f}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../registry\":881,\"../bar/arrays_to_calcdata\":890,\"./average\":1055,\"./bin_functions\":1057,\"./bin_label_vals\":1058,\"./norm_functions\":1066,\"fast-isnumeric\":241}],1060:[function(t,e,r){\"use strict\";e.exports={eventDataKeys:[\"binNumber\"]}},{}],1061:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axis_ids\"),i=t(\"../../registry\").traceIs,o=t(\"../bar/defaults\").handleGroupingDefaults,s=n.nestedProperty,l=a.getAxisGroup,c=[{aStr:{x:\"xbins.start\",y:\"ybins.start\"},name:\"start\"},{aStr:{x:\"xbins.end\",y:\"ybins.end\"},name:\"end\"},{aStr:{x:\"xbins.size\",y:\"ybins.size\"},name:\"size\"},{aStr:{x:\"nbinsx\",y:\"nbinsy\"},name:\"nbins\"}],u=[\"x\",\"y\"];e.exports=function(t,e){var r,h,f,p,d,g,m,v=e._histogramBinOpts={},y=[],x={},b=[];function _(t,e){return n.coerce(r._input,r,r._module.attributes,t,e)}function w(t){return\"v\"===t.orientation?\"x\":\"y\"}function T(t,r,i){var o=t.uid+\"__\"+i;r||(r=o);var s=function(t,r){return a.getFromTrace({_fullLayout:e},t,r).type}(t,i),l=t[i+\"calendar\"]||\"\",c=v[r],u=!0;c&&(s===c.axType&&l===c.calendar?(u=!1,c.traces.push(t),c.dirs.push(i)):(r=o,s!==c.axType&&n.warn([\"Attempted to group the bins of trace\",t.index,\"set on a\",\"type:\"+s,\"axis\",\"with bins on\",\"type:\"+c.axType,\"axis.\"].join(\" \")),l!==c.calendar&&n.warn([\"Attempted to group the bins of trace\",t.index,\"set with a\",l,\"calendar\",\"with bins\",c.calendar?\"on a \"+c.calendar+\" calendar\":\"w/o a set calendar\"].join(\" \")))),u&&(v[r]={traces:[t],dirs:[i],axType:s,calendar:t[i+\"calendar\"]||\"\"}),t[\"_\"+i+\"bingroup\"]=r}for(d=0;d<t.length;d++)r=t[d],i(r,\"histogram\")&&(y.push(r),delete r._xautoBinFinished,delete r._yautoBinFinished,i(r,\"2dMap\")||o(r._input,r,e,_));var k=e._alignmentOpts||{};for(d=0;d<y.length;d++){if(r=y[d],f=\"\",!i(r,\"2dMap\")){if(p=w(r),\"group\"===e.barmode&&r.alignmentgroup){var M=r[p+\"axis\"],A=l(e,M)+r.orientation;(k[A]||{})[r.alignmentgroup]&&(f=A)}f||\"overlay\"===e.barmode||(f=l(e,r.xaxis)+l(e,r.yaxis)+w(r))}f?(x[f]||(x[f]=[]),x[f].push(r)):b.push(r)}for(f in x)if(1!==(h=x[f]).length){var S=!1;for(d=0;d<h.length;d++){r=h[d],S=_(\"bingroup\");break}for(f=S||f,d=0;d<h.length;d++){var E=(r=h[d])._input.bingroup;E&&E!==f&&n.warn([\"Trace\",r.index,\"must match\",\"within bingroup\",f+\".\",\"Ignoring its bingroup:\",E,\"setting.\"].join(\" \")),r.bingroup=f,T(r,f,w(r))}}else b.push(h[0]);for(d=0;d<b.length;d++){r=b[d];var C=_(\"bingroup\");if(i(r,\"2dMap\"))for(m=0;m<2;m++){var L=_((p=u[m])+\"bingroup\",C?C+\"__\"+p:null);T(r,L,p)}else T(r,C,w(r))}for(f in v){var P=v[f];for(h=P.traces,g=0;g<c.length;g++){var I,z,O=c[g],D=O.name;if(\"nbins\"!==D||!P.sizeFound){for(d=0;d<h.length;d++){if(r=h[d],p=P.dirs[d],I=O.aStr[p],void 0!==s(r._input,I).get()){P[D]=_(I),P[D+\"Found\"]=!0;break}(z=(r._autoBin||{})[p]||{})[D]&&s(r,I).set(z[D])}if(\"start\"===D||\"end\"===D)for(;d<h.length;d++)(r=h[d])[\"_\"+p+\"bingroup\"]&&_(I,(z=(r._autoBin||{})[p]||{})[D]);\"nbins\"!==D||P.sizeFound||P.nbinsFound||(r=h[0],P[D]=_(I))}}}}},{\"../../lib\":749,\"../../plots/cartesian/axis_ids\":801,\"../../registry\":881,\"../bar/defaults\":895}],1062:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../components/color\"),o=t(\"../bar/style_defaults\"),s=t(\"./attributes\");e.exports=function(t,e,r,l){function c(r,n){return a.coerce(t,e,s,r,n)}var u=c(\"x\"),h=c(\"y\");c(\"cumulative.enabled\")&&(c(\"cumulative.direction\"),c(\"cumulative.currentbin\")),c(\"text\"),c(\"hovertext\"),c(\"hovertemplate\");var f=c(\"orientation\",h&&!u?\"h\":\"v\"),p=\"v\"===f?\"x\":\"y\",d=\"v\"===f?\"y\":\"x\",g=u&&h?Math.min(a.minRowLength(u)&&a.minRowLength(h)):a.minRowLength(e[p]||[]);if(g){e._length=g,n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],l),e[d]&&c(\"histfunc\"),c(\"histnorm\"),c(\"autobin\"+p),o(t,e,c,r,l),a.coerceSelectionMarkerOpacity(e,c);var m=(e.marker.line||{}).color,v=n.getComponentMethod(\"errorbars\",\"supplyDefaults\");v(t,e,m||i.defaultLine,{axis:\"y\"}),v(t,e,m||i.defaultLine,{axis:\"x\",inherit:\"y\"})}else e.visible=!1}},{\"../../components/color\":615,\"../../lib\":749,\"../../registry\":881,\"../bar/style_defaults\":906,\"./attributes\":1054}],1063:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){if(t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,\"zLabelVal\"in e&&(t.z=e.zLabelVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),!(r.cumulative||{}).enabled){var i,o=Array.isArray(a)?n[0].pts[a[0]][a[1]]:n[a].pts;if(t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex,r._indexToPoints){i=[];for(var s=0;s<o.length;s++)i=i.concat(r._indexToPoints[o[s]])}else i=o;t.pointIndices=i}return t}},{}],1064:[function(t,e,r){\"use strict\";var n=t(\"../bar/hover\").hoverPoints,a=t(\"../../plots/cartesian/axes\").hoverLabelText;e.exports=function(t,e,r,i){var o=n(t,e,r,i);if(o){var s=(t=o[0]).cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var c=\"h\"===l.orientation?\"y\":\"x\";t[c+\"Label\"]=a(t[c+\"a\"],s.ph0,s.ph1)}return o}}},{\"../../plots/cartesian/axes\":798,\"../bar/hover\":898}],1065:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"../bar/layout_attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"./cross_trace_defaults\"),supplyLayoutDefaults:t(\"../bar/layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"../bar/cross_trace_calc\").crossTraceCalc,plot:t(\"../bar/plot\").plot,layerName:\"barlayer\",style:t(\"../bar/style\").style,styleOnSelect:t(\"../bar/style\").styleOnSelect,colorbar:t(\"../scatter/marker_colorbar\"),hoverPoints:t(\"./hover\"),selectPoints:t(\"../bar/select\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"histogram\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"bar\",\"histogram\",\"oriented\",\"errorBarsOK\",\"showLegend\"],meta:{}}},{\"../../plots/cartesian\":811,\"../bar/cross_trace_calc\":894,\"../bar/layout_attributes\":900,\"../bar/layout_defaults\":901,\"../bar/plot\":902,\"../bar/select\":903,\"../bar/style\":905,\"../scatter/marker_colorbar\":1174,\"./attributes\":1054,\"./calc\":1059,\"./cross_trace_defaults\":1061,\"./defaults\":1062,\"./event_data\":1063,\"./hover\":1064}],1066:[function(t,e,r){\"use strict\";e.exports={percent:function(t,e){for(var r=t.length,n=100/e,a=0;a<r;a++)t[a]*=n},probability:function(t,e){for(var r=t.length,n=0;n<r;n++)t[n]/=e},density:function(t,e,r,n){var a=t.length;n=n||1;for(var i=0;i<a;i++)t[i]*=r[i]*n},\"probability density\":function(t,e,r,n){var a=t.length;n&&(e/=n);for(var i=0;i<a;i++)t[i]*=r[i]/e}}},{}],1067:[function(t,e,r){\"use strict\";var n=t(\"../histogram/attributes\"),a=t(\"../histogram/bin_attributes\"),i=t(\"../heatmap/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../plots/template_attributes\").hovertemplateAttrs,l=t(\"../../components/colorscale/attributes\"),c=t(\"../../lib/extend\").extendFlat;e.exports=c({x:n.x,y:n.y,z:{valType:\"data_array\",editType:\"calc\"},marker:{color:{valType:\"data_array\",editType:\"calc\"},editType:\"calc\"},histnorm:n.histnorm,histfunc:n.histfunc,nbinsx:n.nbinsx,xbins:a(\"x\"),nbinsy:n.nbinsy,ybins:a(\"y\"),autobinx:n.autobinx,autobiny:n.autobiny,bingroup:c({},n.bingroup,{}),xbingroup:c({},n.bingroup,{}),ybingroup:c({},n.bingroup,{}),xgap:i.xgap,ygap:i.ygap,zsmooth:i.zsmooth,zhoverformat:i.zhoverformat,hovertemplate:s({},{keys:\"z\"}),showlegend:c({},o.showlegend,{dflt:!1})},l(\"\",{cLetter:\"z\",autoColorDflt:!1}))},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../heatmap/attributes\":1035,\"../histogram/attributes\":1054,\"../histogram/bin_attributes\":1056}],1068:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../histogram/bin_functions\"),o=t(\"../histogram/norm_functions\"),s=t(\"../histogram/average\"),l=t(\"../histogram/bin_label_vals\"),c=t(\"../histogram/calc\").calcAllAutoBins;function u(t,e,r,n){var a,i=new Array(t);if(n)for(a=0;a<t;a++)i[a]=1/(e[a+1]-e[a]);else{var o=1/r;for(a=0;a<t;a++)i[a]=o}return i}function h(t,e){return{start:t(e.start),end:t(e.end),size:e.size}}function f(t,e,r,n,a,i){var o,s=t.length-1,c=new Array(s),u=l(r,n,t,a,i);for(o=0;o<s;o++){var h=(e||[])[o];c[o]=void 0===h?[u(t[o]),u(t[o+1],!0)]:[h,h]}return c}e.exports=function(t,e){var r,l,p,d,g=a.getFromId(t,e.xaxis),m=a.getFromId(t,e.yaxis),v=e.xcalendar,y=e.ycalendar,x=function(t){return g.r2c(t,0,v)},b=function(t){return m.r2c(t,0,y)},_=c(t,e,g,\"x\"),w=_[0],T=_[1],k=c(t,e,m,\"y\"),M=k[0],A=k[1],S=e._length;T.length>S&&T.splice(S,T.length-S),A.length>S&&A.splice(S,A.length-S);var E=[],C=[],L=[],P=\"string\"==typeof w.size,I=\"string\"==typeof M.size,z=[],O=[],D=P?z:w,R=I?O:M,F=0,B=[],N=[],j=e.histnorm,U=e.histfunc,V=-1!==j.indexOf(\"density\"),q=\"max\"===U||\"min\"===U?null:0,H=i.count,G=o[j],Y=!1,W=[],Z=[],X=\"z\"in e?e.z:\"marker\"in e&&Array.isArray(e.marker.color)?e.marker.color:\"\";X&&\"count\"!==U&&(Y=\"avg\"===U,H=i[U]);var J=w.size,K=x(w.start),Q=x(w.end)+(K-a.tickIncrement(K,J,!1,v))/1e6;for(r=K;r<Q;r=a.tickIncrement(r,J,!1,v))C.push(q),z.push(r),Y&&L.push(0);z.push(r);var $,tt=C.length,et=(r-K)/tt,rt=($=K+et/2,g.c2r($,0,v)),nt=M.size,at=b(M.start),it=b(M.end)+(at-a.tickIncrement(at,nt,!1,y))/1e6;for(r=at;r<it;r=a.tickIncrement(r,nt,!1,y)){E.push(C.slice()),O.push(r);var ot=new Array(tt);for(l=0;l<tt;l++)ot[l]=[];N.push(ot),Y&&B.push(L.slice())}O.push(r);var st=E.length,lt=(r-at)/st,ct=function(t){return m.c2r(t,0,y)}(at+lt/2);V&&(W=u(C.length,D,et,P),Z=u(E.length,R,lt,I)),P||\"date\"!==g.type||(D=h(x,D)),I||\"date\"!==m.type||(R=h(b,R));var ut=!0,ht=!0,ft=new Array(tt),pt=new Array(st),dt=1/0,gt=1/0,mt=1/0,vt=1/0;for(r=0;r<S;r++){var yt=T[r],xt=A[r];p=n.findBin(yt,D),d=n.findBin(xt,R),p>=0&&p<tt&&d>=0&&d<st&&(F+=H(p,r,E[d],X,B[d]),N[d][p].push(r),ut&&(void 0===ft[p]?ft[p]=yt:ft[p]!==yt&&(ut=!1)),ht&&(void 0===pt[d]?pt[d]=xt:pt[d]!==xt&&(ht=!1)),dt=Math.min(dt,yt-z[p]),gt=Math.min(gt,z[p+1]-yt),mt=Math.min(mt,xt-O[d]),vt=Math.min(vt,O[d+1]-xt))}if(Y)for(d=0;d<st;d++)F+=s(E[d],B[d]);if(G)for(d=0;d<st;d++)G(E[d],F,W,Z[d]);return{x:T,xRanges:f(z,ut&&ft,dt,gt,g,v),x0:rt,dx:et,y:A,yRanges:f(O,ht&&pt,mt,vt,m,y),y0:ct,dy:lt,z:E,pts:N}}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../histogram/average\":1055,\"../histogram/bin_functions\":1057,\"../histogram/bin_label_vals\":1058,\"../histogram/calc\":1059,\"../histogram/norm_functions\":1066}],1069:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./sample_defaults\"),i=t(\"../heatmap/style_defaults\"),o=t(\"../../components/colorscale/defaults\"),s=t(\"./attributes\");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,s,r,a)}a(t,e,c,l),!1!==e.visible&&(i(t,e,c,l),o(t,e,l,c,{prefix:\"\",cLetter:\"z\"}),c(\"hovertemplate\"))}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"../heatmap/style_defaults\":1048,\"./attributes\":1067,\"./sample_defaults\":1072}],1070:[function(t,e,r){\"use strict\";var n=t(\"../heatmap/hover\"),a=t(\"../../plots/cartesian/axes\").hoverLabelText;e.exports=function(t,e,r,i,o,s){var l=n(t,e,r,i,o,s);if(l){var c=(t=l[0]).index,u=c[0],h=c[1],f=t.cd[0],p=f.xRanges[h],d=f.yRanges[u];return t.xLabel=a(t.xa,p[0],p[1]),t.yLabel=a(t.ya,d[0],d[1]),l}}},{\"../../plots/cartesian/axes\":798,\"../heatmap/hover\":1042}],1071:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"../histogram/cross_trace_defaults\"),calc:t(\"../heatmap/calc\"),plot:t(\"../heatmap/plot\"),layerName:\"heatmaplayer\",colorbar:t(\"../heatmap/colorbar\"),style:t(\"../heatmap/style\"),hoverPoints:t(\"./hover\"),eventData:t(\"../histogram/event_data\"),moduleType:\"trace\",name:\"histogram2d\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"2dMap\",\"histogram\",\"showLegend\"],meta:{}}},{\"../../plots/cartesian\":811,\"../heatmap/calc\":1036,\"../heatmap/colorbar\":1038,\"../heatmap/plot\":1046,\"../heatmap/style\":1047,\"../histogram/cross_trace_defaults\":1061,\"../histogram/event_data\":1063,\"./attributes\":1067,\"./defaults\":1069,\"./hover\":1070}],1072:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\");e.exports=function(t,e,r,i){var o=r(\"x\"),s=r(\"y\"),l=a.minRowLength(o),c=a.minRowLength(s);l&&c?(e._length=Math.min(l,c),n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],i),(r(\"z\")||r(\"marker.color\"))&&r(\"histfunc\"),r(\"histnorm\"),r(\"autobinx\"),r(\"autobiny\")):e.visible=!1}},{\"../../lib\":749,\"../../registry\":881}],1073:[function(t,e,r){\"use strict\";var n=t(\"../histogram2d/attributes\"),a=t(\"../contour/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../lib/extend\").extendFlat;e.exports=o({x:n.x,y:n.y,z:n.z,marker:n.marker,histnorm:n.histnorm,histfunc:n.histfunc,nbinsx:n.nbinsx,xbins:n.xbins,nbinsy:n.nbinsy,ybins:n.ybins,autobinx:n.autobinx,autobiny:n.autobiny,bingroup:n.bingroup,xbingroup:n.xbingroup,ybingroup:n.ybingroup,autocontour:a.autocontour,ncontours:a.ncontours,contours:a.contours,line:{color:a.line.color,width:o({},a.line.width,{dflt:.5}),dash:a.line.dash,smoothing:a.line.smoothing,editType:\"plot\"},zhoverformat:n.zhoverformat,hovertemplate:n.hovertemplate},i(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../contour/attributes\":978,\"../histogram2d/attributes\":1067}],1074:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../histogram2d/sample_defaults\"),i=t(\"../contour/contours_defaults\"),o=t(\"../contour/style_defaults\"),s=t(\"./attributes\");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,s,r,a)}a(t,e,c,l),!1!==e.visible&&(i(t,e,c,(function(r){return n.coerce2(t,e,s,r)})),o(t,e,c,l),c(\"hovertemplate\"))}},{\"../../lib\":749,\"../contour/contours_defaults\":985,\"../contour/style_defaults\":999,\"../histogram2d/sample_defaults\":1072,\"./attributes\":1073}],1075:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"../histogram/cross_trace_defaults\"),calc:t(\"../contour/calc\"),plot:t(\"../contour/plot\").plot,layerName:\"contourlayer\",style:t(\"../contour/style\"),colorbar:t(\"../contour/colorbar\"),hoverPoints:t(\"../contour/hover\"),moduleType:\"trace\",name:\"histogram2dcontour\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"2dMap\",\"contour\",\"histogram\",\"showLegend\"],meta:{}}},{\"../../plots/cartesian\":811,\"../contour/calc\":979,\"../contour/colorbar\":981,\"../contour/hover\":991,\"../contour/plot\":996,\"../contour/style\":998,\"../histogram/cross_trace_defaults\":1061,\"./attributes\":1073,\"./defaults\":1074}],1076:[function(t,e,r){\"use strict\";for(var n=t(\"../../plots/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../../lib/extend\").extendFlat,o=t(\"./constants\").colormodel,s=[\"rgb\",\"rgba\",\"rgba256\",\"hsl\",\"hsla\"],l=[],c=[],u=0;u<s.length;u++){var h=o[s[u]];l.push(\"For the `\"+s[u]+\"` colormodel, it is [\"+(h.zminDflt||h.min).join(\", \")+\"].\"),c.push(\"For the `\"+s[u]+\"` colormodel, it is [\"+(h.zmaxDflt||h.max).join(\", \")+\"].\")}e.exports=i({source:{valType:\"string\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},colormodel:{valType:\"enumerated\",values:s,editType:\"calc\"},zmin:{valType:\"info_array\",items:[{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"}],editType:\"calc\"},zmax:{valType:\"info_array\",items:[{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"}],editType:\"calc\"},x0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},y0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},dx:{valType:\"number\",dflt:1,editType:\"calc\"},dy:{valType:\"number\",dflt:1,editType:\"calc\"},text:{valType:\"data_array\",editType:\"plot\"},hovertext:{valType:\"data_array\",editType:\"plot\"},hoverinfo:i({},n.hoverinfo,{flags:[\"x\",\"y\",\"z\",\"color\",\"name\",\"text\"],dflt:\"x+y+z+text+name\"}),hovertemplate:a({},{keys:[\"z\",\"color\",\"colormodel\"]}),transforms:void 0})},{\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"./constants\":1078}],1077:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./constants\"),i=t(\"fast-isnumeric\"),o=t(\"../../plots/cartesian/axes\"),s=t(\"../../lib\").maxRowLength,l=t(\"image-size\"),c=t(\"../../snapshot/helpers\").IMAGE_URL_PREFIX,u=t(\"buffer/\").Buffer;function h(t,e,r,a){return function(i){return n.constrain((i-t)*e,r,a)}}function f(t,e){return function(r){return n.constrain(r,t,e)}}e.exports=function(t,e){var r,n,p,d,g;if(e._hasZ)r=e.z.length,n=s(e.z);else if(e._hasSource){var m=(p=e.source,d=p.replace(c,\"\"),g=new u(d,\"base64\"),l(g));r=m.height,n=m.width}var v,y=o.getFromId(t,e.xaxis||\"x\"),x=o.getFromId(t,e.yaxis||\"y\"),b=y.d2c(e.x0)-e.dx/2,_=x.d2c(e.y0)-e.dy/2,w=[b,b+n*e.dx],T=[_,_+r*e.dy];if(y&&\"log\"===y.type)for(v=0;v<n;v++)w.push(b+v*e.dx);if(x&&\"log\"===x.type)for(v=0;v<r;v++)T.push(_+v*e.dy);return e._extremes[y._id]=o.findExtremes(y,w),e._extremes[x._id]=o.findExtremes(x,T),e._scaler=function(t){var e=a.colormodel[t.colormodel],r=(e.colormodel||t.colormodel).length;t._sArray=[];for(var n=0;n<r;n++)e.min[n]!==t.zmin[n]||e.max[n]!==t.zmax[n]?t._sArray.push(h(t.zmin[n],(e.max[n]-e.min[n])/(t.zmax[n]-t.zmin[n]),e.min[n],e.max[n])):t._sArray.push(f(e.min[n],e.max[n]));return function(e){for(var n=e.slice(0,r),a=0;a<r;a++){var o=n[a];if(!i(o))return!1;n[a]=t._sArray[a](o)}return n}}(e),[{x0:b,y0:_,z:e.z,w:n,h:r}]}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../../snapshot/helpers\":885,\"./constants\":1078,\"buffer/\":111,\"fast-isnumeric\":241,\"image-size\":418}],1078:[function(t,e,r){\"use strict\";e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(t){return t.slice(0,3)},suffix:[\"\",\"\",\"\"]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:[\"\",\"\",\"\",\"\"]},rgba256:{colormodel:\"rgba\",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:[\"\",\"\",\"\",\"\"]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(t){var e=t.slice(0,3);return e[1]=e[1]+\"%\",e[2]=e[2]+\"%\",e},suffix:[\"\\xb0\",\"%\",\"%\"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(t){var e=t.slice(0,4);return e[1]=e[1]+\"%\",e[2]=e[2]+\"%\",e},suffix:[\"\\xb0\",\"%\",\"%\",\"\"]}}}},{}],1079:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"./constants\"),o=t(\"../../snapshot/helpers\").IMAGE_URL_PREFIX;e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"source\"),e.source&&!e.source.match(o)&&delete e.source,e._hasSource=!!e.source;var s,l=r(\"z\");(e._hasZ=!(void 0===l||!l.length||!l[0]||!l[0].length),e._hasZ||e._hasSource)?(r(\"x0\"),r(\"y0\"),r(\"dx\"),r(\"dy\"),e._hasZ?(r(\"colormodel\",\"rgb\"),r(\"zmin\",(s=i.colormodel[e.colormodel]).zminDflt||s.min),r(\"zmax\",s.zmaxDflt||s.max)):e._hasSource&&(e.colormodel=\"rgba256\",s=i.colormodel[e.colormodel],e.zmin=s.zminDflt,e.zmax=s.zmaxDflt),r(\"text\"),r(\"hovertext\"),r(\"hovertemplate\"),e._length=null):e.visible=!1}},{\"../../lib\":749,\"../../snapshot/helpers\":885,\"./attributes\":1076,\"./constants\":1078}],1080:[function(t,e,r){\"use strict\";e.exports=function(t,e){return\"xVal\"in e&&(t.x=e.xVal),\"yVal\"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t.color=e.color,t.colormodel=e.trace.colormodel,t.z||(t.z=e.color),t}},{}],1081:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../lib\"),i=t(\"./constants\");e.exports=function(t,e,r){var o=t.cd[0],s=o.trace,l=t.xa,c=t.ya;if(!(n.inbox(e-o.x0,e-(o.x0+o.w*s.dx),0)>0||n.inbox(r-o.y0,r-(o.y0+o.h*s.dy),0)>0)){var u,h=Math.floor((e-o.x0)/s.dx),f=Math.floor(Math.abs(r-o.y0)/s.dy);if(s._hasZ?u=o.z[f][h]:s._hasSource&&(u=s._canvas.el.getContext(\"2d\").getImageData(h,f,1,1).data),u){var p,d=o.hi||s.hoverinfo;if(d){var g=d.split(\"+\");-1!==g.indexOf(\"all\")&&(g=[\"color\"]),-1!==g.indexOf(\"color\")&&(p=!0)}var m,v=i.colormodel[s.colormodel],y=v.colormodel||s.colormodel,x=y.length,b=s._scaler(u),_=v.suffix,w=[];(s.hovertemplate||p)&&(w.push(\"[\"+[b[0]+_[0],b[1]+_[1],b[2]+_[2]].join(\", \")),4===x&&w.push(\", \"+b[3]+_[3]),w.push(\"]\"),w=w.join(\"\"),t.extraText=y.toUpperCase()+\": \"+w),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[f])?m=s.hovertext[f][h]:Array.isArray(s.text)&&Array.isArray(s.text[f])&&(m=s.text[f][h]);var T=c.c2p(o.y0+(f+.5)*s.dy),k=o.x0+(h+.5)*s.dx,M=o.y0+(f+.5)*s.dy,A=\"[\"+u.slice(0,s.colormodel.length).join(\", \")+\"]\";return[a.extendFlat(t,{index:[f,h],x0:l.c2p(o.x0+h*s.dx),x1:l.c2p(o.x0+(h+1)*s.dx),y0:T,y1:T,color:b,xVal:k,xLabelVal:k,yVal:M,yLabelVal:M,zLabelVal:A,text:m,hovertemplateLabels:{zLabel:A,colorLabel:w,\"color[0]Label\":b[0]+_[0],\"color[1]Label\":b[1]+_[1],\"color[2]Label\":b[2]+_[2],\"color[3]Label\":b[3]+_[3]}})]}}}},{\"../../components/fx\":655,\"../../lib\":749,\"./constants\":1078}],1082:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"./style\"),hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"image\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"2dMap\",\"noSortingByValue\"],animatable:!1,meta:{}}},{\"../../plots/cartesian\":811,\"./attributes\":1076,\"./calc\":1077,\"./defaults\":1079,\"./event_data\":1080,\"./hover\":1081,\"./plot\":1083,\"./style\":1084}],1083:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../constants/xmlns_namespaces\"),o=t(\"./constants\"),s=a.isIOS()||a.isSafari()||a.isIE();function l(t){return\"linear\"===t.type&&t.range[1]>t.range[0]==(\"x\"===t._id.charAt(0))}e.exports=function(t,e,r,c){var u=e.xaxis,h=e.yaxis,f=!(s||t._context._exportedPlot);a.makeTraceGroups(c,r,\"im\").each((function(e){var r=n.select(this),s=e[0],c=s.trace,p=f&&!c._hasZ&&c._hasSource&&l(u)&&l(h);c._fastImage=p;var d,g,m,v,y,x,b=s.z,_=s.x0,w=s.y0,T=s.w,k=s.h,M=c.dx,A=c.dy;for(x=0;void 0===d&&x<T;)d=u.c2p(_+x*M),x++;for(x=T;void 0===g&&x>0;)g=u.c2p(_+x*M),x--;for(x=0;void 0===v&&x<k;)v=h.c2p(w+x*A),x++;for(x=k;void 0===y&&x>0;)y=h.c2p(w+x*A),x--;if(g<d&&(m=g,g=d,d=m),y<v&&(m=v,v=y,y=m),!p){d=Math.max(-.5*u._length,d),g=Math.min(1.5*u._length,g),v=Math.max(-.5*h._length,v),y=Math.min(1.5*h._length,y)}var S=Math.round(g-d),E=Math.round(y-v);if(S<=0||E<=0){r.selectAll(\"image\").data([]).exit().remove()}else{var C=r.selectAll(\"image\").data([e]);C.enter().append(\"svg:image\").attr({xmlns:i.svg,preserveAspectRatio:\"none\"}),C.exit().remove(),C.attr(\"style\",\"image-rendering: optimizeSpeed; image-rendering: -moz-crisp-edges; image-rendering: -o-crisp-edges; image-rendering: -webkit-optimize-contrast; image-rendering: optimize-contrast; image-rendering: crisp-edges; image-rendering: pixelated;\");var L=new Promise((function(t){if(c._hasZ)t();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===T&&c._canvas.el.height===k&&c._canvas.source===c.source)t();else{var e=document.createElement(\"canvas\");e.width=T,e.height=k;var r=e.getContext(\"2d\");c._image=c._image||new Image;var n=c._image;n.onload=function(){r.drawImage(n,0,0),c._canvas={el:e,source:c.source},t()},n.setAttribute(\"src\",c.source)}})).then((function(){var t;if(c._hasZ)t=P((function(t,e){return b[e][t]})).toDataURL(\"image/png\");else if(c._hasSource)if(p)t=c.source;else{var e=c._canvas.el.getContext(\"2d\").getImageData(0,0,T,k).data;t=P((function(t,r){var n=4*(r*T+t);return[e[n],e[n+1],e[n+2],e[n+3]]})).toDataURL(\"image/png\")}C.attr({\"xlink:href\":t,height:E,width:S,x:d,y:v})}));t._promises.push(L)}function P(t){var e=document.createElement(\"canvas\");e.width=S,e.height=E;var r,n=e.getContext(\"2d\"),i=function(t){return a.constrain(Math.round(u.c2p(_+t*M)-d),0,S)},l=function(t){return a.constrain(Math.round(h.c2p(w+t*A)-v),0,E)},f=o.colormodel[c.colormodel],p=f.colormodel||c.colormodel,g=f.fmt;for(x=0;x<s.w;x++){var m=i(x),y=i(x+1);if(y!==m&&!isNaN(y)&&!isNaN(m))for(var b=0;b<s.h;b++){var T=l(b),k=l(b+1);k===T||isNaN(k)||isNaN(T)||!t(x,b)||(r=c._scaler(t(x,b)),n.fillStyle=r?p+\"(\"+g(r).join(\",\")+\")\":\"rgba(0,0,0,0)\",n.fillRect(m,T,y-m,k-T))}}return e}}))}},{\"../../constants/xmlns_namespaces\":725,\"../../lib\":749,\"./constants\":1078,d3:169}],1084:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports=function(t){n.select(t).selectAll(\".im image\").style(\"opacity\",(function(t){return t[0].trace.opacity}))}},{d3:169}],1085:[function(t,e,r){\"use strict\";var n=t(\"../../lib/extend\").extendFlat,a=t(\"../../lib/extend\").extendDeep,i=t(\"../../plot_api/edit_types\").overrideAll,o=t(\"../../plots/font_attributes\"),s=t(\"../../components/color/attributes\"),l=t(\"../../plots/domain\").attributes,c=t(\"../../plots/cartesian/layout_attributes\"),u=t(\"../../plot_api/plot_template\").templatedArray,h=t(\"../../constants/delta.js\"),f=(t(\"../../constants/docs\").FORMAT_LINK,o({editType:\"plot\",colorEditType:\"plot\"})),p={color:{valType:\"color\",editType:\"plot\"},line:{color:{valType:\"color\",dflt:s.defaultLine,editType:\"plot\"},width:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"calc\"},thickness:{valType:\"number\",min:0,max:1,dflt:1,editType:\"plot\"},editType:\"calc\"},d={valType:\"info_array\",items:[{valType:\"number\",editType:\"plot\"},{valType:\"number\",editType:\"plot\"}],editType:\"plot\"},g=u(\"step\",a({},p,{range:d}));e.exports={mode:{valType:\"flaglist\",editType:\"calc\",flags:[\"number\",\"delta\",\"gauge\"],dflt:\"number\"},value:{valType:\"number\",editType:\"calc\",anim:!0},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],editType:\"plot\"},domain:l({name:\"indicator\",trace:!0,editType:\"calc\"}),title:{text:{valType:\"string\",editType:\"plot\"},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],editType:\"plot\"},font:n({},f,{}),editType:\"plot\"},number:{valueformat:{valType:\"string\",dflt:\"\",editType:\"plot\"},font:n({},f,{}),prefix:{valType:\"string\",dflt:\"\",editType:\"plot\"},suffix:{valType:\"string\",dflt:\"\",editType:\"plot\"},editType:\"plot\"},delta:{reference:{valType:\"number\",editType:\"calc\"},position:{valType:\"enumerated\",values:[\"top\",\"bottom\",\"left\",\"right\"],dflt:\"bottom\",editType:\"plot\"},relative:{valType:\"boolean\",editType:\"plot\",dflt:!1},valueformat:{valType:\"string\",editType:\"plot\"},increasing:{symbol:{valType:\"string\",dflt:h.INCREASING.SYMBOL,editType:\"plot\"},color:{valType:\"color\",dflt:h.INCREASING.COLOR,editType:\"plot\"},editType:\"plot\"},decreasing:{symbol:{valType:\"string\",dflt:h.DECREASING.SYMBOL,editType:\"plot\"},color:{valType:\"color\",dflt:h.DECREASING.COLOR,editType:\"plot\"},editType:\"plot\"},font:n({},f,{}),editType:\"calc\"},gauge:{shape:{valType:\"enumerated\",editType:\"plot\",dflt:\"angular\",values:[\"angular\",\"bullet\"]},bar:a({},p,{color:{dflt:\"green\"}}),bgcolor:{valType:\"color\",editType:\"plot\"},bordercolor:{valType:\"color\",dflt:s.defaultLine,editType:\"plot\"},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},axis:i({range:d,visible:n({},c.visible,{dflt:!0}),tickmode:c.tickmode,nticks:c.nticks,tick0:c.tick0,dtick:c.dtick,tickvals:c.tickvals,ticktext:c.ticktext,ticks:n({},c.ticks,{dflt:\"outside\"}),ticklen:c.ticklen,tickwidth:c.tickwidth,tickcolor:c.tickcolor,showticklabels:c.showticklabels,tickfont:o({}),tickangle:c.tickangle,tickformat:c.tickformat,tickformatstops:c.tickformatstops,tickprefix:c.tickprefix,showtickprefix:c.showtickprefix,ticksuffix:c.ticksuffix,showticksuffix:c.showticksuffix,separatethousands:c.separatethousands,exponentformat:c.exponentformat,minexponent:c.minexponent,showexponent:c.showexponent,editType:\"plot\"},\"plot\"),steps:g,threshold:{line:{color:n({},p.line.color,{}),width:n({},p.line.width,{dflt:1}),editType:\"plot\"},thickness:n({},p.thickness,{dflt:.85}),value:{valType:\"number\",editType:\"calc\",dflt:!1},editType:\"plot\"},editType:\"plot\"}}},{\"../../components/color/attributes\":614,\"../../constants/delta.js\":718,\"../../constants/docs\":719,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/layout_attributes\":812,\"../../plots/domain\":825,\"../../plots/font_attributes\":826}],1086:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"indicator\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":861}],1087:[function(t,e,r){\"use strict\";e.exports={calc:function(t,e){var r=[],n=e.value;\"number\"!=typeof e._lastValue&&(e._lastValue=e.value);var a=e._lastValue,i=a;return e._hasDelta&&\"number\"==typeof e.delta.reference&&(i=e.delta.reference),r[0]={y:n,lastY:a,delta:n-i,relativeDelta:(n-i)/i},r}}},{}],1088:[function(t,e,r){\"use strict\";e.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}},{}],1089:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../plots/domain\").defaults,o=t(\"../../plot_api/plot_template\"),s=t(\"../../plots/array_container_defaults\"),l=t(\"./constants.js\"),c=t(\"../../plots/cartesian/tick_value_defaults\"),u=t(\"../../plots/cartesian/tick_mark_defaults\"),h=t(\"../../plots/cartesian/tick_label_defaults\");function f(t,e){function r(r,i){return n.coerce(t,e,a.gauge.steps,r,i)}r(\"color\"),r(\"line.color\"),r(\"line.width\"),r(\"range\"),r(\"thickness\")}e.exports={supplyDefaults:function(t,e,r,p){function d(r,i){return n.coerce(t,e,a,r,i)}i(e,p,d),d(\"mode\"),e._hasNumber=-1!==e.mode.indexOf(\"number\"),e._hasDelta=-1!==e.mode.indexOf(\"delta\"),e._hasGauge=-1!==e.mode.indexOf(\"gauge\");var g=d(\"value\");e._range=[0,\"number\"==typeof g?1.5*g:1];var m,v,y,x,b,_,w=new Array(2);function T(t,e){return n.coerce(y,x,a.gauge,t,e)}function k(t,e){return n.coerce(b,_,a.gauge.axis,t,e)}if(e._hasNumber&&(d(\"number.valueformat\"),d(\"number.font.color\",p.font.color),d(\"number.font.family\",p.font.family),d(\"number.font.size\"),void 0===e.number.font.size&&(e.number.font.size=l.defaultNumberFontSize,w[0]=!0),d(\"number.prefix\"),d(\"number.suffix\"),m=e.number.font.size),e._hasDelta&&(d(\"delta.font.color\",p.font.color),d(\"delta.font.family\",p.font.family),d(\"delta.font.size\"),void 0===e.delta.font.size&&(e.delta.font.size=(e._hasNumber?.5:1)*(m||l.defaultNumberFontSize),w[1]=!0),d(\"delta.reference\",e.value),d(\"delta.relative\"),d(\"delta.valueformat\",e.delta.relative?\"2%\":\"\"),d(\"delta.increasing.symbol\"),d(\"delta.increasing.color\"),d(\"delta.decreasing.symbol\"),d(\"delta.decreasing.color\"),d(\"delta.position\"),v=e.delta.font.size),e._scaleNumbers=(!e._hasNumber||w[0])&&(!e._hasDelta||w[1])||!1,d(\"title.font.color\",p.font.color),d(\"title.font.family\",p.font.family),d(\"title.font.size\",.25*(m||v||l.defaultNumberFontSize)),d(\"title.text\"),e._hasGauge){(y=t.gauge)||(y={}),x=o.newContainer(e,\"gauge\"),T(\"shape\"),(e._isBullet=\"bullet\"===e.gauge.shape)||d(\"title.align\",\"center\"),(e._isAngular=\"angular\"===e.gauge.shape)||d(\"align\",\"center\"),T(\"bgcolor\",p.paper_bgcolor),T(\"borderwidth\"),T(\"bordercolor\"),T(\"bar.color\"),T(\"bar.line.color\"),T(\"bar.line.width\"),T(\"bar.thickness\",l.valueThickness*(\"bullet\"===e.gauge.shape?.5:1)),s(y,x,{name:\"steps\",handleItemDefaults:f}),T(\"threshold.value\"),T(\"threshold.thickness\"),T(\"threshold.line.width\"),T(\"threshold.line.color\"),b={},y&&(b=y.axis||{}),_=o.newContainer(x,\"axis\"),k(\"visible\"),e._range=k(\"range\",e._range);var M={outerTicks:!0};c(b,_,k,\"linear\"),h(b,_,k,\"linear\",M),u(b,_,k,M)}else d(\"title.align\",\"center\"),d(\"align\",\"center\"),e._isAngular=e._isBullet=!1;e._length=null}}},{\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../plots/array_container_defaults\":793,\"../../plots/cartesian/tick_label_defaults\":819,\"../../plots/cartesian/tick_mark_defaults\":820,\"../../plots/cartesian/tick_value_defaults\":821,\"../../plots/domain\":825,\"./attributes\":1085,\"./constants.js\":1088}],1090:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"indicator\",basePlotModule:t(\"./base_plot\"),categories:[\"svg\",\"noOpacity\",\"noHover\"],animatable:!0,attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,calc:t(\"./calc\").calc,plot:t(\"./plot\"),meta:{}}},{\"./attributes\":1085,\"./base_plot\":1086,\"./calc\":1087,\"./defaults\":1089,\"./plot\":1091}],1091:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=a.rad2deg,o=t(\"../../constants/alignment\").MID_SHIFT,s=t(\"../../components/drawing\"),l=t(\"./constants\"),c=t(\"../../lib/svg_text_utils\"),u=t(\"../../plots/cartesian/axes\"),h=t(\"../../plots/cartesian/axis_defaults\"),f=t(\"../../plots/cartesian/position_defaults\"),p=t(\"../../plots/cartesian/layout_attributes\"),d=t(\"../../components/color\"),g={left:\"start\",center:\"middle\",right:\"end\"},m={left:0,center:.5,right:1},v=/[yzafpn\\xb5mkMGTPEZY]/;function y(t){return t&&t.duration>0}function x(t){t.each((function(t){d.stroke(n.select(this),t.line.color)})).each((function(t){d.fill(n.select(this),t.color)})).style(\"stroke-width\",(function(t){return t.line.width}))}function b(t,e,r){var n=t._fullLayout,i=a.extendFlat({type:\"linear\",ticks:\"outside\",range:r,showline:!0},e),o={type:\"linear\",_id:\"x\"+e._id},s={letter:\"x\",font:n.font,noHover:!0,noTickson:!0};function l(t,e){return a.coerce(i,o,p,t,e)}return h(i,o,l,s,n),f(i,o,l,s),o}function _(t,e){return\"translate(\"+t+\",\"+e+\")\"}function w(t,e,r){return[Math.min(e/t.width,r/t.height),t,e+\"x\"+r]}function T(t,e,r,a){var i=document.createElementNS(\"http://www.w3.org/2000/svg\",\"text\"),o=n.select(i);return o.text(t).attr(\"x\",0).attr(\"y\",0).attr(\"text-anchor\",r).attr(\"data-unformatted\",t).call(c.convertToTspans,a).call(s.font,e),s.bBox(o.node())}function k(t,e,r,n,i,o){var s=\"_cache\"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:r});var l=a.aggNums(o,null,[t[s].value,n],2);return t[s].value=l,l}e.exports=function(t,e,r,h){var f,p=t._fullLayout;y(r)&&h&&(f=h()),a.makeTraceGroups(p._indicatorlayer,e,\"trace\").each((function(e){var h,M,A,S,E,C=e[0].trace,L=n.select(this),P=C._hasGauge,I=C._isAngular,z=C._isBullet,O=C.domain,D={w:p._size.w*(O.x[1]-O.x[0]),h:p._size.h*(O.y[1]-O.y[0]),l:p._size.l+p._size.w*O.x[0],r:p._size.r+p._size.w*(1-O.x[1]),t:p._size.t+p._size.h*(1-O.y[1]),b:p._size.b+p._size.h*O.y[0]},R=D.l+D.w/2,F=D.t+D.h/2,B=Math.min(D.w/2,D.h),N=l.innerRadius*B,j=C.align||\"center\";if(M=F,P){if(I&&(h=R,M=F+B/2,A=function(t){return function(t,e){var r=Math.sqrt(t.width/2*(t.width/2)+t.height*t.height);return[e/r,t,e]}(t,.9*N)}),z){var U=l.bulletPadding,V=1-l.bulletNumberDomainSize+U;h=D.l+(V+(1-V)*m[j])*D.w,A=function(t){return w(t,(l.bulletNumberDomainSize-U)*D.w,D.h)}}}else h=D.l+m[j]*D.w,A=function(t){return w(t,D.w,D.h)};!function(t,e,r,i){var o,l,h,f=r[0].trace,p=i.numbersX,x=i.numbersY,w=f.align||\"center\",M=g[w],A=i.transitionOpts,S=i.onComplete,E=a.ensureSingle(e,\"g\",\"numbers\"),C=[];f._hasNumber&&C.push(\"number\");f._hasDelta&&(C.push(\"delta\"),\"left\"===f.delta.position&&C.reverse());var L=E.selectAll(\"text\").data(C);function P(e,r,n,a){if(!e.match(\"s\")||n>=0==a>=0||r(n).slice(-1).match(v)||r(a).slice(-1).match(v))return r;var i=e.slice().replace(\"s\",\"f\").replace(/\\d+/,(function(t){return parseInt(t)-1})),o=b(t,{tickformat:i});return function(t){return Math.abs(t)<1?u.tickText(o,t).text:r(t)}}L.enter().append(\"text\"),L.attr(\"text-anchor\",(function(){return M})).attr(\"class\",(function(t){return t})).attr(\"x\",null).attr(\"y\",null).attr(\"dx\",null).attr(\"dy\",null),L.exit().remove();var I,z=f.mode+f.align;f._hasDelta&&(I=function(){var e=b(t,{tickformat:f.delta.valueformat},f._range);e.setScale(),u.prepTicks(e);var a=function(t){return u.tickText(e,t).text},i=function(t){return f.delta.relative?t.relativeDelta:t.delta},o=function(t,e){return 0===t||\"number\"!=typeof t||isNaN(t)?\"-\":(t>0?f.delta.increasing.symbol:f.delta.decreasing.symbol)+e(t)},h=function(t){return t.delta>=0?f.delta.increasing.color:f.delta.decreasing.color};void 0===f._deltaLastValue&&(f._deltaLastValue=i(r[0]));var p=E.select(\"text.delta\");function g(){p.text(o(i(r[0]),a)).call(d.fill,h(r[0])).call(c.convertToTspans,t)}return p.call(s.font,f.delta.font).call(d.fill,h({delta:f._deltaLastValue})),y(A)?p.transition().duration(A.duration).ease(A.easing).tween(\"text\",(function(){var t=n.select(this),e=i(r[0]),s=f._deltaLastValue,l=P(f.delta.valueformat,a,s,e),c=n.interpolateNumber(s,e);return f._deltaLastValue=e,function(e){t.text(o(c(e),l)),t.call(d.fill,h({delta:c(e)}))}})).each(\"end\",(function(){g(),S&&S()})).each(\"interrupt\",(function(){g(),S&&S()})):g(),l=T(o(i(r[0]),a),f.delta.font,M,t),p}(),z+=f.delta.position+f.delta.font.size+f.delta.font.family+f.delta.valueformat,z+=f.delta.increasing.symbol+f.delta.decreasing.symbol,h=l);f._hasNumber&&(!function(){var e=b(t,{tickformat:f.number.valueformat},f._range);e.setScale(),u.prepTicks(e);var a=function(t){return u.tickText(e,t).text},i=f.number.suffix,l=f.number.prefix,h=E.select(\"text.number\");function p(){var e=\"number\"==typeof r[0].y?l+a(r[0].y)+i:\"-\";h.text(e).call(s.font,f.number.font).call(c.convertToTspans,t)}y(A)?h.transition().duration(A.duration).ease(A.easing).each(\"end\",(function(){p(),S&&S()})).each(\"interrupt\",(function(){p(),S&&S()})).attrTween(\"text\",(function(){var t=n.select(this),e=n.interpolateNumber(r[0].lastY,r[0].y);f._lastValue=r[0].y;var o=P(f.number.valueformat,a,r[0].lastY,r[0].y);return function(r){t.text(l+o(e(r))+i)}})):p(),o=T(l+a(r[0].y)+i,f.number.font,M,t)}(),z+=f.number.font.size+f.number.font.family+f.number.valueformat+f.number.suffix+f.number.prefix,h=o);if(f._hasDelta&&f._hasNumber){var O,D,R=[(o.left+o.right)/2,(o.top+o.bottom)/2],F=[(l.left+l.right)/2,(l.top+l.bottom)/2],B=.75*f.delta.font.size;\"left\"===f.delta.position&&(O=k(f,\"deltaPos\",0,-1*(o.width*m[f.align]+l.width*(1-m[f.align])+B),z,Math.min),D=R[1]-F[1],h={width:o.width+l.width+B,height:Math.max(o.height,l.height),left:l.left+O,right:o.right,top:Math.min(o.top,l.top+D),bottom:Math.max(o.bottom,l.bottom+D)}),\"right\"===f.delta.position&&(O=k(f,\"deltaPos\",0,o.width*(1-m[f.align])+l.width*m[f.align]+B,z,Math.max),D=R[1]-F[1],h={width:o.width+l.width+B,height:Math.max(o.height,l.height),left:o.left,right:l.right+O,top:Math.min(o.top,l.top+D),bottom:Math.max(o.bottom,l.bottom+D)}),\"bottom\"===f.delta.position&&(O=null,D=l.height,h={width:Math.max(o.width,l.width),height:o.height+l.height,left:Math.min(o.left,l.left),right:Math.max(o.right,l.right),top:o.bottom-o.height,bottom:o.bottom+l.height}),\"top\"===f.delta.position&&(O=null,D=o.top,h={width:Math.max(o.width,l.width),height:o.height+l.height,left:Math.min(o.left,l.left),right:Math.max(o.right,l.right),top:o.bottom-o.height-l.height,bottom:o.bottom}),I.attr({dx:O,dy:D})}(f._hasNumber||f._hasDelta)&&E.attr(\"transform\",(function(){var t=i.numbersScaler(h);z+=t[2];var e,r=k(f,\"numbersScale\",1,t[0],z,Math.min);f._scaleNumbers||(r=1),e=f._isAngular?x-r*h.bottom:x-r*(h.top+h.bottom)/2,f._numbersTop=r*h.top+e;var n=h[w];\"center\"===w&&(n=(h.left+h.right)/2);var a=p-r*n;return _(a=k(f,\"numbersTranslate\",0,a,z,Math.max),e)+\" scale(\"+r+\")\"}))}(t,L,e,{numbersX:h,numbersY:M,numbersScaler:A,transitionOpts:r,onComplete:f}),P&&(S={range:C.gauge.axis.range,color:C.gauge.bgcolor,line:{color:C.gauge.bordercolor,width:0},thickness:1},E={range:C.gauge.axis.range,color:\"rgba(0, 0, 0, 0)\",line:{color:C.gauge.bordercolor,width:C.gauge.borderwidth},thickness:1});var q=L.selectAll(\"g.angular\").data(I?e:[]);q.exit().remove();var H=L.selectAll(\"g.angularaxis\").data(I?e:[]);H.exit().remove(),I&&function(t,e,r,a){var s,l,c,h,f=r[0].trace,p=a.size,d=a.radius,g=a.innerRadius,m=a.gaugeBg,v=a.gaugeOutline,w=[p.l+p.w/2,p.t+p.h/2+d/2],T=a.gauge,k=a.layer,M=a.transitionOpts,A=a.onComplete,S=Math.PI/2;function E(t){var e=f.gauge.axis.range[0],r=(t-e)/(f.gauge.axis.range[1]-e)*Math.PI-S;return r<-S?-S:r>S?S:r}function C(t){return n.svg.arc().innerRadius((g+d)/2-t/2*(d-g)).outerRadius((g+d)/2+t/2*(d-g)).startAngle(-S)}function L(t){t.attr(\"d\",(function(t){return C(t.thickness).startAngle(E(t.range[0])).endAngle(E(t.range[1]))()}))}T.enter().append(\"g\").classed(\"angular\",!0),T.attr(\"transform\",_(w[0],w[1])),k.enter().append(\"g\").classed(\"angularaxis\",!0).classed(\"crisp\",!0),k.selectAll(\"g.xangularaxistick,path,text\").remove(),(s=b(t,f.gauge.axis)).type=\"linear\",s.range=f.gauge.axis.range,s._id=\"xangularaxis\",s.setScale();var P=function(t){return(s.range[0]-t.x)/(s.range[1]-s.range[0])*Math.PI+Math.PI},I={},z=u.makeLabelFns(s,0).labelStandoff;I.xFn=function(t){var e=P(t);return Math.cos(e)*z},I.yFn=function(t){var e=P(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(z+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*o)},I.anchorFn=function(t){var e=P(t),r=Math.cos(e);return Math.abs(r)<.1?\"middle\":r>0?\"start\":\"end\"},I.heightFn=function(t,e,r){var n=P(t);return-.5*(1+Math.sin(n))*r};var O=function(t){return _(w[0]+d*Math.cos(t),w[1]-d*Math.sin(t))};c=function(t){return O(P(t))};if(l=u.calcTicks(s),h=u.getTickSigns(s)[2],s.visible){h=\"inside\"===s.ticks?-1:1;var D=(s.linewidth||1)/2;u.drawTicks(t,s,{vals:l,layer:k,path:\"M\"+h*D+\",0h\"+h*s.ticklen,transFn:function(t){var e=P(t);return O(e)+\"rotate(\"+-i(e)+\")\"}}),u.drawLabels(t,s,{vals:l,layer:k,transFn:c,labelFns:I})}var R=[m].concat(f.gauge.steps),F=T.selectAll(\"g.bg-arc\").data(R);F.enter().append(\"g\").classed(\"bg-arc\",!0).append(\"path\"),F.select(\"path\").call(L).call(x),F.exit().remove();var B=C(f.gauge.bar.thickness),N=T.selectAll(\"g.value-arc\").data([f.gauge.bar]);N.enter().append(\"g\").classed(\"value-arc\",!0).append(\"path\");var j=N.select(\"path\");y(M)?(j.transition().duration(M.duration).ease(M.easing).each(\"end\",(function(){A&&A()})).each(\"interrupt\",(function(){A&&A()})).attrTween(\"d\",(U=B,V=E(r[0].lastY),q=E(r[0].y),function(){var t=n.interpolate(V,q);return function(e){return U.endAngle(t(e))()}})),f._lastValue=r[0].y):j.attr(\"d\",\"number\"==typeof r[0].y?B.endAngle(E(r[0].y)):\"M0,0Z\");var U,V,q;j.call(x),N.exit().remove(),R=[];var H=f.gauge.threshold.value;H&&R.push({range:[H,H],color:f.gauge.threshold.color,line:{color:f.gauge.threshold.line.color,width:f.gauge.threshold.line.width},thickness:f.gauge.threshold.thickness});var G=T.selectAll(\"g.threshold-arc\").data(R);G.enter().append(\"g\").classed(\"threshold-arc\",!0).append(\"path\"),G.select(\"path\").call(L).call(x),G.exit().remove();var Y=T.selectAll(\"g.gauge-outline\").data([v]);Y.enter().append(\"g\").classed(\"gauge-outline\",!0).append(\"path\"),Y.select(\"path\").call(L).call(x),Y.exit().remove()}(t,0,e,{radius:B,innerRadius:N,gauge:q,layer:H,size:D,gaugeBg:S,gaugeOutline:E,transitionOpts:r,onComplete:f});var G=L.selectAll(\"g.bullet\").data(z?e:[]);G.exit().remove();var Y=L.selectAll(\"g.bulletaxis\").data(z?e:[]);Y.exit().remove(),z&&function(t,e,r,n){var a,i,o,s,c,h=r[0].trace,f=n.gauge,p=n.layer,g=n.gaugeBg,m=n.gaugeOutline,v=n.size,_=h.domain,w=n.transitionOpts,T=n.onComplete;f.enter().append(\"g\").classed(\"bullet\",!0),f.attr(\"transform\",\"translate(\"+v.l+\", \"+v.t+\")\"),p.enter().append(\"g\").classed(\"bulletaxis\",!0).classed(\"crisp\",!0),p.selectAll(\"g.xbulletaxistick,path,text\").remove();var k=v.h,M=h.gauge.bar.thickness*k,A=_.x[0],S=_.x[0]+(_.x[1]-_.x[0])*(h._hasNumber||h._hasDelta?1-l.bulletNumberDomainSize:1);(a=b(t,h.gauge.axis))._id=\"xbulletaxis\",a.domain=[A,S],a.setScale(),i=u.calcTicks(a),o=u.makeTransFn(a),s=u.getTickSigns(a)[2],c=v.t+v.h,a.visible&&(u.drawTicks(t,a,{vals:\"inside\"===a.ticks?u.clipEnds(a,i):i,layer:p,path:u.makeTickPath(a,c,s),transFn:o}),u.drawLabels(t,a,{vals:i,layer:p,transFn:o,labelFns:u.makeLabelFns(a,c)}));function E(t){t.attr(\"width\",(function(t){return Math.max(0,a.c2p(t.range[1])-a.c2p(t.range[0]))})).attr(\"x\",(function(t){return a.c2p(t.range[0])})).attr(\"y\",(function(t){return.5*(1-t.thickness)*k})).attr(\"height\",(function(t){return t.thickness*k}))}var C=[g].concat(h.gauge.steps),L=f.selectAll(\"g.bg-bullet\").data(C);L.enter().append(\"g\").classed(\"bg-bullet\",!0).append(\"rect\"),L.select(\"rect\").call(E).call(x),L.exit().remove();var P=f.selectAll(\"g.value-bullet\").data([h.gauge.bar]);P.enter().append(\"g\").classed(\"value-bullet\",!0).append(\"rect\"),P.select(\"rect\").attr(\"height\",M).attr(\"y\",(k-M)/2).call(x),y(w)?P.select(\"rect\").transition().duration(w.duration).ease(w.easing).each(\"end\",(function(){T&&T()})).each(\"interrupt\",(function(){T&&T()})).attr(\"width\",Math.max(0,a.c2p(Math.min(h.gauge.axis.range[1],r[0].y)))):P.select(\"rect\").attr(\"width\",\"number\"==typeof r[0].y?Math.max(0,a.c2p(Math.min(h.gauge.axis.range[1],r[0].y))):0);P.exit().remove();var I=r.filter((function(){return h.gauge.threshold.value})),z=f.selectAll(\"g.threshold-bullet\").data(I);z.enter().append(\"g\").classed(\"threshold-bullet\",!0).append(\"line\"),z.select(\"line\").attr(\"x1\",a.c2p(h.gauge.threshold.value)).attr(\"x2\",a.c2p(h.gauge.threshold.value)).attr(\"y1\",(1-h.gauge.threshold.thickness)/2*k).attr(\"y2\",(1-(1-h.gauge.threshold.thickness)/2)*k).call(d.stroke,h.gauge.threshold.line.color).style(\"stroke-width\",h.gauge.threshold.line.width),z.exit().remove();var O=f.selectAll(\"g.gauge-outline\").data([m]);O.enter().append(\"g\").classed(\"gauge-outline\",!0).append(\"rect\"),O.select(\"rect\").call(E).call(x),O.exit().remove()}(t,0,e,{gauge:G,layer:Y,size:D,gaugeBg:S,gaugeOutline:E,transitionOpts:r,onComplete:f});var W=L.selectAll(\"text.title\").data(e);W.exit().remove(),W.enter().append(\"text\").classed(\"title\",!0),W.attr(\"text-anchor\",(function(){return z?g.right:g[C.title.align]})).text(C.title.text).call(s.font,C.title.font).call(c.convertToTspans,t),W.attr(\"transform\",(function(){var t,e=D.l+D.w*m[C.title.align],r=l.titlePadding,n=s.bBox(W.node());if(P){if(I)if(C.gauge.axis.visible)t=s.bBox(H.node()).top-r-n.bottom;else t=D.t+D.h/2-B/2-n.bottom-r;z&&(t=M-(n.top+n.bottom)/2,e=D.l-l.bulletPadding*D.w)}else t=C._numbersTop-r-n.bottom;return _(e,t)}))}))}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../constants/alignment\":717,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/axis_defaults\":800,\"../../plots/cartesian/layout_attributes\":812,\"../../plots/cartesian/position_defaults\":815,\"./constants\":1088,d3:169}],1092:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../mesh3d/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/edit_types\").overrideAll;var c=e.exports=l(s({x:{valType:\"data_array\"},y:{valType:\"data_array\"},z:{valType:\"data_array\"},value:{valType:\"data_array\"},isomin:{valType:\"number\"},isomax:{valType:\"number\"},surface:{show:{valType:\"boolean\",dflt:!0},count:{valType:\"integer\",dflt:2,min:1},fill:{valType:\"number\",min:0,max:1,dflt:1},pattern:{valType:\"flaglist\",flags:[\"A\",\"B\",\"C\",\"D\",\"E\"],extras:[\"all\",\"odd\",\"even\"],dflt:\"all\"}},spaceframe:{show:{valType:\"boolean\",dflt:!1},fill:{valType:\"number\",min:0,max:1,dflt:.15}},slices:{x:{show:{valType:\"boolean\",dflt:!1},locations:{valType:\"data_array\",dflt:[]},fill:{valType:\"number\",min:0,max:1,dflt:1}},y:{show:{valType:\"boolean\",dflt:!1},locations:{valType:\"data_array\",dflt:[]},fill:{valType:\"number\",min:0,max:1,dflt:1}},z:{show:{valType:\"boolean\",dflt:!1},locations:{valType:\"data_array\",dflt:[]},fill:{valType:\"number\",min:0,max:1,dflt:1}}},caps:{x:{show:{valType:\"boolean\",dflt:!0},fill:{valType:\"number\",min:0,max:1,dflt:1}},y:{show:{valType:\"boolean\",dflt:!0},fill:{valType:\"number\",min:0,max:1,dflt:1}},z:{show:{valType:\"boolean\",dflt:!0},fill:{valType:\"number\",min:0,max:1,dflt:1}}},text:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertemplate:a(),showlegend:s({},o.showlegend,{dflt:!1})},n(\"\",{colorAttr:\"`value`\",showScaleDflt:!0,editTypeOverride:\"calc\"}),{opacity:i.opacity,lightposition:i.lightposition,lighting:i.lighting,flatshading:i.flatshading,contour:i.contour,hoverinfo:s({},o.hoverinfo)}),\"calc\",\"nested\");c.flatshading.dflt=!0,c.lighting.facenormalsepsilon.dflt=0,c.x.editType=c.y.editType=c.z.editType=c.value.editType=\"calc+clearAxisTypes\",c.transforms=void 0},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../mesh3d/attributes\":1097}],1093:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\"),a=t(\"../streamtube/calc\").processGrid,i=t(\"../streamtube/calc\").filter;e.exports=function(t,e){e._len=Math.min(e.x.length,e.y.length,e.z.length,e.value.length),e._x=i(e.x,e._len),e._y=i(e.y,e._len),e._z=i(e.z,e._len),e._value=i(e.value,e._len);var r=a(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;for(var o=1/0,s=-1/0,l=0;l<e._len;l++){var c=e._value[l];o=Math.min(o,c),s=Math.max(s,c)}e._minValues=o,e._maxValues=s,e._vMin=void 0===e.isomin||null===e.isomin?o:e.isomin,e._vMax=void 0===e.isomax||null===e.isomin?s:e.isomax,n(t,e,{vals:[e._vMin,e._vMax],containerStr:\"\",cLetter:\"c\"})}},{\"../../components/colorscale/calc\":623,\"../streamtube/calc\":1264}],1094:[function(t,e,r){\"use strict\";var n=t(\"gl-mesh3d\"),a=t(\"../../lib/gl_format_color\").parseColorScale,i=t(\"../../lib/str2rgbarray\"),o=t(\"../../components/colorscale\").extractOpts,s=t(\"../../plots/gl3d/zip3\"),l=function(t,e){for(var r=e.length-1;r>0;r--){var n=Math.min(e[r],e[r-1]),a=Math.max(e[r],e[r-1]);if(a>n&&n<t&&t<=a)return{id:r,distRatio:(a-t)/(a-n)}}return{id:0,distRatio:0}};function c(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.data=null,this.showContour=!1}var u=c.prototype;u.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],a=this.data._meshZ[e],i=this.data._Ys.length,o=this.data._Zs.length,s=l(r,this.data._Xs).id,c=l(n,this.data._Ys).id,u=l(a,this.data._Zs).id,h=t.index=u+o*c+o*i*s;t.traceCoordinate=[this.data._meshX[h],this.data._meshY[h],this.data._meshZ[h],this.data._value[h]];var f=this.data.hovertext||this.data.text;return Array.isArray(f)&&void 0!==f[h]?t.textLabel=f[h]:f&&(t.textLabel=f),!0}},u.update=function(t){var e=this.scene,r=e.fullSceneLayout;function n(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=f(t);var l={positions:s(n(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),n(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),n(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:s(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,contourEnable:t.contour.show,contourColor:i(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},c=o(t);l.vertexIntensity=t._meshIntensity,l.vertexIntensityBounds=[c.min,c.max],l.colormap=a(t),this.mesh.update(l)},u.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var h=[\"xyz\",\"xzy\",\"yxz\",\"yzx\",\"zxy\",\"zyx\"];function f(t){t._meshI=[],t._meshJ=[],t._meshK=[];var e,r,n,a,i,o,s,c=t.surface.show,u=t.spaceframe.show,f=t.surface.fill,p=t.spaceframe.fill,d=!1,g=!1,m=0,v=t._Xs,y=t._Ys,x=t._Zs,b=v.length,_=y.length,w=x.length,T=h.indexOf(t._gridFill.replace(/-/g,\"\").replace(/\\+/g,\"\")),k=function(t,e,r){switch(T){case 5:return r+w*e+w*_*t;case 4:return r+w*t+w*b*e;case 3:return e+_*r+_*w*t;case 2:return e+_*t+_*b*r;case 1:return t+b*r+b*w*e;default:return t+b*e+b*_*r}},M=t._minValues,A=t._maxValues,S=t._vMin,E=t._vMax;function C(t,e,s){for(var l=o.length,c=r;c<l;c++)if(t===n[c]&&e===a[c]&&s===i[c])return c;return-1}function L(){r=e}function P(){n=[],a=[],i=[],o=[],e=0,L()}function I(t,r,s,l){return n.push(t),a.push(r),i.push(s),o.push(l),++e-1}function z(t,e,r){for(var n=[],a=0;a<t.length;a++)n[a]=t[a]*(1-r)+r*e[a];return n}function O(t){s=t}function D(t,e){return\"all\"===t||null===t||t.indexOf(e)>-1}function R(t,e){return null===t?e:t}function F(e,r,n){L();var a,i,o,l=[r],c=[n];if(s>=1)l=[r],c=[n];else if(s>0){var u=function(t,e){var r=t[0],n=t[1],a=t[2],i=function(t,e,r){for(var n=[],a=0;a<t.length;a++)n[a]=(t[a]+e[a]+r[a])/3;return n}(r,n,a),o=Math.sqrt(1-s),l=z(i,r,o),c=z(i,n,o),u=z(i,a,o),h=e[0],f=e[1],p=e[2];return{xyzv:[[r,n,c],[c,l,r],[n,a,u],[u,c,n],[a,r,l],[l,u,a]],abc:[[h,f,-1],[-1,-1,h],[f,p,-1],[-1,-1,f],[p,h,-1],[-1,-1,p]]}}(r,n);l=u.xyzv,c=u.abc}for(var h=0;h<l.length;h++){r=l[h],n=c[h];for(var f=[],p=0;p<3;p++){var d=r[p][0],g=r[p][1],v=r[p][2],y=r[p][3],x=n[p]>-1?n[p]:C(d,g,v);f[p]=x>-1?x:I(d,g,v,R(e,y))}a=f[0],i=f[1],o=f[2],t._meshI.push(a),t._meshJ.push(i),t._meshK.push(o),++m}}function B(t,e,r,n){var a=t[3];a<r&&(a=r),a>n&&(a=n);for(var i=(t[3]-a)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-i)*t[s]+i*e[s];return o}function N(t,e,r){return t>=e&&t<=r}function j(t){var e=.001*(E-S);return t>=S-e&&t<=E+e}function U(e){for(var r=[],n=0;n<4;n++){var a=e[n];r.push([t._x[a],t._y[a],t._z[a],t._value[a]])}return r}function V(t,e,r,n,a,i){i||(i=1),r=[-1,-1,-1];var o=!1,s=[N(e[0][3],n,a),N(e[1][3],n,a),N(e[2][3],n,a)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(t,e,r){return j(e[0][3])&&j(e[1][3])&&j(e[2][3])?(F(t,e,r),!0):i<3&&V(t,e,r,S,E,++i)};if(s[0]&&s[1]&&s[2])return l(t,e,r)||o;var c=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach((function(i){if(s[i[0]]&&s[i[1]]&&!s[i[2]]){var u=e[i[0]],h=e[i[1]],f=e[i[2]],p=B(f,u,n,a),d=B(f,h,n,a);o=l(t,[d,p,u],[-1,-1,r[i[0]]])||o,o=l(t,[u,h,d],[r[i[0]],r[i[1]],-1])||o,c=!0}})),c||[[0,1,2],[1,2,0],[2,0,1]].forEach((function(i){if(s[i[0]]&&!s[i[1]]&&!s[i[2]]){var u=e[i[0]],h=e[i[1]],f=e[i[2]],p=B(h,u,n,a),d=B(f,u,n,a);o=l(t,[d,p,u],[-1,-1,r[i[0]]])||o,c=!0}})),o}function q(t,e,r,n){var a=!1,i=U(e),o=[N(i[0][3],r,n),N(i[1][3],r,n),N(i[2][3],r,n),N(i[3][3],r,n)];if(!(o[0]||o[1]||o[2]||o[3]))return a;if(o[0]&&o[1]&&o[2]&&o[3])return g&&(a=function(t,e,r){var n=function(n,a,i){F(t,[e[n],e[a],e[i]],[r[n],r[a],r[i]])};n(0,1,2),n(3,0,1),n(2,3,0),n(1,2,3)}(t,i,e)||a),a;var s=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]];if(g)a=F(t,[c,u,h],[e[l[0]],e[l[1]],e[l[2]]])||a;else{var p=B(f,c,r,n),d=B(f,u,r,n),m=B(f,h,r,n);a=F(null,[p,d,m],[-1,-1,-1])||a}s=!0}})),s?a:([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]],p=B(h,c,r,n),d=B(h,u,r,n),m=B(f,u,r,n),v=B(f,c,r,n);g?(a=F(t,[c,v,p],[e[l[0]],-1,-1])||a,a=F(t,[u,d,m],[e[l[1]],-1,-1])||a):a=function(t,e,r){var n=function(n,a,i){F(t,[e[n],e[a],e[i]],[r[n],r[a],r[i]])};n(0,1,2),n(2,3,0)}(null,[p,d,m,v],[-1,-1,-1,-1])||a,s=!0}})),s||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach((function(l){if(o[l[0]]&&!o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]],p=B(u,c,r,n),d=B(h,c,r,n),m=B(f,c,r,n);g?(a=F(t,[c,p,d],[e[l[0]],-1,-1])||a,a=F(t,[c,d,m],[e[l[0]],-1,-1])||a,a=F(t,[c,m,p],[e[l[0]],-1,-1])||a):a=F(null,[p,d,m],[-1,-1,-1])||a,s=!0}})),a)}function H(t,e,r,n,a,i,o,s,l,c,u){var h=!1;return d&&(D(t,\"A\")&&(h=q(null,[e,r,n,i],c,u)||h),D(t,\"B\")&&(h=q(null,[r,n,a,l],c,u)||h),D(t,\"C\")&&(h=q(null,[r,i,o,l],c,u)||h),D(t,\"D\")&&(h=q(null,[n,i,s,l],c,u)||h),D(t,\"E\")&&(h=q(null,[r,n,i,l],c,u)||h)),g&&(h=q(t,[r,n,i,l],c,u)||h),h}function G(t,e,r,n,a,i,o,s){return[!0===s[0]||V(t,U([e,r,n]),[e,r,n],i,o),!0===s[1]||V(t,U([n,a,e]),[n,a,e],i,o)]}function Y(t,e,r,n,a,i,o,s,l){return s?G(t,e,r,a,n,i,o,l):G(t,r,a,n,e,i,o,l)}function W(t,e,r,n,a,i,o){var s,l,c,u,h=!1,f=function(){h=V(t,[s,l,c],[-1,-1,-1],a,i)||h,h=V(t,[c,u,s],[-1,-1,-1],a,i)||h},p=o[0],d=o[1],g=o[2];return p&&(s=z(U([k(e,r-0,n-0)])[0],U([k(e-1,r-0,n-0)])[0],p),l=z(U([k(e,r-0,n-1)])[0],U([k(e-1,r-0,n-1)])[0],p),c=z(U([k(e,r-1,n-1)])[0],U([k(e-1,r-1,n-1)])[0],p),u=z(U([k(e,r-1,n-0)])[0],U([k(e-1,r-1,n-0)])[0],p),f()),d&&(s=z(U([k(e-0,r,n-0)])[0],U([k(e-0,r-1,n-0)])[0],d),l=z(U([k(e-0,r,n-1)])[0],U([k(e-0,r-1,n-1)])[0],d),c=z(U([k(e-1,r,n-1)])[0],U([k(e-1,r-1,n-1)])[0],d),u=z(U([k(e-1,r,n-0)])[0],U([k(e-1,r-1,n-0)])[0],d),f()),g&&(s=z(U([k(e-0,r-0,n)])[0],U([k(e-0,r-0,n-1)])[0],g),l=z(U([k(e-0,r-1,n)])[0],U([k(e-0,r-1,n-1)])[0],g),c=z(U([k(e-1,r-1,n)])[0],U([k(e-1,r-1,n-1)])[0],g),u=z(U([k(e-1,r-0,n)])[0],U([k(e-1,r-0,n-1)])[0],g),f()),h}function Z(t,e,r,n,a,i,o,s,l,c,u,h){var f=t;return h?(d&&\"even\"===t&&(f=null),H(f,e,r,n,a,i,o,s,l,c,u)):(d&&\"odd\"===t&&(f=null),H(f,l,s,o,i,a,n,r,e,c,u))}function X(t,e,r,n,a){for(var i=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<w;c++)for(var u=1;u<_;u++)i.push(Y(t,k(l,u-1,c-1),k(l,u-1,c),k(l,u,c-1),k(l,u,c),r,n,(l+u+c)%2,a&&a[o]?a[o]:[])),o++;return i}function J(t,e,r,n,a){for(var i=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<b;c++)for(var u=1;u<w;u++)i.push(Y(t,k(c-1,l,u-1),k(c,l,u-1),k(c-1,l,u),k(c,l,u),r,n,(c+l+u)%2,a&&a[o]?a[o]:[])),o++;return i}function K(t,e,r,n,a){for(var i=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<_;c++)for(var u=1;u<b;u++)i.push(Y(t,k(u-1,c-1,l),k(u-1,c,l),k(u,c-1,l),k(u,c,l),r,n,(u+c+l)%2,a&&a[o]?a[o]:[])),o++;return i}function Q(t,e,r){for(var n=1;n<w;n++)for(var a=1;a<_;a++)for(var i=1;i<b;i++)Z(t,k(i-1,a-1,n-1),k(i-1,a-1,n),k(i-1,a,n-1),k(i-1,a,n),k(i,a-1,n-1),k(i,a-1,n),k(i,a,n-1),k(i,a,n),e,r,(i+a+n)%2)}function $(t,e,r){d=!0,Q(t,e,r),d=!1}function tt(t,e,r,n,a,i){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<w;u++)for(var h=1;h<_;h++)o.push(W(t,c,h,u,r,n,a[l],i&&i[s]&&i[s])),s++;return o}function et(t,e,r,n,a,i){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<b;u++)for(var h=1;h<w;h++)o.push(W(t,u,c,h,r,n,a[l],i&&i[s]&&i[s])),s++;return o}function rt(t,e,r,n,a,i){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<_;u++)for(var h=1;h<b;h++)o.push(W(t,h,u,c,r,n,a[l],i&&i[s]&&i[s])),s++;return o}function nt(t,e){for(var r=[],n=t;n<e;n++)r.push(n);return r}return function(){if(P(),function(){for(var e=0;e<b;e++)for(var r=0;r<_;r++)for(var n=0;n<w;n++){var a=k(e,r,n);I(t._x[a],t._y[a],t._z[a],t._value[a])}}(),u&&p&&(O(p),g=!0,Q(null,S,E),g=!1),c&&f){O(f);for(var e=t.surface.pattern,r=t.surface.count,s=0;s<r;s++){var h=1===r?.5:s/(r-1),d=(1-h)*S+h*E,T=Math.abs(d-M)>Math.abs(d-A)?[M,d]:[d,A];$(e,T[0],T[1])}}var C=[[Math.min(S,A),Math.max(S,A)],[Math.min(M,E),Math.max(M,E)]];[\"x\",\"y\",\"z\"].forEach((function(e){for(var r=[],n=0;n<C.length;n++){var a=0,i=C[n][0],o=C[n][1],s=t.slices[e];if(s.show&&s.fill){O(s.fill);var c=[],u=[],h=[];if(s.locations.length)for(var f=0;f<s.locations.length;f++){var p=l(s.locations[f],\"x\"===e?v:\"y\"===e?y:x);0===p.distRatio?c.push(p.id):p.id>0&&(u.push(p.id),\"x\"===e?h.push([p.distRatio,0,0]):\"y\"===e?h.push([0,p.distRatio,0]):h.push([0,0,p.distRatio]))}else c=nt(1,\"x\"===e?b-1:\"y\"===e?_-1:w-1);u.length>0&&(r[a]=\"x\"===e?tt(null,u,i,o,h,r[a]):\"y\"===e?et(null,u,i,o,h,r[a]):rt(null,u,i,o,h,r[a]),a++),c.length>0&&(r[a]=\"x\"===e?X(null,c,i,o,r[a]):\"y\"===e?J(null,c,i,o,r[a]):K(null,c,i,o,r[a]),a++)}var d=t.caps[e];d.show&&d.fill&&(O(d.fill),r[a]=\"x\"===e?X(null,[0,b-1],i,o,r[a]):\"y\"===e?J(null,[0,_-1],i,o,r[a]):K(null,[0,w-1],i,o,r[a]),a++)}})),0===m&&P(),t._meshX=n,t._meshY=a,t._meshZ=i,t._meshIntensity=o,t._Xs=v,t._Ys=y,t._Zs=x}(),t}e.exports={findNearestOnAxis:l,generateIsoMeshes:f,createIsosurfaceTrace:function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new c(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}}},{\"../../components/colorscale\":627,\"../../lib/gl_format_color\":745,\"../../lib/str2rgbarray\":772,\"../../plots/gl3d/zip3\":851,\"gl-mesh3d\":292}],1095:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"./attributes\"),o=t(\"../../components/colorscale/defaults\");function s(t,e,r,n,i){var s=i(\"isomin\"),l=i(\"isomax\");null!=l&&null!=s&&s>l&&(e.isomin=null,e.isomax=null);var c=i(\"x\"),u=i(\"y\"),h=i(\"z\"),f=i(\"value\");c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length?(a.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],n),[\"x\",\"y\",\"z\"].forEach((function(t){var e=\"caps.\"+t;i(e+\".show\")&&i(e+\".fill\");var r=\"slices.\"+t;i(r+\".show\")&&(i(r+\".fill\"),i(r+\".locations\"))})),i(\"spaceframe.show\")&&i(\"spaceframe.fill\"),i(\"surface.show\")&&(i(\"surface.count\"),i(\"surface.fill\"),i(\"surface.pattern\")),i(\"contour.show\")&&(i(\"contour.color\"),i(\"contour.width\")),[\"text\",\"hovertext\",\"hovertemplate\",\"lighting.ambient\",\"lighting.diffuse\",\"lighting.specular\",\"lighting.roughness\",\"lighting.fresnel\",\"lighting.vertexnormalsepsilon\",\"lighting.facenormalsepsilon\",\"lightposition.x\",\"lightposition.y\",\"lightposition.z\",\"flatshading\",\"opacity\"].forEach((function(t){i(t)})),o(t,e,n,i,{prefix:\"\",cLetter:\"c\"}),e._length=null):e.visible=!1}e.exports={supplyDefaults:function(t,e,r,a){s(t,e,r,a,(function(r,a){return n.coerce(t,e,i,r,a)}))},supplyIsoDefaults:s}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"../../registry\":881,\"./attributes\":1092}],1096:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,calc:t(\"./calc\"),colorbar:{min:\"cmin\",max:\"cmax\"},plot:t(\"./convert\").createIsosurfaceTrace,moduleType:\"trace\",name:\"isosurface\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"showLegend\"],meta:{}}},{\"../../plots/gl3d\":840,\"./attributes\":1092,\"./calc\":1093,\"./convert\":1094,\"./defaults\":1095}],1097:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../surface/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat;e.exports=s({x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},i:{valType:\"data_array\",editType:\"calc\"},j:{valType:\"data_array\",editType:\"calc\"},k:{valType:\"data_array\",editType:\"calc\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertemplate:a({editType:\"calc\"}),delaunayaxis:{valType:\"enumerated\",values:[\"x\",\"y\",\"z\"],dflt:\"z\",editType:\"calc\"},alphahull:{valType:\"number\",dflt:-1,editType:\"calc\"},intensity:{valType:\"data_array\",editType:\"calc\"},intensitymode:{valType:\"enumerated\",values:[\"vertex\",\"cell\"],dflt:\"vertex\",editType:\"calc\"},color:{valType:\"color\",editType:\"calc\"},vertexcolor:{valType:\"data_array\",editType:\"calc\"},facecolor:{valType:\"data_array\",editType:\"calc\"},transforms:void 0},n(\"\",{colorAttr:\"`intensity`\",showScaleDflt:!0,editTypeOverride:\"calc\"}),{opacity:i.opacity,flatshading:{valType:\"boolean\",dflt:!1,editType:\"calc\"},contour:{show:s({},i.contours.x.show,{}),color:i.contours.x.color,width:i.contours.x.width,editType:\"calc\"},lightposition:{x:s({},i.lightposition.x,{dflt:1e5}),y:s({},i.lightposition.y,{dflt:1e5}),z:s({},i.lightposition.z,{dflt:0}),editType:\"calc\"},lighting:s({vertexnormalsepsilon:{valType:\"number\",min:0,max:1,dflt:1e-12,editType:\"calc\"},facenormalsepsilon:{valType:\"number\",min:0,max:1,dflt:1e-6,editType:\"calc\"},editType:\"calc\"},i.lighting),hoverinfo:s({},o.hoverinfo,{editType:\"calc\"}),showlegend:s({},o.showlegend,{dflt:!1})})},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../surface/attributes\":1280}],1098:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\");e.exports=function(t,e){e.intensity&&n(t,e,{vals:e.intensity,containerStr:\"\",cLetter:\"c\"})}},{\"../../components/colorscale/calc\":623}],1099:[function(t,e,r){\"use strict\";var n=t(\"gl-mesh3d\"),a=t(\"delaunay-triangulate\"),i=t(\"alpha-shape\"),o=t(\"convex-hull\"),s=t(\"../../lib/gl_format_color\").parseColorScale,l=t(\"../../lib/str2rgbarray\"),c=t(\"../../components/colorscale\").extractOpts,u=t(\"../../plots/gl3d/zip3\");function h(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.color=\"#fff\",this.data=null,this.showContour=!1}var f=h.prototype;function p(t){for(var e=[],r=t.length,n=0;n<r;n++)e[n]=l(t[n]);return e}function d(t,e,r,n){for(var a=[],i=e.length,o=0;o<i;o++)a[o]=t.d2l(e[o],0,n)*r;return a}function g(t){for(var e=[],r=t.length,n=0;n<r;n++)e[n]=Math.round(t[n]);return e}function m(t,e){for(var r=t.length,n=0;n<r;n++)if(t[n]<=-.5||t[n]>=e-.5)return!1;return!0}f.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index;t.data._cellCenter?t.traceCoordinate=t.data.dataCoordinate:t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]];var r=this.data.hovertext||this.data.text;return Array.isArray(r)&&void 0!==r[e]?t.textLabel=r[e]:r&&(t.textLabel=r),!0}},f.update=function(t){var e=this.scene,r=e.fullSceneLayout;this.data=t;var n,h=t.x.length,f=u(d(r.xaxis,t.x,e.dataScale[0],t.xcalendar),d(r.yaxis,t.y,e.dataScale[1],t.ycalendar),d(r.zaxis,t.z,e.dataScale[2],t.zcalendar));if(t.i&&t.j&&t.k){if(t.i.length!==t.j.length||t.j.length!==t.k.length||!m(t.i,h)||!m(t.j,h)||!m(t.k,h))return;n=u(g(t.i),g(t.j),g(t.k))}else n=0===t.alphahull?o(f):t.alphahull>0?i(t.alphahull,f):function(t,e){for(var r=[\"x\",\"y\",\"z\"].indexOf(t),n=[],i=e.length,o=0;o<i;o++)n[o]=[e[o][(r+1)%3],e[o][(r+2)%3]];return a(n)}(t.delaunayaxis,f);var v={positions:f,cells:n,lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,contourEnable:t.contour.show,contourColor:l(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading};if(t.intensity){var y=c(t);this.color=\"#fff\";var x=t.intensitymode;v[x+\"Intensity\"]=t.intensity,v[x+\"IntensityBounds\"]=[y.min,y.max],v.colormap=s(t)}else t.vertexcolor?(this.color=t.vertexcolor[0],v.vertexColors=p(t.vertexcolor)):t.facecolor?(this.color=t.facecolor[0],v.cellColors=p(t.facecolor)):(this.color=t.color,v.meshColor=l(t.color));this.mesh.update(v)},f.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new h(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}},{\"../../components/colorscale\":627,\"../../lib/gl_format_color\":745,\"../../lib/str2rgbarray\":772,\"../../plots/gl3d/zip3\":851,\"alpha-shape\":69,\"convex-hull\":135,\"delaunay-triangulate\":171,\"gl-mesh3d\":292}],1100:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../components/colorscale/defaults\"),o=t(\"./attributes\");e.exports=function(t,e,r,s){function l(r,n){return a.coerce(t,e,o,r,n)}function c(t){var e=t.map((function(t){var e=l(t);return e&&a.isArrayOrTypedArray(e)?e:null}));return e.every((function(t){return t&&t.length===e[0].length}))&&e}c([\"x\",\"y\",\"z\"])?(c([\"i\",\"j\",\"k\"]),(!e.i||e.j&&e.k)&&(!e.j||e.k&&e.i)&&(!e.k||e.i&&e.j)?(n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],s),[\"lighting.ambient\",\"lighting.diffuse\",\"lighting.specular\",\"lighting.roughness\",\"lighting.fresnel\",\"lighting.vertexnormalsepsilon\",\"lighting.facenormalsepsilon\",\"lightposition.x\",\"lightposition.y\",\"lightposition.z\",\"flatshading\",\"alphahull\",\"delaunayaxis\",\"opacity\"].forEach((function(t){l(t)})),l(\"contour.show\")&&(l(\"contour.color\"),l(\"contour.width\")),\"intensity\"in t?(l(\"intensity\"),l(\"intensitymode\"),i(t,e,s,l,{prefix:\"\",cLetter:\"c\"})):(e.showscale=!1,\"facecolor\"in t?l(\"facecolor\"):\"vertexcolor\"in t?l(\"vertexcolor\"):l(\"color\",r)),l(\"text\"),l(\"hovertext\"),l(\"hovertemplate\"),e._length=null):e.visible=!1):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"../../registry\":881,\"./attributes\":1097}],1101:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),colorbar:{min:\"cmin\",max:\"cmax\"},plot:t(\"./convert\"),moduleType:\"trace\",name:\"mesh3d\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"showLegend\"],meta:{}}},{\"../../plots/gl3d\":840,\"./attributes\":1097,\"./calc\":1098,\"./convert\":1099,\"./defaults\":1100}],1102:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").extendFlat,a=t(\"../scatter/attributes\"),i=t(\"../../components/drawing/attributes\").dash,o=t(\"../../components/fx/attributes\"),s=t(\"../../constants/delta.js\"),l=s.INCREASING.COLOR,c=s.DECREASING.COLOR,u=a.line;function h(t){return{line:{color:n({},u.color,{dflt:t}),width:u.width,dash:i,editType:\"style\"},editType:\"style\"}}e.exports={xperiod:a.xperiod,xperiod0:a.xperiod0,xperiodalignment:a.xperiodalignment,x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},open:{valType:\"data_array\",editType:\"calc\"},high:{valType:\"data_array\",editType:\"calc\"},low:{valType:\"data_array\",editType:\"calc\"},close:{valType:\"data_array\",editType:\"calc\"},line:{width:n({},u.width,{}),dash:n({},i,{}),editType:\"style\"},increasing:h(l),decreasing:h(c),text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},tickwidth:{valType:\"number\",min:0,max:.5,dflt:.3,editType:\"calc\"},hoverlabel:n({},o.hoverlabel,{split:{valType:\"boolean\",dflt:!1,editType:\"style\"}})}},{\"../../components/drawing/attributes\":636,\"../../components/fx/attributes\":646,\"../../constants/delta.js\":718,\"../../lib\":749,\"../scatter/attributes\":1156}],1103:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=n._,i=t(\"../../plots/cartesian/axes\"),o=t(\"../../plots/cartesian/align_period\"),s=t(\"../../constants/numerical\").BADNUM;function l(t,e,r,n){return{o:t,h:e,l:r,c:n}}function c(t,e,r,o,l,c){for(var u=l.makeCalcdata(e,\"open\"),h=l.makeCalcdata(e,\"high\"),f=l.makeCalcdata(e,\"low\"),p=l.makeCalcdata(e,\"close\"),d=Array.isArray(e.text),g=Array.isArray(e.hovertext),m=!0,v=null,y=!!e.xperiodalignment,x=[],b=0;b<o.length;b++){var _=o[b],w=u[b],T=h[b],k=f[b],M=p[b];if(_!==s&&w!==s&&T!==s&&k!==s&&M!==s){M===w?null!==v&&M!==v&&(m=M>v):m=M>w,v=M;var A=c(w,T,k,M);A.pos=_,A.yc=(w+M)/2,A.i=b,A.dir=m?\"increasing\":\"decreasing\",A.x=A.pos,A.y=[k,T],y&&(A.orig_p=r[b]),d&&(A.tx=e.text[b]),g&&(A.htx=e.hovertext[b]),x.push(A)}else x.push({pos:_,empty:!0})}return e._extremes[l._id]=i.findExtremes(l,n.concat(f,h),{padded:!0}),x.length&&(x[0].t={labels:{open:a(t,\"open:\")+\" \",high:a(t,\"high:\")+\" \",low:a(t,\"low:\")+\" \",close:a(t,\"close:\")+\" \"}}),x}e.exports={calc:function(t,e){var r=i.getFromId(t,e.xaxis),a=i.getFromId(t,e.yaxis),s=function(t,e,r){var a=r._minDiff;if(!a){var i,s=t._fullData,l=[];for(a=1/0,i=0;i<s.length;i++){var c=s[i];if(\"ohlc\"===c.type&&!0===c.visible&&c.xaxis===e._id){l.push(c);var u=e.makeCalcdata(c,\"x\");c._origX=u;var h=o(r,e,\"x\",u);c._xcalc=h;var f=n.distinctVals(h).minDiff;f&&isFinite(f)&&(a=Math.min(a,f))}}for(a===1/0&&(a=1),i=0;i<l.length;i++)l[i]._minDiff=a}return a*r.tickwidth}(t,r,e),u=e._minDiff;e._minDiff=null;var h=e._origX;e._origX=null;var f=e._xcalc;e._xcalc=null;var p=c(t,e,h,f,a,l);return e._extremes[r._id]=i.findExtremes(r,f,{vpad:u/2}),p.length?(n.extendFlat(p[0].t,{wHover:u/2,tickLen:s}),p):[{t:{empty:!0}}]},calcCommon:c}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798}],1104:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./ohlc_defaults\"),i=t(\"../scatter/period_defaults\"),o=t(\"./attributes\");function s(t,e,r,n){r(n+\".line.color\"),r(n+\".line.width\",e.line.width),r(n+\".line.dash\",e.line.dash)}e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,o,r,a)}a(t,e,c,l)?(i(t,e,l,c,{x:!0}),c(\"line.width\"),c(\"line.dash\"),s(t,e,c,\"increasing\"),s(t,e,c,\"decreasing\"),c(\"text\"),c(\"hovertext\"),c(\"tickwidth\"),l._requestRangeslider[e.xaxis]=!0):e.visible=!1}},{\"../../lib\":749,\"../scatter/period_defaults\":1176,\"./attributes\":1102,\"./ohlc_defaults\":1107}],1105:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib\"),i=t(\"../../components/fx\"),o=t(\"../../components/color\"),s=t(\"../../lib\").fillText,l=t(\"../../constants/delta.js\"),c={increasing:l.INCREASING.SYMBOL,decreasing:l.DECREASING.SYMBOL};function u(t,e,r,n){var a,s,l=t.cd,c=t.xa,u=l[0].trace,h=l[0].t,f=u.type,p=\"ohlc\"===f?\"l\":\"min\",d=\"ohlc\"===f?\"h\":\"max\",g=h.bPos||0,m=h.bdPos||h.tickLen,v=h.wHover,y=Math.min(1,m/Math.abs(c.r2c(c.range[1])-c.r2c(c.range[0])));function x(t){var r=function(t){return t.pos+g-e}(t);return i.inbox(r-v,r+v,a)}function b(t){var e=t[p],n=t[d];return e===n||i.inbox(e-r,n-r,a)}function _(t){return(x(t)+b(t))/2}a=t.maxHoverDistance-y,s=t.maxSpikeDistance-y;var w=i.getDistanceFunction(n,x,b,_);if(i.getClosest(l,w,t),!1===t.index)return null;var T=l[t.index];if(T.empty)return null;var k=u[T.dir],M=k.line.color;return o.opacity(M)&&k.line.width?t.color=M:t.color=k.fillcolor,t.x0=c.c2p(T.pos+g-m,!0),t.x1=c.c2p(T.pos+g+m,!0),t.xLabelVal=void 0!==T.orig_p?T.orig_p:T.pos,t.spikeDistance=_(T)*s/a,t.xSpike=c.c2p(T.pos,!0),t}function h(t,e,r,i){var o=t.cd,s=t.ya,l=o[0].trace,c=o[0].t,h=[],f=u(t,e,r,i);if(!f)return[];var p=o[f.index].hi||l.hoverinfo,d=p.split(\"+\");if(!(\"all\"===p||-1!==d.indexOf(\"y\")))return[];for(var g=[\"high\",\"open\",\"close\",\"low\"],m={},v=0;v<g.length;v++){var y,x=g[v],b=l[x][f.index],_=s.c2p(b,!0);b in m?(y=m[b]).yLabel+=\"<br>\"+c.labels[x]+n.hoverLabelText(s,b):((y=a.extendFlat({},f)).y0=y.y1=_,y.yLabelVal=b,y.yLabel=c.labels[x]+n.hoverLabelText(s,b),y.name=\"\",h.push(y),m[b]=y)}return h}function f(t,e,r,a){var i=t.cd,o=t.ya,l=i[0].trace,h=i[0].t,f=u(t,e,r,a);if(!f)return[];var p=i[f.index],d=f.index=p.i,g=p.dir;function m(t){return h.labels[t]+n.hoverLabelText(o,l[t][d])}var v=p.hi||l.hoverinfo,y=v.split(\"+\"),x=\"all\"===v,b=x||-1!==y.indexOf(\"y\"),_=x||-1!==y.indexOf(\"text\"),w=b?[m(\"open\"),m(\"high\"),m(\"low\"),m(\"close\")+\"  \"+c[g]]:[];return _&&s(p,l,w),f.extraText=w.join(\"<br>\"),f.y0=f.y1=o.c2p(p.yc,!0),[f]}e.exports={hoverPoints:function(t,e,r,n){return t.cd[0].trace.hoverlabel.split?h(t,e,r,n):f(t,e,r,n)},hoverSplit:h,hoverOnPoints:f}},{\"../../components/color\":615,\"../../components/fx\":655,\"../../constants/delta.js\":718,\"../../lib\":749,\"../../plots/cartesian/axes\":798}],1106:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"ohlc\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"showLegend\"],meta:{},attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\").calc,plot:t(\"./plot\"),style:t(\"./style\"),hoverPoints:t(\"./hover\").hoverPoints,selectPoints:t(\"./select\")}},{\"../../plots/cartesian\":811,\"./attributes\":1102,\"./calc\":1103,\"./defaults\":1104,\"./hover\":1105,\"./plot\":1108,\"./select\":1109,\"./style\":1110}],1107:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\");e.exports=function(t,e,r,i){var o=r(\"x\"),s=r(\"open\"),l=r(\"high\"),c=r(\"low\"),u=r(\"close\");if(r(\"hoverlabel.split\"),n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\"],i),s&&l&&c&&u){var h=Math.min(s.length,l.length,c.length,u.length);return o&&(h=Math.min(h,a.minRowLength(o))),e._length=h,h}}},{\"../../lib\":749,\"../../registry\":881}],1108:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\");e.exports=function(t,e,r,i){var o=e.yaxis,s=e.xaxis,l=!!s.rangebreaks;a.makeTraceGroups(i,r,\"trace ohlc\").each((function(t){var e=n.select(this),r=t[0],i=r.t;if(!0!==r.trace.visible||i.empty)e.remove();else{var c=i.tickLen,u=e.selectAll(\"path\").data(a.identity);u.enter().append(\"path\"),u.exit().remove(),u.attr(\"d\",(function(t){if(t.empty)return\"M0,0Z\";var e=s.c2p(t.pos-c,!0),r=s.c2p(t.pos+c,!0),n=l?(e+r)/2:s.c2p(t.pos,!0);return\"M\"+e+\",\"+o.c2p(t.o,!0)+\"H\"+n+\"M\"+n+\",\"+o.c2p(t.h,!0)+\"V\"+o.c2p(t.l,!0)+\"M\"+r+\",\"+o.c2p(t.c,!0)+\"H\"+n}))}}))}},{\"../../lib\":749,d3:169}],1109:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,n=t.cd,a=t.xaxis,i=t.yaxis,o=[],s=n[0].t.bPos||0;if(!1===e)for(r=0;r<n.length;r++)n[r].selected=0;else for(r=0;r<n.length;r++){var l=n[r];e.contains([a.c2p(l.pos+s),i.c2p(l.yc)],null,l.i,t)?(o.push({pointNumber:l.i,x:a.c2d(l.pos),y:i.c2d(l.yc)}),l.selected=1):l.selected=0}return o}},{}],1110:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../components/color\");e.exports=function(t,e,r){var o=r||n.select(t).selectAll(\"g.ohlclayer\").selectAll(\"g.trace\");o.style(\"opacity\",(function(t){return t[0].trace.opacity})),o.each((function(t){var e=t[0].trace;n.select(this).selectAll(\"path\").each((function(t){if(!t.empty){var r=e[t.dir].line;n.select(this).style(\"fill\",\"none\").call(i.stroke,r.color).call(a.dashLine,r.dash,r.width).style(\"opacity\",e.selectedpoints&&!t.selected?.3:1)}}))}))}},{\"../../components/color\":615,\"../../components/drawing\":637,d3:169}],1111:[function(t,e,r){\"use strict\";var n=t(\"../../lib/extend\").extendFlat,a=t(\"../../plots/attributes\"),i=t(\"../../plots/font_attributes\"),o=t(\"../../components/colorscale/attributes\"),s=t(\"../../plots/template_attributes\").hovertemplateAttrs,l=t(\"../../plots/domain\").attributes,c=n({editType:\"calc\"},o(\"line\",{editTypeOverride:\"calc\"}),{shape:{valType:\"enumerated\",values:[\"linear\",\"hspline\"],dflt:\"linear\",editType:\"plot\"},hovertemplate:s({editType:\"plot\",arrayOk:!1},{keys:[\"count\",\"probability\"]})});e.exports={domain:l({name:\"parcats\",trace:!0,editType:\"calc\"}),hoverinfo:n({},a.hoverinfo,{flags:[\"count\",\"probability\"],editType:\"plot\",arrayOk:!1}),hoveron:{valType:\"enumerated\",values:[\"category\",\"color\",\"dimension\"],dflt:\"category\",editType:\"plot\"},hovertemplate:s({editType:\"plot\",arrayOk:!1},{keys:[\"count\",\"probability\",\"category\",\"categorycount\",\"colorcount\",\"bandcolorcount\"]}),arrangement:{valType:\"enumerated\",values:[\"perpendicular\",\"freeform\",\"fixed\"],dflt:\"perpendicular\",editType:\"plot\"},bundlecolors:{valType:\"boolean\",dflt:!0,editType:\"plot\"},sortpaths:{valType:\"enumerated\",values:[\"forward\",\"backward\"],dflt:\"forward\",editType:\"plot\"},labelfont:i({editType:\"calc\"}),tickfont:i({editType:\"calc\"}),dimensions:{_isLinkedToArray:\"dimension\",label:{valType:\"string\",editType:\"calc\"},categoryorder:{valType:\"enumerated\",values:[\"trace\",\"category ascending\",\"category descending\",\"array\"],dflt:\"trace\",editType:\"calc\"},categoryarray:{valType:\"data_array\",editType:\"calc\"},ticktext:{valType:\"data_array\",editType:\"calc\"},values:{valType:\"data_array\",dflt:[],editType:\"calc\"},displayindex:{valType:\"integer\",editType:\"calc\"},editType:\"calc\",visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"}},line:c,counts:{valType:\"number\",min:0,dflt:1,arrayOk:!0,editType:\"calc\"},customdata:void 0,hoverlabel:void 0,ids:void 0,legendgroup:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/domain\":825,\"../../plots/font_attributes\":826,\"../../plots/template_attributes\":876}],1112:[function(t,e,r){\"use strict\";var n=t(\"../../plots/get_data\").getModuleCalcData,a=t(\"./plot\");r.name=\"parcats\",r.plot=function(t,e,r,i){var o=n(t.calcdata,\"parcats\");if(o.length){var s=o[0];a(t,s,r,i)}},r.clean=function(t,e,r,n){var a=n._has&&n._has(\"parcats\"),i=e._has&&e._has(\"parcats\");a&&!i&&n._paperdiv.selectAll(\".parcats\").remove()}},{\"../../plots/get_data\":835,\"./plot\":1117}],1113:[function(t,e,r){\"use strict\";var n=t(\"../../lib/gup\").wrap,a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/calc\"),o=t(\"../../lib/filter_unique.js\"),s=t(\"../../components/drawing\"),l=t(\"../../lib\"),c=t(\"fast-isnumeric\");function u(t,e,r){t.valueInds.push(e),t.count+=r}function h(t,e,r){return{categoryInds:t,color:e,rawColor:r,valueInds:[],count:0}}function f(t,e,r){t.valueInds.push(e),t.count+=r}e.exports=function(t,e){var r=l.filterVisible(e.dimensions);if(0===r.length)return[];var p,d,g,m=r.map((function(t){var e;if(\"trace\"===t.categoryorder)e=null;else if(\"array\"===t.categoryorder)e=t.categoryarray;else{e=o(t.values);for(var r=!0,n=0;n<e.length;n++)if(!c(e[n])){r=!1;break}e.sort(r?l.sorterAsc:void 0),\"category descending\"===t.categoryorder&&(e=e.reverse())}return function(t,e){e=null==e?[]:e.map((function(t){return t}));var r={},n={},a=[];e.forEach((function(t,e){r[t]=0,n[t]=e}));for(var i=0;i<t.length;i++){var o,s=t[i];void 0===r[s]?(r[s]=1,o=e.push(s)-1,n[s]=o):(r[s]++,o=n[s]),a.push(o)}var l=e.map((function(t){return r[t]}));return{uniqueValues:e,uniqueCounts:l,inds:a}}(t.values,e)}));p=l.isArrayOrTypedArray(e.counts)?e.counts:[e.counts],function(t){var e;if(function(t){for(var e=new Array(t.length),r=0;r<t.length;r++){if(t[r]<0||t[r]>=t.length)return!1;if(void 0!==e[t[r]])return!1;e[t[r]]=!0}return!0}(t.map((function(t){return t.displayindex}))))for(e=0;e<t.length;e++)t[e]._displayindex=t[e].displayindex;else for(e=0;e<t.length;e++)t[e]._displayindex=e}(r),r.forEach((function(t,e){!function(t,e){t._categoryarray=e.uniqueValues,null===t.ticktext||void 0===t.ticktext?t._ticktext=[]:t._ticktext=t.ticktext.slice();for(var r=t._ticktext.length;r<e.uniqueValues.length;r++)t._ticktext.push(e.uniqueValues[r])}(t,m[e])}));var v,y=e.line;y?(a(e,\"line\")&&i(t,e,{vals:e.line.color,containerStr:\"line\",cLetter:\"c\"}),v=s.tryColorscale(y)):v=l.identity;var x,b,_,w,T,k=r[0].values.length,M={},A=m.map((function(t){return t.inds}));for(g=0,x=0;x<k;x++){var S=[];for(b=0;b<A.length;b++)S.push(A[b][x]);d=p[x%p.length],g+=d;var E=(_=x,w=void 0,T=void 0,l.isArrayOrTypedArray(y.color)?T=w=y.color[_%y.color.length]:w=y.color,{color:v(w),rawColor:T}),C=S+\"-\"+E.rawColor;void 0===M[C]&&(M[C]=h(S,E.color,E.rawColor)),f(M[C],x,d)}var L,P=r.map((function(t,e){return function(t,e,r,n,a){return{dimensionInd:t,containerInd:e,displayInd:r,dimensionLabel:n,count:a,categories:[],dragX:null}}(e,t._index,t._displayindex,t.label,g)}));for(x=0;x<k;x++)for(d=p[x%p.length],b=0;b<P.length;b++){var I=P[b].containerInd,z=m[b].inds[x],O=P[b].categories;if(void 0===O[z]){var D=e.dimensions[I]._categoryarray[z],R=e.dimensions[I]._ticktext[z];O[z]={dimensionInd:b,categoryInd:L=z,categoryValue:D,displayInd:L,categoryLabel:R,valueInds:[],count:0,dragY:null}}u(O[z],x,d)}return n(function(t,e,r){var n=t.map((function(t){return t.categories.length})).reduce((function(t,e){return Math.max(t,e)}));return{dimensions:t,paths:e,trace:void 0,maxCats:n,count:r}}(P,M,g))}},{\"../../components/colorscale/calc\":623,\"../../components/colorscale/helpers\":626,\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/filter_unique.js\":740,\"../../lib/gup\":746,\"fast-isnumeric\":241}],1114:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\"),o=t(\"../../plots/domain\").defaults,s=t(\"../../plots/array_container_defaults\"),l=t(\"./attributes\"),c=t(\"../parcoords/merge_length\");function u(t,e){function r(r,a){return n.coerce(t,e,l.dimensions,r,a)}var a=r(\"values\"),i=r(\"visible\");if(a&&a.length||(i=e.visible=!1),i){r(\"label\"),r(\"displayindex\",e._index);var o,s=t.categoryarray,c=Array.isArray(s)&&s.length>0;c&&(o=\"array\");var u=r(\"categoryorder\",o);\"array\"===u?(r(\"categoryarray\"),r(\"ticktext\")):(delete t.categoryarray,delete t.ticktext),c||\"array\"!==u||(e.categoryorder=\"trace\")}}e.exports=function(t,e,r,h){function f(r,a){return n.coerce(t,e,l,r,a)}var p=s(t,e,{name:\"dimensions\",handleItemDefaults:u}),d=function(t,e,r,o,s){s(\"line.shape\"),s(\"line.hovertemplate\");var l=s(\"line.color\",o.colorway[0]);if(a(t,\"line\")&&n.isArrayOrTypedArray(l)){if(l.length)return s(\"line.colorscale\"),i(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}),l.length;e.line.color=r}return 1/0}(t,e,r,h,f);o(e,h,f),Array.isArray(p)&&p.length||(e.visible=!1),c(e,p,\"values\",d),f(\"hoveron\"),f(\"hovertemplate\"),f(\"arrangement\"),f(\"bundlecolors\"),f(\"sortpaths\"),f(\"counts\");var g={family:h.font.family,size:Math.round(h.font.size),color:h.font.color};n.coerceFont(f,\"labelfont\",g);var m={family:h.font.family,size:Math.round(h.font.size/1.2),color:h.font.color};n.coerceFont(f,\"tickfont\",m)}},{\"../../components/colorscale/defaults\":625,\"../../components/colorscale/helpers\":626,\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../../plots/domain\":825,\"../parcoords/merge_length\":1127,\"./attributes\":1111}],1115:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),colorbar:{container:\"line\",min:\"cmin\",max:\"cmax\"},moduleType:\"trace\",name:\"parcats\",basePlotModule:t(\"./base_plot\"),categories:[\"noOpacity\"],meta:{}}},{\"./attributes\":1111,\"./base_plot\":1112,\"./calc\":1113,\"./defaults\":1114,\"./plot\":1117}],1116:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plot_api/plot_api\"),i=t(\"../../components/fx\"),o=t(\"../../lib\"),s=t(\"../../components/drawing\"),l=t(\"tinycolor2\"),c=t(\"../../lib/svg_text_utils\");function u(t,e,r,a){var i=t.map(D.bind(0,e,r)),l=a.selectAll(\"g.parcatslayer\").data([null]);l.enter().append(\"g\").attr(\"class\",\"parcatslayer\").style(\"pointer-events\",\"all\");var u=l.selectAll(\"g.trace.parcats\").data(i,h),m=u.enter().append(\"g\").attr(\"class\",\"trace parcats\");u.attr(\"transform\",(function(t){return\"translate(\"+t.x+\", \"+t.y+\")\"})),m.append(\"g\").attr(\"class\",\"paths\");var v=u.select(\"g.paths\").selectAll(\"path.path\").data((function(t){return t.paths}),h);v.attr(\"fill\",(function(t){return t.model.color}));var b=v.enter().append(\"path\").attr(\"class\",\"path\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.model.color})).attr(\"fill-opacity\",0);x(b),v.attr(\"d\",(function(t){return t.svgD})),b.empty()||v.sort(p),v.exit().remove(),v.on(\"mouseover\",d).on(\"mouseout\",g).on(\"click\",y),m.append(\"g\").attr(\"class\",\"dimensions\");var T=u.select(\"g.dimensions\").selectAll(\"g.dimension\").data((function(t){return t.dimensions}),h);T.enter().append(\"g\").attr(\"class\",\"dimension\"),T.attr(\"transform\",(function(t){return\"translate(\"+t.x+\", 0)\"})),T.exit().remove();var k=T.selectAll(\"g.category\").data((function(t){return t.categories}),h),M=k.enter().append(\"g\").attr(\"class\",\"category\");k.attr(\"transform\",(function(t){return\"translate(0, \"+t.y+\")\"})),M.append(\"rect\").attr(\"class\",\"catrect\").attr(\"pointer-events\",\"none\"),k.select(\"rect.catrect\").attr(\"fill\",\"none\").attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})),_(M);var A=k.selectAll(\"rect.bandrect\").data((function(t){return t.bands}),h);A.each((function(){o.raiseToTop(this)})),A.attr(\"fill\",(function(t){return t.color}));var I=A.enter().append(\"rect\").attr(\"class\",\"bandrect\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.color})).attr(\"fill-opacity\",0);A.attr(\"fill\",(function(t){return t.color})).attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})).attr(\"y\",(function(t){return t.y})).attr(\"cursor\",(function(t){return\"fixed\"===t.parcatsViewModel.arrangement?\"default\":\"perpendicular\"===t.parcatsViewModel.arrangement?\"ns-resize\":\"move\"})),w(I),A.exit().remove(),M.append(\"text\").attr(\"class\",\"catlabel\").attr(\"pointer-events\",\"none\");var z=e._fullLayout.paper_bgcolor;k.select(\"text.catlabel\").attr(\"text-anchor\",(function(t){return f(t)?\"start\":\"end\"})).attr(\"alignment-baseline\",\"middle\").style(\"text-shadow\",z+\" -1px  1px 2px, \"+z+\" 1px  1px 2px, \"+z+\"  1px -1px 2px, \"+z+\" -1px -1px 2px\").style(\"fill\",\"rgb(0, 0, 0)\").attr(\"x\",(function(t){return f(t)?t.width+5:-5})).attr(\"y\",(function(t){return t.height/2})).text((function(t){return t.model.categoryLabel})).each((function(t){s.font(n.select(this),t.parcatsViewModel.categorylabelfont),c.convertToTspans(n.select(this),e)})),M.append(\"text\").attr(\"class\",\"dimlabel\"),k.select(\"text.dimlabel\").attr(\"text-anchor\",\"middle\").attr(\"alignment-baseline\",\"baseline\").attr(\"cursor\",(function(t){return\"fixed\"===t.parcatsViewModel.arrangement?\"default\":\"ew-resize\"})).attr(\"x\",(function(t){return t.width/2})).attr(\"y\",-5).text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})).each((function(t){s.font(n.select(this),t.parcatsViewModel.labelfont)})),k.selectAll(\"rect.bandrect\").on(\"mouseover\",S).on(\"mouseout\",E),k.exit().remove(),T.call(n.behavior.drag().origin((function(t){return{x:t.x,y:0}})).on(\"dragstart\",C).on(\"drag\",L).on(\"dragend\",P)),u.each((function(t){t.traceSelection=n.select(this),t.pathSelection=n.select(this).selectAll(\"g.paths\").selectAll(\"path.path\"),t.dimensionSelection=n.select(this).selectAll(\"g.dimensions\").selectAll(\"g.dimension\")})),u.exit().remove()}function h(t){return t.key}function f(t){var e=t.parcatsViewModel.dimensions.length,r=t.parcatsViewModel.dimensions[e-1].model.dimensionInd;return t.model.dimensionInd===r}function p(t,e){return t.model.rawColor>e.model.rawColor?1:t.model.rawColor<e.model.rawColor?-1:0}function d(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){o.raiseToTop(this),b(n.select(this));var e=m(t),r=v(t);if(t.parcatsViewModel.graphDiv.emit(\"plotly_hover\",{points:e,event:n.event,constraints:r}),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"none\")){var a,s,c,u=n.mouse(this)[0],h=t.parcatsViewModel.graphDiv,f=t.parcatsViewModel.trace,p=h._fullLayout,d=p._paperdiv.node().getBoundingClientRect(),g=t.parcatsViewModel.graphDiv.getBoundingClientRect();for(c=0;c<t.leftXs.length-1;c++)if(t.leftXs[c]+t.dimWidths[c]-2<=u&&u<=t.leftXs[c+1]+2){var y=t.parcatsViewModel.dimensions[c],x=t.parcatsViewModel.dimensions[c+1];a=(y.x+y.width+x.x)/2,s=(t.topYs[c]+t.topYs[c+1]+t.height)/2;break}var _=t.parcatsViewModel.x+a,w=t.parcatsViewModel.y+s,T=l.mostReadable(t.model.color,[\"black\",\"white\"]),k=t.model.count,M=k/t.parcatsViewModel.model.count,A={countLabel:k,probabilityLabel:M.toFixed(3)},S=[];-1!==t.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&S.push([\"Count:\",A.countLabel].join(\" \")),-1!==t.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&S.push([\"P:\",A.probabilityLabel].join(\" \"));var E=S.join(\"<br>\"),C=n.mouse(h)[0];i.loneHover({trace:f,x:_-d.left+g.left,y:w-d.top+g.top,text:E,color:t.model.color,borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontSize:10,fontColor:T,idealAlign:C<_?\"right\":\"left\",hovertemplate:(f.line||{}).hovertemplate,hovertemplateLabels:A,eventData:[{data:f._input,fullData:f,count:k,probability:M}]},{container:p._hoverlayer.node(),outerContainer:p._paper.node(),gd:h})}}}function g(t){if(!t.parcatsViewModel.dragDimension&&(x(n.select(this)),i.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),t.parcatsViewModel.pathSelection.sort(p),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\"))){var e=m(t),r=v(t);t.parcatsViewModel.graphDiv.emit(\"plotly_unhover\",{points:e,event:n.event,constraints:r})}}function m(t){for(var e=[],r=I(t.parcatsViewModel),n=0;n<t.model.valueInds.length;n++){var a=t.model.valueInds[n];e.push({curveNumber:r,pointNumber:a})}return e}function v(t){for(var e={},r=t.parcatsViewModel.model.dimensions,n=0;n<r.length;n++){var a=r[n],i=a.categories[t.model.categoryInds[n]];e[a.containerInd]=i.categoryValue}return void 0!==t.model.rawColor&&(e.color=t.model.rawColor),e}function y(t){if(-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){var e=m(t),r=v(t);t.parcatsViewModel.graphDiv.emit(\"plotly_click\",{points:e,event:n.event,constraints:r})}}function x(t){t.attr(\"fill\",(function(t){return t.model.color})).attr(\"fill-opacity\",.6).attr(\"stroke\",\"lightgray\").attr(\"stroke-width\",.2).attr(\"stroke-opacity\",1)}function b(t){t.attr(\"fill-opacity\",.8).attr(\"stroke\",(function(t){return l.mostReadable(t.model.color,[\"black\",\"white\"])})).attr(\"stroke-width\",.3)}function _(t){t.select(\"rect.catrect\").attr(\"stroke\",\"black\").attr(\"stroke-width\",1).attr(\"stroke-opacity\",1)}function w(t){t.attr(\"stroke\",\"black\").attr(\"stroke-width\",.2).attr(\"stroke-opacity\",1).attr(\"fill-opacity\",1)}function T(t){var e=t.parcatsViewModel.pathSelection,r=t.categoryViewModel.model.dimensionInd,n=t.categoryViewModel.model.categoryInd;return e.filter((function(e){return e.model.categoryInds[r]===n&&e.model.color===t.color}))}function k(t,e,r){var a=n.select(t).datum(),i=a.categoryViewModel.model,o=a.parcatsViewModel.graphDiv,s=n.select(t.parentNode).selectAll(\"rect.bandrect\"),l=[];s.each((function(t){T(t).each((function(t){Array.prototype.push.apply(l,m(t))}))}));var c={};c[i.dimensionInd]=i.categoryValue,o.emit(e,{points:l,event:r,constraints:c})}function M(t,e,r){var a=n.select(t).datum(),i=a.categoryViewModel.model,o=a.parcatsViewModel.graphDiv,s=T(a),l=[];s.each((function(t){Array.prototype.push.apply(l,m(t))}));var c={};c[i.dimensionInd]=i.categoryValue,void 0!==a.rawColor&&(c.color=a.rawColor),o.emit(e,{points:l,event:r,constraints:c})}function A(t,e){var r,a,i=n.select(e.parentNode).select(\"rect.catrect\"),o=i.node().getBoundingClientRect(),s=i.datum(),l=s.parcatsViewModel,c=l.model.dimensions[s.model.dimensionInd],u=l.trace,h=o.top+o.height/2;l.dimensions.length>1&&c.displayInd===l.dimensions.length-1?(r=o.left,a=\"left\"):(r=o.left+o.width,a=\"right\");var f=s.model.count,p=s.model.categoryLabel,d=f/s.parcatsViewModel.model.count,g={countLabel:f,categoryLabel:p,probabilityLabel:d.toFixed(3)},m=[];-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&m.push([\"Count:\",g.countLabel].join(\" \")),-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&m.push([\"P(\"+g.categoryLabel+\"):\",g.probabilityLabel].join(\" \"));var v=m.join(\"<br>\");return{trace:u,x:r-t.left,y:h-t.top,text:v,color:\"lightgray\",borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontSize:12,fontColor:\"black\",idealAlign:a,hovertemplate:u.hovertemplate,hovertemplateLabels:g,eventData:[{data:u._input,fullData:u,count:f,category:p,probability:d}]}}function S(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){if(n.mouse(this)[1]<-1)return;var e,r=t.parcatsViewModel.graphDiv,a=r._fullLayout,s=a._paperdiv.node().getBoundingClientRect(),c=t.parcatsViewModel.hoveron;if(\"color\"===c?(!function(t){var e=n.select(t).datum(),r=T(e);b(r),r.each((function(){o.raiseToTop(this)})),n.select(t.parentNode).selectAll(\"rect.bandrect\").filter((function(t){return t.color===e.color})).each((function(){o.raiseToTop(this),n.select(this).attr(\"stroke\",\"black\").attr(\"stroke-width\",1.5)}))}(this),M(this,\"plotly_hover\",n.event)):(!function(t){n.select(t.parentNode).selectAll(\"rect.bandrect\").each((function(t){var e=T(t);b(e),e.each((function(){o.raiseToTop(this)}))})),n.select(t.parentNode).select(\"rect.catrect\").attr(\"stroke\",\"black\").attr(\"stroke-width\",2.5)}(this),k(this,\"plotly_hover\",n.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"none\"))\"category\"===c?e=A(s,this):\"color\"===c?e=function(t,e){var r,a,i=e.getBoundingClientRect(),o=n.select(e).datum(),s=o.categoryViewModel,c=s.parcatsViewModel,u=c.model.dimensions[s.model.dimensionInd],h=c.trace,f=i.y+i.height/2;c.dimensions.length>1&&u.displayInd===c.dimensions.length-1?(r=i.left,a=\"left\"):(r=i.left+i.width,a=\"right\");var p=s.model.categoryLabel,d=o.parcatsViewModel.model.count,g=0;o.categoryViewModel.bands.forEach((function(t){t.color===o.color&&(g+=t.count)}));var m=s.model.count,v=0;c.pathSelection.each((function(t){t.model.color===o.color&&(v+=t.model.count)}));var y=g/d,x=g/v,b=g/m,_={countLabel:d,categoryLabel:p,probabilityLabel:y.toFixed(3)},w=[];-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&w.push([\"Count:\",_.countLabel].join(\" \")),-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&(w.push(\"P(color \\u2229 \"+p+\"): \"+_.probabilityLabel),w.push(\"P(\"+p+\" | color): \"+x.toFixed(3)),w.push(\"P(color | \"+p+\"): \"+b.toFixed(3)));var T=w.join(\"<br>\"),k=l.mostReadable(o.color,[\"black\",\"white\"]);return{trace:h,x:r-t.left,y:f-t.top,text:T,color:o.color,borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontColor:k,fontSize:10,idealAlign:a,hovertemplate:h.hovertemplate,hovertemplateLabels:_,eventData:[{data:h._input,fullData:h,category:p,count:d,probability:y,categorycount:m,colorcount:v,bandcolorcount:g}]}}(s,this):\"dimension\"===c&&(e=function(t,e){var r=[];return n.select(e.parentNode.parentNode).selectAll(\"g.category\").select(\"rect.catrect\").each((function(){r.push(A(t,this))})),r}(s,this)),e&&i.loneHover(e,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:r})}}function E(t){var e=t.parcatsViewModel;if(!e.dragDimension&&(x(e.pathSelection),_(e.dimensionSelection.selectAll(\"g.category\")),w(e.dimensionSelection.selectAll(\"g.category\").selectAll(\"rect.bandrect\")),i.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(p),-1===e.hoverinfoItems.indexOf(\"skip\"))){\"color\"===t.parcatsViewModel.hoveron?M(this,\"plotly_unhover\",n.event):k(this,\"plotly_unhover\",n.event)}}function C(t){\"fixed\"!==t.parcatsViewModel.arrangement&&(t.dragDimensionDisplayInd=t.model.displayInd,t.initialDragDimensionDisplayInds=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),t.dragHasMoved=!1,t.dragCategoryDisplayInd=null,n.select(this).selectAll(\"g.category\").select(\"rect.catrect\").each((function(e){var r=n.mouse(this)[0],a=n.mouse(this)[1];-2<=r&&r<=e.width+2&&-2<=a&&a<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,o.raiseToTop(this.parentNode),n.select(this.parentNode).selectAll(\"rect.bandrect\").each((function(e){e.y<a&&a<=e.y+e.height&&(t.potentialClickBand=this)})))})),t.parcatsViewModel.dragDimension=t,i.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function L(t){if(\"fixed\"!==t.parcatsViewModel.arrangement&&(t.dragHasMoved=!0,null!==t.dragDimensionDisplayInd)){var e=t.dragDimensionDisplayInd,r=e-1,a=e+1,i=t.parcatsViewModel.dimensions[e];if(null!==t.dragCategoryDisplayInd){var o=i.categories[t.dragCategoryDisplayInd];o.model.dragY+=n.event.dy;var s=o.model.dragY,l=o.model.displayInd,c=i.categories,u=c[l-1],h=c[l+1];void 0!==u&&s<u.y+u.height/2&&(o.model.displayInd=u.model.displayInd,u.model.displayInd=l),void 0!==h&&s+o.height>h.y+h.height/2&&(o.model.displayInd=h.model.displayInd,h.model.displayInd=l),t.dragCategoryDisplayInd=o.model.displayInd}if(null===t.dragCategoryDisplayInd||\"freeform\"===t.parcatsViewModel.arrangement){i.model.dragX=n.event.x;var f=t.parcatsViewModel.dimensions[r],p=t.parcatsViewModel.dimensions[a];void 0!==f&&i.model.dragX<f.x+f.width&&(i.model.displayInd=f.model.displayInd,f.model.displayInd=e),void 0!==p&&i.model.dragX+i.width>p.x&&(i.model.displayInd=p.model.displayInd,p.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=i.model.displayInd}B(t.parcatsViewModel),F(t.parcatsViewModel),O(t.parcatsViewModel),z(t.parcatsViewModel)}}function P(t){if(\"fixed\"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){n.select(this).selectAll(\"text\").attr(\"font-weight\",\"normal\");var e={},r=I(t.parcatsViewModel),i=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),o=t.initialDragDimensionDisplayInds.some((function(t,e){return t!==i[e]}));o&&i.forEach((function(r,n){var a=t.parcatsViewModel.model.dimensions[n].containerInd;e[\"dimensions[\"+a+\"].displayindex\"]=r}));var s=!1;if(null!==t.dragCategoryDisplayInd){var l=t.model.categories.map((function(t){return t.displayInd}));if(s=t.initialDragCategoryDisplayInds.some((function(t,e){return t!==l[e]}))){var c=t.model.categories.slice().sort((function(t,e){return t.displayInd-e.displayInd})),u=c.map((function(t){return t.categoryValue})),h=c.map((function(t){return t.categoryLabel}));e[\"dimensions[\"+t.model.containerInd+\"].categoryarray\"]=[u],e[\"dimensions[\"+t.model.containerInd+\"].ticktext\"]=[h],e[\"dimensions[\"+t.model.containerInd+\"].categoryorder\"]=\"array\"}}if(-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")&&!t.dragHasMoved&&t.potentialClickBand&&(\"color\"===t.parcatsViewModel.hoveron?M(t.potentialClickBand,\"plotly_click\",n.event.sourceEvent):k(t.potentialClickBand,\"plotly_click\",n.event.sourceEvent)),t.model.dragX=null,null!==t.dragCategoryDisplayInd)t.parcatsViewModel.dimensions[t.dragDimensionDisplayInd].categories[t.dragCategoryDisplayInd].model.dragY=null,t.dragCategoryDisplayInd=null;t.dragDimensionDisplayInd=null,t.parcatsViewModel.dragDimension=null,t.dragHasMoved=null,t.potentialClickBand=null,B(t.parcatsViewModel),F(t.parcatsViewModel),n.transition().duration(300).ease(\"cubic-in-out\").each((function(){O(t.parcatsViewModel,!0),z(t.parcatsViewModel,!0)})).each(\"end\",(function(){(o||s)&&a.restyle(t.parcatsViewModel.graphDiv,e,[r])}))}}function I(t){for(var e,r=t.graphDiv._fullData,n=0;n<r.length;n++)if(t.key===r[n].uid){e=n;break}return e}function z(t,e){var r;void 0===e&&(e=!1),t.pathSelection.data((function(t){return t.paths}),h),(r=t.pathSelection,e?r.transition():r).attr(\"d\",(function(t){return t.svgD}))}function O(t,e){function r(t){return e?t.transition():t}void 0===e&&(e=!1),t.dimensionSelection.data((function(t){return t.dimensions}),h);var a=t.dimensionSelection.selectAll(\"g.category\").data((function(t){return t.categories}),h);r(t.dimensionSelection).attr(\"transform\",(function(t){return\"translate(\"+t.x+\", 0)\"})),r(a).attr(\"transform\",(function(t){return\"translate(0, \"+t.y+\")\"})),a.select(\".dimlabel\").text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})),a.select(\".catlabel\").attr(\"text-anchor\",(function(t){return f(t)?\"start\":\"end\"})).attr(\"x\",(function(t){return f(t)?t.width+5:-5})).each((function(t){var e,r;f(t)?(e=t.width+5,r=\"start\"):(e=-5,r=\"end\"),n.select(this).selectAll(\"tspan\").attr(\"x\",e).attr(\"text-anchor\",r)}));var i=a.selectAll(\"rect.bandrect\").data((function(t){return t.bands}),h),s=i.enter().append(\"rect\").attr(\"class\",\"bandrect\").attr(\"cursor\",\"move\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.color})).attr(\"fill-opacity\",0);i.attr(\"fill\",(function(t){return t.color})).attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})).attr(\"y\",(function(t){return t.y})),w(s),i.each((function(){o.raiseToTop(this)})),i.exit().remove()}function D(t,e,r){var n,a=r[0],i=e.margin||{l:80,r:80,t:100,b:80},o=a.trace,s=o.domain,l=e.width,c=e.height,u=Math.floor(l*(s.x[1]-s.x[0])),h=Math.floor(c*(s.y[1]-s.y[0])),f=s.x[0]*l+i.l,p=e.height-s.y[1]*e.height+i.t,d=o.line.shape;n=\"all\"===o.hoverinfo?[\"count\",\"probability\"]:(o.hoverinfo||\"\").split(\"+\");var g={trace:o,key:o.uid,model:a,x:f,y:p,width:u,height:h,hoveron:o.hoveron,hoverinfoItems:n,arrangement:o.arrangement,bundlecolors:o.bundlecolors,sortpaths:o.sortpaths,labelfont:o.labelfont,categorylabelfont:o.tickfont,pathShape:d,dragDimension:null,margin:i,paths:[],dimensions:[],graphDiv:t,traceSelection:null,pathSelection:null,dimensionSelection:null};return a.dimensions&&(B(g),F(g)),g}function R(t,e,r,a,i){var o,s,l=[],c=[];for(s=0;s<r.length-1;s++)o=n.interpolateNumber(r[s]+t[s],t[s+1]),l.push(o(i)),c.push(o(1-i));var u=\"M \"+t[0]+\",\"+e[0];for(u+=\"l\"+r[0]+\",0 \",s=1;s<r.length;s++)u+=\"C\"+l[s-1]+\",\"+e[s-1]+\" \"+c[s-1]+\",\"+e[s]+\" \"+t[s]+\",\"+e[s],u+=\"l\"+r[s]+\",0 \";for(u+=\"l0,\"+a+\" \",u+=\"l -\"+r[r.length-1]+\",0 \",s=r.length-2;s>=0;s--)u+=\"C\"+c[s]+\",\"+(e[s+1]+a)+\" \"+l[s]+\",\"+(e[s]+a)+\" \"+(t[s]+r[s])+\",\"+(e[s]+a),u+=\"l-\"+r[s]+\",0 \";return u+=\"Z\"}function F(t){var e=t.dimensions,r=t.model,n=e.map((function(t){return t.categories.map((function(t){return t.y}))})),a=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),i=t.model.dimensions.map((function(t){return t.displayInd})),o=t.dimensions.map((function(t){return t.model.dimensionInd})),s=e.map((function(t){return t.x})),l=e.map((function(t){return t.width})),c=[];for(var u in r.paths)r.paths.hasOwnProperty(u)&&c.push(r.paths[u]);function h(t){var e=t.categoryInds.map((function(t,e){return a[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,r){var n=h(e),a=h(r);return\"backward\"===t.sortpaths&&(n.reverse(),a.reverse()),n.push(e.valueInds[0]),a.push(r.valueInds[0]),t.bundlecolors&&(n.unshift(e.rawColor),a.unshift(r.rawColor)),n<a?-1:n>a?1:0}));for(var f=new Array(c.length),p=e[0].model.count,d=e[0].categories.map((function(t){return t.height})).reduce((function(t,e){return t+e})),g=0;g<c.length;g++){var m,v=c[g];m=p>0?d*(v.count/p):0;for(var y,x=new Array(n.length),b=0;b<v.categoryInds.length;b++){var _=v.categoryInds[b],w=a[b][_],T=i[b];x[T]=n[T][w],n[T][w]+=m;var k=t.dimensions[T].categories[w],M=k.bands.length,A=k.bands[M-1];if(void 0===A||v.rawColor!==A.rawColor){var S=void 0===A?0:A.y+A.height;k.bands.push({key:S,color:v.color,rawColor:v.rawColor,height:m,width:k.width,count:v.count,y:S,categoryViewModel:k,parcatsViewModel:t})}else{var E=k.bands[M-1];E.height+=m,E.count+=v.count}}y=\"hspline\"===t.pathShape?R(s,x,l,m,.5):R(s,x,l,m,0),f[g]={key:v.valueInds[0],model:v,height:m,leftXs:s,topYs:x,dimWidths:l,svgD:y,parcatsViewModel:t}}t.paths=f}function B(t){var e=t.model.dimensions.map((function(t){return{displayInd:t.displayInd,dimensionInd:t.dimensionInd}}));e.sort((function(t,e){return t.displayInd-e.displayInd}));var r=[];for(var n in e){var a=e[n].dimensionInd,i=t.model.dimensions[a];r.push(N(t,i))}t.dimensions=r}function N(t,e){var r,n=t.model.dimensions.length,a=e.displayInd;r=40+(n>1?(t.width-80-16)/(n-1):0)*a;var i,o,s,l,c,u=[],h=t.model.maxCats,f=e.categories.length,p=e.count,d=t.height-8*(h-1),g=8*(h-f)/2,m=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(m.sort((function(t,e){return t.displayInd-e.displayInd})),c=0;c<f;c++)l=m[c].categoryInd,o=e.categories[l],i=p>0?o.count/p*d:0,s={key:o.valueInds[0],model:o,width:16,height:i,y:null!==o.dragY?o.dragY:g,bands:[],parcatsViewModel:t},g=g+i+8,u.push(s);return{key:e.dimensionInd,x:null!==e.dragX?e.dragX:r,y:0,width:16,model:e,categories:u,parcatsViewModel:t,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}e.exports=function(t,e,r,n){u(r,t,n,e)}},{\"../../components/drawing\":637,\"../../components/fx\":655,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plot_api/plot_api\":784,d3:169,tinycolor2:548}],1117:[function(t,e,r){\"use strict\";var n=t(\"./parcats\");e.exports=function(t,e,r,a){var i=t._fullLayout,o=i._paper,s=i._size;n(t,o,e,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},r,a)}},{\"./parcats\":1116}],1118:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/cartesian/layout_attributes\"),i=t(\"../../plots/font_attributes\"),o=t(\"../../plots/domain\").attributes,s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/plot_template\").templatedArray;e.exports={domain:o({name:\"parcoords\",trace:!0,editType:\"plot\"}),labelangle:{valType:\"angle\",dflt:0,editType:\"plot\"},labelside:{valType:\"enumerated\",values:[\"top\",\"bottom\"],dflt:\"top\",editType:\"plot\"},labelfont:i({editType:\"plot\"}),tickfont:i({editType:\"plot\"}),rangefont:i({editType:\"plot\"}),dimensions:l(\"dimension\",{label:{valType:\"string\",editType:\"plot\"},tickvals:s({},a.tickvals,{editType:\"plot\"}),ticktext:s({},a.ticktext,{editType:\"plot\"}),tickformat:s({},a.tickformat,{editType:\"plot\"}),visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},range:{valType:\"info_array\",items:[{valType:\"number\",editType:\"plot\"},{valType:\"number\",editType:\"plot\"}],editType:\"plot\"},constraintrange:{valType:\"info_array\",freeLength:!0,dimensions:\"1-2\",items:[{valType:\"number\",editType:\"plot\"},{valType:\"number\",editType:\"plot\"}],editType:\"plot\"},multiselect:{valType:\"boolean\",dflt:!0,editType:\"plot\"},values:{valType:\"data_array\",editType:\"calc\"},editType:\"calc\"}),line:s({editType:\"calc\"},n(\"line\",{colorscaleDflt:\"Viridis\",autoColorDflt:!1,editTypeOverride:\"calc\"}))}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/layout_attributes\":812,\"../../plots/domain\":825,\"../../plots/font_attributes\":826}],1119:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"d3\"),i=t(\"../../lib/gup\").keyFun,o=t(\"../../lib/gup\").repeat,s=t(\"../../lib\").sorterAsc,l=n.bar.snapRatio;function c(t,e){return t*(1-l)+e*l}var u=n.bar.snapClose;function h(t,e){return t*(1-u)+e*u}function f(t,e,r,n){if(function(t,e){for(var r=0;r<e.length;r++)if(t>=e[r][0]&&t<=e[r][1])return!0;return!1}(r,n))return r;var a=t?-1:1,i=0,o=e.length-1;if(a<0){var s=i;i=o,o=s}for(var l=e[i],u=l,f=i;a*f<a*o;f+=a){var p=f+a,d=e[p];if(a*r<a*h(l,d))return c(l,u);if(a*r<a*d||p===o)return c(d,l);u=l,l=d}}function p(t){t.attr(\"x\",-n.bar.captureWidth/2).attr(\"width\",n.bar.captureWidth)}function d(t){t.attr(\"visibility\",\"visible\").style(\"visibility\",\"visible\").attr(\"fill\",\"yellow\").attr(\"opacity\",0)}function g(t){if(!t.brush.filterSpecified)return\"0,\"+t.height;for(var e,r,n,a=m(t.brush.filter.getConsolidated(),t.height),i=[0],o=a.length?a[0][0]:null,s=0;s<a.length;s++)r=(e=a[s])[1]-e[0],i.push(o),i.push(r),(n=s+1)<a.length&&(o=a[n][0]-e[1]);return i.push(t.height),i}function m(t,e){return t.map((function(t){return t.map((function(t){return Math.max(0,t*e)})).sort(s)}))}function v(){a.select(document.body).style(\"cursor\",null)}function y(t){t.attr(\"stroke-dasharray\",g)}function x(t,e){var r=a.select(t).selectAll(\".highlight, .highlight-shadow\");y(e?r.transition().duration(n.bar.snapDuration).each(\"end\",e):r)}function b(t,e){var r,a=t.brush,i=NaN,o={};if(a.filterSpecified){var s=t.height,l=a.filter.getConsolidated(),c=m(l,s),u=NaN,h=NaN,f=NaN;for(r=0;r<=c.length;r++){var p=c[r];if(p&&p[0]<=e&&e<=p[1]){u=r;break}if(h=r?r-1:NaN,p&&p[0]>e){f=r;break}}if(i=u,isNaN(i)&&(i=isNaN(h)||isNaN(f)?isNaN(h)?f:h:e-c[h][1]<c[f][0]-e?h:f),!isNaN(i)){var d=c[i],g=function(t,e){var r=n.bar.handleHeight;if(!(e>t[1]+r||e<t[0]-r))return e>=.9*t[1]+.1*t[0]?\"n\":e<=.9*t[0]+.1*t[1]?\"s\":\"ns\"}(d,e);g&&(o.interval=l[i],o.intervalPix=d,o.region=g)}}if(t.ordinal&&!o.region){var v=t.unitTickvals,y=t.unitToPaddedPx.invert(e);for(r=0;r<v.length;r++){var x=[.25*v[Math.max(r-1,0)]+.75*v[r],.25*v[Math.min(r+1,v.length-1)]+.75*v[r]];if(y>=x[0]&&y<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function _(t,e){a.event.sourceEvent.stopPropagation();var r=e.height-a.mouse(t)[1]-2*n.verticalPadding,i=e.brush.svgBrush;i.wasDragged=!0,i._dragging=!0,i.grabbingBar?i.newExtent=[r-i.grabPoint,r+i.barLength-i.grabPoint].map(e.unitToPaddedPx.invert):i.newExtent=[i.startExtent,e.unitToPaddedPx.invert(r)].sort(s),e.brush.filterSpecified=!0,i.extent=i.stayingIntervals.concat([i.newExtent]),i.brushCallback(e),x(t.parentNode)}function w(t,e){var r=b(e,e.height-a.mouse(t)[1]-2*n.verticalPadding),i=\"crosshair\";r.clickableOrdinalRange?i=\"pointer\":r.region&&(i=r.region+\"-resize\"),a.select(document.body).style(\"cursor\",i)}function T(t){t.on(\"mousemove\",(function(t){a.event.preventDefault(),t.parent.inBrushDrag||w(this,t)})).on(\"mouseleave\",(function(t){t.parent.inBrushDrag||v()})).call(a.behavior.drag().on(\"dragstart\",(function(t){!function(t,e){a.event.sourceEvent.stopPropagation();var r=e.height-a.mouse(t)[1]-2*n.verticalPadding,i=e.unitToPaddedPx.invert(r),o=e.brush,s=b(e,r),l=s.interval,c=o.svgBrush;if(c.wasDragged=!1,c.grabbingBar=\"ns\"===s.region,c.grabbingBar){var u=l.map(e.unitToPaddedPx);c.grabPoint=r-u[0]-n.verticalPadding,c.barLength=u[1]-u[0]}c.clickableOrdinalRange=s.clickableOrdinalRange,c.stayingIntervals=e.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(c.stayingIntervals=c.stayingIntervals.filter((function(t){return t[0]!==l[0]&&t[1]!==l[1]}))),c.startExtent=s.region?l[\"s\"===s.region?1:0]:i,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on(\"drag\",(function(t){_(this,t)})).on(\"dragend\",(function(t){!function(t,e){var r=e.brush,n=r.filter,i=r.svgBrush;i._dragging||(w(t,e),_(t,e),e.brush.svgBrush.wasDragged=!1),i._dragging=!1,a.event.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,e.parent.inBrushDrag=!1,v(),!i.wasDragged)return i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&e.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,0===i.extent.length&&M(r)):M(r),i.brushCallback(e),x(t.parentNode),void i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);var s=function(){n.set(n.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]<l[0]&&l.reverse(),i.newExtent=[f(0,l,i.newExtent[0],i.stayingIntervals),f(1,l,i.newExtent[1],i.stayingIntervals)];var c=i.newExtent[1]>i.newExtent[0];i.extent=i.stayingIntervals.concat(c?[i.newExtent]:[]),i.extent.length||M(r),i.brushCallback(e),c?x(t.parentNode,s):(s(),x(t.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}(this,t)})))}function k(t,e){return t[0]-e[0]}function M(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function A(t){for(var e,r=t.slice(),n=[],a=r.shift();a;){for(e=a.slice();(a=r.shift())&&a[0]<=e[1];)e[1]=Math.max(e[1],a[1]);n.push(e)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}e.exports={makeBrush:function(t,e,r,n,a,i){var o,l=function(){var t,e,r=[];return{set:function(n){1===(r=n.map((function(t){return t.slice().sort(s)})).sort(k)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),t=A(r),e=r.reduce((function(t,e){return[Math.min(t[0],e[0]),Math.max(t[1],e[1])]}),[1/0,-1/0])},get:function(){return r.slice()},getConsolidated:function(){return t},getBounds:function(){return e}}}();return l.set(r),{filter:l,filterSpecified:e,svgBrush:{extent:[],brushStartCallback:n,brushCallback:(o=a,function(t){var e=t.brush,r=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(e).slice();e.filter.set(r),o()}),brushEndCallback:i}}},ensureAxisBrush:function(t){var e=t.selectAll(\".\"+n.cn.axisBrush).data(o,i);e.enter().append(\"g\").classed(n.cn.axisBrush,!0),function(t){var e=t.selectAll(\".background\").data(o);e.enter().append(\"rect\").classed(\"background\",!0).call(p).call(d).style(\"pointer-events\",\"auto\").attr(\"transform\",\"translate(0 \"+n.verticalPadding+\")\"),e.call(T).attr(\"height\",(function(t){return t.height-n.verticalPadding}));var r=t.selectAll(\".highlight-shadow\").data(o);r.enter().append(\"line\").classed(\"highlight-shadow\",!0).attr(\"x\",-n.bar.width/2).attr(\"stroke-width\",n.bar.width+n.bar.strokeWidth).attr(\"stroke\",n.bar.strokeColor).attr(\"opacity\",n.bar.strokeOpacity).attr(\"stroke-linecap\",\"butt\"),r.attr(\"y1\",(function(t){return t.height})).call(y);var a=t.selectAll(\".highlight\").data(o);a.enter().append(\"line\").classed(\"highlight\",!0).attr(\"x\",-n.bar.width/2).attr(\"stroke-width\",n.bar.width-n.bar.strokeWidth).attr(\"stroke\",n.bar.fillColor).attr(\"opacity\",n.bar.fillOpacity).attr(\"stroke-linecap\",\"butt\"),a.attr(\"y1\",(function(t){return t.height})).call(y)}(e)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(s)})),t=e.multiselect?A(t.sort(k)):[t[0]]):t=[t.sort(s)],e.tickvals){var r=e.tickvals.slice().sort(s);if(!(t=t.map((function(t){var e=[f(0,r,t[0],[]),f(1,r,t[1],[])];if(e[1]>e[0])return e})).filter((function(t){return t}))).length)return}return t.length>1?t:t[0]}}},{\"../../lib\":749,\"../../lib/gup\":746,\"./constants\":1122,d3:169}],1120:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plots/get_data\").getModuleCalcData,i=t(\"./plot\"),o=t(\"../../constants/xmlns_namespaces\");r.name=\"parcoords\",r.plot=function(t){var e=a(t.calcdata,\"parcoords\")[0];e.length&&i(t,e)},r.clean=function(t,e,r,n){var a=n._has&&n._has(\"parcoords\"),i=e._has&&e._has(\"parcoords\");a&&!i&&(n._paperdiv.selectAll(\".parcoords\").remove(),n._glimages.selectAll(\"*\").remove())},r.toSVG=function(t){var e=t._fullLayout._glimages,r=n.select(t).selectAll(\".svg-container\");r.filter((function(t,e){return e===r.size()-1})).selectAll(\".gl-canvas-context, .gl-canvas-focus\").each((function(){var t=this.toDataURL(\"image/png\");e.append(\"svg:image\").attr({xmlns:o.svg,\"xlink:href\":t,preserveAspectRatio:\"none\",x:0,y:0,width:this.width,height:this.height})})),window.setTimeout((function(){n.selectAll(\"#filterBarPattern\").attr(\"id\",\"filterBarPattern\")}),60)}},{\"../../constants/xmlns_namespaces\":725,\"../../plots/get_data\":835,\"./plot\":1129,d3:169}],1121:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray,a=t(\"../../components/colorscale\"),i=t(\"../../lib/gup\").wrap;e.exports=function(t,e){var r,o;return a.hasColorscale(e,\"line\")&&n(e.line.color)?(r=e.line.color,o=a.extractOpts(e.line).colorscale,a.calc(t,e,{vals:r,containerStr:\"line\",cLetter:\"c\"})):(r=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=.5;return e}(e._length),o=[[0,e.line.color],[1,e.line.color]]),i({lineColor:r,cscale:o})}},{\"../../components/colorscale\":627,\"../../lib\":749,\"../../lib/gup\":746}],1122:[function(t,e,r){\"use strict\";e.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:[\"contextLineLayer\",\"focusLineLayer\",\"pickLineLayer\"],axisTitleOffset:28,axisExtentOffset:10,deselectedLineColor:\"#777\",bar:{width:4,captureWidth:10,fillColor:\"magenta\",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeColor:\"white\",strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:\"axis-extent-text\",parcoordsLineLayers:\"parcoords-line-layers\",parcoordsLineLayer:\"parcoords-lines\",parcoords:\"parcoords\",parcoordsControlView:\"parcoords-control-view\",yAxis:\"y-axis\",axisOverlays:\"axis-overlays\",axis:\"axis\",axisHeading:\"axis-heading\",axisTitle:\"axis-title\",axisExtent:\"axis-extent\",axisExtentTop:\"axis-extent-top\",axisExtentTopText:\"axis-extent-top-text\",axisExtentBottom:\"axis-extent-bottom\",axisExtentBottomText:\"axis-extent-bottom-text\",axisBrush:\"axis-brush\"},id:{filterBarPattern:\"filter-bar-pattern\"}}},{}],1123:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\"),o=t(\"../../plots/domain\").defaults,s=t(\"../../plots/array_container_defaults\"),l=t(\"../../plots/cartesian/axes\"),c=t(\"./attributes\"),u=t(\"./axisbrush\"),h=t(\"./constants\").maxDimensionCount,f=t(\"./merge_length\");function p(t,e,r,a){function i(r,a){return n.coerce(t,e,c.dimensions,r,a)}var o=i(\"values\"),s=i(\"visible\");if(o&&o.length||(s=e.visible=!1),s){i(\"label\"),i(\"tickvals\"),i(\"ticktext\"),i(\"tickformat\");var h=i(\"range\");e._ax={_id:\"y\",type:\"linear\",showexponent:\"all\",exponentformat:\"B\",range:h},l.setConvert(e._ax,a.layout),i(\"multiselect\");var f=i(\"constraintrange\");f&&(e.constraintrange=u.cleanRanges(f,e))}}e.exports=function(t,e,r,l){function u(r,a){return n.coerce(t,e,c,r,a)}var d=t.dimensions;Array.isArray(d)&&d.length>h&&(n.log(\"parcoords traces support up to \"+h+\" dimensions at the moment\"),d.splice(h));var g=s(t,e,{name:\"dimensions\",layout:l,handleItemDefaults:p}),m=function(t,e,r,o,s){var l=s(\"line.color\",r);if(a(t,\"line\")&&n.isArrayOrTypedArray(l)){if(l.length)return s(\"line.colorscale\"),i(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}),l.length;e.line.color=r}return 1/0}(t,e,r,l,u);o(e,l,u),Array.isArray(g)&&g.length||(e.visible=!1),f(e,g,\"values\",m);var v={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};n.coerceFont(u,\"labelfont\",v),n.coerceFont(u,\"tickfont\",v),n.coerceFont(u,\"rangefont\",v),u(\"labelangle\"),u(\"labelside\")}},{\"../../components/colorscale/defaults\":625,\"../../components/colorscale/helpers\":626,\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../../plots/cartesian/axes\":798,\"../../plots/domain\":825,\"./attributes\":1118,\"./axisbrush\":1119,\"./constants\":1122,\"./merge_length\":1127}],1124:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isTypedArray;r.convertTypedArray=function(t){return n(t)?Array.prototype.slice.call(t):t},r.isOrdinal=function(t){return!!t.tickvals},r.isVisible=function(t){return t.visible||!(\"visible\"in t)}},{\"../../lib\":749}],1125:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),colorbar:{container:\"line\",min:\"cmin\",max:\"cmax\"},moduleType:\"trace\",name:\"parcoords\",basePlotModule:t(\"./base_plot\"),categories:[\"gl\",\"regl\",\"noOpacity\",\"noHover\"],meta:{}}},{\"./attributes\":1118,\"./base_plot\":1120,\"./calc\":1121,\"./defaults\":1123,\"./plot\":1129}],1126:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nattribute vec4 p01_04, p05_08, p09_12, p13_16,\\n               p17_20, p21_24, p25_28, p29_32,\\n               p33_36, p37_40, p41_44, p45_48,\\n               p49_52, p53_56, p57_60, colors;\\n\\nuniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,\\n             loA, hiA, loB, hiB, loC, hiC, loD, hiD;\\n\\nuniform vec2 resolution, viewBoxPos, viewBoxSize;\\nuniform sampler2D mask, palette;\\nuniform float maskHeight;\\nuniform float drwLayer; // 0: context, 1: focus, 2: pick\\nuniform vec4 contextColor;\\n\\nbool isPick    = (drwLayer > 1.5);\\nbool isContext = (drwLayer < 0.5);\\n\\nconst vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);\\nconst vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);\\n\\nfloat val(mat4 p, mat4 v) {\\n    return dot(matrixCompMult(p, v) * UNITS, UNITS);\\n}\\n\\nfloat axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {\\n    float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);\\n    float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);\\n    return y1 * (1.0 - ratio) + y2 * ratio;\\n}\\n\\nint iMod(int a, int b) {\\n    return a - b * (a / b);\\n}\\n\\nbool fOutside(float p, float lo, float hi) {\\n    return (lo < hi) && (lo > p || p > hi);\\n}\\n\\nbool vOutside(vec4 p, vec4 lo, vec4 hi) {\\n    return (\\n        fOutside(p[0], lo[0], hi[0]) ||\\n        fOutside(p[1], lo[1], hi[1]) ||\\n        fOutside(p[2], lo[2], hi[2]) ||\\n        fOutside(p[3], lo[3], hi[3])\\n    );\\n}\\n\\nbool mOutside(mat4 p, mat4 lo, mat4 hi) {\\n    return (\\n        vOutside(p[0], lo[0], hi[0]) ||\\n        vOutside(p[1], lo[1], hi[1]) ||\\n        vOutside(p[2], lo[2], hi[2]) ||\\n        vOutside(p[3], lo[3], hi[3])\\n    );\\n}\\n\\nbool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {\\n    return mOutside(A, loA, hiA) ||\\n           mOutside(B, loB, hiB) ||\\n           mOutside(C, loC, hiC) ||\\n           mOutside(D, loD, hiD);\\n}\\n\\nbool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {\\n    mat4 pnts[4];\\n    pnts[0] = A;\\n    pnts[1] = B;\\n    pnts[2] = C;\\n    pnts[3] = D;\\n\\n    for(int i = 0; i < 4; ++i) {\\n        for(int j = 0; j < 4; ++j) {\\n            for(int k = 0; k < 4; ++k) {\\n                if(0 == iMod(\\n                    int(255.0 * texture2D(mask,\\n                        vec2(\\n                            (float(i * 2 + j / 2) + 0.5) / 8.0,\\n                            (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight\\n                        ))[3]\\n                    ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),\\n                    2\\n                )) return true;\\n            }\\n        }\\n    }\\n    return false;\\n}\\n\\nvec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {\\n    float x = 0.5 * sign(v) + 0.5;\\n    float y = axisY(x, A, B, C, D);\\n    float z = 1.0 - abs(v);\\n\\n    z += isContext ? 0.0 : 2.0 * float(\\n        outsideBoundingBox(A, B, C, D) ||\\n        outsideRasterMask(A, B, C, D)\\n    );\\n\\n    return vec4(\\n        2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,\\n        z,\\n        1.0\\n    );\\n}\\n\\nvoid main() {\\n    mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);\\n    mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);\\n    mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);\\n    mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);\\n\\n    float v = colors[3];\\n\\n    gl_Position = position(isContext, v, A, B, C, D);\\n\\n    fragColor =\\n        isContext ? vec4(contextColor) :\\n        isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));\\n}\\n\"]),i=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n    gl_FragColor = fragColor;\\n}\\n\"]),o=t(\"./constants\").maxDimensionCount,s=t(\"../../lib\"),l=new Uint8Array(4),c=new Uint8Array(4),u={shape:[256,1],format:\"rgba\",type:\"uint8\",mag:\"nearest\",min:\"nearest\"};function h(t,e,r,n,a){var i=t._gl;i.enable(i.SCISSOR_TEST),i.scissor(e,r,n,a),t.clear({color:[0,0,0,0],depth:1})}function f(t,e,r,n,a,i){var o=i.key;r.drawCompleted||(!function(t){t.read({x:0,y:0,width:1,height:1,data:l})}(t),r.drawCompleted=!0),function s(l){var c=Math.min(n,a-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(t,i.scissorX,i.scissorY,i.scissorWidth,i.viewBoxSize[1])),r.clearOnly||(i.count=2*c,i.offset=2*l*n,e(i),l*n+c<a&&(r.currentRafs[o]=window.requestAnimationFrame((function(){s(l+1)}))),r.drawCompleted=!1)}(0)}function p(t,e){for(var r=new Array(256),n=0;n<256;n++)r[n]=t(n/255).concat(e);return r}function d(t,e){return(t>>>8*e)%256/255}function g(t,e,r){for(var n=new Array(8*e),a=0,i=0;i<e;i++)for(var o=0;o<2;o++)for(var s=0;s<4;s++){var l=4*t+s,c=r[64*i+l];63===l&&0===o&&(c*=-1),n[a++]=c}return n}function m(t){var e=\"0\"+t;return e.substr(e.length-2)}function v(t){return t<o?\"p\"+m(t+1)+\"_\"+m(t+4):\"colors\"}function y(t,e,r,n,a,i,o,l,c,u,h,f,p){for(var d=[[],[]],g=0;g<64;g++)d[0][g]=g===a?1:0,d[1][g]=g===i?1:0;var m=t.lines.canvasOverdrag,v=t.domain,y=t.canvasWidth,x=t.canvasHeight,b=t.deselectedLines.color;return s.extendFlat({key:h,resolution:[y,x],viewBoxPos:[o+m,l],viewBoxSize:[c,u],i0:a,i1:i,dim0A:d[0].slice(0,16),dim0B:d[0].slice(16,32),dim0C:d[0].slice(32,48),dim0D:d[0].slice(48,64),dim1A:d[1].slice(0,16),dim1B:d[1].slice(16,32),dim1C:d[1].slice(32,48),dim1D:d[1].slice(48,64),drwLayer:f,contextColor:[b[0]/255,b[1]/255,b[2]/255,b[3]<1?b[3]:Math.max(1/255,Math.pow(1/t.lines.color.length,1/3))],scissorX:(n===e?0:o+m)+(t.pad.l-m)+t.layoutWidth*v.x[0],scissorWidth:(n===r?y-o+m:c+.5)+(n===e?o+m:0),scissorY:l+t.pad.b+t.layoutHeight*v.y[0],scissorHeight:u,viewportX:t.pad.l-m+t.layoutWidth*v.x[0],viewportY:t.pad.b+t.layoutHeight*v.y[0],viewportWidth:y,viewportHeight:x},p)}function x(t){var e=Math.max(0,Math.floor(2047*t[0]),0),r=Math.min(2047,Math.ceil(2047*t[1]),2047);return[Math.min(e,r),Math.max(e,r)]}e.exports=function(t,e){var r,n,l,m,b,_=e.context,w=e.pick,T=e.regl,k={currentRafs:{},drawCompleted:!0,clearOnly:!1},M=function(t){for(var e={},r=0;r<=o;r+=4)e[v(r)]=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)});return e}(T),A=T.texture(u),S=[];C(e);var E=T({profile:!1,blend:{enable:_,func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:1,dstAlpha:1},equation:{rgb:\"add\",alpha:\"add\"},color:[0,0,0,0]},depth:{enable:!_,mask:!0,func:\"less\",range:[0,1]},cull:{enable:!0,face:\"back\"},scissor:{enable:!0,box:{x:T.prop(\"scissorX\"),y:T.prop(\"scissorY\"),width:T.prop(\"scissorWidth\"),height:T.prop(\"scissorHeight\")}},viewport:{x:T.prop(\"viewportX\"),y:T.prop(\"viewportY\"),width:T.prop(\"viewportWidth\"),height:T.prop(\"viewportHeight\")},dither:!1,vert:a,frag:i,primitive:\"lines\",lineWidth:1,attributes:M,uniforms:{resolution:T.prop(\"resolution\"),viewBoxPos:T.prop(\"viewBoxPos\"),viewBoxSize:T.prop(\"viewBoxSize\"),dim0A:T.prop(\"dim0A\"),dim1A:T.prop(\"dim1A\"),dim0B:T.prop(\"dim0B\"),dim1B:T.prop(\"dim1B\"),dim0C:T.prop(\"dim0C\"),dim1C:T.prop(\"dim1C\"),dim0D:T.prop(\"dim0D\"),dim1D:T.prop(\"dim1D\"),loA:T.prop(\"loA\"),hiA:T.prop(\"hiA\"),loB:T.prop(\"loB\"),hiB:T.prop(\"hiB\"),loC:T.prop(\"loC\"),hiC:T.prop(\"hiC\"),loD:T.prop(\"loD\"),hiD:T.prop(\"hiD\"),palette:A,contextColor:T.prop(\"contextColor\"),mask:T.prop(\"maskTexture\"),drwLayer:T.prop(\"drwLayer\"),maskHeight:T.prop(\"maskHeight\")},offset:T.prop(\"offset\"),count:T.prop(\"count\")});function C(t){r=t.model,n=t.viewModel,l=n.dimensions.slice(),m=l[0]?l[0].values.length:0;var e=r.lines,a=w?e.color.map((function(t,r){return r/e.color.length})):e.color,i=function(t,e,r){for(var n,a=new Array(t*(o+4)),i=0,s=0;s<t;s++){for(var l=0;l<o;l++)a[i++]=l<e.length?e[l].paddedUnitValues[s]:.5;a[i++]=d(s,2),a[i++]=d(s,1),a[i++]=d(s,0),a[i++]=(n=r[s],Math.max(1e-6,Math.min(.999999,n)))}return a}(m,l,a);!function(t,e,r){for(var n=0;n<=o;n+=4)t[v(n)](g(n/4,e,r))}(M,m,i),_||w||(A=T.texture(s.extendFlat({data:p(r.unitToColor,255)},u)))}return{render:function(t,e,n){var a,i,o,s=t.length,c=1/0,u=-1/0;for(a=0;a<s;a++)t[a].dim0.canvasX<c&&(c=t[a].dim0.canvasX,i=a),t[a].dim1.canvasX>u&&(u=t[a].dim1.canvasX,o=a);0===s&&h(T,0,0,r.canvasWidth,r.canvasHeight);var p=function(t){var e,r,n,a=[[],[]];for(n=0;n<64;n++){var i=!t&&n<l.length?l[n].brush.filter.getBounds():[-1/0,1/0];a[0][n]=i[0],a[1][n]=i[1]}var o=new Array(16384);for(e=0;e<16384;e++)o[e]=255;if(!t)for(e=0;e<l.length;e++){var s=e%8,c=(e-s)/8,u=Math.pow(2,s),h=l[e].brush.filter.get();if(!(h.length<2)){var f=x(h[0])[1];for(r=1;r<h.length;r++){var p=x(h[r]);for(n=f+1;n<p[0];n++)o[8*n+c]&=~u;f=Math.max(f,p[1])}}}var d={shape:[8,2048],format:\"alpha\",type:\"uint8\",mag:\"nearest\",min:\"nearest\",data:o};return b?b(d):b=T.texture(d),{maskTexture:b,maskHeight:2048,loA:a[0].slice(0,16),loB:a[0].slice(16,32),loC:a[0].slice(32,48),loD:a[0].slice(48,64),hiA:a[1].slice(0,16),hiB:a[1].slice(16,32),hiC:a[1].slice(32,48),hiD:a[1].slice(48,64)}}(_);for(a=0;a<s;a++){var d=t[a],g=d.dim0.crossfilterDimensionIndex,v=d.dim1.crossfilterDimensionIndex,M=d.canvasX,A=d.canvasY,C=M+d.panelSizeX;if(e||!S[g]||S[g][0]!==M||S[g][1]!==C){S[g]=[M,C];var L=y(r,i,o,a,g,v,M,A,d.panelSizeX,d.panelSizeY,d.dim0.crossfilterDimensionIndex,_?0:w?2:1,p);k.clearOnly=n;var P=e?r.lines.blockLineCount:m;f(T,E,k,P,m,L)}}},readPixel:function(t,e){return T.read({x:t,y:e,width:1,height:1,data:c}),c},readPixels:function(t,e,r,n){var a=new Uint8Array(4*r*n);return T.read({x:t,y:e,width:r,height:n,data:a}),a},destroy:function(){for(var e in t.style[\"pointer-events\"]=\"none\",A.destroy(),b&&b.destroy(),M)M[e].destroy()},update:C}}},{\"../../lib\":749,\"./constants\":1122,glslify:413}],1127:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var a,i;for(n||(n=1/0),a=0;a<e.length;a++)(i=e[a]).visible&&(n=Math.min(n,i[r].length));for(n===1/0&&(n=0),t._length=n,a=0;a<e.length;a++)(i=e[a]).visible&&(i._length=n);return n}},{}],1128:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"color-rgba\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../lib\"),s=t(\"../../lib/svg_text_utils\"),l=t(\"../../components/drawing\"),c=t(\"../../components/colorscale\"),u=t(\"../../lib/gup\"),h=u.keyFun,f=u.repeat,p=u.unwrap,d=t(\"./helpers\"),g=t(\"./constants\"),m=t(\"./axisbrush\"),v=t(\"./lines\");function y(t,e,r){return o.aggNums(t,null,e,r)}function x(t,e){return _(y(Math.min,t,e),y(Math.max,t,e))}function b(t){var e=t.range;return e?_(e[0],e[1]):x(t.values,t._length)}function _(t,e){return!isNaN(t)&&isFinite(t)||(t=0),!isNaN(e)&&isFinite(e)||(e=0),t===e&&(0===t?(t-=1,e+=1):(t*=.9,e*=1.1)),[t,e]}function w(t,e,r,a,i){var o,s,l=b(r);return a?n.scale.ordinal().domain(a.map((o=n.format(r.tickformat),s=i,s?function(t,e){var r=s[e];return null==r?o(t):r}:o))).range(a.map((function(r){var n=(r-l[0])/(l[1]-l[0]);return t-e+n*(2*e-t)}))):n.scale.linear().domain(l).range([t-e,e])}function T(t){if(t.tickvals){var e=b(t);return n.scale.ordinal().domain(t.tickvals).range(t.tickvals.map((function(t){return(t-e[0])/(e[1]-e[0])})))}}function k(t){var e=t.map((function(t){return t[0]})),r=t.map((function(t){var e=a(t[1]);return n.rgb(\"rgb(\"+e[0]+\",\"+e[1]+\",\"+e[2]+\")\")})),i=\"rgb\".split(\"\").map((function(t){return n.scale.linear().clamp(!0).domain(e).range(r.map((a=t,function(t){return t[a]})));var a}));return function(t){return i.map((function(e){return e(t)}))}}function M(t){return t.dimensions.some((function(t){return t.brush.filterSpecified}))}function A(t,e,r){var i=p(e),s=i.trace,l=d.convertTypedArray(i.lineColor),u=s.line,h={color:a(g.deselectedLineColor)},f=c.extractOpts(u),m=f.reversescale?c.flipScale(i.cscale):i.cscale,v=s.domain,y=s.dimensions,x=t.width,_=s.labelangle,w=s.labelside,T=s.labelfont,M=s.tickfont,A=s.rangefont,S=o.extendDeepNoArrays({},u,{color:l.map(n.scale.linear().domain(b({values:l,range:[f.min,f.max],_length:s._length}))),blockLineCount:g.blockLineCount,canvasOverdrag:g.overdrag*g.canvasPixelRatio}),E=Math.floor(x*(v.x[1]-v.x[0])),C=Math.floor(t.height*(v.y[1]-v.y[0])),L=t.margin||{l:80,r:80,t:100,b:80},P=E,I=C;return{key:r,colCount:y.filter(d.isVisible).length,dimensions:y,tickDistance:g.tickDistance,unitToColor:k(m),lines:S,deselectedLines:h,labelAngle:_,labelSide:w,labelFont:T,tickFont:M,rangeFont:A,layoutWidth:x,layoutHeight:t.height,domain:v,translateX:v.x[0]*x,translateY:t.height-v.y[1]*t.height,pad:L,canvasWidth:P*g.canvasPixelRatio+2*S.canvasOverdrag,canvasHeight:I*g.canvasPixelRatio,width:P,height:I,canvasPixelRatio:g.canvasPixelRatio}}function S(t,e,r){var a=r.width,i=r.height,s=r.dimensions,l=r.canvasPixelRatio,c=function(t){return a*t/Math.max(1,r.colCount-1)},u=g.verticalPadding/i,h=function(t,e){return n.scale.linear().range([e,t-e])}(i,g.verticalPadding),f={key:r.key,xScale:c,model:r,inBrushDrag:!1},p={};return f.dimensions=s.filter(d.isVisible).map((function(a,s){var v=function(t,e){return n.scale.linear().domain(b(t)).range([e,1-e])}(a,u),y=p[a.label];p[a.label]=(y||0)+1;var x=a.label+(y?\"__\"+y:\"\"),_=a.constraintrange,k=_&&_.length;k&&!Array.isArray(_[0])&&(_=[_]);var A=k?_.map((function(t){return t.map(v)})):[[-1/0,1/0]],S=a.values;S.length>a._length&&(S=S.slice(0,a._length));var E,C=a.tickvals;function L(t,e){return{val:t,text:E[e]}}function P(t,e){return t.val-e.val}if(Array.isArray(C)&&C.length){E=a.ticktext,Array.isArray(E)&&E.length?E.length>C.length?E=E.slice(0,C.length):C.length>E.length&&(C=C.slice(0,E.length)):E=C.map(n.format(a.tickformat));for(var I=1;I<C.length;I++)if(C[I]<C[I-1]){for(var z=C.map(L).sort(P),O=0;O<C.length;O++)C[O]=z[O].val,E[O]=z[O].text;break}}else C=void 0;return S=d.convertTypedArray(S),{key:x,label:a.label,tickFormat:a.tickformat,tickvals:C,ticktext:E,ordinal:d.isOrdinal(a),multiselect:a.multiselect,xIndex:s,crossfilterDimensionIndex:s,visibleIndex:a._index,height:i,values:S,paddedUnitValues:S.map(v),unitTickvals:C&&C.map(v),xScale:c,x:c(s),canvasX:c(s)*l,unitToPaddedPx:h,domainScale:w(i,g.verticalPadding,a,C,E),ordinalScale:T(a),parent:f,model:r,brush:m.makeBrush(t,k,A,(function(){t.linePickActive(!1)}),(function(){var e=f;e.focusLayer&&e.focusLayer.render(e.panels,!0);var r=M(e);!t.contextShown()&&r?(e.contextLayer&&e.contextLayer.render(e.panels,!0),t.contextShown(!0)):t.contextShown()&&!r&&(e.contextLayer&&e.contextLayer.render(e.panels,!0,!0),t.contextShown(!1))}),(function(r){if(f.focusLayer.render(f.panels,!0),f.pickLayer&&f.pickLayer.render(f.panels,!0),t.linePickActive(!0),e&&e.filterChanged){var n=v.invert,i=r.map((function(t){return t.map(n).sort(o.sorterAsc)})).sort((function(t,e){return t[0]-e[0]}));e.filterChanged(f.key,a._index,i)}}))}})),f}function E(t){t.classed(g.cn.axisExtentText,!0).attr(\"text-anchor\",\"middle\").style(\"cursor\",\"default\")}function C(t,e){var r=\"top\"===e?1:-1,n=t*Math.PI/180;return{dir:r,dx:Math.sin(n),dy:Math.cos(n),degrees:t}}function L(t,e){for(var r=e.panels||(e.panels=[]),n=t.data(),a=0;a<n.length-1;a++){var i=r[a]||(r[a]={}),o=n[a],s=n[a+1];i.dim0=o,i.dim1=s,i.canvasX=o.canvasX,i.panelSizeX=s.canvasX-o.canvasX,i.panelSizeY=e.model.canvasHeight,i.y=0,i.canvasY=0}}function P(t,e){return i.tickText(t._ax,e,!1).text}function I(t,e){if(t.ordinal)return\"\";var r=t.domainScale.domain(),n=r[e?r.length-1:0];return P(t.model.dimensions[t.visibleIndex],n)}e.exports=function(t,e,r,a){var c=t._fullLayout,u=c._toppaper,y=c._glcontainer;!function(t){for(var e=0;e<t.length;e++)for(var r=0;r<t[e].length;r++)for(var n=t[e][r].trace,a=n.dimensions,o=0;o<a.length;o++){var s=a[o].values,l=a[o]._ax;l&&(l.range?l.range=_(l.range[0],l.range[1]):l.range=x(s,n._length),l.dtick||(l.dtick=.01*(Math.abs(l.range[1]-l.range[0])||1)),l.tickformat=a[o].tickformat,i.calcTicks(l),l.cleanRange())}}(e);var b,w,T=(b=!0,w=!1,{linePickActive:function(t){return arguments.length?b=!!t:b},contextShown:function(t){return arguments.length?w=!!t:w}}),k=e.filter((function(t){return p(t).trace.visible})).map(A.bind(0,r)).map(S.bind(0,T,a));y.each((function(t,e){return o.extendFlat(t,k[e])}));var z=y.selectAll(\".gl-canvas\").each((function(t){t.viewModel=k[0],t.model=t.viewModel?t.viewModel.model:null})),O=null;z.filter((function(t){return t.pick})).style(\"pointer-events\",\"auto\").on(\"mousemove\",(function(t){if(T.linePickActive()&&t.lineLayer&&a&&a.hover){var e=n.event,r=this.width,i=this.height,o=n.mouse(this),s=o[0],l=o[1];if(s<0||l<0||s>=r||l>=i)return;var c=t.lineLayer.readPixel(s,i-1-l),u=0!==c[3],h=u?c[2]+256*(c[1]+256*c[0]):null,f={x:s,y:l,clientX:e.clientX,clientY:e.clientY,dataIndex:t.model.key,curveNumber:h};h!==O&&(u?a.hover(f):a.unhover&&a.unhover(f),O=h)}})),z.style(\"opacity\",(function(t){return t.pick?0:1})),u.style(\"background\",\"rgba(255, 255, 255, 0)\");var D=u.selectAll(\".\"+g.cn.parcoords).data(k,h);D.exit().remove(),D.enter().append(\"g\").classed(g.cn.parcoords,!0).style(\"shape-rendering\",\"crispEdges\").style(\"pointer-events\",\"none\"),D.attr(\"transform\",(function(t){return\"translate(\"+t.model.translateX+\",\"+t.model.translateY+\")\"}));var R=D.selectAll(\".\"+g.cn.parcoordsControlView).data(f,h);R.enter().append(\"g\").classed(g.cn.parcoordsControlView,!0),R.attr(\"transform\",(function(t){return\"translate(\"+t.model.pad.l+\",\"+t.model.pad.t+\")\"}));var F=R.selectAll(\".\"+g.cn.yAxis).data((function(t){return t.dimensions}),h);F.enter().append(\"g\").classed(g.cn.yAxis,!0),R.each((function(t){L(F,t)})),z.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=v(this,t):t.lineLayer.update(t),(t.key||0===t.key)&&(t.viewModel[t.key]=t.lineLayer);var e=!t.context||a;t.lineLayer.render(t.viewModel.panels,e)}})),F.attr(\"transform\",(function(t){return\"translate(\"+t.xScale(t.xIndex)+\", 0)\"})),F.call(n.behavior.drag().origin((function(t){return t})).on(\"drag\",(function(t){var e=t.parent;T.linePickActive(!1),t.x=Math.max(-g.overdrag,Math.min(t.model.width+g.overdrag,n.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,F.sort((function(t,e){return t.x-e.x})).each((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio})),L(F,e),F.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr(\"transform\",(function(t){return\"translate(\"+t.xScale(t.xIndex)+\", 0)\"})),n.select(this).attr(\"transform\",\"translate(\"+t.x+\", 0)\"),F.each((function(r,n,a){a===t.parent.key&&(e.dimensions[n]=r)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!M(e)),e.focusLayer.render&&e.focusLayer.render(e.panels)})).on(\"dragend\",(function(t){var e=t.parent;t.x=t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio,L(F,e),n.select(this).attr(\"transform\",(function(t){return\"translate(\"+t.x+\", 0)\"})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!M(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),T.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),F.exit().remove();var B=F.selectAll(\".\"+g.cn.axisOverlays).data(f,h);B.enter().append(\"g\").classed(g.cn.axisOverlays,!0),B.selectAll(\".\"+g.cn.axis).remove();var N=B.selectAll(\".\"+g.cn.axis).data(f,h);N.enter().append(\"g\").classed(g.cn.axis,!0),N.each((function(t){var e=t.model.height/t.model.tickDistance,r=t.domainScale,a=r.domain();n.select(this).call(n.svg.axis().orient(\"left\").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?a:null).tickFormat((function(e){return d.isOrdinal(t)?e:P(t.model.dimensions[t.visibleIndex],e)})).scale(r)),l.font(N.selectAll(\"text\"),t.model.tickFont)})),N.selectAll(\".domain, .tick>line\").attr(\"fill\",\"none\").attr(\"stroke\",\"black\").attr(\"stroke-opacity\",.25).attr(\"stroke-width\",\"1px\"),N.selectAll(\"text\").style(\"text-shadow\",\"1px 1px 1px #fff, -1px -1px 1px #fff, 1px -1px 1px #fff, -1px 1px 1px #fff\").style(\"cursor\",\"default\");var j=B.selectAll(\".\"+g.cn.axisHeading).data(f,h);j.enter().append(\"g\").classed(g.cn.axisHeading,!0);var U=j.selectAll(\".\"+g.cn.axisTitle).data(f,h);U.enter().append(\"text\").classed(g.cn.axisTitle,!0).attr(\"text-anchor\",\"middle\").style(\"cursor\",\"ew-resize\").style(\"pointer-events\",\"auto\"),U.text((function(t){return t.label})).each((function(e){var r=n.select(this);l.font(r,e.model.labelFont),s.convertToTspans(r,t)})).attr(\"transform\",(function(t){var e=C(t.model.labelAngle,t.model.labelSide),r=g.axisTitleOffset;return(e.dir>0?\"\":\"translate(0,\"+(2*r+t.model.height)+\")\")+\"rotate(\"+e.degrees+\")translate(\"+-r*e.dx+\",\"+-r*e.dy+\")\"})).attr(\"text-anchor\",(function(t){var e=C(t.model.labelAngle,t.model.labelSide);return 2*Math.abs(e.dx)>Math.abs(e.dy)?e.dir*e.dx<0?\"start\":\"end\":\"middle\"}));var V=B.selectAll(\".\"+g.cn.axisExtent).data(f,h);V.enter().append(\"g\").classed(g.cn.axisExtent,!0);var q=V.selectAll(\".\"+g.cn.axisExtentTop).data(f,h);q.enter().append(\"g\").classed(g.cn.axisExtentTop,!0),q.attr(\"transform\",\"translate(0,\"+-g.axisExtentOffset+\")\");var H=q.selectAll(\".\"+g.cn.axisExtentTopText).data(f,h);H.enter().append(\"text\").classed(g.cn.axisExtentTopText,!0).call(E),H.text((function(t){return I(t,!0)})).each((function(t){l.font(n.select(this),t.model.rangeFont)}));var G=V.selectAll(\".\"+g.cn.axisExtentBottom).data(f,h);G.enter().append(\"g\").classed(g.cn.axisExtentBottom,!0),G.attr(\"transform\",(function(t){return\"translate(0,\"+(t.model.height+g.axisExtentOffset)+\")\"}));var Y=G.selectAll(\".\"+g.cn.axisExtentBottomText).data(f,h);Y.enter().append(\"text\").classed(g.cn.axisExtentBottomText,!0).attr(\"dy\",\"0.75em\").call(E),Y.text((function(t){return I(t,!1)})).each((function(t){l.font(n.select(this),t.model.rangeFont)})),m.ensureAxisBrush(B)}},{\"../../components/colorscale\":627,\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/gup\":746,\"../../lib/svg_text_utils\":773,\"../../plots/cartesian/axes\":798,\"./axisbrush\":1119,\"./constants\":1122,\"./helpers\":1124,\"./lines\":1126,\"color-rgba\":126,d3:169}],1129:[function(t,e,r){\"use strict\";var n=t(\"./parcoords\"),a=t(\"../../lib/prepare_regl\"),i=t(\"./helpers\").isVisible;function o(t,e,r){var n=e.indexOf(r),a=t.indexOf(n);return-1===a&&(a+=e.length),a}e.exports=function(t,e){var r=t._fullLayout;if(a(t)){var s={},l={},c={},u={},h=r._size;e.forEach((function(e,r){var n=e[0].trace;c[r]=n.index;var a=u[r]=n._fullInput.index;s[r]=t.data[a].dimensions,l[r]=t.data[a].dimensions.slice()}));n(t,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{filterChanged:function(e,n,a){var i=l[e][n],o=a.map((function(t){return t.slice()})),s=\"dimensions[\"+n+\"].constraintrange\",h=r._tracePreGUI[t._fullData[c[e]]._fullInput.uid];if(void 0===h[s]){var f=i.constraintrange;h[s]=f||null}var p=t._fullData[c[e]].dimensions[n];o.length?(1===o.length&&(o=o[0]),i.constraintrange=o,p.constraintrange=o.slice(),o=[o]):(delete i.constraintrange,delete p.constraintrange,o=null);var d={};d[s]=o,t.emit(\"plotly_restyle\",[d,[u[e]]])},hover:function(e){t.emit(\"plotly_hover\",e)},unhover:function(e){t.emit(\"plotly_unhover\",e)},axesMoved:function(e,r){var n=function(t,e){return function(r,n){return o(t,e,r)-o(t,e,n)}}(r,l[e].filter(i));s[e].sort(n),l[e].filter((function(t){return!i(t)})).sort((function(t){return l[e].indexOf(t)})).forEach((function(t){s[e].splice(s[e].indexOf(t),1),s[e].splice(l[e].indexOf(t),0,t)})),t.emit(\"plotly_restyle\",[{dimensions:[s[e]]},[u[e]]])}})}}},{\"../../lib/prepare_regl\":762,\"./helpers\":1124,\"./parcoords\":1128}],1130:[function(t,e,r){\"use strict\";var n=t(\"../../plots/attributes\"),a=t(\"../../plots/domain\").attributes,i=t(\"../../plots/font_attributes\"),o=t(\"../../components/color/attributes\"),s=t(\"../../plots/template_attributes\").hovertemplateAttrs,l=t(\"../../plots/template_attributes\").texttemplateAttrs,c=t(\"../../lib/extend\").extendFlat,u=i({editType:\"plot\",arrayOk:!0,colorEditType:\"plot\"});e.exports={labels:{valType:\"data_array\",editType:\"calc\"},label0:{valType:\"number\",dflt:0,editType:\"calc\"},dlabel:{valType:\"number\",dflt:1,editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc\"},marker:{colors:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:o.defaultLine,arrayOk:!0,editType:\"style\"},width:{valType:\"number\",min:0,dflt:0,arrayOk:!0,editType:\"style\"},editType:\"calc\"},editType:\"calc\"},text:{valType:\"data_array\",editType:\"plot\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"style\"},scalegroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"value\",\"percent\"],extras:[\"none\"],editType:\"calc\"},hoverinfo:c({},n.hoverinfo,{flags:[\"label\",\"text\",\"value\",\"percent\",\"name\"]}),hovertemplate:s({},{keys:[\"label\",\"color\",\"value\",\"percent\",\"text\"]}),texttemplate:l({editType:\"plot\"},{keys:[\"label\",\"color\",\"value\",\"percent\",\"text\"]}),textposition:{valType:\"enumerated\",values:[\"inside\",\"outside\",\"auto\",\"none\"],dflt:\"auto\",arrayOk:!0,editType:\"plot\"},textfont:c({},u,{}),insidetextorientation:{valType:\"enumerated\",values:[\"horizontal\",\"radial\",\"tangential\",\"auto\"],dflt:\"auto\",editType:\"plot\"},insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),automargin:{valType:\"boolean\",dflt:!1,editType:\"plot\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"plot\"},font:c({},u,{}),position:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle center\",\"bottom left\",\"bottom center\",\"bottom right\"],editType:\"plot\"},editType:\"plot\"},domain:a({name:\"pie\",trace:!0,editType:\"calc\"}),hole:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"},sort:{valType:\"boolean\",dflt:!0,editType:\"calc\"},direction:{valType:\"enumerated\",values:[\"clockwise\",\"counterclockwise\"],dflt:\"counterclockwise\",editType:\"calc\"},rotation:{valType:\"number\",min:-360,max:360,dflt:0,editType:\"calc\"},pull:{valType:\"number\",min:0,max:1,dflt:0,arrayOk:!0,editType:\"calc\"},_deprecated:{title:{valType:\"string\",dflt:\"\",editType:\"calc\"},titlefont:c({},u,{}),titleposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle center\",\"bottom left\",\"bottom center\",\"bottom right\"],editType:\"calc\"}}}},{\"../../components/color/attributes\":614,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/domain\":825,\"../../plots/font_attributes\":826,\"../../plots/template_attributes\":876}],1131:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"pie\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":861}],1132:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"tinycolor2\"),i=t(\"../../components/color\"),o={};function s(t){return function(e,r){return!!e&&(!!(e=a(e)).isValid()&&(e=i.addOpacity(e,e.getAlpha()),t[r]||(t[r]=e),e))}}function l(t,e){var r,n=JSON.stringify(t),i=e[n];if(!i){for(i=t.slice(),r=0;r<t.length;r++)i.push(a(t[r]).lighten(20).toHexString());for(r=0;r<t.length;r++)i.push(a(t[r]).darken(20).toHexString());e[n]=i}return i}e.exports={calc:function(t,e){var r,a,i=[],o=t._fullLayout,l=o.hiddenlabels||[],c=e.labels,u=e.marker.colors||[],h=e.values,f=e._length,p=e._hasValues&&f;if(e.dlabel)for(c=new Array(f),r=0;r<f;r++)c[r]=String(e.label0+r*e.dlabel);var d={},g=s(o[\"_\"+e.type+\"colormap\"]),m=0,v=!1;for(r=0;r<f;r++){var y,x,b;if(p){if(y=h[r],!n(y))continue;if((y=+y)<0)continue}else y=1;void 0!==(x=c[r])&&\"\"!==x||(x=r);var _=d[x=String(x)];void 0===_?(d[x]=i.length,(b=-1!==l.indexOf(x))||(m+=y),i.push({v:y,label:x,color:g(u[r],x),i:r,pts:[r],hidden:b})):(v=!0,(a=i[_]).v+=y,a.pts.push(r),a.hidden||(m+=y),!1===a.color&&u[r]&&(a.color=g(u[r],x)))}return(\"funnelarea\"===e.type?v:e.sort)&&i.sort((function(t,e){return e.v-t.v})),i[0]&&(i[0].vTotal=m),i},crossTraceCalc:function(t,e){var r=(e||{}).type;r||(r=\"pie\");var n=t._fullLayout,a=t.calcdata,i=n[r+\"colorway\"],s=n[\"_\"+r+\"colormap\"];n[\"extend\"+r+\"colors\"]&&(i=l(i,o));for(var c=0,u=0;u<a.length;u++){var h=a[u];if(h[0].trace.type===r)for(var f=0;f<h.length;f++){var p=h[f];!1===p.color&&(s[p.label]?p.color=s[p.label]:(s[p.label]=p.color=i[c%i.length],c++))}}},makePullColorFn:s,generateExtendedColors:l}},{\"../../components/color\":615,\"fast-isnumeric\":241,tinycolor2:548}],1133:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"./attributes\"),o=t(\"../../plots/domain\").defaults,s=t(\"../bar/defaults\").handleText;function l(t,e){var r=Array.isArray(t),i=a.isArrayOrTypedArray(e),o=Math.min(r?t.length:1/0,i?e.length:1/0);if(isFinite(o)||(o=0),o&&i){for(var s,l=0;l<o;l++){var c=e[l];if(n(c)&&c>0){s=!0;break}}s||(o=0)}return{hasLabels:r,hasValues:i,len:o}}e.exports={handleLabelsAndValues:l,supplyDefaults:function(t,e,r,n){function c(r,n){return a.coerce(t,e,i,r,n)}var u=l(c(\"labels\"),c(\"values\")),h=u.len;if(e._hasLabels=u.hasLabels,e._hasValues=u.hasValues,!e._hasLabels&&e._hasValues&&(c(\"label0\"),c(\"dlabel\")),h){e._length=h,c(\"marker.line.width\")&&c(\"marker.line.color\"),c(\"marker.colors\"),c(\"scalegroup\");var f,p=c(\"text\"),d=c(\"texttemplate\");if(d||(f=c(\"textinfo\",Array.isArray(p)?\"text+percent\":\"percent\")),c(\"hovertext\"),c(\"hovertemplate\"),d||f&&\"none\"!==f){var g=c(\"textposition\");s(t,e,n,c,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||\"auto\"===g||\"outside\"===g)&&c(\"automargin\"),(\"inside\"===g||\"auto\"===g||Array.isArray(g))&&c(\"insidetextorientation\")}o(e,n,c);var m=c(\"hole\");if(c(\"title.text\")){var v=c(\"title.position\",m?\"middle center\":\"top center\");m||\"middle center\"!==v||(e.title.position=\"top center\"),a.coerceFont(c,\"title.font\",n.font)}c(\"sort\"),c(\"direction\"),c(\"rotation\"),c(\"pull\")}else e.visible=!1}}},{\"../../lib\":749,\"../../plots/domain\":825,\"../bar/defaults\":895,\"./attributes\":1130,\"fast-isnumeric\":241}],1134:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx/helpers\").appendArrayMultiPointValues;e.exports=function(t,e){var r={curveNumber:e.index,pointNumbers:t.pts,data:e._input,fullData:e,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,v:t.v};return 1===t.pts.length&&(r.pointNumber=r.i=t.pts[0]),n(r,e,t.pts),\"funnelarea\"===e.type&&(delete r.v,delete r.i),r}},{\"../../components/fx/helpers\":651}],1135:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");function a(t){return-1!==t.indexOf(\"e\")?t.replace(/[.]?0+e/,\"e\"):-1!==t.indexOf(\".\")?t.replace(/[.]?0+$/,\"\"):t}r.formatPiePercent=function(t,e){var r=a((100*t).toPrecision(3));return n.numSeparate(r,e)+\"%\"},r.formatPieValue=function(t,e){var r=a(t.toPrecision(10));return n.numSeparate(r,e)},r.getFirstFilled=function(t,e){if(Array.isArray(t))for(var r=0;r<e.length;r++){var n=t[e[r]];if(n||0===n||\"\"===n)return n}},r.castOption=function(t,e){return Array.isArray(t)?r.getFirstFilled(t,e):t||void 0}},{\"../../lib\":749}],1136:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),layoutAttributes:t(\"./layout_attributes\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\").plot,style:t(\"./style\"),styleOne:t(\"./style_one\"),moduleType:\"trace\",name:\"pie\",basePlotModule:t(\"./base_plot\"),categories:[\"pie-like\",\"pie\",\"showLegend\"],meta:{}}},{\"./attributes\":1130,\"./base_plot\":1131,\"./calc\":1132,\"./defaults\":1133,\"./layout_attributes\":1137,\"./layout_defaults\":1138,\"./plot\":1139,\"./style\":1140,\"./style_one\":1141}],1137:[function(t,e,r){\"use strict\";e.exports={hiddenlabels:{valType:\"data_array\",editType:\"calc\"},piecolorway:{valType:\"colorlist\",editType:\"calc\"},extendpiecolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{}],1138:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"hiddenlabels\"),r(\"piecolorway\",e.colorway),r(\"extendpiecolors\")}},{\"../../lib\":749,\"./layout_attributes\":1137}],1139:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plots/plots\"),i=t(\"../../components/fx\"),o=t(\"../../components/color\"),s=t(\"../../components/drawing\"),l=t(\"../../lib\"),c=t(\"../../lib/svg_text_utils\"),u=t(\"../bar/uniform_text\"),h=u.recordMinTextSize,f=u.clearMinTextSize,p=t(\"../bar/constants\").TEXTPAD,d=t(\"./helpers\"),g=t(\"./event_data\"),m=t(\"../../lib\").isValidTextValue;function v(t,e,r){var a=r[0],o=a.trace,s=a.cx,c=a.cy;\"_hasHoverLabel\"in o||(o._hasHoverLabel=!1),\"_hasHoverEvent\"in o||(o._hasHoverEvent=!1),t.on(\"mouseover\",(function(t){var r=e._fullLayout,u=e._fullData[o.index];if(!e._dragging&&!1!==r.hovermode){var h=u.hoverinfo;if(Array.isArray(h)&&(h=i.castHoverinfo({hoverinfo:[d.castOption(h,t.pts)],_module:o._module},r,0)),\"all\"===h&&(h=\"label+text+value+percent+name\"),u.hovertemplate||\"none\"!==h&&\"skip\"!==h&&h){var f=t.rInscribed||0,p=s+t.pxmid[0]*(1-f),m=c+t.pxmid[1]*(1-f),v=r.separators,y=[];if(h&&-1!==h.indexOf(\"label\")&&y.push(t.label),t.text=d.castOption(u.hovertext||u.text,t.pts),h&&-1!==h.indexOf(\"text\")){var x=t.text;l.isValidTextValue(x)&&y.push(x)}t.value=t.v,t.valueLabel=d.formatPieValue(t.v,v),h&&-1!==h.indexOf(\"value\")&&y.push(t.valueLabel),t.percent=t.v/a.vTotal,t.percentLabel=d.formatPiePercent(t.percent,v),h&&-1!==h.indexOf(\"percent\")&&y.push(t.percentLabel);var b=u.hoverlabel,_=b.font;i.loneHover({trace:o,x0:p-f*a.r,x1:p+f*a.r,y:m,text:y.join(\"<br>\"),name:u.hovertemplate||-1!==h.indexOf(\"name\")?u.name:void 0,idealAlign:t.pxmid[0]<0?\"left\":\"right\",color:d.castOption(b.bgcolor,t.pts)||t.color,borderColor:d.castOption(b.bordercolor,t.pts),fontFamily:d.castOption(_.family,t.pts),fontSize:d.castOption(_.size,t.pts),fontColor:d.castOption(_.color,t.pts),nameLength:d.castOption(b.namelength,t.pts),textAlign:d.castOption(b.align,t.pts),hovertemplate:d.castOption(u.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[g(t,u)]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:e}),o._hasHoverLabel=!0}o._hasHoverEvent=!0,e.emit(\"plotly_hover\",{points:[g(t,u)],event:n.event})}})),t.on(\"mouseout\",(function(t){var r=e._fullLayout,a=e._fullData[o.index],s=n.select(this).datum();o._hasHoverEvent&&(t.originalEvent=n.event,e.emit(\"plotly_unhover\",{points:[g(s,a)],event:n.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(i.loneUnhover(r._hoverlayer.node()),o._hasHoverLabel=!1)})),t.on(\"click\",(function(t){var r=e._fullLayout,a=e._fullData[o.index];e._dragging||!1===r.hovermode||(e._hoverdata=[g(t,a)],i.click(e,n.event))}))}function y(t,e,r){var n=d.castOption(t.insidetextfont.color,e.pts);!n&&t._input.textfont&&(n=d.castOption(t._input.textfont.color,e.pts));var a=d.castOption(t.insidetextfont.family,e.pts)||d.castOption(t.textfont.family,e.pts)||r.family,i=d.castOption(t.insidetextfont.size,e.pts)||d.castOption(t.textfont.size,e.pts)||r.size;return{color:n||o.contrast(e.color),family:a,size:i}}function x(t,e){for(var r,n,a=0;a<t.length;a++)if((n=(r=t[a][0]).trace).title.text){var i=n.title.text;n._meta&&(i=l.templateString(i,n._meta));var o=s.tester.append(\"text\").attr(\"data-notex\",1).text(i).call(s.font,n.title.font).call(c.convertToTspans,e),u=s.bBox(o.node(),!0);r.titleBox={width:u.width,height:u.height},o.remove()}}function b(t,e,r){var n=r.r||e.rpx1,a=e.rInscribed;if(e.startangle===e.stopangle)return{rCenter:1-a,scale:0,rotate:0,textPosAngle:0};var i,o=e.ring,s=1===o&&Math.abs(e.startangle-e.stopangle)===2*Math.PI,l=e.halfangle,c=e.midangle,u=r.trace.insidetextorientation,h=\"horizontal\"===u,f=\"tangential\"===u,p=\"radial\"===u,d=\"auto\"===u,g=[];if(!d){var m,v=function(r,a){if(function(t,e){var r=t.startangle,n=t.stopangle;return r>e&&e>n||r<e&&e<n}(e,r)){var s=Math.abs(r-e.startangle),l=Math.abs(r-e.stopangle),c=s<l?s:l;(i=\"tan\"===a?w(t,n,o,c,0):_(t,n,o,c,Math.PI/2)).textPosAngle=r,g.push(i)}};if(h||f){for(m=4;m>=-4;m-=2)v(Math.PI*m,\"tan\");for(m=4;m>=-4;m-=2)v(Math.PI*(m+1),\"tan\")}if(h||p){for(m=4;m>=-4;m-=2)v(Math.PI*(m+1.5),\"rad\");for(m=4;m>=-4;m-=2)v(Math.PI*(m+.5),\"rad\")}}if(s||d||h){var y=Math.sqrt(t.width*t.width+t.height*t.height);if((i={scale:a*n*2/y,rCenter:1-a,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,i.scale>=1)return i;g.push(i)}(d||p)&&((i=_(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(i)),(d||f)&&((i=w(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(i));for(var x=0,b=0,T=0;T<g.length;T++){var k=g[T].scale;if(b<k&&(b=k,x=T),!d&&b>=1)break}return g[x]}function _(t,e,r,n,a){e=Math.max(0,e-2*p);var i=t.width/t.height,o=M(i,n,e,r);return{scale:2*o/t.height,rCenter:T(i,o/e),rotate:k(a)}}function w(t,e,r,n,a){e=Math.max(0,e-2*p);var i=t.height/t.width,o=M(i,n,e,r);return{scale:2*o/t.width,rCenter:T(i,o/e),rotate:k(a+Math.PI/2)}}function T(t,e){return Math.cos(e)-t*e}function k(t){return(180/Math.PI*t+720)%180-90}function M(t,e,r,n){var a=t+1/(2*Math.tan(e));return r*Math.min(1/(Math.sqrt(a*a+.5)+a),n/(Math.sqrt(t*t+n/2)+t))}function A(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function S(t,e){var r=e.pxmid[0],n=e.pxmid[1],a=t.width/2,i=t.height/2;return r<0&&(a*=-1),n<0&&(i*=-1),{scale:1,rCenter:1,rotate:0,x:a+Math.abs(i)*(a>0?1:-1)/2,y:i/(1+r*r/(n*n)),outside:!0}}function E(t,e){var r,n,a,i=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=i.title.font.size,a=L(i),-1!==i.title.position.indexOf(\"top\")?(o.y-=(1+a)*t.r,s.ty-=t.titleBox.height):-1!==i.title.position.indexOf(\"bottom\")&&(o.y+=(1+a)*t.r);var l,c,u=(l=t.r,c=t.trace.aspectratio,l/(void 0===c?1:c)),h=e.w*(i.domain.x[1]-i.domain.x[0])/2;return-1!==i.title.position.indexOf(\"left\")?(h+=u,o.x-=(1+a)*u,s.tx+=t.titleBox.width/2):-1!==i.title.position.indexOf(\"center\")?h*=2:-1!==i.title.position.indexOf(\"right\")&&(h+=u,o.x+=(1+a)*u,s.tx-=t.titleBox.width/2),r=h/t.titleBox.width,n=C(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function C(t,e){var r=t.trace,n=e.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(t.titleBox.height,n/2)}function L(t){var e,r=t.pull;if(!r)return 0;if(Array.isArray(r))for(r=0,e=0;e<t.pull.length;e++)t.pull[e]>r&&(r=t.pull[e]);return r}function P(t,e){for(var r=[],n=0;n<t.length;n++){var a=t[n][0],i=a.trace,o=i.domain,s=e.w*(o.x[1]-o.x[0]),l=e.h*(o.y[1]-o.y[0]);i.title.text&&\"middle center\"!==i.title.position&&(l-=C(a,e));var c=s/2,u=l/2;\"funnelarea\"!==i.type||i.scalegroup||(u/=i.aspectratio),a.r=Math.min(c,u)/(1+L(i)),a.cx=e.l+e.w*(i.domain.x[1]+i.domain.x[0])/2,a.cy=e.t+e.h*(1-i.domain.y[0])-l/2,i.title.text&&-1!==i.title.position.indexOf(\"bottom\")&&(a.cy-=C(a,e)),i.scalegroup&&-1===r.indexOf(i.scalegroup)&&r.push(i.scalegroup)}!function(t,e){for(var r,n,a,i=0;i<e.length;i++){var o=1/0,s=e[i];for(n=0;n<t.length;n++)if(r=t[n][0],(a=r.trace).scalegroup===s){var l;if(\"pie\"===a.type)l=r.r*r.r;else if(\"funnelarea\"===a.type){var c,u;a.aspectratio>1?(c=r.r,u=c/a.aspectratio):(u=r.r,c=u*a.aspectratio),c*=(1+a.baseratio)/2,l=c*u}o=Math.min(o,l/r.vTotal)}for(n=0;n<t.length;n++)if(r=t[n][0],(a=r.trace).scalegroup===s){var h=o*r.vTotal;\"funnelarea\"===a.type&&(h/=(1+a.baseratio)/2,h/=a.aspectratio),r.r=Math.sqrt(h)}}}(t,r)}function I(t,e){return[t*Math.sin(e),-t*Math.cos(e)]}function z(t,e,r){var n=t._fullLayout,a=r.trace,i=a.texttemplate,o=a.textinfo;if(!i&&o&&\"none\"!==o){var s,c=o.split(\"+\"),u=function(t){return-1!==c.indexOf(t)},h=u(\"label\"),f=u(\"text\"),p=u(\"value\"),g=u(\"percent\"),v=n.separators;if(s=h?[e.label]:[],f){var y=d.getFirstFilled(a.text,e.pts);m(y)&&s.push(y)}p&&s.push(d.formatPieValue(e.v,v)),g&&s.push(d.formatPiePercent(e.v/r.vTotal,v)),e.text=s.join(\"<br>\")}if(i){var x=l.castOption(a,e.i,\"texttemplate\");if(x){var b=function(t){return{label:t.label,value:t.v,valueLabel:d.formatPieValue(t.v,n.separators),percent:t.v/r.vTotal,percentLabel:d.formatPiePercent(t.v/r.vTotal,n.separators),color:t.color,text:t.text,customdata:l.castOption(a,t.i,\"customdata\")}}(e),_=d.getFirstFilled(a.text,e.pts);(m(_)||\"\"===_)&&(b.text=_),e.text=l.texttemplateString(x,b,t._fullLayout._d3locale,b,a._meta||{})}else e.text=\"\"}}function O(t,e){var r=t.rotate*Math.PI/180,n=Math.cos(r),a=Math.sin(r),i=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=i*n-o*a,t.textY=i*a+o*n,t.noCenter=!0}e.exports={plot:function(t,e){var r=t._fullLayout,i=r._size;f(\"pie\",r),x(e,t),P(e,i);var u=l.makeTraceGroups(r._pielayer,e,\"trace\").each((function(e){var u=n.select(this),f=e[0],p=f.trace;!function(t){var e,r,n,a=t[0],i=a.r,o=a.trace,s=o.rotation*Math.PI/180,l=2*Math.PI/a.vTotal,c=\"px0\",u=\"px1\";if(\"counterclockwise\"===o.direction){for(e=0;e<t.length&&t[e].hidden;e++);if(e===t.length)return;s+=l*t[e].v,l*=-1,c=\"px1\",u=\"px0\"}for(n=I(i,s),e=0;e<t.length;e++)(r=t[e]).hidden||(r[c]=n,r.startangle=s,s+=l*r.v/2,r.pxmid=I(i,s),r.midangle=s,s+=l*r.v/2,n=I(i,s),r.stopangle=s,r[u]=n,r.largeArc=r.v>a.vTotal/2?1:0,r.halfangle=Math.PI*Math.min(r.v/a.vTotal,.5),r.ring=1-o.hole,r.rInscribed=A(r,a))}(e),u.attr(\"stroke-linejoin\",\"round\"),u.each((function(){var g=n.select(this).selectAll(\"g.slice\").data(e);g.enter().append(\"g\").classed(\"slice\",!0),g.exit().remove();var m=[[[],[]],[[],[]]],x=!1;g.each((function(a,i){if(a.hidden)n.select(this).selectAll(\"path,g\").remove();else{a.pointNumber=a.i,a.curveNumber=p.index,m[a.pxmid[1]<0?0:1][a.pxmid[0]<0?0:1].push(a);var o=f.cx,u=f.cy,g=n.select(this),_=g.selectAll(\"path.surface\").data([a]);if(_.enter().append(\"path\").classed(\"surface\",!0).style({\"pointer-events\":\"all\"}),g.call(v,t,e),p.pull){var w=+d.castOption(p.pull,a.pts)||0;w>0&&(o+=w*a.pxmid[0],u+=w*a.pxmid[1])}a.cxFinal=o,a.cyFinal=u;var T=p.hole;if(a.v===f.vTotal){var k=\"M\"+(o+a.px0[0])+\",\"+(u+a.px0[1])+L(a.px0,a.pxmid,!0,1)+L(a.pxmid,a.px0,!0,1)+\"Z\";T?_.attr(\"d\",\"M\"+(o+T*a.px0[0])+\",\"+(u+T*a.px0[1])+L(a.px0,a.pxmid,!1,T)+L(a.pxmid,a.px0,!1,T)+\"Z\"+k):_.attr(\"d\",k)}else{var M=L(a.px0,a.px1,!0,1);if(T){var A=1-T;_.attr(\"d\",\"M\"+(o+T*a.px1[0])+\",\"+(u+T*a.px1[1])+L(a.px1,a.px0,!1,T)+\"l\"+A*a.px0[0]+\",\"+A*a.px0[1]+M+\"Z\")}else _.attr(\"d\",\"M\"+o+\",\"+u+\"l\"+a.px0[0]+\",\"+a.px0[1]+M+\"Z\")}z(t,a,f);var E=d.castOption(p.textposition,a.pts),C=g.selectAll(\"g.slicetext\").data(a.text&&\"none\"!==E?[0]:[]);C.enter().append(\"g\").classed(\"slicetext\",!0),C.exit().remove(),C.each((function(){var g=l.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),m=l.ensureUniformFontSize(t,\"outside\"===E?function(t,e,r){var n=d.castOption(t.outsidetextfont.color,e.pts)||d.castOption(t.textfont.color,e.pts)||r.color,a=d.castOption(t.outsidetextfont.family,e.pts)||d.castOption(t.textfont.family,e.pts)||r.family,i=d.castOption(t.outsidetextfont.size,e.pts)||d.castOption(t.textfont.size,e.pts)||r.size;return{color:n,family:a,size:i}}(p,a,r.font):y(p,a,r.font));g.text(a.text).attr({class:\"slicetext\",transform:\"\",\"text-anchor\":\"middle\"}).call(s.font,m).call(c.convertToTspans,t);var v,_=s.bBox(g.node());if(\"outside\"===E)v=S(_,a);else if(v=b(_,a,f),\"auto\"===E&&v.scale<1){var w=l.ensureUniformFontSize(t,p.outsidetextfont);g.call(s.font,w),v=S(_=s.bBox(g.node()),a)}var T=v.textPosAngle,k=void 0===T?a.pxmid:I(f.r,T);if(v.targetX=o+k[0]*v.rCenter+(v.x||0),v.targetY=u+k[1]*v.rCenter+(v.y||0),O(v,_),v.outside){var M=v.targetY;a.yLabelMin=M-_.height/2,a.yLabelMid=M,a.yLabelMax=M+_.height/2,a.labelExtraX=0,a.labelExtraY=0,x=!0}v.fontSize=m.size,h(p.type,v,r),e[i].transform=v,g.attr(\"transform\",l.getTextTransform(v))}))}function L(t,e,r,n){var i=n*(e[0]-t[0]),o=n*(e[1]-t[1]);return\"a\"+n*f.r+\",\"+n*f.r+\" 0 \"+a.largeArc+(r?\" 1 \":\" 0 \")+i+\",\"+o}}));var _=n.select(this).selectAll(\"g.titletext\").data(p.title.text?[0]:[]);if(_.enter().append(\"g\").classed(\"titletext\",!0),_.exit().remove(),_.each((function(){var e,r=l.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),a=p.title.text;p._meta&&(a=l.templateString(a,p._meta)),r.text(a).attr({class:\"titletext\",transform:\"\",\"text-anchor\":\"middle\"}).call(s.font,p.title.font).call(c.convertToTspans,t),e=\"middle center\"===p.title.position?function(t){var e=Math.sqrt(t.titleBox.width*t.titleBox.width+t.titleBox.height*t.titleBox.height);return{x:t.cx,y:t.cy,scale:t.trace.hole*t.r*2/e,tx:0,ty:-t.titleBox.height/2+t.trace.title.font.size}}(f):E(f,i),r.attr(\"transform\",\"translate(\"+e.x+\",\"+e.y+\")\"+(e.scale<1?\"scale(\"+e.scale+\")\":\"\")+\"translate(\"+e.tx+\",\"+e.ty+\")\")})),x&&function(t,e){var r,n,a,i,o,s,l,c,u,h,f,p,g;function m(t,e){return t.pxmid[1]-e.pxmid[1]}function v(t,e){return e.pxmid[1]-t.pxmid[1]}function y(t,r){r||(r={});var a,c,u,f,p=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),g=n?t.yLabelMin:t.yLabelMax,m=n?t.yLabelMax:t.yLabelMin,v=t.cyFinal+o(t.px0[1],t.px1[1]),y=p-g;if(y*l>0&&(t.labelExtraY=y),Array.isArray(e.pull))for(c=0;c<h.length;c++)(u=h[c])===t||(d.castOption(e.pull,t.pts)||0)>=(d.castOption(e.pull,u.pts)||0)||((t.pxmid[1]-u.pxmid[1])*l>0?(y=u.cyFinal+o(u.px0[1],u.px1[1])-g-t.labelExtraY)*l>0&&(t.labelExtraY+=y):(m+t.labelExtraY-v)*l>0&&(a=3*s*Math.abs(c-h.indexOf(t)),(f=u.cxFinal+i(u.px0[0],u.px1[0])+a-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*s>0&&(t.labelExtraX+=f)))}for(n=0;n<2;n++)for(a=n?m:v,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(i=r?Math.max:Math.min,s=r?1:-1,(c=t[n][r]).sort(a),u=t[1-n][r],h=u.concat(c),p=[],f=0;f<c.length;f++)void 0!==c[f].yLabelMid&&p.push(c[f]);for(g=!1,f=0;n&&f<u.length;f++)if(void 0!==u[f].yLabelMid){g=u[f];break}for(f=0;f<p.length;f++){var x=f&&p[f-1];g&&!f&&(x=g),y(p[f],x)}}}(m,p),function(t,e){t.each((function(t){var r=n.select(this);if(t.labelExtraX||t.labelExtraY){var a=r.select(\"g.slicetext text\");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,a.attr(\"transform\",l.getTextTransform(t.transform));var i=t.cxFinal+t.pxmid[0],s=\"M\"+i+\",\"+(t.cyFinal+t.pxmid[1]),c=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],h=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(h)?s+=\"l\"+h*t.pxmid[0]/t.pxmid[1]+\",\"+h+\"H\"+(i+t.labelExtraX+c):s+=\"l\"+t.labelExtraX+\",\"+u+\"v\"+(h-u)+\"h\"+c}else s+=\"V\"+(t.yLabelMid+t.labelExtraY)+\"h\"+c;l.ensureSingle(r,\"path\",\"textline\").call(o.stroke,e.outsidetextfont.color).attr({\"stroke-width\":Math.min(2,e.outsidetextfont.size/8),d:s,fill:\"none\"})}else r.select(\"path.textline\").remove()}))}(g,p),x&&p.automargin){var w=s.bBox(u.node()),T=p.domain,k=i.w*(T.x[1]-T.x[0]),M=i.h*(T.y[1]-T.y[0]),A=(.5*k-f.r)/i.w,C=(.5*M-f.r)/i.h;a.autoMargin(t,\"pie.\"+p.uid+\".automargin\",{xl:T.x[0]-A,xr:T.x[1]+A,yb:T.y[0]-C,yt:T.y[1]+C,l:Math.max(f.cx-f.r-w.left,0),r:Math.max(w.right-(f.cx+f.r),0),b:Math.max(w.bottom-(f.cy+f.r),0),t:Math.max(f.cy-f.r-w.top,0),pad:5})}}))}));setTimeout((function(){u.selectAll(\"tspan\").each((function(){var t=n.select(this);t.attr(\"dy\")&&t.attr(\"dy\",t.attr(\"dy\"))}))}),0)},formatSliceLabel:z,transformInsideText:b,determineInsideTextFont:y,positionTitleOutside:E,prerenderTitles:x,layoutAreas:P,attachFxHandlers:v,computeTransform:O}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../components/fx\":655,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../../plots/plots\":861,\"../bar/constants\":893,\"../bar/uniform_text\":907,\"./event_data\":1134,\"./helpers\":1135,d3:169}],1140:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"./style_one\"),i=t(\"../bar/uniform_text\").resizeText;e.exports=function(t){var e=t._fullLayout._pielayer.selectAll(\".trace\");i(t,e,\"pie\"),e.each((function(t){var e=t[0].trace,r=n.select(this);r.style({opacity:e.opacity}),r.selectAll(\"path.surface\").each((function(t){n.select(this).call(a,t,e)}))}))}},{\"../bar/uniform_text\":907,\"./style_one\":1141,d3:169}],1141:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"./helpers\").castOption;e.exports=function(t,e,r){var i=r.marker.line,o=a(i.color,e.pts)||n.defaultLine,s=a(i.width,e.pts)||0;t.style(\"stroke-width\",s).call(n.fill,e.color).call(n.stroke,o)}},{\"../../components/color\":615,\"./helpers\":1135}],1142:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\");e.exports={x:n.x,y:n.y,xy:{valType:\"data_array\",editType:\"calc\"},indices:{valType:\"data_array\",editType:\"calc\"},xbounds:{valType:\"data_array\",editType:\"calc\"},ybounds:{valType:\"data_array\",editType:\"calc\"},text:n.text,marker:{color:{valType:\"color\",arrayOk:!1,editType:\"calc\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,arrayOk:!1,editType:\"calc\"},blend:{valType:\"boolean\",dflt:null,editType:\"calc\"},sizemin:{valType:\"number\",min:.1,max:2,dflt:.5,editType:\"calc\"},sizemax:{valType:\"number\",min:.1,dflt:20,editType:\"calc\"},border:{color:{valType:\"color\",arrayOk:!1,editType:\"calc\"},arearatio:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"},editType:\"calc\"},editType:\"calc\"},transforms:void 0}},{\"../scatter/attributes\":1156}],1143:[function(t,e,r){\"use strict\";var n=t(\"gl-pointcloud2d\"),a=t(\"../../lib/str2rgbarray\"),i=t(\"../../plots/cartesian/autorange\").findExtremes,o=t(\"../scatter/get_trace_color\");function s(t,e){this.scene=t,this.uid=e,this.type=\"pointcloud\",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color=\"rgb(0, 0, 0)\",this.name=\"\",this.hoverinfo=\"all\",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=n(t.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(t){var e=this.idToIndex[t.pointId];return{trace:this,dataCoord:t.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*e],this.pickXYData[2*e+1]]:[this.pickXData[e],this.pickYData[e]],textLabel:Array.isArray(this.textLabels)?this.textLabels[e]:this.textLabels,color:this.color,name:this.name,pointIndex:e,hoverinfo:this.hoverinfo}},l.update=function(t){this.index=t.index,this.textLabels=t.text,this.name=t.name,this.hoverinfo=t.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(t),this.color=o(t,{})},l.updateFast=function(t){var e,r,n,o,s,l,c=this.xData=this.pickXData=t.x,u=this.yData=this.pickYData=t.y,h=this.pickXYData=t.xy,f=t.xbounds&&t.ybounds,p=t.indices,d=this.bounds;if(h){if(n=h,e=h.length>>>1,f)d[0]=t.xbounds[0],d[2]=t.xbounds[1],d[1]=t.ybounds[0],d[3]=t.ybounds[1];else for(l=0;l<e;l++)o=n[2*l],s=n[2*l+1],o<d[0]&&(d[0]=o),o>d[2]&&(d[2]=o),s<d[1]&&(d[1]=s),s>d[3]&&(d[3]=s);if(p)r=p;else for(r=new Int32Array(e),l=0;l<e;l++)r[l]=l}else for(e=c.length,n=new Float32Array(2*e),r=new Int32Array(e),l=0;l<e;l++)o=c[l],s=u[l],r[l]=l,n[2*l]=o,n[2*l+1]=s,o<d[0]&&(d[0]=o),o>d[2]&&(d[2]=o),s<d[1]&&(d[1]=s),s>d[3]&&(d[3]=s);this.idToIndex=r,this.pointcloudOptions.idToIndex=r,this.pointcloudOptions.positions=n;var g=a(t.marker.color),m=a(t.marker.border.color),v=t.opacity*t.marker.opacity;g[3]*=v,this.pointcloudOptions.color=g;var y=t.marker.blend;if(null===y){y=c.length<100||u.length<100}this.pointcloudOptions.blend=y,m[3]*=v,this.pointcloudOptions.borderColor=m;var x=t.marker.sizemin,b=Math.max(t.marker.sizemax,t.marker.sizemin);this.pointcloudOptions.sizeMin=x,this.pointcloudOptions.sizeMax=b,this.pointcloudOptions.areaRatio=t.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var _=this.scene.xaxis,w=this.scene.yaxis,T=b/2||.5;t._extremes[_._id]=i(_,[d[0],d[2]],{ppad:T}),t._extremes[w._id]=i(w,[d[1],d[3]],{ppad:T})},l.dispose=function(){this.pointcloud.dispose()},e.exports=function(t,e){var r=new s(t,e.uid);return r.update(e),r}},{\"../../lib/str2rgbarray\":772,\"../../plots/cartesian/autorange\":797,\"../scatter/get_trace_color\":1166,\"gl-pointcloud2d\":303}],1144:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\");e.exports=function(t,e,r){function i(r,i){return n.coerce(t,e,a,r,i)}i(\"x\"),i(\"y\"),i(\"xbounds\"),i(\"ybounds\"),t.xy&&t.xy instanceof Float32Array&&(e.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(e.indices=t.indices),i(\"text\"),i(\"marker.color\",r),i(\"marker.opacity\"),i(\"marker.blend\"),i(\"marker.sizemin\"),i(\"marker.sizemax\"),i(\"marker.border.color\",r),i(\"marker.border.arearatio\"),e._length=null}},{\"../../lib\":749,\"./attributes\":1142}],1145:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"../scatter3d/calc\"),plot:t(\"./convert\"),moduleType:\"trace\",name:\"pointcloud\",basePlotModule:t(\"../../plots/gl2d\"),categories:[\"gl\",\"gl2d\",\"showLegend\"],meta:{}}},{\"../../plots/gl2d\":838,\"../scatter3d/calc\":1185,\"./attributes\":1142,\"./convert\":1143,\"./defaults\":1144}],1146:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../components/color/attributes\"),o=t(\"../../components/fx/attributes\"),s=t(\"../../plots/domain\").attributes,l=t(\"../../plots/template_attributes\").hovertemplateAttrs,c=t(\"../../components/colorscale/attributes\"),u=t(\"../../plot_api/plot_template\").templatedArray,h=t(\"../../lib/extend\").extendFlat,f=t(\"../../plot_api/edit_types\").overrideAll;t(\"../../constants/docs\").FORMAT_LINK;(e.exports=f({hoverinfo:h({},a.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:o.hoverlabel,domain:s({name:\"sankey\",trace:!0}),orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],dflt:\"h\"},valueformat:{valType:\"string\",dflt:\".3s\"},valuesuffix:{valType:\"string\",dflt:\"\"},arrangement:{valType:\"enumerated\",values:[\"snap\",\"perpendicular\",\"freeform\",\"fixed\"],dflt:\"snap\"},textfont:n({}),customdata:void 0,node:{label:{valType:\"data_array\",dflt:[]},groups:{valType:\"info_array\",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:\"number\",editType:\"calc\"}},x:{valType:\"data_array\",dflt:[]},y:{valType:\"data_array\",dflt:[]},color:{valType:\"color\",arrayOk:!0},customdata:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:i.defaultLine,arrayOk:!0},width:{valType:\"number\",min:0,dflt:.5,arrayOk:!0}},pad:{valType:\"number\",arrayOk:!1,min:0,dflt:20},thickness:{valType:\"number\",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:\"enumerated\",values:[\"all\",\"none\",\"skip\"],dflt:\"all\"},hoverlabel:o.hoverlabel,hovertemplate:l({},{keys:[\"value\",\"label\"]})},link:{label:{valType:\"data_array\",dflt:[]},color:{valType:\"color\",arrayOk:!0},customdata:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:i.defaultLine,arrayOk:!0},width:{valType:\"number\",min:0,dflt:0,arrayOk:!0}},source:{valType:\"data_array\",dflt:[]},target:{valType:\"data_array\",dflt:[]},value:{valType:\"data_array\",dflt:[]},hoverinfo:{valType:\"enumerated\",values:[\"all\",\"none\",\"skip\"],dflt:\"all\"},hoverlabel:o.hoverlabel,hovertemplate:l({},{keys:[\"value\",\"label\"]}),colorscales:u(\"concentrationscales\",{editType:\"calc\",label:{valType:\"string\",editType:\"calc\",dflt:\"\"},cmax:{valType:\"number\",editType:\"calc\",dflt:1},cmin:{valType:\"number\",editType:\"calc\",dflt:0},colorscale:h(c().colorscale,{dflt:[[0,\"white\"],[1,\"black\"]]})})}},\"calc\",\"nested\")).transforms=void 0},{\"../../components/color/attributes\":614,\"../../components/colorscale/attributes\":622,\"../../components/fx/attributes\":646,\"../../constants/docs\":719,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plot_api/plot_template\":787,\"../../plots/attributes\":794,\"../../plots/domain\":825,\"../../plots/font_attributes\":826,\"../../plots/template_attributes\":876}],1147:[function(t,e,r){\"use strict\";var n=t(\"../../plot_api/edit_types\").overrideAll,a=t(\"../../plots/get_data\").getModuleCalcData,i=t(\"./plot\"),o=t(\"../../components/fx/layout_attributes\"),s=t(\"../../lib/setcursor\"),l=t(\"../../components/dragelement\"),c=t(\"../../plots/cartesian/select\").prepSelect,u=t(\"../../lib\"),h=t(\"../../registry\");function f(t,e){var r=t._fullData[e],n=t._fullLayout,a=n.dragmode,i=\"pan\"===n.dragmode?\"move\":\"crosshair\",o=r._bgRect;if(\"pan\"!==a&&\"zoom\"!==a){s(o,i);var f={_id:\"x\",c2p:u.identity,_offset:r._sankey.translateX,_length:r._sankey.width},p={_id:\"y\",c2p:u.identity,_offset:r._sankey.translateY,_length:r._sankey.height},d={gd:t,element:o.node(),plotinfo:{id:e,xaxis:f,yaxis:p,fillRangeItems:u.noop},subplot:e,xaxes:[f],yaxes:[p],doneFnCompleted:function(r){var n,a=t._fullData[e],i=a.node.groups.slice(),o=[];function s(t){for(var e=a._sankey.graph.nodes,r=0;r<e.length;r++)if(e[r].pointNumber===t)return e[r]}for(var l=0;l<r.length;l++){var c=s(r[l].pointNumber);if(c)if(c.group){for(var u=0;u<c.childrenNodes.length;u++)o.push(c.childrenNodes[u].pointNumber);i[c.pointNumber-a.node._count]=!1}else o.push(c.pointNumber)}n=i.filter(Boolean).concat([o]),h.call(\"_guiRestyle\",t,{\"node.groups\":[n]},e)},prepFn:function(t,e,r){c(t,e,r,d,a)}};l.init(d)}}r.name=\"sankey\",r.baseLayoutAttrOverrides=n({hoverlabel:o.hoverlabel},\"plot\",\"nested\"),r.plot=function(t){var e=a(t.calcdata,\"sankey\")[0];i(t,e),r.updateFx(t)},r.clean=function(t,e,r,n){var a=n._has&&n._has(\"sankey\"),i=e._has&&e._has(\"sankey\");a&&!i&&(n._paperdiv.selectAll(\".sankey\").remove(),n._paperdiv.selectAll(\".bgsankey\").remove())},r.updateFx=function(t){for(var e=0;e<t._fullData.length;e++)f(t,e)}},{\"../../components/dragelement\":634,\"../../components/fx/layout_attributes\":656,\"../../lib\":749,\"../../lib/setcursor\":769,\"../../plot_api/edit_types\":780,\"../../plots/cartesian/select\":817,\"../../plots/get_data\":835,\"../../registry\":881,\"./plot\":1152}],1148:[function(t,e,r){\"use strict\";var n=t(\"strongly-connected-components\"),a=t(\"../../lib\"),i=t(\"../../lib/gup\").wrap,o=a.isArrayOrTypedArray,s=a.isIndex,l=t(\"../../components/colorscale\");function c(t){var e,r=t.node,i=t.link,c=[],u=o(i.color),h=o(i.customdata),f={},p={},d=i.colorscales.length;for(e=0;e<d;e++){var g=i.colorscales[e],m=l.extractScale(g,{cLetter:\"c\"}),v=l.makeColorScaleFunc(m);p[g.label]=v}var y=0;for(e=0;e<i.value.length;e++)i.source[e]>y&&(y=i.source[e]),i.target[e]>y&&(y=i.target[e]);var x,b=y+1;t.node._count=b;var _=t.node.groups,w={};for(e=0;e<_.length;e++){var T=_[e];for(x=0;x<T.length;x++){var k=T[x],M=b+e;w.hasOwnProperty(k)?a.warn(\"Node \"+k+\" is already part of a group.\"):w[k]=M}}var A={source:[],target:[]};for(e=0;e<i.value.length;e++){var S=i.value[e],E=i.source[e],C=i.target[e];if(S>0&&s(E,b)&&s(C,b)&&(!w.hasOwnProperty(E)||!w.hasOwnProperty(C)||w[E]!==w[C])){w.hasOwnProperty(C)&&(C=w[C]),w.hasOwnProperty(E)&&(E=w[E]),C=+C,f[E=+E]=f[C]=!0;var L=\"\";i.label&&i.label[e]&&(L=i.label[e]);var P=null;L&&p.hasOwnProperty(L)&&(P=p[L]),c.push({pointNumber:e,label:L,color:u?i.color[e]:i.color,customdata:h?i.customdata[e]:i.customdata,concentrationscale:P,source:E,target:C,value:+S}),A.source.push(E),A.target.push(C)}}var I=b+_.length,z=o(r.color),O=o(r.customdata),D=[];for(e=0;e<I;e++)if(f[e]){var R=r.label[e];D.push({group:e>b-1,childrenNodes:[],pointNumber:e,label:R,color:z?r.color[e]:r.color,customdata:O?r.customdata[e]:r.customdata})}var F=!1;return function(t,e,r){for(var i=a.init2dArray(t,0),o=0;o<Math.min(e.length,r.length);o++)if(a.isIndex(e[o],t)&&a.isIndex(r[o],t)){if(e[o]===r[o])return!0;i[e[o]].push(r[o])}return n(i).components.some((function(t){return t.length>1}))}(I,A.source,A.target)&&(F=!0),{circular:F,links:c,nodes:D,groups:_,groupLookup:w}}e.exports=function(t,e){var r=c(e);return i({circular:r.circular,_nodes:r.nodes,_links:r.links,_groups:r.groups,_groupLookup:r.groupLookup})}},{\"../../components/colorscale\":627,\"../../lib\":749,\"../../lib/gup\":746,\"strongly-connected-components\":541}],1149:[function(t,e,r){\"use strict\";e.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:\"linear\",cn:{sankey:\"sankey\",sankeyLinks:\"sankey-links\",sankeyLink:\"sankey-link\",sankeyNodeSet:\"sankey-node-set\",sankeyNode:\"sankey-node\",nodeRect:\"node-rect\",nodeCapture:\"node-capture\",nodeCentered:\"node-entered\",nodeLabelGuide:\"node-label-guide\",nodeLabel:\"node-label\",nodeLabelTextPath:\"node-label-text-path\"}}},{}],1150:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../components/color\"),o=t(\"tinycolor2\"),s=t(\"../../plots/domain\").defaults,l=t(\"../../components/fx/hoverlabel_defaults\"),c=t(\"../../plot_api/plot_template\"),u=t(\"../../plots/array_container_defaults\");function h(t,e){function r(r,i){return n.coerce(t,e,a.link.colorscales,r,i)}r(\"label\"),r(\"cmin\"),r(\"cmax\"),r(\"colorscale\")}e.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,a,r,i)}var d=n.extendDeep(f.hoverlabel,t.hoverlabel),g=t.node,m=c.newContainer(e,\"node\");function v(t,e){return n.coerce(g,m,a.node,t,e)}v(\"label\"),v(\"groups\"),v(\"x\"),v(\"y\"),v(\"pad\"),v(\"thickness\"),v(\"line.color\"),v(\"line.width\"),v(\"hoverinfo\",t.hoverinfo),l(g,m,v,d),v(\"hovertemplate\");var y=f.colorway;v(\"color\",m.label.map((function(t,e){return i.addOpacity(function(t){return y[t%y.length]}(e),.8)}))),v(\"customdata\");var x=t.link||{},b=c.newContainer(e,\"link\");function _(t,e){return n.coerce(x,b,a.link,t,e)}_(\"label\"),_(\"source\"),_(\"target\"),_(\"value\"),_(\"line.color\"),_(\"line.width\"),_(\"hoverinfo\",t.hoverinfo),l(x,b,_,d),_(\"hovertemplate\");var w,T=o(f.paper_bgcolor).getLuminance()<.333?\"rgba(255, 255, 255, 0.6)\":\"rgba(0, 0, 0, 0.2)\";_(\"color\",n.repeat(T,b.value.length)),_(\"customdata\"),u(x,b,{name:\"colorscales\",handleItemDefaults:h}),s(e,f,p),p(\"orientation\"),p(\"valueformat\"),p(\"valuesuffix\"),m.x.length&&m.y.length&&(w=\"freeform\"),p(\"arrangement\",w),n.coerceFont(p,\"textfont\",n.extendFlat({},f.font)),e._length=null}},{\"../../components/color\":615,\"../../components/fx/hoverlabel_defaults\":653,\"../../lib\":749,\"../../plot_api/plot_template\":787,\"../../plots/array_container_defaults\":793,\"../../plots/domain\":825,\"./attributes\":1146,tinycolor2:548}],1151:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),moduleType:\"trace\",name:\"sankey\",basePlotModule:t(\"./base_plot\"),selectPoints:t(\"./select.js\"),categories:[\"noOpacity\"],meta:{}}},{\"./attributes\":1146,\"./base_plot\":1147,\"./calc\":1148,\"./defaults\":1150,\"./plot\":1152,\"./select.js\":1154}],1152:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"./render\"),i=t(\"../../components/fx\"),o=t(\"../../components/color\"),s=t(\"../../lib\"),l=t(\"./constants\").cn,c=s._;function u(t){return\"\"!==t}function h(t,e){return t.filter((function(t){return t.key===e.traceId}))}function f(t,e){n.select(t).select(\"path\").style(\"fill-opacity\",e),n.select(t).select(\"rect\").style(\"fill-opacity\",e)}function p(t){n.select(t).select(\"text.name\").style(\"fill\",\"black\")}function d(t){return function(e){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function g(t){return function(e){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function m(t,e,r){e&&r&&h(r,e).selectAll(\".\"+l.sankeyLink).filter(d(e)).call(y.bind(0,e,r,!1))}function v(t,e,r){e&&r&&h(r,e).selectAll(\".\"+l.sankeyLink).filter(d(e)).call(x.bind(0,e,r,!1))}function y(t,e,r,n){var a=n.datum().link.label;n.style(\"fill-opacity\",(function(t){if(!t.link.concentrationscale)return.4})),a&&h(e,t).selectAll(\".\"+l.sankeyLink).filter((function(t){return t.link.label===a})).style(\"fill-opacity\",(function(t){if(!t.link.concentrationscale)return.4})),r&&h(e,t).selectAll(\".\"+l.sankeyNode).filter(g(t)).call(m)}function x(t,e,r,n){var a=n.datum().link.label;n.style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),a&&h(e,t).selectAll(\".\"+l.sankeyLink).filter((function(t){return t.link.label===a})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),r&&h(e,t).selectAll(l.sankeyNode).filter(g(t)).call(v)}function b(t,e){var r=t.hoverlabel||{},n=s.nestedProperty(r,e).get();return!Array.isArray(n)&&n}e.exports=function(t,e){for(var r=t._fullLayout,s=r._paper,h=r._size,d=0;d<t._fullData.length;d++)if(t._fullData[d].visible&&t._fullData[d].type===l.sankey&&!t._fullData[d]._viewInitial){var g=t._fullData[d].node;t._fullData[d]._viewInitial={node:{groups:g.groups.slice(),x:g.x.slice(),y:g.y.slice()}}}var _=c(t,\"source:\")+\" \",w=c(t,\"target:\")+\" \",T=c(t,\"concentration:\")+\" \",k=c(t,\"incoming flow count:\")+\" \",M=c(t,\"outgoing flow count:\")+\" \";a(t,s,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{linkEvents:{hover:function(e,r,a){!1!==t._fullLayout.hovermode&&(n.select(e).call(y.bind(0,r,a,!0)),\"skip\"!==r.link.trace.link.hoverinfo&&(r.link.fullData=r.link.trace,t.emit(\"plotly_hover\",{event:n.event,points:[r.link]})))},follow:function(e,a){if(!1!==t._fullLayout.hovermode){var s=a.link.trace.link;if(\"none\"!==s.hoverinfo&&\"skip\"!==s.hoverinfo){for(var l=[],c=0,h=0;h<a.flow.links.length;h++){var d=a.flow.links[h];if(\"closest\"!==t._fullLayout.hovermode||a.link.pointNumber===d.pointNumber){a.link.pointNumber===d.pointNumber&&(c=h),d.fullData=d.trace,s=a.link.trace.link;var g=v(d),m={valueLabel:n.format(a.valueFormat)(d.value)+a.valueSuffix};l.push({x:g[0],y:g[1],name:m.valueLabel,text:[d.label||\"\",_+d.source.label,w+d.target.label,d.concentrationscale?T+n.format(\"%0.2f\")(d.flow.labelConcentration):\"\"].filter(u).join(\"<br>\"),color:b(s,\"bgcolor\")||o.addOpacity(d.color,1),borderColor:b(s,\"bordercolor\"),fontFamily:b(s,\"font.family\"),fontSize:b(s,\"font.size\"),fontColor:b(s,\"font.color\"),nameLength:b(s,\"namelength\"),textAlign:b(s,\"align\"),idealAlign:n.event.x<g[0]?\"right\":\"left\",hovertemplate:s.hovertemplate,hovertemplateLabels:m,eventData:[d]})}}i.loneHover(l,{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t,anchorIndex:c}).each((function(){a.link.concentrationscale||f(this,.65),p(this)}))}}function v(t){var e,r;t.circular?(e=(t.circularPathData.leftInnerExtent+t.circularPathData.rightInnerExtent)/2,r=t.circularPathData.verticalFullExtent):(e=(t.source.x1+t.target.x0)/2,r=(t.y0+t.y1)/2);var n=[e,r];return\"v\"===t.trace.orientation&&n.reverse(),n[0]+=a.parent.translateX,n[1]+=a.parent.translateY,n}},unhover:function(e,a,o){!1!==t._fullLayout.hovermode&&(n.select(e).call(x.bind(0,a,o,!0)),\"skip\"!==a.link.trace.link.hoverinfo&&(a.link.fullData=a.link.trace,t.emit(\"plotly_unhover\",{event:n.event,points:[a.link]})),i.loneUnhover(r._hoverlayer.node()))},select:function(e,r){var a=r.link;a.originalEvent=n.event,t._hoverdata=[a],i.click(t,{target:!0})}},nodeEvents:{hover:function(e,r,a){!1!==t._fullLayout.hovermode&&(n.select(e).call(m,r,a),\"skip\"!==r.node.trace.node.hoverinfo&&(r.node.fullData=r.node.trace,t.emit(\"plotly_hover\",{event:n.event,points:[r.node]})))},follow:function(e,a){if(!1!==t._fullLayout.hovermode){var o=a.node.trace.node;if(\"none\"!==o.hoverinfo&&\"skip\"!==o.hoverinfo){var s=n.select(e).select(\".\"+l.nodeRect),c=t._fullLayout._paperdiv.node().getBoundingClientRect(),h=s.node().getBoundingClientRect(),d=h.left-2-c.left,g=h.right+2-c.left,m=h.top+h.height/4-c.top,v={valueLabel:n.format(a.valueFormat)(a.node.value)+a.valueSuffix};a.node.fullData=a.node.trace;var y=i.loneHover({x0:d,x1:g,y:m,name:n.format(a.valueFormat)(a.node.value)+a.valueSuffix,text:[a.node.label,k+a.node.targetLinks.length,M+a.node.sourceLinks.length].filter(u).join(\"<br>\"),color:b(o,\"bgcolor\")||a.tinyColorHue,borderColor:b(o,\"bordercolor\"),fontFamily:b(o,\"font.family\"),fontSize:b(o,\"font.size\"),fontColor:b(o,\"font.color\"),nameLength:b(o,\"namelength\"),textAlign:b(o,\"align\"),idealAlign:\"left\",hovertemplate:o.hovertemplate,hovertemplateLabels:v,eventData:[a.node]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t});f(y,.85),p(y)}}},unhover:function(e,a,o){!1!==t._fullLayout.hovermode&&(n.select(e).call(v,a,o),\"skip\"!==a.node.trace.node.hoverinfo&&(a.node.fullData=a.node.trace,t.emit(\"plotly_unhover\",{event:n.event,points:[a.node]})),i.loneUnhover(r._hoverlayer.node()))},select:function(e,r,a){var o=r.node;o.originalEvent=n.event,t._hoverdata=[o],n.select(e).call(v,r,a),i.click(t,{target:!0})}}})}},{\"../../components/color\":615,\"../../components/fx\":655,\"../../lib\":749,\"./constants\":1149,\"./render\":1153,d3:169}],1153:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"d3\"),i=t(\"tinycolor2\"),o=t(\"../../components/color\"),s=t(\"../../components/drawing\"),l=t(\"@plotly/d3-sankey\"),c=t(\"@plotly/d3-sankey-circular\"),u=t(\"d3-force\"),h=t(\"../../lib\"),f=t(\"../../lib/gup\"),p=f.keyFun,d=f.repeat,g=f.unwrap,m=t(\"d3-interpolate\").interpolateNumber,v=t(\"../../registry\");function y(t,e,r){var a,o=g(e),s=o.trace,u=s.domain,f=\"h\"===s.orientation,p=s.node.pad,d=s.node.thickness,m=t.width*(u.x[1]-u.x[0]),v=t.height*(u.y[1]-u.y[0]),y=o._nodes,x=o._links,b=o.circular;(a=b?c.sankeyCircular().circularLinkGap(0):l.sankey()).iterations(n.sankeyIterations).size(f?[m,v]:[v,m]).nodeWidth(d).nodePadding(p).nodeId((function(t){return t.pointNumber})).nodes(y).links(x);var _,w,T,k=a();for(var M in a.nodePadding()<p&&h.warn(\"node.pad was reduced to \",a.nodePadding(),\" to fit within the figure.\"),o._groupLookup){var A,S=parseInt(o._groupLookup[M]);for(_=0;_<k.nodes.length;_++)if(k.nodes[_].pointNumber===S){A=k.nodes[_];break}if(A){var E={pointNumber:parseInt(M),x0:A.x0,x1:A.x1,y0:A.y0,y1:A.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};k.nodes.unshift(E),A.childrenNodes.unshift(E)}}if(function(){for(_=0;_<k.nodes.length;_++){var t,e,r=k.nodes[_],n={};for(w=0;w<r.targetLinks.length;w++)t=(e=r.targetLinks[w]).source.pointNumber+\":\"+e.target.pointNumber,n.hasOwnProperty(t)||(n[t]=[]),n[t].push(e);var a=Object.keys(n);for(w=0;w<a.length;w++){var o=n[t=a[w]],s=0,l={};for(T=0;T<o.length;T++)l[(e=o[T]).label]||(l[e.label]=0),l[e.label]+=e.value,s+=e.value;for(T=0;T<o.length;T++)(e=o[T]).flow={value:s,labelConcentration:l[e.label]/s,concentration:e.value/s,links:o},e.concentrationscale&&(e.color=i(e.concentrationscale(e.flow.labelConcentration)))}var c=0;for(w=0;w<r.sourceLinks.length;w++)c+=r.sourceLinks[w].value;for(w=0;w<r.sourceLinks.length;w++)(e=r.sourceLinks[w]).concentrationOut=e.value/c;var u=0;for(w=0;w<r.targetLinks.length;w++)u+=r.targetLinks[w].value;for(w=0;w<r.targetLinks.length;w++)(e=r.targetLinks[w]).concenrationIn=e.value/u}}(),s.node.x.length&&s.node.y.length){for(_=0;_<Math.min(s.node.x.length,s.node.y.length,k.nodes.length);_++)if(s.node.x[_]&&s.node.y[_]){var C=[s.node.x[_]*m,s.node.y[_]*v];k.nodes[_].x0=C[0]-d/2,k.nodes[_].x1=C[0]+d/2;var L=k.nodes[_].y1-k.nodes[_].y0;k.nodes[_].y0=C[1]-L/2,k.nodes[_].y1=C[1]+L/2}if(\"snap\"===s.arrangement)!function(t){t.forEach((function(t){var e,r,n,a=0,i=t.length;for(t.sort((function(t,e){return t.y0-e.y0})),n=0;n<i;++n)(e=t[n]).y0>=a||(r=a-e.y0)>1e-6&&(e.y0+=r,e.y1+=r),a=e.y1+p}))}(function(t){var e,r,n=t.map((function(t,e){return{x0:t.x0,index:e}})).sort((function(t,e){return t.x0-e.x0})),a=[],i=-1,o=-1/0;for(_=0;_<n.length;_++){var s=t[n[_].index];s.x0>o+d&&(i+=1,e=s.x0),o=s.x0,a[i]||(a[i]=[]),a[i].push(s),r=e-s.x0,s.x0+=r,s.x1+=r}return a}(y=k.nodes));a.update(k)}return{circular:b,key:r,trace:s,guid:h.randstr(),horizontal:f,width:m,height:v,nodePad:s.node.pad,nodeLineColor:s.node.line.color,nodeLineWidth:s.node.line.width,linkLineColor:s.link.line.color,linkLineWidth:s.link.line.width,valueFormat:s.valueformat,valueSuffix:s.valuesuffix,textFont:s.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:f?v:m,dragPerpendicular:f?m:v,arrangement:s.arrangement,sankey:a,graph:k,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function x(t,e,r){var n=i(e.color),a=e.source.label+\"|\"+e.target.label+\"__\"+r;return e.trace=t.trace,e.curveNumber=t.trace.index,{circular:t.circular,key:a,traceId:t.key,pointNumber:e.pointNumber,link:e,tinyColorHue:o.tinyRGB(n),tinyColorAlpha:n.getAlpha(),linkPath:b,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function b(){return function(t){if(t.link.circular)return e=t.link,r=e.width/2,n=e.circularPathData,\"top\"===e.circularLinkType?\"M \"+n.targetX+\" \"+(n.targetY+r)+\" L\"+n.rightInnerExtent+\" \"+(n.targetY+r)+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightSmallArcRadius+r)+\" 0 0 1 \"+(n.rightFullExtent-r)+\" \"+(n.targetY-n.rightSmallArcRadius)+\"L\"+(n.rightFullExtent-r)+\" \"+n.verticalRightInnerExtent+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightLargeArcRadius+r)+\" 0 0 1 \"+n.rightInnerExtent+\" \"+(n.verticalFullExtent-r)+\"L\"+n.leftInnerExtent+\" \"+(n.verticalFullExtent-r)+\"A\"+(n.leftLargeArcRadius+r)+\" \"+(n.leftLargeArcRadius+r)+\" 0 0 1 \"+(n.leftFullExtent+r)+\" \"+n.verticalLeftInnerExtent+\"L\"+(n.leftFullExtent+r)+\" \"+(n.sourceY-n.leftSmallArcRadius)+\"A\"+(n.leftLargeArcRadius+r)+\" \"+(n.leftSmallArcRadius+r)+\" 0 0 1 \"+n.leftInnerExtent+\" \"+(n.sourceY+r)+\"L\"+n.sourceX+\" \"+(n.sourceY+r)+\"L\"+n.sourceX+\" \"+(n.sourceY-r)+\"L\"+n.leftInnerExtent+\" \"+(n.sourceY-r)+\"A\"+(n.leftLargeArcRadius-r)+\" \"+(n.leftSmallArcRadius-r)+\" 0 0 0 \"+(n.leftFullExtent-r)+\" \"+(n.sourceY-n.leftSmallArcRadius)+\"L\"+(n.leftFullExtent-r)+\" \"+n.verticalLeftInnerExtent+\"A\"+(n.leftLargeArcRadius-r)+\" \"+(n.leftLargeArcRadius-r)+\" 0 0 0 \"+n.leftInnerExtent+\" \"+(n.verticalFullExtent+r)+\"L\"+n.rightInnerExtent+\" \"+(n.verticalFullExtent+r)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightLargeArcRadius-r)+\" 0 0 0 \"+(n.rightFullExtent+r)+\" \"+n.verticalRightInnerExtent+\"L\"+(n.rightFullExtent+r)+\" \"+(n.targetY-n.rightSmallArcRadius)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightSmallArcRadius-r)+\" 0 0 0 \"+n.rightInnerExtent+\" \"+(n.targetY-r)+\"L\"+n.targetX+\" \"+(n.targetY-r)+\"Z\":\"M \"+n.targetX+\" \"+(n.targetY-r)+\" L\"+n.rightInnerExtent+\" \"+(n.targetY-r)+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightSmallArcRadius+r)+\" 0 0 0 \"+(n.rightFullExtent-r)+\" \"+(n.targetY+n.rightSmallArcRadius)+\"L\"+(n.rightFullExtent-r)+\" \"+n.verticalRightInnerExtent+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightLargeArcRadius+r)+\" 0 0 0 \"+n.rightInnerExtent+\" \"+(n.verticalFullExtent+r)+\"L\"+n.leftInnerExtent+\" \"+(n.verticalFullExtent+r)+\"A\"+(n.leftLargeArcRadius+r)+\" \"+(n.leftLargeArcRadius+r)+\" 0 0 0 \"+(n.leftFullExtent+r)+\" \"+n.verticalLeftInnerExtent+\"L\"+(n.leftFullExtent+r)+\" \"+(n.sourceY+n.leftSmallArcRadius)+\"A\"+(n.leftLargeArcRadius+r)+\" \"+(n.leftSmallArcRadius+r)+\" 0 0 0 \"+n.leftInnerExtent+\" \"+(n.sourceY-r)+\"L\"+n.sourceX+\" \"+(n.sourceY-r)+\"L\"+n.sourceX+\" \"+(n.sourceY+r)+\"L\"+n.leftInnerExtent+\" \"+(n.sourceY+r)+\"A\"+(n.leftLargeArcRadius-r)+\" \"+(n.leftSmallArcRadius-r)+\" 0 0 1 \"+(n.leftFullExtent-r)+\" \"+(n.sourceY+n.leftSmallArcRadius)+\"L\"+(n.leftFullExtent-r)+\" \"+n.verticalLeftInnerExtent+\"A\"+(n.leftLargeArcRadius-r)+\" \"+(n.leftLargeArcRadius-r)+\" 0 0 1 \"+n.leftInnerExtent+\" \"+(n.verticalFullExtent-r)+\"L\"+n.rightInnerExtent+\" \"+(n.verticalFullExtent-r)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightLargeArcRadius-r)+\" 0 0 1 \"+(n.rightFullExtent+r)+\" \"+n.verticalRightInnerExtent+\"L\"+(n.rightFullExtent+r)+\" \"+(n.targetY+n.rightSmallArcRadius)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightSmallArcRadius-r)+\" 0 0 1 \"+n.rightInnerExtent+\" \"+(n.targetY+r)+\"L\"+n.targetX+\" \"+(n.targetY+r)+\"Z\";var e,r,n,a=t.link.source.x1,i=t.link.target.x0,o=m(a,i),s=o(.5),l=o(.5),c=t.link.y0-t.link.width/2,u=t.link.y0+t.link.width/2,h=t.link.y1-t.link.width/2,f=t.link.y1+t.link.width/2;return\"M\"+a+\",\"+c+\"C\"+s+\",\"+c+\" \"+l+\",\"+h+\" \"+i+\",\"+h+\"L\"+i+\",\"+f+\"C\"+l+\",\"+f+\" \"+s+\",\"+u+\" \"+a+\",\"+u+\"Z\"}}function _(t,e){var r=i(e.color),a=n.nodePadAcross,s=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var l=e.dx,c=Math.max(.5,e.dy),u=\"node_\"+e.pointNumber;return e.group&&(u=h.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:u,partOfGroup:e.partOfGroup||!1,group:e.group,traceId:t.key,trace:t.trace,node:e,nodePad:t.nodePad,nodeLineColor:t.nodeLineColor,nodeLineWidth:t.nodeLineWidth,textFont:t.textFont,size:t.horizontal?t.height:t.width,visibleWidth:Math.ceil(l),visibleHeight:c,zoneX:-a,zoneY:-s,zoneWidth:l+2*a,zoneHeight:c+2*s,labelY:t.horizontal?e.dy/2+1:e.dx/2+1,left:1===e.originalLayer,sizeAcross:t.width,forceLayouts:t.forceLayouts,horizontal:t.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:o.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,graph:t.graph,arrangement:t.arrangement,uniqueNodeLabelPathId:[t.guid,t.key,u].join(\"_\"),interactionState:t.interactionState,figure:t}}function w(t){t.attr(\"transform\",(function(t){return\"translate(\"+t.node.x0.toFixed(3)+\", \"+t.node.y0.toFixed(3)+\")\"}))}function T(t){t.call(w)}function k(t,e){t.call(T),e.attr(\"d\",b())}function M(t){t.attr(\"width\",(function(t){return t.node.x1-t.node.x0})).attr(\"height\",(function(t){return t.visibleHeight}))}function A(t){return t.link.width>1||t.linkLineWidth>0}function S(t){return\"translate(\"+t.translateX+\",\"+t.translateY+\")\"+(t.horizontal?\"matrix(1 0 0 1 0 0)\":\"matrix(0 1 1 0 0 0)\")}function E(t){return\"translate(\"+(t.horizontal?0:t.labelY)+\" \"+(t.horizontal?t.labelY:0)+\")\"}function C(t){return a.svg.line()([[t.horizontal?t.left?-t.sizeAcross:t.visibleWidth+n.nodeTextOffsetHorizontal:n.nodeTextOffsetHorizontal,0],[t.horizontal?t.left?-n.nodeTextOffsetHorizontal:t.sizeAcross:t.visibleHeight-n.nodeTextOffsetHorizontal,0]])}function L(t){return t.horizontal?\"matrix(1 0 0 1 0 0)\":\"matrix(0 1 1 0 0 0)\"}function P(t){return t.horizontal?\"scale(1 1)\":\"scale(-1 1)\"}function I(t){return t.darkBackground&&!t.horizontal?\"rgb(255,255,255)\":\"rgb(0,0,0)\"}function z(t){return t.horizontal&&t.left?\"100%\":\"0%\"}function O(t,e,r){t.on(\".basic\",null).on(\"mouseover.basic\",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.hover(this,t,e),t.interactionState.hovered=[this,t])})).on(\"mousemove.basic\",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.follow(this,t),t.interactionState.hovered=[this,t])})).on(\"mouseout.basic\",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.unhover(this,t,e),t.interactionState.hovered=!1)})).on(\"click.basic\",(function(t){t.interactionState.hovered&&(r.unhover(this,t,e),t.interactionState.hovered=!1),t.interactionState.dragInProgress||t.partOfGroup||r.select(this,t,e)}))}function D(t,e,r,i){var o=a.behavior.drag().origin((function(t){return{x:t.node.x0+t.visibleWidth/2,y:t.node.y0+t.visibleHeight/2}})).on(\"dragstart\",(function(a){if(\"fixed\"!==a.arrangement&&(h.ensureSingle(i._fullLayout._infolayer,\"g\",\"dragcover\",(function(t){i._fullLayout._dragCover=t})),h.raiseToTop(this),a.interactionState.dragInProgress=a.node,F(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),\"snap\"===a.arrangement)){var o=a.traceId+\"|\"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):function(t,e,r,a){!function(t){for(var e=0;e<t.length;e++)t[e].y=(t[e].y0+t[e].y1)/2,t[e].x=(t[e].x0+t[e].x1)/2}(r.graph.nodes);var i=r.graph.nodes.filter((function(t){return t.originalX===r.node.originalX})).filter((function(t){return!t.partOfGroup}));r.forceLayouts[e]=u.forceSimulation(i).alphaDecay(0).force(\"collide\",u.forceCollide().radius((function(t){return t.dy/2+r.nodePad/2})).strength(1).iterations(n.forceIterations)).force(\"constrain\",function(t,e,r,a){return function(){for(var t=0,i=0;i<r.length;i++){var o=r[i];o===a.interactionState.dragInProgress?(o.x=o.lastDraggedX,o.y=o.lastDraggedY):(o.vx=(o.originalX-o.x)/n.forceTicksPerFrame,o.y=Math.min(a.size-o.dy/2,Math.max(o.dy/2,o.y))),t=Math.max(t,Math.abs(o.vx),Math.abs(o.vy))}!a.interactionState.dragInProgress&&t<.1&&a.forceLayouts[e].alpha()>0&&a.forceLayouts[e].alpha(0)}}(0,e,i,r)).stop()}(0,o,a),function(t,e,r,a,i){window.requestAnimationFrame((function o(){var s;for(s=0;s<n.forceTicksPerFrame;s++)r.forceLayouts[a].tick();if(function(t){for(var e=0;e<t.length;e++)t[e].y0=t[e].y-t[e].dy/2,t[e].y1=t[e].y0+t[e].dy,t[e].x0=t[e].x-t[e].dx/2,t[e].x1=t[e].x0+t[e].dx}(r.graph.nodes),r.sankey.update(r.graph),k(t.filter(B(r)),e),r.forceLayouts[a].alpha()>0)window.requestAnimationFrame(o);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,R(r,i)}}))}(t,e,a,o,i)}})).on(\"drag\",(function(r){if(\"fixed\"!==r.arrangement){var n=a.event.x,i=a.event.y;\"snap\"===r.arrangement?(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2,r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2):(\"freeform\"===r.arrangement&&(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2),i=Math.max(0,Math.min(r.size-r.visibleHeight/2,i)),r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2),F(r.node),\"snap\"!==r.arrangement&&(r.sankey.update(r.graph),k(t.filter(B(r)),e))}})).on(\"dragend\",(function(t){if(\"fixed\"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;e<t.node.childrenNodes.length;e++)t.node.childrenNodes[e].x=t.node.x,t.node.childrenNodes[e].y=t.node.y;\"snap\"!==t.arrangement&&R(t,i)}}));t.on(\".drag\",null).call(o)}function R(t,e){for(var r=[],n=[],a=0;a<t.graph.nodes.length;a++){var i=(t.graph.nodes[a].x0+t.graph.nodes[a].x1)/2,o=(t.graph.nodes[a].y0+t.graph.nodes[a].y1)/2;r.push(i/t.figure.width),n.push(o/t.figure.height)}v.call(\"_guiRestyle\",e,{\"node.x\":[r],\"node.y\":[n]},t.trace.index).then((function(){e._fullLayout._dragCover&&e._fullLayout._dragCover.remove()}))}function F(t){t.lastDraggedX=t.x0+t.dx/2,t.lastDraggedY=t.y0+t.dy/2}function B(t){return function(e){return e.node.originalX===t.node.originalX}}e.exports=function(t,e,r,l,c){var u=!1;h.ensureSingle(t._fullLayout._infolayer,\"g\",\"first-render\",(function(){u=!0}));var f=t._fullLayout._dragCover,m=r.filter((function(t){return g(t).trace.visible})).map(y.bind(null,l)),v=e.selectAll(\".\"+n.cn.sankey).data(m,p);v.exit().remove(),v.enter().append(\"g\").classed(n.cn.sankey,!0).style(\"box-sizing\",\"content-box\").style(\"position\",\"absolute\").style(\"left\",0).style(\"shape-rendering\",\"geometricPrecision\").style(\"pointer-events\",\"auto\").attr(\"transform\",S),v.each((function(e,r){t._fullData[r]._sankey=e;var n=\"bgsankey-\"+e.trace.uid+\"-\"+r;h.ensureSingle(t._fullLayout._draggers,\"rect\",n),t._fullData[r]._bgRect=a.select(\".\"+n),t._fullData[r]._bgRect.style(\"pointer-events\",\"all\").attr(\"width\",e.width).attr(\"height\",e.height).attr(\"x\",e.translateX).attr(\"y\",e.translateY).classed(\"bgsankey\",!0).style({fill:\"transparent\",\"stroke-width\":0})})),v.transition().ease(n.ease).duration(n.duration).attr(\"transform\",S);var T=v.selectAll(\".\"+n.cn.sankeyLinks).data(d,p);T.enter().append(\"g\").classed(n.cn.sankeyLinks,!0).style(\"fill\",\"none\");var k=T.selectAll(\".\"+n.cn.sankeyLink).data((function(t){return t.graph.links.filter((function(t){return t.value})).map(x.bind(null,t))}),p);k.enter().append(\"path\").classed(n.cn.sankeyLink,!0).call(O,v,c.linkEvents),k.style(\"stroke\",(function(t){return A(t)?o.tinyRGB(i(t.linkLineColor)):t.tinyColorHue})).style(\"stroke-opacity\",(function(t){return A(t)?o.opacity(t.linkLineColor):t.tinyColorAlpha})).style(\"fill\",(function(t){return t.tinyColorHue})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})).style(\"stroke-width\",(function(t){return A(t)?t.linkLineWidth:1})).attr(\"d\",b()),k.style(\"opacity\",(function(){return t._context.staticPlot||u||f?1:0})).transition().ease(n.ease).duration(n.duration).style(\"opacity\",1),k.exit().transition().ease(n.ease).duration(n.duration).style(\"opacity\",0).remove();var R=v.selectAll(\".\"+n.cn.sankeyNodeSet).data(d,p);R.enter().append(\"g\").classed(n.cn.sankeyNodeSet,!0),R.style(\"cursor\",(function(t){switch(t.arrangement){case\"fixed\":return\"default\";case\"perpendicular\":return\"ns-resize\";default:return\"move\"}}));var F=R.selectAll(\".\"+n.cn.sankeyNode).data((function(t){var e=t.graph.nodes;return function(t){var e,r=[];for(e=0;e<t.length;e++)t[e].originalX=(t[e].x0+t[e].x1)/2,t[e].originalY=(t[e].y0+t[e].y1)/2,-1===r.indexOf(t[e].originalX)&&r.push(t[e].originalX);for(r.sort((function(t,e){return t-e})),e=0;e<t.length;e++)t[e].originalLayerIndex=r.indexOf(t[e].originalX),t[e].originalLayer=t[e].originalLayerIndex/(r.length-1)}(e),e.map(_.bind(null,t))}),p);F.enter().append(\"g\").classed(n.cn.sankeyNode,!0).call(w).style(\"opacity\",(function(e){return!t._context.staticPlot&&!u||e.partOfGroup?0:1})),F.call(O,v,c.nodeEvents).call(D,k,c,t),F.transition().ease(n.ease).duration(n.duration).call(w).style(\"opacity\",(function(t){return t.partOfGroup?0:1})),F.exit().transition().ease(n.ease).duration(n.duration).style(\"opacity\",0).remove();var B=F.selectAll(\".\"+n.cn.nodeRect).data(d);B.enter().append(\"rect\").classed(n.cn.nodeRect,!0).call(M),B.style(\"stroke-width\",(function(t){return t.nodeLineWidth})).style(\"stroke\",(function(t){return o.tinyRGB(i(t.nodeLineColor))})).style(\"stroke-opacity\",(function(t){return o.opacity(t.nodeLineColor)})).style(\"fill\",(function(t){return t.tinyColorHue})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),B.transition().ease(n.ease).duration(n.duration).call(M);var N=F.selectAll(\".\"+n.cn.nodeCapture).data(d);N.enter().append(\"rect\").classed(n.cn.nodeCapture,!0).style(\"fill-opacity\",0),N.attr(\"x\",(function(t){return t.zoneX})).attr(\"y\",(function(t){return t.zoneY})).attr(\"width\",(function(t){return t.zoneWidth})).attr(\"height\",(function(t){return t.zoneHeight}));var j=F.selectAll(\".\"+n.cn.nodeCentered).data(d);j.enter().append(\"g\").classed(n.cn.nodeCentered,!0).attr(\"transform\",E),j.transition().ease(n.ease).duration(n.duration).attr(\"transform\",E);var U=j.selectAll(\".\"+n.cn.nodeLabelGuide).data(d);U.enter().append(\"path\").classed(n.cn.nodeLabelGuide,!0).attr(\"id\",(function(t){return t.uniqueNodeLabelPathId})).attr(\"d\",C).attr(\"transform\",L),U.transition().ease(n.ease).duration(n.duration).attr(\"d\",C).attr(\"transform\",L);var V=j.selectAll(\".\"+n.cn.nodeLabel).data(d);V.enter().append(\"text\").classed(n.cn.nodeLabel,!0).attr(\"transform\",P).style(\"cursor\",\"default\").style(\"fill\",\"black\"),V.style(\"text-shadow\",(function(t){return t.horizontal?\"-1px 1px 1px #fff, 1px 1px 1px #fff, 1px -1px 1px #fff, -1px -1px 1px #fff\":\"none\"})).each((function(t){s.font(V,t.textFont)})),V.transition().ease(n.ease).duration(n.duration).attr(\"transform\",P);var q=V.selectAll(\".\"+n.cn.nodeLabelTextPath).data(d);q.enter().append(\"textPath\").classed(n.cn.nodeLabelTextPath,!0).attr(\"alignment-baseline\",\"middle\").attr(\"xlink:href\",(function(t){return\"#\"+t.uniqueNodeLabelPathId})).attr(\"startOffset\",z).style(\"fill\",I),q.text((function(t){return t.horizontal||t.node.dy>5?t.node.label:\"\"})).attr(\"text-anchor\",(function(t){return t.horizontal&&t.left?\"end\":\"start\"})),q.transition().ease(n.ease).duration(n.duration).attr(\"startOffset\",z).style(\"fill\",I)}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/gup\":746,\"../../registry\":881,\"./constants\":1149,\"@plotly/d3-sankey\":56,\"@plotly/d3-sankey-circular\":55,d3:169,\"d3-force\":160,\"d3-interpolate\":162,tinycolor2:548}],1154:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=[],n=t.cd[0].trace,a=n._sankey.graph.nodes,i=0;i<a.length;i++){var o=a[i];if(!o.partOfGroup){var s=[(o.x0+o.x1)/2,(o.y0+o.y1)/2];\"v\"===n.orientation&&s.reverse(),e&&e.contains(s,!1,i,t)&&r.push({pointNumber:o.pointNumber})}}return r}},{}],1155:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,\"tx\"),n.mergeArray(e.texttemplate,t,\"txt\"),n.mergeArray(e.hovertext,t,\"htx\"),n.mergeArray(e.customdata,t,\"data\"),n.mergeArray(e.textposition,t,\"tp\"),e.textfont&&(n.mergeArrayCastPositive(e.textfont.size,t,\"ts\"),n.mergeArray(e.textfont.color,t,\"tc\"),n.mergeArray(e.textfont.family,t,\"tf\"));var a=e.marker;if(a){n.mergeArrayCastPositive(a.size,t,\"ms\"),n.mergeArrayCastPositive(a.opacity,t,\"mo\"),n.mergeArray(a.symbol,t,\"mx\"),n.mergeArray(a.color,t,\"mc\");var i=a.line;a.line&&(n.mergeArray(i.color,t,\"mlc\"),n.mergeArrayCastPositive(i.width,t,\"mlw\"));var o=a.gradient;o&&\"none\"!==o.type&&(n.mergeArray(o.type,t,\"mgt\"),n.mergeArray(o.color,t,\"mgc\"))}}},{\"../../lib\":749}],1156:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").texttemplateAttrs,a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../../components/colorscale/attributes\"),o=t(\"../../plots/font_attributes\"),s=t(\"../../components/drawing/attributes\").dash,l=t(\"../../components/drawing\"),c=t(\"./constants\"),u=t(\"../../lib/extend\").extendFlat;e.exports={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\",anim:!0},x0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\",anim:!0},dx:{valType:\"number\",dflt:1,editType:\"calc\",anim:!0},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\",anim:!0},y0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\",anim:!0},dy:{valType:\"number\",dflt:1,editType:\"calc\",anim:!0},xperiod:{valType:\"any\",dflt:0,editType:\"calc\"},yperiod:{valType:\"any\",dflt:0,editType:\"calc\"},xperiod0:{valType:\"any\",editType:\"calc\"},yperiod0:{valType:\"any\",editType:\"calc\"},xperiodalignment:{valType:\"enumerated\",values:[\"start\",\"middle\",\"end\"],dflt:\"middle\",editType:\"calc\"},yperiodalignment:{valType:\"enumerated\",values:[\"start\",\"middle\",\"end\"],dflt:\"middle\",editType:\"calc\"},stackgroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],editType:\"calc\"},groupnorm:{valType:\"enumerated\",values:[\"\",\"fraction\",\"percent\"],dflt:\"\",editType:\"calc\"},stackgaps:{valType:\"enumerated\",values:[\"infer zero\",\"interpolate\"],dflt:\"infer zero\",editType:\"calc\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},texttemplate:n({},{}),hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"style\"},mode:{valType:\"flaglist\",flags:[\"lines\",\"markers\",\"text\"],extras:[\"none\"],editType:\"calc\"},hoveron:{valType:\"flaglist\",flags:[\"points\",\"fills\"],editType:\"style\"},hovertemplate:a({},{keys:c.eventDataKeys}),line:{color:{valType:\"color\",editType:\"style\",anim:!0},width:{valType:\"number\",min:0,dflt:2,editType:\"style\",anim:!0},shape:{valType:\"enumerated\",values:[\"linear\",\"spline\",\"hv\",\"vh\",\"hvh\",\"vhv\"],dflt:\"linear\",editType:\"plot\"},smoothing:{valType:\"number\",min:0,max:1.3,dflt:1,editType:\"plot\"},dash:u({},s,{editType:\"style\"}),simplify:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},connectgaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},cliponaxis:{valType:\"boolean\",dflt:!0,editType:\"plot\"},fill:{valType:\"enumerated\",values:[\"none\",\"tozeroy\",\"tozerox\",\"tonexty\",\"tonextx\",\"toself\",\"tonext\"],editType:\"calc\"},fillcolor:{valType:\"color\",editType:\"style\",anim:!0},marker:u({symbol:{valType:\"enumerated\",values:l.symbolList,dflt:\"circle\",arrayOk:!0,editType:\"style\"},opacity:{valType:\"number\",min:0,max:1,arrayOk:!0,editType:\"style\",anim:!0},size:{valType:\"number\",min:0,dflt:6,arrayOk:!0,editType:\"calc\",anim:!0},maxdisplayed:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},sizeref:{valType:\"number\",dflt:1,editType:\"calc\"},sizemin:{valType:\"number\",min:0,dflt:0,editType:\"calc\"},sizemode:{valType:\"enumerated\",values:[\"diameter\",\"area\"],dflt:\"diameter\",editType:\"calc\"},line:u({width:{valType:\"number\",min:0,arrayOk:!0,editType:\"style\",anim:!0},editType:\"calc\"},i(\"marker.line\",{anim:!0})),gradient:{type:{valType:\"enumerated\",values:[\"radial\",\"horizontal\",\"vertical\",\"none\"],arrayOk:!0,dflt:\"none\",editType:\"calc\"},color:{valType:\"color\",arrayOk:!0,editType:\"calc\"},editType:\"calc\"},editType:\"calc\"},i(\"marker\",{anim:!0})),selected:{marker:{opacity:{valType:\"number\",min:0,max:1,editType:\"style\"},color:{valType:\"color\",editType:\"style\"},size:{valType:\"number\",min:0,editType:\"style\"},editType:\"style\"},textfont:{color:{valType:\"color\",editType:\"style\"},editType:\"style\"},editType:\"style\"},unselected:{marker:{opacity:{valType:\"number\",min:0,max:1,editType:\"style\"},color:{valType:\"color\",editType:\"style\"},size:{valType:\"number\",min:0,editType:\"style\"},editType:\"style\"},textfont:{color:{valType:\"color\",editType:\"style\"},editType:\"style\"},editType:\"style\"},textposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle left\",\"middle center\",\"middle right\",\"bottom left\",\"bottom center\",\"bottom right\"],dflt:\"middle center\",arrayOk:!0,editType:\"calc\"},textfont:o({editType:\"calc\",colorEditType:\"style\",arrayOk:!0}),r:{valType:\"data_array\",editType:\"calc\"},t:{valType:\"data_array\",editType:\"calc\"}}},{\"../../components/colorscale/attributes\":622,\"../../components/drawing\":637,\"../../components/drawing/attributes\":636,\"../../lib/extend\":739,\"../../plots/font_attributes\":826,\"../../plots/template_attributes\":876,\"./constants\":1160}],1157:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../plots/cartesian/align_period\"),s=t(\"../../constants/numerical\").BADNUM,l=t(\"./subtypes\"),c=t(\"./colorscale_calc\"),u=t(\"./arrays_to_calcdata\"),h=t(\"./calc_selection\");function f(t,e,r,n,a,o,s){var c=e._length,u=t._fullLayout,h=r._id,f=n._id,p=u._firstScatter[g(e)]===e.uid,d=(m(e,u,r,n)||{}).orientation,v=e.fill;r._minDtick=0,n._minDtick=0;var y={padded:!0},x={padded:!0};s&&(y.ppad=x.ppad=s);var b=c<2||a[0]!==a[c-1]||o[0]!==o[c-1];b&&(\"tozerox\"===v||\"tonextx\"===v&&(p||\"h\"===d))?y.tozero=!0:(e.error_y||{}).visible||\"tonexty\"!==v&&\"tozeroy\"!==v&&(l.hasMarkers(e)||l.hasText(e))||(y.padded=!1,y.ppad=0),b&&(\"tozeroy\"===v||\"tonexty\"===v&&(p||\"v\"===d))?x.tozero=!0:\"tonextx\"!==v&&\"tozerox\"!==v||(x.padded=!1),h&&(e._extremes[h]=i.findExtremes(r,a,y)),f&&(e._extremes[f]=i.findExtremes(n,o,x))}function p(t,e){if(l.hasMarkers(t)){var r,n=t.marker,o=1.6*(t.marker.sizeref||1);if(r=\"area\"===t.marker.sizemode?function(t){return Math.max(Math.sqrt((t||0)/o),3)}:function(t){return Math.max((t||0)/o,3)},a.isArrayOrTypedArray(n.size)){var s={type:\"linear\"};i.setConvert(s);for(var c=s.makeCalcdata(t.marker,\"size\"),u=new Array(e),h=0;h<e;h++)u[h]=r(c[h]);return u}return r(n.size)}}function d(t,e){var r=g(e),n=t._firstScatter;n[r]||(n[r]=e.uid)}function g(t){var e=t.stackgroup;return t.xaxis+t.yaxis+t.type+(e?\"-\"+e:\"\")}function m(t,e,r,n){var a=t.stackgroup;if(a){var i=e._scatterStackOpts[r._id+n._id][a],o=\"v\"===i.orientation?n:r;return\"linear\"===o.type||\"log\"===o.type?i:void 0}}e.exports={calc:function(t,e){var r,l,g,v,y,x,b=t._fullLayout,_=i.getFromId(t,e.xaxis||\"x\"),w=i.getFromId(t,e.yaxis||\"y\"),T=_.makeCalcdata(e,\"x\"),k=w.makeCalcdata(e,\"y\"),M=o(e,_,\"x\",T),A=o(e,w,\"y\",k),S=e._length,E=new Array(S),C=e.ids,L=m(e,b,_,w),P=!1;d(b,e);var I,z=\"x\",O=\"y\";L?(a.pushUnique(L.traceIndices,e._expandedIndex),(r=\"v\"===L.orientation)?(O=\"s\",I=\"x\"):(z=\"s\",I=\"y\"),y=\"interpolate\"===L.stackgaps):f(t,e,_,w,M,A,p(e,S));var D=!!e.xperiodalignment,R=!!e.yperiodalignment;for(l=0;l<S;l++){var F=E[l]={},B=n(M[l]),N=n(A[l]);B&&N?(F[z]=M[l],F[O]=A[l],D&&(F.orig_x=T[l]),R&&(F.orig_y=k[l])):L&&(r?B:N)?(F[I]=r?M[l]:A[l],F.gap=!0,y?(F.s=s,P=!0):F.s=0):F[z]=F[O]=s,C&&(F.id=String(C[l]))}if(u(E,e),c(t,e),h(E,e),L){for(l=0;l<E.length;)E[l][I]===s?E.splice(l,1):l++;if(a.sort(E,(function(t,e){return t[I]-e[I]||t.i-e.i})),P){for(l=0;l<E.length-1&&E[l].gap;)l++;for((x=E[l].s)||(x=E[l].s=0),g=0;g<l;g++)E[g].s=x;for(v=E.length-1;v>l&&E[v].gap;)v--;for(x=E[v].s,g=E.length-1;g>v;g--)E[g].s=x;for(;l<v;)if(E[++l].gap){for(g=l+1;E[g].gap;)g++;for(var j=E[l-1][I],U=E[l-1].s,V=(E[g].s-U)/(E[g][I]-j);l<g;)E[l].s=U+(E[l][I]-j)*V,l++}}}return E},calcMarkerSize:p,calcAxisExpansion:f,setFirstScatter:d,getStackOpts:m}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"./arrays_to_calcdata\":1155,\"./calc_selection\":1158,\"./colorscale_calc\":1159,\"./subtypes\":1181,\"fast-isnumeric\":241}],1158:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){n.isArrayOrTypedArray(e.selectedpoints)&&n.tagSelected(t,e)}},{\"../../lib\":749}],1159:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/helpers\").hasColorscale,a=t(\"../../components/colorscale/calc\"),i=t(\"./subtypes\");e.exports=function(t,e){i.hasLines(e)&&n(e,\"line\")&&a(t,e,{vals:e.line.color,containerStr:\"line\",cLetter:\"c\"}),i.hasMarkers(e)&&(n(e,\"marker\")&&a(t,e,{vals:e.marker.color,containerStr:\"marker\",cLetter:\"c\"}),n(e,\"marker.line\")&&a(t,e,{vals:e.marker.line.color,containerStr:\"marker.line\",cLetter:\"c\"}))}},{\"../../components/colorscale/calc\":623,\"../../components/colorscale/helpers\":626,\"./subtypes\":1181}],1160:[function(t,e,r){\"use strict\";e.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}},{}],1161:[function(t,e,r){\"use strict\";var n=t(\"./calc\");function a(t,e,r,n,a,i,o){a[n]=!0;var s={i:null,gap:!0,s:0};if(s[o]=r,t.splice(e,0,s),e&&r===t[e-1][o]){var l=t[e-1];s.s=l.s,s.i=l.i,s.gap=l.gap}else i&&(s.s=function(t,e,r,n){var a=t[e-1],i=t[e+1];return i?a?a.s+(i.s-a.s)*(r-a[n])/(i[n]-a[n]):i.s:a.s}(t,e,r,o));e||(t[0].t=t[1].t,t[0].trace=t[1].trace,delete t[1].t,delete t[1].trace)}e.exports=function(t,e){var r=e.xaxis,i=e.yaxis,o=r._id+i._id,s=t._fullLayout._scatterStackOpts[o];if(s){var l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T=t.calcdata;for(var k in s){var M=(v=s[k]).traceIndices;if(M.length){for(y=\"interpolate\"===v.stackgaps,x=v.groupnorm,\"v\"===v.orientation?(b=\"x\",_=\"y\"):(b=\"y\",_=\"x\"),w=new Array(M.length),l=0;l<w.length;l++)w[l]=!1;p=T[M[0]];var A=new Array(p.length);for(l=0;l<p.length;l++)A[l]=p[l][b];for(l=1;l<M.length;l++){for(f=T[M[l]],c=u=0;c<f.length;c++){for(d=f[c][b];d>A[u]&&u<A.length;u++)a(f,c,A[u],l,w,y,b),c++;if(d!==A[u]){for(h=0;h<l;h++)a(T[M[h]],u,d,h,w,y,b);A.splice(u,0,d)}u++}for(;u<A.length;u++)a(f,c,A[u],l,w,y,b),c++}var S=A.length;for(c=0;c<p.length;c++){for(g=p[c][_]=p[c].s,l=1;l<M.length;l++)(f=T[M[l]])[0].trace._rawLength=f[0].trace._length,f[0].trace._length=S,g+=f[c].s,f[c][_]=g;if(x)for(m=(\"fraction\"===x?g:g/100)||1,l=0;l<M.length;l++){var E=T[M[l]][c];E[_]/=m,E.sNorm=E.s/m}}for(l=0;l<M.length;l++){var C=(f=T[M[l]])[0].trace,L=n.calcMarkerSize(C,C._rawLength),P=Array.isArray(L);if(L&&w[l]||P){var I=L;for(L=new Array(S),c=0;c<S;c++)L[c]=f[c].gap?0:P?I[f[c].i]:I}var z=new Array(S),O=new Array(S);for(c=0;c<S;c++)z[c]=f[c].x,O[c]=f[c].y;n.calcAxisExpansion(t,C,r,i,z,O,L),f[0].t.orientation=v.orientation}}}}}},{\"./calc\":1157}],1162:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=0;e<t.length;e++){var r=t[e];if(\"scatter\"===r.type){var n=r.fill;if(\"none\"!==n&&\"toself\"!==n&&(r.opacity=void 0,\"tonexty\"===n||\"tonextx\"===n))for(var a=e-1;a>=0;a--){var i=t[a];if(\"scatter\"===i.type&&i.xaxis===r.xaxis&&i.yaxis===r.yaxis){i.opacity=void 0;break}}}}}},{}],1163:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"./attributes\"),o=t(\"./constants\"),s=t(\"./subtypes\"),l=t(\"./xy_defaults\"),c=t(\"./period_defaults\"),u=t(\"./stack_defaults\"),h=t(\"./marker_defaults\"),f=t(\"./line_defaults\"),p=t(\"./line_shape_defaults\"),d=t(\"./text_defaults\"),g=t(\"./fillcolor_defaults\");e.exports=function(t,e,r,m){function v(r,a){return n.coerce(t,e,i,r,a)}var y=l(t,e,m,v);if(y||(e.visible=!1),e.visible){c(t,e,m,v);var x=u(t,e,m,v),b=!x&&y<o.PTS_LINESONLY?\"lines+markers\":\"lines\";v(\"text\"),v(\"hovertext\"),v(\"mode\",b),s.hasLines(e)&&(f(t,e,r,m,v),p(t,e,v),v(\"connectgaps\"),v(\"line.simplify\")),s.hasMarkers(e)&&h(t,e,r,m,v,{gradient:!0}),s.hasText(e)&&(v(\"texttemplate\"),d(t,e,m,v));var _=[];(s.hasMarkers(e)||s.hasText(e))&&(v(\"cliponaxis\"),v(\"marker.maxdisplayed\"),_.push(\"points\")),v(\"fill\",x?x.fillDflt:\"none\"),\"none\"!==e.fill&&(g(t,e,r,v),s.hasLines(e)||p(t,e,v));var w=(e.line||{}).color,T=(e.marker||{}).color;\"tonext\"!==e.fill&&\"toself\"!==e.fill||_.push(\"fills\"),v(\"hoveron\",_.join(\"+\")||\"points\"),\"fills\"!==e.hoveron&&v(\"hovertemplate\");var k=a.getComponentMethod(\"errorbars\",\"supplyDefaults\");k(t,e,w||T||r,{axis:\"y\"}),k(t,e,w||T||r,{axis:\"x\",inherit:\"y\"}),n.coerceSelectionMarkerOpacity(e,v)}}},{\"../../lib\":749,\"../../registry\":881,\"./attributes\":1156,\"./constants\":1160,\"./fillcolor_defaults\":1164,\"./line_defaults\":1169,\"./line_shape_defaults\":1171,\"./marker_defaults\":1175,\"./period_defaults\":1176,\"./stack_defaults\":1179,\"./subtypes\":1181,\"./text_defaults\":1182,\"./xy_defaults\":1183}],1164:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r,i){var o=!1;if(e.marker){var s=e.marker.color,l=(e.marker.line||{}).color;s&&!a(s)?o=s:l&&!a(l)&&(o=l)}i(\"fillcolor\",n.addOpacity((e.line||{}).color||o||r,.5))}},{\"../../components/color\":615,\"../../lib\":749}],1165:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\");e.exports=function(t,e,r){var a={},i={_fullLayout:r},o=n.getFromTrace(i,e,\"x\"),s=n.getFromTrace(i,e,\"y\");return a.xLabel=n.tickText(o,t.x,!0).text,a.yLabel=n.tickText(s,t.y,!0).text,a}},{\"../../plots/cartesian/axes\":798}],1166:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"./subtypes\");e.exports=function(t,e){var r,i;if(\"lines\"===t.mode)return(r=t.line.color)&&n.opacity(r)?r:t.fillcolor;if(\"none\"===t.mode)return t.fill?t.fillcolor:\"\";var o=e.mcc||(t.marker||{}).color,s=e.mlcc||((t.marker||{}).line||{}).color;return(i=o&&n.opacity(o)?o:s&&n.opacity(s)&&(e.mlw||((t.marker||{}).line||{}).width)?s:\"\")?n.opacity(i)<.3?n.addOpacity(i,.3):i:(r=(t.line||{}).color)&&n.opacity(r)&&a.hasLines(t)&&t.line.width?r:t.fillcolor}},{\"../../components/color\":615,\"./subtypes\":1181}],1167:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/fx\"),i=t(\"../../registry\"),o=t(\"./get_trace_color\"),s=t(\"../../components/color\"),l=n.fillText;e.exports=function(t,e,r,c){var u=t.cd,h=u[0].trace,f=t.xa,p=t.ya,d=f.c2p(e),g=p.c2p(r),m=[d,g],v=h.hoveron||\"\",y=-1!==h.mode.indexOf(\"markers\")?3:.5;if(-1!==v.indexOf(\"points\")){var x=function(t){var e=Math.max(y,t.mrc||0),r=f.c2p(t.x)-d,n=p.c2p(t.y)-g;return Math.max(Math.sqrt(r*r+n*n)-e,1-y/e)},b=a.getDistanceFunction(c,(function(t){var e=Math.max(3,t.mrc||0),r=1-1/e,n=Math.abs(f.c2p(t.x)-d);return n<e?r*n/e:n-e+r}),(function(t){var e=Math.max(3,t.mrc||0),r=1-1/e,n=Math.abs(p.c2p(t.y)-g);return n<e?r*n/e:n-e+r}),x);if(a.getClosest(u,b,t),!1!==t.index){var _=u[t.index],w=f.c2p(_.x,!0),T=p.c2p(_.y,!0),k=_.mrc||1;t.index=_.i;var M=u[0].t.orientation,A=M&&(_.sNorm||_.s),S=\"h\"===M?A:void 0!==_.orig_x?_.orig_x:_.x,E=\"v\"===M?A:void 0!==_.orig_y?_.orig_y:_.y;return n.extendFlat(t,{color:o(h,_),x0:w-k,x1:w+k,xLabelVal:S,y0:T-k,y1:T+k,yLabelVal:E,spikeDistance:x(_),hovertemplate:h.hovertemplate}),l(_,h,t),i.getComponentMethod(\"errorbars\",\"hoverInfo\")(_,h,t),[t]}}if(-1!==v.indexOf(\"fills\")&&h._polygons){var C,L,P,I,z,O,D,R,F,B=h._polygons,N=[],j=!1,U=1/0,V=-1/0,q=1/0,H=-1/0;for(C=0;C<B.length;C++)(P=B[C]).contains(m)&&(j=!j,N.push(P),q=Math.min(q,P.ymin),H=Math.max(H,P.ymax));if(j){var G=((q=Math.max(q,0))+(H=Math.min(H,p._length)))/2;for(C=0;C<N.length;C++)for(I=N[C].pts,L=1;L<I.length;L++)(R=I[L-1][1])>G!=(F=I[L][1])>=G&&(O=I[L-1][0],D=I[L][0],F-R&&(z=O+(D-O)*(G-R)/(F-R),U=Math.min(U,z),V=Math.max(V,z)));U=Math.max(U,0),V=Math.min(V,f._length);var Y=s.defaultLine;return s.opacity(h.fillcolor)?Y=h.fillcolor:s.opacity((h.line||{}).color)&&(Y=h.line.color),n.extendFlat(t,{distance:t.maxHoverDistance,x0:U,x1:V,y0:G,y1:G,color:Y,hovertemplate:!1}),delete t.index,h.text&&!Array.isArray(h.text)?t.text=String(h.text):t.text=h.name,[t]}}}},{\"../../components/color\":615,\"../../components/fx\":655,\"../../lib\":749,\"../../registry\":881,\"./get_trace_color\":1166}],1168:[function(t,e,r){\"use strict\";var n=t(\"./subtypes\");e.exports={hasLines:n.hasLines,hasMarkers:n.hasMarkers,hasText:n.hasText,isBubble:n.isBubble,attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"./cross_trace_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./cross_trace_calc\"),arraysToCalcdata:t(\"./arrays_to_calcdata\"),plot:t(\"./plot\"),colorbar:t(\"./marker_colorbar\"),formatLabels:t(\"./format_labels\"),style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"./select\"),animatable:!0,moduleType:\"trace\",name:\"scatter\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"symbols\",\"errorBarsOK\",\"showLegend\",\"scatter-like\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":811,\"./arrays_to_calcdata\":1155,\"./attributes\":1156,\"./calc\":1157,\"./cross_trace_calc\":1161,\"./cross_trace_defaults\":1162,\"./defaults\":1163,\"./format_labels\":1165,\"./hover\":1167,\"./marker_colorbar\":1174,\"./plot\":1177,\"./select\":1178,\"./style\":1180,\"./subtypes\":1181}],1169:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray,a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\");e.exports=function(t,e,r,o,s,l){var c=(t.marker||{}).color;(s(\"line.color\",r),a(t,\"line\"))?i(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}):s(\"line.color\",!n(c)&&c||r);s(\"line.width\"),(l||{}).noDash||s(\"line.dash\")}},{\"../../components/colorscale/defaults\":625,\"../../components/colorscale/helpers\":626,\"../../lib\":749}],1170:[function(t,e,r){\"use strict\";var n=t(\"../../constants/numerical\"),a=n.BADNUM,i=n.LOG_CLIP,o=i+.5,s=i-.5,l=t(\"../../lib\"),c=l.segmentsIntersect,u=l.constrain,h=t(\"./constants\");e.exports=function(t,e){var r,n,i,f,p,d,g,m,v,y,x,b,_,w,T,k,M,A,S=e.xaxis,E=e.yaxis,C=\"log\"===S.type,L=\"log\"===E.type,P=S._length,I=E._length,z=e.connectGaps,O=e.baseTolerance,D=e.shape,R=\"linear\"===D,F=e.fill&&\"none\"!==e.fill,B=[],N=h.minTolerance,j=t.length,U=new Array(j),V=0;function q(r){var n=t[r];if(!n)return!1;var i=e.linearized?S.l2p(n.x):S.c2p(n.x),l=e.linearized?E.l2p(n.y):E.c2p(n.y);if(i===a){if(C&&(i=S.c2p(n.x,!0)),i===a)return!1;L&&l===a&&(i*=Math.abs(S._m*I*(S._m>0?o:s)/(E._m*P*(E._m>0?o:s)))),i*=1e3}if(l===a){if(L&&(l=E.c2p(n.y,!0)),l===a)return!1;l*=1e3}return[i,l]}function H(t,e,r,n){var a=r-t,i=n-e,o=.5-t,s=.5-e,l=a*a+i*i,c=a*o+i*s;if(c>0&&c<l){var u=o*i-s*a;if(u*u<l)return!0}}function G(t,e){var r=t[0]/P,n=t[1]/I,a=Math.max(0,-r,r-1,-n,n-1);return a&&void 0!==M&&H(r,n,M,A)&&(a=0),a&&e&&H(r,n,e[0]/P,e[1]/I)&&(a=0),(1+h.toleranceGrowth*a)*O}function Y(t,e){var r=t[0]-e[0],n=t[1]-e[1];return Math.sqrt(r*r+n*n)}var W,Z,X,J,K,Q,$,tt=h.maxScreensAway,et=-P*tt,rt=P*(1+tt),nt=-I*tt,at=I*(1+tt),it=[[et,nt,rt,nt],[rt,nt,rt,at],[rt,at,et,at],[et,at,et,nt]];function ot(t){if(t[0]<et||t[0]>rt||t[1]<nt||t[1]>at)return[u(t[0],et,rt),u(t[1],nt,at)]}function st(t,e){return t[0]===e[0]&&(t[0]===et||t[0]===rt)||(t[1]===e[1]&&(t[1]===nt||t[1]===at)||void 0)}function lt(t,e,r){return function(n,a){var i=ot(n),o=ot(a),s=[];if(i&&o&&st(i,o))return s;i&&s.push(i),o&&s.push(o);var c=2*l.constrain((n[t]+a[t])/2,e,r)-((i||n)[t]+(o||a)[t]);c&&((i&&o?c>0==i[t]>o[t]?i:o:i||o)[t]+=c);return s}}function ct(t){var e=t[0],r=t[1],n=e===U[V-1][0],a=r===U[V-1][1];if(!n||!a)if(V>1){var i=e===U[V-2][0],o=r===U[V-2][1];n&&(e===et||e===rt)&&i?o?V--:U[V-1]=t:a&&(r===nt||r===at)&&o?i?V--:U[V-1]=t:U[V++]=t}else U[V++]=t}function ut(t){U[V-1][0]!==t[0]&&U[V-1][1]!==t[1]&&ct([X,J]),ct(t),K=null,X=J=0}function ht(t){if(M=t[0]/P,A=t[1]/I,W=t[0]<et?et:t[0]>rt?rt:0,Z=t[1]<nt?nt:t[1]>at?at:0,W||Z){if(V)if(K){var e=$(K,t);e.length>1&&(ut(e[0]),U[V++]=e[1])}else Q=$(U[V-1],t)[0],U[V++]=Q;else U[V++]=[W||t[0],Z||t[1]];var r=U[V-1];W&&Z&&(r[0]!==W||r[1]!==Z)?(K&&(X!==W&&J!==Z?ct(X&&J?(n=K,i=(a=t)[0]-n[0],o=(a[1]-n[1])/i,(n[1]*a[0]-a[1]*n[0])/i>0?[o>0?et:rt,at]:[o>0?rt:et,nt]):[X||W,J||Z]):X&&J&&ct([X,J])),ct([W,Z])):X-W&&J-Z&&ct([W||X,Z||J]),K=t,X=W,J=Z}else K&&ut($(K,t)[0]),U[V++]=t;var n,a,i,o}for(\"linear\"===D||\"spline\"===D?$=function(t,e){for(var r=[],n=0,a=0;a<4;a++){var i=it[a],o=c(t[0],t[1],e[0],e[1],i[0],i[1],i[2],i[3]);o&&(!n||Math.abs(o.x-r[0][0])>1||Math.abs(o.y-r[0][1])>1)&&(o=[o.x,o.y],n&&Y(o,t)<Y(r[0],t)?r.unshift(o):r.push(o),n++)}return r}:\"hv\"===D||\"vh\"===D?$=function(t,e){var r=[],n=ot(t),a=ot(e);return n&&a&&st(n,a)||(n&&r.push(n),a&&r.push(a)),r}:\"hvh\"===D?$=lt(0,et,rt):\"vhv\"===D&&($=lt(1,nt,at)),r=0;r<j;r++)if(n=q(r)){for(V=0,K=null,ht(n),r++;r<j;r++){if(!(f=q(r))){if(z)continue;break}if(R&&e.simplify){var ft=q(r+1);if(y=Y(f,n),F&&(0===V||V===j-1)||!(y<G(f,ft)*N)){for(m=[(f[0]-n[0])/y,(f[1]-n[1])/y],p=n,x=y,b=w=T=0,g=!1,i=f,r++;r<t.length;r++){if(d=ft,ft=q(r+1),!d){if(z)continue;break}if(k=(v=[d[0]-n[0],d[1]-n[1]])[0]*m[1]-v[1]*m[0],w=Math.min(w,k),(T=Math.max(T,k))-w>G(d,ft))break;i=d,(_=v[0]*m[0]+v[1]*m[1])>x?(x=_,f=d,g=!1):_<b&&(b=_,p=d,g=!0)}if(g?(ht(f),i!==p&&ht(p)):(p!==n&&ht(p),i!==f&&ht(f)),ht(i),r>=t.length||!d)break;ht(d),n=d}}else ht(f)}K&&ct([X||K[0],J||K[1]]),B.push(U.slice(0,V))}return B}},{\"../../constants/numerical\":724,\"../../lib\":749,\"./constants\":1160}],1171:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){\"spline\"===r(\"line.shape\")&&r(\"line.smoothing\")}},{}],1172:[function(t,e,r){\"use strict\";var n={tonextx:1,tonexty:1,tonext:1};e.exports=function(t,e,r){var a,i,o,s,l,c={},u=!1,h=-1,f=0,p=-1;for(i=0;i<r.length;i++)(o=(a=r[i][0].trace).stackgroup||\"\")?o in c?l=c[o]:(l=c[o]=f,f++):a.fill in n&&p>=0?l=p:(l=p=f,f++),l<h&&(u=!0),a._groupIndex=h=l;var d=r.slice();u&&d.sort((function(t,e){var r=t[0].trace,n=e[0].trace;return r._groupIndex-n._groupIndex||r.index-n.index}));var g={};for(i=0;i<d.length;i++)o=(a=d[i][0].trace).stackgroup||\"\",!0===a.visible?(a._nexttrace=null,a.fill in n&&(s=g[o],a._prevtrace=s||null,s&&(s._nexttrace=a)),a._ownfill=a.fill&&(\"tozero\"===a.fill.substr(0,6)||\"toself\"===a.fill||\"to\"===a.fill.substr(0,2)&&!a._prevtrace),g[o]=a):a._prevtrace=a._nexttrace=a._ownfill=null;return d}},{}],1173:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\");e.exports=function(t){var e=t.marker,r=e.sizeref||1,a=e.sizemin||0,i=\"area\"===e.sizemode?function(t){return Math.sqrt(t/r)}:function(t){return t/r};return function(t){var e=i(t/2);return n(e)&&e>0?Math.max(e,a):0}}},{\"fast-isnumeric\":241}],1174:[function(t,e,r){\"use strict\";e.exports={container:\"marker\",min:\"cmin\",max:\"cmax\"}},{}],1175:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\"),o=t(\"./subtypes\");e.exports=function(t,e,r,s,l,c){var u=o.isBubble(t),h=(t.line||{}).color;(c=c||{},h&&(r=h),l(\"marker.symbol\"),l(\"marker.opacity\",u?.7:1),l(\"marker.size\"),l(\"marker.color\",r),a(t,\"marker\")&&i(t,e,s,l,{prefix:\"marker.\",cLetter:\"c\"}),c.noSelect||(l(\"selected.marker.color\"),l(\"unselected.marker.color\"),l(\"selected.marker.size\"),l(\"unselected.marker.size\")),c.noLine||(l(\"marker.line.color\",h&&!Array.isArray(h)&&e.marker.color!==h?h:u?n.background:n.defaultLine),a(t,\"marker.line\")&&i(t,e,s,l,{prefix:\"marker.line.\",cLetter:\"c\"}),l(\"marker.line.width\",u?1:0)),u&&(l(\"marker.sizeref\"),l(\"marker.sizemin\"),l(\"marker.sizemode\")),c.gradient)&&(\"none\"!==l(\"marker.gradient.type\")&&l(\"marker.gradient.color\"))}},{\"../../components/color\":615,\"../../components/colorscale/defaults\":625,\"../../components/colorscale/helpers\":626,\"./subtypes\":1181}],1176:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").dateTick0,a=t(\"../../constants/numerical\").ONEWEEK;function i(t,e){return n(e,t%a==0?1:0)}e.exports=function(t,e,r,n,a){if(a||(a={x:!0,y:!0}),a.x){var o=n(\"xperiod\");o&&(n(\"xperiod0\",i(o,e.xcalendar)),n(\"xperiodalignment\"))}if(a.y){var s=n(\"yperiod\");s&&(n(\"yperiod0\",i(s,e.ycalendar)),n(\"yperiodalignment\"))}}},{\"../../constants/numerical\":724,\"../../lib\":749}],1177:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=i.ensureSingle,s=i.identity,l=t(\"../../components/drawing\"),c=t(\"./subtypes\"),u=t(\"./line_points\"),h=t(\"./link_traces\"),f=t(\"../../lib/polygon\").tester;function p(t,e,r,h,p,d,g){var m;!function(t,e,r,a,o){var s=r.xaxis,l=r.yaxis,u=n.extent(i.simpleMap(s.range,s.r2c)),h=n.extent(i.simpleMap(l.range,l.r2c)),f=a[0].trace;if(!c.hasMarkers(f))return;var p=f.marker.maxdisplayed;if(0===p)return;var d=a.filter((function(t){return t.x>=u[0]&&t.x<=u[1]&&t.y>=h[0]&&t.y<=h[1]})),g=Math.ceil(d.length/p),m=0;o.forEach((function(t,r){var n=t[0].trace;c.hasMarkers(n)&&n.marker.maxdisplayed>0&&r<e&&m++}));var v=Math.round(m*g/3+Math.floor(m/3)*g/7.1);a.forEach((function(t){delete t.vis})),d.forEach((function(t,e){0===Math.round((e+v)%g)&&(t.vis=!0)}))}(0,e,r,h,p);var v=!!g&&g.duration>0;function y(t){return v?t.transition():t}var x=r.xaxis,b=r.yaxis,_=h[0].trace,w=_.line,T=n.select(d),k=o(T,\"g\",\"errorbars\"),M=o(T,\"g\",\"lines\"),A=o(T,\"g\",\"points\"),S=o(T,\"g\",\"text\");if(a.getComponentMethod(\"errorbars\",\"plot\")(t,k,r,g),!0===_.visible){var E,C;y(T).style(\"opacity\",_.opacity);var L=_.fill.charAt(_.fill.length-1);\"x\"!==L&&\"y\"!==L&&(L=\"\"),h[0][r.isRangePlot?\"nodeRangePlot3\":\"node3\"]=T;var P,I,z=\"\",O=[],D=_._prevtrace;D&&(z=D._prevRevpath||\"\",C=D._nextFill,O=D._polygons);var R,F,B,N,j,U,V,q=\"\",H=\"\",G=[],Y=i.noop;if(E=_._ownFill,c.hasLines(_)||\"none\"!==_.fill){for(C&&C.datum(h),-1!==[\"hv\",\"vh\",\"hvh\",\"vhv\"].indexOf(w.shape)?(R=l.steps(w.shape),F=l.steps(w.shape.split(\"\").reverse().join(\"\"))):R=F=\"spline\"===w.shape?function(t){var e=t[t.length-1];return t.length>1&&t[0][0]===e[0]&&t[0][1]===e[1]?l.smoothclosed(t.slice(1),w.smoothing):l.smoothopen(t,w.smoothing)}:function(t){return\"M\"+t.join(\"L\")},B=function(t){return F(t.reverse())},G=u(h,{xaxis:x,yaxis:b,connectGaps:_.connectgaps,baseTolerance:Math.max(w.width||1,3)/4,shape:w.shape,simplify:w.simplify,fill:_.fill}),V=_._polygons=new Array(G.length),m=0;m<G.length;m++)_._polygons[m]=f(G[m]);G.length&&(N=G[0][0],U=(j=G[G.length-1])[j.length-1]),Y=function(t){return function(e){if(P=R(e),I=B(e),q?L?(q+=\"L\"+P.substr(1),H=I+\"L\"+H.substr(1)):(q+=\"Z\"+P,H=I+\"Z\"+H):(q=P,H=I),c.hasLines(_)&&e.length>1){var r=n.select(this);if(r.datum(h),t)y(r.style(\"opacity\",0).attr(\"d\",P).call(l.lineGroupStyle)).style(\"opacity\",1);else{var a=y(r);a.attr(\"d\",P),l.singleLineStyle(h,a)}}}}}var W=M.selectAll(\".js-line\").data(G);y(W.exit()).style(\"opacity\",0).remove(),W.each(Y(!1)),W.enter().append(\"path\").classed(\"js-line\",!0).style(\"vector-effect\",\"non-scaling-stroke\").call(l.lineGroupStyle).each(Y(!0)),l.setClipUrl(W,r.layerClipId,t),G.length?(E?(E.datum(h),N&&U&&(L?(\"y\"===L?N[1]=U[1]=b.c2p(0,!0):\"x\"===L&&(N[0]=U[0]=x.c2p(0,!0)),y(E).attr(\"d\",\"M\"+U+\"L\"+N+\"L\"+q.substr(1)).call(l.singleFillStyle)):y(E).attr(\"d\",q+\"Z\").call(l.singleFillStyle))):C&&(\"tonext\"===_.fill.substr(0,6)&&q&&z?(\"tonext\"===_.fill?y(C).attr(\"d\",q+\"Z\"+z+\"Z\").call(l.singleFillStyle):y(C).attr(\"d\",q+\"L\"+z.substr(1)+\"Z\").call(l.singleFillStyle),_._polygons=_._polygons.concat(O)):(X(C),_._polygons=null)),_._prevRevpath=H,_._prevPolygons=V):(E?X(E):C&&X(C),_._polygons=_._prevRevpath=_._prevPolygons=null),A.datum(h),S.datum(h),function(e,a,i){var o,u=i[0].trace,h=c.hasMarkers(u),f=c.hasText(u),p=tt(u),d=et,g=et;if(h||f){var m=s,_=u.stackgroup,w=_&&\"infer zero\"===t._fullLayout._scatterStackOpts[x._id+b._id][_].stackgaps;u.marker.maxdisplayed||u._needsCull?m=w?K:J:_&&!w&&(m=Q),h&&(d=m),f&&(g=m)}var T,k=(o=e.selectAll(\"path.point\").data(d,p)).enter().append(\"path\").classed(\"point\",!0);v&&k.call(l.pointStyle,u,t).call(l.translatePoints,x,b).style(\"opacity\",0).transition().style(\"opacity\",1),o.order(),h&&(T=l.makePointStyleFns(u)),o.each((function(e){var a=n.select(this),i=y(a);l.translatePoint(e,i,x,b)?(l.singlePointStyle(e,i,u,T,t),r.layerClipId&&l.hideOutsideRangePoint(e,i,x,b,u.xcalendar,u.ycalendar),u.customdata&&a.classed(\"plotly-customdata\",null!==e.data&&void 0!==e.data)):i.remove()})),v?o.exit().transition().style(\"opacity\",0).remove():o.exit().remove(),(o=a.selectAll(\"g\").data(g,p)).enter().append(\"g\").classed(\"textpoint\",!0).append(\"text\"),o.order(),o.each((function(t){var e=n.select(this),a=y(e.select(\"text\"));l.translatePoint(t,a,x,b)?r.layerClipId&&l.hideOutsideRangePoint(t,e,x,b,u.xcalendar,u.ycalendar):e.remove()})),o.selectAll(\"text\").call(l.textPointStyle,u,t).each((function(t){var e=x.c2p(t.x),r=b.c2p(t.y);n.select(this).selectAll(\"tspan.line\").each((function(){y(n.select(this)).attr({x:e,y:r})}))})),o.exit().remove()}(A,S,h);var Z=!1===_.cliponaxis?null:r.layerClipId;l.setClipUrl(A,Z,t),l.setClipUrl(S,Z,t)}function X(t){y(t).attr(\"d\",\"M0,0Z\")}function J(t){return t.filter((function(t){return!t.gap&&t.vis}))}function K(t){return t.filter((function(t){return t.vis}))}function Q(t){return t.filter((function(t){return!t.gap}))}function $(t){return t.id}function tt(t){if(t.ids)return $}function et(){return!1}}e.exports=function(t,e,r,a,i,c){var u,f,d=!i,g=!!i&&i.duration>0,m=h(t,e,r);((u=a.selectAll(\"g.trace\").data(m,(function(t){return t[0].trace.uid}))).enter().append(\"g\").attr(\"class\",(function(t){return\"trace scatter trace\"+t[0].trace.uid})).style(\"stroke-miterlimit\",2),u.order(),function(t,e,r){e.each((function(e){var a=o(n.select(this),\"g\",\"fills\");l.setClipUrl(a,r.layerClipId,t);var i=e[0].trace,c=[];i._ownfill&&c.push(\"_ownFill\"),i._nexttrace&&c.push(\"_nextFill\");var u=a.selectAll(\"g\").data(c,s);u.enter().append(\"g\"),u.exit().each((function(t){i[t]=null})).remove(),u.order().each((function(t){i[t]=o(n.select(this),\"path\",\"js-fill\")}))}))}(t,u,e),g)?(c&&(f=c()),n.transition().duration(i.duration).ease(i.easing).each(\"end\",(function(){f&&f()})).each(\"interrupt\",(function(){f&&f()})).each((function(){a.selectAll(\"g.trace\").each((function(r,n){p(t,n,e,r,m,this,i)}))}))):u.each((function(r,n){p(t,n,e,r,m,this,i)}));d&&u.exit().remove(),a.selectAll(\"path:not([d])\").remove()}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/polygon\":761,\"../../registry\":881,\"./line_points\":1170,\"./link_traces\":1172,\"./subtypes\":1181,d3:169}],1178:[function(t,e,r){\"use strict\";var n=t(\"./subtypes\");e.exports=function(t,e){var r,a,i,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[],h=s[0].trace;if(!n.hasMarkers(h)&&!n.hasText(h))return[];if(!1===e)for(r=0;r<s.length;r++)s[r].selected=0;else for(r=0;r<s.length;r++)a=s[r],i=l.c2p(a.x),o=c.c2p(a.y),null!==a.i&&e.contains([i,o],!1,r,t)?(u.push({pointNumber:a.i,x:l.c2d(a.x),y:c.c2d(a.y)}),a.selected=1):a.selected=0;return u}},{\"./subtypes\":1181}],1179:[function(t,e,r){\"use strict\";var n=[\"orientation\",\"groupnorm\",\"stackgaps\"];e.exports=function(t,e,r,a){var i=r._scatterStackOpts,o=a(\"stackgroup\");if(o){var s=e.xaxis+e.yaxis,l=i[s];l||(l=i[s]={});var c=l[o],u=!1;c?c.traces.push(e):(c=l[o]={traceIndices:[],traces:[e]},u=!0);for(var h={orientation:e.x&&!e.y?\"h\":\"v\"},f=0;f<n.length;f++){var p=n[f],d=p+\"Found\";if(!c[d]){var g=void 0!==t[p],m=\"orientation\"===p;if((g||u)&&(c[p]=a(p,h[p]),m&&(c.fillDflt=\"h\"===c[p]?\"tonextx\":\"tonexty\"),g&&(c[d]=!0,!u&&(delete c.traces[0][p],m))))for(var v=0;v<c.traces.length-1;v++){var y=c.traces[v];y._input.fill!==y.fill&&(y.fill=c.fillDflt)}}}return c}}},{}],1180:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../registry\");function o(t,e,r){a.pointStyle(t.selectAll(\"path.point\"),e,r)}function s(t,e,r){a.textPointStyle(t.selectAll(\"text\"),e,r)}e.exports={style:function(t){var e=n.select(t).selectAll(\"g.trace.scatter\");e.style(\"opacity\",(function(t){return t[0].trace.opacity})),e.selectAll(\"g.points\").each((function(e){o(n.select(this),e.trace||e[0].trace,t)})),e.selectAll(\"g.text\").each((function(e){s(n.select(this),e.trace||e[0].trace,t)})),e.selectAll(\"g.trace path.js-line\").call(a.lineGroupStyle),e.selectAll(\"g.trace path.js-fill\").call(a.fillGroupStyle),i.getComponentMethod(\"errorbars\",\"style\")(e)},stylePoints:o,styleText:s,styleOnSelect:function(t,e,r){var n=e[0].trace;n.selectedpoints?(a.selectedPointStyle(r.selectAll(\"path.point\"),n),a.selectedTextStyle(r.selectAll(\"text\"),n)):(o(r,n,t),s(r,n,t))}}},{\"../../components/drawing\":637,\"../../registry\":881,d3:169}],1181:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports={hasLines:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf(\"lines\")},hasMarkers:function(t){return t.visible&&(t.mode&&-1!==t.mode.indexOf(\"markers\")||\"splom\"===t.type)},hasText:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf(\"text\")},isBubble:function(t){return n.isPlainObject(t.marker)&&n.isArrayOrTypedArray(t.marker.size)}}},{\"../../lib\":749}],1182:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e,r,a,i){i=i||{},a(\"textposition\"),n.coerceFont(a,\"textfont\",r.font),i.noSelect||(a(\"selected.textfont.color\"),a(\"unselected.textfont.color\"))}},{\"../../lib\":749}],1183:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\");e.exports=function(t,e,r,i){var o,s=i(\"x\"),l=i(\"y\");if(a.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],r),s){var c=n.minRowLength(s);l?o=Math.min(c,n.minRowLength(l)):(o=c,i(\"y0\"),i(\"dy\"))}else{if(!l)return 0;o=n.minRowLength(l),i(\"x0\"),i(\"dx\")}return e._length=o,o}},{\"../../lib\":749,\"../../registry\":881}],1184:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../plots/template_attributes\").texttemplateAttrs,s=t(\"../../plots/attributes\"),l=t(\"../../constants/gl3d_dashes\"),c=t(\"../../constants/gl3d_markers\"),u=t(\"../../lib/extend\").extendFlat,h=t(\"../../plot_api/edit_types\").overrideAll,f=n.line,p=n.marker,d=p.line,g=u({width:f.width,dash:{valType:\"enumerated\",values:Object.keys(l),dflt:\"solid\"}},a(\"line\"));var m=e.exports=h({x:n.x,y:n.y,z:{valType:\"data_array\"},text:u({},n.text,{}),texttemplate:o({},{}),hovertext:u({},n.hovertext,{}),hovertemplate:i(),mode:u({},n.mode,{dflt:\"lines+markers\"}),surfaceaxis:{valType:\"enumerated\",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:\"color\"},projection:{x:{show:{valType:\"boolean\",dflt:!1},opacity:{valType:\"number\",min:0,max:1,dflt:1},scale:{valType:\"number\",min:0,max:10,dflt:2/3}},y:{show:{valType:\"boolean\",dflt:!1},opacity:{valType:\"number\",min:0,max:1,dflt:1},scale:{valType:\"number\",min:0,max:10,dflt:2/3}},z:{show:{valType:\"boolean\",dflt:!1},opacity:{valType:\"number\",min:0,max:1,dflt:1},scale:{valType:\"number\",min:0,max:10,dflt:2/3}}},connectgaps:n.connectgaps,line:g,marker:u({symbol:{valType:\"enumerated\",values:Object.keys(c),dflt:\"circle\",arrayOk:!0},size:u({},p.size,{dflt:8}),sizeref:p.sizeref,sizemin:p.sizemin,sizemode:p.sizemode,opacity:u({},p.opacity,{arrayOk:!1}),colorbar:p.colorbar,line:u({width:u({},d.width,{arrayOk:!1})},a(\"marker.line\"))},a(\"marker\")),textposition:u({},n.textposition,{dflt:\"top center\"}),textfont:{color:n.textfont.color,size:n.textfont.size,family:u({},n.textfont.family,{arrayOk:!1})},hoverinfo:u({},s.hoverinfo)},\"calc\",\"nested\");m.x.editType=m.y.editType=m.z.editType=\"calc+clearAxisTypes\"},{\"../../components/colorscale/attributes\":622,\"../../constants/gl3d_dashes\":721,\"../../constants/gl3d_markers\":722,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156}],1185:[function(t,e,r){\"use strict\";var n=t(\"../scatter/arrays_to_calcdata\"),a=t(\"../scatter/colorscale_calc\");e.exports=function(t,e){var r=[{x:!1,y:!1,trace:e,t:{}}];return n(r,e),a(t,e),r}},{\"../scatter/arrays_to_calcdata\":1155,\"../scatter/colorscale_calc\":1159}],1186:[function(t,e,r){\"use strict\";var n=t(\"../../registry\");function a(t,e,r,a){if(!e||!e.visible)return null;for(var i=n.getComponentMethod(\"errorbars\",\"makeComputeError\")(e),o=new Array(t.length),s=0;s<t.length;s++){var l=i(+t[s],s);if(\"log\"===a.type){var c=a.c2l(t[s]),u=t[s]-l[0],h=t[s]+l[1];if(o[s]=[(a.c2l(u,!0)-c)*r,(a.c2l(h,!0)-c)*r],u>0){var f=a.c2l(u);a._lowerLogErrorBound||(a._lowerLogErrorBound=f),a._lowerErrorBound=Math.min(a._lowerLogErrorBound,f)}}else o[s]=[-l[0]*r,l[1]*r]}return o}e.exports=function(t,e,r){var n=[a(t.x,t.error_x,e[0],r.xaxis),a(t.y,t.error_y,e[1],r.yaxis),a(t.z,t.error_z,e[2],r.zaxis)],i=function(t){for(var e=0;e<t.length;e++)if(t[e])return t[e].length;return 0}(n);if(0===i)return null;for(var o=new Array(i),s=0;s<i;s++){for(var l=[[0,0,0],[0,0,0]],c=0;c<3;c++)if(n[c])for(var u=0;u<2;u++)l[u][c]=n[c][s][u];o[s]=l}return o}},{\"../../registry\":881}],1187:[function(t,e,r){\"use strict\";var n=t(\"gl-line3d\"),a=t(\"gl-scatter3d\"),i=t(\"gl-error3d\"),o=t(\"gl-mesh3d\"),s=t(\"delaunay-triangulate\"),l=t(\"../../lib\"),c=t(\"../../lib/str2rgbarray\"),u=t(\"../../lib/gl_format_color\").formatColor,h=t(\"../scatter/make_bubble_size_func\"),f=t(\"../../constants/gl3d_dashes\"),p=t(\"../../constants/gl3d_markers\"),d=t(\"../../plots/cartesian/axes\"),g=t(\"../../components/fx/helpers\").appendArrayPointValue,m=t(\"./calc_errors\");function v(t,e){this.scene=t,this.uid=e,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode=\"\",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var y=v.prototype;function x(t){return null==t?0:t.indexOf(\"left\")>-1?-1:t.indexOf(\"right\")>-1?1:0}function b(t){return null==t?0:t.indexOf(\"top\")>-1?-1:t.indexOf(\"bottom\")>-1?1:0}function _(t,e){return e(4*t)}function w(t){return p[t]}function T(t,e,r,n,a){var i=null;if(l.isArrayOrTypedArray(t)){i=[];for(var o=0;o<e;o++)void 0===t[o]?i[o]=n:i[o]=r(t[o],a)}else i=r(t,l.identity);return i}function k(t,e){var r,n,a,i,o,s,f=[],p=t.fullSceneLayout,v=t.dataScale,y=p.xaxis,k=p.yaxis,M=p.zaxis,A=e.marker,S=e.line,E=e.x||[],C=e.y||[],L=e.z||[],P=E.length,I=e.xcalendar,z=e.ycalendar,O=e.zcalendar;for(o=0;o<P;o++)r=y.d2l(E[o],0,I)*v[0],n=k.d2l(C[o],0,z)*v[1],a=M.d2l(L[o],0,O)*v[2],f[o]=[r,n,a];if(Array.isArray(e.text))s=e.text;else if(void 0!==e.text)for(s=new Array(P),o=0;o<P;o++)s[o]=e.text;function D(t,e){var r=p[t];return d.tickText(r,r.d2l(e),!0).text}var R=e.texttemplate;if(R){var F=t.fullLayout._d3locale,B=Array.isArray(R),N=B?Math.min(R.length,P):P,j=B?function(t){return R[t]}:function(){return R};for(s=new Array(N),o=0;o<N;o++){var U={x:E[o],y:C[o],z:L[o]},V={xLabel:D(\"xaxis\",E[o]),yLabel:D(\"yaxis\",C[o]),zLabel:D(\"zaxis\",L[o])},q={};g(q,e,o);var H=e._meta||{};s[o]=l.texttemplateString(j(o),V,F,q,U,H)}}if(i={position:f,mode:e.mode,text:s},\"line\"in e&&(i.lineColor=u(S,1,P),i.lineWidth=S.width,i.lineDashes=S.dash),\"marker\"in e){var G=h(e);i.scatterColor=u(A,1,P),i.scatterSize=T(A.size,P,_,20,G),i.scatterMarker=T(A.symbol,P,w,\"\\u25cf\"),i.scatterLineWidth=A.line.width,i.scatterLineColor=u(A.line,1,P),i.scatterAngle=0}\"textposition\"in e&&(i.textOffset=function(t){var e=[0,0];if(Array.isArray(t))for(var r=0;r<t.length;r++)e[r]=[0,0],t[r]&&(e[r][0]=x(t[r]),e[r][1]=b(t[r]));else e[0]=x(t),e[1]=b(t);return e}(e.textposition),i.textColor=u(e.textfont,1,P),i.textSize=T(e.textfont.size,P,l.identity,12),i.textFont=e.textfont.family,i.textAngle=0);var Y=[\"x\",\"y\",\"z\"];for(i.project=[!1,!1,!1],i.projectScale=[1,1,1],i.projectOpacity=[1,1,1],o=0;o<3;++o){var W=e.projection[Y[o]];(i.project[o]=W.show)&&(i.projectOpacity[o]=W.opacity,i.projectScale[o]=W.scale)}i.errorBounds=m(e,v,p);var Z=function(t){for(var e=[0,0,0],r=[[0,0,0],[0,0,0],[0,0,0]],n=[1,1,1],a=0;a<3;a++){var i=t[a];i&&!1!==i.copy_zstyle&&!1!==t[2].visible&&(i=t[2]),i&&i.visible&&(e[a]=i.width/2,r[a]=c(i.color),n[a]=i.thickness)}return{capSize:e,color:r,lineWidth:n}}([e.error_x,e.error_y,e.error_z]);return i.errorColor=Z.color,i.errorLineWidth=Z.lineWidth,i.errorCapSize=Z.capSize,i.delaunayAxis=e.surfaceaxis,i.delaunayColor=c(e.surfacecolor),i}function M(t){if(l.isArrayOrTypedArray(t)){var e=t[0];return l.isArrayOrTypedArray(e)&&(t=e),\"rgb(\"+t.slice(0,3).map((function(t){return Math.round(255*t)}))+\")\"}return null}function A(t){return l.isArrayOrTypedArray(t)?4===t.length&&\"number\"==typeof t[0]?M(t):t.map(M):null}y.handlePick=function(t){if(t.object&&(t.object===this.linePlot||t.object===this.delaunayMesh||t.object===this.textMarkers||t.object===this.scatterPlot)){var e=t.index=t.data.index;return t.object.highlight&&t.object.highlight(null),this.scatterPlot&&(t.object=this.scatterPlot,this.scatterPlot.highlight(t.data)),t.textLabel=\"\",this.textLabels&&(Array.isArray(this.textLabels)?(this.textLabels[e]||0===this.textLabels[e])&&(t.textLabel=this.textLabels[e]):t.textLabel=this.textLabels),t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]],!0}},y.update=function(t){var e,r,l,c,u=this.scene.glplot.gl,h=f.solid;this.data=t;var p=k(this.scene,t);\"mode\"in p&&(this.mode=p.mode),\"lineDashes\"in p&&p.lineDashes in f&&(h=f[p.lineDashes]),this.color=A(p.scatterColor)||A(p.lineColor),this.dataPoints=p.position,e={gl:this.scene.glplot.gl,position:p.position,color:p.lineColor,lineWidth:p.lineWidth||1,dashes:h[0],dashScale:h[1],opacity:t.opacity,connectGaps:t.connectgaps},-1!==this.mode.indexOf(\"lines\")?this.linePlot?this.linePlot.update(e):(this.linePlot=n(e),this.linePlot._trace=this,this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var d=t.opacity;if(t.marker&&t.marker.opacity&&(d*=t.marker.opacity),r={gl:this.scene.glplot.gl,position:p.position,color:p.scatterColor,size:p.scatterSize,glyph:p.scatterMarker,opacity:d,orthographic:!0,lineWidth:p.scatterLineWidth,lineColor:p.scatterLineColor,project:p.project,projectScale:p.projectScale,projectOpacity:p.projectOpacity},-1!==this.mode.indexOf(\"markers\")?this.scatterPlot?this.scatterPlot.update(r):(this.scatterPlot=a(r),this.scatterPlot._trace=this,this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),c={gl:this.scene.glplot.gl,position:p.position,glyph:p.text,color:p.textColor,size:p.textSize,angle:p.textAngle,alignment:p.textOffset,font:p.textFont,orthographic:!0,lineWidth:0,project:!1,opacity:t.opacity},this.textLabels=t.hovertext||t.text,-1!==this.mode.indexOf(\"text\")?this.textMarkers?this.textMarkers.update(c):(this.textMarkers=a(c),this.textMarkers._trace=this,this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),l={gl:this.scene.glplot.gl,position:p.position,color:p.errorColor,error:p.errorBounds,lineWidth:p.errorLineWidth,capSize:p.errorCapSize,opacity:t.opacity},this.errorBars?p.errorBounds?this.errorBars.update(l):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):p.errorBounds&&(this.errorBars=i(l),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),p.delaunayAxis>=0){var g=function(t,e,r){var n,a=(r+1)%3,i=(r+2)%3,o=[],l=[];for(n=0;n<t.length;++n){var c=t[n];!isNaN(c[a])&&isFinite(c[a])&&!isNaN(c[i])&&isFinite(c[i])&&(o.push([c[a],c[i]]),l.push(n))}var u=s(o);for(n=0;n<u.length;++n)for(var h=u[n],f=0;f<h.length;++f)h[f]=l[h[f]];return{positions:t,cells:u,meshColor:e}}(p.position,p.delaunayColor,p.delaunayAxis);g.opacity=t.opacity,this.delaunayMesh?this.delaunayMesh.update(g):(g.gl=u,this.delaunayMesh=o(g),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},y.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())},e.exports=function(t,e){var r=new v(t,e.uid);return r.update(e),r}},{\"../../components/fx/helpers\":651,\"../../constants/gl3d_dashes\":721,\"../../constants/gl3d_markers\":722,\"../../lib\":749,\"../../lib/gl_format_color\":745,\"../../lib/str2rgbarray\":772,\"../../plots/cartesian/axes\":798,\"../scatter/make_bubble_size_func\":1173,\"./calc_errors\":1186,\"delaunay-triangulate\":171,\"gl-error3d\":264,\"gl-line3d\":271,\"gl-mesh3d\":292,\"gl-scatter3d\":308}],1188:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../scatter/subtypes\"),o=t(\"../scatter/marker_defaults\"),s=t(\"../scatter/line_defaults\"),l=t(\"../scatter/text_defaults\"),c=t(\"./attributes\");e.exports=function(t,e,r,u){function h(r,n){return a.coerce(t,e,c,r,n)}if(function(t,e,r,a){var i=0,o=r(\"x\"),s=r(\"y\"),l=r(\"z\");n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],a),o&&s&&l&&(i=Math.min(o.length,s.length,l.length),e._length=e._xlength=e._ylength=e._zlength=i);return i}(t,e,h,u)){h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\"),h(\"mode\"),i.hasLines(e)&&(h(\"connectgaps\"),s(t,e,r,u,h)),i.hasMarkers(e)&&o(t,e,r,u,h,{noSelect:!0}),i.hasText(e)&&(h(\"texttemplate\"),l(t,e,u,h,{noSelect:!0}));var f=(e.line||{}).color,p=(e.marker||{}).color;h(\"surfaceaxis\")>=0&&h(\"surfacecolor\",f||p);for(var d=[\"x\",\"y\",\"z\"],g=0;g<3;++g){var m=\"projection.\"+d[g];h(m+\".show\")&&(h(m+\".opacity\"),h(m+\".scale\"))}var v=n.getComponentMethod(\"errorbars\",\"supplyDefaults\");v(t,e,f||p||r,{axis:\"z\"}),v(t,e,f||p||r,{axis:\"y\",inherit:\"z\"}),v(t,e,f||p||r,{axis:\"x\",inherit:\"z\"})}else e.visible=!1}},{\"../../lib\":749,\"../../registry\":881,\"../scatter/line_defaults\":1169,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"./attributes\":1184}],1189:[function(t,e,r){\"use strict\";e.exports={plot:t(\"./convert\"),attributes:t(\"./attributes\"),markerSymbols:t(\"../../constants/gl3d_markers\"),supplyDefaults:t(\"./defaults\"),colorbar:[{container:\"marker\",min:\"cmin\",max:\"cmax\"},{container:\"line\",min:\"cmin\",max:\"cmax\"}],calc:t(\"./calc\"),moduleType:\"trace\",name:\"scatter3d\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../constants/gl3d_markers\":722,\"../../plots/gl3d\":840,\"./attributes\":1184,\"./calc\":1185,\"./convert\":1187,\"./defaults\":1188}],1190:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../plots/template_attributes\").texttemplateAttrs,s=t(\"../../components/colorscale/attributes\"),l=t(\"../../lib/extend\").extendFlat,c=n.marker,u=n.line,h=c.line;e.exports={carpet:{valType:\"string\",editType:\"calc\"},a:{valType:\"data_array\",editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},mode:l({},n.mode,{dflt:\"markers\"}),text:l({},n.text,{}),texttemplate:o({editType:\"plot\"},{keys:[\"a\",\"b\",\"text\"]}),hovertext:l({},n.hovertext,{}),line:{color:u.color,width:u.width,dash:u.dash,shape:l({},u.shape,{values:[\"linear\",\"spline\"]}),smoothing:u.smoothing,editType:\"calc\"},connectgaps:n.connectgaps,fill:l({},n.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:n.fillcolor,marker:l({symbol:c.symbol,opacity:c.opacity,maxdisplayed:c.maxdisplayed,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode,line:l({width:h.width,editType:\"calc\"},s(\"marker.line\")),gradient:c.gradient,editType:\"calc\"},s(\"marker\")),textfont:n.textfont,textposition:n.textposition,selected:n.selected,unselected:n.unselected,hoverinfo:l({},a.hoverinfo,{flags:[\"a\",\"b\",\"text\",\"name\"]}),hoveron:n.hoveron,hovertemplate:i()}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156}],1191:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../scatter/colorscale_calc\"),i=t(\"../scatter/arrays_to_calcdata\"),o=t(\"../scatter/calc_selection\"),s=t(\"../scatter/calc\").calcMarkerSize,l=t(\"../carpet/lookup_carpetid\");e.exports=function(t,e){var r=e._carpetTrace=l(t,e);if(r&&r.visible&&\"legendonly\"!==r.visible){var c;e.xaxis=r.xaxis,e.yaxis=r.yaxis;var u,h,f=e._length,p=new Array(f),d=!1;for(c=0;c<f;c++)if(u=e.a[c],h=e.b[c],n(u)&&n(h)){var g=r.ab2xy(+u,+h,!0),m=r.isVisible(+u,+h);m||(d=!0),p[c]={x:g[0],y:g[1],a:u,b:h,vis:m}}else p[c]={x:!1,y:!1};return e._needsCull=d,p[0].carpet=r,p[0].trace=e,s(e,f),a(t,e),i(p,e),o(p,e),p}}},{\"../carpet/lookup_carpetid\":951,\"../scatter/arrays_to_calcdata\":1155,\"../scatter/calc\":1157,\"../scatter/calc_selection\":1158,\"../scatter/colorscale_calc\":1159,\"fast-isnumeric\":241}],1192:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/constants\"),i=t(\"../scatter/subtypes\"),o=t(\"../scatter/marker_defaults\"),s=t(\"../scatter/line_defaults\"),l=t(\"../scatter/line_shape_defaults\"),c=t(\"../scatter/text_defaults\"),u=t(\"../scatter/fillcolor_defaults\"),h=t(\"./attributes\");e.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,h,r,a)}p(\"carpet\"),e.xaxis=\"x\",e.yaxis=\"y\";var d=p(\"a\"),g=p(\"b\"),m=Math.min(d.length,g.length);if(m){e._length=m,p(\"text\"),p(\"texttemplate\"),p(\"hovertext\"),p(\"mode\",m<a.PTS_LINESONLY?\"lines+markers\":\"lines\"),i.hasLines(e)&&(s(t,e,r,f,p),l(t,e,p),p(\"connectgaps\")),i.hasMarkers(e)&&o(t,e,r,f,p,{gradient:!0}),i.hasText(e)&&c(t,e,f,p);var v=[];(i.hasMarkers(e)||i.hasText(e))&&(p(\"marker.maxdisplayed\"),v.push(\"points\")),p(\"fill\"),\"none\"!==e.fill&&(u(t,e,r,p),i.hasLines(e)||l(t,e,p)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||v.push(\"fills\"),\"fills\"!==p(\"hoveron\",v.join(\"+\")||\"points\")&&p(\"hovertemplate\"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},{\"../../lib\":749,\"../scatter/constants\":1160,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/line_shape_defaults\":1171,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"./attributes\":1190}],1193:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){var i=n[a];return t.a=i.a,t.b=i.b,t.y=i.y,t}},{}],1194:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r={},n=e._carpet,a=n.ab2ij([t.a,t.b]),i=Math.floor(a[0]),o=a[0]-i,s=Math.floor(a[1]),l=a[1]-s,c=n.evalxy([],i,s,o,l);return r.yLabel=c[1].toFixed(3),r}},{}],1195:[function(t,e,r){\"use strict\";var n=t(\"../scatter/hover\"),a=t(\"../../lib\").fillText;e.exports=function(t,e,r,i){var o=n(t,e,r,i);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index){var l=1-s.y0/t.ya._length,c=t.xa._length,u=c*l/2,h=c-u;return s.x0=Math.max(Math.min(s.x0,h),u),s.x1=Math.max(Math.min(s.x1,h),u),o}var f=s.cd[s.index];s.a=f.a,s.b=f.b,s.xLabelVal=void 0,s.yLabelVal=void 0;var p=s.trace,d=p._carpet,g=p._module.formatLabels(f,p);s.yLabel=g.yLabel,delete s.text;var m=[];if(!p.hovertemplate){var v=(f.hi||p.hoverinfo).split(\"+\");-1!==v.indexOf(\"all\")&&(v=[\"a\",\"b\",\"text\"]),-1!==v.indexOf(\"a\")&&y(d.aaxis,f.a),-1!==v.indexOf(\"b\")&&y(d.baxis,f.b),m.push(\"y: \"+s.yLabel),-1!==v.indexOf(\"text\")&&a(f,p,m),s.extraText=m.join(\"<br>\")}return o}function y(t,e){var r;r=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,\"\"):t._hovertitle,m.push(r+\": \"+e.toFixed(3)+t.labelsuffix)}}},{\"../../lib\":749,\"../scatter/hover\":1167}],1196:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../scatter/style\").style,styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../scatter/select\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"scattercarpet\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"svg\",\"carpet\",\"symbols\",\"showLegend\",\"carpetDependent\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":811,\"../scatter/marker_colorbar\":1174,\"../scatter/select\":1178,\"../scatter/style\":1180,\"./attributes\":1190,\"./calc\":1191,\"./defaults\":1192,\"./event_data\":1193,\"./format_labels\":1194,\"./hover\":1195,\"./plot\":1197}],1197:[function(t,e,r){\"use strict\";var n=t(\"../scatter/plot\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../components/drawing\");e.exports=function(t,e,r,o){var s,l,c,u=r[0][0].carpet,h={xaxis:a.getFromId(t,u.xaxis||\"x\"),yaxis:a.getFromId(t,u.yaxis||\"y\"),plot:e.plot};for(n(t,h,r,o),s=0;s<r.length;s++)l=r[s][0].trace,c=o.selectAll(\"g.trace\"+l.uid+\" .js-line\"),i.setClipUrl(c,r[s][0].carpet._clipPathId,t)}},{\"../../components/drawing\":637,\"../../plots/cartesian/axes\":798,\"../scatter/plot\":1177}],1198:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../plots/template_attributes\").texttemplateAttrs,i=t(\"../scatter/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../components/colorscale/attributes\"),l=t(\"../../components/drawing/attributes\").dash,c=t(\"../../lib/extend\").extendFlat,u=t(\"../../plot_api/edit_types\").overrideAll,h=i.marker,f=i.line,p=h.line;e.exports=u({lon:{valType:\"data_array\"},lat:{valType:\"data_array\"},locations:{valType:\"data_array\"},locationmode:{valType:\"enumerated\",values:[\"ISO-3\",\"USA-states\",\"country names\",\"geojson-id\"],dflt:\"ISO-3\"},geojson:{valType:\"any\",editType:\"calc\"},featureidkey:{valType:\"string\",editType:\"calc\",dflt:\"id\"},mode:c({},i.mode,{dflt:\"markers\"}),text:c({},i.text,{}),texttemplate:a({editType:\"plot\"},{keys:[\"lat\",\"lon\",\"location\",\"text\"]}),hovertext:c({},i.hovertext,{}),textfont:i.textfont,textposition:i.textposition,line:{color:f.color,width:f.width,dash:l},connectgaps:i.connectgaps,marker:c({symbol:h.symbol,opacity:h.opacity,size:h.size,sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,colorbar:h.colorbar,line:c({width:p.width},s(\"marker.line\")),gradient:h.gradient},s(\"marker\")),fill:{valType:\"enumerated\",values:[\"none\",\"toself\"],dflt:\"none\"},fillcolor:i.fillcolor,selected:i.selected,unselected:i.unselected,hoverinfo:c({},o.hoverinfo,{flags:[\"lon\",\"lat\",\"location\",\"text\",\"name\"]}),hovertemplate:n()},\"calc\",\"nested\")},{\"../../components/colorscale/attributes\":622,\"../../components/drawing/attributes\":636,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156}],1199:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../constants/numerical\").BADNUM,i=t(\"../scatter/colorscale_calc\"),o=t(\"../scatter/arrays_to_calcdata\"),s=t(\"../scatter/calc_selection\"),l=t(\"../../lib\")._;function c(t){return t&&\"string\"==typeof t}e.exports=function(t,e){var r,u=Array.isArray(e.locations),h=u?e.locations.length:e._length,f=new Array(h);r=e.geojson?function(t){return c(t)||n(t)}:c;for(var p=0;p<h;p++){var d=f[p]={};if(u){var g=e.locations[p];d.loc=r(g)?g:null}else{var m=e.lon[p],v=e.lat[p];n(m)&&n(v)?d.lonlat=[+m,+v]:d.lonlat=[a,a]}}return o(f,e),i(t,e),s(f,e),h&&(f[0].t={labels:{lat:l(t,\"lat:\")+\" \",lon:l(t,\"lon:\")+\" \"}}),f}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../scatter/arrays_to_calcdata\":1155,\"../scatter/calc_selection\":1158,\"../scatter/colorscale_calc\":1159,\"fast-isnumeric\":241}],1200:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/subtypes\"),i=t(\"../scatter/marker_defaults\"),o=t(\"../scatter/line_defaults\"),s=t(\"../scatter/text_defaults\"),l=t(\"../scatter/fillcolor_defaults\"),c=t(\"./attributes\");e.exports=function(t,e,r,u){function h(r,a){return n.coerce(t,e,c,r,a)}var f,p=h(\"locations\");if(p&&p.length){var d,g=h(\"geojson\");(\"string\"==typeof g&&\"\"!==g||n.isPlainObject(g))&&(d=\"geojson-id\"),\"geojson-id\"===h(\"locationmode\",d)&&h(\"featureidkey\"),f=p.length}else{var m=h(\"lon\")||[],v=h(\"lat\")||[];f=Math.min(m.length,v.length)}f?(e._length=f,h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\"),h(\"mode\"),a.hasLines(e)&&(o(t,e,r,u,h),h(\"connectgaps\")),a.hasMarkers(e)&&i(t,e,r,u,h,{gradient:!0}),a.hasText(e)&&(h(\"texttemplate\"),s(t,e,u,h)),h(\"fill\"),\"none\"!==e.fill&&l(t,e,r,h),n.coerceSelectionMarkerOpacity(e,h)):e.visible=!1}},{\"../../lib\":749,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"./attributes\":1198}],1201:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){t.lon=e.lon,t.lat=e.lat,t.location=e.loc?e.loc:null;var i=n[a];return i.fIn&&i.fIn.properties&&(t.properties=i.fIn.properties),t}},{}],1202:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\");e.exports=function(t,e,r){var a={},i=r[e.geo]._subplot.mockAxis,o=t.lonlat;return a.lonLabel=n.tickText(i,i.c2l(o[0]),!0).text,a.latLabel=n.tickText(i,i.c2l(o[1]),!0).text,a}},{\"../../plots/cartesian/axes\":798}],1203:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../constants/numerical\").BADNUM,i=t(\"../scatter/get_trace_color\"),o=t(\"../../lib\").fillText,s=t(\"./attributes\");e.exports=function(t,e,r){var l=t.cd,c=l[0].trace,u=t.xa,h=t.ya,f=t.subplot,p=f.projection.isLonLatOverEdges,d=f.project;if(n.getClosest(l,(function(t){var n=t.lonlat;if(n[0]===a)return 1/0;if(p(n))return 1/0;var i=d(n),o=d([e,r]),s=Math.abs(i[0]-o[0]),l=Math.abs(i[1]-o[1]),c=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(s*s+l*l)-c,1-3/c)}),t),!1!==t.index){var g=l[t.index],m=g.lonlat,v=[u.c2p(m),h.c2p(m)],y=g.mrc||1;t.x0=v[0]-y,t.x1=v[0]+y,t.y0=v[1]-y,t.y1=v[1]+y,t.loc=g.loc,t.lon=m[0],t.lat=m[1];var x={};x[c.geo]={_subplot:f};var b=c._module.formatLabels(g,c,x);return t.lonLabel=b.lonLabel,t.latLabel=b.latLabel,t.color=i(c,g),t.extraText=function(t,e,r,n){if(t.hovertemplate)return;var a=e.hi||t.hoverinfo,i=\"all\"===a?s.hoverinfo.flags:a.split(\"+\"),l=-1!==i.indexOf(\"location\")&&Array.isArray(t.locations),c=-1!==i.indexOf(\"lon\"),u=-1!==i.indexOf(\"lat\"),h=-1!==i.indexOf(\"text\"),f=[];function p(t){return t+\"\\xb0\"}l?f.push(e.loc):c&&u?f.push(\"(\"+p(r.lonLabel)+\", \"+p(r.latLabel)+\")\"):c?f.push(n.lon+p(r.lonLabel)):u&&f.push(n.lat+p(r.latLabel));h&&o(e,t,f);return f.join(\"<br>\")}(c,g,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},{\"../../components/fx\":655,\"../../constants/numerical\":724,\"../../lib\":749,\"../scatter/get_trace_color\":1166,\"./attributes\":1198}],1204:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),calcGeoJSON:t(\"./plot\").calcGeoJSON,plot:t(\"./plot\").plot,style:t(\"./style\"),styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"scattergeo\",basePlotModule:t(\"../../plots/geo\"),categories:[\"geo\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../plots/geo\":830,\"../scatter/marker_colorbar\":1174,\"../scatter/style\":1180,\"./attributes\":1198,\"./calc\":1199,\"./defaults\":1200,\"./event_data\":1201,\"./format_labels\":1202,\"./hover\":1203,\"./plot\":1205,\"./select\":1206,\"./style\":1207}],1205:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../lib/topojson_utils\").getTopojsonFeatures,o=t(\"../../lib/geojson_utils\"),s=t(\"../../lib/geo_location_utils\"),l=t(\"../../plots/cartesian/autorange\").findExtremes,c=t(\"../../constants/numerical\").BADNUM,u=t(\"../scatter/calc\").calcMarkerSize,h=t(\"../scatter/subtypes\"),f=t(\"./style\");e.exports={calcGeoJSON:function(t,e){var r,n,a=t[0].trace,o=e[a.geo],h=o._subplot,f=a._length;if(Array.isArray(a.locations)){var p=a.locationmode,d=\"geojson-id\"===p?s.extractTraceFeature(t):i(a,h.topojson);for(r=0;r<f;r++){n=t[r];var g=\"geojson-id\"===p?n.fOut:s.locationToFeature(p,n.loc,d);n.lonlat=g?g.properties.ct:[c,c]}}var m,v,y={padded:!0};if(\"geojson\"===o.fitbounds&&\"geojson-id\"===a.locationmode){var x=s.computeBbox(s.getTraceGeojson(a));m=[x[0],x[2]],v=[x[1],x[3]]}else{for(m=new Array(f),v=new Array(f),r=0;r<f;r++)n=t[r],m[r]=n.lonlat[0],v[r]=n.lonlat[1];y.ppad=u(a,f)}a._extremes.lon=l(o.lonaxis._ax,m,y),a._extremes.lat=l(o.lataxis._ax,v,y)},plot:function(t,e,r){var i=e.layers.frontplot.select(\".scatterlayer\"),s=a.makeTraceGroups(i,r,\"trace scattergeo\");function l(t,e){t.lonlat[0]===c&&n.select(e).remove()}s.selectAll(\"*\").remove(),s.each((function(e){var r=n.select(this),i=e[0].trace;if(h.hasLines(i)||\"none\"!==i.fill){var s=o.calcTraceToLineCoords(e),c=\"none\"!==i.fill?o.makePolygon(s):o.makeLine(s);r.selectAll(\"path.js-line\").data([{geojson:c,trace:i}]).enter().append(\"path\").classed(\"js-line\",!0).style(\"stroke-miterlimit\",2)}h.hasMarkers(i)&&r.selectAll(\"path.point\").data(a.identity).enter().append(\"path\").classed(\"point\",!0).each((function(t){l(t,this)})),h.hasText(i)&&r.selectAll(\"g\").data(a.identity).enter().append(\"g\").append(\"text\").each((function(t){l(t,this)})),f(t,e)}))}}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../lib/geo_location_utils\":742,\"../../lib/geojson_utils\":743,\"../../lib/topojson_utils\":776,\"../../plots/cartesian/autorange\":797,\"../scatter/calc\":1157,\"../scatter/subtypes\":1181,\"./style\":1207,d3:169}],1206:[function(t,e,r){\"use strict\";var n=t(\"../scatter/subtypes\"),a=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e){var r,i,o,s,l,c=t.cd,u=t.xaxis,h=t.yaxis,f=[],p=c[0].trace;if(!n.hasMarkers(p)&&!n.hasText(p))return[];if(!1===e)for(l=0;l<c.length;l++)c[l].selected=0;else for(l=0;l<c.length;l++)(i=(r=c[l]).lonlat)[0]!==a&&(o=u.c2p(i),s=h.c2p(i),e.contains([o,s],null,l,t)?(f.push({pointNumber:l,lon:i[0],lat:i[1]}),r.selected=1):r.selected=0);return f}},{\"../../constants/numerical\":724,\"../scatter/subtypes\":1181}],1207:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../components/color\"),o=t(\"../scatter/style\"),s=o.stylePoints,l=o.styleText;e.exports=function(t,e){e&&function(t,e){var r=e[0].trace,o=e[0].node3;o.style(\"opacity\",e[0].trace.opacity),s(o,r,t),l(o,r,t),o.selectAll(\"path.js-line\").style(\"fill\",\"none\").each((function(t){var e=n.select(this),r=t.trace,o=r.line||{};e.call(i.stroke,o.color).call(a.dashLine,o.dash||\"\",o.width||0),\"none\"!==r.fill&&e.call(i.fill,r.fillcolor)}))}(t,e)}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../scatter/style\":1180,d3:169}],1208:[function(t,e,r){\"use strict\";var n=t(\"../../plots/attributes\"),a=t(\"../scatter/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../lib/extend\").extendFlat,s=t(\"../../plot_api/edit_types\").overrideAll,l=t(\"./constants\").DASHES,c=a.line,u=a.marker,h=u.line,f=e.exports=s({x:a.x,x0:a.x0,dx:a.dx,y:a.y,y0:a.y0,dy:a.dy,xperiod:a.xperiod,yperiod:a.yperiod,xperiod0:a.xperiod0,yperiod0:a.yperiod0,xperiodalignment:a.xperiodalignment,yperiodalignment:a.yperiodalignment,text:a.text,hovertext:a.hovertext,textposition:a.textposition,textfont:a.textfont,mode:{valType:\"flaglist\",flags:[\"lines\",\"markers\",\"text\"],extras:[\"none\"]},line:{color:c.color,width:c.width,shape:{valType:\"enumerated\",values:[\"linear\",\"hv\",\"vh\",\"hvh\",\"vhv\"],dflt:\"linear\",editType:\"plot\"},dash:{valType:\"enumerated\",values:Object.keys(l),dflt:\"solid\"}},marker:o({},i(\"marker\"),{symbol:u.symbol,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,opacity:u.opacity,colorbar:u.colorbar,line:o({},i(\"marker.line\"),{width:h.width})}),connectgaps:a.connectgaps,fill:o({},a.fill,{dflt:\"none\"}),fillcolor:a.fillcolor,selected:{marker:a.selected.marker,textfont:a.selected.textfont},unselected:{marker:a.unselected.marker,textfont:a.unselected.textfont},opacity:n.opacity},\"calc\",\"nested\");f.x.editType=f.y.editType=f.x0.editType=f.y0.editType=\"calc+clearAxisTypes\",f.hovertemplate=a.hovertemplate,f.texttemplate=a.texttemplate},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../scatter/attributes\":1156,\"./constants\":1210}],1209:[function(t,e,r){\"use strict\";var n=t(\"@plotly/point-cluster\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axis_ids\"),o=t(\"../../plots/cartesian/autorange\").findExtremes,s=t(\"../../plots/cartesian/align_period\"),l=t(\"../scatter/calc\"),c=l.calcMarkerSize,u=l.calcAxisExpansion,h=l.setFirstScatter,f=t(\"../scatter/colorscale_calc\"),p=t(\"./convert\"),d=t(\"./scene_update\"),g=t(\"../../constants/numerical\").BADNUM,m=t(\"./constants\").TOO_MANY_POINTS;function v(t,e,r){var n=t._extremes[e._id],a=o(e,r._bnds,{padded:!0});n.min=n.min.concat(a.min),n.max=n.max.concat(a.max)}e.exports=function(t,e){var r,o,l,y=t._fullLayout,x=i.getFromId(t,e.xaxis),b=i.getFromId(t,e.yaxis),_=y._plots[e.xaxis+e.yaxis],w=e._length,T=w>=m,k=2*w,M={},A=x.makeCalcdata(e,\"x\"),S=b.makeCalcdata(e,\"y\"),E=s(e,x,\"x\",A),C=s(e,b,\"y\",S);e._x=E,e._y=C,e.xperiodalignment&&(e._origX=A),e.yperiodalignment&&(e._origY=S);var L=new Array(k);for(r=0;r<w;r++)o=E[r],l=C[r],L[2*r]=o===g?NaN:o,L[2*r+1]=l===g?NaN:l;if(\"log\"===x.type)for(r=0;r<k;r+=2)L[r]=x.c2l(L[r]);if(\"log\"===b.type)for(r=1;r<k;r+=2)L[r]=b.c2l(L[r]);if(T&&\"log\"!==x.type&&\"log\"!==b.type)M.tree=n(L);else{var P=M.ids=new Array(w);for(r=0;r<w;r++)P[r]=r}f(t,e);var I,z=function(t,e,r,n,i,o){var s=p.style(t,r);s.marker&&(s.marker.positions=n);s.line&&n.length>1&&a.extendFlat(s.line,p.linePositions(t,r,n));if(s.errorX||s.errorY){var l=p.errorBarPositions(t,r,n,i,o);s.errorX&&a.extendFlat(s.errorX,l.x),s.errorY&&a.extendFlat(s.errorY,l.y)}s.text&&(a.extendFlat(s.text,{positions:n},p.textPosition(t,r,s.text,s.marker)),a.extendFlat(s.textSel,{positions:n},p.textPosition(t,r,s.text,s.markerSel)),a.extendFlat(s.textUnsel,{positions:n},p.textPosition(t,r,s.text,s.markerUnsel)));return s}(t,0,e,L,E,C),O=d(t,_);return h(y,e),T?z.marker&&(I=2*(z.marker.sizeAvg||Math.max(z.marker.size,3))):I=c(e,w),u(t,e,x,b,E,C,I),z.errorX&&v(e,x,z.errorX),z.errorY&&v(e,b,z.errorY),z.fill&&!O.fill2d&&(O.fill2d=!0),z.marker&&!O.scatter2d&&(O.scatter2d=!0),z.line&&!O.line2d&&(O.line2d=!0),!z.errorX&&!z.errorY||O.error2d||(O.error2d=!0),z.text&&!O.glText&&(O.glText=!0),z.marker&&(z.marker.snap=w),O.lineOptions.push(z.line),O.errorXOptions.push(z.errorX),O.errorYOptions.push(z.errorY),O.fillOptions.push(z.fill),O.markerOptions.push(z.marker),O.markerSelectedOptions.push(z.markerSel),O.markerUnselectedOptions.push(z.markerUnsel),O.textOptions.push(z.text),O.textSelectedOptions.push(z.textSel),O.textUnselectedOptions.push(z.textUnsel),O.selectBatch.push([]),O.unselectBatch.push([]),M._scene=O,M.index=O.count,M.x=E,M.y=C,M.positions=L,O.count++,[{x:!1,y:!1,t:M,trace:e}]}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/autorange\":797,\"../../plots/cartesian/axis_ids\":801,\"../scatter/calc\":1157,\"../scatter/colorscale_calc\":1159,\"./constants\":1210,\"./convert\":1211,\"./scene_update\":1219,\"@plotly/point-cluster\":57}],1210:[function(t,e,r){\"use strict\";e.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:20,SYMBOL_STROKE:1,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}},{}],1211:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"svg-path-sdf\"),i=t(\"color-normalize\"),o=t(\"../../registry\"),s=t(\"../../lib\"),l=t(\"../../components/drawing\"),c=t(\"../../plots/cartesian/axis_ids\"),u=t(\"../../lib/gl_format_color\").formatColor,h=t(\"../scatter/subtypes\"),f=t(\"../scatter/make_bubble_size_func\"),p=t(\"./helpers\"),d=t(\"./constants\"),g=t(\"../../constants/interactions\").DESELECTDIM,m={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},v=t(\"../../components/fx/helpers\").appendArrayPointValue;function y(t,e){var r,a=t._fullLayout,i=e._length,o=e.textfont,l=e.textposition,c=Array.isArray(l)?l:[l],u=o.color,h=o.size,f=o.family,p={},d=e.texttemplate;if(d){p.text=[];var g=a._d3locale,m=Array.isArray(d),y=m?Math.min(d.length,i):i,x=m?function(t){return d[t]}:function(){return d};for(r=0;r<y;r++){var b={i:r},_=e._module.formatLabels(b,e,a),w={};v(w,e,r);var T=e._meta||{};p.text.push(s.texttemplateString(x(r),_,g,w,b,T))}}else Array.isArray(e.text)&&e.text.length<i?p.text=e.text.slice():p.text=e.text;if(Array.isArray(p.text))for(r=p.text.length;r<i;r++)p.text[r]=\"\";for(p.opacity=e.opacity,p.font={},p.align=[],p.baseline=[],r=0;r<c.length;r++){var k=c[r].split(/\\s+/);switch(k[1]){case\"left\":p.align.push(\"right\");break;case\"right\":p.align.push(\"left\");break;default:p.align.push(k[1])}switch(k[0]){case\"top\":p.baseline.push(\"bottom\");break;case\"bottom\":p.baseline.push(\"top\");break;default:p.baseline.push(k[0])}}if(Array.isArray(u))for(p.color=new Array(i),r=0;r<i;r++)p.color[r]=u[r];else p.color=u;if(s.isArrayOrTypedArray(h)||Array.isArray(f))for(p.font=new Array(i),r=0;r<i;r++){var M=p.font[r]={};M.size=s.isTypedArray(h)?h[r]:Array.isArray(h)?n(h[r])?h[r]:0:h,M.family=Array.isArray(f)?f[r]:f}else p.font={size:h,family:f};return p}function x(t){var e,r,n=t._length,a=t.marker,o={},l=s.isArrayOrTypedArray(a.symbol),c=s.isArrayOrTypedArray(a.color),h=s.isArrayOrTypedArray(a.line.color),d=s.isArrayOrTypedArray(a.opacity),g=s.isArrayOrTypedArray(a.size),m=s.isArrayOrTypedArray(a.line.width);if(l||(r=p.isOpenSymbol(a.symbol)),l||c||h||d){o.colors=new Array(n),o.borderColors=new Array(n);var v=u(a,a.opacity,n),y=u(a.line,a.opacity,n);if(!Array.isArray(y[0])){var x=y;for(y=Array(n),e=0;e<n;e++)y[e]=x}if(!Array.isArray(v[0])){var b=v;for(v=Array(n),e=0;e<n;e++)v[e]=b}for(o.colors=v,o.borderColors=y,e=0;e<n;e++){if(l){var _=a.symbol[e];r=p.isOpenSymbol(_)}r&&(y[e]=v[e].slice(),v[e]=v[e].slice(),v[e][3]=0)}o.opacity=t.opacity}else r?(o.color=i(a.color,\"uint8\"),o.color[3]=0,o.borderColor=i(a.color,\"uint8\")):(o.color=i(a.color,\"uint8\"),o.borderColor=i(a.line.color,\"uint8\")),o.opacity=t.opacity*a.opacity;if(l)for(o.markers=new Array(n),e=0;e<n;e++)o.markers[e]=E(a.symbol[e]);else o.marker=E(a.symbol);var w,T=f(t);if(g||m){var k,M=o.sizes=new Array(n),A=o.borderSizes=new Array(n),S=0;if(g){for(e=0;e<n;e++)M[e]=T(a.size[e]),S+=M[e];k=S/n}else for(w=T(a.size),e=0;e<n;e++)M[e]=w;if(m)for(e=0;e<n;e++)A[e]=a.line.width[e]/2;else for(w=a.line.width/2,e=0;e<n;e++)A[e]=w;o.sizeAvg=k}else o.size=T(a&&a.size||10),o.borderSizes=T(a.line.width);return o}function b(t,e){var r=t.marker,n={};return e?(e.marker&&e.marker.symbol?n=x(s.extendFlat({},r,e.marker)):e.marker&&(e.marker.size&&(n.size=e.marker.size/2),e.marker.color&&(n.colors=e.marker.color),void 0!==e.marker.opacity&&(n.opacity=e.marker.opacity)),n):n}function _(t,e,r){var n={};if(!r)return n;if(r.textfont){var a={opacity:1,text:e.text,texttemplate:e.texttemplate,textposition:e.textposition,textfont:s.extendFlat({},e.textfont)};r.textfont&&s.extendFlat(a.textfont,r.textfont),n=y(t,a)}return n}function w(t,e){var r={capSize:2*e.width,lineWidth:e.thickness,color:e.color};return e.copy_ystyle&&(r=t.error_y),r}var T=d.SYMBOL_SDF_SIZE,k=d.SYMBOL_SIZE,M=d.SYMBOL_STROKE,A={},S=l.symbolFuncs[0](.05*k);function E(t){if(\"circle\"===t)return null;var e,r,n=l.symbolNumber(t),i=l.symbolFuncs[n%100],o=!!l.symbolNoDot[n%100],s=!!l.symbolNoFill[n%100],c=p.isDotSymbol(t);return A[t]?A[t]:(e=c&&!o?i(1.1*k)+S:i(k),r=a(e,{w:T,h:T,viewBox:[-k,-k,k,k],stroke:s?M:-M}),A[t]=r,r||null)}e.exports={style:function(t,e){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0};if(!0!==e.visible)return n;if(h.hasText(e)&&(n.text=y(t,e),n.textSel=_(t,e,e.selected),n.textUnsel=_(t,e,e.unselected)),h.hasMarkers(e)&&(n.marker=x(e),n.markerSel=b(e,e.selected),n.markerUnsel=b(e,e.unselected),!e.unselected&&s.isArrayOrTypedArray(e.marker.opacity))){var a=e.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r<a.length;r++)n.markerUnsel.opacity[r]=g*a[r]}if(h.hasLines(e)){n.line={overlay:!0,thickness:e.line.width,color:e.line.color,opacity:e.opacity};var i=(d.DASHES[e.line.dash]||[1]).slice();for(r=0;r<i.length;++r)i[r]*=e.line.width;n.line.dashes=i}return e.error_x&&e.error_x.visible&&(n.errorX=w(e,e.error_x)),e.error_y&&e.error_y.visible&&(n.errorY=w(e,e.error_y)),e.fill&&\"none\"!==e.fill&&(n.fill={closed:!0,fill:e.fillcolor,thickness:0}),n},markerStyle:x,markerSelection:b,linePositions:function(t,e,r){var n,a,i=r.length,o=i/2;if(h.hasLines(e)&&o)if(\"hv\"===e.line.shape){for(n=[],a=0;a<o-1;a++)isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN,NaN,NaN):(n.push(r[2*a],r[2*a+1]),isNaN(r[2*a+2])||isNaN(r[2*a+3])?n.push(NaN,NaN):n.push(r[2*a+2],r[2*a+1]));n.push(r[i-2],r[i-1])}else if(\"hvh\"===e.line.shape){for(n=[],a=0;a<o-1;a++)if(isNaN(r[2*a])||isNaN(r[2*a+1])||isNaN(r[2*a+2])||isNaN(r[2*a+3]))isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN):n.push(r[2*a],r[2*a+1]),n.push(NaN,NaN);else{var s=(r[2*a]+r[2*a+2])/2;n.push(r[2*a],r[2*a+1],s,r[2*a+1],s,r[2*a+3])}n.push(r[i-2],r[i-1])}else if(\"vhv\"===e.line.shape){for(n=[],a=0;a<o-1;a++)if(isNaN(r[2*a])||isNaN(r[2*a+1])||isNaN(r[2*a+2])||isNaN(r[2*a+3]))isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN):n.push(r[2*a],r[2*a+1]),n.push(NaN,NaN);else{var l=(r[2*a+1]+r[2*a+3])/2;n.push(r[2*a],r[2*a+1],r[2*a],l,r[2*a+2],l)}n.push(r[i-2],r[i-1])}else if(\"vh\"===e.line.shape){for(n=[],a=0;a<o-1;a++)isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN,NaN,NaN):(n.push(r[2*a],r[2*a+1]),isNaN(r[2*a+2])||isNaN(r[2*a+3])?n.push(NaN,NaN):n.push(r[2*a],r[2*a+3]));n.push(r[i-2],r[i-1])}else n=r;var c=!1;for(a=0;a<n.length;a++)if(isNaN(n[a])){c=!0;break}var u=c||n.length>d.TOO_MANY_POINTS||h.hasMarkers(e)?\"rect\":\"round\";if(c&&e.connectgaps){var f=n[0],p=n[1];for(a=0;a<n.length;a+=2)isNaN(n[a])||isNaN(n[a+1])?(n[a]=f,n[a+1]=p):(f=n[a],p=n[a+1])}return{join:u,positions:n}},errorBarPositions:function(t,e,r,a,i){var s=o.getComponentMethod(\"errorbars\",\"makeComputeError\"),l=c.getFromId(t,e.xaxis),u=c.getFromId(t,e.yaxis),h=r.length/2,f={};function p(t,a){var i=a._id.charAt(0),o=e[\"error_\"+i];if(o&&o.visible&&(\"linear\"===a.type||\"log\"===a.type)){for(var l=s(o),c={x:0,y:1}[i],u={x:[0,1,2,3],y:[2,3,0,1]}[i],p=new Float64Array(4*h),d=1/0,g=-1/0,m=0,v=0;m<h;m++,v+=4){var y=t[m];if(n(y)){var x=r[2*m+c],b=l(y,m),_=b[0],w=b[1];if(n(_)&&n(w)){var T=y-_,k=y+w;p[v+u[0]]=x-a.c2l(T),p[v+u[1]]=a.c2l(k)-x,p[v+u[2]]=0,p[v+u[3]]=0,d=Math.min(d,y-_),g=Math.max(g,y+w)}}}f[i]={positions:r,errors:p,_bnds:[d,g]}}}return p(a,l),p(i,u),f},textPosition:function(t,e,r,n){var a,i=e._length,o={};if(h.hasMarkers(e)){var s=r.font,l=r.align,c=r.baseline;for(o.offset=new Array(i),a=0;a<i;a++){var u=n.sizes?n.sizes[a]:n.size,f=Array.isArray(s)?s[a].size:s.size,p=Array.isArray(l)?l.length>1?l[a]:l[0]:l,d=Array.isArray(c)?c.length>1?c[a]:c[0]:c,g=m[p],v=m[d],y=u?u/.8+1:0,x=-v*y-.5*v;o.offset[a]=[g*y/f,x/f]}}return o}}},{\"../../components/drawing\":637,\"../../components/fx/helpers\":651,\"../../constants/interactions\":723,\"../../lib\":749,\"../../lib/gl_format_color\":745,\"../../plots/cartesian/axis_ids\":801,\"../../registry\":881,\"../scatter/make_bubble_size_func\":1173,\"../scatter/subtypes\":1181,\"./constants\":1210,\"./helpers\":1215,\"color-normalize\":125,\"fast-isnumeric\":241,\"svg-path-sdf\":546}],1212:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"./helpers\"),o=t(\"./attributes\"),s=t(\"../scatter/constants\"),l=t(\"../scatter/subtypes\"),c=t(\"../scatter/xy_defaults\"),u=t(\"../scatter/period_defaults\"),h=t(\"../scatter/marker_defaults\"),f=t(\"../scatter/line_defaults\"),p=t(\"../scatter/fillcolor_defaults\"),d=t(\"../scatter/text_defaults\");e.exports=function(t,e,r,g){function m(r,a){return n.coerce(t,e,o,r,a)}var v=!!t.marker&&i.isOpenSymbol(t.marker.symbol),y=l.isBubble(t),x=c(t,e,g,m);if(x){u(t,e,g,m);var b=x<s.PTS_LINESONLY?\"lines+markers\":\"lines\";m(\"text\"),m(\"hovertext\"),m(\"hovertemplate\"),m(\"mode\",b),l.hasLines(e)&&(m(\"connectgaps\"),f(t,e,r,g,m),m(\"line.shape\")),l.hasMarkers(e)&&(h(t,e,r,g,m),m(\"marker.line.width\",v||y?1:0)),l.hasText(e)&&(m(\"texttemplate\"),d(t,e,g,m));var _=(e.line||{}).color,w=(e.marker||{}).color;m(\"fill\"),\"none\"!==e.fill&&p(t,e,r,m);var T=a.getComponentMethod(\"errorbars\",\"supplyDefaults\");T(t,e,_||w||r,{axis:\"y\"}),T(t,e,_||w||r,{axis:\"x\",inherit:\"y\"}),n.coerceSelectionMarkerOpacity(e,m)}else e.visible=!1}},{\"../../lib\":749,\"../../registry\":881,\"../scatter/constants\":1160,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/marker_defaults\":1175,\"../scatter/period_defaults\":1176,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"../scatter/xy_defaults\":1183,\"./attributes\":1208,\"./helpers\":1215}],1213:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../../constants/interactions\").DESELECTDIM;e.exports={styleTextSelection:function(t){var e,r,o=t[0],s=o.trace,l=o.t,c=l._scene,u=l.index,h=c.selectBatch[u],f=c.unselectBatch[u],p=c.textOptions[u],d=c.textSelectedOptions[u]||{},g=c.textUnselectedOptions[u]||{},m=n.extendFlat({},p);if(h.length||f.length){var v=d.color,y=g.color,x=p.color,b=Array.isArray(x);for(m.color=new Array(s._length),e=0;e<h.length;e++)r=h[e],m.color[r]=v||(b?x[r]:x);for(e=0;e<f.length;e++){r=f[e];var _=b?x[r]:x;m.color[r]=y||(v?_:a.addOpacity(_,i))}}c.glText[u].update(m)}}},{\"../../components/color\":615,\"../../constants/interactions\":723,\"../../lib\":749}],1214:[function(t,e,r){\"use strict\";var n=t(\"../scatter/format_labels\");e.exports=function(t,e,r){var a=t.i;return\"x\"in t||(t.x=e._x[a]),\"y\"in t||(t.y=e._y[a]),n(t,e,r)}},{\"../scatter/format_labels\":1165}],1215:[function(t,e,r){\"use strict\";var n=t(\"./constants\");r.isOpenSymbol=function(t){return\"string\"==typeof t?n.OPEN_RE.test(t):t%200>100},r.isDotSymbol=function(t){return\"string\"==typeof t?n.DOT_RE.test(t):t>200}},{\"./constants\":1210}],1216:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../scatter/get_trace_color\");function o(t,e,r,o){var s=t.xa,l=t.ya,c=t.distance,u=t.dxy,h=t.index,f={pointNumber:h,x:e[h],y:r[h]};f.tx=Array.isArray(o.text)?o.text[h]:o.text,f.htx=Array.isArray(o.hovertext)?o.hovertext[h]:o.hovertext,f.data=Array.isArray(o.customdata)?o.customdata[h]:o.customdata,f.tp=Array.isArray(o.textposition)?o.textposition[h]:o.textposition;var p=o.textfont;p&&(f.ts=a.isArrayOrTypedArray(p.size)?p.size[h]:p.size,f.tc=Array.isArray(p.color)?p.color[h]:p.color,f.tf=Array.isArray(p.family)?p.family[h]:p.family);var d=o.marker;d&&(f.ms=a.isArrayOrTypedArray(d.size)?d.size[h]:d.size,f.mo=a.isArrayOrTypedArray(d.opacity)?d.opacity[h]:d.opacity,f.mx=a.isArrayOrTypedArray(d.symbol)?d.symbol[h]:d.symbol,f.mc=a.isArrayOrTypedArray(d.color)?d.color[h]:d.color);var g=d&&d.line;g&&(f.mlc=Array.isArray(g.color)?g.color[h]:g.color,f.mlw=a.isArrayOrTypedArray(g.width)?g.width[h]:g.width);var m=d&&d.gradient;m&&\"none\"!==m.type&&(f.mgt=Array.isArray(m.type)?m.type[h]:m.type,f.mgc=Array.isArray(m.color)?m.color[h]:m.color);var v=s.c2p(f.x,!0),y=l.c2p(f.y,!0),x=f.mrc||1,b=o.hoverlabel;b&&(f.hbg=Array.isArray(b.bgcolor)?b.bgcolor[h]:b.bgcolor,f.hbc=Array.isArray(b.bordercolor)?b.bordercolor[h]:b.bordercolor,f.hts=a.isArrayOrTypedArray(b.font.size)?b.font.size[h]:b.font.size,f.htc=Array.isArray(b.font.color)?b.font.color[h]:b.font.color,f.htf=Array.isArray(b.font.family)?b.font.family[h]:b.font.family,f.hnl=a.isArrayOrTypedArray(b.namelength)?b.namelength[h]:b.namelength);var _=o.hoverinfo;_&&(f.hi=Array.isArray(_)?_[h]:_);var w=o.hovertemplate;w&&(f.ht=Array.isArray(w)?w[h]:w);var T={};T[t.index]=f;var k=o._origX,M=o._origY,A=a.extendFlat({},t,{color:i(o,f),x0:v-x,x1:v+x,xLabelVal:k?k[h]:f.x,y0:y-x,y1:y+x,yLabelVal:M?M[h]:f.y,cd:T,distance:c,spikeDistance:u,hovertemplate:f.ht});return f.htx?A.text=f.htx:f.tx?A.text=f.tx:o.text&&(A.text=o.text),a.fillText(f,o,A),n.getComponentMethod(\"errorbars\",\"hoverInfo\")(f,o,A),A}e.exports={hoverPoints:function(t,e,r,n){var a,i,s,l,c,u,h,f,p,d=t.cd,g=d[0].t,m=d[0].trace,v=t.xa,y=t.ya,x=g.x,b=g.y,_=v.c2p(e),w=y.c2p(r),T=t.distance;if(g.tree){var k=v.p2c(_-T),M=v.p2c(_+T),A=y.p2c(w-T),S=y.p2c(w+T);a=\"x\"===n?g.tree.range(Math.min(k,M),Math.min(y._rl[0],y._rl[1]),Math.max(k,M),Math.max(y._rl[0],y._rl[1])):g.tree.range(Math.min(k,M),Math.min(A,S),Math.max(k,M),Math.max(A,S))}else a=g.ids;var E=T;if(\"x\"===n)for(c=0;c<a.length;c++)s=x[a[c]],(u=Math.abs(v.c2p(s)-_))<E&&(E=u,h=y.c2p(b[a[c]])-w,p=Math.sqrt(u*u+h*h),i=a[c]);else for(c=a.length-1;c>-1;c--)s=x[a[c]],l=b[a[c]],u=v.c2p(s)-_,h=y.c2p(l)-w,(f=Math.sqrt(u*u+h*h))<E&&(E=p=f,i=a[c]);return t.index=i,t.distance=E,t.dxy=p,void 0===i?[t]:[o(t,x,b,m)]},calcHover:o}},{\"../../lib\":749,\"../../registry\":881,\"../scatter/get_trace_color\":1166}],1217:[function(t,e,r){\"use strict\";var n=t(\"./hover\");e.exports={moduleType:\"trace\",name:\"scattergl\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"gl\",\"regl\",\"cartesian\",\"symbols\",\"errorBarsOK\",\"showLegend\",\"scatter-like\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"../scatter/cross_trace_defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),hoverPoints:n.hoverPoints,selectPoints:t(\"./select\"),meta:{}}},{\"../../plots/cartesian\":811,\"../scatter/cross_trace_defaults\":1162,\"../scatter/marker_colorbar\":1174,\"./attributes\":1208,\"./calc\":1209,\"./defaults\":1212,\"./format_labels\":1214,\"./hover\":1216,\"./plot\":1218,\"./select\":1220}],1218:[function(t,e,r){\"use strict\";var n=t(\"regl-scatter2d\"),a=t(\"regl-line2d\"),i=t(\"regl-error2d\"),o=t(\"gl-text\"),s=t(\"../../lib\"),l=t(\"../../components/dragelement/helpers\").selectMode,c=t(\"../../lib/prepare_regl\"),u=t(\"../scatter/subtypes\"),h=t(\"../scatter/link_traces\"),f=t(\"./edit_style\").styleTextSelection;function p(t,e,r){var n=t._size,a=t.width,i=t.height;return[n.l+e.domain[0]*n.w,n.b+r.domain[0]*n.h,a-n.r-(1-e.domain[1])*n.w,i-n.t-(1-r.domain[1])*n.h]}e.exports=function(t,e,r){if(r.length){var d,g,m=t._fullLayout,v=e._scene,y=e.xaxis,x=e.yaxis;if(v)if(c(t,[\"ANGLE_instanced_arrays\",\"OES_element_index_uint\"])){var b=v.count,_=m._glcanvas.data()[0].regl;if(h(t,e,r),v.dirty){if(!0===v.error2d&&(v.error2d=i(_)),!0===v.line2d&&(v.line2d=a(_)),!0===v.scatter2d&&(v.scatter2d=n(_,{constPointSize:!0})),!0===v.fill2d&&(v.fill2d=a(_)),!0===v.glText)for(v.glText=new Array(b),d=0;d<b;d++)v.glText[d]=new o(_);if(v.glText){if(b>v.glText.length){var w=b-v.glText.length;for(d=0;d<w;d++)v.glText.push(new o(_))}else if(b<v.glText.length){var T=v.glText.length-b;v.glText.splice(b,T).forEach((function(t){t.destroy()}))}for(d=0;d<b;d++)v.glText[d].update(v.textOptions[d])}if(v.line2d&&(v.line2d.update(v.lineOptions),v.lineOptions=v.lineOptions.map((function(t){if(t&&t.positions){for(var e=t.positions,r=0;r<e.length&&(isNaN(e[r])||isNaN(e[r+1]));)r+=2;for(var n=e.length-2;n>r&&(isNaN(e[n])||isNaN(e[n+1]));)n-=2;t.positions=e.slice(r,n+2)}return t})),v.line2d.update(v.lineOptions)),v.error2d){var k=(v.errorXOptions||[]).concat(v.errorYOptions||[]);v.error2d.update(k)}v.scatter2d&&v.scatter2d.update(v.markerOptions),v.fillOrder=s.repeat(null,b),v.fill2d&&(v.fillOptions=v.fillOptions.map((function(t,e){var n=r[e];if(t&&n&&n[0]&&n[0].trace){var a,i,o=n[0],s=o.trace,l=o.t,c=v.lineOptions[e],u=[];s._ownfill&&u.push(e),s._nexttrace&&u.push(e+1),u.length&&(v.fillOrder[e]=u);var h,f,p=[],d=c&&c.positions||l.positions;if(\"tozeroy\"===s.fill){for(h=0;h<d.length&&isNaN(d[h+1]);)h+=2;for(f=d.length-2;f>h&&isNaN(d[f+1]);)f-=2;0!==d[h+1]&&(p=[d[h],0]),p=p.concat(d.slice(h,f+2)),0!==d[f+1]&&(p=p.concat([d[f],0]))}else if(\"tozerox\"===s.fill){for(h=0;h<d.length&&isNaN(d[h]);)h+=2;for(f=d.length-2;f>h&&isNaN(d[f]);)f-=2;0!==d[h]&&(p=[0,d[h+1]]),p=p.concat(d.slice(h,f+2)),0!==d[f]&&(p=p.concat([0,d[f+1]]))}else if(\"toself\"===s.fill||\"tonext\"===s.fill){for(p=[],a=0,i=0;i<d.length;i+=2)(isNaN(d[i])||isNaN(d[i+1]))&&((p=p.concat(d.slice(a,i))).push(d[a],d[a+1]),a=i+2);p=p.concat(d.slice(a)),a&&p.push(d[a],d[a+1])}else{var g=s._nexttrace;if(g){var m=v.lineOptions[e+1];if(m){var y=m.positions;if(\"tonexty\"===s.fill){for(p=d.slice(),e=Math.floor(y.length/2);e--;){var x=y[2*e],b=y[2*e+1];isNaN(x)||isNaN(b)||p.push(x,b)}t.fill=g.fillcolor}}}}if(s._prevtrace&&\"tonext\"===s._prevtrace.fill){var _=v.lineOptions[e-1].positions,w=p.length/2,T=[a=w];for(i=0;i<_.length;i+=2)(isNaN(_[i])||isNaN(_[i+1]))&&(T.push(i/2+w+1),a=i+2);p=p.concat(_),t.hole=T}return t.fillmode=s.fill,t.opacity=s.opacity,t.positions=p,t}})),v.fill2d.update(v.fillOptions))}var M=m.dragmode,A=l(M),S=m.clickmode.indexOf(\"select\")>-1;for(d=0;d<b;d++){var E=r[d][0],C=E.trace,L=E.t,P=L.index,I=C._length,z=L.x,O=L.y;if(C.selectedpoints||A||S){if(A||(A=!0),C.selectedpoints){var D=v.selectBatch[P]=s.selIndices2selPoints(C),R={};for(g=0;g<D.length;g++)R[D[g]]=1;var F=[];for(g=0;g<I;g++)R[g]||F.push(g);v.unselectBatch[P]=F}var B=L.xpx=new Array(I),N=L.ypx=new Array(I);for(g=0;g<I;g++)B[g]=y.c2p(z[g]),N[g]=x.c2p(O[g])}else L.xpx=L.ypx=null}if(A){if(v.select2d||(v.select2d=n(m._glcanvas.data()[1].regl)),v.scatter2d){var j=new Array(b);for(d=0;d<b;d++)j[d]=v.selectBatch[d].length||v.unselectBatch[d].length?v.markerUnselectedOptions[d]:{};v.scatter2d.update(j)}v.select2d&&(v.select2d.update(v.markerOptions),v.select2d.update(v.markerSelectedOptions)),v.glText&&r.forEach((function(t){var e=((t||[])[0]||{}).trace||{};u.hasText(e)&&f(t)}))}else v.scatter2d&&v.scatter2d.update(v.markerOptions);var U={viewport:p(m,y,x),range:[(y._rl||y.range)[0],(x._rl||x.range)[0],(y._rl||y.range)[1],(x._rl||x.range)[1]]},V=s.repeat(U,v.count);v.fill2d&&v.fill2d.update(V),v.line2d&&v.line2d.update(V),v.error2d&&v.error2d.update(V.concat(V)),v.scatter2d&&v.scatter2d.update(V),v.select2d&&v.select2d.update(V),v.glText&&v.glText.forEach((function(t){t.update(U)}))}else v.init()}}},{\"../../components/dragelement/helpers\":633,\"../../lib\":749,\"../../lib/prepare_regl\":762,\"../scatter/link_traces\":1172,\"../scatter/subtypes\":1181,\"./edit_style\":1213,\"gl-text\":326,\"regl-error2d\":508,\"regl-line2d\":509,\"regl-scatter2d\":510}],1219:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){var r=e._scene,a={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},i={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return e._scene||((r=e._scene={}).init=function(){n.extendFlat(r,i,a)},r.init(),r.update=function(t){var e=n.repeat(t,r.count);if(r.fill2d&&r.fill2d.update(e),r.scatter2d&&r.scatter2d.update(e),r.line2d&&r.line2d.update(e),r.error2d&&r.error2d.update(e.concat(e)),r.select2d&&r.select2d.update(e),r.glText)for(var a=0;a<r.count;a++)r.glText[a].update(t)},r.draw=function(){for(var t=r.count,e=r.fill2d,a=r.error2d,i=r.line2d,o=r.scatter2d,s=r.glText,l=r.select2d,c=r.selectBatch,u=r.unselectBatch,h=0;h<t;h++){if(e&&r.fillOrder[h]&&e.draw(r.fillOrder[h]),i&&r.lineOptions[h]&&i.draw(h),a&&(r.errorXOptions[h]&&a.draw(h),r.errorYOptions[h]&&a.draw(h+t)),o&&r.markerOptions[h])if(u[h].length){var f=n.repeat([],r.count);f[h]=u[h],o.draw(f)}else c[h].length||o.draw(h);s[h]&&r.textOptions[h]&&s[h].render()}l&&l.draw(c),r.dirty=!1},r.destroy=function(){r.fill2d&&r.fill2d.destroy&&r.fill2d.destroy(),r.scatter2d&&r.scatter2d.destroy&&r.scatter2d.destroy(),r.error2d&&r.error2d.destroy&&r.error2d.destroy(),r.line2d&&r.line2d.destroy&&r.line2d.destroy(),r.select2d&&r.select2d.destroy&&r.select2d.destroy(),r.glText&&r.glText.forEach((function(t){t.destroy&&t.destroy()})),r.lineOptions=null,r.fillOptions=null,r.markerOptions=null,r.markerSelectedOptions=null,r.markerUnselectedOptions=null,r.errorXOptions=null,r.errorYOptions=null,r.textOptions=null,r.textSelectedOptions=null,r.textUnselectedOptions=null,r.selectBatch=null,r.unselectBatch=null,e._scene=null}),r.dirty||n.extendFlat(r,a),r}},{\"../../lib\":749}],1220:[function(t,e,r){\"use strict\";var n=t(\"../scatter/subtypes\"),a=t(\"./edit_style\").styleTextSelection;e.exports=function(t,e){var r=t.cd,i=[],o=r[0].trace,s=r[0].t,l=o._length,c=s.x,u=s.y,h=s._scene,f=s.index;if(!h)return i;var p=n.hasText(o),d=n.hasMarkers(o),g=!d&&!p;if(!0!==o.visible||g)return i;var m=[],v=[];if(!1!==e&&!e.degenerate)for(var y=0;y<l;y++)e.contains([s.xpx[y],s.ypx[y]],!1,y,t)?(m.push(y),i.push({pointNumber:y,x:c[y],y:u[y]})):v.push(y);if(d){var x=h.scatter2d;if(m.length||v.length){if(!h.selectBatch[f].length&&!h.unselectBatch[f].length){var b=new Array(h.count);b[f]=h.markerUnselectedOptions[f],x.update.apply(x,b)}}else{var _=new Array(h.count);_[f]=h.markerOptions[f],x.update.apply(x,_)}}return h.selectBatch[f]=m,h.unselectBatch[f]=v,p&&a(r),i}},{\"../scatter/subtypes\":1181,\"./edit_style\":1213}],1221:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../plots/template_attributes\").texttemplateAttrs,i=t(\"../scattergeo/attributes\"),o=t(\"../scatter/attributes\"),s=t(\"../../plots/mapbox/layout_attributes\"),l=t(\"../../plots/attributes\"),c=t(\"../../components/colorscale/attributes\"),u=t(\"../../lib/extend\").extendFlat,h=t(\"../../plot_api/edit_types\").overrideAll,f=i.line,p=i.marker;e.exports=h({lon:i.lon,lat:i.lat,mode:u({},o.mode,{dflt:\"markers\"}),text:u({},o.text,{}),texttemplate:a({editType:\"plot\"},{keys:[\"lat\",\"lon\",\"text\"]}),hovertext:u({},o.hovertext,{}),line:{color:f.color,width:f.width},connectgaps:o.connectgaps,marker:u({symbol:{valType:\"string\",dflt:\"circle\",arrayOk:!0},angle:{valType:\"number\",dflt:\"auto\",arrayOk:!0},allowoverlap:{valType:\"boolean\",dflt:!1},opacity:p.opacity,size:p.size,sizeref:p.sizeref,sizemin:p.sizemin,sizemode:p.sizemode},c(\"marker\")),fill:i.fill,fillcolor:o.fillcolor,textfont:s.layers.symbol.textfont,textposition:s.layers.symbol.textposition,below:{valType:\"string\"},selected:{marker:o.selected.marker},unselected:{marker:o.unselected.marker},hoverinfo:u({},l.hoverinfo,{flags:[\"lon\",\"lat\",\"text\",\"name\"]}),hovertemplate:n()},\"calc\",\"nested\")},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../../plots/mapbox/layout_attributes\":857,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156,\"../scattergeo/attributes\":1198}],1222:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\").BADNUM,o=t(\"../../lib/geojson_utils\"),s=t(\"../../components/colorscale\"),l=t(\"../../components/drawing\"),c=t(\"../scatter/make_bubble_size_func\"),u=t(\"../scatter/subtypes\"),h=t(\"../../plots/mapbox/convert_text_opts\"),f=t(\"../../components/fx/helpers\").appendArrayPointValue,p=t(\"../../lib/svg_text_utils\").NEWLINES,d=t(\"../../lib/svg_text_utils\").BR_TAG_ALL;function g(){return{geojson:o.makeBlank(),layout:{visibility:\"none\"},paint:{}}}function m(t,e){return a.isArrayOrTypedArray(t)?e?function(e){return n(t[e])?+t[e]:0}:function(e){return t[e]}:t?function(){return t}:v}function v(){return\"\"}function y(t){return t[0]===i}e.exports=function(t,e){var r,i=e[0].trace,x=!0===i.visible&&0!==i._length,b=\"none\"!==i.fill,_=u.hasLines(i),w=u.hasMarkers(i),T=u.hasText(i),k=w&&\"circle\"===i.marker.symbol,M=w&&\"circle\"!==i.marker.symbol,A=g(),S=g(),E=g(),C=g(),L={fill:A,line:S,circle:E,symbol:C};if(!x)return L;if((b||_)&&(r=o.calcTraceToLineCoords(e)),b&&(A.geojson=o.makePolygon(r),A.layout.visibility=\"visible\",a.extendFlat(A.paint,{\"fill-color\":i.fillcolor})),_&&(S.geojson=o.makeLine(r),S.layout.visibility=\"visible\",a.extendFlat(S.paint,{\"line-width\":i.line.width,\"line-color\":i.line.color,\"line-opacity\":i.opacity})),k){var P=function(t){var e,r,i,o,u=t[0].trace,h=u.marker,f=u.selectedpoints,p=a.isArrayOrTypedArray(h.color),d=a.isArrayOrTypedArray(h.size),g=a.isArrayOrTypedArray(h.opacity);function m(t){return u.opacity*t}p&&(r=s.hasColorscale(u,\"marker\")?s.makeColorScaleFuncFromTrace(h):a.identity);d&&(i=c(u));g&&(o=function(t){return m(n(t)?+a.constrain(t,0,1):0)});var v,x=[];for(e=0;e<t.length;e++){var b=t[e],_=b.lonlat;if(!y(_)){var w={};r&&(w.mcc=b.mcc=r(b.mc)),i&&(w.mrc=b.mrc=i(b.ms)),o&&(w.mo=o(b.mo)),f&&(w.selected=b.selected||0),x.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:_},properties:w})}}if(f)for(v=l.makeSelectedPointStyleFns(u),e=0;e<x.length;e++){var T=x[e].properties;v.selectedOpacityFn&&(T.mo=m(v.selectedOpacityFn(T))),v.selectedColorFn&&(T.mcc=v.selectedColorFn(T)),v.selectedSizeFn&&(T.mrc=v.selectedSizeFn(T))}return{geojson:{type:\"FeatureCollection\",features:x},mcc:p||v&&v.selectedColorFn?{type:\"identity\",property:\"mcc\"}:h.color,mrc:d||v&&v.selectedSizeFn?{type:\"identity\",property:\"mrc\"}:(k=h.size,k/2),mo:g||v&&v.selectedOpacityFn?{type:\"identity\",property:\"mo\"}:m(h.opacity)};var k}(e);E.geojson=P.geojson,E.layout.visibility=\"visible\",a.extendFlat(E.paint,{\"circle-color\":P.mcc,\"circle-radius\":P.mrc,\"circle-opacity\":P.mo})}if((M||T)&&(C.geojson=function(t,e){for(var r=e._fullLayout,n=t[0].trace,i=n.marker||{},o=i.symbol,s=i.angle,l=\"circle\"!==o?m(o):v,c=\"auto\"!==s?m(s,!0):v,h=u.hasText(n)?m(n.text):v,g=[],x=0;x<t.length;x++){var b=t[x];if(!y(b.lonlat)){var _,w=n.texttemplate;if(w){var T=Array.isArray(w)?w[x]||\"\":w,k=n._module.formatLabels(b,n,r),M={};f(M,n,b.i);var A=n._meta||{};_=a.texttemplateString(T,k,r._d3locale,M,b,A)}else _=h(x);_&&(_=_.replace(p,\"\").replace(d,\"\\n\")),g.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:b.lonlat},properties:{symbol:l(x),angle:c(x),text:_}})}}return{type:\"FeatureCollection\",features:g}}(e,t),a.extendFlat(C.layout,{visibility:\"visible\",\"icon-image\":\"{symbol}-15\",\"text-field\":\"{text}\"}),M&&(a.extendFlat(C.layout,{\"icon-size\":i.marker.size/10}),\"angle\"in i.marker&&\"auto\"!==i.marker.angle&&a.extendFlat(C.layout,{\"icon-rotate\":{type:\"identity\",property:\"angle\"},\"icon-rotation-alignment\":\"map\"}),C.layout[\"icon-allow-overlap\"]=i.marker.allowoverlap,a.extendFlat(C.paint,{\"icon-opacity\":i.opacity*i.marker.opacity,\"icon-color\":i.marker.color})),T)){var I=(i.marker||{}).size,z=h(i.textposition,I);a.extendFlat(C.layout,{\"text-size\":i.textfont.size,\"text-anchor\":z.anchor,\"text-offset\":z.offset}),a.extendFlat(C.paint,{\"text-color\":i.textfont.color,\"text-opacity\":i.opacity})}return L}},{\"../../components/colorscale\":627,\"../../components/drawing\":637,\"../../components/fx/helpers\":651,\"../../constants/numerical\":724,\"../../lib\":749,\"../../lib/geojson_utils\":743,\"../../lib/svg_text_utils\":773,\"../../plots/mapbox/convert_text_opts\":854,\"../scatter/make_bubble_size_func\":1173,\"../scatter/subtypes\":1181,\"fast-isnumeric\":241}],1223:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/subtypes\"),i=t(\"../scatter/marker_defaults\"),o=t(\"../scatter/line_defaults\"),s=t(\"../scatter/text_defaults\"),l=t(\"../scatter/fillcolor_defaults\"),c=t(\"./attributes\");e.exports=function(t,e,r,u){function h(r,a){return n.coerce(t,e,c,r,a)}if(function(t,e,r){var n=r(\"lon\")||[],a=r(\"lat\")||[],i=Math.min(n.length,a.length);return e._length=i,i}(0,e,h)){if(h(\"text\"),h(\"texttemplate\"),h(\"hovertext\"),h(\"hovertemplate\"),h(\"mode\"),h(\"below\"),a.hasLines(e)&&(o(t,e,r,u,h,{noDash:!0}),h(\"connectgaps\")),a.hasMarkers(e)){i(t,e,r,u,h,{noLine:!0}),h(\"marker.allowoverlap\"),h(\"marker.angle\");var f=e.marker;\"circle\"!==f.symbol&&(n.isArrayOrTypedArray(f.size)&&(f.size=f.size[0]),n.isArrayOrTypedArray(f.color)&&(f.color=f.color[0]))}a.hasText(e)&&s(t,e,u,h,{noSelect:!0}),h(\"fill\"),\"none\"!==e.fill&&l(t,e,r,h),n.coerceSelectionMarkerOpacity(e,h)}else e.visible=!1}},{\"../../lib\":749,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"./attributes\":1221}],1224:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t}},{}],1225:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\");e.exports=function(t,e,r){var a={},i=r[e.subplot]._subplot.mockAxis,o=t.lonlat;return a.lonLabel=n.tickText(i,i.c2l(o[0]),!0).text,a.latLabel=n.tickText(i,i.c2l(o[1]),!0).text,a}},{\"../../plots/cartesian/axes\":798}],1226:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../lib\"),i=t(\"../scatter/get_trace_color\"),o=a.fillText,s=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e,r){var l=t.cd,c=l[0].trace,u=t.xa,h=t.ya,f=t.subplot,p=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),d=e-p;if(n.getClosest(l,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;var n=a.modHalf(e[0],360),i=e[1],o=f.project([n,i]),l=o.x-u.c2p([d,i]),c=o.y-h.c2p([n,r]),p=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-p,1-3/p)}),t),!1!==t.index){var g=l[t.index],m=g.lonlat,v=[a.modHalf(m[0],360)+p,m[1]],y=u.c2p(v),x=h.c2p(v),b=g.mrc||1;t.x0=y-b,t.x1=y+b,t.y0=x-b,t.y1=x+b;var _={};_[c.subplot]={_subplot:f};var w=c._module.formatLabels(g,c,_);return t.lonLabel=w.lonLabel,t.latLabel=w.latLabel,t.color=i(c,g),t.extraText=function(t,e,r){if(t.hovertemplate)return;var n=(e.hi||t.hoverinfo).split(\"+\"),a=-1!==n.indexOf(\"all\"),i=-1!==n.indexOf(\"lon\"),s=-1!==n.indexOf(\"lat\"),l=e.lonlat,c=[];function u(t){return t+\"\\xb0\"}a||i&&s?c.push(\"(\"+u(l[0])+\", \"+u(l[1])+\")\"):i?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1]));(a||-1!==n.indexOf(\"text\"))&&o(e,t,c);return c.join(\"<br>\")}(c,g,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},{\"../../components/fx\":655,\"../../constants/numerical\":724,\"../../lib\":749,\"../scatter/get_trace_color\":1166}],1227:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"../scattergeo/calc\"),plot:t(\"./plot\"),hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:\"trace\",name:\"scattermapbox\",basePlotModule:t(\"../../plots/mapbox\"),categories:[\"mapbox\",\"gl\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../plots/mapbox\":855,\"../scatter/marker_colorbar\":1174,\"../scattergeo/calc\":1199,\"./attributes\":1221,\"./defaults\":1223,\"./event_data\":1224,\"./format_labels\":1225,\"./hover\":1226,\"./plot\":1228,\"./select\":1229}],1228:[function(t,e,r){\"use strict\";var n=t(\"./convert\"),a=t(\"../../plots/mapbox/constants\").traceLayerPrefix,i=[\"fill\",\"line\",\"circle\",\"symbol\"];function o(t,e){this.type=\"scattermapbox\",this.subplot=t,this.uid=e,this.sourceIds={fill:\"source-\"+e+\"-fill\",line:\"source-\"+e+\"-line\",circle:\"source-\"+e+\"-circle\",symbol:\"source-\"+e+\"-symbol\"},this.layerIds={fill:a+e+\"-fill\",line:a+e+\"-line\",circle:a+e+\"-circle\",symbol:a+e+\"-symbol\"},this.below=null}var s=o.prototype;s.addSource=function(t,e){this.subplot.map.addSource(this.sourceIds[t],{type:\"geojson\",data:e.geojson})},s.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},s.addLayer=function(t,e,r){this.subplot.addLayer({type:t,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint},r)},s.update=function(t){var e,r,a,o=this.subplot,s=o.map,l=n(o.gd,t),c=o.belowLookup[\"trace-\"+this.uid];if(c!==this.below){for(e=i.length-1;e>=0;e--)r=i[e],s.removeLayer(this.layerIds[r]);for(e=0;e<i.length;e++)a=l[r=i[e]],this.addLayer(r,a,c);this.below=c}for(e=0;e<i.length;e++)a=l[r=i[e]],o.setOptions(this.layerIds[r],\"setLayoutProperty\",a.layout),\"visible\"===a.layout.visibility&&(this.setSourceData(r,a),o.setOptions(this.layerIds[r],\"setPaintProperty\",a.paint));t[0].trace._glTrace=this},s.dispose=function(){for(var t=this.subplot.map,e=i.length-1;e>=0;e--){var r=i[e];t.removeLayer(this.layerIds[r]),t.removeSource(this.sourceIds[r])}},e.exports=function(t,e){for(var r=e[0].trace,a=new o(t,r.uid),s=n(t.gd,e),l=a.below=t.belowLookup[\"trace-\"+r.uid],c=0;c<i.length;c++){var u=i[c],h=s[u];a.addSource(u,h),a.addLayer(u,h,l)}return e[0].trace._glTrace=a,a}},{\"../../plots/mapbox/constants\":853,\"./convert\":1222}],1229:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/subtypes\"),i=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e){var r,o=t.cd,s=t.xaxis,l=t.yaxis,c=[],u=o[0].trace;if(!a.hasMarkers(u))return[];if(!1===e)for(r=0;r<o.length;r++)o[r].selected=0;else for(r=0;r<o.length;r++){var h=o[r],f=h.lonlat;if(f[0]!==i){var p=[n.modHalf(f[0],360),f[1]],d=[s.c2p(p),l.c2p(p)];e.contains(d,null,r,t)?(c.push({pointNumber:r,lon:f[0],lat:f[1]}),h.selected=1):h.selected=0}}return c}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../scatter/subtypes\":1181}],1230:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../plots/template_attributes\").texttemplateAttrs,i=t(\"../../lib/extend\").extendFlat,o=t(\"../scatter/attributes\"),s=t(\"../../plots/attributes\"),l=o.line;e.exports={mode:o.mode,r:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},theta:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},r0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},dr:{valType:\"number\",dflt:1,editType:\"calc\"},theta0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},dtheta:{valType:\"number\",editType:\"calc\"},thetaunit:{valType:\"enumerated\",values:[\"radians\",\"degrees\",\"gradians\"],dflt:\"degrees\",editType:\"calc+clearAxisTypes\"},text:o.text,texttemplate:a({editType:\"plot\"},{keys:[\"r\",\"theta\",\"text\"]}),hovertext:o.hovertext,line:{color:l.color,width:l.width,dash:l.dash,shape:i({},l.shape,{values:[\"linear\",\"spline\"]}),smoothing:l.smoothing,editType:\"calc\"},connectgaps:o.connectgaps,marker:o.marker,cliponaxis:i({},o.cliponaxis,{dflt:!1}),textposition:o.textposition,textfont:o.textfont,fill:i({},o.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:o.fillcolor,hoverinfo:i({},s.hoverinfo,{flags:[\"r\",\"theta\",\"text\",\"name\"]}),hoveron:o.hoveron,hovertemplate:n(),selected:o.selected,unselected:o.unselected}},{\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156}],1231:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../constants/numerical\").BADNUM,i=t(\"../../plots/cartesian/axes\"),o=t(\"../scatter/colorscale_calc\"),s=t(\"../scatter/arrays_to_calcdata\"),l=t(\"../scatter/calc_selection\"),c=t(\"../scatter/calc\").calcMarkerSize;e.exports=function(t,e){for(var r=t._fullLayout,u=e.subplot,h=r[u].radialaxis,f=r[u].angularaxis,p=h.makeCalcdata(e,\"r\"),d=f.makeCalcdata(e,\"theta\"),g=e._length,m=new Array(g),v=0;v<g;v++){var y=p[v],x=d[v],b=m[v]={};n(y)&&n(x)?(b.r=y,b.theta=x):b.r=a}var _=c(e,g);return e._extremes.x=i.findExtremes(h,p,{ppad:_}),o(t,e),s(m,e),l(m,e),m}},{\"../../constants/numerical\":724,\"../../plots/cartesian/axes\":798,\"../scatter/arrays_to_calcdata\":1155,\"../scatter/calc\":1157,\"../scatter/calc_selection\":1158,\"../scatter/colorscale_calc\":1159,\"fast-isnumeric\":241}],1232:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/subtypes\"),i=t(\"../scatter/marker_defaults\"),o=t(\"../scatter/line_defaults\"),s=t(\"../scatter/line_shape_defaults\"),l=t(\"../scatter/text_defaults\"),c=t(\"../scatter/fillcolor_defaults\"),u=t(\"../scatter/constants\").PTS_LINESONLY,h=t(\"./attributes\");function f(t,e,r,n){var a,i=n(\"r\"),o=n(\"theta\");if(i)o?a=Math.min(i.length,o.length):(a=i.length,n(\"theta0\"),n(\"dtheta\"));else{if(!o)return 0;a=e.theta.length,n(\"r0\"),n(\"dr\")}return e._length=a,a}e.exports={handleRThetaDefaults:f,supplyDefaults:function(t,e,r,p){function d(r,a){return n.coerce(t,e,h,r,a)}var g=f(t,e,p,d);if(g){d(\"thetaunit\"),d(\"mode\",g<u?\"lines+markers\":\"lines\"),d(\"text\"),d(\"hovertext\"),\"fills\"!==e.hoveron&&d(\"hovertemplate\"),a.hasLines(e)&&(o(t,e,r,p,d),s(t,e,d),d(\"connectgaps\")),a.hasMarkers(e)&&i(t,e,r,p,d,{gradient:!0}),a.hasText(e)&&(d(\"texttemplate\"),l(t,e,p,d));var m=[];(a.hasMarkers(e)||a.hasText(e))&&(d(\"cliponaxis\"),d(\"marker.maxdisplayed\"),m.push(\"points\")),d(\"fill\"),\"none\"!==e.fill&&(c(t,e,r,d),a.hasLines(e)||s(t,e,d)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||m.push(\"fills\"),d(\"hoveron\",m.join(\"+\")||\"points\"),n.coerceSelectionMarkerOpacity(e,d)}else e.visible=!1}}},{\"../../lib\":749,\"../scatter/constants\":1160,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/line_shape_defaults\":1171,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"./attributes\":1230}],1233:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\");e.exports=function(t,e,r){var i,o,s={},l=r[e.subplot]._subplot;l?(i=l.radialAxis,o=l.angularAxis):(i=(l=r[e.subplot]).radialaxis,o=l.angularaxis);var c=i.c2l(t.r);s.rLabel=a.tickText(i,c,!0).text;var u=\"degrees\"===o.thetaunit?n.rad2deg(t.theta):t.theta;return s.thetaLabel=a.tickText(o,u,!0).text,s}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798}],1234:[function(t,e,r){\"use strict\";var n=t(\"../scatter/hover\");function a(t,e,r,n){var a=r.radialAxis,i=r.angularAxis;a._hovertitle=\"r\",i._hovertitle=\"\\u03b8\";var o={};o[e.subplot]={_subplot:r};var s=e._module.formatLabels(t,e,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=t.hi||e.hoverinfo,c=[];function u(t,e){c.push(t._hovertitle+\": \"+e)}if(!e.hovertemplate){var h=l.split(\"+\");-1!==h.indexOf(\"all\")&&(h=[\"r\",\"theta\",\"text\"]),-1!==h.indexOf(\"r\")&&u(a,n.rLabel),-1!==h.indexOf(\"theta\")&&u(i,n.thetaLabel),-1!==h.indexOf(\"text\")&&n.text&&(c.push(n.text),delete n.text),n.extraText=c.join(\"<br>\")}}e.exports={hoverPoints:function(t,e,r,i){var o=n(t,e,r,i);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,a(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:a}},{\"../scatter/hover\":1167}],1235:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"scatterpolar\",basePlotModule:t(\"../../plots/polar\"),categories:[\"polar\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../scatter/style\").style,styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\").hoverPoints,selectPoints:t(\"../scatter/select\"),meta:{}}},{\"../../plots/polar\":864,\"../scatter/marker_colorbar\":1174,\"../scatter/select\":1178,\"../scatter/style\":1180,\"./attributes\":1230,\"./calc\":1231,\"./defaults\":1232,\"./format_labels\":1233,\"./hover\":1234,\"./plot\":1236}],1236:[function(t,e,r){\"use strict\";var n=t(\"../scatter/plot\"),a=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e,r){for(var i=e.layers.frontplot.select(\"g.scatterlayer\"),o={xaxis:e.xaxis,yaxis:e.yaxis,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},s=e.radialAxis,l=e.angularAxis,c=0;c<r.length;c++)for(var u=r[c],h=0;h<u.length;h++){var f=u[h],p=f.r;if(p===a)f.x=f.y=a;else{var d=s.c2g(p),g=l.c2g(f.theta);f.x=d*Math.cos(g),f.y=d*Math.sin(g)}}n(t,o,r,i)}},{\"../../constants/numerical\":724,\"../scatter/plot\":1177}],1237:[function(t,e,r){\"use strict\";var n=t(\"../scatterpolar/attributes\"),a=t(\"../scattergl/attributes\"),i=t(\"../../plots/template_attributes\").texttemplateAttrs;e.exports={mode:n.mode,r:n.r,theta:n.theta,r0:n.r0,dr:n.dr,theta0:n.theta0,dtheta:n.dtheta,thetaunit:n.thetaunit,text:n.text,texttemplate:i({editType:\"plot\"},{keys:[\"r\",\"theta\",\"text\"]}),hovertext:n.hovertext,hovertemplate:n.hovertemplate,line:a.line,connectgaps:a.connectgaps,marker:a.marker,fill:a.fill,fillcolor:a.fillcolor,textposition:a.textposition,textfont:a.textfont,hoverinfo:n.hoverinfo,selected:n.selected,unselected:n.unselected}},{\"../../plots/template_attributes\":876,\"../scattergl/attributes\":1208,\"../scatterpolar/attributes\":1230}],1238:[function(t,e,r){\"use strict\";var n=t(\"../scatter/colorscale_calc\"),a=t(\"../scatter/calc\").calcMarkerSize,i=t(\"../scattergl/convert\"),o=t(\"../../plots/cartesian/axes\"),s=t(\"../scattergl/constants\").TOO_MANY_POINTS;e.exports=function(t,e){var r=t._fullLayout,l=e.subplot,c=r[l].radialaxis,u=r[l].angularaxis,h=e._r=c.makeCalcdata(e,\"r\"),f=e._theta=u.makeCalcdata(e,\"theta\"),p=e._length,d={};p<h.length&&(h=h.slice(0,p)),p<f.length&&(f=f.slice(0,p)),d.r=h,d.theta=f,n(t,e);var g,m=d.opts=i.style(t,e);return p<s?g=a(e,p):m.marker&&(g=2*(m.marker.sizeAvg||Math.max(m.marker.size,3))),e._extremes.x=o.findExtremes(c,h,{ppad:g}),[{x:!1,y:!1,t:d,trace:e}]}},{\"../../plots/cartesian/axes\":798,\"../scatter/calc\":1157,\"../scatter/colorscale_calc\":1159,\"../scattergl/constants\":1210,\"../scattergl/convert\":1211}],1239:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/subtypes\"),i=t(\"../scatterpolar/defaults\").handleRThetaDefaults,o=t(\"../scatter/marker_defaults\"),s=t(\"../scatter/line_defaults\"),l=t(\"../scatter/text_defaults\"),c=t(\"../scatter/fillcolor_defaults\"),u=t(\"../scatter/constants\").PTS_LINESONLY,h=t(\"./attributes\");e.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,h,r,a)}var d=i(t,e,f,p);d?(p(\"thetaunit\"),p(\"mode\",d<u?\"lines+markers\":\"lines\"),p(\"text\"),p(\"hovertext\"),\"fills\"!==e.hoveron&&p(\"hovertemplate\"),a.hasLines(e)&&(s(t,e,r,f,p),p(\"connectgaps\")),a.hasMarkers(e)&&o(t,e,r,f,p),a.hasText(e)&&(p(\"texttemplate\"),l(t,e,f,p)),p(\"fill\"),\"none\"!==e.fill&&c(t,e,r,p),n.coerceSelectionMarkerOpacity(e,p)):e.visible=!1}},{\"../../lib\":749,\"../scatter/constants\":1160,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"../scatterpolar/defaults\":1232,\"./attributes\":1237}],1240:[function(t,e,r){\"use strict\";var n=t(\"../scatterpolar/format_labels\");e.exports=function(t,e,r){var a=t.i;return\"r\"in t||(t.r=e._r[a]),\"theta\"in t||(t.theta=e._theta[a]),n(t,e,r)}},{\"../scatterpolar/format_labels\":1233}],1241:[function(t,e,r){\"use strict\";var n=t(\"../scattergl/hover\"),a=t(\"../scatterpolar/hover\").makeHoverPointText;e.exports={hoverPoints:function(t,e,r,i){var o=t.cd[0].t,s=o.r,l=o.theta,c=n.hoverPoints(t,e,r,i);if(c&&!1!==c[0].index){var u=c[0];if(void 0===u.index)return c;var h=t.subplot,f=u.cd[u.index],p=u.trace;if(f.r=s[u.index],f.theta=l[u.index],h.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,a(f,p,h,u),c}}}},{\"../scattergl/hover\":1216,\"../scatterpolar/hover\":1234}],1242:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"scatterpolargl\",basePlotModule:t(\"../../plots/polar\"),categories:[\"gl\",\"regl\",\"polar\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),hoverPoints:t(\"./hover\").hoverPoints,selectPoints:t(\"../scattergl/select\"),meta:{}}},{\"../../plots/polar\":864,\"../scatter/marker_colorbar\":1174,\"../scattergl/select\":1220,\"./attributes\":1237,\"./calc\":1238,\"./defaults\":1239,\"./format_labels\":1240,\"./hover\":1241,\"./plot\":1243}],1243:[function(t,e,r){\"use strict\";var n=t(\"@plotly/point-cluster\"),a=t(\"fast-isnumeric\"),i=t(\"../scattergl/plot\"),o=t(\"../scattergl/scene_update\"),s=t(\"../scattergl/convert\"),l=t(\"../../lib\"),c=t(\"../scattergl/constants\").TOO_MANY_POINTS;e.exports=function(t,e,r){if(r.length){var u=e.radialAxis,h=e.angularAxis,f=o(t,e);return r.forEach((function(r){if(r&&r[0]&&r[0].trace){var i,o=r[0],p=o.trace,d=o.t,g=p._length,m=d.r,v=d.theta,y=d.opts,x=m.slice(),b=v.slice();for(i=0;i<m.length;i++)e.isPtInside({r:m[i],theta:v[i]})||(x[i]=NaN,b[i]=NaN);var _=new Array(2*g),w=Array(g),T=Array(g);for(i=0;i<g;i++){var k,M,A=x[i];if(a(A)){var S=u.c2g(A),E=h.c2g(b[i],p.thetaunit);k=S*Math.cos(E),M=S*Math.sin(E)}else k=M=NaN;w[i]=_[2*i]=k,T[i]=_[2*i+1]=M}d.tree=n(_),y.marker&&g>=c&&(y.marker.cluster=d.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=_),y.line&&_.length>1&&l.extendFlat(y.line,s.linePositions(t,p,_)),y.text&&(l.extendFlat(y.text,{positions:_},s.textPosition(t,p,y.text,y.marker)),l.extendFlat(y.textSel,{positions:_},s.textPosition(t,p,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:_},s.textPosition(t,p,y.text,y.markerUnsel))),y.fill&&!f.fill2d&&(f.fill2d=!0),y.marker&&!f.scatter2d&&(f.scatter2d=!0),y.line&&!f.line2d&&(f.line2d=!0),y.text&&!f.glText&&(f.glText=!0),f.lineOptions.push(y.line),f.fillOptions.push(y.fill),f.markerOptions.push(y.marker),f.markerSelectedOptions.push(y.markerSel),f.markerUnselectedOptions.push(y.markerUnsel),f.textOptions.push(y.text),f.textSelectedOptions.push(y.textSel),f.textUnselectedOptions.push(y.textUnsel),f.selectBatch.push([]),f.unselectBatch.push([]),d.x=w,d.y=T,d.rawx=w,d.rawy=T,d.r=m,d.theta=v,d.positions=_,d._scene=f,d.index=f.count,f.count++}})),i(t,e,r)}}},{\"../../lib\":749,\"../scattergl/constants\":1210,\"../scattergl/convert\":1211,\"../scattergl/plot\":1218,\"../scattergl/scene_update\":1219,\"@plotly/point-cluster\":57,\"fast-isnumeric\":241}],1244:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../plots/template_attributes\").texttemplateAttrs,i=t(\"../scatter/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../components/colorscale/attributes\"),l=t(\"../../components/drawing/attributes\").dash,c=t(\"../../lib/extend\").extendFlat,u=i.marker,h=i.line,f=u.line;e.exports={a:{valType:\"data_array\",editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},c:{valType:\"data_array\",editType:\"calc\"},sum:{valType:\"number\",dflt:0,min:0,editType:\"calc\"},mode:c({},i.mode,{dflt:\"markers\"}),text:c({},i.text,{}),texttemplate:a({editType:\"plot\"},{keys:[\"a\",\"b\",\"c\",\"text\"]}),hovertext:c({},i.hovertext,{}),line:{color:h.color,width:h.width,dash:l,shape:c({},h.shape,{values:[\"linear\",\"spline\"]}),smoothing:h.smoothing,editType:\"calc\"},connectgaps:i.connectgaps,cliponaxis:i.cliponaxis,fill:c({},i.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:i.fillcolor,marker:c({symbol:u.symbol,opacity:u.opacity,maxdisplayed:u.maxdisplayed,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,line:c({width:f.width,editType:\"calc\"},s(\"marker.line\")),gradient:u.gradient,editType:\"calc\"},s(\"marker\")),textfont:i.textfont,textposition:i.textposition,selected:i.selected,unselected:i.unselected,hoverinfo:c({},o.hoverinfo,{flags:[\"a\",\"b\",\"c\",\"text\",\"name\"]}),hoveron:i.hoveron,hovertemplate:n()}},{\"../../components/colorscale/attributes\":622,\"../../components/drawing/attributes\":636,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156}],1245:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../scatter/colorscale_calc\"),i=t(\"../scatter/arrays_to_calcdata\"),o=t(\"../scatter/calc_selection\"),s=t(\"../scatter/calc\").calcMarkerSize,l=[\"a\",\"b\",\"c\"],c={a:[\"b\",\"c\"],b:[\"a\",\"c\"],c:[\"a\",\"b\"]};e.exports=function(t,e){var r,u,h,f,p,d,g=t._fullLayout[e.subplot].sum,m=e.sum||g,v={a:e.a,b:e.b,c:e.c};for(r=0;r<l.length;r++)if(!v[h=l[r]]){for(p=v[c[h][0]],d=v[c[h][1]],f=new Array(p.length),u=0;u<p.length;u++)f[u]=m-p[u]-d[u];v[h]=f}var y,x,b,_,w,T,k=e._length,M=new Array(k);for(r=0;r<k;r++)y=v.a[r],x=v.b[r],b=v.c[r],n(y)&&n(x)&&n(b)?(1!==(_=g/((y=+y)+(x=+x)+(b=+b)))&&(y*=_,x*=_,b*=_),T=y,w=b-x,M[r]={x:w,y:T,a:y,b:x,c:b}):M[r]={x:!1,y:!1};return s(e,k),a(t,e),i(M,e),o(M,e),M}},{\"../scatter/arrays_to_calcdata\":1155,\"../scatter/calc\":1157,\"../scatter/calc_selection\":1158,\"../scatter/colorscale_calc\":1159,\"fast-isnumeric\":241}],1246:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/constants\"),i=t(\"../scatter/subtypes\"),o=t(\"../scatter/marker_defaults\"),s=t(\"../scatter/line_defaults\"),l=t(\"../scatter/line_shape_defaults\"),c=t(\"../scatter/text_defaults\"),u=t(\"../scatter/fillcolor_defaults\"),h=t(\"./attributes\");e.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,h,r,a)}var d,g=p(\"a\"),m=p(\"b\"),v=p(\"c\");if(g?(d=g.length,m?(d=Math.min(d,m.length),v&&(d=Math.min(d,v.length))):d=v?Math.min(d,v.length):0):m&&v&&(d=Math.min(m.length,v.length)),d){e._length=d,p(\"sum\"),p(\"text\"),p(\"hovertext\"),\"fills\"!==e.hoveron&&p(\"hovertemplate\"),p(\"mode\",d<a.PTS_LINESONLY?\"lines+markers\":\"lines\"),i.hasLines(e)&&(s(t,e,r,f,p),l(t,e,p),p(\"connectgaps\")),i.hasMarkers(e)&&o(t,e,r,f,p,{gradient:!0}),i.hasText(e)&&(p(\"texttemplate\"),c(t,e,f,p));var y=[];(i.hasMarkers(e)||i.hasText(e))&&(p(\"cliponaxis\"),p(\"marker.maxdisplayed\"),y.push(\"points\")),p(\"fill\"),\"none\"!==e.fill&&(u(t,e,r,p),i.hasLines(e)||l(t,e,p)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||y.push(\"fills\"),p(\"hoveron\",y.join(\"+\")||\"points\"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},{\"../../lib\":749,\"../scatter/constants\":1160,\"../scatter/fillcolor_defaults\":1164,\"../scatter/line_defaults\":1169,\"../scatter/line_shape_defaults\":1171,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scatter/text_defaults\":1182,\"./attributes\":1244}],1247:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n,a){if(e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),n[a]){var i=n[a];t.a=i.a,t.b=i.b,t.c=i.c}else t.a=e.a,t.b=e.b,t.c=e.c;return t}},{}],1248:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\");e.exports=function(t,e,r){var a={},i=r[e.subplot]._subplot;return a.aLabel=n.tickText(i.aaxis,t.a,!0).text,a.bLabel=n.tickText(i.baxis,t.b,!0).text,a.cLabel=n.tickText(i.caxis,t.c,!0).text,a}},{\"../../plots/cartesian/axes\":798}],1249:[function(t,e,r){\"use strict\";var n=t(\"../scatter/hover\");e.exports=function(t,e,r,a){var i=n(t,e,r,a);if(i&&!1!==i[0].index){var o=i[0];if(void 0===o.index){var s=1-o.y0/t.ya._length,l=t.xa._length,c=l*s/2,u=l-c;return o.x0=Math.max(Math.min(o.x0,u),c),o.x1=Math.max(Math.min(o.x1,u),c),i}var h=o.cd[o.index],f=o.trace,p=o.subplot;o.a=h.a,o.b=h.b,o.c=h.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var d={};d[f.subplot]={_subplot:p};var g=f._module.formatLabels(h,f,d);o.aLabel=g.aLabel,o.bLabel=g.bLabel,o.cLabel=g.cLabel;var m=h.hi||f.hoverinfo,v=[];if(!f.hovertemplate){var y=m.split(\"+\");-1!==y.indexOf(\"all\")&&(y=[\"a\",\"b\",\"c\"]),-1!==y.indexOf(\"a\")&&x(p.aaxis,o.aLabel),-1!==y.indexOf(\"b\")&&x(p.baxis,o.bLabel),-1!==y.indexOf(\"c\")&&x(p.caxis,o.cLabel)}return o.extraText=v.join(\"<br>\"),o.hovertemplate=f.hovertemplate,i}function x(t,e){v.push(t._hovertitle+\": \"+e)}}},{\"../scatter/hover\":1167}],1250:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../scatter/style\").style,styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../scatter/select\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"scatterternary\",basePlotModule:t(\"../../plots/ternary\"),categories:[\"ternary\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../plots/ternary\":877,\"../scatter/marker_colorbar\":1174,\"../scatter/select\":1178,\"../scatter/style\":1180,\"./attributes\":1244,\"./calc\":1245,\"./defaults\":1246,\"./event_data\":1247,\"./format_labels\":1248,\"./hover\":1249,\"./plot\":1251}],1251:[function(t,e,r){\"use strict\";var n=t(\"../scatter/plot\");e.exports=function(t,e,r){var a=e.plotContainer;a.select(\".scatterlayer\").selectAll(\"*\").remove();var i={xaxis:e.xaxis,yaxis:e.yaxis,plot:a,layerClipId:e._hasClipOnAxisFalse?e.clipIdRelative:null},o=e.layers.frontplot.select(\"g.scatterlayer\");n(t,i,r,o)}},{\"../scatter/plot\":1177}],1252:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../scattergl/attributes\"),s=t(\"../../plots/cartesian/constants\").idRegex,l=t(\"../../plot_api/plot_template\").templatedArray,c=t(\"../../lib/extend\").extendFlat,u=n.marker,h=u.line,f=c(a(\"marker.line\",{editTypeOverride:\"calc\"}),{width:c({},h.width,{editType:\"calc\"}),editType:\"calc\"}),p=c(a(\"marker\"),{symbol:u.symbol,size:c({},u.size,{editType:\"markerSize\"}),sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,opacity:u.opacity,colorbar:u.colorbar,line:f,editType:\"calc\"});function d(t){return{valType:\"info_array\",freeLength:!0,editType:\"calc\",items:{valType:\"subplotid\",regex:s[t],editType:\"plot\"}}}p.color.editType=p.cmin.editType=p.cmax.editType=\"style\",e.exports={dimensions:l(\"dimension\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},label:{valType:\"string\",editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},axis:{type:{valType:\"enumerated\",values:[\"linear\",\"log\",\"date\",\"category\"],editType:\"calc+clearAxisTypes\"},matches:{valType:\"boolean\",dflt:!1,editType:\"calc\"},editType:\"calc+clearAxisTypes\"},editType:\"calc+clearAxisTypes\"}),text:c({},o.text,{}),hovertext:c({},o.hovertext,{}),hovertemplate:i(),marker:p,xaxes:d(\"x\"),yaxes:d(\"y\"),diagonal:{visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"},showupperhalf:{valType:\"boolean\",dflt:!0,editType:\"calc\"},showlowerhalf:{valType:\"boolean\",dflt:!0,editType:\"calc\"},selected:{marker:o.selected.marker,editType:\"calc\"},unselected:{marker:o.unselected.marker,editType:\"calc\"},opacity:o.opacity}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/plot_template\":787,\"../../plots/cartesian/constants\":804,\"../../plots/template_attributes\":876,\"../scatter/attributes\":1156,\"../scattergl/attributes\":1208}],1253:[function(t,e,r){\"use strict\";var n=t(\"regl-line2d\"),a=t(\"../../registry\"),i=t(\"../../lib/prepare_regl\"),o=t(\"../../plots/get_data\").getModuleCalcData,s=t(\"../../plots/cartesian\"),l=t(\"../../plots/cartesian/axis_ids\").getFromId,c=t(\"../../plots/cartesian/axes\").shouldShowZeroLine;function u(t,e,r){for(var n=r.matrixOptions.data.length,a=e._visibleDims,i=r.viewOpts.ranges=new Array(n),o=0;o<a.length;o++){var s=a[o],c=i[o]=new Array(4),u=l(t,e._diag[s][0]);u&&(c[0]=u.r2l(u.range[0]),c[2]=u.r2l(u.range[1]));var h=l(t,e._diag[s][1]);h&&(c[1]=h.r2l(h.range[0]),c[3]=h.r2l(h.range[1]))}r.selectBatch.length||r.unselectBatch.length?r.matrix.update({ranges:i},{ranges:i}):r.matrix.update({ranges:i})}function h(t){var e=t._fullLayout,r=e._glcanvas.data()[0].regl,a=e._splomGrid;a||(a=e._splomGrid=n(r)),a.update(function(t){var e,r=t._fullLayout,n=r._size,a=[0,0,r.width,r.height],i={};function o(t,e,r,n,o,s){var l=e[t+\"color\"],c=e[t+\"width\"],u=String(l+c);u in i?i[u].data.push(NaN,NaN,r,n,o,s):i[u]={data:[r,n,o,s],join:\"rect\",thickness:c,color:l,viewport:a,range:a,overlay:!1}}for(e in r._splomSubplots){var s,l,u=r._plots[e],h=u.xaxis,f=u.yaxis,p=h._gridVals,d=f._gridVals,g=n.b+f.domain[0]*n.h,m=-f._m,v=-m*f.r2l(f.range[0],f.calendar);if(h.showgrid)for(e=0;e<p.length;e++)s=h._offset+h.l2p(p[e].x),o(\"grid\",h,s,g,s,g+f._length);if(f.showgrid)for(e=0;e<d.length;e++)l=g+v+m*d[e].x,o(\"grid\",f,h._offset,l,h._offset+h._length,l);c(t,h,f)&&(s=h._offset+h.l2p(0),o(\"zeroline\",h,s,g,s,g+f._length)),c(t,f,h)&&(l=g+v+0,o(\"zeroline\",f,h._offset,l,h._offset+h._length,l))}var y=[];for(e in i)y.push(i[e]);return y}(t))}e.exports={name:\"splom\",attr:s.attr,attrRegex:s.attrRegex,layoutAttributes:s.layoutAttributes,supplyLayoutDefaults:s.supplyLayoutDefaults,drawFramework:s.drawFramework,plot:function(t){var e=t._fullLayout,r=a.getModule(\"splom\"),n=o(t.calcdata,r)[0];i(t,[\"ANGLE_instanced_arrays\",\"OES_element_index_uint\"])&&(e._hasOnlyLargeSploms&&h(t),r.plot(t,{},n))},drag:function(t){var e=t.calcdata,r=t._fullLayout;r._hasOnlyLargeSploms&&h(t);for(var n=0;n<e.length;n++){var a=e[n][0].trace,i=r._splomScenes[a.uid];\"splom\"===a.type&&i&&i.matrix&&u(t,a,i)}},updateGrid:h,clean:function(t,e,r,n){var a,i={};if(n._splomScenes){for(a=0;a<t.length;a++){var o=t[a];\"splom\"===o.type&&(i[o.uid]=1)}for(a=0;a<r.length;a++){var l=r[a];if(!i[l.uid]){var c=n._splomScenes[l.uid];c&&c.destroy&&c.destroy(),n._splomScenes[l.uid]=null,delete n._splomScenes[l.uid]}}}0===Object.keys(n._splomScenes||{}).length&&delete n._splomScenes,n._splomGrid&&!e._hasOnlyLargeSploms&&n._hasOnlyLargeSploms&&(n._splomGrid.destroy(),n._splomGrid=null,delete n._splomGrid),s.clean(t,e,r,n)},updateFx:s.updateFx,toSVG:s.toSVG}},{\"../../lib/prepare_regl\":762,\"../../plots/cartesian\":811,\"../../plots/cartesian/axes\":798,\"../../plots/cartesian/axis_ids\":801,\"../../plots/get_data\":835,\"../../registry\":881,\"regl-line2d\":509}],1254:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axis_ids\"),i=t(\"../scatter/calc\").calcMarkerSize,o=t(\"../scatter/calc\").calcAxisExpansion,s=t(\"../scatter/colorscale_calc\"),l=t(\"../scattergl/convert\").markerSelection,c=t(\"../scattergl/convert\").markerStyle,u=t(\"./scene_update\"),h=t(\"../../constants/numerical\").BADNUM,f=t(\"../scattergl/constants\").TOO_MANY_POINTS;e.exports=function(t,e){var r,p,d,g,m,v,y=e.dimensions,x=e._length,b={},_=b.cdata=[],w=b.data=[],T=e._visibleDims=[];function k(t,r){for(var a=t.makeCalcdata({v:r.values,vcalendar:e.calendar},\"v\"),i=0;i<a.length;i++)a[i]=a[i]===h?NaN:a[i];_.push(a),w.push(\"log\"===t.type?n.simpleMap(a,t.c2l):a)}for(r=0;r<y.length;r++)if((d=y[r]).visible){if(g=a.getFromId(t,e._diag[r][0]),m=a.getFromId(t,e._diag[r][1]),g&&m&&g.type!==m.type){n.log(\"Skipping splom dimension \"+r+\" with conflicting axis types\");continue}g?(k(g,d),m&&\"category\"===m.type&&(m._categories=g._categories.slice())):k(m,d),T.push(r)}for(s(t,e),n.extendFlat(b,c(e)),v=_.length*x>f?2*(b.sizeAvg||Math.max(b.size,3)):i(e,x),p=0;p<T.length;p++)d=y[r=T[p]],g=a.getFromId(t,e._diag[r][0])||{},m=a.getFromId(t,e._diag[r][1])||{},o(t,e,g,m,_[p],_[p],v);var M=u(t,e);return M.matrix||(M.matrix=!0),M.matrixOptions=b,M.selectedOptions=l(e,e.selected),M.unselectedOptions=l(e,e.unselected),[{x:!1,y:!1,t:{},trace:e}]}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/axis_ids\":801,\"../scatter/calc\":1157,\"../scatter/colorscale_calc\":1159,\"../scattergl/constants\":1210,\"../scattergl/convert\":1211,\"./scene_update\":1261}],1255:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/array_container_defaults\"),i=t(\"./attributes\"),o=t(\"../scatter/subtypes\"),s=t(\"../scatter/marker_defaults\"),l=t(\"../parcoords/merge_length\"),c=t(\"../scattergl/helpers\").isOpenSymbol;function u(t,e){function r(r,a){return n.coerce(t,e,i.dimensions,r,a)}r(\"label\");var a=r(\"values\");a&&a.length?r(\"visible\"):e.visible=!1,r(\"axis.type\"),r(\"axis.matches\")}e.exports=function(t,e,r,h){function f(r,a){return n.coerce(t,e,i,r,a)}var p=a(t,e,{name:\"dimensions\",handleItemDefaults:u}),d=f(\"diagonal.visible\"),g=f(\"showupperhalf\"),m=f(\"showlowerhalf\");if(l(e,p,\"values\")&&(d||g||m)){f(\"text\"),f(\"hovertext\"),f(\"hovertemplate\"),s(t,e,r,h,f);var v=c(e.marker.symbol),y=o.isBubble(e);f(\"marker.line.width\",v||y?1:0),function(t,e,r,n){var a,i,o=e.dimensions,s=o.length,l=e.showupperhalf,c=e.showlowerhalf,u=e.diagonal.visible,h=new Array(s),f=new Array(s);for(a=0;a<s;a++){var p=a?a+1:\"\";h[a]=\"x\"+p,f[a]=\"y\"+p}var d=n(\"xaxes\",h),g=n(\"yaxes\",f),m=e._diag=new Array(s);e._xaxes={},e._yaxes={};var v=[],y=[];function x(t,n,a,i){if(t){var o=t.charAt(0),s=r._splomAxes[o];if(e[\"_\"+o+\"axes\"][t]=1,i.push(t),!(t in s)){var l=s[t]={};a&&(l.label=a.label||\"\",a.visible&&a.axis&&(a.axis.type&&(l.type=a.axis.type),a.axis.matches&&(l.matches=n)))}}}var b=!u&&!c,_=!u&&!l;for(e._axesDim={},a=0;a<s;a++){var w=o[a],T=0===a,k=a===s-1,M=T&&b||k&&_?void 0:d[a],A=T&&_||k&&b?void 0:g[a];x(M,A,w,v),x(A,M,w,y),m[a]=[M,A],e._axesDim[M]=a,e._axesDim[A]=a}for(a=0;a<v.length;a++)for(i=0;i<y.length;i++){var S=v[a]+y[i];a>i&&l||a<i&&c?r._splomSubplots[S]=1:a!==i||!u&&c&&l||(r._splomSubplots[S]=1)}(!c||!u&&l&&c)&&(r._splomGridDflt.xside=\"bottom\",r._splomGridDflt.yside=\"left\")}(0,e,h,f),n.coerceSelectionMarkerOpacity(e,f)}else e.visible=!1}},{\"../../lib\":749,\"../../plots/array_container_defaults\":793,\"../parcoords/merge_length\":1127,\"../scatter/marker_defaults\":1175,\"../scatter/subtypes\":1181,\"../scattergl/helpers\":1215,\"./attributes\":1252}],1256:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/colorscale_calc\"),i=t(\"../scattergl/convert\").markerStyle;e.exports=function(t,e){var r=e.trace,o=t._fullLayout._splomScenes[r.uid];if(o){a(t,r),n.extendFlat(o.matrixOptions,i(r));var s=n.extendFlat({},o.matrixOptions,o.viewOpts);o.matrix.update(s,null)}}},{\"../../lib\":749,\"../scatter/colorscale_calc\":1159,\"../scattergl/convert\":1211}],1257:[function(t,e,r){\"use strict\";r.getDimIndex=function(t,e){for(var r=e._id,n={x:0,y:1}[r.charAt(0)],a=t._visibleDims,i=0;i<a.length;i++){var o=a[i];if(t._diag[o][n]===r)return i}return!1}},{}],1258:[function(t,e,r){\"use strict\";var n=t(\"./helpers\"),a=t(\"../scattergl/hover\").calcHover;e.exports={hoverPoints:function(t,e,r){var i=t.cd[0].trace,o=t.scene.matrixOptions.cdata,s=t.xa,l=t.ya,c=s.c2p(e),u=l.c2p(r),h=t.distance,f=n.getDimIndex(i,s),p=n.getDimIndex(i,l);if(!1===f||!1===p)return[t];for(var d,g,m=o[f],v=o[p],y=h,x=0;x<m.length;x++){var b=m[x],_=v[x],w=s.c2p(b)-c,T=l.c2p(_)-u,k=Math.sqrt(w*w+T*T);k<y&&(y=g=k,d=x)}return t.index=d,t.distance=y,t.dxy=g,void 0===d?[t]:[a(t,m,v,i)]}}},{\"../scattergl/hover\":1216,\"./helpers\":1257}],1259:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../components/grid\");e.exports={moduleType:\"trace\",name:\"splom\",basePlotModule:t(\"./base_plot\"),categories:[\"gl\",\"regl\",\"cartesian\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),calc:t(\"./calc\"),plot:t(\"./plot\"),hoverPoints:t(\"./hover\").hoverPoints,selectPoints:t(\"./select\"),editStyle:t(\"./edit_style\"),meta:{}},n.register(a)},{\"../../components/grid\":659,\"../../registry\":881,\"../scatter/marker_colorbar\":1174,\"./attributes\":1252,\"./base_plot\":1253,\"./calc\":1254,\"./defaults\":1255,\"./edit_style\":1256,\"./hover\":1258,\"./plot\":1260,\"./select\":1262}],1260:[function(t,e,r){\"use strict\";var n=t(\"regl-splom\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axis_ids\"),o=t(\"../../components/dragelement/helpers\").selectMode;function s(t,e){var r,s,l,c,u,h=t._fullLayout,f=h._size,p=e.trace,d=e.t,g=h._splomScenes[p.uid],m=g.matrixOptions,v=m.cdata,y=h._glcanvas.data()[0].regl,x=h.dragmode;if(0!==v.length){m.lower=p.showupperhalf,m.upper=p.showlowerhalf,m.diagonal=p.diagonal.visible;var b=p._visibleDims,_=v.length,w=g.viewOpts={};for(w.ranges=new Array(_),w.domains=new Array(_),u=0;u<b.length;u++){l=b[u];var T=w.ranges[u]=new Array(4),k=w.domains[u]=new Array(4);(r=i.getFromId(t,p._diag[l][0]))&&(T[0]=r._rl[0],T[2]=r._rl[1],k[0]=r.domain[0],k[2]=r.domain[1]),(s=i.getFromId(t,p._diag[l][1]))&&(T[1]=s._rl[0],T[3]=s._rl[1],k[1]=s.domain[0],k[3]=s.domain[1])}w.viewport=[f.l,f.b,f.w+f.l,f.h+f.b],!0===g.matrix&&(g.matrix=n(y));var M=h.clickmode.indexOf(\"select\")>-1,A=!0;if(o(x)||!!p.selectedpoints||M){var S=p._length;if(p.selectedpoints){g.selectBatch=p.selectedpoints;var E=p.selectedpoints,C={};for(l=0;l<E.length;l++)C[E[l]]=!0;var L=[];for(l=0;l<S;l++)C[l]||L.push(l);g.unselectBatch=L}var P=d.xpx=new Array(_),I=d.ypx=new Array(_);for(u=0;u<b.length;u++){if(l=b[u],r=i.getFromId(t,p._diag[l][0]))for(P[u]=new Array(S),c=0;c<S;c++)P[u][c]=r.c2p(v[u][c]);if(s=i.getFromId(t,p._diag[l][1]))for(I[u]=new Array(S),c=0;c<S;c++)I[u][c]=s.c2p(v[u][c])}if(g.selectBatch.length||g.unselectBatch.length){var z=a.extendFlat({},m,g.unselectedOptions,w),O=a.extendFlat({},m,g.selectedOptions,w);g.matrix.update(z,O),A=!1}}else d.xpx=d.ypx=null;if(A){var D=a.extendFlat({},m,w);g.matrix.update(D,null)}}}e.exports=function(t,e,r){if(r.length)for(var n=0;n<r.length;n++)s(t,r[n][0])}},{\"../../components/dragelement/helpers\":633,\"../../lib\":749,\"../../plots/cartesian/axis_ids\":801,\"regl-splom\":511}],1261:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){var r=t._fullLayout,a=e.uid,i=r._splomScenes;i||(i=r._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s=i[e.uid];return s||((s=i[a]=n.extendFlat({},o,{matrix:!1,selectBatch:[],unselectBatch:[]})).draw=function(){s.matrix&&s.matrix.draw&&(s.selectBatch.length||s.unselectBatch.length?s.matrix.draw(s.unselectBatch,s.selectBatch):s.matrix.draw()),s.dirty=!1},s.destroy=function(){s.matrix&&s.matrix.destroy&&s.matrix.destroy(),s.matrixOptions=null,s.selectBatch=null,s.unselectBatch=null,s=null}),s.dirty||n.extendFlat(s,o),s}},{\"../../lib\":749}],1262:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../scatter/subtypes\"),i=t(\"./helpers\");e.exports=function(t,e){var r=t.cd,o=r[0].trace,s=r[0].t,l=t.scene,c=l.matrixOptions.cdata,u=t.xaxis,h=t.yaxis,f=[];if(!l)return f;var p=!a.hasMarkers(o)&&!a.hasText(o);if(!0!==o.visible||p)return f;var d=i.getDimIndex(o,u),g=i.getDimIndex(o,h);if(!1===d||!1===g)return f;var m=s.xpx[d],v=s.ypx[g],y=c[d],x=c[g],b=[],_=[];if(!1!==e&&!e.degenerate)for(var w=0;w<y.length;w++)e.contains([m[w],v[w]],null,w,t)?(b.push(w),f.push({pointNumber:w,x:y[w],y:x[w]})):_.push(w);var T=l.matrixOptions;return b.length||_.length?l.selectBatch.length||l.unselectBatch.length||l.matrix.update(l.unselectedOptions,n.extendFlat({},T,l.selectedOptions,l.viewOpts)):l.matrix.update(T,null),l.selectBatch=b,l.unselectBatch=_,f}},{\"../../lib\":749,\"../scatter/subtypes\":1181,\"./helpers\":1257}],1263:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../mesh3d/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},u:{valType:\"data_array\",editType:\"calc\"},v:{valType:\"data_array\",editType:\"calc\"},w:{valType:\"data_array\",editType:\"calc\"},starts:{x:{valType:\"data_array\",editType:\"calc\"},y:{valType:\"data_array\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},editType:\"calc\"},maxdisplayed:{valType:\"integer\",min:0,dflt:1e3,editType:\"calc\"},sizeref:{valType:\"number\",editType:\"calc\",min:0,dflt:1},text:{valType:\"string\",dflt:\"\",editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",editType:\"calc\"},hovertemplate:a({editType:\"calc\"},{keys:[\"tubex\",\"tubey\",\"tubez\",\"tubeu\",\"tubev\",\"tubew\",\"norm\",\"divergence\"]}),showlegend:s({},o.showlegend,{dflt:!1})};s(l,n(\"\",{colorAttr:\"u/v/w norm\",showScaleDflt:!0,editTypeOverride:\"calc\"}));[\"opacity\",\"lightposition\",\"lighting\"].forEach((function(t){l[t]=i[t]})),l.hoverinfo=s({},o.hoverinfo,{editType:\"calc\",flags:[\"x\",\"y\",\"z\",\"u\",\"v\",\"w\",\"norm\",\"divergence\",\"text\",\"name\"],dflt:\"x+y+z+norm+text+name\"}),l.transforms=void 0,e.exports=l},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../mesh3d/attributes\":1097}],1264:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/calc\");function i(t){var e,r,a,i,s,l,c,u,h,f,p,d,g=t._x,m=t._y,v=t._z,y=t._len,x=-1/0,b=1/0,_=-1/0,w=1/0,T=-1/0,k=1/0,M=\"\";for(y&&(c=g[0],h=m[0],p=v[0]),y>1&&(u=g[y-1],f=m[y-1],d=v[y-1]),e=0;e<y;e++)x=Math.max(x,g[e]),b=Math.min(b,g[e]),_=Math.max(_,m[e]),w=Math.min(w,m[e]),T=Math.max(T,v[e]),k=Math.min(k,v[e]),i||g[e]===c||(i=!0,M+=\"x\"),s||m[e]===h||(s=!0,M+=\"y\"),l||v[e]===p||(l=!0,M+=\"z\");i||(M+=\"x\"),s||(M+=\"y\"),l||(M+=\"z\");var A=o(t._x),S=o(t._y),E=o(t._z);M=(M=(M=M.replace(\"x\",(c>u?\"-\":\"+\")+\"x\")).replace(\"y\",(h>f?\"-\":\"+\")+\"y\")).replace(\"z\",(p>d?\"-\":\"+\")+\"z\");var C=function(){y=0,A=[],S=[],E=[]};(!y||y<A.length*S.length*E.length)&&C();var L=function(t){return\"x\"===t?g:\"y\"===t?m:v},P=function(t){return\"x\"===t?A:\"y\"===t?S:E},I=function(t){return t[y-1]<t[0]?-1:1},z=L(M[1]),O=L(M[3]),D=L(M[5]),R=P(M[1]).length,F=P(M[3]).length,B=P(M[5]).length,N=!1,j=function(t,e,r){return R*(F*t+e)+r},U=I(L(M[1])),V=I(L(M[3])),q=I(L(M[5]));for(e=0;e<B-1;e++){for(r=0;r<F-1;r++){for(a=0;a<R-1;a++){var H=j(e,r,a),G=j(e,r,a+1),Y=j(e,r+1,a),W=j(e+1,r,a);if(z[H]*U<z[G]*U&&O[H]*V<O[Y]*V&&D[H]*q<D[W]*q||(N=!0),N)break}if(N)break}if(N)break}return N&&(n.warn(\"Encountered arbitrary coordinates! Unable to input data grid.\"),C()),{xMin:b,yMin:w,zMin:k,xMax:x,yMax:_,zMax:T,Xs:A,Ys:S,Zs:E,len:y,fill:M}}function o(t){return n.distinctVals(t).vals}function s(t,e){if(void 0===e&&(e=t.length),n.isTypedArray(t))return t.subarray(0,e);for(var r=[],a=0;a<e;a++)r[a]=+t[a];return r}e.exports={calc:function(t,e){e._len=Math.min(e.u.length,e.v.length,e.w.length,e.x.length,e.y.length,e.z.length),e._u=s(e.u,e._len),e._v=s(e.v,e._len),e._w=s(e.w,e._len),e._x=s(e.x,e._len),e._y=s(e.y,e._len),e._z=s(e.z,e._len);var r=i(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;var n,o,l,c=0;e.starts&&(n=s(e.starts.x||[]),o=s(e.starts.y||[]),l=s(e.starts.z||[]),c=Math.min(n.length,o.length,l.length)),e._startsX=n||[],e._startsY=o||[],e._startsZ=l||[];var u,h=0,f=1/0;for(u=0;u<e._len;u++){var p=e._u[u],d=e._v[u],g=e._w[u],m=Math.sqrt(p*p+d*d+g*g);h=Math.max(h,m),f=Math.min(f,m)}for(a(t,e,{vals:[f,h],containerStr:\"\",cLetter:\"c\"}),u=0;u<c;u++){var v=n[u];r.xMax=Math.max(r.xMax,v),r.xMin=Math.min(r.xMin,v);var y=o[u];r.yMax=Math.max(r.yMax,y),r.yMin=Math.min(r.yMin,y);var x=l[u];r.zMax=Math.max(r.zMax,x),r.zMin=Math.min(r.zMin,x)}e._slen=c,e._normMax=h,e._xbnds=[r.xMin,r.xMax],e._ybnds=[r.yMin,r.yMax],e._zbnds=[r.zMin,r.zMax]},filter:s,processGrid:i}},{\"../../components/colorscale/calc\":623,\"../../lib\":749}],1265:[function(t,e,r){\"use strict\";var n=t(\"gl-streamtube3d\"),a=n.createTubeMesh,i=t(\"../../lib\"),o=t(\"../../lib/gl_format_color\").parseColorScale,s=t(\"../../components/colorscale\").extractOpts,l=t(\"../../plots/gl3d/zip3\"),c={xaxis:0,yaxis:1,zaxis:2};function u(t,e){this.scene=t,this.uid=e,this.mesh=null,this.data=null}var h=u.prototype;function f(t){var e=t.length;return e>2?t.slice(1,e-1):2===e?[(t[0]+t[1])/2]:t}function p(t){var e=t.length;return 1===e?[.5,.5]:[t[1]-t[0],t[e-1]-t[e-2]]}function d(t,e){var r=t.fullSceneLayout,a=t.dataScale,u=e._len,h={};function d(t,e){var n=r[e],o=a[c[e]];return i.simpleMap(t,(function(t){return n.d2l(t)*o}))}if(h.vectors=l(d(e._u,\"xaxis\"),d(e._v,\"yaxis\"),d(e._w,\"zaxis\"),u),!u)return{positions:[],cells:[]};var g=d(e._Xs,\"xaxis\"),m=d(e._Ys,\"yaxis\"),v=d(e._Zs,\"zaxis\");if(h.meshgrid=[g,m,v],h.gridFill=e._gridFill,e._slen)h.startingPositions=l(d(e._startsX,\"xaxis\"),d(e._startsY,\"yaxis\"),d(e._startsZ,\"zaxis\"));else{for(var y=m[0],x=f(g),b=f(v),_=new Array(x.length*b.length),w=0,T=0;T<x.length;T++)for(var k=0;k<b.length;k++)_[w++]=[x[T],y,b[k]];h.startingPositions=_}h.colormap=o(e),h.tubeSize=e.sizeref,h.maxLength=e.maxdisplayed;var M=d(e._xbnds,\"xaxis\"),A=d(e._ybnds,\"yaxis\"),S=d(e._zbnds,\"zaxis\"),E=p(g),C=p(m),L=p(v),P=[[M[0]-E[0],A[0]-C[0],S[0]-L[0]],[M[1]+E[1],A[1]+C[1],S[1]+L[1]]],I=n(h,P),z=s(e);I.vertexIntensityBounds=[z.min/e._normMax,z.max/e._normMax];var O=e.lightposition;return I.lightPosition=[O.x,O.y,O.z],I.ambient=e.lighting.ambient,I.diffuse=e.lighting.diffuse,I.specular=e.lighting.specular,I.roughness=e.lighting.roughness,I.fresnel=e.lighting.fresnel,I.opacity=e.opacity,e._pad=I.tubeScale*e.sizeref*2,I}h.handlePick=function(t){var e=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(t,n){var a=e[n],i=r[c[n]];return a.l2c(t)/i}if(t.object===this.mesh){var a=t.data.position,i=t.data.velocity;return t.traceCoordinate=[n(a[0],\"xaxis\"),n(a[1],\"yaxis\"),n(a[2],\"zaxis\"),n(i[0],\"xaxis\"),n(i[1],\"yaxis\"),n(i[2],\"zaxis\"),t.data.intensity*this.data._normMax,t.data.divergence],t.textLabel=this.data.hovertext||this.data.text,!0}},h.update=function(t){this.data=t;var e=d(this.scene,t);this.mesh.update(e)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,n=d(t,e),i=a(r,n),o=new u(t,e.uid);return o.mesh=i,o.data=e,i._trace=o,t.glplot.add(i),o}},{\"../../components/colorscale\":627,\"../../lib\":749,\"../../lib/gl_format_color\":745,\"../../plots/gl3d/zip3\":851,\"gl-streamtube3d\":323}],1266:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/defaults\"),i=t(\"./attributes\");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s(\"u\"),c=s(\"v\"),u=s(\"w\"),h=s(\"x\"),f=s(\"y\"),p=s(\"z\");l&&l.length&&c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length&&p&&p.length?(s(\"starts.x\"),s(\"starts.y\"),s(\"starts.z\"),s(\"maxdisplayed\"),s(\"sizeref\"),s(\"lighting.ambient\"),s(\"lighting.diffuse\"),s(\"lighting.specular\"),s(\"lighting.roughness\"),s(\"lighting.fresnel\"),s(\"lightposition.x\"),s(\"lightposition.y\"),s(\"lightposition.z\"),a(t,e,o,s,{prefix:\"\",cLetter:\"c\"}),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),e._length=null):e.visible=!1}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"./attributes\":1263}],1267:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"streamtube\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"showLegend\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:{min:\"cmin\",max:\"cmax\"},calc:t(\"./calc\").calc,plot:t(\"./convert\"),eventData:function(t,e){return t.tubex=t.x,t.tubey=t.y,t.tubez=t.z,t.tubeu=e.traceCoordinate[3],t.tubev=e.traceCoordinate[4],t.tubew=e.traceCoordinate[5],t.norm=e.traceCoordinate[6],t.divergence=e.traceCoordinate[7],delete t.x,delete t.y,delete t.z,t},meta:{}}},{\"../../plots/gl3d\":840,\"./attributes\":1263,\"./calc\":1264,\"./convert\":1265,\"./defaults\":1266}],1268:[function(t,e,r){\"use strict\";var n=t(\"../../plots/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../../plots/template_attributes\").texttemplateAttrs,o=t(\"../../components/colorscale/attributes\"),s=t(\"../../plots/domain\").attributes,l=t(\"../pie/attributes\"),c=t(\"./constants\"),u=t(\"../../lib/extend\").extendFlat;e.exports={labels:{valType:\"data_array\",editType:\"calc\"},parents:{valType:\"data_array\",editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc\"},branchvalues:{valType:\"enumerated\",values:[\"remainder\",\"total\"],dflt:\"remainder\",editType:\"calc\"},count:{valType:\"flaglist\",flags:[\"branches\",\"leaves\"],dflt:\"leaves\",editType:\"calc\"},level:{valType:\"any\",editType:\"plot\",anim:!0},maxdepth:{valType:\"integer\",editType:\"plot\",dflt:-1},marker:u({colors:{valType:\"data_array\",editType:\"calc\"},line:{color:u({},l.marker.line.color,{dflt:null}),width:u({},l.marker.line.width,{dflt:1}),editType:\"calc\"},editType:\"calc\"},o(\"marker\",{colorAttr:\"colors\",anim:!1})),leaf:{opacity:{valType:\"number\",editType:\"style\",min:0,max:1},editType:\"plot\"},text:l.text,textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"value\",\"current path\",\"percent root\",\"percent entry\",\"percent parent\"],extras:[\"none\"],editType:\"plot\"},texttemplate:i({editType:\"plot\"},{keys:c.eventDataKeys.concat([\"label\",\"value\"])}),hovertext:l.hovertext,hoverinfo:u({},n.hoverinfo,{flags:[\"label\",\"text\",\"value\",\"name\",\"current path\",\"percent root\",\"percent entry\",\"percent parent\"],dflt:\"label+text+value+name\"}),hovertemplate:a({},{keys:c.eventDataKeys}),textfont:l.textfont,insidetextorientation:l.insidetextorientation,insidetextfont:l.insidetextfont,outsidetextfont:u({},l.outsidetextfont,{}),sort:l.sort,domain:s({name:\"sunburst\",trace:!0,editType:\"calc\"})}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/domain\":825,\"../../plots/template_attributes\":876,\"../pie/attributes\":1130,\"./constants\":1271}],1269:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"sunburst\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":861}],1270:[function(t,e,r){\"use strict\";var n=t(\"d3-hierarchy\"),a=t(\"fast-isnumeric\"),i=t(\"../../lib\"),o=t(\"../../components/colorscale\").makeColorScaleFuncFromTrace,s=t(\"../pie/calc\").makePullColorFn,l=t(\"../pie/calc\").generateExtendedColors,c=t(\"../../components/colorscale\").calc,u=t(\"../../constants/numerical\").ALMOST_EQUAL,h={},f={};r.calc=function(t,e){var r,l,h,f,p,d,g=t._fullLayout,m=e.ids,v=i.isArrayOrTypedArray(m),y=e.labels,x=e.parents,b=e.values,_=i.isArrayOrTypedArray(b),w=[],T={},k={},M=function(t){return t||\"number\"==typeof t},A=function(t){return!_||a(b[t])&&b[t]>=0};v?(r=Math.min(m.length,x.length),l=function(t){return M(m[t])&&A(t)},h=function(t){return String(m[t])}):(r=Math.min(y.length,x.length),l=function(t){return M(y[t])&&A(t)},h=function(t){return String(y[t])}),_&&(r=Math.min(r,b.length));for(var S=0;S<r;S++)if(l(S)){var E=h(S),C=M(x[S])?String(x[S]):\"\",L={i:S,id:E,pid:C,label:M(y[S])?String(y[S]):\"\"};_&&(L.v=+b[S]),w.push(L),p=E,T[f=C]?T[f].push(p):T[f]=[p],k[p]=1}if(T[\"\"]){if(T[\"\"].length>1){for(var P=i.randstr(),I=0;I<w.length;I++)\"\"===w[I].pid&&(w[I].pid=P);w.unshift({hasMultipleRoots:!0,id:P,pid:\"\",label:\"\"})}}else{var z,O=[];for(z in T)k[z]||O.push(z);if(1!==O.length)return i.warn([\"Multiple implied roots, cannot build\",e.type,\"hierarchy of\",e.name+\".\",\"These roots include:\",O.join(\", \")].join(\" \"));z=O[0],w.unshift({hasImpliedRoot:!0,id:z,pid:\"\",label:z})}try{d=n.stratify().id((function(t){return t.id})).parentId((function(t){return t.pid}))(w)}catch(t){return i.warn([\"Failed to build\",e.type,\"hierarchy of\",e.name+\".\",\"Error:\",t.message].join(\" \"))}var D=n.hierarchy(d),R=!1;if(_)switch(e.branchvalues){case\"remainder\":D.sum((function(t){return t.data.v}));break;case\"total\":D.each((function(t){var r=t.data.data,n=r.v;if(t.children){var a=t.children.reduce((function(t,e){return t+e.data.data.v}),0);if((r.hasImpliedRoot||r.hasMultipleRoots)&&(n=a),n<a*u)return R=!0,i.warn([\"Total value for node\",t.data.data.id,\"of\",e.name,\"is smaller than the sum of its children.\",\"\\nparent value =\",n,\"\\nchildren sum =\",a].join(\" \"))}t.value=n}))}else!function t(e,r,n){var a=0,i=e.children;if(i){for(var o=i.length,s=0;s<o;s++)a+=t(i[s],r,n);n.branches&&a++}else n.leaves&&a++;e.value=e.data.data.value=a,r._values||(r._values=[]);return r._values[e.data.data.i]=a,a}(D,e,{branches:-1!==e.count.indexOf(\"branches\"),leaves:-1!==e.count.indexOf(\"leaves\")});if(!R){var F,B;e.sort&&D.sort((function(t,e){return e.value-t.value}));var N=e.marker.colors||[],j=!!N.length;return e._hasColorscale?(j||(N=_?e.values:e._values),c(t,e,{vals:N,containerStr:\"marker\",cLetter:\"c\"}),B=o(e.marker)):F=s(g[\"_\"+e.type+\"colormap\"]),D.each((function(t){var r=t.data.data;r.color=e._hasColorscale?B(N[r.i]):F(N[r.i],r.id)})),w[0].hierarchy=D,w}},r._runCrossTraceCalc=function(t,e){var r=e._fullLayout,n=e.calcdata,a=r[t+\"colorway\"],i=r[\"_\"+t+\"colormap\"];r[\"extend\"+t+\"colors\"]&&(a=l(a,\"treemap\"===t?f:h));var o=0;function s(t){var e=t.data.data,r=e.id;!1===e.color&&(i[r]?e.color=i[r]:t.parent?t.parent.parent?e.color=t.parent.data.data.color:(i[r]=e.color=a[o%a.length],o++):e.color=\"rgba(0,0,0,0)\")}for(var c=0;c<n.length;c++){var u=n[c][0];u.trace.type===t&&u.hierarchy&&u.hierarchy.each(s)}},r.crossTraceCalc=function(t){return r._runCrossTraceCalc(\"sunburst\",t)}},{\"../../components/colorscale\":627,\"../../constants/numerical\":724,\"../../lib\":749,\"../pie/calc\":1132,\"d3-hierarchy\":161,\"fast-isnumeric\":241}],1271:[function(t,e,r){\"use strict\";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:\"linear\",eventDataKeys:[\"currentPath\",\"root\",\"entry\",\"percentRoot\",\"percentEntry\",\"percentParent\"]}},{}],1272:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../plots/domain\").defaults,o=t(\"../bar/defaults\").handleText,s=t(\"../../components/colorscale\"),l=s.hasColorscale,c=s.handleDefaults;e.exports=function(t,e,r,s){function u(r,i){return n.coerce(t,e,a,r,i)}var h=u(\"labels\"),f=u(\"parents\");if(h&&h.length&&f&&f.length){var p=u(\"values\");p&&p.length?u(\"branchvalues\"):u(\"count\"),u(\"level\"),u(\"maxdepth\"),u(\"marker.line.width\")&&u(\"marker.line.color\",s.paper_bgcolor),u(\"marker.colors\");var d=e._hasColorscale=l(t,\"marker\",\"colors\")||(t.marker||{}).coloraxis;d&&c(t,e,s,u,{prefix:\"marker.\",cLetter:\"c\"}),u(\"leaf.opacity\",d?1:.7);var g=u(\"text\");u(\"texttemplate\"),e.texttemplate||u(\"textinfo\",Array.isArray(g)?\"text+label\":\"label\"),u(\"hovertext\"),u(\"hovertemplate\");o(t,e,s,u,\"auto\",{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),u(\"insidetextorientation\"),u(\"sort\"),i(e,s,u),e._length=null}else e.visible=!1}},{\"../../components/colorscale\":627,\"../../lib\":749,\"../../plots/domain\":825,\"../bar/defaults\":895,\"./attributes\":1268}],1273:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../components/fx/helpers\").appendArrayPointValue,o=t(\"../../components/fx\"),s=t(\"../../lib\"),l=t(\"../../lib/events\"),c=t(\"./helpers\"),u=t(\"../pie/helpers\").formatPieValue;function h(t,e,r){for(var n=t.data.data,a={curveNumber:e.index,pointNumber:n.i,data:e._input,fullData:e},o=0;o<r.length;o++){var s=r[o];s in t&&(a[s]=t[s])}return\"parentString\"in t&&!c.isHierarchyRoot(t)&&(a.parent=t.parentString),i(a,e,n.i),a}e.exports=function(t,e,r,i,f){var p=i[0],d=p.trace,g=p.hierarchy,m=\"sunburst\"===d.type,v=\"treemap\"===d.type;\"_hasHoverLabel\"in d||(d._hasHoverLabel=!1),\"_hasHoverEvent\"in d||(d._hasHoverEvent=!1);t.on(\"mouseover\",(function(a){var i=r._fullLayout;if(!r._dragging&&!1!==i.hovermode){var l=r._fullData[d.index],y=a.data.data,x=y.i,b=c.isHierarchyRoot(a),_=c.getParent(g,a),w=c.getValue(a),T=function(t){return s.castOption(l,x,t)},k=T(\"hovertemplate\"),M=o.castHoverinfo(l,i,x),A=i.separators;if(k||M&&\"none\"!==M&&\"skip\"!==M){var S,E;m&&(S=p.cx+a.pxmid[0]*(1-a.rInscribed),E=p.cy+a.pxmid[1]*(1-a.rInscribed)),v&&(S=a._hoverX,E=a._hoverY);var C,L={},P=[],I=[],z=function(t){return-1!==P.indexOf(t)};M&&(P=\"all\"===M?l._module.attributes.hoverinfo.flags:M.split(\"+\")),L.label=y.label,z(\"label\")&&L.label&&I.push(L.label),y.hasOwnProperty(\"v\")&&(L.value=y.v,L.valueLabel=u(L.value,A),z(\"value\")&&I.push(L.valueLabel)),L.currentPath=a.currentPath=c.getPath(a.data),z(\"current path\")&&!b&&I.push(L.currentPath);var O=[],D=function(){-1===O.indexOf(C)&&(I.push(C),O.push(C))};L.percentParent=a.percentParent=w/c.getValue(_),L.parent=a.parentString=c.getPtLabel(_),z(\"percent parent\")&&(C=c.formatPercent(L.percentParent,A)+\" of \"+L.parent,D()),L.percentEntry=a.percentEntry=w/c.getValue(e),L.entry=a.entry=c.getPtLabel(e),!z(\"percent entry\")||b||a.onPathbar||(C=c.formatPercent(L.percentEntry,A)+\" of \"+L.entry,D()),L.percentRoot=a.percentRoot=w/c.getValue(g),L.root=a.root=c.getPtLabel(g),z(\"percent root\")&&!b&&(C=c.formatPercent(L.percentRoot,A)+\" of \"+L.root,D()),L.text=T(\"hovertext\")||T(\"text\"),z(\"text\")&&(C=L.text,s.isValidTextValue(C)&&I.push(C));var R={trace:l,y:E,text:I.join(\"<br>\"),name:k||z(\"name\")?l.name:void 0,color:T(\"hoverlabel.bgcolor\")||y.color,borderColor:T(\"hoverlabel.bordercolor\"),fontFamily:T(\"hoverlabel.font.family\"),fontSize:T(\"hoverlabel.font.size\"),fontColor:T(\"hoverlabel.font.color\"),nameLength:T(\"hoverlabel.namelength\"),textAlign:T(\"hoverlabel.align\"),hovertemplate:k,hovertemplateLabels:L,eventData:[h(a,l,f.eventDataKeys)]};m&&(R.x0=S-a.rInscribed*a.rpx1,R.x1=S+a.rInscribed*a.rpx1,R.idealAlign=a.pxmid[0]<0?\"left\":\"right\"),v&&(R.x=S,R.idealAlign=S<0?\"left\":\"right\"),o.loneHover(R,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:r}),d._hasHoverLabel=!0}if(v){var F=t.select(\"path.surface\");f.styleOne(F,a,l,{hovered:!0})}d._hasHoverEvent=!0,r.emit(\"plotly_hover\",{points:[h(a,l,f.eventDataKeys)],event:n.event})}})),t.on(\"mouseout\",(function(e){var a=r._fullLayout,i=r._fullData[d.index],s=n.select(this).datum();if(d._hasHoverEvent&&(e.originalEvent=n.event,r.emit(\"plotly_unhover\",{points:[h(s,i,f.eventDataKeys)],event:n.event}),d._hasHoverEvent=!1),d._hasHoverLabel&&(o.loneUnhover(a._hoverlayer.node()),d._hasHoverLabel=!1),v){var l=t.select(\"path.surface\");f.styleOne(l,s,i,{hovered:!1})}})),t.on(\"click\",(function(t){var e=r._fullLayout,i=r._fullData[d.index],s=m&&(c.isHierarchyRoot(t)||c.isLeaf(t)),u=c.getPtId(t),p=c.isEntry(t)?c.findEntryWithChild(g,u):c.findEntryWithLevel(g,u),v=c.getPtId(p),y={points:[h(t,i,f.eventDataKeys)],event:n.event};s||(y.nextLevel=v);var x=l.triggerHandler(r,\"plotly_\"+d.type+\"click\",y);if(!1!==x&&e.hovermode&&(r._hoverdata=[h(t,i,f.eventDataKeys)],o.click(r,n.event)),!s&&!1!==x&&!r._dragging&&!r._transitioning){a.call(\"_storeDirectGUIEdit\",i,e._tracePreGUI[i.uid],{level:i.level});var b={data:[{level:v}],traces:[d.index]},_={frame:{redraw:!1,duration:f.transitionTime},transition:{duration:f.transitionTime,easing:f.transitionEasing},mode:\"immediate\",fromcurrent:!0};o.loneUnhover(e._hoverlayer.node()),a.call(\"animate\",r,b,_)}}))}},{\"../../components/fx\":655,\"../../components/fx/helpers\":651,\"../../lib\":749,\"../../lib/events\":738,\"../../registry\":881,\"../pie/helpers\":1135,\"./helpers\":1274,d3:169}],1274:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../../lib/setcursor\"),o=t(\"../pie/helpers\");function s(t){return t.data.data.pid}r.findEntryWithLevel=function(t,e){var n;return e&&t.eachAfter((function(t){if(r.getPtId(t)===e)return n=t.copy()})),n||t},r.findEntryWithChild=function(t,e){var n;return t.eachAfter((function(t){for(var a=t.children||[],i=0;i<a.length;i++){var o=a[i];if(r.getPtId(o)===e)return n=t.copy()}})),n||t},r.isEntry=function(t){return!t.parent},r.isLeaf=function(t){return!t.children},r.getPtId=function(t){return t.data.data.id},r.getPtLabel=function(t){return t.data.data.label},r.getValue=function(t){return t.value},r.isHierarchyRoot=function(t){return\"\"===s(t)},r.setSliceCursor=function(t,e,n){var a=n.isTransitioning;if(!a){var o=t.datum();a=n.hideOnRoot&&r.isHierarchyRoot(o)||n.hideOnLeaves&&r.isLeaf(o)}i(t,a?null:\"pointer\")},r.getInsideTextFontKey=function(t,e,r,a,i){var o=(i||{}).onPathbar?\"pathbar.textfont\":\"insidetextfont\",s=r.data.data.i;return n.castOption(e,s,o+\".\"+t)||n.castOption(e,s,\"textfont.\"+t)||a.size},r.getOutsideTextFontKey=function(t,e,r,a){var i=r.data.data.i;return n.castOption(e,i,\"outsidetextfont.\"+t)||n.castOption(e,i,\"textfont.\"+t)||a.size},r.isOutsideText=function(t,e){return!t._hasColorscale&&r.isHierarchyRoot(e)},r.determineTextFont=function(t,e,i,o){return r.isOutsideText(t,e)?function(t,e,n){return{color:r.getOutsideTextFontKey(\"color\",t,e,n),family:r.getOutsideTextFontKey(\"family\",t,e,n),size:r.getOutsideTextFontKey(\"size\",t,e,n)}}(t,e,i):function(t,e,i,o){var s=(o||{}).onPathbar,l=e.data.data,c=l.i,u=n.castOption(t,c,(s?\"pathbar.textfont\":\"insidetextfont\")+\".color\");return!u&&t._input.textfont&&(u=n.castOption(t._input,c,\"textfont.color\")),{color:u||a.contrast(l.color),family:r.getInsideTextFontKey(\"family\",t,e,i,o),size:r.getInsideTextFontKey(\"size\",t,e,i,o)}}(t,e,i,o)},r.hasTransition=function(t){return!!(t&&t.duration>0)},r.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},r.isHeader=function(t,e){return!(r.isLeaf(t)||t.depth===e._maxDepth-1)},r.getParent=function(t,e){return r.findEntryWithLevel(t,s(e))},r.listPath=function(t,e){var n=t.parent;if(!n)return[];var a=e?[n.data[e]]:[n];return r.listPath(n,e).concat(a)},r.getPath=function(t){return r.listPath(t,\"label\").join(\"/\")+\"/\"},r.formatValue=o.formatPieValue,r.formatPercent=function(t,e){var r=n.formatPercent(t,0);return\"0%\"===r&&(r=o.formatPiePercent(t,e)),r}},{\"../../components/color\":615,\"../../lib\":749,\"../../lib/setcursor\":769,\"../pie/helpers\":1135}],1275:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"sunburst\",basePlotModule:t(\"./base_plot\"),categories:[],animatable:!0,attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\").plot,style:t(\"./style\").style,colorbar:t(\"../scatter/marker_colorbar\"),meta:{}}},{\"../scatter/marker_colorbar\":1174,\"./attributes\":1268,\"./base_plot\":1269,\"./calc\":1270,\"./defaults\":1272,\"./layout_attributes\":1276,\"./layout_defaults\":1277,\"./plot\":1278,\"./style\":1279}],1276:[function(t,e,r){\"use strict\";e.exports={sunburstcolorway:{valType:\"colorlist\",editType:\"calc\"},extendsunburstcolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{}],1277:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"sunburstcolorway\",e.colorway),r(\"extendsunburstcolors\")}},{\"../../lib\":749,\"./layout_attributes\":1276}],1278:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"d3-hierarchy\"),i=t(\"../../components/drawing\"),o=t(\"../../lib\"),s=t(\"../../lib/svg_text_utils\"),l=t(\"../bar/uniform_text\"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t(\"../pie/plot\"),f=h.computeTransform,p=h.transformInsideText,d=t(\"./style\").styleOne,g=t(\"../bar/style\").resizeText,m=t(\"./fx\"),v=t(\"./constants\"),y=t(\"./helpers\");function x(t,e,l,u){var h=t._fullLayout,g=!h.uniformtext.mode&&y.hasTransition(u),x=n.select(l).selectAll(\"g.slice\"),_=e[0],w=_.trace,T=_.hierarchy,k=y.findEntryWithLevel(T,w.level),M=y.getMaxDepth(w),A=h._size,S=w.domain,E=A.w*(S.x[1]-S.x[0]),C=A.h*(S.y[1]-S.y[0]),L=.5*Math.min(E,C),P=_.cx=A.l+A.w*(S.x[1]+S.x[0])/2,I=_.cy=A.t+A.h*(1-S.y[0])-C/2;if(!k)return x.remove();var z=null,O={};g&&x.each((function(t){O[y.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!z&&y.isEntry(t)&&(z=t)}));var D=function(t){return a.partition().size([2*Math.PI,t.height+1])(t)}(k).descendants(),R=k.height+1,F=0,B=M;_.hasMultipleRoots&&y.isHierarchyRoot(k)&&(D=D.slice(1),R-=1,F=1,B+=1),D=D.filter((function(t){return t.y1<=B}));var N=Math.min(R,M),j=function(t){return(t-F)/N*L},U=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},V=function(t){return o.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,P,I)},q=function(t){return P+b(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},H=function(t){return I+b(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(x=x.data(D,y.getPtId)).enter().append(\"g\").classed(\"slice\",!0),g?x.exit().transition().each((function(){var t=n.select(this);t.select(\"path.surface\").transition().attrTween(\"d\",(function(t){var e=function(t){var e,r=y.getPtId(t),a=O[r],i=O[y.getPtId(k)];if(i){var o=t.x1>i.x1?2*Math.PI:0;e=t.rpx1<i.rpx1?{rpx0:0,rpx1:0}:{x0:o,x1:o}}else{var s,l=y.getPtId(t.parent);x.each((function(t){if(y.getPtId(t)===l)return s=t}));var c,u=s.children;u.forEach((function(t,e){if(y.getPtId(t)===r)return c=e}));var h=u.length,f=n.interpolate(s.x0,s.x1);e={rpx0:L,rpx1:L,x0:f(c/h),x1:f((c+1)/h)}}return n.interpolate(a,e)}(t);return function(t){return V(e(t))}})),t.select(\"g.slicetext\").attr(\"opacity\",0)})).remove():x.exit().remove(),x.order();var G=null;if(g&&z){var Y=y.getPtId(z);x.each((function(t){null===G&&y.getPtId(t)===Y&&(G=t.x1)}))}var W=x;function Z(t){var e=t.parent,r=O[y.getPtId(e)],a={};if(r){var i=e.children,o=i.indexOf(t),s=i.length,l=n.interpolate(r.x0,r.x1);a.x0=l(o/s),a.x1=l(o/s)}else a.x0=a.x1=0;return a}g&&(W=W.transition().each(\"end\",(function(){var e=n.select(this);y.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})}))),W.each((function(a){var l=n.select(this),u=o.ensureSingle(l,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",\"all\")}));a.rpx0=j(a.y0),a.rpx1=j(a.y1),a.xmid=(a.x0+a.x1)/2,a.pxmid=U(a.rpx1,a.xmid),a.midangle=-(a.xmid-Math.PI/2),a.startangle=-(a.x0-Math.PI/2),a.stopangle=-(a.x1-Math.PI/2),a.halfangle=.5*Math.min(o.angleDelta(a.x0,a.x1)||Math.PI,Math.PI),a.ring=1-a.rpx0/a.rpx1,a.rInscribed=function(t){return 0===t.rpx0&&o.isFullCircle([t.x0,t.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2))}(a),g?u.transition().attrTween(\"d\",(function(t){var e=function(t){var e,r=O[y.getPtId(t)],a={x0:t.x0,x1:t.x1,rpx0:t.rpx0,rpx1:t.rpx1};if(r)e=r;else if(z)if(t.parent)if(G){var i=t.x1>G?2*Math.PI:0;e={x0:i,x1:i}}else e={rpx0:L,rpx1:L},o.extendFlat(e,Z(t));else e={rpx0:0,rpx1:0};else e={x0:0,x1:0};return n.interpolate(e,a)}(t);return function(t){return V(e(t))}})):u.attr(\"d\",V),l.call(m,k,t,e,{eventDataKeys:v.eventDataKeys,transitionTime:v.CLICK_TRANSITION_TIME,transitionEasing:v.CLICK_TRANSITION_EASING}).call(y.setSliceCursor,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:t._transitioning}),u.call(d,a,w);var x=o.ensureSingle(l,\"g\",\"slicetext\"),b=o.ensureSingle(x,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),T=o.ensureUniformFontSize(t,y.determineTextFont(w,a,h.font));b.text(r.formatSliceLabel(a,k,w,e,h)).classed(\"slicetext\",!0).attr(\"text-anchor\",\"middle\").call(i.font,T).call(s.convertToTspans,t);var M=i.bBox(b.node());a.transform=p(M,a,_),a.transform.targetX=q(a),a.transform.targetY=H(a);var A=function(t,e){var r=t.transform;return f(r,e),r.fontSize=T.size,c(w.type,r,h),o.getTextTransform(r)};g?b.transition().attrTween(\"transform\",(function(t){var e=function(t){var e,r=O[y.getPtId(t)],a=t.transform;if(r)e=r;else if(e={rpx1:t.rpx1,transform:{textPosAngle:a.textPosAngle,scale:0,rotate:a.rotate,rCenter:a.rCenter,x:a.x,y:a.y}},z)if(t.parent)if(G){var i=t.x1>G?2*Math.PI:0;e.x0=e.x1=i}else o.extendFlat(e,Z(t));else e.x0=e.x1=0;else e.x0=e.x1=0;var s=n.interpolate(e.transform.textPosAngle,t.transform.textPosAngle),l=n.interpolate(e.rpx1,t.rpx1),u=n.interpolate(e.x0,t.x0),f=n.interpolate(e.x1,t.x1),p=n.interpolate(e.transform.scale,a.scale),d=n.interpolate(e.transform.rotate,a.rotate),g=0===a.rCenter?3:0===e.transform.rCenter?1/3:1,m=n.interpolate(e.transform.rCenter,a.rCenter);return function(t){var e=l(t),r=u(t),n=f(t),i=function(t){return m(Math.pow(t,g))}(t),o={pxmid:U(e,(r+n)/2),rpx1:e,transform:{textPosAngle:s(t),rCenter:i,x:a.x,y:a.y}};return c(w.type,a,h),{transform:{targetX:q(o),targetY:H(o),scale:p(t),rotate:d(t),rCenter:i}}}}(t);return function(t){return A(e(t),M)}})):b.attr(\"transform\",A(a,M))}))}function b(t){return e=t.rpx1,r=t.transform.textPosAngle,[e*Math.sin(r),-e*Math.cos(r)];var e,r}r.plot=function(t,e,r,a){var i,o,s=t._fullLayout,l=s._sunburstlayer,c=!r,h=!s.uniformtext.mode&&y.hasTransition(r);(u(\"sunburst\",s),(i=l.selectAll(\"g.trace.sunburst\").data(e,(function(t){return t[0].trace.uid}))).enter().append(\"g\").classed(\"trace\",!0).classed(\"sunburst\",!0).attr(\"stroke-linejoin\",\"round\"),i.order(),h)?(a&&(o=a()),n.transition().duration(r.duration).ease(r.easing).each(\"end\",(function(){o&&o()})).each(\"interrupt\",(function(){o&&o()})).each((function(){l.selectAll(\"g.trace\").each((function(e){x(t,e,this,r)}))}))):(i.each((function(e){x(t,e,this,r)})),s.uniformtext.mode&&g(t,s._sunburstlayer.selectAll(\".trace\"),\"sunburst\"));c&&i.exit().remove()},r.formatSliceLabel=function(t,e,r,n,a){var i=r.texttemplate,s=r.textinfo;if(!(i||s&&\"none\"!==s))return\"\";var l=a.separators,c=n[0],u=t.data.data,h=c.hierarchy,f=y.isHierarchyRoot(t),p=y.getParent(h,t),d=y.getValue(t);if(!i){var g,m=s.split(\"+\"),v=function(t){return-1!==m.indexOf(t)},x=[];if(v(\"label\")&&u.label&&x.push(u.label),u.hasOwnProperty(\"v\")&&v(\"value\")&&x.push(y.formatValue(u.v,l)),!f){v(\"current path\")&&x.push(y.getPath(t.data));var b=0;v(\"percent parent\")&&b++,v(\"percent entry\")&&b++,v(\"percent root\")&&b++;var _=b>1;if(b){var w,T=function(t){g=y.formatPercent(w,l),_&&(g+=\" of \"+t),x.push(g)};v(\"percent parent\")&&!f&&(w=d/y.getValue(p),T(\"parent\")),v(\"percent entry\")&&(w=d/y.getValue(e),T(\"entry\")),v(\"percent root\")&&(w=d/y.getValue(h),T(\"root\"))}}return v(\"text\")&&(g=o.castOption(r,u.i,\"text\"),o.isValidTextValue(g)&&x.push(g)),x.join(\"<br>\")}var k=o.castOption(r,u.i,\"texttemplate\");if(!k)return\"\";var M={};u.label&&(M.label=u.label),u.hasOwnProperty(\"v\")&&(M.value=u.v,M.valueLabel=y.formatValue(u.v,l)),M.currentPath=y.getPath(t.data),f||(M.percentParent=d/y.getValue(p),M.percentParentLabel=y.formatPercent(M.percentParent,l),M.parent=y.getPtLabel(p)),M.percentEntry=d/y.getValue(e),M.percentEntryLabel=y.formatPercent(M.percentEntry,l),M.entry=y.getPtLabel(e),M.percentRoot=d/y.getValue(h),M.percentRootLabel=y.formatPercent(M.percentRoot,l),M.root=y.getPtLabel(h),u.hasOwnProperty(\"color\")&&(M.color=u.color);var A=o.castOption(r,u.i,\"text\");return(o.isValidTextValue(A)||\"\"===A)&&(M.text=A),M.customdata=o.castOption(r,u.i,\"customdata\"),o.texttemplateString(k,M,a._d3locale,M,r._meta||{})}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../bar/style\":905,\"../bar/uniform_text\":907,\"../pie/plot\":1139,\"./constants\":1271,\"./fx\":1273,\"./helpers\":1274,\"./style\":1279,d3:169,\"d3-hierarchy\":161}],1279:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../lib\"),o=t(\"../bar/uniform_text\").resizeText;function s(t,e,r){var n=e.data.data,o=!e.children,s=n.i,l=i.castOption(r,s,\"marker.line.color\")||a.defaultLine,c=i.castOption(r,s,\"marker.line.width\")||0;t.style(\"stroke-width\",c).call(a.fill,n.color).call(a.stroke,l).style(\"opacity\",o?r.leaf.opacity:null)}e.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(\".trace\");o(t,e,\"sunburst\"),e.each((function(t){var e=n.select(this),r=t[0].trace;e.style(\"opacity\",r.opacity),e.selectAll(\"path.surface\").each((function(t){n.select(this).call(s,t,r)}))}))},styleOne:s}},{\"../../components/color\":615,\"../../lib\":749,\"../bar/uniform_text\":907,d3:169}],1280:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/edit_types\").overrideAll;function c(t){return{show:{valType:\"boolean\",dflt:!1},start:{valType:\"number\",dflt:null,editType:\"plot\"},end:{valType:\"number\",dflt:null,editType:\"plot\"},size:{valType:\"number\",dflt:null,min:0,editType:\"plot\"},project:{x:{valType:\"boolean\",dflt:!1},y:{valType:\"boolean\",dflt:!1},z:{valType:\"boolean\",dflt:!1}},color:{valType:\"color\",dflt:n.defaultLine},usecolormap:{valType:\"boolean\",dflt:!1},width:{valType:\"number\",min:1,max:16,dflt:2},highlight:{valType:\"boolean\",dflt:!0},highlightcolor:{valType:\"color\",dflt:n.defaultLine},highlightwidth:{valType:\"number\",min:1,max:16,dflt:2}}}var u=e.exports=l(s({z:{valType:\"data_array\"},x:{valType:\"data_array\"},y:{valType:\"data_array\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertemplate:i(),connectgaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},surfacecolor:{valType:\"data_array\"}},a(\"\",{colorAttr:\"z or surfacecolor\",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:\"calc\"}),{contours:{x:c(),y:c(),z:c()},hidesurface:{valType:\"boolean\",dflt:!1},lightposition:{x:{valType:\"number\",min:-1e5,max:1e5,dflt:10},y:{valType:\"number\",min:-1e5,max:1e5,dflt:1e4},z:{valType:\"number\",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:\"number\",min:0,max:1,dflt:.8},diffuse:{valType:\"number\",min:0,max:1,dflt:.8},specular:{valType:\"number\",min:0,max:2,dflt:.05},roughness:{valType:\"number\",min:0,max:1,dflt:.5},fresnel:{valType:\"number\",min:0,max:5,dflt:.2}},opacity:{valType:\"number\",min:0,max:1,dflt:1},opacityscale:{valType:\"any\",editType:\"calc\"},_deprecated:{zauto:s({},a.zauto,{}),zmin:s({},a.zmin,{}),zmax:s({},a.zmax,{})},hoverinfo:s({},o.hoverinfo),showlegend:s({},o.showlegend,{dflt:!1})}),\"calc\",\"nested\");u.x.editType=u.y.editType=u.z.editType=\"calc+clearAxisTypes\",u.transforms=void 0},{\"../../components/color\":615,\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876}],1281:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\");e.exports=function(t,e){e.surfacecolor?n(t,e,{vals:e.surfacecolor,containerStr:\"\",cLetter:\"c\"}):n(t,e,{vals:e.z,containerStr:\"\",cLetter:\"c\"})}},{\"../../components/colorscale/calc\":623}],1282:[function(t,e,r){\"use strict\";var n=t(\"gl-surface3d\"),a=t(\"ndarray\"),i=t(\"ndarray-linear-interpolate\").d2,o=t(\"../heatmap/interp2d\"),s=t(\"../heatmap/find_empties\"),l=t(\"../../lib\").isArrayOrTypedArray,c=t(\"../../lib/gl_format_color\").parseColorScale,u=t(\"../../lib/str2rgbarray\"),h=t(\"../../components/colorscale\").extractOpts;function f(t,e,r){this.scene=t,this.uid=r,this.surface=e,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var p=f.prototype;p.getXat=function(t,e,r,n){var a=l(this.data.x)?l(this.data.x[0])?this.data.x[e][t]:this.data.x[t]:t;return void 0===r?a:n.d2l(a,0,r)},p.getYat=function(t,e,r,n){var a=l(this.data.y)?l(this.data.y[0])?this.data.y[e][t]:this.data.y[e]:e;return void 0===r?a:n.d2l(a,0,r)},p.getZat=function(t,e,r,n){var a=this.data.z[e][t];return null===a&&this.data.connectgaps&&this.data._interpolatedZ&&(a=this.data._interpolatedZ[e][t]),void 0===r?a:n.d2l(a,0,r)},p.handlePick=function(t){if(t.object===this.surface){var e=(t.data.index[0]-1)/this.dataScaleX-1,r=(t.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(e),this.data.z[0].length-1),0),a=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);t.index=[n,a],t.traceCoordinate=[this.getXat(n,a),this.getYat(n,a),this.getZat(n,a)],t.dataCoordinate=[this.getXat(n,a,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,a,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,a,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var i=0;i<3;i++){var o=t.dataCoordinate[i];null!=o&&(t.dataCoordinate[i]*=this.scene.dataScale[i])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[a]&&void 0!==s[a][n]?t.textLabel=s[a][n]:t.textLabel=s||\"\",t.data.dataCoordinate=t.dataCoordinate.slice(),this.surface.highlight(t.data),this.scene.glplot.spikes.position=t.dataCoordinate,!0}};var d=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function g(t,e){if(t<e)return 0;for(var r=0;0===Math.floor(t%e);)t/=e,r++;return r}function m(t){for(var e=[],r=0;r<d.length;r++){var n=d[r];e.push(g(t,n))}return e}function v(t){for(var e=m(t),r=t,n=0;n<d.length;n++)if(e[n]>0){r=d[n];break}return r}function y(t,e){if(!(t<1||e<1)){for(var r=m(t),n=m(e),a=1,i=0;i<d.length;i++)a*=Math.pow(d[i],Math.max(r[i],n[i]));return a}}p.calcXnums=function(t){var e,r=[];for(e=1;e<t;e++){var n=this.getXat(e-1,0),a=this.getXat(e,0);r[e-1]=a!==n&&null!=n&&null!=a?Math.abs(a-n):0}var i=0;for(e=1;e<t;e++)i+=r[e-1];for(e=1;e<t;e++)0===r[e-1]?r[e-1]=1:r[e-1]=Math.round(i/r[e-1]);return r},p.calcYnums=function(t){var e,r=[];for(e=1;e<t;e++){var n=this.getYat(0,e-1),a=this.getYat(0,e);r[e-1]=a!==n&&null!=n&&null!=a?Math.abs(a-n):0}var i=0;for(e=1;e<t;e++)i+=r[e-1];for(e=1;e<t;e++)0===r[e-1]?r[e-1]=1:r[e-1]=Math.round(i/r[e-1]);return r};var x=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],b=x[9],_=x[13];function w(t,e,r){var n=r[8]+r[2]*e[0]+r[5]*e[1];return t[0]=(r[6]+r[0]*e[0]+r[3]*e[1])/n,t[1]=(r[7]+r[1]*e[0]+r[4]*e[1])/n,t}function T(t,e,r){return function(t,e,r,n){for(var a=[0,0],o=t.shape[0],s=t.shape[1],l=0;l<o;l++)for(var c=0;c<s;c++)r(a,[l,c],n),t.set(l,c,i(e,a[0],a[1]))}(t,e,w,r),t}function k(t,e){for(var r=!1,n=0;n<t.length;n++)if(e===t[n]){r=!0;break}!1===r&&t.push(e)}p.estimateScale=function(t,e){for(var r=1+function(t){if(0!==t.length){for(var e=1,r=0;r<t.length;r++)e=y(e,t[r]);return e}}(0===e?this.calcXnums(t):this.calcYnums(t));r<b;)r*=2;for(;r>_;)r--,r/=v(r),++r<b&&(r=_);var n=Math.round(r/t);return n>1?n:1},p.refineCoords=function(t){for(var e=this.dataScaleX,r=this.dataScaleY,n=t[0].shape[0],i=t[0].shape[1],o=0|Math.floor(t[0].shape[0]*e+1),s=0|Math.floor(t[0].shape[1]*r+1),l=1+n+1,c=1+i+1,u=a(new Float32Array(l*c),[l,c]),h=[1/e,0,0,0,1/r,0,0,0,1],f=0;f<t.length;++f){this.surface.padField(u,t[f]);var p=a(new Float32Array(o*s),[o,s]);T(p,u,h),t[f]=p}},p.setContourLevels=function(){var t,e,r,n=[[],[],[]],a=[!1,!1,!1],i=!1;for(t=0;t<3;++t)if(this.showContour[t]&&(i=!0,this.contourSize[t]>0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(a[t]=!0,e=this.contourStart[t];e<this.contourEnd[t];e+=this.contourSize[t])r=e*this.scene.dataScale[t],k(n[t],r);if(i){var o=[[],[],[]];for(t=0;t<3;++t)this.showContour[t]&&(o[t]=a[t]?n[t]:this.scene.contourLevels[t]);this.surface.update({levels:o})}},p.update=function(t){var e,r,n,i,l=this.scene,f=l.fullSceneLayout,p=this.surface,d=c(t),g=l.dataScale,m=t.z[0].length,v=t._ylength,y=l.contourLevels;this.data=t;var x=[];for(e=0;e<3;e++)for(x[e]=[],r=0;r<m;r++)x[e][r]=[];for(r=0;r<m;r++)for(n=0;n<v;n++)x[0][r][n]=this.getXat(r,n,t.xcalendar,f.xaxis),x[1][r][n]=this.getYat(r,n,t.ycalendar,f.yaxis),x[2][r][n]=this.getZat(r,n,t.zcalendar,f.zaxis);if(t.connectgaps)for(t._emptypoints=s(x[2]),o(x[2],t._emptypoints),t._interpolatedZ=[],r=0;r<m;r++)for(t._interpolatedZ[r]=[],n=0;n<v;n++)t._interpolatedZ[r][n]=x[2][r][n];for(e=0;e<3;e++)for(r=0;r<m;r++)for(n=0;n<v;n++)null==(i=x[e][r][n])?x[e][r][n]=NaN:i=x[e][r][n]*=g[e];for(e=0;e<3;e++)for(r=0;r<m;r++)for(n=0;n<v;n++)null!=(i=x[e][r][n])&&(this.minValues[e]>i&&(this.minValues[e]=i),this.maxValues[e]<i&&(this.maxValues[e]=i));for(e=0;e<3;e++)this.objectOffset[e]=.5*(this.minValues[e]+this.maxValues[e]);for(e=0;e<3;e++)for(r=0;r<m;r++)for(n=0;n<v;n++)null!=(i=x[e][r][n])&&(x[e][r][n]-=this.objectOffset[e]);var b=[a(new Float32Array(m*v),[m,v]),a(new Float32Array(m*v),[m,v]),a(new Float32Array(m*v),[m,v])];for(e=0;e<3;e++)for(r=0;r<m;r++)for(n=0;n<v;n++)b[e].set(r,n,x[e][r][n]);x=[];var w={colormap:d,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!t.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacityscale:t.opacityscale,opacity:t.opacity},T=h(t);if(w.intensityBounds=[T.min,T.max],t.surfacecolor){var k=a(new Float32Array(m*v),[m,v]);for(r=0;r<m;r++)for(n=0;n<v;n++)k.set(r,n,t.surfacecolor[n][r]);b.push(k)}else w.intensityBounds[0]*=g[2],w.intensityBounds[1]*=g[2];(_<b[0].shape[0]||_<b[0].shape[1])&&(this.refineData=!1),!0===this.refineData&&(this.dataScaleX=this.estimateScale(b[0].shape[0],0),this.dataScaleY=this.estimateScale(b[0].shape[1],1),1===this.dataScaleX&&1===this.dataScaleY||this.refineCoords(b)),t.surfacecolor&&(w.intensity=b.pop());var M=[!0,!0,!0],A=[\"x\",\"y\",\"z\"];for(e=0;e<3;++e){var S=t.contours[A[e]];M[e]=S.highlight,w.showContour[e]=S.show||S.highlight,w.showContour[e]&&(w.contourProject[e]=[S.project.x,S.project.y,S.project.z],S.show?(this.showContour[e]=!0,w.levels[e]=y[e],p.highlightColor[e]=w.contourColor[e]=u(S.color),S.usecolormap?p.highlightTint[e]=w.contourTint[e]=0:p.highlightTint[e]=w.contourTint[e]=1,w.contourWidth[e]=S.width,this.contourStart[e]=S.start,this.contourEnd[e]=S.end,this.contourSize[e]=S.size):(this.showContour[e]=!1,this.contourStart[e]=null,this.contourEnd[e]=null,this.contourSize[e]=0),S.highlight&&(w.dynamicColor[e]=u(S.highlightcolor),w.dynamicWidth[e]=S.highlightwidth))}(function(t){var e=t[0].rgb,r=t[t.length-1].rgb;return e[0]===r[0]&&e[1]===r[1]&&e[2]===r[2]&&e[3]===r[3]})(d)&&(w.vertexColor=!0),w.objectOffset=this.objectOffset,w.coords=b,p.update(w),p.visible=t.visible,p.enableDynamic=M,p.enableHighlight=M,p.snapToData=!0,\"lighting\"in t&&(p.ambientLight=t.lighting.ambient,p.diffuseLight=t.lighting.diffuse,p.specularLight=t.lighting.specular,p.roughness=t.lighting.roughness,p.fresnel=t.lighting.fresnel),\"lightposition\"in t&&(p.lightPosition=[t.lightposition.x,t.lightposition.y,t.lightposition.z])},p.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()},e.exports=function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new f(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}},{\"../../components/colorscale\":627,\"../../lib\":749,\"../../lib/gl_format_color\":745,\"../../lib/str2rgbarray\":772,\"../heatmap/find_empties\":1041,\"../heatmap/interp2d\":1044,\"gl-surface3d\":325,ndarray:469,\"ndarray-linear-interpolate\":463}],1283:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../components/colorscale/defaults\"),o=t(\"./attributes\");function s(t,e,r,n){var a=n(\"opacityscale\");\"max\"===a?e.opacityscale=[[0,.1],[1,1]]:\"min\"===a?e.opacityscale=[[0,1],[1,.1]]:\"extremes\"===a?e.opacityscale=function(t,e){for(var r=[],n=0;n<32;n++){var a=n/31,i=e+(1-e)*(1-Math.pow(Math.sin(t*a*Math.PI),2));r.push([a,Math.max(0,Math.min(1,i))])}return r}(1,.1):function(t){var e=0;if(!Array.isArray(t)||t.length<2)return!1;if(!t[0]||!t[t.length-1])return!1;if(0!=+t[0][0]||1!=+t[t.length-1][0])return!1;for(var r=0;r<t.length;r++){var n=t[r];if(2!==n.length||+n[0]<e)return!1;e=+n[0]}return!0}(a)||(e.opacityscale=void 0)}function l(t,e,r){e in t&&!(r in t)&&(t[r]=t[e])}e.exports={supplyDefaults:function(t,e,r,c){var u,h;function f(r,n){return a.coerce(t,e,o,r,n)}var p=f(\"x\"),d=f(\"y\"),g=f(\"z\");if(!g||!g.length||p&&p.length<1||d&&d.length<1)e.visible=!1;else{e._xlength=Array.isArray(p)&&a.isArrayOrTypedArray(p[0])?g.length:g[0].length,e._ylength=g.length,n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],c),f(\"text\"),f(\"hovertext\"),f(\"hovertemplate\"),[\"lighting.ambient\",\"lighting.diffuse\",\"lighting.specular\",\"lighting.roughness\",\"lighting.fresnel\",\"lightposition.x\",\"lightposition.y\",\"lightposition.z\",\"hidesurface\",\"connectgaps\",\"opacity\"].forEach((function(t){f(t)}));var m=f(\"surfacecolor\"),v=[\"x\",\"y\",\"z\"];for(u=0;u<3;++u){var y=\"contours.\"+v[u],x=f(y+\".show\"),b=f(y+\".highlight\");if(x||b)for(h=0;h<3;++h)f(y+\".project.\"+v[h]);x&&(f(y+\".color\"),f(y+\".width\"),f(y+\".usecolormap\")),b&&(f(y+\".highlightcolor\"),f(y+\".highlightwidth\")),f(y+\".start\"),f(y+\".end\"),f(y+\".size\")}m||(l(t,\"zmin\",\"cmin\"),l(t,\"zmax\",\"cmax\"),l(t,\"zauto\",\"cauto\")),i(t,e,c,f,{prefix:\"\",cLetter:\"c\"}),s(t,e,c,f),e._length=null}},opacityscaleDefaults:s}},{\"../../components/colorscale/defaults\":625,\"../../lib\":749,\"../../registry\":881,\"./attributes\":1280}],1284:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,colorbar:{min:\"cmin\",max:\"cmax\"},calc:t(\"./calc\"),plot:t(\"./convert\"),moduleType:\"trace\",name:\"surface\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"2dMap\",\"showLegend\"],meta:{}}},{\"../../plots/gl3d\":840,\"./attributes\":1280,\"./calc\":1281,\"./convert\":1282,\"./defaults\":1283}],1285:[function(t,e,r){\"use strict\";var n=t(\"../../components/annotations/attributes\"),a=t(\"../../lib/extend\").extendFlat,i=t(\"../../plot_api/edit_types\").overrideAll,o=t(\"../../plots/font_attributes\"),s=t(\"../../plots/domain\").attributes;t(\"../../constants/docs\").FORMAT_LINK;(e.exports=i({domain:s({name:\"table\",trace:!0}),columnwidth:{valType:\"number\",arrayOk:!0,dflt:null},columnorder:{valType:\"data_array\"},header:{values:{valType:\"data_array\",dflt:[]},format:{valType:\"data_array\",dflt:[]},prefix:{valType:\"string\",arrayOk:!0,dflt:null},suffix:{valType:\"string\",arrayOk:!0,dflt:null},height:{valType:\"number\",dflt:28},align:a({},n.align,{arrayOk:!0}),line:{width:{valType:\"number\",arrayOk:!0,dflt:1},color:{valType:\"color\",arrayOk:!0,dflt:\"grey\"}},fill:{color:{valType:\"color\",arrayOk:!0,dflt:\"white\"}},font:a({},o({arrayOk:!0}))},cells:{values:{valType:\"data_array\",dflt:[]},format:{valType:\"data_array\",dflt:[]},prefix:{valType:\"string\",arrayOk:!0,dflt:null},suffix:{valType:\"string\",arrayOk:!0,dflt:null},height:{valType:\"number\",dflt:20},align:a({},n.align,{arrayOk:!0}),line:{width:{valType:\"number\",arrayOk:!0,dflt:1},color:{valType:\"color\",arrayOk:!0,dflt:\"grey\"}},fill:{color:{valType:\"color\",arrayOk:!0,dflt:\"white\"}},font:a({},o({arrayOk:!0}))}},\"calc\",\"from-root\")).transforms=void 0},{\"../../components/annotations/attributes\":598,\"../../constants/docs\":719,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/domain\":825,\"../../plots/font_attributes\":826}],1286:[function(t,e,r){\"use strict\";var n=t(\"../../plots/get_data\").getModuleCalcData,a=t(\"./plot\");r.name=\"table\",r.plot=function(t){var e=n(t.calcdata,\"table\")[0];e.length&&a(t,e)},r.clean=function(t,e,r,n){var a=n._has&&n._has(\"table\"),i=e._has&&e._has(\"table\");a&&!i&&n._paperdiv.selectAll(\".table\").remove()}},{\"../../plots/get_data\":835,\"./plot\":1293}],1287:[function(t,e,r){\"use strict\";var n=t(\"../../lib/gup\").wrap;e.exports=function(){return n({})}},{\"../../lib/gup\":746}],1288:[function(t,e,r){\"use strict\";e.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\\$.*\\$$/,goldenRatio:1.618,lineBreaker:\"<br>\",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:\"cubic-out\",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:\"cubic-out\",uplift:5,wrapSpacer:\" \",wrapSplitCharacter:\" \",cn:{table:\"table\",tableControlView:\"table-control-view\",scrollBackground:\"scroll-background\",yColumn:\"y-column\",columnBlock:\"column-block\",scrollAreaClip:\"scroll-area-clip\",scrollAreaClipRect:\"scroll-area-clip-rect\",columnBoundary:\"column-boundary\",columnBoundaryClippath:\"column-boundary-clippath\",columnBoundaryRect:\"column-boundary-rect\",columnCells:\"column-cells\",columnCell:\"column-cell\",cellRect:\"cell-rect\",cellText:\"cell-text\",cellTextHolder:\"cell-text-holder\",scrollbarKit:\"scrollbar-kit\",scrollbar:\"scrollbar\",scrollbarSlider:\"scrollbar-slider\",scrollbarGlyph:\"scrollbar-glyph\",scrollbarCaptureZone:\"scrollbar-capture-zone\"}}},{}],1289:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"../../lib/extend\").extendFlat,i=t(\"fast-isnumeric\");function o(t){if(Array.isArray(t)){for(var e=0,r=0;r<t.length;r++)e=Math.max(e,o(t[r]));return e}return t}function s(t,e){return t+e}function l(t){var e,r=t.slice(),n=1/0,a=0;for(e=0;e<r.length;e++)Array.isArray(r[e])||(r[e]=[r[e]]),n=Math.min(n,r[e].length),a=Math.max(a,r[e].length);if(n!==a)for(e=0;e<r.length;e++){var i=a-r[e].length;i&&(r[e]=r[e].concat(c(i)))}return r}function c(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=\"\";return e}function u(t){return t.calcdata.columns.reduce((function(e,r){return r.xIndex<t.xIndex?e+r.columnWidth:e}),0)}function h(t,e){return Object.keys(t).map((function(r){return a({},t[r],{auxiliaryBlocks:e})}))}function f(t,e){for(var r,n={},a=0,i=0,o={firstRowIndex:null,lastRowIndex:null,rows:[]},s=0,l=0,c=0;c<t.length;c++)r=t[c],o.rows.push({rowIndex:c,rowHeight:r}),((i+=r)>=e||c===t.length-1)&&(n[a]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},a+=i,s=c+1,i=0);return n}e.exports=function(t,e){var r=l(e.cells.values),p=function(t){return t.slice(e.header.values.length,t.length)},d=l(e.header.values);d.length&&!d[0].length&&(d[0]=[\"\"],d=l(d));var g=d.concat(p(r).map((function(){return c((d[0]||[\"\"]).length)}))),m=e.domain,v=Math.floor(t._fullLayout._size.w*(m.x[1]-m.x[0])),y=Math.floor(t._fullLayout._size.h*(m.y[1]-m.y[0])),x=e.header.values.length?g[0].map((function(){return e.header.height})):[n.emptyHeaderHeight],b=r.length?r[0].map((function(){return e.cells.height})):[],_=x.reduce(s,0),w=f(b,y-_+n.uplift),T=h(f(x,_),[]),k=h(w,T),M={},A=e._fullInput.columnorder.concat(p(r.map((function(t,e){return e})))),S=g.map((function(t,r){var n=Array.isArray(e.columnwidth)?e.columnwidth[Math.min(r,e.columnwidth.length-1)]:e.columnwidth;return i(n)?Number(n):1})),E=S.reduce(s,0);S=S.map((function(t){return t/E*v}));var C=Math.max(o(e.header.line.width),o(e.cells.line.width)),L={key:e.uid+t._context.staticPlot,translateX:m.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-m.y[1]),size:t._fullLayout._size,width:v,maxLineWidth:C,height:y,columnOrder:A,groupHeight:y,rowBlocks:k,headerRowBlocks:T,scrollY:0,cells:a({},e.cells,{values:r}),headerCells:a({},e.header,{values:g}),gdColumns:g.map((function(t){return t[0]})),gdColumnsOriginalOrder:g.map((function(t){return t[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:g.map((function(t,e){var r=M[t];return M[t]=(r||0)+1,{key:t+\"__\"+M[t],label:t,specIndex:e,xIndex:A[e],xScale:u,x:void 0,calcdata:void 0,columnWidth:S[e]}}))};return L.columns.forEach((function(t){t.calcdata=L,t.x=u(t)})),L}},{\"../../lib/extend\":739,\"./constants\":1288,\"fast-isnumeric\":241}],1290:[function(t,e,r){\"use strict\";var n=t(\"../../lib/extend\").extendFlat;r.splitToPanels=function(t){var e=[0,0],r=n({},t,{key:\"header\",type:\"header\",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!0,values:t.calcdata.headerCells.values[t.specIndex],rowBlocks:t.calcdata.headerRowBlocks,calcdata:n({},t.calcdata,{cells:t.calcdata.headerCells})});return[n({},t,{key:\"cells1\",type:\"cells\",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),n({},t,{key:\"cells2\",type:\"cells\",page:1,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),r]},r.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],r=e?e.rows[0].rowIndex:0,n=e?r+e.rows.length:0;return[r,n]}(t);return(t.values||[]).slice(e[0],e[1]).map((function(r,n){return{keyWithinBlock:n+(\"string\"==typeof r&&r.match(/[<$&> ]/)?\"_keybuster_\"+Math.random():\"\"),key:e[0]+n,column:t,calcdata:t.calcdata,page:t.page,rowBlocks:t.rowBlocks,value:r}}))}},{\"../../lib/extend\":739}],1291:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../plots/domain\").defaults;e.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}i(e,o,s),s(\"columnwidth\"),s(\"header.values\"),s(\"header.format\"),s(\"header.align\"),s(\"header.prefix\"),s(\"header.suffix\"),s(\"header.height\"),s(\"header.line.width\"),s(\"header.line.color\"),s(\"header.fill.color\"),n.coerceFont(s,\"header.font\",n.extendFlat({},o.font)),function(t,e){for(var r=t.columnorder||[],n=t.header.values.length,a=r.slice(0,n),i=a.slice().sort((function(t,e){return t-e})),o=a.map((function(t){return i.indexOf(t)})),s=o.length;s<n;s++)o.push(s);e(\"columnorder\",o)}(e,s),s(\"cells.values\"),s(\"cells.format\"),s(\"cells.align\"),s(\"cells.prefix\"),s(\"cells.suffix\"),s(\"cells.height\"),s(\"cells.line.width\"),s(\"cells.line.color\"),s(\"cells.fill.color\"),n.coerceFont(s,\"cells.font\",n.extendFlat({},o.font)),e._length=null}},{\"../../lib\":749,\"../../plots/domain\":825,\"./attributes\":1285}],1292:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),moduleType:\"trace\",name:\"table\",basePlotModule:t(\"./base_plot\"),categories:[\"noOpacity\"],meta:{}}},{\"./attributes\":1285,\"./base_plot\":1286,\"./calc\":1287,\"./defaults\":1291,\"./plot\":1293}],1293:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"d3\"),i=t(\"../../lib/gup\"),o=t(\"../../components/drawing\"),s=t(\"../../lib/svg_text_utils\"),l=t(\"../../lib\").raiseToTop,c=t(\"../../lib\").cancelTransition,u=t(\"./data_preparation_helper\"),h=t(\"./data_split_helpers\"),f=t(\"../../components/color\");function p(t){return Math.ceil(t.calcdata.maxLineWidth/2)}function d(t,e){return\"clip\"+t._fullLayout._uid+\"_scrollAreaBottomClip_\"+e.key}function g(t,e){return\"clip\"+t._fullLayout._uid+\"_columnBoundaryClippath_\"+e.calcdata.key+\"_\"+e.specIndex}function m(t){return[].concat.apply([],t.map((function(t){return t}))).map((function(t){return t.__data__}))}function v(t,e,r){var o=t.selectAll(\".\"+n.cn.scrollbarKit).data(i.repeat,i.keyFun);o.enter().append(\"g\").classed(n.cn.scrollbarKit,!0).style(\"shape-rendering\",\"geometricPrecision\"),o.each((function(t){var e=t.scrollbarState;e.totalHeight=function(t){var e=t.rowBlocks;return z(e,e.length-1)+(e.length?O(e[e.length-1],1/0):1)}(t),e.scrollableAreaHeight=t.groupHeight-M(t),e.currentlyVisibleHeight=Math.min(e.totalHeight,e.scrollableAreaHeight),e.ratio=e.currentlyVisibleHeight/e.totalHeight,e.barLength=Math.max(e.ratio*e.currentlyVisibleHeight,n.goldenRatio*n.scrollbarWidth),e.barWiggleRoom=e.currentlyVisibleHeight-e.barLength,e.wiggleRoom=Math.max(0,e.totalHeight-e.scrollableAreaHeight),e.topY=0===e.barWiggleRoom?0:t.scrollY/e.wiggleRoom*e.barWiggleRoom,e.bottomY=e.topY+e.barLength,e.dragMultiplier=e.wiggleRoom/e.barWiggleRoom})).attr(\"transform\",(function(t){return\"translate(\"+(t.width+n.scrollbarWidth/2+n.scrollbarOffset)+\" \"+M(t)+\")\"}));var s=o.selectAll(\".\"+n.cn.scrollbar).data(i.repeat,i.keyFun);s.enter().append(\"g\").classed(n.cn.scrollbar,!0);var l=s.selectAll(\".\"+n.cn.scrollbarSlider).data(i.repeat,i.keyFun);l.enter().append(\"g\").classed(n.cn.scrollbarSlider,!0),l.attr(\"transform\",(function(t){return\"translate(0 \"+(t.scrollbarState.topY||0)+\")\"}));var c=l.selectAll(\".\"+n.cn.scrollbarGlyph).data(i.repeat,i.keyFun);c.enter().append(\"line\").classed(n.cn.scrollbarGlyph,!0).attr(\"stroke\",\"black\").attr(\"stroke-width\",n.scrollbarWidth).attr(\"stroke-linecap\",\"round\").attr(\"y1\",n.scrollbarWidth/2),c.attr(\"y2\",(function(t){return t.scrollbarState.barLength-n.scrollbarWidth/2})).attr(\"stroke-opacity\",(function(t){return t.columnDragInProgress||!t.scrollbarState.barWiggleRoom||r?0:.4})),c.transition().delay(0).duration(0),c.transition().delay(n.scrollbarHideDelay).duration(n.scrollbarHideDuration).attr(\"stroke-opacity\",0);var u=s.selectAll(\".\"+n.cn.scrollbarCaptureZone).data(i.repeat,i.keyFun);u.enter().append(\"line\").classed(n.cn.scrollbarCaptureZone,!0).attr(\"stroke\",\"white\").attr(\"stroke-opacity\",.01).attr(\"stroke-width\",n.scrollbarCaptureWidth).attr(\"stroke-linecap\",\"butt\").attr(\"y1\",0).on(\"mousedown\",(function(r){var n=a.event.y,i=this.getBoundingClientRect(),o=r.scrollbarState,s=n-i.top,l=a.scale.linear().domain([0,o.scrollableAreaHeight]).range([0,o.totalHeight]).clamp(!0);o.topY<=s&&s<=o.bottomY||S(e,t,null,l(s-o.barLength/2))(r)})).call(a.behavior.drag().origin((function(t){return a.event.stopPropagation(),t.scrollbarState.scrollbarScrollInProgress=!0,t})).on(\"drag\",S(e,t)).on(\"dragend\",(function(){}))),u.attr(\"y2\",(function(t){return t.scrollbarState.scrollableAreaHeight})),e._context.staticPlot&&(c.remove(),u.remove())}function y(t,e,r,s){var l=function(t){var e=t.selectAll(\".\"+n.cn.columnCell).data(h.splitToCells,(function(t){return t.keyWithinBlock}));return e.enter().append(\"g\").classed(n.cn.columnCell,!0),e.exit().remove(),e}(function(t){var e=t.selectAll(\".\"+n.cn.columnCells).data(i.repeat,i.keyFun);return e.enter().append(\"g\").classed(n.cn.columnCells,!0),e.exit().remove(),e}(r));!function(t){t.each((function(t,e){var r=t.calcdata.cells.font,n=t.column.specIndex,a={size:_(r.size,n,e),color:_(r.color,n,e),family:_(r.family,n,e)};t.rowNumber=t.key,t.align=_(t.calcdata.cells.align,n,e),t.cellBorderWidth=_(t.calcdata.cells.line.width,n,e),t.font=a}))}(l),function(t){t.attr(\"width\",(function(t){return t.column.columnWidth})).attr(\"stroke-width\",(function(t){return t.cellBorderWidth})).each((function(t){var e=a.select(this);f.stroke(e,_(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),f.fill(e,_(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))}))}(function(t){var e=t.selectAll(\".\"+n.cn.cellRect).data(i.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append(\"rect\").classed(n.cn.cellRect,!0),e}(l));var c=function(t){var e=t.selectAll(\".\"+n.cn.cellText).data(i.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append(\"text\").classed(n.cn.cellText,!0).style(\"cursor\",(function(){return\"auto\"})).on(\"mousedown\",(function(){a.event.stopPropagation()})),e}(function(t){var e=t.selectAll(\".\"+n.cn.cellTextHolder).data(i.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append(\"g\").classed(n.cn.cellTextHolder,!0).style(\"shape-rendering\",\"geometricPrecision\"),e}(l));!function(t){t.each((function(t){o.font(a.select(this),t.font)}))}(c),x(c,e,s,t),I(l)}function x(t,e,r,i){t.text((function(t){var e=t.column.specIndex,r=t.rowNumber,i=t.value,o=\"string\"==typeof i,s=o&&i.match(/<br>/i),l=!o||s;t.mayHaveMarkup=o&&i.match(/[<&>]/);var c,u=\"string\"==typeof(c=i)&&c.match(n.latexCheck);t.latex=u;var h,f,p=u?\"\":_(t.calcdata.cells.prefix,e,r)||\"\",d=u?\"\":_(t.calcdata.cells.suffix,e,r)||\"\",g=u?null:_(t.calcdata.cells.format,e,r)||null,m=p+(g?a.format(g)(t.value):t.value)+d;if(t.wrappingNeeded=!t.wrapped&&!l&&!u&&(h=b(m)),t.cellHeightMayIncrease=s||u||t.mayHaveMarkup||(void 0===h?b(m):h),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var v=(\" \"===n.wrapSplitCharacter?m.replace(/<a href=/gi,\"<a_href=\"):m).split(n.wrapSplitCharacter),y=\" \"===n.wrapSplitCharacter?v.map((function(t){return t.replace(/<a_href=/gi,\"<a href=\")})):v;t.fragments=y.map((function(t){return{text:t,width:null}})),t.fragments.push({fragment:n.wrapSpacer,width:null}),f=y.join(n.lineBreaker)+n.lineBreaker+n.wrapSpacer}else delete t.fragments,f=m;return f})).attr(\"dy\",(function(t){return t.needsConvertToTspans?0:\"0.75em\"})).each((function(t){var o=a.select(this),l=t.wrappingNeeded?C:L;t.needsConvertToTspans?s.convertToTspans(o,i,l(r,this,e,i,t)):a.select(this.parentNode).attr(\"transform\",(function(t){return\"translate(\"+P(t)+\" \"+n.cellPad+\")\"})).attr(\"text-anchor\",(function(t){return{left:\"start\",center:\"middle\",right:\"end\"}[t.align]}))}))}function b(t){return-1!==t.indexOf(n.wrapSplitCharacter)}function _(t,e,r){if(Array.isArray(t)){var n=t[Math.min(e,t.length-1)];return Array.isArray(n)?n[Math.min(r,n.length-1)]:n}return t}function w(t,e,r){t.transition().ease(n.releaseTransitionEase).duration(n.releaseTransitionDuration).attr(\"transform\",\"translate(\"+e.x+\" \"+r+\")\")}function T(t){return\"cells\"===t.type}function k(t){return\"header\"===t.type}function M(t){return(t.rowBlocks.length?t.rowBlocks[0].auxiliaryBlocks:[]).reduce((function(t,e){return t+O(e,1/0)}),0)}function A(t,e,r){var n=m(e)[0];if(void 0!==n){var a=n.rowBlocks,i=n.calcdata,o=z(a,a.length),s=n.calcdata.groupHeight-M(n),l=i.scrollY=Math.max(0,Math.min(o-s,i.scrollY)),c=function(t,e,r){for(var n=[],a=0,i=0;i<t.length;i++){for(var o=t[i],s=o.rows,l=0,c=0;c<s.length;c++)l+=s[c].rowHeight;o.allRowsHeight=l;e<a+l&&e+r>a&&n.push(i),a+=l}return n}(a,l,s);1===c.length&&(c[0]===a.length-1?c.unshift(c[0]-1):c.push(c[0]+1)),c[0]%2&&c.reverse(),e.each((function(t,e){t.page=c[e],t.scrollY=l})),e.attr(\"transform\",(function(t){return\"translate(0 \"+(z(t.rowBlocks,t.page)-t.scrollY)+\")\"})),t&&(E(t,r,e,c,n.prevPages,n,0),E(t,r,e,c,n.prevPages,n,1),v(r,t))}}function S(t,e,r,i){return function(o){var s=o.calcdata?o.calcdata:o,l=e.filter((function(t){return s.key===t.key})),c=r||s.scrollbarState.dragMultiplier,u=s.scrollY;s.scrollY=void 0===i?s.scrollY+c*a.event.dy:i;var h=l.selectAll(\".\"+n.cn.yColumn).selectAll(\".\"+n.cn.columnBlock).filter(T);return A(t,h,l),s.scrollY===u}}function E(t,e,r,n,a,i,o){n[o]!==a[o]&&(clearTimeout(i.currentRepaint[o]),i.currentRepaint[o]=setTimeout((function(){var i=r.filter((function(t,e){return e===o&&n[e]!==a[e]}));y(t,e,i,r),a[o]=n[o]})))}function C(t,e,r,i){return function(){var o=a.select(e.parentNode);o.each((function(t){var e=t.fragments;o.selectAll(\"tspan.line\").each((function(t,r){e[r].width=this.getComputedTextLength()}));var r,a,i=e[e.length-1].width,s=e.slice(0,-1),l=[],c=0,u=t.column.columnWidth-2*n.cellPad;for(t.value=\"\";s.length;)c+(a=(r=s.shift()).width+i)>u&&(t.value+=l.join(n.wrapSpacer)+n.lineBreaker,l=[],c=0),l.push(r.text),c+=a;c&&(t.value+=l.join(n.wrapSpacer)),t.wrapped=!0})),o.selectAll(\"tspan.line\").remove(),x(o.select(\".\"+n.cn.cellText),r,t,i),a.select(e.parentNode.parentNode).call(I)}}function L(t,e,r,i,o){return function(){if(!o.settledY){var s=a.select(e.parentNode),l=R(o),c=o.key-l.firstRowIndex,u=l.rows[c].rowHeight,h=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*n.cellPad:u,f=Math.max(h,u);f-l.rows[c].rowHeight&&(l.rows[c].rowHeight=f,t.selectAll(\".\"+n.cn.columnCell).call(I),A(null,t.filter(T),0),v(r,i,!0)),s.attr(\"transform\",(function(){var t=this.parentNode.getBoundingClientRect(),e=a.select(this.parentNode).select(\".\"+n.cn.cellRect).node().getBoundingClientRect(),r=this.transform.baseVal.consolidate(),i=e.top-t.top+(r?r.matrix.f:n.cellPad);return\"translate(\"+P(o,a.select(this.parentNode).select(\".\"+n.cn.cellTextHolder).node().getBoundingClientRect().width)+\" \"+i+\")\"})),o.settledY=!0}}}function P(t,e){switch(t.align){case\"left\":return n.cellPad;case\"right\":return t.column.columnWidth-(e||0)-n.cellPad;case\"center\":return(t.column.columnWidth-(e||0))/2;default:return n.cellPad}}function I(t){t.attr(\"transform\",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+O(e,1/0)}),0);return\"translate(0 \"+(O(R(t),t.key)+e)+\")\"})).selectAll(\".\"+n.cn.cellRect).attr(\"height\",(function(t){return(e=R(t),r=t.key,e.rows[r-e.firstRowIndex]).rowHeight;var e,r}))}function z(t,e){for(var r=0,n=e-1;n>=0;n--)r+=D(t[n]);return r}function O(t,e){for(var r=0,n=0;n<t.rows.length&&t.rows[n].rowIndex<e;n++)r+=t.rows[n].rowHeight;return r}function D(t){var e=t.allRowsHeight;if(void 0!==e)return e;for(var r=0,n=0;n<t.rows.length;n++)r+=t.rows[n].rowHeight;return t.allRowsHeight=r,r}function R(t){return t.rowBlocks[t.page]}e.exports=function(t,e){var r=!t._context.staticPlot,s=t._fullLayout._paper.selectAll(\".\"+n.cn.table).data(e.map((function(e){var r=i.unwrap(e).trace;return u(t,r)})),i.keyFun);s.exit().remove(),s.enter().append(\"g\").classed(n.cn.table,!0).attr(\"overflow\",\"visible\").style(\"box-sizing\",\"content-box\").style(\"position\",\"absolute\").style(\"left\",0).style(\"overflow\",\"visible\").style(\"shape-rendering\",\"crispEdges\").style(\"pointer-events\",\"all\"),s.attr(\"width\",(function(t){return t.width+t.size.l+t.size.r})).attr(\"height\",(function(t){return t.height+t.size.t+t.size.b})).attr(\"transform\",(function(t){return\"translate(\"+t.translateX+\",\"+t.translateY+\")\"}));var f=s.selectAll(\".\"+n.cn.tableControlView).data(i.repeat,i.keyFun),x=f.enter().append(\"g\").classed(n.cn.tableControlView,!0).style(\"box-sizing\",\"content-box\");if(r){var b=\"onwheel\"in document?\"wheel\":\"mousewheel\";x.on(\"mousemove\",(function(e){f.filter((function(t){return e===t})).call(v,t)})).on(b,(function(e){if(!e.scrollbarState.wheeling){e.scrollbarState.wheeling=!0;var r=e.scrollY+a.event.deltaY;S(t,f,null,r)(e)||(a.event.stopPropagation(),a.event.preventDefault()),e.scrollbarState.wheeling=!1}})).call(v,t,!0)}f.attr(\"transform\",(function(t){return\"translate(\"+t.size.l+\" \"+t.size.t+\")\"}));var _=f.selectAll(\".\"+n.cn.scrollBackground).data(i.repeat,i.keyFun);_.enter().append(\"rect\").classed(n.cn.scrollBackground,!0).attr(\"fill\",\"none\"),_.attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})),f.each((function(e){o.setClipUrl(a.select(this),d(t,e),t)}));var M=f.selectAll(\".\"+n.cn.yColumn).data((function(t){return t.columns}),i.keyFun);M.enter().append(\"g\").classed(n.cn.yColumn,!0),M.exit().remove(),M.attr(\"transform\",(function(t){return\"translate(\"+t.x+\" 0)\"})),r&&M.call(a.behavior.drag().origin((function(e){return w(a.select(this),e,-n.uplift),l(this),e.calcdata.columnDragInProgress=!0,v(f.filter((function(t){return e.calcdata.key===t.key})),t),e})).on(\"drag\",(function(t){var e=a.select(this),r=function(e){return(t===e?a.event.x:e.x)+e.columnWidth/2};t.x=Math.max(-n.overdrag,Math.min(t.calcdata.width+n.overdrag-t.columnWidth,a.event.x)),m(M).filter((function(e){return e.calcdata.key===t.calcdata.key})).sort((function(t,e){return r(t)-r(e)})).forEach((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e)})),M.filter((function(e){return t!==e})).transition().ease(n.transitionEase).duration(n.transitionDuration).attr(\"transform\",(function(t){return\"translate(\"+t.x+\" 0)\"})),e.call(c).attr(\"transform\",\"translate(\"+t.x+\" -\"+n.uplift+\" )\")})).on(\"dragend\",(function(e){var r=a.select(this),n=e.calcdata;e.x=e.xScale(e),e.calcdata.columnDragInProgress=!1,w(r,e,0),function(t,e,r){var n=e.gdColumnsOriginalOrder;e.gdColumns.sort((function(t,e){return r[n.indexOf(t)]-r[n.indexOf(e)]})),e.columnorder=r,t.emit(\"plotly_restyle\")}(t,n,n.columns.map((function(t){return t.xIndex})))}))),M.each((function(e){o.setClipUrl(a.select(this),g(t,e),t)}));var E=M.selectAll(\".\"+n.cn.columnBlock).data(h.splitToPanels,i.keyFun);E.enter().append(\"g\").classed(n.cn.columnBlock,!0).attr(\"id\",(function(t){return t.key})),E.style(\"cursor\",(function(t){return t.dragHandle?\"ew-resize\":t.calcdata.scrollbarState.barWiggleRoom?\"ns-resize\":\"default\"}));var C=E.filter(k),L=E.filter(T);r&&L.call(a.behavior.drag().origin((function(t){return a.event.stopPropagation(),t})).on(\"drag\",S(t,f,-1)).on(\"dragend\",(function(){}))),y(t,f,C,E),y(t,f,L,E);var P=f.selectAll(\".\"+n.cn.scrollAreaClip).data(i.repeat,i.keyFun);P.enter().append(\"clipPath\").classed(n.cn.scrollAreaClip,!0).attr(\"id\",(function(e){return d(t,e)}));var I=P.selectAll(\".\"+n.cn.scrollAreaClipRect).data(i.repeat,i.keyFun);I.enter().append(\"rect\").classed(n.cn.scrollAreaClipRect,!0).attr(\"x\",-n.overdrag).attr(\"y\",-n.uplift).attr(\"fill\",\"none\"),I.attr(\"width\",(function(t){return t.width+2*n.overdrag})).attr(\"height\",(function(t){return t.height+n.uplift})),M.selectAll(\".\"+n.cn.columnBoundary).data(i.repeat,i.keyFun).enter().append(\"g\").classed(n.cn.columnBoundary,!0);var z=M.selectAll(\".\"+n.cn.columnBoundaryClippath).data(i.repeat,i.keyFun);z.enter().append(\"clipPath\").classed(n.cn.columnBoundaryClippath,!0),z.attr(\"id\",(function(e){return g(t,e)}));var O=z.selectAll(\".\"+n.cn.columnBoundaryRect).data(i.repeat,i.keyFun);O.enter().append(\"rect\").classed(n.cn.columnBoundaryRect,!0).attr(\"fill\",\"none\"),O.attr(\"width\",(function(t){return t.columnWidth+2*p(t)})).attr(\"height\",(function(t){return t.calcdata.height+2*p(t)+n.uplift})).attr(\"x\",(function(t){return-p(t)})).attr(\"y\",(function(t){return-p(t)})),A(null,L,f)}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/gup\":746,\"../../lib/svg_text_utils\":773,\"./constants\":1288,\"./data_preparation_helper\":1289,\"./data_split_helpers\":1290,d3:169}],1294:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../plots/template_attributes\").texttemplateAttrs,i=t(\"../../components/colorscale/attributes\"),o=t(\"../../plots/domain\").attributes,s=t(\"../pie/attributes\"),l=t(\"../sunburst/attributes\"),c=t(\"./constants\"),u=t(\"../../lib/extend\").extendFlat;e.exports={labels:l.labels,parents:l.parents,values:l.values,branchvalues:l.branchvalues,count:l.count,level:l.level,maxdepth:l.maxdepth,tiling:{packing:{valType:\"enumerated\",values:[\"squarify\",\"binary\",\"dice\",\"slice\",\"slice-dice\",\"dice-slice\"],dflt:\"squarify\",editType:\"plot\"},squarifyratio:{valType:\"number\",min:1,dflt:1,editType:\"plot\"},flip:{valType:\"flaglist\",flags:[\"x\",\"y\"],dflt:\"\",editType:\"plot\"},pad:{valType:\"number\",min:0,dflt:3,editType:\"plot\"},editType:\"calc\"},marker:u({pad:{t:{valType:\"number\",min:0,editType:\"plot\"},l:{valType:\"number\",min:0,editType:\"plot\"},r:{valType:\"number\",min:0,editType:\"plot\"},b:{valType:\"number\",min:0,editType:\"plot\"},editType:\"calc\"},colors:l.marker.colors,depthfade:{valType:\"enumerated\",values:[!0,!1,\"reversed\"],editType:\"style\"},line:l.marker.line,editType:\"calc\"},i(\"marker\",{colorAttr:\"colors\",anim:!1})),pathbar:{visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},side:{valType:\"enumerated\",values:[\"top\",\"bottom\"],dflt:\"top\",editType:\"plot\"},edgeshape:{valType:\"enumerated\",values:[\">\",\"<\",\"|\",\"/\",\"\\\\\"],dflt:\">\",editType:\"plot\"},thickness:{valType:\"number\",min:12,editType:\"plot\"},textfont:u({},s.textfont,{}),editType:\"calc\"},text:s.text,textinfo:l.textinfo,texttemplate:a({editType:\"plot\"},{keys:c.eventDataKeys.concat([\"label\",\"value\"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:n({},{keys:c.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:u({},s.outsidetextfont,{}),textposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle left\",\"middle center\",\"middle right\",\"bottom left\",\"bottom center\",\"bottom right\"],dflt:\"top left\",editType:\"plot\"},sort:s.sort,domain:o({name:\"treemap\",trace:!0,editType:\"calc\"})}},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plots/domain\":825,\"../../plots/template_attributes\":876,\"../pie/attributes\":1130,\"../sunburst/attributes\":1268,\"./constants\":1297}],1295:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"treemap\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":861}],1296:[function(t,e,r){\"use strict\";var n=t(\"../sunburst/calc\");r.calc=function(t,e){return n.calc(t,e)},r.crossTraceCalc=function(t){return n._runCrossTraceCalc(\"treemap\",t)}},{\"../sunburst/calc\":1270}],1297:[function(t,e,r){\"use strict\";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:\"poly\",eventDataKeys:[\"currentPath\",\"root\",\"entry\",\"percentRoot\",\"percentEntry\",\"percentParent\"],gapWithPathbar:1}},{}],1298:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../components/color\"),o=t(\"../../plots/domain\").defaults,s=t(\"../bar/defaults\").handleText,l=t(\"../bar/constants\").TEXTPAD,c=t(\"../../components/colorscale\"),u=c.hasColorscale,h=c.handleDefaults;e.exports=function(t,e,r,c){function f(r,i){return n.coerce(t,e,a,r,i)}var p=f(\"labels\"),d=f(\"parents\");if(p&&p.length&&d&&d.length){var g=f(\"values\");g&&g.length?f(\"branchvalues\"):f(\"count\"),f(\"level\"),f(\"maxdepth\"),\"squarify\"===f(\"tiling.packing\")&&f(\"tiling.squarifyratio\"),f(\"tiling.flip\"),f(\"tiling.pad\");var m=f(\"text\");f(\"texttemplate\"),e.texttemplate||f(\"textinfo\",Array.isArray(m)?\"text+label\":\"label\"),f(\"hovertext\"),f(\"hovertemplate\");var v=f(\"pathbar.visible\");s(t,e,c,f,\"auto\",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),f(\"textposition\");var y=-1!==e.textposition.indexOf(\"bottom\");f(\"marker.line.width\")&&f(\"marker.line.color\",c.paper_bgcolor);var x=f(\"marker.colors\"),b=e._hasColorscale=u(t,\"marker\",\"colors\")||(t.marker||{}).coloraxis;b?h(t,e,c,f,{prefix:\"marker.\",cLetter:\"c\"}):f(\"marker.depthfade\",!(x||[]).length);var _=2*e.textfont.size;f(\"marker.pad.t\",y?_/4:_),f(\"marker.pad.l\",_/4),f(\"marker.pad.r\",_/4),f(\"marker.pad.b\",y?_:_/4),b&&h(t,e,c,f,{prefix:\"marker.\",cLetter:\"c\"}),e._hovered={marker:{line:{width:2,color:i.contrast(c.paper_bgcolor)}}},v&&(f(\"pathbar.thickness\",e.pathbar.textfont.size+2*l),f(\"pathbar.side\"),f(\"pathbar.edgeshape\")),f(\"sort\"),o(e,c,f),e._length=null}else e.visible=!1}},{\"../../components/color\":615,\"../../components/colorscale\":627,\"../../lib\":749,\"../../plots/domain\":825,\"../bar/constants\":893,\"../bar/defaults\":895,\"./attributes\":1294}],1299:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"./partition\"),l=t(\"./style\").styleOne,c=t(\"./constants\"),u=t(\"../sunburst/helpers\"),h=t(\"../sunburst/fx\");e.exports=function(t,e,r,f,p){var d=p.barDifY,g=p.width,m=p.height,v=p.viewX,y=p.viewY,x=p.pathSlice,b=p.toMoveInsideSlice,_=p.strTransform,w=p.hasTransition,T=p.handleSlicesExit,k=p.makeUpdateSliceInterpolator,M=p.makeUpdateTextInterpolator,A={},S=t._fullLayout,E=e[0],C=E.trace,L=E.hierarchy,P=g/C._entryDepth,I=u.listPath(r.data,\"id\"),z=s(L.copy(),[g,m],{packing:\"dice\",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(z=z.filter((function(t){var e=I.indexOf(t.data.id);return-1!==e&&(t.x0=P*e,t.x1=P*(e+1),t.y0=d,t.y1=d+m,t.onPathbar=!0,!0)}))).reverse(),(f=f.data(z,u.getPtId)).enter().append(\"g\").classed(\"pathbar\",!0),T(f,!0,A,[g,m],x),f.order();var O=f;w&&(O=O.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),O.each((function(s){s._hoverX=v(s.x1-Math.min(g,m)/2),s._hoverY=y(s.y1-m/2);var f=n.select(this),p=a.ensureSingle(f,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",\"all\")}));w?p.transition().attrTween(\"d\",(function(t){var e=k(t,!0,A,[g,m]);return function(t){return x(e(t))}})):p.attr(\"d\",x),f.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),p.call(l,s,C,{hovered:!1}),s._text=(u.getPtLabel(s)||\"\").split(\"<br>\").join(\" \")||\"\";var d=a.ensureSingle(f,\"g\",\"slicetext\"),T=a.ensureSingle(d,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),E=a.ensureUniformFontSize(t,u.determineTextFont(C,s,S.font,{onPathbar:!0}));T.text(s._text||\" \").classed(\"slicetext\",!0).attr(\"text-anchor\",\"start\").call(i.font,E).call(o.convertToTspans,t),s.textBB=i.bBox(T.node()),s.transform=b(s,{fontSize:E.size,onPathbar:!0}),s.transform.fontSize=E.size,w?T.transition().attrTween(\"transform\",(function(t){var e=M(t,!0,A,[g,m]);return function(t){return _(e(t))}})):T.attr(\"transform\",_(s))}))}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../sunburst/fx\":1273,\"../sunburst/helpers\":1274,\"./constants\":1297,\"./partition\":1304,\"./style\":1306,d3:169}],1300:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"./partition\"),l=t(\"./style\").styleOne,c=t(\"./constants\"),u=t(\"../sunburst/helpers\"),h=t(\"../sunburst/fx\"),f=t(\"../sunburst/plot\").formatSliceLabel;e.exports=function(t,e,r,p,d){var g=d.width,m=d.height,v=d.viewX,y=d.viewY,x=d.pathSlice,b=d.toMoveInsideSlice,_=d.strTransform,w=d.hasTransition,T=d.handleSlicesExit,k=d.makeUpdateSliceInterpolator,M=d.makeUpdateTextInterpolator,A=d.prevEntry,S=t._fullLayout,E=e[0].trace,C=-1!==E.textposition.indexOf(\"left\"),L=-1!==E.textposition.indexOf(\"right\"),P=-1!==E.textposition.indexOf(\"bottom\"),I=!P&&!E.marker.pad.t||P&&!E.marker.pad.b,z=s(r,[g,m],{packing:E.tiling.packing,squarifyratio:E.tiling.squarifyratio,flipX:E.tiling.flip.indexOf(\"x\")>-1,flipY:E.tiling.flip.indexOf(\"y\")>-1,pad:{inner:E.tiling.pad,top:E.marker.pad.t,left:E.marker.pad.l,right:E.marker.pad.r,bottom:E.marker.pad.b}}).descendants(),O=1/0,D=-1/0;z.forEach((function(t){var e=t.depth;e>=E._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(O=Math.min(O,e),D=Math.max(D,e))})),p=p.data(z,u.getPtId),E._maxVisibleLayers=isFinite(D)?D-O+1:0,p.enter().append(\"g\").classed(\"slice\",!0),T(p,!1,{},[g,m],x),p.order();var R=null;if(w&&A){var F=u.getPtId(A);p.each((function(t){null===R&&u.getPtId(t)===F&&(R={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var B=function(){return R||{x0:0,x1:g,y0:0,y1:m}},N=p;return w&&(N=N.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),N.each((function(s){var p=u.isHeader(s,E);s._hoverX=v(s.x1-E.marker.pad.r),s._hoverY=y(P?s.y1-E.marker.pad.b/2:s.y0+E.marker.pad.t/2);var d=n.select(this),T=a.ensureSingle(d,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",\"all\")}));w?T.transition().attrTween(\"d\",(function(t){var e=k(t,!1,B(),[g,m]);return function(t){return x(e(t))}})):T.attr(\"d\",x),d.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),T.call(l,s,E,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text=\"\":s._text=p?I?\"\":u.getPtLabel(s)||\"\":f(s,r,E,e,S)||\"\";var A=a.ensureSingle(d,\"g\",\"slicetext\"),z=a.ensureSingle(A,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),O=a.ensureUniformFontSize(t,u.determineTextFont(E,s,S.font));z.text(s._text||\" \").classed(\"slicetext\",!0).attr(\"text-anchor\",L?\"end\":C||p?\"start\":\"middle\").call(i.font,O).call(o.convertToTspans,t),s.textBB=i.bBox(z.node()),s.transform=b(s,{fontSize:O.size,isHeader:p}),s.transform.fontSize=O.size,w?z.transition().attrTween(\"transform\",(function(t){var e=M(t,!1,B(),[g,m]);return function(t){return _(e(t))}})):z.attr(\"transform\",_(s))})),R}},{\"../../components/drawing\":637,\"../../lib\":749,\"../../lib/svg_text_utils\":773,\"../sunburst/fx\":1273,\"../sunburst/helpers\":1274,\"../sunburst/plot\":1278,\"./constants\":1297,\"./partition\":1304,\"./style\":1306,d3:169}],1301:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"treemap\",basePlotModule:t(\"./base_plot\"),categories:[],animatable:!0,attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\"),style:t(\"./style\").style,colorbar:t(\"../scatter/marker_colorbar\"),meta:{}}},{\"../scatter/marker_colorbar\":1174,\"./attributes\":1294,\"./base_plot\":1295,\"./calc\":1296,\"./defaults\":1298,\"./layout_attributes\":1302,\"./layout_defaults\":1303,\"./plot\":1305,\"./style\":1306}],1302:[function(t,e,r){\"use strict\";e.exports={treemapcolorway:{valType:\"colorlist\",editType:\"calc\"},extendtreemapcolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{}],1303:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"treemapcolorway\",e.colorway),r(\"extendtreemapcolors\")}},{\"../../lib\":749,\"./layout_attributes\":1302}],1304:[function(t,e,r){\"use strict\";var n=t(\"d3-hierarchy\");e.exports=function(t,e,r){var a,i=r.flipX,o=r.flipY,s=\"dice-slice\"===r.packing,l=r.pad[o?\"bottom\":\"top\"],c=r.pad[i?\"right\":\"left\"],u=r.pad[i?\"left\":\"right\"],h=r.pad[o?\"top\":\"bottom\"];s&&(a=c,c=l,l=a,a=u,u=h,h=a);var f=n.treemap().tile(function(t,e){switch(t){case\"squarify\":return n.treemapSquarify.ratio(e);case\"binary\":return n.treemapBinary;case\"dice\":return n.treemapDice;case\"slice\":return n.treemapSlice;default:return n.treemapSliceDice}}(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(c).paddingRight(u).paddingTop(l).paddingBottom(h).size(s?[e[1],e[0]]:e)(t);return(s||i||o)&&function t(e,r,n){var a;n.swapXY&&(a=e.x0,e.x0=e.y0,e.y0=a,a=e.x1,e.x1=e.y1,e.y1=a);n.flipX&&(a=e.x0,e.x0=r[0]-e.x1,e.x1=r[0]-a);n.flipY&&(a=e.y0,e.y0=r[1]-e.y1,e.y1=r[1]-a);var i=e.children;if(i)for(var o=0;o<i.length;o++)t(i[o],r,n)}(f,e,{swapXY:s,flipX:i,flipY:o}),f}},{\"d3-hierarchy\":161}],1305:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../sunburst/helpers\"),i=t(\"../../lib\"),o=t(\"../bar/constants\").TEXTPAD,s=t(\"../bar/plot\").toMoveInsideBar,l=t(\"../bar/uniform_text\"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t(\"../bar/style\").resizeText,f=t(\"./constants\"),p=t(\"./draw_descendants\"),d=t(\"./draw_ancestors\");function g(t){return a.isHierarchyRoot(t)?\"\":a.getPtId(t)}function m(t,e,r,l){var u=t._fullLayout,h=e[0],m=h.trace,v=h.hierarchy,y=a.findEntryWithLevel(v,m.level),x=n.select(r),b=x.selectAll(\"g.pathbar\"),_=x.selectAll(\"g.slice\");if(!y)return b.remove(),void _.remove();var w=a.isHierarchyRoot(y),T=!u.uniformtext.mode&&a.hasTransition(l),k=a.getMaxDepth(m),M=u._size,A=m.domain,S=M.w*(A.x[1]-A.x[0]),E=M.h*(A.y[1]-A.y[0]),C=S,L=m.pathbar.thickness,P=m.marker.line.width+f.gapWithPathbar,I=m.pathbar.visible?m.pathbar.side.indexOf(\"bottom\")>-1?E+P:-(L+P):0,z={x0:C,x1:C,y0:I,y1:I+L},O=function(t,e,r){var n=m.tiling.pad,a=function(t){return t-n<=e.x0},i=function(t){return t+n>=e.x1},o=function(t){return t-n<=e.y0},s=function(t){return t+n>=e.y1};return{x0:a(t.x0-n)?0:i(t.x0-n)?r[0]:t.x0,x1:a(t.x1+n)?0:i(t.x1+n)?r[0]:t.x1,y0:o(t.y0-n)?0:s(t.y0-n)?r[1]:t.y0,y1:o(t.y1+n)?0:s(t.y1+n)?r[1]:t.y1}},D=null,R={},F={},B=null,N=function(t,e){return e?R[g(t)]:F[g(t)]},j=function(t,e,r,n){if(e)return R[g(v)]||z;var a=F[m.level]||r;return function(t){return t.data.depth-y.data.depth<k}(t)?O(t,a,n):{}};h.hasMultipleRoots&&w&&k++,m._maxDepth=k,m._backgroundColor=u.paper_bgcolor,m._entryDepth=y.data.depth,m._atRootLevel=w;var U=-S/2+M.l+M.w*(A.x[1]+A.x[0])/2,V=-E/2+M.t+M.h*(1-(A.y[1]+A.y[0])/2),q=function(t){return U+t},H=function(t){return V+t},G=H(0),Y=q(0),W=function(t){return Y+t},Z=function(t){return G+t};function X(t,e){return t+\",\"+e}var J=W(0),K=function(t){t.x=Math.max(J,t.x)},Q=m.pathbar.edgeshape,$=function(t,e){var r=t.x0,n=t.x1,a=t.y0,i=t.y1,l=t.textBB,h=function(t){return-1!==m.textposition.indexOf(t)},f=h(\"bottom\"),p=h(\"top\")||e.isHeader&&!f?\"start\":f?\"end\":\"middle\",d=h(\"right\"),g=h(\"left\")||e.onPathbar?-1:d?1:0,v=m.marker.pad;if(e.isHeader){if((r+=v.l-o)>=(n-=v.r-o)){var y=(r+n)/2;r=y,n=y}var x;f?a<(x=i-v.b)&&x<i&&(a=x):a<(x=a+v.t)&&x<i&&(i=x)}var b=s(r,n,a,i,l,{isHorizontal:!1,constrained:!0,angle:0,anchor:p,leftToRight:g});return b.fontSize=e.fontSize,b.targetX=q(b.targetX),b.targetY=H(b.targetY),isNaN(b.targetX)||isNaN(b.targetY)?{}:(r!==n&&a!==i&&c(m.type,b,u),{scale:b.scale,rotate:b.rotate,textX:b.textX,textY:b.textY,anchorX:b.anchorX,anchorY:b.anchorY,targetX:b.targetX,targetY:b.targetY})},tt=function(t,e){for(var r,n=0,a=t;!r&&n<k;)n++,(a=a.parent)?r=N(a,e):n=k;return r||{}},et=function(t,e,r,a){var o,s=N(t,e);if(s)o=s;else if(e)o=z;else if(D)if(t.parent){var l=B||r;l&&!e?o=O(t,l,a):(o={},i.extendFlat(o,tt(t,e)))}else o=t;else o={};return n.interpolate(o,{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})},rt=function(t,e,r,o){var s=N(t,e),l={},h=j(t,e,r,o);i.extendFlat(l,{transform:$({x0:h.x0,x1:h.x1,y0:h.y0,y1:h.y1,textBB:t.textBB,_text:t._text},{isHeader:a.isHeader(t,m)})}),s?l=s:t.parent&&i.extendFlat(l,tt(t,e));var f=t.transform;return t.x0!==t.x1&&t.y0!==t.y1&&c(m.type,f,u),n.interpolate(l,{transform:{scale:f.scale,rotate:f.rotate,textX:f.textX,textY:f.textY,anchorX:f.anchorX,anchorY:f.anchorY,targetX:f.targetX,targetY:f.targetY}})},nt=function(t,e,r,a,i){var o=a[0],s=a[1];T?t.exit().transition().each((function(){var t=n.select(this);t.select(\"path.surface\").transition().attrTween(\"d\",(function(t){var r=function(t,e,r,a){var i,o=N(t,e);if(e)i=z;else{var s=N(y,e);i=s?O(t,s,a):{}}return n.interpolate(o,i)}(t,e,0,[o,s]);return function(t){return i(r(t))}})),t.select(\"g.slicetext\").attr(\"opacity\",0)})).remove():t.exit().remove()},at=function(t){var e=t.transform;return t.x0!==t.x1&&t.y0!==t.y1&&c(m.type,e,u),i.getTextTransform({textX:e.textX,textY:e.textY,anchorX:e.anchorX,anchorY:e.anchorY,targetX:e.targetX,targetY:e.targetY,scale:e.scale,rotate:e.rotate})};T&&(b.each((function(t){R[g(t)]={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1},t.transform&&(R[g(t)].transform={textX:t.transform.textX,textY:t.transform.textY,anchorX:t.transform.anchorX,anchorY:t.transform.anchorY,targetX:t.transform.targetX,targetY:t.transform.targetY,scale:t.transform.scale,rotate:t.transform.rotate})})),_.each((function(t){F[g(t)]={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1},t.transform&&(F[g(t)].transform={textX:t.transform.textX,textY:t.transform.textY,anchorX:t.transform.anchorX,anchorY:t.transform.anchorY,targetX:t.transform.targetX,targetY:t.transform.targetY,scale:t.transform.scale,rotate:t.transform.rotate}),!D&&a.isEntry(t)&&(D=t)}))),B=p(t,e,y,_,{width:S,height:E,viewX:q,viewY:H,pathSlice:function(t){var e=q(t.x0),r=q(t.x1),n=H(t.y0),a=H(t.y1),i=r-e,o=a-n;if(!i||!o)return\"\";return\"M\"+X(e,n+0)+\"L\"+X(r-0,n)+\"L\"+X(r,a-0)+\"L\"+X(e+0,a)+\"Z\"},toMoveInsideSlice:$,prevEntry:D,makeUpdateSliceInterpolator:et,makeUpdateTextInterpolator:rt,handleSlicesExit:nt,hasTransition:T,strTransform:at}),m.pathbar.visible?d(t,e,y,b,{barDifY:I,width:C,height:L,viewX:W,viewY:Z,pathSlice:function(t){var e=W(Math.max(Math.min(t.x0,t.x0),0)),r=W(Math.min(Math.max(t.x1,t.x1),C)),n=Z(t.y0),a=Z(t.y1),i=L/2,o={},s={};o.x=e,s.x=r,o.y=s.y=(n+a)/2;var l={x:e,y:n},c={x:r,y:n},u={x:r,y:a},h={x:e,y:a};return\">\"===Q?(l.x-=i,c.x-=i,u.x-=i,h.x-=i):\"/\"===Q?(u.x-=i,h.x-=i,o.x-=i/2,s.x-=i/2):\"\\\\\"===Q?(l.x-=i,c.x-=i,o.x-=i/2,s.x-=i/2):\"<\"===Q&&(o.x-=i,s.x-=i),K(l),K(h),K(o),K(c),K(u),K(s),\"M\"+X(l.x,l.y)+\"L\"+X(c.x,c.y)+\"L\"+X(s.x,s.y)+\"L\"+X(u.x,u.y)+\"L\"+X(h.x,h.y)+\"L\"+X(o.x,o.y)+\"Z\"},toMoveInsideSlice:$,makeUpdateSliceInterpolator:et,makeUpdateTextInterpolator:rt,handleSlicesExit:nt,hasTransition:T,strTransform:at}):b.remove()}e.exports=function(t,e,r,i){var o,s,l=t._fullLayout,c=l._treemaplayer,f=!r;(u(\"treemap\",l),(o=c.selectAll(\"g.trace.treemap\").data(e,(function(t){return t[0].trace.uid}))).enter().append(\"g\").classed(\"trace\",!0).classed(\"treemap\",!0),o.order(),!l.uniformtext.mode&&a.hasTransition(r))?(i&&(s=i()),n.transition().duration(r.duration).ease(r.easing).each(\"end\",(function(){s&&s()})).each(\"interrupt\",(function(){s&&s()})).each((function(){c.selectAll(\"g.trace\").each((function(e){m(t,e,this,r)}))}))):(o.each((function(e){m(t,e,this,r)})),l.uniformtext.mode&&h(t,l._treemaplayer.selectAll(\".trace\"),\"treemap\"));f&&o.exit().remove()}},{\"../../lib\":749,\"../bar/constants\":893,\"../bar/plot\":902,\"../bar/style\":905,\"../bar/uniform_text\":907,\"../sunburst/helpers\":1274,\"./constants\":1297,\"./draw_ancestors\":1299,\"./draw_descendants\":1300,d3:169}],1306:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../lib\"),o=t(\"../sunburst/helpers\"),s=t(\"../bar/uniform_text\").resizeText;function l(t,e,r,n){var s,l,c=(n||{}).hovered,u=e.data.data,h=u.i,f=u.color,p=o.isHierarchyRoot(e),d=1;if(c)s=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(p&&\"rgba(0,0,0,0)\"===f)d=0,s=\"rgba(0,0,0,0)\",l=0;else if(s=i.castOption(r,h,\"marker.line.color\")||a.defaultLine,l=i.castOption(r,h,\"marker.line.width\")||0,!r._hasColorscale&&!e.onPathbar){var g=r.marker.depthfade;if(g){var m,v=a.combine(a.addOpacity(r._backgroundColor,.75),f);if(!0===g){var y=o.getMaxDepth(r);m=isFinite(y)?o.isLeaf(e)?0:r._maxVisibleLayers-(e.data.depth-r._entryDepth):e.data.height+1}else m=e.data.depth-r._entryDepth,r._atRootLevel||m++;if(m>0)for(var x=0;x<m;x++){var b=.5*x/m;f=a.combine(a.addOpacity(v,b),f)}}}t.style(\"stroke-width\",l).call(a.fill,f).call(a.stroke,s).style(\"opacity\",d)}e.exports={style:function(t){var e=t._fullLayout._treemaplayer.selectAll(\".trace\");s(t,e,\"treemap\"),e.each((function(t){var e=n.select(this),r=t[0].trace;e.style(\"opacity\",r.opacity),e.selectAll(\"path.surface\").each((function(t){n.select(this).call(l,t,r,{hovered:!1})}))}))},styleOne:l}},{\"../../components/color\":615,\"../../lib\":749,\"../bar/uniform_text\":907,\"../sunburst/helpers\":1274,d3:169}],1307:[function(t,e,r){\"use strict\";var n=t(\"../box/attributes\"),a=t(\"../../lib/extend\").extendFlat;e.exports={y:n.y,x:n.x,x0:n.x0,y0:n.y0,name:a({},n.name,{}),orientation:a({},n.orientation,{}),bandwidth:{valType:\"number\",min:0,editType:\"calc\"},scalegroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},scalemode:{valType:\"enumerated\",values:[\"width\",\"count\"],dflt:\"width\",editType:\"calc\"},spanmode:{valType:\"enumerated\",values:[\"soft\",\"hard\",\"manual\"],dflt:\"soft\",editType:\"calc\"},span:{valType:\"info_array\",items:[{valType:\"any\",editType:\"calc\"},{valType:\"any\",editType:\"calc\"}],editType:\"calc\"},line:{color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,dflt:2,editType:\"style\"},editType:\"plot\"},fillcolor:n.fillcolor,points:a({},n.boxpoints,{}),jitter:a({},n.jitter,{}),pointpos:a({},n.pointpos,{}),width:a({},n.width,{}),marker:n.marker,text:n.text,hovertext:n.hovertext,hovertemplate:n.hovertemplate,box:{visible:{valType:\"boolean\",dflt:!1,editType:\"plot\"},width:{valType:\"number\",min:0,max:1,dflt:.25,editType:\"plot\"},fillcolor:{valType:\"color\",editType:\"style\"},line:{color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,editType:\"style\"},editType:\"style\"},editType:\"plot\"},meanline:{visible:{valType:\"boolean\",dflt:!1,editType:\"plot\"},color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,editType:\"style\"},editType:\"plot\"},side:{valType:\"enumerated\",values:[\"both\",\"positive\",\"negative\"],dflt:\"both\",editType:\"calc\"},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:n.selected,unselected:n.unselected,hoveron:{valType:\"flaglist\",flags:[\"violins\",\"points\",\"kde\"],dflt:\"violins+points+kde\",extras:[\"all\"],editType:\"style\"}}},{\"../../lib/extend\":739,\"../box/attributes\":916}],1308:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../box/calc\"),o=t(\"./helpers\"),s=t(\"../../constants/numerical\").BADNUM;function l(t,e,r){var a=e.max-e.min;if(!a)return t.bandwidth?t.bandwidth:0;if(t.bandwidth)return Math.max(t.bandwidth,a/1e4);var i=r.length,o=n.stdev(r,i-1,e.mean);return Math.max(function(t,e,r){return 1.059*Math.min(e,r/1.349)*Math.pow(t,-.2)}(i,o,e.q3-e.q1),a/100)}function c(t,e,r,n){var i,o=t.spanmode,l=t.span||[],c=[e.min,e.max],u=[e.min-2*n,e.max+2*n];function h(n){var a=l[n],i=\"multicategory\"===r.type?r.r2c(a):r.d2c(a,0,t[e.valLetter+\"calendar\"]);return i===s?u[n]:i}var f={type:\"linear\",range:i=\"soft\"===o?u:\"hard\"===o?c:[h(0),h(1)]};return a.setConvert(f),f.cleanRange(),i}e.exports=function(t,e){var r=i(t,e);if(r[0].t.empty)return r;for(var s=t._fullLayout,u=a.getFromId(t,e[\"h\"===e.orientation?\"xaxis\":\"yaxis\"]),h=1/0,f=-1/0,p=0,d=0,g=0;g<r.length;g++){var m=r[g],v=m.pts.map(o.extractVal),y=m.bandwidth=l(e,m,v),x=m.span=c(e,m,u,y);if(m.min===m.max&&0===y)x=m.span=[m.min,m.max],m.density=[{v:1,t:x[0]}],m.bandwidth=y,p=Math.max(p,1);else{var b=x[1]-x[0],_=Math.ceil(b/(y/3)),w=b/_;if(!isFinite(w)||!isFinite(_))return n.error(\"Something went wrong with computing the violin span\"),r[0].t.empty=!0,r;var T=o.makeKDE(m,e,v);m.density=new Array(_);for(var k=0,M=x[0];M<x[1]+w/2;k++,M+=w){var A=T(M);m.density[k]={v:A,t:M},p=Math.max(p,A)}}d=Math.max(d,v.length),h=Math.min(h,x[0]),f=Math.max(f,x[1])}var S=a.findExtremes(u,[h,f],{padded:!0});if(e._extremes[u._id]=S,e.width)r[0].t.maxKDE=p;else{var E=s._violinScaleGroupStats,C=e.scalegroup,L=E[C];L?(L.maxKDE=Math.max(L.maxKDE,p),L.maxCount=Math.max(L.maxCount,d)):E[C]={maxKDE:p,maxCount:d}}return r[0].t.labels.kde=n._(t,\"kde:\"),r}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../box/calc\":917,\"./helpers\":1311}],1309:[function(t,e,r){\"use strict\";var n=t(\"../box/cross_trace_calc\").setPositionOffset,a=[\"v\",\"h\"];e.exports=function(t,e){for(var r=t.calcdata,i=e.xaxis,o=e.yaxis,s=0;s<a.length;s++){for(var l=a[s],c=\"h\"===l?o:i,u=[],h=0;h<r.length;h++){var f=r[h],p=f[0].t,d=f[0].trace;!0!==d.visible||\"violin\"!==d.type||p.empty||d.orientation!==l||d.xaxis!==i._id||d.yaxis!==o._id||u.push(h)}n(\"violin\",t,u,c)}}},{\"../box/cross_trace_calc\":918}],1310:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../box/defaults\"),o=t(\"./attributes\");e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,o,r,a)}function c(r,a){return n.coerce2(t,e,o,r,a)}if(i.handleSampleDefaults(t,e,l,s),!1!==e.visible){l(\"bandwidth\"),l(\"side\"),l(\"width\")||(l(\"scalegroup\",e.name),l(\"scalemode\"));var u,h=l(\"span\");Array.isArray(h)&&(u=\"manual\"),l(\"spanmode\",u);var f=l(\"line.color\",(t.marker||{}).color||r),p=l(\"line.width\"),d=l(\"fillcolor\",a.addOpacity(e.line.color,.5));i.handlePointsDefaults(t,e,l,{prefix:\"\"});var g=c(\"box.width\"),m=c(\"box.fillcolor\",d),v=c(\"box.line.color\",f),y=c(\"box.line.width\",p);l(\"box.visible\",Boolean(g||m||v||y))||(e.box={visible:!1});var x=c(\"meanline.color\",f),b=c(\"meanline.width\",p);l(\"meanline.visible\",Boolean(x||b))||(e.meanline={visible:!1})}}},{\"../../components/color\":615,\"../../lib\":749,\"../box/defaults\":919,\"./attributes\":1307}],1311:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=function(t){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*t*t)};r.makeKDE=function(t,e,r){var n=r.length,i=a,o=t.bandwidth,s=1/(n*o);return function(t){for(var e=0,a=0;a<n;a++)e+=i((t-r[a])/o);return s*e}},r.getPositionOnKdePath=function(t,e,r){var a,i;\"h\"===e.orientation?(a=\"y\",i=\"x\"):(a=\"x\",i=\"y\");var o=n.findPointOnPath(t.path,r,i,{pathLength:t.pathLength}),s=t.posCenterPx,l=o[a];return[l,\"both\"===e.side?2*s-l:s]},r.getKdeValue=function(t,e,n){var a=t.pts.map(r.extractVal);return r.makeKDE(t,e,a)(n)/t.posDensityScale},r.extractVal=function(t){return t.v}},{\"../../lib\":749}],1312:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../box/hover\"),o=t(\"./helpers\");e.exports=function(t,e,r,s,l){var c,u,h=t.cd,f=h[0].trace,p=f.hoveron,d=-1!==p.indexOf(\"violins\"),g=-1!==p.indexOf(\"kde\"),m=[];if(d||g){var v=i.hoverOnBoxes(t,e,r,s);if(g&&v.length>0){var y,x,b,_,w,T=t.xa,k=t.ya;\"h\"===f.orientation?(w=e,y=\"y\",b=k,x=\"x\",_=T):(w=r,y=\"x\",b=T,x=\"y\",_=k);var M=h[t.index];if(w>=M.span[0]&&w<=M.span[1]){var A=n.extendFlat({},t),S=_.c2p(w,!0),E=o.getKdeValue(M,f,w),C=o.getPositionOnKdePath(M,f,S),L=b._offset,P=b._length;A[y+\"0\"]=C[0],A[y+\"1\"]=C[1],A[x+\"0\"]=A[x+\"1\"]=S,A[x+\"Label\"]=x+\": \"+a.hoverLabelText(_,w)+\", \"+h[0].t.labels.kde+\" \"+E.toFixed(3),A.spikeDistance=v[0].spikeDistance;var I=y+\"Spike\";A[I]=v[0][I],v[0].spikeDistance=void 0,v[0][I]=void 0,A.hovertemplate=!1,m.push(A),(u={stroke:t.color})[y+\"1\"]=n.constrain(L+C[0],L,L+P),u[y+\"2\"]=n.constrain(L+C[1],L,L+P),u[x+\"1\"]=u[x+\"2\"]=_._offset+S}}d&&(m=m.concat(v))}-1!==p.indexOf(\"points\")&&(c=i.hoverOnPoints(t,e,r));var z=l.selectAll(\".violinline-\"+f.uid).data(u?[0]:[]);return z.enter().append(\"line\").classed(\"violinline-\"+f.uid,!0).attr(\"stroke-width\",1.5),z.exit().remove(),z.attr(u),\"closest\"===s?c?[c]:m:c?(m.push(c),m):m}},{\"../../lib\":749,\"../../plots/cartesian/axes\":798,\"../box/hover\":921,\"./helpers\":1311}],1313:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"../box/defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\"),plot:t(\"./plot\"),style:t(\"./style\"),styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../box/select\"),moduleType:\"trace\",name:\"violin\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"symbols\",\"oriented\",\"box-violin\",\"showLegend\",\"violinLayout\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":811,\"../box/defaults\":919,\"../box/select\":926,\"../scatter/style\":1180,\"./attributes\":1307,\"./calc\":1308,\"./cross_trace_calc\":1309,\"./defaults\":1310,\"./hover\":1312,\"./layout_attributes\":1314,\"./layout_defaults\":1315,\"./plot\":1316,\"./style\":1317}],1314:[function(t,e,r){\"use strict\";var n=t(\"../box/layout_attributes\"),a=t(\"../../lib\").extendFlat;e.exports={violinmode:a({},n.boxmode,{}),violingap:a({},n.boxgap,{}),violingroupgap:a({},n.boxgroupgap,{})}},{\"../../lib\":749,\"../box/layout_attributes\":923}],1315:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\"),i=t(\"../box/layout_defaults\");e.exports=function(t,e,r){i._supply(t,e,r,(function(r,i){return n.coerce(t,e,a,r,i)}),\"violin\")}},{\"../../lib\":749,\"../box/layout_defaults\":924,\"./layout_attributes\":1314}],1316:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../box/plot\"),s=t(\"../scatter/line_points\"),l=t(\"./helpers\");e.exports=function(t,e,r,c){var u=t._fullLayout,h=e.xaxis,f=e.yaxis;function p(t){var e=s(t,{xaxis:h,yaxis:f,connectGaps:!0,baseTolerance:.75,shape:\"spline\",simplify:!0,linearized:!0});return i.smoothopen(e[0],1)}a.makeTraceGroups(c,r,\"trace violins\").each((function(t){var r=n.select(this),i=t[0],s=i.t,c=i.trace;if(!0!==c.visible||s.empty)r.remove();else{var d=s.bPos,g=s.bdPos,m=e[s.valLetter+\"axis\"],v=e[s.posLetter+\"axis\"],y=\"both\"===c.side,x=y||\"positive\"===c.side,b=y||\"negative\"===c.side,_=r.selectAll(\"path.violin\").data(a.identity);_.enter().append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").attr(\"class\",\"violin\"),_.exit().remove(),_.each((function(t){var e,r,a,i,o,l,h,f,_=n.select(this),w=t.density,T=w.length,k=v.c2l(t.pos+d,!0),M=v.l2p(k);if(c.width)e=s.maxKDE/g;else{var A=u._violinScaleGroupStats[c.scalegroup];e=\"count\"===c.scalemode?A.maxKDE/g*(A.maxCount/t.pts.length):A.maxKDE/g}if(x){for(h=new Array(T),o=0;o<T;o++)(f=h[o]={})[s.posLetter]=k+w[o].v/e,f[s.valLetter]=m.c2l(w[o].t,!0);r=p(h)}if(b){for(h=new Array(T),l=0,o=T-1;l<T;l++,o--)(f=h[l]={})[s.posLetter]=k-w[o].v/e,f[s.valLetter]=m.c2l(w[o].t,!0);a=p(h)}if(y)i=r+\"L\"+a.substr(1)+\"Z\";else{var S=[M,m.c2p(w[0].t)],E=[M,m.c2p(w[T-1].t)];\"h\"===c.orientation&&(S.reverse(),E.reverse()),i=x?\"M\"+S+\"L\"+r.substr(1)+\"L\"+E:\"M\"+E+\"L\"+a.substr(1)+\"L\"+S}_.attr(\"d\",i),t.posCenterPx=M,t.posDensityScale=e*g,t.path=_.node(),t.pathLength=t.path.getTotalLength()/(y?2:1)}));var w,T,k,M=c.box,A=M.width,S=(M.line||{}).width;y?(w=g*A,T=0):x?(w=[0,g*A/2],T=S*{x:1,y:-1}[s.posLetter]):(w=[g*A/2,0],T=S*{x:-1,y:1}[s.posLetter]),o.plotBoxAndWhiskers(r,{pos:v,val:m},c,{bPos:d,bdPos:w,bPosPxOffset:T}),o.plotBoxMean(r,{pos:v,val:m},c,{bPos:d,bdPos:w,bPosPxOffset:T}),!c.box.visible&&c.meanline.visible&&(k=a.identity);var E=r.selectAll(\"path.meanline\").data(k||[]);E.enter().append(\"path\").attr(\"class\",\"meanline\").style(\"fill\",\"none\").style(\"vector-effect\",\"non-scaling-stroke\"),E.exit().remove(),E.each((function(t){var e=m.c2p(t.mean,!0),r=l.getPositionOnKdePath(t,c,e);n.select(this).attr(\"d\",\"h\"===c.orientation?\"M\"+e+\",\"+r[0]+\"V\"+r[1]:\"M\"+r[0]+\",\"+e+\"H\"+r[1])})),o.plotPoints(r,{x:h,y:f},c,s)}}))}},{\"../../components/drawing\":637,\"../../lib\":749,\"../box/plot\":925,\"../scatter/line_points\":1170,\"./helpers\":1311,d3:169}],1317:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../scatter/style\").stylePoints;e.exports=function(t){var e=n.select(t).selectAll(\"g.trace.violins\");e.style(\"opacity\",(function(t){return t[0].trace.opacity})),e.each((function(e){var r=e[0].trace,o=n.select(this),s=r.box||{},l=s.line||{},c=r.meanline||{},u=c.width;o.selectAll(\"path.violin\").style(\"stroke-width\",r.line.width+\"px\").call(a.stroke,r.line.color).call(a.fill,r.fillcolor),o.selectAll(\"path.box\").style(\"stroke-width\",l.width+\"px\").call(a.stroke,l.color).call(a.fill,s.fillcolor);var h={\"stroke-width\":u+\"px\",\"stroke-dasharray\":2*u+\"px,\"+u+\"px\"};o.selectAll(\"path.mean\").style(h).call(a.stroke,c.color),o.selectAll(\"path.meanline\").style(h).call(a.stroke,c.color),i(o,r,t)}))}},{\"../../components/color\":615,\"../scatter/style\":1180,d3:169}],1318:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../isosurface/attributes\"),i=t(\"../surface/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/edit_types\").overrideAll,c=e.exports=l(s({x:a.x,y:a.y,z:a.z,value:a.value,isomin:a.isomin,isomax:a.isomax,surface:a.surface,spaceframe:{show:{valType:\"boolean\",dflt:!1},fill:{valType:\"number\",min:0,max:1,dflt:1}},slices:a.slices,caps:a.caps,text:a.text,hovertext:a.hovertext,hovertemplate:a.hovertemplate},n(\"\",{colorAttr:\"`value`\",showScaleDflt:!0,editTypeOverride:\"calc\"}),{colorbar:a.colorbar,opacity:a.opacity,opacityscale:i.opacityscale,lightposition:a.lightposition,lighting:a.lighting,flatshading:a.flatshading,contour:a.contour,hoverinfo:s({},o.hoverinfo),showlegend:s({},o.showlegend,{dflt:!1})}),\"calc\",\"nested\");c.x.editType=c.y.editType=c.z.editType=c.value.editType=\"calc+clearAxisTypes\",c.transforms=void 0},{\"../../components/colorscale/attributes\":622,\"../../lib/extend\":739,\"../../plot_api/edit_types\":780,\"../../plots/attributes\":794,\"../isosurface/attributes\":1092,\"../surface/attributes\":1280}],1319:[function(t,e,r){\"use strict\";var n=t(\"gl-mesh3d\"),a=t(\"../../lib/gl_format_color\").parseColorScale,i=t(\"../../lib/str2rgbarray\"),o=t(\"../../components/colorscale\").extractOpts,s=t(\"../../plots/gl3d/zip3\"),l=t(\"../isosurface/convert\").findNearestOnAxis,c=t(\"../isosurface/convert\").generateIsoMeshes;function u(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.data=null,this.showContour=!1}var h=u.prototype;h.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],a=this.data._meshZ[e],i=this.data._Ys.length,o=this.data._Zs.length,s=l(r,this.data._Xs).id,c=l(n,this.data._Ys).id,u=l(a,this.data._Zs).id,h=t.index=u+o*c+o*i*s;t.traceCoordinate=[this.data._meshX[h],this.data._meshY[h],this.data._meshZ[h],this.data._value[h]];var f=this.data.hovertext||this.data.text;return Array.isArray(f)&&void 0!==f[h]?t.textLabel=f[h]:f&&(t.textLabel=f),!0}},h.update=function(t){var e=this.scene,r=e.fullSceneLayout;function n(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=c(t);var l={positions:s(n(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),n(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),n(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:s(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,opacityscale:t.opacityscale,contourEnable:t.contour.show,contourColor:i(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},u=o(t);l.vertexIntensity=t._meshIntensity,l.vertexIntensityBounds=[u.min,u.max],l.colormap=a(t),this.mesh.update(l)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new u(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}},{\"../../components/colorscale\":627,\"../../lib/gl_format_color\":745,\"../../lib/str2rgbarray\":772,\"../../plots/gl3d/zip3\":851,\"../isosurface/convert\":1094,\"gl-mesh3d\":292}],1320:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../isosurface/defaults\").supplyIsoDefaults,o=t(\"../surface/defaults\").opacityscaleDefaults;e.exports=function(t,e,r,s){function l(r,i){return n.coerce(t,e,a,r,i)}i(t,e,r,s,l),o(t,e,s,l)}},{\"../../lib\":749,\"../isosurface/defaults\":1095,\"../surface/defaults\":1283,\"./attributes\":1318}],1321:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"../isosurface/calc\"),colorbar:{min:\"cmin\",max:\"cmax\"},plot:t(\"./convert\"),moduleType:\"trace\",name:\"volume\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"showLegend\"],meta:{}}},{\"../../plots/gl3d\":840,\"../isosurface/calc\":1093,\"./attributes\":1318,\"./convert\":1319,\"./defaults\":1320}],1322:[function(t,e,r){\"use strict\";var n=t(\"../bar/attributes\"),a=t(\"../scatter/attributes\").line,i=t(\"../../plots/attributes\"),o=t(\"../../plots/template_attributes\").hovertemplateAttrs,s=t(\"../../plots/template_attributes\").texttemplateAttrs,l=t(\"./constants\"),c=t(\"../../lib/extend\").extendFlat,u=t(\"../../components/color\");function h(t){return{marker:{color:c({},n.marker.color,{arrayOk:!1,editType:\"style\"}),line:{color:c({},n.marker.line.color,{arrayOk:!1,editType:\"style\"}),width:c({},n.marker.line.width,{arrayOk:!1,editType:\"style\"}),editType:\"style\"},editType:\"style\"},editType:\"style\"}}e.exports={measure:{valType:\"data_array\",dflt:[],editType:\"calc\"},base:{valType:\"number\",dflt:null,arrayOk:!1,editType:\"calc\"},x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,hovertext:n.hovertext,hovertemplate:o({},{keys:l.eventDataKeys}),hoverinfo:c({},i.hoverinfo,{flags:[\"name\",\"x\",\"y\",\"text\",\"initial\",\"delta\",\"final\"]}),textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"initial\",\"delta\",\"final\"],extras:[\"none\"],editType:\"plot\",arrayOk:!1},texttemplate:s({editType:\"plot\"},{keys:l.eventDataKeys.concat([\"label\"])}),text:n.text,textposition:n.textposition,insidetextanchor:n.insidetextanchor,textangle:n.textangle,textfont:n.textfont,insidetextfont:n.insidetextfont,outsidetextfont:n.outsidetextfont,constraintext:n.constraintext,cliponaxis:n.cliponaxis,orientation:n.orientation,offset:n.offset,width:n.width,increasing:h(),decreasing:h(),totals:h(),connector:{line:{color:c({},a.color,{dflt:u.defaultLine}),width:c({},a.width,{editType:\"plot\"}),dash:a.dash,editType:\"plot\"},mode:{valType:\"enumerated\",values:[\"spanning\",\"between\"],dflt:\"between\",editType:\"plot\"},visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup}},{\"../../components/color\":615,\"../../lib/extend\":739,\"../../plots/attributes\":794,\"../../plots/template_attributes\":876,\"../bar/attributes\":891,\"../scatter/attributes\":1156,\"./constants\":1324}],1323:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../plots/cartesian/align_period\"),i=t(\"../../lib\").mergeArray,o=t(\"../scatter/calc_selection\"),s=t(\"../../constants/numerical\").BADNUM;function l(t){return\"a\"===t||\"absolute\"===t}function c(t){return\"t\"===t||\"total\"===t}e.exports=function(t,e){var r,u,h,f,p=n.getFromId(t,e.xaxis||\"x\"),d=n.getFromId(t,e.yaxis||\"y\");\"h\"===e.orientation?(r=p.makeCalcdata(e,\"x\"),h=d.makeCalcdata(e,\"y\"),u=a(e,d,\"y\",h),f=!!e.yperiodalignment):(r=d.makeCalcdata(e,\"y\"),h=p.makeCalcdata(e,\"x\"),u=a(e,p,\"x\",h),f=!!e.xperiodalignment);for(var g,m=Math.min(u.length,r.length),v=new Array(m),y=0,x=!1,b=0;b<m;b++){var _=r[b]||0,w=!1;(r[b]!==s||c(e.measure[b])||l(e.measure[b]))&&b+1<m&&(r[b+1]!==s||c(e.measure[b+1])||l(e.measure[b+1]))&&(w=!0);var T=v[b]={i:b,p:u[b],s:_,rawS:_,cNext:w};l(e.measure[b])?(y=T.s,T.isSum=!0,T.dir=\"totals\",T.s=y):c(e.measure[b])?(T.isSum=!0,T.dir=\"totals\",T.s=y):(T.isSum=!1,T.dir=T.rawS<0?\"decreasing\":\"increasing\",g=T.s,T.s=y+g,y+=g),\"totals\"===T.dir&&(x=!0),f&&(v[b].orig_p=h[b]),e.ids&&(T.id=String(e.ids[b])),T.v=(e.base||0)+y}return v.length&&(v[0].hasTotals=x),i(e.text,v,\"tx\"),i(e.hovertext,v,\"htx\"),o(v,e),v}},{\"../../constants/numerical\":724,\"../../lib\":749,\"../../plots/cartesian/align_period\":795,\"../../plots/cartesian/axes\":798,\"../scatter/calc_selection\":1158}],1324:[function(t,e,r){\"use strict\";e.exports={eventDataKeys:[\"initial\",\"delta\",\"final\"]}},{}],1325:[function(t,e,r){\"use strict\";var n=t(\"../bar/cross_trace_calc\").setGroupPositions;e.exports=function(t,e){var r,a,i=t._fullLayout,o=t._fullData,s=t.calcdata,l=e.xaxis,c=e.yaxis,u=[],h=[],f=[];for(a=0;a<o.length;a++){var p=o[a];!0===p.visible&&p.xaxis===l._id&&p.yaxis===c._id&&\"waterfall\"===p.type&&(r=s[a],\"h\"===p.orientation?f.push(r):h.push(r),u.push(r))}var d={mode:i.waterfallmode,norm:i.waterfallnorm,gap:i.waterfallgap,groupgap:i.waterfallgroupgap};for(n(t,l,c,h,d),n(t,c,l,f,d),a=0;a<u.length;a++){r=u[a];for(var g=0;g<r.length;g++){var m=r[g];!1===m.isSum&&(m.s0+=0===g?0:r[g-1].s),g+1<r.length&&(r[g].nextP0=r[g+1].p0,r[g].nextS0=r[g+1].s0)}}}},{\"../bar/cross_trace_calc\":894}],1326:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../bar/defaults\").handleGroupingDefaults,i=t(\"../bar/defaults\").handleText,o=t(\"../scatter/xy_defaults\"),s=t(\"../scatter/period_defaults\"),l=t(\"./attributes\"),c=t(\"../../components/color\"),u=t(\"../../constants/delta.js\"),h=u.INCREASING.COLOR,f=u.DECREASING.COLOR;function p(t,e,r){t(e+\".marker.color\",r),t(e+\".marker.line.color\",c.defaultLine),t(e+\".marker.line.width\")}e.exports={supplyDefaults:function(t,e,r,a){function c(r,a){return n.coerce(t,e,l,r,a)}if(o(t,e,a,c)){s(t,e,a,c),c(\"measure\"),c(\"orientation\",e.x&&!e.y?\"h\":\"v\"),c(\"base\"),c(\"offset\"),c(\"width\"),c(\"text\"),c(\"hovertext\"),c(\"hovertemplate\");var u=c(\"textposition\");if(i(t,e,a,c,u,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),\"none\"!==e.textposition&&(c(\"texttemplate\"),e.texttemplate||c(\"textinfo\")),p(c,\"increasing\",h),p(c,\"decreasing\",f),p(c,\"totals\",\"#4499FF\"),c(\"connector.visible\"))c(\"connector.mode\"),c(\"connector.line.width\")&&(c(\"connector.line.color\"),c(\"connector.line.dash\"))}else e.visible=!1},crossTraceDefaults:function(t,e){var r,i;function o(t){return n.coerce(i._input,i,l,t)}if(\"group\"===e.waterfallmode)for(var s=0;s<t.length;s++)r=(i=t[s])._input,a(r,i,e,o)}}},{\"../../components/color\":615,\"../../constants/delta.js\":718,\"../../lib\":749,\"../bar/defaults\":895,\"../scatter/period_defaults\":1176,\"../scatter/xy_defaults\":1183,\"./attributes\":1322}],1327:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,\"initial\"in e&&(t.initial=e.initial),\"delta\"in e&&(t.delta=e.delta),\"final\"in e&&(t.final=e.final),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},{}],1328:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\").hoverLabelText,a=t(\"../../components/color\").opacity,i=t(\"../bar/hover\").hoverOnBars,o=t(\"../../constants/delta.js\"),s=o.INCREASING.SYMBOL,l=o.DECREASING.SYMBOL;e.exports=function(t,e,r,o){var c=i(t,e,r,o);if(c){var u=c.cd,h=u[0].trace,f=\"h\"===h.orientation,p=f?t.xa:t.ya,d=u[c.index],g=d.isSum?d.b+d.s:d.rawS;if(!d.isSum){c.initial=d.b+d.s-g,c.delta=g,c.final=c.initial+c.delta;var m=w(Math.abs(c.delta));c.deltaLabel=g<0?\"(\"+m+\")\":m,c.finalLabel=w(c.final),c.initialLabel=w(c.initial)}var v=d.hi||h.hoverinfo,y=[];if(v&&\"none\"!==v&&\"skip\"!==v){var x=\"all\"===v,b=v.split(\"+\"),_=function(t){return x||-1!==b.indexOf(t)};d.isSum||(!_(\"final\")||_(f?\"x\":\"y\")||y.push(c.finalLabel),_(\"delta\")&&(g<0?y.push(c.deltaLabel+\" \"+l):y.push(c.deltaLabel+\" \"+s)),_(\"initial\")&&y.push(\"Initial: \"+c.initialLabel))}return y.length&&(c.extraText=y.join(\"<br>\")),c.color=function(t,e){var r=t[e.dir].marker,n=r.color,i=r.line.color,o=r.line.width;if(a(n))return n;if(a(i)&&o)return i}(h,d),[c]}function w(t){return n(p,t)}}},{\"../../components/color\":615,\"../../constants/delta.js\":718,\"../../plots/cartesian/axes\":798,\"../bar/hover\":898}],1329:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\"),plot:t(\"./plot\"),style:t(\"./style\").style,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"../bar/select\"),moduleType:\"trace\",name:\"waterfall\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"oriented\",\"showLegend\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":811,\"../bar/select\":903,\"./attributes\":1322,\"./calc\":1323,\"./cross_trace_calc\":1325,\"./defaults\":1326,\"./event_data\":1327,\"./hover\":1328,\"./layout_attributes\":1330,\"./layout_defaults\":1331,\"./plot\":1332,\"./style\":1333}],1330:[function(t,e,r){\"use strict\";e.exports={waterfallmode:{valType:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"group\",editType:\"calc\"},waterfallgap:{valType:\"number\",min:0,max:1,editType:\"calc\"},waterfallgroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},{}],1331:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){var i=!1;function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=0;s<r.length;s++){var l=r[s];if(l.visible&&\"waterfall\"===l.type){i=!0;break}}i&&(o(\"waterfallmode\"),o(\"waterfallgap\",.2),o(\"waterfallgroupgap\"))}},{\"../../lib\":749,\"./layout_attributes\":1330}],1332:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../constants/numerical\").BADNUM,s=t(\"../bar/plot\"),l=t(\"../bar/uniform_text\").clearMinTextSize;e.exports=function(t,e,r,c){var u=t._fullLayout;l(\"waterfall\",u),s.plot(t,e,r,c,{mode:u.waterfallmode,norm:u.waterfallmode,gap:u.waterfallgap,groupgap:u.waterfallgroupgap}),function(t,e,r,s){var l=e.xaxis,c=e.yaxis;a.makeTraceGroups(s,r,\"trace bars\").each((function(r){var s=n.select(this),u=r[0].trace,h=a.ensureSingle(s,\"g\",\"lines\");if(u.connector&&u.connector.visible){var f=\"h\"===u.orientation,p=u.connector.mode,d=h.selectAll(\"g.line\").data(a.identity);d.enter().append(\"g\").classed(\"line\",!0),d.exit().remove();var g=d.size();d.each((function(r,s){if(s===g-1||r.cNext){var u=function(t,e,r,n){var a=[],i=[],o=n?e:r,s=n?r:e;return a[0]=o.c2p(t.s0,!0),i[0]=s.c2p(t.p0,!0),a[1]=o.c2p(t.s1,!0),i[1]=s.c2p(t.p1,!0),a[2]=o.c2p(t.nextS0,!0),i[2]=s.c2p(t.nextP0,!0),n?[a,i]:[i,a]}(r,l,c,f),h=u[0],d=u[1],m=\"\";h[0]!==o&&d[0]!==o&&h[1]!==o&&d[1]!==o&&(\"spanning\"===p&&!r.isSum&&s>0&&(m+=f?\"M\"+h[0]+\",\"+d[1]+\"V\"+d[0]:\"M\"+h[1]+\",\"+d[0]+\"H\"+h[0]),\"between\"!==p&&(r.isSum||s<g-1)&&(m+=f?\"M\"+h[1]+\",\"+d[0]+\"V\"+d[1]:\"M\"+h[0]+\",\"+d[1]+\"H\"+h[1]),h[2]!==o&&d[2]!==o&&(m+=f?\"M\"+h[1]+\",\"+d[1]+\"V\"+d[2]:\"M\"+h[1]+\",\"+d[1]+\"H\"+h[2])),\"\"===m&&(m=\"M0,0Z\"),a.ensureSingle(n.select(this),\"path\").attr(\"d\",m).call(i.setClipUrl,e.layerClipId,t)}}))}else h.remove()}))}(t,e,r,c)}},{\"../../components/drawing\":637,\"../../constants/numerical\":724,\"../../lib\":749,\"../bar/plot\":902,\"../bar/uniform_text\":907,d3:169}],1333:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../components/color\"),o=t(\"../../constants/interactions\").DESELECTDIM,s=t(\"../bar/style\"),l=t(\"../bar/uniform_text\").resizeText,c=s.styleTextPoints;e.exports={style:function(t,e,r){var s=r||n.select(t).selectAll(\"g.waterfalllayer\").selectAll(\"g.trace\");l(t,s,\"waterfall\"),s.style(\"opacity\",(function(t){return t[0].trace.opacity})),s.each((function(e){var r=n.select(this),s=e[0].trace;r.selectAll(\".point > path\").each((function(t){if(!t.isBlank){var e=s[t.dir].marker;n.select(this).call(i.fill,e.color).call(i.stroke,e.line.color).call(a.dashLine,e.line.dash,e.line.width).style(\"opacity\",s.selectedpoints&&!t.selected?o:1)}})),c(r,s,t),r.selectAll(\".lines\").each((function(){var t=s.connector.line;a.lineGroupStyle(n.select(this).selectAll(\"path\"),t.width,t.color,t.dash)}))}))}}},{\"../../components/color\":615,\"../../components/drawing\":637,\"../../constants/interactions\":723,\"../bar/style\":905,\"../bar/uniform_text\":907,d3:169}],1334:[function(t,e,r){\"use strict\";var n=t(\"../plots/cartesian/axes\"),a=t(\"../lib\"),i=t(\"../plot_api/plot_schema\"),o=t(\"./helpers\").pointsAccessorFunction,s=t(\"../constants/numerical\").BADNUM;r.moduleType=\"transform\",r.name=\"aggregate\";var l=r.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},groups:{valType:\"string\",strict:!0,noBlank:!0,arrayOk:!0,dflt:\"x\",editType:\"calc\"},aggregations:{_isLinkedToArray:\"aggregation\",target:{valType:\"string\",editType:\"calc\"},func:{valType:\"enumerated\",values:[\"count\",\"sum\",\"avg\",\"median\",\"mode\",\"rms\",\"stddev\",\"min\",\"max\",\"first\",\"last\",\"change\",\"range\"],dflt:\"first\",editType:\"calc\"},funcmode:{valType:\"enumerated\",values:[\"sample\",\"population\"],dflt:\"sample\",editType:\"calc\"},enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"},editType:\"calc\"},c=l.aggregations;function u(t,e,r,i){if(i.enabled){for(var o=i.target,l=a.nestedProperty(e,o),c=l.get(),u=function(t,e){var r=t.func,n=e.d2c,i=e.c2d;switch(r){case\"count\":return h;case\"first\":return f;case\"last\":return p;case\"sum\":return function(t,e){for(var r=0,a=0;a<e.length;a++){var o=n(t[e[a]]);o!==s&&(r+=o)}return i(r)};case\"avg\":return function(t,e){for(var r=0,a=0,o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&(r+=l,a++)}return a?i(r/a):s};case\"min\":return function(t,e){for(var r=1/0,a=0;a<e.length;a++){var o=n(t[e[a]]);o!==s&&(r=Math.min(r,o))}return r===1/0?s:i(r)};case\"max\":return function(t,e){for(var r=-1/0,a=0;a<e.length;a++){var o=n(t[e[a]]);o!==s&&(r=Math.max(r,o))}return r===-1/0?s:i(r)};case\"range\":return function(t,e){for(var r=1/0,a=-1/0,o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&(r=Math.min(r,l),a=Math.max(a,l))}return a===-1/0||r===1/0?s:i(a-r)};case\"change\":return function(t,e){var r=n(t[e[0]]),a=n(t[e[e.length-1]]);return r===s||a===s?s:i(a-r)};case\"median\":return function(t,e){for(var r=[],o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&r.push(l)}if(!r.length)return s;r.sort(a.sorterAsc);var c=(r.length-1)/2;return i((r[Math.floor(c)]+r[Math.ceil(c)])/2)};case\"mode\":return function(t,e){for(var r={},a=0,o=s,l=0;l<e.length;l++){var c=n(t[e[l]]);if(c!==s){var u=r[c]=(r[c]||0)+1;u>a&&(a=u,o=c)}}return a?i(o):s};case\"rms\":return function(t,e){for(var r=0,a=0,o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&(r+=l*l,a++)}return a?i(Math.sqrt(r/a)):s};case\"stddev\":return function(e,r){var a,i=0,o=0,l=1,c=s;for(a=0;a<r.length&&c===s;a++)c=n(e[r[a]]);if(c===s)return s;for(;a<r.length;a++){var u=n(e[r[a]]);if(u!==s){var h=u-c;i+=h,o+=h*h,l++}}var f=\"sample\"===t.funcmode?l-1:l;return f?Math.sqrt((o-i*i/l)/f):0}}}(i,n.getDataConversions(t,e,o,c)),d=new Array(r.length),g=0;g<r.length;g++)d[g]=u(c,r[g]);l.set(d),\"count\"===i.func&&a.pushUnique(e._arrayAttrs,o)}}function h(t,e){return e.length}function f(t,e){return t[e[0]]}function p(t,e){return t[e[e.length-1]]}r.supplyDefaults=function(t,e){var r,n={};function o(e,r){return a.coerce(t,n,l,e,r)}if(!o(\"enabled\"))return n;var s=i.findArrayAttributes(e),u={};for(r=0;r<s.length;r++)u[s[r]]=1;var h=o(\"groups\");if(!Array.isArray(h)){if(!u[h])return n.enabled=!1,n;u[h]=0}var f,p=t.aggregations||[],d=n.aggregations=new Array(p.length);function g(t,e){return a.coerce(p[r],f,c,t,e)}for(r=0;r<p.length;r++){f={_index:r};var m=g(\"target\"),v=g(\"func\");g(\"enabled\")&&m&&(u[m]||\"count\"===v&&void 0===u[m])?(\"stddev\"===v&&g(\"funcmode\"),u[m]=0,d[r]=f):d[r]={enabled:!1,_index:r}}for(r=0;r<s.length;r++)u[s[r]]&&d.push({target:s[r],func:c.func.dflt,enabled:!0,_index:-1});return n},r.calcTransform=function(t,e,r){if(r.enabled){var n=r.groups,i=a.getTargetArray(e,{target:n});if(i){var s,l,c,h,f={},p={},d=[],g=o(e.transforms,r),m=i.length;for(e._length&&(m=Math.min(m,e._length)),s=0;s<m;s++)void 0===(c=f[l=i[s]])?(f[l]=d.length,h=[s],d.push(h),p[f[l]]=g(s)):(d[c].push(s),p[f[l]]=(p[f[l]]||[]).concat(g(s)));r._indexToPoints=p;var v=r.aggregations;for(s=0;s<v.length;s++)u(t,e,d,v[s]);\"string\"==typeof n&&u(t,e,d,{target:n,func:\"first\",enabled:!0}),e._length=d.length}}}},{\"../constants/numerical\":724,\"../lib\":749,\"../plot_api/plot_schema\":786,\"../plots/cartesian/axes\":798,\"./helpers\":1337}],1335:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../registry\"),i=t(\"../plots/cartesian/axes\"),o=t(\"./helpers\").pointsAccessorFunction,s=t(\"../constants/filter_ops\"),l=s.COMPARISON_OPS,c=s.INTERVAL_OPS,u=s.SET_OPS;r.moduleType=\"transform\",r.name=\"filter\",r.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},target:{valType:\"string\",strict:!0,noBlank:!0,arrayOk:!0,dflt:\"x\",editType:\"calc\"},operation:{valType:\"enumerated\",values:[].concat(l).concat(c).concat(u),dflt:\"=\",editType:\"calc\"},value:{valType:\"any\",dflt:0,editType:\"calc\"},preservegaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},editType:\"calc\"},r.supplyDefaults=function(t){var e={};function i(a,i){return n.coerce(t,e,r.attributes,a,i)}if(i(\"enabled\")){var o=i(\"target\");if(n.isArrayOrTypedArray(o)&&0===o.length)return e.enabled=!1,e;i(\"preservegaps\"),i(\"operation\"),i(\"value\");var s=a.getComponentMethod(\"calendars\",\"handleDefaults\");s(t,e,\"valuecalendar\",null),s(t,e,\"targetcalendar\",null)}return e},r.calcTransform=function(t,e,r){if(r.enabled){var a=n.getTargetArray(e,r);if(a){var s=r.target,h=a.length;e._length&&(h=Math.min(h,e._length));var f=r.targetcalendar,p=e._arrayAttrs,d=r.preservegaps;if(\"string\"==typeof s){var g=n.nestedProperty(e,s+\"calendar\").get();g&&(f=g)}var m,v,y=function(t,e,r){var n=t.operation,a=t.value,i=Array.isArray(a);function o(t){return-1!==t.indexOf(n)}var s,h=function(r){return e(r,0,t.valuecalendar)},f=function(t){return e(t,0,r)};o(l)?s=h(i?a[0]:a):o(c)?s=i?[h(a[0]),h(a[1])]:[h(a),h(a)]:o(u)&&(s=i?a.map(h):[h(a)]);switch(n){case\"=\":return function(t){return f(t)===s};case\"!=\":return function(t){return f(t)!==s};case\"<\":return function(t){return f(t)<s};case\"<=\":return function(t){return f(t)<=s};case\">\":return function(t){return f(t)>s};case\">=\":return function(t){return f(t)>=s};case\"[]\":return function(t){var e=f(t);return e>=s[0]&&e<=s[1]};case\"()\":return function(t){var e=f(t);return e>s[0]&&e<s[1]};case\"[)\":return function(t){var e=f(t);return e>=s[0]&&e<s[1]};case\"(]\":return function(t){var e=f(t);return e>s[0]&&e<=s[1]};case\"][\":return function(t){var e=f(t);return e<=s[0]||e>=s[1]};case\")(\":return function(t){var e=f(t);return e<s[0]||e>s[1]};case\"](\":return function(t){var e=f(t);return e<=s[0]||e>s[1]};case\")[\":return function(t){var e=f(t);return e<s[0]||e>=s[1]};case\"{}\":return function(t){return-1!==s.indexOf(f(t))};case\"}{\":return function(t){return-1===s.indexOf(f(t))}}}(r,i.getDataToCoordFunc(t,e,s,a),f),x={},b={},_=0;d?(m=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set(new Array(h))},v=function(t,e){var r=x[t.astr][e];t.get()[e]=r}):(m=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set([])},v=function(t,e){var r=x[t.astr][e];t.get().push(r)}),k(m);for(var w=o(e.transforms,r),T=0;T<h;T++){y(a[T])?(k(v,T),b[_++]=w(T)):d&&_++}r._indexToPoints=b,e._length=_}}function k(t,r){for(var a=0;a<p.length;a++){t(n.nestedProperty(e,p[a]),r)}}}},{\"../constants/filter_ops\":720,\"../lib\":749,\"../plots/cartesian/axes\":798,\"../registry\":881,\"./helpers\":1337}],1336:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plot_api/plot_schema\"),i=t(\"../plots/plots\"),o=t(\"./helpers\").pointsAccessorFunction;function s(t,e){var r,s,l,c,u,h,f,p,d,g,m=e.transform,v=e.transformIndex,y=t.transforms[v].groups,x=o(t.transforms,m);if(!n.isArrayOrTypedArray(y)||0===y.length)return[t];var b=n.filterUnique(y),_=new Array(b.length),w=y.length,T=a.findArrayAttributes(t),k=m.styles||[],M={};for(r=0;r<k.length;r++)M[k[r].target]=k[r].value;m.styles&&(g=n.keyedContainer(m,\"styles\",\"target\",\"value.name\"));var A={},S={};for(r=0;r<b.length;r++){A[h=b[r]]=r,S[h]=0,(f=_[r]=n.extendDeepNoArrays({},t))._group=h,f.transforms[v]._indexToPoints={};var E=null;for(g&&(E=g.get(h)),f.name=E||\"\"===E?E:n.templateString(m.nameformat,{trace:t.name,group:h}),p=f.transforms,f.transforms=[],s=0;s<p.length;s++)f.transforms[s]=n.extendDeepNoArrays({},p[s]);for(s=0;s<T.length;s++)n.nestedProperty(f,T[s]).set([])}for(l=0;l<T.length;l++){for(c=T[l],s=0,d=[];s<b.length;s++)d[s]=n.nestedProperty(_[s],c).get();for(u=n.nestedProperty(t,c).get(),s=0;s<w;s++)d[A[y[s]]].push(u[s])}for(s=0;s<w;s++){(f=_[A[y[s]]]).transforms[v]._indexToPoints[S[y[s]]]=x(s),S[y[s]]++}for(r=0;r<b.length;r++)h=b[r],f=_[r],i.clearExpandedTraceDefaultColors(f),f=n.extendDeepNoArrays(f,M[h]||{});return _}r.moduleType=\"transform\",r.name=\"groupby\",r.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},groups:{valType:\"data_array\",dflt:[],editType:\"calc\"},nameformat:{valType:\"string\",editType:\"calc\"},styles:{_isLinkedToArray:\"style\",target:{valType:\"string\",editType:\"calc\"},value:{valType:\"any\",dflt:{},editType:\"calc\",_compareAsJSON:!0},editType:\"calc\"},editType:\"calc\"},r.supplyDefaults=function(t,e,a){var i,o={};function s(e,a){return n.coerce(t,o,r.attributes,e,a)}if(!s(\"enabled\"))return o;s(\"groups\"),s(\"nameformat\",a._dataLength>1?\"%{group} (%{trace})\":\"%{group}\");var l=t.styles,c=o.styles=[];if(l)for(i=0;i<l.length;i++){var u=c[i]={};n.coerce(l[i],c[i],r.attributes.styles,\"target\");var h=n.coerce(l[i],c[i],r.attributes.styles,\"value\");n.isPlainObject(h)?u.value=n.extendDeep({},h):h&&delete u.value}return o},r.transform=function(t,e){var r,n,a,i=[];for(n=0;n<t.length;n++)for(r=s(t[n],e),a=0;a<r.length;a++)i.push(r[a]);return i}},{\"../lib\":749,\"../plot_api/plot_schema\":786,\"../plots/plots\":861,\"./helpers\":1337}],1337:[function(t,e,r){\"use strict\";r.pointsAccessorFunction=function(t,e){for(var r,n,a=0;a<t.length&&(r=t[a])!==e;a++)r._indexToPoints&&!1!==r.enabled&&(n=r._indexToPoints);return n?function(t){return n[t]}:function(t){return[t]}}},{}],1338:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plots/cartesian/axes\"),i=t(\"./helpers\").pointsAccessorFunction,o=t(\"../constants/numerical\").BADNUM;r.moduleType=\"transform\",r.name=\"sort\",r.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},target:{valType:\"string\",strict:!0,noBlank:!0,arrayOk:!0,dflt:\"x\",editType:\"calc\"},order:{valType:\"enumerated\",values:[\"ascending\",\"descending\"],dflt:\"ascending\",editType:\"calc\"},editType:\"calc\"},r.supplyDefaults=function(t){var e={};function a(a,i){return n.coerce(t,e,r.attributes,a,i)}return a(\"enabled\")&&(a(\"target\"),a(\"order\")),e},r.calcTransform=function(t,e,r){if(r.enabled){var s=n.getTargetArray(e,r);if(s){var l=r.target,c=s.length;e._length&&(c=Math.min(c,e._length));var u,h,f=e._arrayAttrs,p=function(t,e,r,n){var a,i=new Array(n),s=new Array(n);for(a=0;a<n;a++)i[a]={v:e[a],i:a};for(i.sort(function(t,e){switch(t.order){case\"ascending\":return function(t,r){var n=e(t.v),a=e(r.v);return n===o?1:a===o?-1:n-a};case\"descending\":return function(t,r){var n=e(t.v),a=e(r.v);return n===o?1:a===o?-1:a-n}}}(t,r)),a=0;a<n;a++)s[a]=i[a].i;return s}(r,s,a.getDataToCoordFunc(t,e,l,s),c),d=i(e.transforms,r),g={};for(u=0;u<f.length;u++){var m=n.nestedProperty(e,f[u]),v=m.get(),y=new Array(c);for(h=0;h<c;h++)y[h]=v[p[h]];m.set(y)}for(h=0;h<c;h++)g[h]=d(p[h]);r._indexToPoints=g,e._length=c}}}},{\"../constants/numerical\":724,\"../lib\":749,\"../plots/cartesian/axes\":798,\"./helpers\":1337}],1339:[function(t,e,r){\"use strict\";r.version=\"1.56.0\"},{}]},{},[26])(26)}));\n",
       "        });\n",
       "        require(['plotly'], function(Plotly) {\n",
       "            window._Plotly = Plotly;\n",
       "        });\n",
       "        }\n",
       "        </script>\n",
       "        "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "hovertemplate": "Deposit type=Dataset<br>Date of deposit=%{x}<br>Count of deposits=%{y}<extra></extra>",
         "legendgroup": "Dataset",
         "marker": {
          "color": "#636efa",
          "symbol": "circle"
         },
         "mode": "markers",
         "name": "Dataset",
         "showlegend": true,
         "type": "scattergl",
         "x": [
          "2018-11-01T00:00:00",
          "2018-11-02T00:00:00",
          "2018-11-03T00:00:00",
          "2018-11-04T00:00:00",
          "2018-11-05T00:00:00",
          "2018-11-06T00:00:00",
          "2018-11-07T00:00:00",
          "2018-11-08T00:00:00",
          "2018-11-09T00:00:00",
          "2018-11-10T00:00:00",
          "2018-11-12T00:00:00",
          "2018-11-13T00:00:00",
          "2018-11-14T00:00:00",
          "2018-11-15T00:00:00",
          "2018-11-16T00:00:00",
          "2018-11-17T00:00:00",
          "2018-11-18T00:00:00",
          "2018-11-19T00:00:00",
          "2018-11-20T00:00:00",
          "2018-11-21T00:00:00",
          "2018-11-22T00:00:00",
          "2018-11-23T00:00:00",
          "2018-11-24T00:00:00",
          "2018-11-25T00:00:00",
          "2018-11-26T00:00:00",
          "2018-11-27T00:00:00",
          "2018-11-28T00:00:00",
          "2018-11-29T00:00:00",
          "2018-12-02T00:00:00",
          "2018-12-03T00:00:00",
          "2018-12-04T00:00:00",
          "2018-12-05T00:00:00",
          "2018-12-06T00:00:00",
          "2018-12-07T00:00:00",
          "2018-12-08T00:00:00",
          "2018-12-09T00:00:00",
          "2018-12-10T00:00:00",
          "2018-12-11T00:00:00",
          "2018-12-12T00:00:00",
          "2018-12-13T00:00:00",
          "2018-12-14T00:00:00",
          "2018-12-16T00:00:00",
          "2018-12-17T00:00:00",
          "2018-12-18T00:00:00",
          "2018-12-19T00:00:00",
          "2018-12-20T00:00:00",
          "2018-12-21T00:00:00",
          "2018-12-22T00:00:00",
          "2018-12-24T00:00:00",
          "2018-12-25T00:00:00",
          "2018-12-27T00:00:00",
          "2018-12-28T00:00:00",
          "2018-12-30T00:00:00",
          "2019-01-01T00:00:00",
          "2019-01-02T00:00:00",
          "2019-01-03T00:00:00",
          "2019-01-04T00:00:00",
          "2019-01-05T00:00:00",
          "2019-01-07T00:00:00",
          "2019-01-08T00:00:00",
          "2019-01-09T00:00:00",
          "2019-01-10T00:00:00",
          "2019-01-11T00:00:00",
          "2019-01-12T00:00:00",
          "2019-01-13T00:00:00",
          "2019-01-14T00:00:00",
          "2019-01-15T00:00:00",
          "2019-01-16T00:00:00",
          "2019-01-17T00:00:00",
          "2019-01-18T00:00:00",
          "2019-01-19T00:00:00",
          "2019-01-20T00:00:00",
          "2019-01-21T00:00:00",
          "2019-01-22T00:00:00",
          "2019-01-23T00:00:00",
          "2019-01-24T00:00:00",
          "2019-01-25T00:00:00",
          "2019-01-26T00:00:00",
          "2019-01-28T00:00:00",
          "2019-01-29T00:00:00",
          "2019-01-30T00:00:00",
          "2019-01-31T00:00:00",
          "2019-02-01T00:00:00",
          "2019-02-02T00:00:00",
          "2019-02-03T00:00:00",
          "2019-02-04T00:00:00",
          "2019-02-05T00:00:00",
          "2019-02-06T00:00:00",
          "2019-02-07T00:00:00",
          "2019-02-08T00:00:00",
          "2019-02-09T00:00:00",
          "2019-02-10T00:00:00",
          "2019-02-11T00:00:00",
          "2019-02-12T00:00:00",
          "2019-02-13T00:00:00",
          "2019-02-15T00:00:00",
          "2019-02-16T00:00:00",
          "2019-02-17T00:00:00",
          "2019-02-18T00:00:00",
          "2019-02-19T00:00:00",
          "2019-02-20T00:00:00",
          "2019-02-21T00:00:00",
          "2019-02-22T00:00:00",
          "2019-02-23T00:00:00",
          "2019-02-24T00:00:00",
          "2019-02-25T00:00:00",
          "2019-02-26T00:00:00",
          "2019-02-27T00:00:00",
          "2019-02-28T00:00:00",
          "2019-03-01T00:00:00",
          "2019-03-04T00:00:00",
          "2019-03-05T00:00:00",
          "2019-03-06T00:00:00",
          "2019-03-07T00:00:00",
          "2019-03-08T00:00:00",
          "2019-03-09T00:00:00",
          "2019-03-10T00:00:00",
          "2019-03-11T00:00:00",
          "2019-03-12T00:00:00",
          "2019-03-13T00:00:00",
          "2019-03-14T00:00:00",
          "2019-03-15T00:00:00",
          "2019-03-16T00:00:00",
          "2019-03-17T00:00:00",
          "2019-03-18T00:00:00",
          "2019-03-19T00:00:00",
          "2019-03-20T00:00:00",
          "2019-03-21T00:00:00",
          "2019-03-22T00:00:00",
          "2019-03-23T00:00:00",
          "2019-03-24T00:00:00",
          "2019-03-25T00:00:00",
          "2019-03-26T00:00:00",
          "2019-03-27T00:00:00",
          "2019-03-28T00:00:00",
          "2019-03-29T00:00:00",
          "2019-03-30T00:00:00",
          "2019-03-31T00:00:00",
          "2019-04-01T00:00:00",
          "2019-04-02T00:00:00",
          "2019-04-03T00:00:00",
          "2019-04-04T00:00:00",
          "2019-04-05T00:00:00",
          "2019-04-06T00:00:00",
          "2019-04-07T00:00:00",
          "2019-04-08T00:00:00",
          "2019-04-09T00:00:00",
          "2019-04-10T00:00:00",
          "2019-04-11T00:00:00",
          "2019-04-12T00:00:00",
          "2019-04-13T00:00:00",
          "2019-04-14T00:00:00",
          "2019-04-15T00:00:00",
          "2019-04-16T00:00:00",
          "2019-04-17T00:00:00",
          "2019-04-18T00:00:00",
          "2019-04-19T00:00:00",
          "2019-04-20T00:00:00",
          "2019-04-21T00:00:00",
          "2019-04-22T00:00:00",
          "2019-04-23T00:00:00",
          "2019-04-24T00:00:00",
          "2019-04-25T00:00:00",
          "2019-04-26T00:00:00",
          "2019-04-27T00:00:00",
          "2019-04-28T00:00:00",
          "2019-04-29T00:00:00",
          "2019-04-30T00:00:00",
          "2019-05-01T00:00:00",
          "2019-05-02T00:00:00",
          "2019-05-03T00:00:00",
          "2019-05-04T00:00:00",
          "2019-05-06T00:00:00",
          "2019-05-07T00:00:00",
          "2019-05-08T00:00:00",
          "2019-05-09T00:00:00",
          "2019-05-10T00:00:00",
          "2019-05-11T00:00:00",
          "2019-05-12T00:00:00",
          "2019-05-13T00:00:00",
          "2019-05-14T00:00:00",
          "2019-05-15T00:00:00",
          "2019-05-16T00:00:00",
          "2019-05-17T00:00:00",
          "2019-05-18T00:00:00",
          "2019-05-19T00:00:00",
          "2019-05-20T00:00:00",
          "2019-05-21T00:00:00",
          "2019-05-22T00:00:00",
          "2019-05-23T00:00:00",
          "2019-05-24T00:00:00",
          "2019-05-25T00:00:00",
          "2019-05-26T00:00:00",
          "2019-05-27T00:00:00",
          "2019-05-28T00:00:00",
          "2019-05-29T00:00:00",
          "2019-05-30T00:00:00",
          "2019-05-31T00:00:00",
          "2019-06-02T00:00:00",
          "2019-06-03T00:00:00",
          "2019-06-04T00:00:00",
          "2019-06-05T00:00:00",
          "2019-06-06T00:00:00",
          "2019-06-07T00:00:00",
          "2019-06-08T00:00:00",
          "2019-06-10T00:00:00",
          "2019-06-12T00:00:00",
          "2019-06-13T00:00:00",
          "2019-06-14T00:00:00",
          "2019-06-15T00:00:00",
          "2019-06-16T00:00:00",
          "2019-06-17T00:00:00",
          "2019-06-18T00:00:00",
          "2019-06-19T00:00:00",
          "2019-06-20T00:00:00",
          "2019-06-21T00:00:00",
          "2019-06-22T00:00:00",
          "2019-06-23T00:00:00",
          "2019-06-24T00:00:00",
          "2019-06-25T00:00:00",
          "2019-06-26T00:00:00",
          "2019-06-27T00:00:00",
          "2019-06-28T00:00:00",
          "2019-06-30T00:00:00",
          "2019-07-01T00:00:00",
          "2019-07-02T00:00:00",
          "2019-07-03T00:00:00",
          "2019-07-04T00:00:00",
          "2019-07-05T00:00:00",
          "2019-07-06T00:00:00",
          "2019-07-07T00:00:00",
          "2019-07-08T00:00:00",
          "2019-07-09T00:00:00",
          "2019-07-10T00:00:00",
          "2019-07-11T00:00:00",
          "2019-07-12T00:00:00",
          "2019-07-13T00:00:00",
          "2019-07-14T00:00:00",
          "2019-07-15T00:00:00",
          "2019-07-16T00:00:00",
          "2019-07-17T00:00:00",
          "2019-07-18T00:00:00",
          "2019-07-19T00:00:00",
          "2019-07-21T00:00:00",
          "2019-07-22T00:00:00",
          "2019-07-23T00:00:00",
          "2019-07-24T00:00:00",
          "2019-07-25T00:00:00",
          "2019-07-26T00:00:00",
          "2019-07-29T00:00:00",
          "2019-07-30T00:00:00",
          "2019-07-31T00:00:00",
          "2019-08-01T00:00:00",
          "2019-08-02T00:00:00",
          "2019-08-04T00:00:00",
          "2019-08-05T00:00:00",
          "2019-08-06T00:00:00",
          "2019-08-07T00:00:00",
          "2019-08-08T00:00:00",
          "2019-08-09T00:00:00",
          "2019-08-10T00:00:00",
          "2019-08-11T00:00:00",
          "2019-08-12T00:00:00",
          "2019-08-13T00:00:00",
          "2019-08-14T00:00:00",
          "2019-08-15T00:00:00",
          "2019-08-16T00:00:00",
          "2019-08-17T00:00:00",
          "2019-08-19T00:00:00",
          "2019-08-20T00:00:00",
          "2019-08-21T00:00:00",
          "2019-08-22T00:00:00",
          "2019-08-23T00:00:00",
          "2019-08-25T00:00:00",
          "2019-08-26T00:00:00",
          "2019-08-27T00:00:00",
          "2019-08-28T00:00:00",
          "2019-08-29T00:00:00",
          "2019-08-30T00:00:00",
          "2019-08-31T00:00:00",
          "2019-09-01T00:00:00",
          "2019-09-02T00:00:00",
          "2019-09-03T00:00:00",
          "2019-09-04T00:00:00",
          "2019-09-05T00:00:00",
          "2019-09-06T00:00:00",
          "2019-09-07T00:00:00",
          "2019-09-08T00:00:00",
          "2019-09-09T00:00:00",
          "2019-09-10T00:00:00",
          "2019-09-11T00:00:00",
          "2019-09-12T00:00:00",
          "2019-09-13T00:00:00",
          "2019-09-14T00:00:00",
          "2019-09-15T00:00:00",
          "2019-09-16T00:00:00",
          "2019-09-17T00:00:00",
          "2019-09-18T00:00:00",
          "2019-09-19T00:00:00",
          "2019-09-20T00:00:00",
          "2019-09-21T00:00:00",
          "2019-09-22T00:00:00",
          "2019-09-23T00:00:00",
          "2019-09-24T00:00:00",
          "2019-09-25T00:00:00",
          "2019-09-26T00:00:00",
          "2019-09-27T00:00:00",
          "2019-09-28T00:00:00",
          "2019-09-30T00:00:00",
          "2019-10-01T00:00:00",
          "2019-10-02T00:00:00",
          "2019-10-03T00:00:00",
          "2019-10-04T00:00:00",
          "2019-10-05T00:00:00",
          "2019-10-06T00:00:00",
          "2019-10-07T00:00:00",
          "2019-10-08T00:00:00",
          "2019-10-09T00:00:00",
          "2019-10-10T00:00:00",
          "2019-10-11T00:00:00",
          "2019-10-12T00:00:00",
          "2019-10-13T00:00:00",
          "2019-10-14T00:00:00",
          "2019-10-15T00:00:00",
          "2019-10-16T00:00:00",
          "2019-10-17T00:00:00",
          "2019-10-18T00:00:00",
          "2019-10-19T00:00:00",
          "2019-10-20T00:00:00",
          "2019-10-21T00:00:00",
          "2019-10-22T00:00:00",
          "2019-10-23T00:00:00",
          "2019-10-24T00:00:00",
          "2019-10-25T00:00:00",
          "2019-10-27T00:00:00",
          "2019-10-28T00:00:00",
          "2019-10-29T00:00:00",
          "2019-10-30T00:00:00",
          "2019-10-31T00:00:00",
          "2019-11-01T00:00:00",
          "2019-11-02T00:00:00",
          "2019-11-03T00:00:00",
          "2019-11-04T00:00:00",
          "2019-11-05T00:00:00",
          "2019-11-06T00:00:00",
          "2019-11-07T00:00:00",
          "2019-11-08T00:00:00",
          "2019-11-09T00:00:00",
          "2019-11-10T00:00:00",
          "2019-11-11T00:00:00",
          "2019-11-12T00:00:00",
          "2019-11-13T00:00:00",
          "2019-11-14T00:00:00",
          "2019-11-15T00:00:00",
          "2019-11-16T00:00:00",
          "2019-11-17T00:00:00",
          "2019-11-18T00:00:00",
          "2019-11-19T00:00:00",
          "2019-11-20T00:00:00",
          "2019-11-21T00:00:00",
          "2019-11-22T00:00:00",
          "2019-11-24T00:00:00",
          "2019-11-25T00:00:00",
          "2019-11-26T00:00:00",
          "2019-11-27T00:00:00",
          "2019-11-28T00:00:00",
          "2019-11-29T00:00:00",
          "2019-11-30T00:00:00",
          "2019-12-01T00:00:00",
          "2019-12-02T00:00:00",
          "2019-12-03T00:00:00",
          "2019-12-04T00:00:00",
          "2019-12-05T00:00:00",
          "2019-12-06T00:00:00",
          "2019-12-07T00:00:00",
          "2019-12-08T00:00:00",
          "2019-12-09T00:00:00",
          "2019-12-10T00:00:00",
          "2019-12-11T00:00:00",
          "2019-12-12T00:00:00",
          "2019-12-13T00:00:00",
          "2019-12-14T00:00:00",
          "2019-12-15T00:00:00",
          "2019-12-16T00:00:00",
          "2019-12-17T00:00:00",
          "2019-12-18T00:00:00",
          "2019-12-19T00:00:00",
          "2019-12-20T00:00:00",
          "2019-12-21T00:00:00",
          "2019-12-22T00:00:00",
          "2019-12-23T00:00:00",
          "2019-12-24T00:00:00",
          "2019-12-25T00:00:00",
          "2019-12-26T00:00:00",
          "2019-12-27T00:00:00",
          "2019-12-28T00:00:00",
          "2019-12-30T00:00:00",
          "2019-12-31T00:00:00",
          "2020-01-01T00:00:00",
          "2020-01-02T00:00:00",
          "2020-01-03T00:00:00",
          "2020-01-04T00:00:00",
          "2020-01-05T00:00:00",
          "2020-01-06T00:00:00",
          "2020-01-07T00:00:00",
          "2020-01-08T00:00:00",
          "2020-01-09T00:00:00",
          "2020-01-10T00:00:00",
          "2020-01-12T00:00:00",
          "2020-01-13T00:00:00",
          "2020-01-14T00:00:00",
          "2020-01-15T00:00:00",
          "2020-01-16T00:00:00",
          "2020-01-17T00:00:00",
          "2020-01-18T00:00:00",
          "2020-01-20T00:00:00",
          "2020-01-21T00:00:00",
          "2020-01-22T00:00:00",
          "2020-01-23T00:00:00",
          "2020-01-24T00:00:00",
          "2020-01-25T00:00:00",
          "2020-01-26T00:00:00",
          "2020-01-27T00:00:00",
          "2020-01-28T00:00:00",
          "2020-01-29T00:00:00",
          "2020-01-30T00:00:00",
          "2020-01-31T00:00:00",
          "2020-02-01T00:00:00",
          "2020-02-02T00:00:00",
          "2020-02-03T00:00:00",
          "2020-02-04T00:00:00",
          "2020-02-05T00:00:00",
          "2020-02-06T00:00:00",
          "2020-02-07T00:00:00",
          "2020-02-08T00:00:00",
          "2020-02-09T00:00:00",
          "2020-02-10T00:00:00",
          "2020-02-11T00:00:00",
          "2020-02-12T00:00:00",
          "2020-02-13T00:00:00",
          "2020-02-14T00:00:00",
          "2020-02-15T00:00:00",
          "2020-02-16T00:00:00",
          "2020-02-17T00:00:00",
          "2020-02-18T00:00:00",
          "2020-02-19T00:00:00",
          "2020-02-20T00:00:00",
          "2020-02-21T00:00:00",
          "2020-02-22T00:00:00",
          "2020-02-23T00:00:00",
          "2020-02-24T00:00:00",
          "2020-02-25T00:00:00",
          "2020-02-26T00:00:00",
          "2020-02-27T00:00:00",
          "2020-02-28T00:00:00",
          "2020-02-29T00:00:00",
          "2020-03-01T00:00:00",
          "2020-03-02T00:00:00",
          "2020-03-03T00:00:00",
          "2020-03-04T00:00:00",
          "2020-03-05T00:00:00",
          "2020-03-06T00:00:00",
          "2020-03-07T00:00:00",
          "2020-03-09T00:00:00",
          "2020-03-10T00:00:00",
          "2020-03-11T00:00:00",
          "2020-03-12T00:00:00",
          "2020-03-13T00:00:00",
          "2020-03-14T00:00:00",
          "2020-03-15T00:00:00",
          "2020-03-16T00:00:00",
          "2020-03-17T00:00:00",
          "2020-03-18T00:00:00",
          "2020-03-19T00:00:00",
          "2020-03-20T00:00:00",
          "2020-03-21T00:00:00",
          "2020-03-22T00:00:00",
          "2020-03-23T00:00:00",
          "2020-03-24T00:00:00",
          "2020-03-25T00:00:00",
          "2020-03-26T00:00:00",
          "2020-03-27T00:00:00",
          "2020-03-28T00:00:00",
          "2020-03-29T00:00:00",
          "2020-03-30T00:00:00",
          "2020-03-31T00:00:00",
          "2020-04-02T00:00:00",
          "2020-04-03T00:00:00",
          "2020-04-04T00:00:00",
          "2020-04-05T00:00:00",
          "2020-04-06T00:00:00",
          "2020-04-07T00:00:00",
          "2020-04-08T00:00:00",
          "2020-04-09T00:00:00",
          "2020-04-10T00:00:00",
          "2020-04-11T00:00:00",
          "2020-04-12T00:00:00",
          "2020-04-13T00:00:00",
          "2020-04-14T00:00:00",
          "2020-04-15T00:00:00",
          "2020-04-16T00:00:00",
          "2020-04-17T00:00:00",
          "2020-04-18T00:00:00",
          "2020-04-19T00:00:00",
          "2020-04-20T00:00:00",
          "2020-04-21T00:00:00",
          "2020-04-22T00:00:00",
          "2020-04-23T00:00:00",
          "2020-04-24T00:00:00",
          "2020-04-25T00:00:00",
          "2020-04-26T00:00:00",
          "2020-04-27T00:00:00",
          "2020-04-28T00:00:00",
          "2020-04-29T00:00:00",
          "2020-04-30T00:00:00",
          "2020-05-01T00:00:00",
          "2020-05-02T00:00:00",
          "2020-05-04T00:00:00",
          "2020-05-05T00:00:00",
          "2020-05-06T00:00:00",
          "2020-05-07T00:00:00",
          "2020-05-08T00:00:00",
          "2020-05-09T00:00:00",
          "2020-05-10T00:00:00",
          "2020-05-11T00:00:00",
          "2020-05-12T00:00:00",
          "2020-05-13T00:00:00",
          "2020-05-14T00:00:00",
          "2020-05-15T00:00:00",
          "2020-05-16T00:00:00",
          "2020-05-17T00:00:00",
          "2020-05-18T00:00:00",
          "2020-05-19T00:00:00",
          "2020-05-20T00:00:00",
          "2020-05-21T00:00:00",
          "2020-05-22T00:00:00",
          "2020-05-23T00:00:00",
          "2020-05-24T00:00:00",
          "2020-05-25T00:00:00",
          "2020-05-26T00:00:00",
          "2020-05-27T00:00:00",
          "2020-05-28T00:00:00",
          "2020-05-29T00:00:00",
          "2020-05-30T00:00:00",
          "2020-05-31T00:00:00",
          "2020-06-01T00:00:00",
          "2020-06-02T00:00:00",
          "2020-06-03T00:00:00",
          "2020-06-04T00:00:00",
          "2020-06-05T00:00:00",
          "2020-06-06T00:00:00",
          "2020-06-07T00:00:00",
          "2020-06-08T00:00:00",
          "2020-06-09T00:00:00",
          "2020-06-10T00:00:00",
          "2020-06-11T00:00:00",
          "2020-06-12T00:00:00",
          "2020-06-13T00:00:00",
          "2020-06-14T00:00:00",
          "2020-06-15T00:00:00",
          "2020-06-16T00:00:00",
          "2020-06-17T00:00:00",
          "2020-06-18T00:00:00",
          "2020-06-19T00:00:00",
          "2020-06-20T00:00:00",
          "2020-06-21T00:00:00",
          "2020-06-22T00:00:00",
          "2020-06-23T00:00:00",
          "2020-06-24T00:00:00",
          "2020-06-25T00:00:00",
          "2020-06-26T00:00:00",
          "2020-06-27T00:00:00",
          "2020-06-28T00:00:00",
          "2020-06-29T00:00:00",
          "2020-06-30T00:00:00",
          "2020-07-01T00:00:00",
          "2020-07-02T00:00:00",
          "2020-07-03T00:00:00",
          "2020-07-04T00:00:00",
          "2020-07-05T00:00:00",
          "2020-07-06T00:00:00",
          "2020-07-07T00:00:00",
          "2020-07-08T00:00:00",
          "2020-07-09T00:00:00",
          "2020-07-10T00:00:00",
          "2020-07-11T00:00:00",
          "2020-07-12T00:00:00",
          "2020-07-13T00:00:00",
          "2020-07-14T00:00:00",
          "2020-07-15T00:00:00",
          "2020-07-16T00:00:00",
          "2020-07-17T00:00:00",
          "2020-07-18T00:00:00",
          "2020-07-19T00:00:00",
          "2020-07-20T00:00:00",
          "2020-07-21T00:00:00",
          "2020-07-22T00:00:00",
          "2020-07-23T00:00:00",
          "2020-07-24T00:00:00",
          "2020-07-25T00:00:00",
          "2020-07-26T00:00:00",
          "2020-07-27T00:00:00",
          "2020-07-28T00:00:00",
          "2020-07-29T00:00:00",
          "2020-07-30T00:00:00",
          "2020-07-31T00:00:00",
          "2020-08-01T00:00:00",
          "2020-08-02T00:00:00",
          "2020-08-03T00:00:00",
          "2020-08-04T00:00:00",
          "2020-08-05T00:00:00",
          "2020-08-06T00:00:00",
          "2020-08-07T00:00:00",
          "2020-08-08T00:00:00",
          "2020-08-09T00:00:00",
          "2020-08-10T00:00:00",
          "2020-08-11T00:00:00",
          "2020-08-12T00:00:00",
          "2020-08-13T00:00:00",
          "2020-08-14T00:00:00",
          "2020-08-15T00:00:00",
          "2020-08-16T00:00:00",
          "2020-08-17T00:00:00",
          "2020-08-18T00:00:00",
          "2020-08-19T00:00:00",
          "2020-08-20T00:00:00",
          "2020-08-21T00:00:00",
          "2020-08-22T00:00:00",
          "2020-08-23T00:00:00",
          "2020-08-24T00:00:00",
          "2020-08-25T00:00:00",
          "2020-08-26T00:00:00",
          "2020-08-27T00:00:00",
          "2020-08-28T00:00:00",
          "2020-08-29T00:00:00",
          "2020-08-30T00:00:00",
          "2020-08-31T00:00:00",
          "2020-09-01T00:00:00",
          "2020-09-02T00:00:00",
          "2020-09-03T00:00:00",
          "2020-09-04T00:00:00",
          "2020-09-05T00:00:00",
          "2020-09-07T00:00:00",
          "2020-09-08T00:00:00",
          "2020-09-09T00:00:00",
          "2020-09-10T00:00:00",
          "2020-09-11T00:00:00",
          "2020-09-12T00:00:00",
          "2020-09-14T00:00:00",
          "2020-09-15T00:00:00",
          "2020-09-16T00:00:00",
          "2020-09-17T00:00:00",
          "2020-09-18T00:00:00",
          "2020-09-19T00:00:00",
          "2020-09-20T00:00:00",
          "2020-09-21T00:00:00",
          "2020-09-22T00:00:00",
          "2020-09-23T00:00:00",
          "2020-09-24T00:00:00",
          "2020-09-25T00:00:00",
          "2020-09-26T00:00:00",
          "2020-09-27T00:00:00",
          "2020-09-28T00:00:00",
          "2020-09-29T00:00:00",
          "2020-09-30T00:00:00",
          "2020-10-01T00:00:00",
          "2020-10-02T00:00:00",
          "2020-10-03T00:00:00",
          "2020-10-04T00:00:00",
          "2020-10-05T00:00:00",
          "2020-10-06T00:00:00",
          "2020-10-07T00:00:00",
          "2020-10-08T00:00:00",
          "2020-10-09T00:00:00",
          "2020-10-10T00:00:00",
          "2020-10-11T00:00:00",
          "2020-10-12T00:00:00",
          "2020-10-13T00:00:00",
          "2020-10-14T00:00:00",
          "2020-10-15T00:00:00",
          "2020-10-16T00:00:00",
          "2020-10-17T00:00:00",
          "2020-10-18T00:00:00",
          "2020-10-19T00:00:00",
          "2020-10-20T00:00:00",
          "2020-10-21T00:00:00",
          "2020-10-22T00:00:00",
          "2020-10-23T00:00:00",
          "2020-10-24T00:00:00",
          "2020-10-25T00:00:00",
          "2020-10-26T00:00:00",
          "2020-10-27T00:00:00",
          "2020-10-28T00:00:00",
          "2020-10-29T00:00:00",
          "2020-10-30T00:00:00",
          "2020-10-31T00:00:00"
         ],
         "xaxis": "x",
         "y": [
          1,
          6,
          1,
          2,
          4,
          3,
          7,
          2,
          2,
          1,
          2,
          3,
          3,
          3,
          1,
          1,
          1,
          2,
          1,
          6,
          1,
          2,
          1,
          1,
          3,
          1,
          6,
          5,
          3,
          4,
          7,
          3,
          2,
          2,
          7,
          2,
          3,
          3,
          3,
          4,
          4,
          1,
          3,
          3,
          2,
          4,
          5,
          1,
          1,
          1,
          1,
          1,
          1,
          2,
          2,
          3,
          3,
          1,
          4,
          2,
          3,
          2,
          2,
          2,
          3,
          2,
          3,
          4,
          5,
          9,
          4,
          1,
          3,
          7,
          1,
          4,
          7,
          3,
          4,
          3,
          3,
          4,
          7,
          3,
          2,
          2,
          1,
          4,
          4,
          3,
          1,
          1,
          4,
          1,
          3,
          1,
          4,
          1,
          2,
          5,
          7,
          5,
          5,
          1,
          3,
          2,
          8,
          4,
          4,
          3,
          5,
          4,
          7,
          18,
          3,
          1,
          5,
          7,
          7,
          2,
          5,
          4,
          2,
          5,
          3,
          8,
          4,
          2,
          6,
          2,
          4,
          3,
          3,
          3,
          4,
          4,
          1,
          3,
          8,
          3,
          1,
          2,
          3,
          2,
          2,
          10,
          6,
          12,
          4,
          4,
          3,
          3,
          3,
          3,
          2,
          1,
          6,
          4,
          2,
          8,
          8,
          4,
          3,
          4,
          6,
          2,
          6,
          6,
          1,
          3,
          4,
          2,
          2,
          2,
          6,
          2,
          4,
          1,
          1,
          1,
          9,
          8,
          5,
          4,
          6,
          2,
          3,
          3,
          2,
          3,
          2,
          1,
          1,
          3,
          1,
          4,
          4,
          5,
          1,
          4,
          3,
          6,
          11,
          2,
          1,
          6,
          2,
          3,
          1,
          1,
          2,
          3,
          3,
          2,
          2,
          3,
          1,
          2,
          4,
          5,
          4,
          6,
          3,
          3,
          1,
          6,
          8,
          2,
          2,
          2,
          5,
          7,
          4,
          2,
          4,
          6,
          1,
          5,
          7,
          3,
          10,
          8,
          4,
          2,
          6,
          7,
          7,
          3,
          3,
          8,
          3,
          6,
          5,
          3,
          3,
          7,
          4,
          6,
          9,
          6,
          3,
          4,
          1,
          8,
          5,
          5,
          6,
          2,
          3,
          3,
          2,
          3,
          4,
          2,
          3,
          5,
          6,
          2,
          3,
          1,
          3,
          8,
          6,
          5,
          9,
          3,
          4,
          1,
          3,
          1,
          8,
          2,
          5,
          6,
          1,
          1,
          6,
          5,
          1,
          4,
          1,
          3,
          5,
          8,
          6,
          4,
          5,
          3,
          10,
          4,
          3,
          4,
          1,
          1,
          1,
          10,
          6,
          4,
          1,
          5,
          6,
          2,
          5,
          7,
          4,
          7,
          4,
          4,
          6,
          7,
          5,
          3,
          3,
          3,
          4,
          11,
          4,
          3,
          4,
          3,
          2,
          1,
          1,
          2,
          7,
          4,
          4,
          3,
          2,
          3,
          4,
          3,
          3,
          3,
          1,
          1,
          6,
          4,
          2,
          3,
          4,
          1,
          10,
          6,
          6,
          1,
          2,
          3,
          2,
          7,
          2,
          5,
          2,
          4,
          2,
          2,
          8,
          8,
          5,
          4,
          5,
          3,
          3,
          6,
          9,
          4,
          6,
          2,
          2,
          1,
          1,
          7,
          1,
          4,
          3,
          3,
          5,
          3,
          1,
          5,
          2,
          1,
          2,
          7,
          4,
          3,
          7,
          4,
          3,
          9,
          7,
          7,
          7,
          3,
          3,
          5,
          5,
          3,
          3,
          9,
          3,
          2,
          7,
          5,
          6,
          2,
          9,
          5,
          3,
          4,
          1,
          5,
          4,
          6,
          1,
          4,
          8,
          10,
          4,
          2,
          6,
          5,
          1,
          6,
          5,
          8,
          3,
          1,
          2,
          1,
          7,
          4,
          3,
          4,
          11,
          4,
          5,
          5,
          7,
          4,
          4,
          2,
          4,
          10,
          11,
          10,
          4,
          4,
          2,
          2,
          1,
          5,
          4,
          5,
          5,
          2,
          2,
          8,
          4,
          4,
          8,
          4,
          5,
          4,
          10,
          7,
          5,
          7,
          3,
          5,
          11,
          6,
          4,
          10,
          11,
          3,
          2,
          4,
          6,
          7,
          5,
          5,
          1,
          3,
          7,
          4,
          12,
          11,
          8,
          2,
          6,
          6,
          10,
          3,
          14,
          6,
          3,
          6,
          7,
          6,
          5,
          11,
          2,
          1,
          7,
          5,
          6,
          4,
          10,
          4,
          7,
          11,
          8,
          5,
          4,
          6,
          3,
          6,
          3,
          7,
          5,
          2,
          7,
          1,
          5,
          10,
          7,
          5,
          12,
          4,
          1,
          2,
          11,
          4,
          7,
          5,
          15,
          3,
          4,
          7,
          9,
          14,
          9,
          12,
          3,
          4,
          4,
          9,
          11,
          4,
          9,
          3,
          4,
          5,
          11,
          4,
          12,
          1,
          2,
          1,
          2,
          9,
          5,
          4,
          7,
          2,
          1,
          10,
          3,
          6,
          6,
          3,
          4,
          2,
          9,
          13,
          7,
          4,
          4,
          3,
          2,
          6,
          7,
          7,
          10,
          8,
          4,
          4,
          4,
          8,
          7,
          11,
          8,
          1,
          5,
          10,
          11,
          4,
          5,
          9,
          2,
          5,
          7,
          7,
          3,
          9,
          5,
          1,
          1,
          10,
          5,
          5,
          4,
          5,
          5,
          4,
          3,
          3,
          4,
          4,
          8,
          2,
          6,
          10,
          11,
          8,
          5,
          9,
          5,
          2,
          6,
          5,
          5,
          7,
          7,
          7,
          2,
          2,
          7,
          7,
          1,
          7,
          4,
          7,
          5,
          4,
          4,
          2,
          1,
          17,
          8,
          6,
          5,
          6,
          2,
          1,
          7,
          9,
          5,
          4,
          2,
          13,
          3,
          6,
          3,
          8,
          5,
          4,
          4,
          2,
          4,
          5,
          7,
          9,
          8,
          6
         ],
         "yaxis": "y"
        },
        {
         "hovertemplate": "<b>OLS trendline</b><br>count = 4.95171e-08 * deposit_createdate + -73.4216<br>R<sup>2</sup>=0.103844<br><br>Deposit type=Dataset<br>Date of deposit=%{x}<br>Count of deposits=%{y} <b>(trend)</b><extra></extra>",
         "legendgroup": "Dataset",
         "marker": {
          "color": "#636efa",
          "symbol": "circle"
         },
         "mode": "lines",
         "name": "Dataset",
         "showlegend": false,
         "type": "scattergl",
         "x": [
          "2018-11-01T00:00:00",
          "2018-11-02T00:00:00",
          "2018-11-03T00:00:00",
          "2018-11-04T00:00:00",
          "2018-11-05T00:00:00",
          "2018-11-06T00:00:00",
          "2018-11-07T00:00:00",
          "2018-11-08T00:00:00",
          "2018-11-09T00:00:00",
          "2018-11-10T00:00:00",
          "2018-11-12T00:00:00",
          "2018-11-13T00:00:00",
          "2018-11-14T00:00:00",
          "2018-11-15T00:00:00",
          "2018-11-16T00:00:00",
          "2018-11-17T00:00:00",
          "2018-11-18T00:00:00",
          "2018-11-19T00:00:00",
          "2018-11-20T00:00:00",
          "2018-11-21T00:00:00",
          "2018-11-22T00:00:00",
          "2018-11-23T00:00:00",
          "2018-11-24T00:00:00",
          "2018-11-25T00:00:00",
          "2018-11-26T00:00:00",
          "2018-11-27T00:00:00",
          "2018-11-28T00:00:00",
          "2018-11-29T00:00:00",
          "2018-12-02T00:00:00",
          "2018-12-03T00:00:00",
          "2018-12-04T00:00:00",
          "2018-12-05T00:00:00",
          "2018-12-06T00:00:00",
          "2018-12-07T00:00:00",
          "2018-12-08T00:00:00",
          "2018-12-09T00:00:00",
          "2018-12-10T00:00:00",
          "2018-12-11T00:00:00",
          "2018-12-12T00:00:00",
          "2018-12-13T00:00:00",
          "2018-12-14T00:00:00",
          "2018-12-16T00:00:00",
          "2018-12-17T00:00:00",
          "2018-12-18T00:00:00",
          "2018-12-19T00:00:00",
          "2018-12-20T00:00:00",
          "2018-12-21T00:00:00",
          "2018-12-22T00:00:00",
          "2018-12-24T00:00:00",
          "2018-12-25T00:00:00",
          "2018-12-27T00:00:00",
          "2018-12-28T00:00:00",
          "2018-12-30T00:00:00",
          "2019-01-01T00:00:00",
          "2019-01-02T00:00:00",
          "2019-01-03T00:00:00",
          "2019-01-04T00:00:00",
          "2019-01-05T00:00:00",
          "2019-01-07T00:00:00",
          "2019-01-08T00:00:00",
          "2019-01-09T00:00:00",
          "2019-01-10T00:00:00",
          "2019-01-11T00:00:00",
          "2019-01-12T00:00:00",
          "2019-01-13T00:00:00",
          "2019-01-14T00:00:00",
          "2019-01-15T00:00:00",
          "2019-01-16T00:00:00",
          "2019-01-17T00:00:00",
          "2019-01-18T00:00:00",
          "2019-01-19T00:00:00",
          "2019-01-20T00:00:00",
          "2019-01-21T00:00:00",
          "2019-01-22T00:00:00",
          "2019-01-23T00:00:00",
          "2019-01-24T00:00:00",
          "2019-01-25T00:00:00",
          "2019-01-26T00:00:00",
          "2019-01-28T00:00:00",
          "2019-01-29T00:00:00",
          "2019-01-30T00:00:00",
          "2019-01-31T00:00:00",
          "2019-02-01T00:00:00",
          "2019-02-02T00:00:00",
          "2019-02-03T00:00:00",
          "2019-02-04T00:00:00",
          "2019-02-05T00:00:00",
          "2019-02-06T00:00:00",
          "2019-02-07T00:00:00",
          "2019-02-08T00:00:00",
          "2019-02-09T00:00:00",
          "2019-02-10T00:00:00",
          "2019-02-11T00:00:00",
          "2019-02-12T00:00:00",
          "2019-02-13T00:00:00",
          "2019-02-15T00:00:00",
          "2019-02-16T00:00:00",
          "2019-02-17T00:00:00",
          "2019-02-18T00:00:00",
          "2019-02-19T00:00:00",
          "2019-02-20T00:00:00",
          "2019-02-21T00:00:00",
          "2019-02-22T00:00:00",
          "2019-02-23T00:00:00",
          "2019-02-24T00:00:00",
          "2019-02-25T00:00:00",
          "2019-02-26T00:00:00",
          "2019-02-27T00:00:00",
          "2019-02-28T00:00:00",
          "2019-03-01T00:00:00",
          "2019-03-04T00:00:00",
          "2019-03-05T00:00:00",
          "2019-03-06T00:00:00",
          "2019-03-07T00:00:00",
          "2019-03-08T00:00:00",
          "2019-03-09T00:00:00",
          "2019-03-10T00:00:00",
          "2019-03-11T00:00:00",
          "2019-03-12T00:00:00",
          "2019-03-13T00:00:00",
          "2019-03-14T00:00:00",
          "2019-03-15T00:00:00",
          "2019-03-16T00:00:00",
          "2019-03-17T00:00:00",
          "2019-03-18T00:00:00",
          "2019-03-19T00:00:00",
          "2019-03-20T00:00:00",
          "2019-03-21T00:00:00",
          "2019-03-22T00:00:00",
          "2019-03-23T00:00:00",
          "2019-03-24T00:00:00",
          "2019-03-25T00:00:00",
          "2019-03-26T00:00:00",
          "2019-03-27T00:00:00",
          "2019-03-28T00:00:00",
          "2019-03-29T00:00:00",
          "2019-03-30T00:00:00",
          "2019-03-31T00:00:00",
          "2019-04-01T00:00:00",
          "2019-04-02T00:00:00",
          "2019-04-03T00:00:00",
          "2019-04-04T00:00:00",
          "2019-04-05T00:00:00",
          "2019-04-06T00:00:00",
          "2019-04-07T00:00:00",
          "2019-04-08T00:00:00",
          "2019-04-09T00:00:00",
          "2019-04-10T00:00:00",
          "2019-04-11T00:00:00",
          "2019-04-12T00:00:00",
          "2019-04-13T00:00:00",
          "2019-04-14T00:00:00",
          "2019-04-15T00:00:00",
          "2019-04-16T00:00:00",
          "2019-04-17T00:00:00",
          "2019-04-18T00:00:00",
          "2019-04-19T00:00:00",
          "2019-04-20T00:00:00",
          "2019-04-21T00:00:00",
          "2019-04-22T00:00:00",
          "2019-04-23T00:00:00",
          "2019-04-24T00:00:00",
          "2019-04-25T00:00:00",
          "2019-04-26T00:00:00",
          "2019-04-27T00:00:00",
          "2019-04-28T00:00:00",
          "2019-04-29T00:00:00",
          "2019-04-30T00:00:00",
          "2019-05-01T00:00:00",
          "2019-05-02T00:00:00",
          "2019-05-03T00:00:00",
          "2019-05-04T00:00:00",
          "2019-05-06T00:00:00",
          "2019-05-07T00:00:00",
          "2019-05-08T00:00:00",
          "2019-05-09T00:00:00",
          "2019-05-10T00:00:00",
          "2019-05-11T00:00:00",
          "2019-05-12T00:00:00",
          "2019-05-13T00:00:00",
          "2019-05-14T00:00:00",
          "2019-05-15T00:00:00",
          "2019-05-16T00:00:00",
          "2019-05-17T00:00:00",
          "2019-05-18T00:00:00",
          "2019-05-19T00:00:00",
          "2019-05-20T00:00:00",
          "2019-05-21T00:00:00",
          "2019-05-22T00:00:00",
          "2019-05-23T00:00:00",
          "2019-05-24T00:00:00",
          "2019-05-25T00:00:00",
          "2019-05-26T00:00:00",
          "2019-05-27T00:00:00",
          "2019-05-28T00:00:00",
          "2019-05-29T00:00:00",
          "2019-05-30T00:00:00",
          "2019-05-31T00:00:00",
          "2019-06-02T00:00:00",
          "2019-06-03T00:00:00",
          "2019-06-04T00:00:00",
          "2019-06-05T00:00:00",
          "2019-06-06T00:00:00",
          "2019-06-07T00:00:00",
          "2019-06-08T00:00:00",
          "2019-06-10T00:00:00",
          "2019-06-12T00:00:00",
          "2019-06-13T00:00:00",
          "2019-06-14T00:00:00",
          "2019-06-15T00:00:00",
          "2019-06-16T00:00:00",
          "2019-06-17T00:00:00",
          "2019-06-18T00:00:00",
          "2019-06-19T00:00:00",
          "2019-06-20T00:00:00",
          "2019-06-21T00:00:00",
          "2019-06-22T00:00:00",
          "2019-06-23T00:00:00",
          "2019-06-24T00:00:00",
          "2019-06-25T00:00:00",
          "2019-06-26T00:00:00",
          "2019-06-27T00:00:00",
          "2019-06-28T00:00:00",
          "2019-06-30T00:00:00",
          "2019-07-01T00:00:00",
          "2019-07-02T00:00:00",
          "2019-07-03T00:00:00",
          "2019-07-04T00:00:00",
          "2019-07-05T00:00:00",
          "2019-07-06T00:00:00",
          "2019-07-07T00:00:00",
          "2019-07-08T00:00:00",
          "2019-07-09T00:00:00",
          "2019-07-10T00:00:00",
          "2019-07-11T00:00:00",
          "2019-07-12T00:00:00",
          "2019-07-13T00:00:00",
          "2019-07-14T00:00:00",
          "2019-07-15T00:00:00",
          "2019-07-16T00:00:00",
          "2019-07-17T00:00:00",
          "2019-07-18T00:00:00",
          "2019-07-19T00:00:00",
          "2019-07-21T00:00:00",
          "2019-07-22T00:00:00",
          "2019-07-23T00:00:00",
          "2019-07-24T00:00:00",
          "2019-07-25T00:00:00",
          "2019-07-26T00:00:00",
          "2019-07-29T00:00:00",
          "2019-07-30T00:00:00",
          "2019-07-31T00:00:00",
          "2019-08-01T00:00:00",
          "2019-08-02T00:00:00",
          "2019-08-04T00:00:00",
          "2019-08-05T00:00:00",
          "2019-08-06T00:00:00",
          "2019-08-07T00:00:00",
          "2019-08-08T00:00:00",
          "2019-08-09T00:00:00",
          "2019-08-10T00:00:00",
          "2019-08-11T00:00:00",
          "2019-08-12T00:00:00",
          "2019-08-13T00:00:00",
          "2019-08-14T00:00:00",
          "2019-08-15T00:00:00",
          "2019-08-16T00:00:00",
          "2019-08-17T00:00:00",
          "2019-08-19T00:00:00",
          "2019-08-20T00:00:00",
          "2019-08-21T00:00:00",
          "2019-08-22T00:00:00",
          "2019-08-23T00:00:00",
          "2019-08-25T00:00:00",
          "2019-08-26T00:00:00",
          "2019-08-27T00:00:00",
          "2019-08-28T00:00:00",
          "2019-08-29T00:00:00",
          "2019-08-30T00:00:00",
          "2019-08-31T00:00:00",
          "2019-09-01T00:00:00",
          "2019-09-02T00:00:00",
          "2019-09-03T00:00:00",
          "2019-09-04T00:00:00",
          "2019-09-05T00:00:00",
          "2019-09-06T00:00:00",
          "2019-09-07T00:00:00",
          "2019-09-08T00:00:00",
          "2019-09-09T00:00:00",
          "2019-09-10T00:00:00",
          "2019-09-11T00:00:00",
          "2019-09-12T00:00:00",
          "2019-09-13T00:00:00",
          "2019-09-14T00:00:00",
          "2019-09-15T00:00:00",
          "2019-09-16T00:00:00",
          "2019-09-17T00:00:00",
          "2019-09-18T00:00:00",
          "2019-09-19T00:00:00",
          "2019-09-20T00:00:00",
          "2019-09-21T00:00:00",
          "2019-09-22T00:00:00",
          "2019-09-23T00:00:00",
          "2019-09-24T00:00:00",
          "2019-09-25T00:00:00",
          "2019-09-26T00:00:00",
          "2019-09-27T00:00:00",
          "2019-09-28T00:00:00",
          "2019-09-30T00:00:00",
          "2019-10-01T00:00:00",
          "2019-10-02T00:00:00",
          "2019-10-03T00:00:00",
          "2019-10-04T00:00:00",
          "2019-10-05T00:00:00",
          "2019-10-06T00:00:00",
          "2019-10-07T00:00:00",
          "2019-10-08T00:00:00",
          "2019-10-09T00:00:00",
          "2019-10-10T00:00:00",
          "2019-10-11T00:00:00",
          "2019-10-12T00:00:00",
          "2019-10-13T00:00:00",
          "2019-10-14T00:00:00",
          "2019-10-15T00:00:00",
          "2019-10-16T00:00:00",
          "2019-10-17T00:00:00",
          "2019-10-18T00:00:00",
          "2019-10-19T00:00:00",
          "2019-10-20T00:00:00",
          "2019-10-21T00:00:00",
          "2019-10-22T00:00:00",
          "2019-10-23T00:00:00",
          "2019-10-24T00:00:00",
          "2019-10-25T00:00:00",
          "2019-10-27T00:00:00",
          "2019-10-28T00:00:00",
          "2019-10-29T00:00:00",
          "2019-10-30T00:00:00",
          "2019-10-31T00:00:00",
          "2019-11-01T00:00:00",
          "2019-11-02T00:00:00",
          "2019-11-03T00:00:00",
          "2019-11-04T00:00:00",
          "2019-11-05T00:00:00",
          "2019-11-06T00:00:00",
          "2019-11-07T00:00:00",
          "2019-11-08T00:00:00",
          "2019-11-09T00:00:00",
          "2019-11-10T00:00:00",
          "2019-11-11T00:00:00",
          "2019-11-12T00:00:00",
          "2019-11-13T00:00:00",
          "2019-11-14T00:00:00",
          "2019-11-15T00:00:00",
          "2019-11-16T00:00:00",
          "2019-11-17T00:00:00",
          "2019-11-18T00:00:00",
          "2019-11-19T00:00:00",
          "2019-11-20T00:00:00",
          "2019-11-21T00:00:00",
          "2019-11-22T00:00:00",
          "2019-11-24T00:00:00",
          "2019-11-25T00:00:00",
          "2019-11-26T00:00:00",
          "2019-11-27T00:00:00",
          "2019-11-28T00:00:00",
          "2019-11-29T00:00:00",
          "2019-11-30T00:00:00",
          "2019-12-01T00:00:00",
          "2019-12-02T00:00:00",
          "2019-12-03T00:00:00",
          "2019-12-04T00:00:00",
          "2019-12-05T00:00:00",
          "2019-12-06T00:00:00",
          "2019-12-07T00:00:00",
          "2019-12-08T00:00:00",
          "2019-12-09T00:00:00",
          "2019-12-10T00:00:00",
          "2019-12-11T00:00:00",
          "2019-12-12T00:00:00",
          "2019-12-13T00:00:00",
          "2019-12-14T00:00:00",
          "2019-12-15T00:00:00",
          "2019-12-16T00:00:00",
          "2019-12-17T00:00:00",
          "2019-12-18T00:00:00",
          "2019-12-19T00:00:00",
          "2019-12-20T00:00:00",
          "2019-12-21T00:00:00",
          "2019-12-22T00:00:00",
          "2019-12-23T00:00:00",
          "2019-12-24T00:00:00",
          "2019-12-25T00:00:00",
          "2019-12-26T00:00:00",
          "2019-12-27T00:00:00",
          "2019-12-28T00:00:00",
          "2019-12-30T00:00:00",
          "2019-12-31T00:00:00",
          "2020-01-01T00:00:00",
          "2020-01-02T00:00:00",
          "2020-01-03T00:00:00",
          "2020-01-04T00:00:00",
          "2020-01-05T00:00:00",
          "2020-01-06T00:00:00",
          "2020-01-07T00:00:00",
          "2020-01-08T00:00:00",
          "2020-01-09T00:00:00",
          "2020-01-10T00:00:00",
          "2020-01-12T00:00:00",
          "2020-01-13T00:00:00",
          "2020-01-14T00:00:00",
          "2020-01-15T00:00:00",
          "2020-01-16T00:00:00",
          "2020-01-17T00:00:00",
          "2020-01-18T00:00:00",
          "2020-01-20T00:00:00",
          "2020-01-21T00:00:00",
          "2020-01-22T00:00:00",
          "2020-01-23T00:00:00",
          "2020-01-24T00:00:00",
          "2020-01-25T00:00:00",
          "2020-01-26T00:00:00",
          "2020-01-27T00:00:00",
          "2020-01-28T00:00:00",
          "2020-01-29T00:00:00",
          "2020-01-30T00:00:00",
          "2020-01-31T00:00:00",
          "2020-02-01T00:00:00",
          "2020-02-02T00:00:00",
          "2020-02-03T00:00:00",
          "2020-02-04T00:00:00",
          "2020-02-05T00:00:00",
          "2020-02-06T00:00:00",
          "2020-02-07T00:00:00",
          "2020-02-08T00:00:00",
          "2020-02-09T00:00:00",
          "2020-02-10T00:00:00",
          "2020-02-11T00:00:00",
          "2020-02-12T00:00:00",
          "2020-02-13T00:00:00",
          "2020-02-14T00:00:00",
          "2020-02-15T00:00:00",
          "2020-02-16T00:00:00",
          "2020-02-17T00:00:00",
          "2020-02-18T00:00:00",
          "2020-02-19T00:00:00",
          "2020-02-20T00:00:00",
          "2020-02-21T00:00:00",
          "2020-02-22T00:00:00",
          "2020-02-23T00:00:00",
          "2020-02-24T00:00:00",
          "2020-02-25T00:00:00",
          "2020-02-26T00:00:00",
          "2020-02-27T00:00:00",
          "2020-02-28T00:00:00",
          "2020-02-29T00:00:00",
          "2020-03-01T00:00:00",
          "2020-03-02T00:00:00",
          "2020-03-03T00:00:00",
          "2020-03-04T00:00:00",
          "2020-03-05T00:00:00",
          "2020-03-06T00:00:00",
          "2020-03-07T00:00:00",
          "2020-03-09T00:00:00",
          "2020-03-10T00:00:00",
          "2020-03-11T00:00:00",
          "2020-03-12T00:00:00",
          "2020-03-13T00:00:00",
          "2020-03-14T00:00:00",
          "2020-03-15T00:00:00",
          "2020-03-16T00:00:00",
          "2020-03-17T00:00:00",
          "2020-03-18T00:00:00",
          "2020-03-19T00:00:00",
          "2020-03-20T00:00:00",
          "2020-03-21T00:00:00",
          "2020-03-22T00:00:00",
          "2020-03-23T00:00:00",
          "2020-03-24T00:00:00",
          "2020-03-25T00:00:00",
          "2020-03-26T00:00:00",
          "2020-03-27T00:00:00",
          "2020-03-28T00:00:00",
          "2020-03-29T00:00:00",
          "2020-03-30T00:00:00",
          "2020-03-31T00:00:00",
          "2020-04-02T00:00:00",
          "2020-04-03T00:00:00",
          "2020-04-04T00:00:00",
          "2020-04-05T00:00:00",
          "2020-04-06T00:00:00",
          "2020-04-07T00:00:00",
          "2020-04-08T00:00:00",
          "2020-04-09T00:00:00",
          "2020-04-10T00:00:00",
          "2020-04-11T00:00:00",
          "2020-04-12T00:00:00",
          "2020-04-13T00:00:00",
          "2020-04-14T00:00:00",
          "2020-04-15T00:00:00",
          "2020-04-16T00:00:00",
          "2020-04-17T00:00:00",
          "2020-04-18T00:00:00",
          "2020-04-19T00:00:00",
          "2020-04-20T00:00:00",
          "2020-04-21T00:00:00",
          "2020-04-22T00:00:00",
          "2020-04-23T00:00:00",
          "2020-04-24T00:00:00",
          "2020-04-25T00:00:00",
          "2020-04-26T00:00:00",
          "2020-04-27T00:00:00",
          "2020-04-28T00:00:00",
          "2020-04-29T00:00:00",
          "2020-04-30T00:00:00",
          "2020-05-01T00:00:00",
          "2020-05-02T00:00:00",
          "2020-05-04T00:00:00",
          "2020-05-05T00:00:00",
          "2020-05-06T00:00:00",
          "2020-05-07T00:00:00",
          "2020-05-08T00:00:00",
          "2020-05-09T00:00:00",
          "2020-05-10T00:00:00",
          "2020-05-11T00:00:00",
          "2020-05-12T00:00:00",
          "2020-05-13T00:00:00",
          "2020-05-14T00:00:00",
          "2020-05-15T00:00:00",
          "2020-05-16T00:00:00",
          "2020-05-17T00:00:00",
          "2020-05-18T00:00:00",
          "2020-05-19T00:00:00",
          "2020-05-20T00:00:00",
          "2020-05-21T00:00:00",
          "2020-05-22T00:00:00",
          "2020-05-23T00:00:00",
          "2020-05-24T00:00:00",
          "2020-05-25T00:00:00",
          "2020-05-26T00:00:00",
          "2020-05-27T00:00:00",
          "2020-05-28T00:00:00",
          "2020-05-29T00:00:00",
          "2020-05-30T00:00:00",
          "2020-05-31T00:00:00",
          "2020-06-01T00:00:00",
          "2020-06-02T00:00:00",
          "2020-06-03T00:00:00",
          "2020-06-04T00:00:00",
          "2020-06-05T00:00:00",
          "2020-06-06T00:00:00",
          "2020-06-07T00:00:00",
          "2020-06-08T00:00:00",
          "2020-06-09T00:00:00",
          "2020-06-10T00:00:00",
          "2020-06-11T00:00:00",
          "2020-06-12T00:00:00",
          "2020-06-13T00:00:00",
          "2020-06-14T00:00:00",
          "2020-06-15T00:00:00",
          "2020-06-16T00:00:00",
          "2020-06-17T00:00:00",
          "2020-06-18T00:00:00",
          "2020-06-19T00:00:00",
          "2020-06-20T00:00:00",
          "2020-06-21T00:00:00",
          "2020-06-22T00:00:00",
          "2020-06-23T00:00:00",
          "2020-06-24T00:00:00",
          "2020-06-25T00:00:00",
          "2020-06-26T00:00:00",
          "2020-06-27T00:00:00",
          "2020-06-28T00:00:00",
          "2020-06-29T00:00:00",
          "2020-06-30T00:00:00",
          "2020-07-01T00:00:00",
          "2020-07-02T00:00:00",
          "2020-07-03T00:00:00",
          "2020-07-04T00:00:00",
          "2020-07-05T00:00:00",
          "2020-07-06T00:00:00",
          "2020-07-07T00:00:00",
          "2020-07-08T00:00:00",
          "2020-07-09T00:00:00",
          "2020-07-10T00:00:00",
          "2020-07-11T00:00:00",
          "2020-07-12T00:00:00",
          "2020-07-13T00:00:00",
          "2020-07-14T00:00:00",
          "2020-07-15T00:00:00",
          "2020-07-16T00:00:00",
          "2020-07-17T00:00:00",
          "2020-07-18T00:00:00",
          "2020-07-19T00:00:00",
          "2020-07-20T00:00:00",
          "2020-07-21T00:00:00",
          "2020-07-22T00:00:00",
          "2020-07-23T00:00:00",
          "2020-07-24T00:00:00",
          "2020-07-25T00:00:00",
          "2020-07-26T00:00:00",
          "2020-07-27T00:00:00",
          "2020-07-28T00:00:00",
          "2020-07-29T00:00:00",
          "2020-07-30T00:00:00",
          "2020-07-31T00:00:00",
          "2020-08-01T00:00:00",
          "2020-08-02T00:00:00",
          "2020-08-03T00:00:00",
          "2020-08-04T00:00:00",
          "2020-08-05T00:00:00",
          "2020-08-06T00:00:00",
          "2020-08-07T00:00:00",
          "2020-08-08T00:00:00",
          "2020-08-09T00:00:00",
          "2020-08-10T00:00:00",
          "2020-08-11T00:00:00",
          "2020-08-12T00:00:00",
          "2020-08-13T00:00:00",
          "2020-08-14T00:00:00",
          "2020-08-15T00:00:00",
          "2020-08-16T00:00:00",
          "2020-08-17T00:00:00",
          "2020-08-18T00:00:00",
          "2020-08-19T00:00:00",
          "2020-08-20T00:00:00",
          "2020-08-21T00:00:00",
          "2020-08-22T00:00:00",
          "2020-08-23T00:00:00",
          "2020-08-24T00:00:00",
          "2020-08-25T00:00:00",
          "2020-08-26T00:00:00",
          "2020-08-27T00:00:00",
          "2020-08-28T00:00:00",
          "2020-08-29T00:00:00",
          "2020-08-30T00:00:00",
          "2020-08-31T00:00:00",
          "2020-09-01T00:00:00",
          "2020-09-02T00:00:00",
          "2020-09-03T00:00:00",
          "2020-09-04T00:00:00",
          "2020-09-05T00:00:00",
          "2020-09-07T00:00:00",
          "2020-09-08T00:00:00",
          "2020-09-09T00:00:00",
          "2020-09-10T00:00:00",
          "2020-09-11T00:00:00",
          "2020-09-12T00:00:00",
          "2020-09-14T00:00:00",
          "2020-09-15T00:00:00",
          "2020-09-16T00:00:00",
          "2020-09-17T00:00:00",
          "2020-09-18T00:00:00",
          "2020-09-19T00:00:00",
          "2020-09-20T00:00:00",
          "2020-09-21T00:00:00",
          "2020-09-22T00:00:00",
          "2020-09-23T00:00:00",
          "2020-09-24T00:00:00",
          "2020-09-25T00:00:00",
          "2020-09-26T00:00:00",
          "2020-09-27T00:00:00",
          "2020-09-28T00:00:00",
          "2020-09-29T00:00:00",
          "2020-09-30T00:00:00",
          "2020-10-01T00:00:00",
          "2020-10-02T00:00:00",
          "2020-10-03T00:00:00",
          "2020-10-04T00:00:00",
          "2020-10-05T00:00:00",
          "2020-10-06T00:00:00",
          "2020-10-07T00:00:00",
          "2020-10-08T00:00:00",
          "2020-10-09T00:00:00",
          "2020-10-10T00:00:00",
          "2020-10-11T00:00:00",
          "2020-10-12T00:00:00",
          "2020-10-13T00:00:00",
          "2020-10-14T00:00:00",
          "2020-10-15T00:00:00",
          "2020-10-16T00:00:00",
          "2020-10-17T00:00:00",
          "2020-10-18T00:00:00",
          "2020-10-19T00:00:00",
          "2020-10-20T00:00:00",
          "2020-10-21T00:00:00",
          "2020-10-22T00:00:00",
          "2020-10-23T00:00:00",
          "2020-10-24T00:00:00",
          "2020-10-25T00:00:00",
          "2020-10-26T00:00:00",
          "2020-10-27T00:00:00",
          "2020-10-28T00:00:00",
          "2020-10-29T00:00:00",
          "2020-10-30T00:00:00",
          "2020-10-31T00:00:00"
         ],
         "xaxis": "x",
         "y": [
          2.885715222635014,
          2.8899934963683336,
          2.8942717701016534,
          2.898550043834973,
          2.902828317568293,
          2.9071065913016128,
          2.9113848650349325,
          2.9156631387682523,
          2.919941412501572,
          2.924219686234892,
          2.9327762337015315,
          2.9370545074348513,
          2.941332781168171,
          2.945611054901491,
          2.9498893286347965,
          2.9541676023681163,
          2.958445876101436,
          2.962724149834756,
          2.9670024235680756,
          2.9712806973013954,
          2.9755589710347152,
          2.979837244768035,
          2.984115518501355,
          2.9883937922346746,
          2.9926720659679944,
          2.996950339701314,
          3.001228613434634,
          3.0055068871679538,
          3.018341708367913,
          3.022619982101233,
          3.0268982558345527,
          3.0311765295678725,
          3.035454803301178,
          3.039733077034498,
          3.0440113507678177,
          3.0482896245011375,
          3.0525678982344573,
          3.056846171967777,
          3.061124445701097,
          3.0654027194344167,
          3.0696809931677365,
          3.078237540634376,
          3.082515814367696,
          3.0867940881010156,
          3.0910723618343354,
          3.095350635567655,
          3.099628909300975,
          3.103907183034295,
          3.1124637305009344,
          3.116742004234254,
          3.1252985517008796,
          3.1295768254341993,
          3.138133372900839,
          3.1466899203674785,
          3.1509681941007983,
          3.155246467834118,
          3.159524741567438,
          3.1638030153007577,
          3.1723595627673973,
          3.176637836500717,
          3.180916110234037,
          3.1851943839673567,
          3.1894726577006765,
          3.1937509314339962,
          3.198029205167316,
          3.202307478900636,
          3.2065857526339414,
          3.210864026367261,
          3.215142300100581,
          3.219420573833901,
          3.2236988475672206,
          3.2279771213005404,
          3.23225539503386,
          3.23653366876718,
          3.2408119425004998,
          3.2450902162338195,
          3.2493684899671393,
          3.253646763700459,
          3.2622033111670987,
          3.2664815849004185,
          3.2707598586337383,
          3.275038132367058,
          3.279316406100378,
          3.2835946798336977,
          3.2878729535670033,
          3.292151227300323,
          3.296429501033643,
          3.3007077747669626,
          3.3049860485002824,
          3.3092643222336022,
          3.313542595966922,
          3.317820869700242,
          3.3220991434335616,
          3.3263774171668814,
          3.330655690900201,
          3.339212238366841,
          3.3434905121001606,
          3.3477687858334804,
          3.3520470595668,
          3.35632533330012,
          3.3606036070334397,
          3.3648818807667595,
          3.3691601545000793,
          3.373438428233385,
          3.3777167019667047,
          3.3819949757000245,
          3.3862732494333443,
          3.390551523166664,
          3.394829796899984,
          3.3991080706333037,
          3.411942891833263,
          3.416221165566583,
          3.4204994392999026,
          3.4247777130332224,
          3.429055986766542,
          3.433334260499862,
          3.437612534233182,
          3.4418908079665016,
          3.4461690816998214,
          3.450447355433141,
          3.454725629166461,
          3.4590039028997666,
          3.4632821766330864,
          3.467560450366406,
          3.471838724099726,
          3.4761169978330457,
          3.4803952715663655,
          3.4846735452996853,
          3.488951819033005,
          3.493230092766325,
          3.4975083664996447,
          3.5017866402329645,
          3.5060649139662843,
          3.510343187699604,
          3.514621461432924,
          3.5188997351662437,
          3.5231780088995635,
          3.5274562826328832,
          3.531734556366203,
          3.536012830099523,
          3.5402911038328426,
          3.544569377566148,
          3.548847651299468,
          3.553125925032788,
          3.5574041987661076,
          3.5616824724994274,
          3.565960746232747,
          3.570239019966067,
          3.5745172936993868,
          3.5787955674327065,
          3.5830738411660263,
          3.587352114899346,
          3.591630388632666,
          3.5959086623659857,
          3.6001869360993055,
          3.6044652098326253,
          3.608743483565945,
          3.613021757299265,
          3.6173000310325847,
          3.6215783047659045,
          3.62585657849921,
          3.63013485223253,
          3.6344131259658496,
          3.6386913996991694,
          3.6429696734324892,
          3.647247947165809,
          3.651526220899129,
          3.6558044946324486,
          3.6600827683657684,
          3.664361042099088,
          3.668639315832408,
          3.672917589565728,
          3.6814741370323674,
          3.685752410765687,
          3.690030684499007,
          3.6943089582323267,
          3.6985872319656465,
          3.7028655056989663,
          3.707143779432286,
          3.7114220531655917,
          3.7157003268989115,
          3.7199786006322313,
          3.724256874365551,
          3.728535148098871,
          3.7328134218321907,
          3.7370916955655105,
          3.7413699692988303,
          3.74564824303215,
          3.74992651676547,
          3.7542047904987896,
          3.7584830642321094,
          3.762761337965429,
          3.767039611698749,
          3.771317885432069,
          3.7755961591653886,
          3.7798744328987084,
          3.784152706632028,
          3.788430980365348,
          3.7969875278319734,
          3.801265801565293,
          3.805544075298613,
          3.8098223490319327,
          3.8141006227652525,
          3.8183788964985723,
          3.822657170231892,
          3.8312137176985317,
          3.8397702651651713,
          3.844048538898491,
          3.848326812631811,
          3.8526050863651307,
          3.8568833600984505,
          3.8611616338317702,
          3.86543990756509,
          3.86971818129841,
          3.8739964550317296,
          3.8782747287650494,
          3.882553002498355,
          3.886831276231675,
          3.8911095499649946,
          3.8953878236983144,
          3.899666097431634,
          3.903944371164954,
          3.9082226448982738,
          3.9167791923649133,
          3.921057466098233,
          3.925335739831553,
          3.9296140135648727,
          3.9338922872981925,
          3.9381705610315123,
          3.942448834764832,
          3.946727108498152,
          3.9510053822314717,
          3.9552836559647915,
          3.9595619296981113,
          3.963840203431417,
          3.9681184771647366,
          3.9723967508980564,
          3.9766750246313762,
          3.980953298364696,
          3.985231572098016,
          3.9895098458313356,
          3.9937881195646554,
          3.998066393297975,
          4.006622940764615,
          4.010901214497935,
          4.015179488231254,
          4.019457761964574,
          4.023736035697894,
          4.028014309431214,
          4.040849130631173,
          4.045127404364493,
          4.0494056780977985,
          4.053683951831118,
          4.057962225564438,
          4.066518773031078,
          4.0707970467643975,
          4.075075320497717,
          4.079353594231037,
          4.083631867964357,
          4.087910141697677,
          4.092188415430996,
          4.096466689164316,
          4.100744962897636,
          4.105023236630956,
          4.109301510364276,
          4.113579784097595,
          4.117858057830915,
          4.122136331564235,
          4.130692879030875,
          4.13497115276418,
          4.1392494264975,
          4.14352770023082,
          4.1478059739641395,
          4.156362521430779,
          4.160640795164099,
          4.164919068897419,
          4.1691973426307385,
          4.173475616364058,
          4.177753890097378,
          4.182032163830698,
          4.186310437564018,
          4.1905887112973375,
          4.194866985030657,
          4.199145258763977,
          4.203423532497297,
          4.207701806230617,
          4.211980079963936,
          4.216258353697256,
          4.220536627430562,
          4.224814901163882,
          4.229093174897201,
          4.233371448630521,
          4.237649722363841,
          4.241927996097161,
          4.2462062698304806,
          4.2504845435638,
          4.25476281729712,
          4.25904109103044,
          4.26331936476376,
          4.2675976384970795,
          4.271875912230399,
          4.276154185963719,
          4.280432459697039,
          4.284710733430359,
          4.2889890071636785,
          4.293267280896998,
          4.297545554630318,
          4.301823828363624,
          4.310380375830263,
          4.314658649563583,
          4.318936923296903,
          4.323215197030223,
          4.327493470763542,
          4.331771744496862,
          4.336050018230182,
          4.340328291963502,
          4.344606565696822,
          4.348884839430141,
          4.353163113163461,
          4.357441386896781,
          4.361719660630101,
          4.3659979343634205,
          4.37027620809674,
          4.37455448183006,
          4.37883275556338,
          4.3831110292967,
          4.387389303030005,
          4.391667576763325,
          4.395945850496645,
          4.400224124229965,
          4.4045023979632845,
          4.408780671696604,
          4.413058945429924,
          4.417337219163244,
          4.425893766629883,
          4.430172040363203,
          4.434450314096523,
          4.438728587829843,
          4.443006861563163,
          4.447285135296482,
          4.451563409029802,
          4.455841682763122,
          4.460119956496442,
          4.464398230229762,
          4.468676503963081,
          4.472954777696387,
          4.477233051429707,
          4.4815113251630265,
          4.485789598896346,
          4.490067872629666,
          4.494346146362986,
          4.498624420096306,
          4.5029026938296255,
          4.507180967562945,
          4.511459241296265,
          4.515737515029585,
          4.520015788762905,
          4.5242940624962245,
          4.528572336229544,
          4.532850609962864,
          4.537128883696184,
          4.545685431162823,
          4.549963704896143,
          4.554241978629449,
          4.558520252362769,
          4.562798526096088,
          4.567076799829408,
          4.571355073562728,
          4.575633347296048,
          4.5799116210293676,
          4.584189894762687,
          4.588468168496007,
          4.592746442229327,
          4.597024715962647,
          4.6013029896959665,
          4.605581263429286,
          4.609859537162606,
          4.614137810895926,
          4.618416084629246,
          4.6226943583625655,
          4.626972632095885,
          4.631250905829205,
          4.635529179562525,
          4.63980745329583,
          4.64408572702915,
          4.64836400076247,
          4.65264227449579,
          4.65692054822911,
          4.661198821962429,
          4.665477095695749,
          4.669755369429069,
          4.674033643162389,
          4.678311916895709,
          4.682590190629028,
          4.686868464362348,
          4.691146738095668,
          4.6997032855623075,
          4.703981559295627,
          4.708259833028947,
          4.712538106762267,
          4.716816380495587,
          4.7210946542289065,
          4.725372927962212,
          4.729651201695532,
          4.733929475428852,
          4.7382077491621715,
          4.742486022895491,
          4.746764296628811,
          4.755320844095451,
          4.75959911782877,
          4.76387739156209,
          4.76815566529541,
          4.77243393902873,
          4.77671221276205,
          4.780990486495369,
          4.789547033962009,
          4.793825307695329,
          4.798103581428649,
          4.802381855161968,
          4.806660128895288,
          4.810938402628594,
          4.8152166763619135,
          4.819494950095233,
          4.823773223828553,
          4.828051497561873,
          4.832329771295193,
          4.8366080450285125,
          4.840886318761832,
          4.845164592495152,
          4.849442866228472,
          4.853721139961792,
          4.8579994136951115,
          4.862277687428431,
          4.866555961161751,
          4.870834234895071,
          4.875112508628391,
          4.87939078236171,
          4.88366905609503,
          4.88794732982835,
          4.892225603561656,
          4.896503877294975,
          4.900782151028295,
          4.905060424761615,
          4.909338698494935,
          4.9136169722282546,
          4.917895245961574,
          4.922173519694894,
          4.926451793428214,
          4.930730067161534,
          4.9350083408948535,
          4.939286614628173,
          4.943564888361493,
          4.947843162094813,
          4.952121435828133,
          4.9563997095614525,
          4.960677983294772,
          4.964956257028092,
          4.969234530761412,
          4.973512804494732,
          4.977791078228037,
          4.982069351961357,
          4.986347625694677,
          4.990625899427997,
          4.999182446894636,
          5.003460720627956,
          5.007738994361276,
          5.012017268094596,
          5.016295541827915,
          5.020573815561235,
          5.024852089294555,
          5.029130363027875,
          5.0334086367611945,
          5.037686910494514,
          5.041965184227834,
          5.046243457961154,
          5.050521731694474,
          5.0548000054277935,
          5.059078279161113,
          5.063356552894419,
          5.067634826627739,
          5.0719131003610585,
          5.076191374094378,
          5.080469647827698,
          5.084747921561018,
          5.089026195294338,
          5.093304469027657,
          5.101861016494297,
          5.106139290227617,
          5.110417563960937,
          5.114695837694256,
          5.118974111427576,
          5.123252385160896,
          5.127530658894216,
          5.131808932627536,
          5.136087206360855,
          5.140365480094175,
          5.144643753827495,
          5.1489220275608005,
          5.15320030129412,
          5.15747857502744,
          5.16175684876076,
          5.16603512249408,
          5.1703133962273995,
          5.174591669960719,
          5.178869943694039,
          5.183148217427359,
          5.187426491160679,
          5.1917047648939985,
          5.195983038627318,
          5.200261312360638,
          5.204539586093958,
          5.208817859827278,
          5.213096133560597,
          5.217374407293917,
          5.221652681027237,
          5.225930954760557,
          5.230209228493862,
          5.238765775960502,
          5.243044049693822,
          5.2473223234271416,
          5.251600597160461,
          5.255878870893781,
          5.260157144627101,
          5.264435418360421,
          5.2687136920937405,
          5.27299196582706,
          5.27727023956038,
          5.2815485132937,
          5.28582678702702,
          5.2901050607603395,
          5.294383334493659,
          5.298661608226979,
          5.302939881960299,
          5.307218155693619,
          5.3114964294269384,
          5.315774703160244,
          5.320052976893564,
          5.324331250626884,
          5.328609524360203,
          5.332887798093523,
          5.337166071826843,
          5.341444345560163,
          5.345722619293483,
          5.350000893026802,
          5.354279166760122,
          5.358557440493442,
          5.362835714226762,
          5.3671139879600815,
          5.371392261693401,
          5.375670535426721,
          5.379948809160041,
          5.384227082893361,
          5.3885053566266805,
          5.39278363036,
          5.39706190409332,
          5.401340177826626,
          5.4056184515599455,
          5.409896725293265,
          5.414174999026585,
          5.418453272759905,
          5.422731546493225,
          5.427009820226544,
          5.431288093959864,
          5.435566367693184,
          5.439844641426504,
          5.444122915159824,
          5.448401188893143,
          5.452679462626463,
          5.456957736359783,
          5.461236010093103,
          5.465514283826423,
          5.469792557559742,
          5.474070831293062,
          5.478349105026382,
          5.482627378759702,
          5.486905652493007,
          5.491183926226327,
          5.495462199959647,
          5.499740473692967,
          5.5040187474262865,
          5.508297021159606,
          5.512575294892926,
          5.516853568626246,
          5.521131842359566,
          5.5254101160928855,
          5.529688389826205,
          5.533966663559525,
          5.538244937292845,
          5.542523211026165,
          5.546801484759484,
          5.551079758492804,
          5.555358032226124,
          5.559636305959444,
          5.563914579692764,
          5.568192853426069,
          5.572471127159389,
          5.576749400892709,
          5.581027674626029,
          5.585305948359348,
          5.589584222092668,
          5.593862495825988,
          5.598140769559308,
          5.6024190432926275,
          5.606697317025947,
          5.610975590759267,
          5.615253864492587,
          5.619532138225907,
          5.6238104119592265,
          5.628088685692546,
          5.632366959425866,
          5.636645233159186,
          5.640923506892506,
          5.6452017806258254,
          5.649480054359145,
          5.653758328092451,
          5.658036601825771,
          5.66231487555909,
          5.66659314929241,
          5.67087142302573,
          5.67514969675905,
          5.67942797049237,
          5.683706244225689,
          5.687984517959009,
          5.692262791692329,
          5.696541065425649,
          5.7008193391589685,
          5.705097612892288,
          5.709375886625608,
          5.713654160358928,
          5.717932434092248,
          5.7222107078255675,
          5.726488981558887,
          5.730767255292207,
          5.735045529025527,
          5.7393238027588325,
          5.743602076492152,
          5.747880350225472,
          5.752158623958792,
          5.756436897692112,
          5.760715171425431,
          5.764993445158751,
          5.769271718892071,
          5.777828266358711,
          5.78210654009203,
          5.78638481382535,
          5.79066308755867,
          5.79494136129199,
          5.79921963502531,
          5.807776182491949,
          5.812054456225269,
          5.816332729958589,
          5.8206110036919085,
          5.824889277425214,
          5.829167551158534,
          5.833445824891854,
          5.8377240986251735,
          5.842002372358493,
          5.846280646091813,
          5.850558919825133,
          5.854837193558453,
          5.8591154672917725,
          5.863393741025092,
          5.867672014758412,
          5.871950288491732,
          5.876228562225052,
          5.880506835958371,
          5.884785109691691,
          5.889063383425011,
          5.893341657158331,
          5.897619930891651,
          5.90189820462497,
          5.906176478358276,
          5.910454752091596,
          5.914733025824916,
          5.919011299558235,
          5.923289573291555,
          5.927567847024875,
          5.931846120758195,
          5.9361243944915145,
          5.940402668224834,
          5.944680941958154,
          5.948959215691474,
          5.953237489424794,
          5.9575157631581135,
          5.961794036891433,
          5.966072310624753,
          5.970350584358073,
          5.974628858091393,
          5.9789071318247125,
          5.983185405558032,
          5.987463679291352,
          5.991741953024658,
          5.996020226757977,
          6.000298500491297,
          6.004576774224617,
          6.008855047957937
         ],
         "yaxis": "y"
        },
        {
         "hovertemplate": "Deposit type=Dataverse<br>Date of deposit=%{x}<br>Count of deposits=%{y}<extra></extra>",
         "legendgroup": "Dataverse",
         "marker": {
          "color": "#EF553B",
          "symbol": "circle"
         },
         "mode": "markers",
         "name": "Dataverse",
         "showlegend": true,
         "type": "scattergl",
         "x": [
          "2018-11-01T00:00:00",
          "2018-11-02T00:00:00",
          "2018-11-03T00:00:00",
          "2018-11-05T00:00:00",
          "2018-11-06T00:00:00",
          "2018-11-07T00:00:00",
          "2018-11-09T00:00:00",
          "2018-11-10T00:00:00",
          "2018-11-14T00:00:00",
          "2018-11-16T00:00:00",
          "2018-11-18T00:00:00",
          "2018-11-21T00:00:00",
          "2018-11-22T00:00:00",
          "2018-11-24T00:00:00",
          "2018-11-25T00:00:00",
          "2018-11-26T00:00:00",
          "2018-11-27T00:00:00",
          "2018-11-28T00:00:00",
          "2018-11-29T00:00:00",
          "2018-11-30T00:00:00",
          "2018-12-02T00:00:00",
          "2018-12-03T00:00:00",
          "2018-12-05T00:00:00",
          "2018-12-08T00:00:00",
          "2018-12-10T00:00:00",
          "2018-12-11T00:00:00",
          "2018-12-12T00:00:00",
          "2018-12-13T00:00:00",
          "2018-12-14T00:00:00",
          "2018-12-16T00:00:00",
          "2018-12-17T00:00:00",
          "2018-12-18T00:00:00",
          "2018-12-20T00:00:00",
          "2018-12-22T00:00:00",
          "2018-12-24T00:00:00",
          "2018-12-26T00:00:00",
          "2018-12-27T00:00:00",
          "2018-12-28T00:00:00",
          "2018-12-30T00:00:00",
          "2018-12-31T00:00:00",
          "2019-01-02T00:00:00",
          "2019-01-03T00:00:00",
          "2019-01-04T00:00:00",
          "2019-01-06T00:00:00",
          "2019-01-07T00:00:00",
          "2019-01-08T00:00:00",
          "2019-01-09T00:00:00",
          "2019-01-10T00:00:00",
          "2019-01-11T00:00:00",
          "2019-01-12T00:00:00",
          "2019-01-13T00:00:00",
          "2019-01-14T00:00:00",
          "2019-01-15T00:00:00",
          "2019-01-17T00:00:00",
          "2019-01-18T00:00:00",
          "2019-01-20T00:00:00",
          "2019-01-22T00:00:00",
          "2019-01-23T00:00:00",
          "2019-01-24T00:00:00",
          "2019-01-25T00:00:00",
          "2019-01-26T00:00:00",
          "2019-01-27T00:00:00",
          "2019-01-28T00:00:00",
          "2019-01-29T00:00:00",
          "2019-01-31T00:00:00",
          "2019-02-01T00:00:00",
          "2019-02-02T00:00:00",
          "2019-02-04T00:00:00",
          "2019-02-05T00:00:00",
          "2019-02-06T00:00:00",
          "2019-02-07T00:00:00",
          "2019-02-10T00:00:00",
          "2019-02-11T00:00:00",
          "2019-02-13T00:00:00",
          "2019-02-15T00:00:00",
          "2019-02-19T00:00:00",
          "2019-02-20T00:00:00",
          "2019-02-21T00:00:00",
          "2019-02-23T00:00:00",
          "2019-02-24T00:00:00",
          "2019-03-04T00:00:00",
          "2019-03-06T00:00:00",
          "2019-03-07T00:00:00",
          "2019-03-10T00:00:00",
          "2019-03-12T00:00:00",
          "2019-03-13T00:00:00",
          "2019-03-14T00:00:00",
          "2019-03-16T00:00:00",
          "2019-03-17T00:00:00",
          "2019-03-19T00:00:00",
          "2019-03-20T00:00:00",
          "2019-03-21T00:00:00",
          "2019-03-25T00:00:00",
          "2019-03-26T00:00:00",
          "2019-03-27T00:00:00",
          "2019-03-28T00:00:00",
          "2019-03-30T00:00:00",
          "2019-03-31T00:00:00",
          "2019-04-02T00:00:00",
          "2019-04-05T00:00:00",
          "2019-04-08T00:00:00",
          "2019-04-09T00:00:00",
          "2019-04-11T00:00:00",
          "2019-04-12T00:00:00",
          "2019-04-13T00:00:00",
          "2019-04-14T00:00:00",
          "2019-04-15T00:00:00",
          "2019-04-16T00:00:00",
          "2019-04-17T00:00:00",
          "2019-04-18T00:00:00",
          "2019-04-22T00:00:00",
          "2019-04-23T00:00:00",
          "2019-04-24T00:00:00",
          "2019-04-25T00:00:00",
          "2019-04-26T00:00:00",
          "2019-04-27T00:00:00",
          "2019-04-30T00:00:00",
          "2019-05-01T00:00:00",
          "2019-05-02T00:00:00",
          "2019-05-03T00:00:00",
          "2019-05-07T00:00:00",
          "2019-05-09T00:00:00",
          "2019-05-10T00:00:00",
          "2019-05-13T00:00:00",
          "2019-05-14T00:00:00",
          "2019-05-15T00:00:00",
          "2019-05-16T00:00:00",
          "2019-05-17T00:00:00",
          "2019-05-18T00:00:00",
          "2019-05-20T00:00:00",
          "2019-05-23T00:00:00",
          "2019-05-24T00:00:00",
          "2019-05-27T00:00:00",
          "2019-05-28T00:00:00",
          "2019-05-29T00:00:00",
          "2019-06-01T00:00:00",
          "2019-06-02T00:00:00",
          "2019-06-03T00:00:00",
          "2019-06-05T00:00:00",
          "2019-06-07T00:00:00",
          "2019-06-10T00:00:00",
          "2019-06-11T00:00:00",
          "2019-06-13T00:00:00",
          "2019-06-14T00:00:00",
          "2019-06-17T00:00:00",
          "2019-06-19T00:00:00",
          "2019-06-20T00:00:00",
          "2019-06-21T00:00:00",
          "2019-06-22T00:00:00",
          "2019-06-23T00:00:00",
          "2019-06-26T00:00:00",
          "2019-06-27T00:00:00",
          "2019-07-01T00:00:00",
          "2019-07-02T00:00:00",
          "2019-07-03T00:00:00",
          "2019-07-04T00:00:00",
          "2019-07-06T00:00:00",
          "2019-07-07T00:00:00",
          "2019-07-08T00:00:00",
          "2019-07-09T00:00:00",
          "2019-07-10T00:00:00",
          "2019-07-12T00:00:00",
          "2019-07-17T00:00:00",
          "2019-07-22T00:00:00",
          "2019-07-23T00:00:00",
          "2019-07-24T00:00:00",
          "2019-07-28T00:00:00",
          "2019-07-29T00:00:00",
          "2019-07-31T00:00:00",
          "2019-08-01T00:00:00",
          "2019-08-02T00:00:00",
          "2019-08-07T00:00:00",
          "2019-08-09T00:00:00",
          "2019-08-12T00:00:00",
          "2019-08-13T00:00:00",
          "2019-08-14T00:00:00",
          "2019-08-15T00:00:00",
          "2019-08-16T00:00:00",
          "2019-08-20T00:00:00",
          "2019-08-21T00:00:00",
          "2019-08-23T00:00:00",
          "2019-08-24T00:00:00",
          "2019-08-26T00:00:00",
          "2019-08-28T00:00:00",
          "2019-08-29T00:00:00",
          "2019-08-30T00:00:00",
          "2019-09-01T00:00:00",
          "2019-09-02T00:00:00",
          "2019-09-03T00:00:00",
          "2019-09-04T00:00:00",
          "2019-09-06T00:00:00",
          "2019-09-07T00:00:00",
          "2019-09-10T00:00:00",
          "2019-09-11T00:00:00",
          "2019-09-16T00:00:00",
          "2019-09-18T00:00:00",
          "2019-09-19T00:00:00",
          "2019-09-20T00:00:00",
          "2019-09-22T00:00:00",
          "2019-09-23T00:00:00",
          "2019-09-25T00:00:00",
          "2019-09-26T00:00:00",
          "2019-09-27T00:00:00",
          "2019-09-28T00:00:00",
          "2019-09-30T00:00:00",
          "2019-10-01T00:00:00",
          "2019-10-02T00:00:00",
          "2019-10-03T00:00:00",
          "2019-10-04T00:00:00",
          "2019-10-05T00:00:00",
          "2019-10-07T00:00:00",
          "2019-10-08T00:00:00",
          "2019-10-09T00:00:00",
          "2019-10-10T00:00:00",
          "2019-10-11T00:00:00",
          "2019-10-12T00:00:00",
          "2019-10-14T00:00:00",
          "2019-10-15T00:00:00",
          "2019-10-16T00:00:00",
          "2019-10-17T00:00:00",
          "2019-10-18T00:00:00",
          "2019-10-21T00:00:00",
          "2019-10-22T00:00:00",
          "2019-10-23T00:00:00",
          "2019-10-24T00:00:00",
          "2019-10-25T00:00:00",
          "2019-10-30T00:00:00",
          "2019-10-31T00:00:00",
          "2019-11-01T00:00:00",
          "2019-11-02T00:00:00",
          "2019-11-03T00:00:00",
          "2019-11-06T00:00:00",
          "2019-11-07T00:00:00",
          "2019-11-08T00:00:00",
          "2019-11-11T00:00:00",
          "2019-11-12T00:00:00",
          "2019-11-13T00:00:00",
          "2019-11-14T00:00:00",
          "2019-11-18T00:00:00",
          "2019-11-20T00:00:00",
          "2019-11-22T00:00:00",
          "2019-11-25T00:00:00",
          "2019-11-26T00:00:00",
          "2019-11-28T00:00:00",
          "2019-11-29T00:00:00",
          "2019-12-02T00:00:00",
          "2019-12-04T00:00:00",
          "2019-12-05T00:00:00",
          "2019-12-06T00:00:00",
          "2019-12-07T00:00:00",
          "2019-12-08T00:00:00",
          "2019-12-11T00:00:00",
          "2019-12-12T00:00:00",
          "2019-12-13T00:00:00",
          "2019-12-17T00:00:00",
          "2019-12-18T00:00:00",
          "2019-12-19T00:00:00",
          "2019-12-20T00:00:00",
          "2019-12-21T00:00:00",
          "2019-12-22T00:00:00",
          "2019-12-23T00:00:00",
          "2019-12-24T00:00:00",
          "2019-12-26T00:00:00",
          "2019-12-28T00:00:00",
          "2019-12-31T00:00:00",
          "2020-01-04T00:00:00",
          "2020-01-06T00:00:00",
          "2020-01-07T00:00:00",
          "2020-01-08T00:00:00",
          "2020-01-12T00:00:00",
          "2020-01-13T00:00:00",
          "2020-01-14T00:00:00",
          "2020-01-15T00:00:00",
          "2020-01-16T00:00:00",
          "2020-01-17T00:00:00",
          "2020-01-18T00:00:00",
          "2020-01-19T00:00:00",
          "2020-01-21T00:00:00",
          "2020-01-22T00:00:00",
          "2020-01-23T00:00:00",
          "2020-01-24T00:00:00",
          "2020-01-26T00:00:00",
          "2020-01-27T00:00:00",
          "2020-01-28T00:00:00",
          "2020-01-30T00:00:00",
          "2020-01-31T00:00:00",
          "2020-02-01T00:00:00",
          "2020-02-03T00:00:00",
          "2020-02-04T00:00:00",
          "2020-02-05T00:00:00",
          "2020-02-06T00:00:00",
          "2020-02-07T00:00:00",
          "2020-02-09T00:00:00",
          "2020-02-10T00:00:00",
          "2020-02-11T00:00:00",
          "2020-02-12T00:00:00",
          "2020-02-13T00:00:00",
          "2020-02-14T00:00:00",
          "2020-02-15T00:00:00",
          "2020-02-16T00:00:00",
          "2020-02-17T00:00:00",
          "2020-02-19T00:00:00",
          "2020-02-23T00:00:00",
          "2020-02-24T00:00:00",
          "2020-02-25T00:00:00",
          "2020-02-26T00:00:00",
          "2020-03-02T00:00:00",
          "2020-03-03T00:00:00",
          "2020-03-04T00:00:00",
          "2020-03-05T00:00:00",
          "2020-03-06T00:00:00",
          "2020-03-09T00:00:00",
          "2020-03-10T00:00:00",
          "2020-03-11T00:00:00",
          "2020-03-12T00:00:00",
          "2020-03-16T00:00:00",
          "2020-03-17T00:00:00",
          "2020-03-18T00:00:00",
          "2020-03-19T00:00:00",
          "2020-03-20T00:00:00",
          "2020-03-21T00:00:00",
          "2020-03-22T00:00:00",
          "2020-03-23T00:00:00",
          "2020-03-24T00:00:00",
          "2020-03-25T00:00:00",
          "2020-03-26T00:00:00",
          "2020-03-27T00:00:00",
          "2020-03-29T00:00:00",
          "2020-03-30T00:00:00",
          "2020-03-31T00:00:00",
          "2020-04-01T00:00:00",
          "2020-04-02T00:00:00",
          "2020-04-03T00:00:00",
          "2020-04-05T00:00:00",
          "2020-04-07T00:00:00",
          "2020-04-09T00:00:00",
          "2020-04-10T00:00:00",
          "2020-04-11T00:00:00",
          "2020-04-13T00:00:00",
          "2020-04-14T00:00:00",
          "2020-04-15T00:00:00",
          "2020-04-16T00:00:00",
          "2020-04-17T00:00:00",
          "2020-04-18T00:00:00",
          "2020-04-19T00:00:00",
          "2020-04-20T00:00:00",
          "2020-04-21T00:00:00",
          "2020-04-22T00:00:00",
          "2020-04-23T00:00:00",
          "2020-04-24T00:00:00",
          "2020-04-26T00:00:00",
          "2020-04-28T00:00:00",
          "2020-04-29T00:00:00",
          "2020-04-30T00:00:00",
          "2020-05-01T00:00:00",
          "2020-05-02T00:00:00",
          "2020-05-03T00:00:00",
          "2020-05-04T00:00:00",
          "2020-05-05T00:00:00",
          "2020-05-06T00:00:00",
          "2020-05-07T00:00:00",
          "2020-05-08T00:00:00",
          "2020-05-10T00:00:00",
          "2020-05-11T00:00:00",
          "2020-05-13T00:00:00",
          "2020-05-14T00:00:00",
          "2020-05-15T00:00:00",
          "2020-05-16T00:00:00",
          "2020-05-17T00:00:00",
          "2020-05-18T00:00:00",
          "2020-05-19T00:00:00",
          "2020-05-20T00:00:00",
          "2020-05-21T00:00:00",
          "2020-05-22T00:00:00",
          "2020-05-23T00:00:00",
          "2020-05-25T00:00:00",
          "2020-05-26T00:00:00",
          "2020-05-27T00:00:00",
          "2020-05-28T00:00:00",
          "2020-05-29T00:00:00",
          "2020-06-01T00:00:00",
          "2020-06-02T00:00:00",
          "2020-06-03T00:00:00",
          "2020-06-04T00:00:00",
          "2020-06-05T00:00:00",
          "2020-06-06T00:00:00",
          "2020-06-07T00:00:00",
          "2020-06-08T00:00:00",
          "2020-06-09T00:00:00",
          "2020-06-10T00:00:00",
          "2020-06-11T00:00:00",
          "2020-06-12T00:00:00",
          "2020-06-13T00:00:00",
          "2020-06-15T00:00:00",
          "2020-06-16T00:00:00",
          "2020-06-17T00:00:00",
          "2020-06-18T00:00:00",
          "2020-06-19T00:00:00",
          "2020-06-20T00:00:00",
          "2020-06-22T00:00:00",
          "2020-06-23T00:00:00",
          "2020-06-24T00:00:00",
          "2020-06-25T00:00:00",
          "2020-06-26T00:00:00",
          "2020-06-27T00:00:00",
          "2020-06-28T00:00:00",
          "2020-06-29T00:00:00",
          "2020-06-30T00:00:00",
          "2020-07-01T00:00:00",
          "2020-07-02T00:00:00",
          "2020-07-03T00:00:00",
          "2020-07-04T00:00:00",
          "2020-07-05T00:00:00",
          "2020-07-07T00:00:00",
          "2020-07-08T00:00:00",
          "2020-07-09T00:00:00",
          "2020-07-10T00:00:00",
          "2020-07-12T00:00:00",
          "2020-07-13T00:00:00",
          "2020-07-14T00:00:00",
          "2020-07-15T00:00:00",
          "2020-07-16T00:00:00",
          "2020-07-17T00:00:00",
          "2020-07-18T00:00:00",
          "2020-07-20T00:00:00",
          "2020-07-21T00:00:00",
          "2020-07-23T00:00:00",
          "2020-07-24T00:00:00",
          "2020-07-27T00:00:00",
          "2020-07-28T00:00:00",
          "2020-07-29T00:00:00",
          "2020-07-30T00:00:00",
          "2020-07-31T00:00:00",
          "2020-08-01T00:00:00",
          "2020-08-03T00:00:00",
          "2020-08-05T00:00:00",
          "2020-08-06T00:00:00",
          "2020-08-08T00:00:00",
          "2020-08-10T00:00:00",
          "2020-08-11T00:00:00",
          "2020-08-12T00:00:00",
          "2020-08-14T00:00:00",
          "2020-08-15T00:00:00",
          "2020-08-17T00:00:00",
          "2020-08-18T00:00:00",
          "2020-08-20T00:00:00",
          "2020-08-21T00:00:00",
          "2020-08-23T00:00:00",
          "2020-08-24T00:00:00",
          "2020-08-25T00:00:00",
          "2020-08-27T00:00:00",
          "2020-08-28T00:00:00",
          "2020-08-31T00:00:00",
          "2020-09-01T00:00:00",
          "2020-09-02T00:00:00",
          "2020-09-03T00:00:00",
          "2020-09-04T00:00:00",
          "2020-09-06T00:00:00",
          "2020-09-12T00:00:00",
          "2020-09-14T00:00:00",
          "2020-09-15T00:00:00",
          "2020-09-16T00:00:00",
          "2020-09-18T00:00:00",
          "2020-09-19T00:00:00",
          "2020-09-20T00:00:00",
          "2020-09-21T00:00:00",
          "2020-09-24T00:00:00",
          "2020-09-25T00:00:00",
          "2020-09-27T00:00:00",
          "2020-09-28T00:00:00",
          "2020-09-29T00:00:00",
          "2020-09-30T00:00:00",
          "2020-10-01T00:00:00",
          "2020-10-02T00:00:00",
          "2020-10-04T00:00:00",
          "2020-10-05T00:00:00",
          "2020-10-06T00:00:00",
          "2020-10-07T00:00:00",
          "2020-10-08T00:00:00",
          "2020-10-09T00:00:00",
          "2020-10-12T00:00:00",
          "2020-10-13T00:00:00",
          "2020-10-15T00:00:00",
          "2020-10-16T00:00:00",
          "2020-10-17T00:00:00",
          "2020-10-19T00:00:00",
          "2020-10-20T00:00:00",
          "2020-10-21T00:00:00",
          "2020-10-22T00:00:00",
          "2020-10-23T00:00:00",
          "2020-10-25T00:00:00",
          "2020-10-27T00:00:00",
          "2020-10-28T00:00:00",
          "2020-10-29T00:00:00",
          "2020-10-30T00:00:00",
          "2020-10-31T00:00:00"
         ],
         "xaxis": "x",
         "y": [
          1,
          1,
          1,
          1,
          3,
          2,
          3,
          1,
          1,
          1,
          1,
          2,
          2,
          1,
          1,
          1,
          2,
          1,
          2,
          1,
          1,
          3,
          1,
          1,
          2,
          3,
          1,
          1,
          4,
          1,
          4,
          5,
          1,
          1,
          1,
          1,
          2,
          1,
          1,
          1,
          1,
          1,
          1,
          1,
          3,
          3,
          5,
          1,
          3,
          3,
          2,
          1,
          2,
          3,
          5,
          1,
          1,
          1,
          1,
          3,
          2,
          4,
          2,
          3,
          2,
          2,
          1,
          2,
          2,
          3,
          2,
          3,
          1,
          3,
          1,
          2,
          1,
          2,
          2,
          1,
          3,
          3,
          3,
          1,
          2,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          2,
          1,
          4,
          1,
          1,
          1,
          2,
          2,
          1,
          4,
          2,
          2,
          1,
          1,
          1,
          3,
          2,
          1,
          1,
          1,
          3,
          1,
          1,
          1,
          2,
          2,
          1,
          2,
          4,
          1,
          1,
          1,
          2,
          2,
          1,
          1,
          1,
          4,
          1,
          1,
          1,
          2,
          2,
          1,
          1,
          2,
          2,
          1,
          1,
          2,
          1,
          1,
          1,
          3,
          4,
          1,
          1,
          1,
          3,
          3,
          2,
          2,
          1,
          1,
          1,
          2,
          2,
          1,
          1,
          2,
          3,
          1,
          1,
          3,
          1,
          4,
          5,
          2,
          1,
          1,
          3,
          2,
          4,
          4,
          2,
          1,
          2,
          2,
          2,
          3,
          5,
          2,
          1,
          1,
          1,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          1,
          1,
          4,
          1,
          1,
          2,
          2,
          1,
          2,
          2,
          1,
          2,
          1,
          3,
          4,
          1,
          1,
          2,
          4,
          4,
          1,
          1,
          1,
          1,
          3,
          1,
          2,
          3,
          1,
          2,
          1,
          2,
          1,
          3,
          3,
          1,
          2,
          1,
          1,
          1,
          2,
          1,
          1,
          2,
          1,
          1,
          3,
          2,
          1,
          1,
          2,
          1,
          1,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          2,
          3,
          2,
          2,
          1,
          1,
          1,
          2,
          2,
          2,
          2,
          1,
          1,
          2,
          1,
          1,
          3,
          3,
          1,
          1,
          2,
          1,
          3,
          3,
          4,
          3,
          3,
          1,
          1,
          1,
          1,
          3,
          2,
          7,
          3,
          2,
          3,
          1,
          1,
          3,
          3,
          2,
          1,
          1,
          2,
          1,
          3,
          3,
          2,
          2,
          1,
          1,
          1,
          3,
          1,
          3,
          1,
          1,
          3,
          1,
          3,
          3,
          1,
          3,
          1,
          1,
          2,
          3,
          1,
          3,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          1,
          1,
          3,
          2,
          3,
          1,
          2,
          1,
          1,
          3,
          1,
          3,
          1,
          1,
          1,
          3,
          2,
          6,
          1,
          3,
          5,
          2,
          3,
          2,
          1,
          1,
          1,
          3,
          1,
          3,
          3,
          2,
          3,
          2,
          1,
          4,
          1,
          1,
          5,
          2,
          1,
          1,
          5,
          1,
          5,
          6,
          4,
          4,
          1,
          1,
          4,
          2,
          1,
          2,
          3,
          2,
          4,
          1,
          3,
          3,
          1,
          1,
          3,
          3,
          3,
          8,
          3,
          2,
          4,
          3,
          3,
          2,
          1,
          1,
          2,
          4,
          3,
          2,
          2,
          4,
          2,
          2,
          2,
          3,
          1,
          2,
          2,
          1,
          1,
          3,
          5,
          2,
          3,
          1,
          3,
          2,
          1,
          3,
          3,
          1,
          3,
          3,
          1,
          2,
          2,
          1,
          1,
          3,
          2,
          1,
          1,
          1,
          1,
          2,
          2,
          4,
          1,
          2,
          1,
          2,
          1,
          2,
          1,
          4,
          4,
          1,
          1,
          1,
          4,
          1,
          1,
          2,
          1,
          1,
          3,
          2,
          3,
          1,
          1,
          2,
          1,
          2,
          1,
          2,
          1,
          2,
          3,
          1,
          2,
          1,
          3,
          1,
          2,
          1,
          5,
          2,
          1,
          1,
          2,
          1,
          2,
          1,
          3,
          1,
          1
         ],
         "yaxis": "y"
        },
        {
         "hovertemplate": "<b>OLS trendline</b><br>count = 6.04706e-09 * deposit_createdate + -7.58843<br>R<sup>2</sup>=0.009897<br><br>Deposit type=Dataverse<br>Date of deposit=%{x}<br>Count of deposits=%{y} <b>(trend)</b><extra></extra>",
         "legendgroup": "Dataverse",
         "marker": {
          "color": "#EF553B",
          "symbol": "circle"
         },
         "mode": "lines",
         "name": "Dataverse",
         "showlegend": false,
         "type": "scattergl",
         "x": [
          "2018-11-01T00:00:00",
          "2018-11-02T00:00:00",
          "2018-11-03T00:00:00",
          "2018-11-05T00:00:00",
          "2018-11-06T00:00:00",
          "2018-11-07T00:00:00",
          "2018-11-09T00:00:00",
          "2018-11-10T00:00:00",
          "2018-11-14T00:00:00",
          "2018-11-16T00:00:00",
          "2018-11-18T00:00:00",
          "2018-11-21T00:00:00",
          "2018-11-22T00:00:00",
          "2018-11-24T00:00:00",
          "2018-11-25T00:00:00",
          "2018-11-26T00:00:00",
          "2018-11-27T00:00:00",
          "2018-11-28T00:00:00",
          "2018-11-29T00:00:00",
          "2018-11-30T00:00:00",
          "2018-12-02T00:00:00",
          "2018-12-03T00:00:00",
          "2018-12-05T00:00:00",
          "2018-12-08T00:00:00",
          "2018-12-10T00:00:00",
          "2018-12-11T00:00:00",
          "2018-12-12T00:00:00",
          "2018-12-13T00:00:00",
          "2018-12-14T00:00:00",
          "2018-12-16T00:00:00",
          "2018-12-17T00:00:00",
          "2018-12-18T00:00:00",
          "2018-12-20T00:00:00",
          "2018-12-22T00:00:00",
          "2018-12-24T00:00:00",
          "2018-12-26T00:00:00",
          "2018-12-27T00:00:00",
          "2018-12-28T00:00:00",
          "2018-12-30T00:00:00",
          "2018-12-31T00:00:00",
          "2019-01-02T00:00:00",
          "2019-01-03T00:00:00",
          "2019-01-04T00:00:00",
          "2019-01-06T00:00:00",
          "2019-01-07T00:00:00",
          "2019-01-08T00:00:00",
          "2019-01-09T00:00:00",
          "2019-01-10T00:00:00",
          "2019-01-11T00:00:00",
          "2019-01-12T00:00:00",
          "2019-01-13T00:00:00",
          "2019-01-14T00:00:00",
          "2019-01-15T00:00:00",
          "2019-01-17T00:00:00",
          "2019-01-18T00:00:00",
          "2019-01-20T00:00:00",
          "2019-01-22T00:00:00",
          "2019-01-23T00:00:00",
          "2019-01-24T00:00:00",
          "2019-01-25T00:00:00",
          "2019-01-26T00:00:00",
          "2019-01-27T00:00:00",
          "2019-01-28T00:00:00",
          "2019-01-29T00:00:00",
          "2019-01-31T00:00:00",
          "2019-02-01T00:00:00",
          "2019-02-02T00:00:00",
          "2019-02-04T00:00:00",
          "2019-02-05T00:00:00",
          "2019-02-06T00:00:00",
          "2019-02-07T00:00:00",
          "2019-02-10T00:00:00",
          "2019-02-11T00:00:00",
          "2019-02-13T00:00:00",
          "2019-02-15T00:00:00",
          "2019-02-19T00:00:00",
          "2019-02-20T00:00:00",
          "2019-02-21T00:00:00",
          "2019-02-23T00:00:00",
          "2019-02-24T00:00:00",
          "2019-03-04T00:00:00",
          "2019-03-06T00:00:00",
          "2019-03-07T00:00:00",
          "2019-03-10T00:00:00",
          "2019-03-12T00:00:00",
          "2019-03-13T00:00:00",
          "2019-03-14T00:00:00",
          "2019-03-16T00:00:00",
          "2019-03-17T00:00:00",
          "2019-03-19T00:00:00",
          "2019-03-20T00:00:00",
          "2019-03-21T00:00:00",
          "2019-03-25T00:00:00",
          "2019-03-26T00:00:00",
          "2019-03-27T00:00:00",
          "2019-03-28T00:00:00",
          "2019-03-30T00:00:00",
          "2019-03-31T00:00:00",
          "2019-04-02T00:00:00",
          "2019-04-05T00:00:00",
          "2019-04-08T00:00:00",
          "2019-04-09T00:00:00",
          "2019-04-11T00:00:00",
          "2019-04-12T00:00:00",
          "2019-04-13T00:00:00",
          "2019-04-14T00:00:00",
          "2019-04-15T00:00:00",
          "2019-04-16T00:00:00",
          "2019-04-17T00:00:00",
          "2019-04-18T00:00:00",
          "2019-04-22T00:00:00",
          "2019-04-23T00:00:00",
          "2019-04-24T00:00:00",
          "2019-04-25T00:00:00",
          "2019-04-26T00:00:00",
          "2019-04-27T00:00:00",
          "2019-04-30T00:00:00",
          "2019-05-01T00:00:00",
          "2019-05-02T00:00:00",
          "2019-05-03T00:00:00",
          "2019-05-07T00:00:00",
          "2019-05-09T00:00:00",
          "2019-05-10T00:00:00",
          "2019-05-13T00:00:00",
          "2019-05-14T00:00:00",
          "2019-05-15T00:00:00",
          "2019-05-16T00:00:00",
          "2019-05-17T00:00:00",
          "2019-05-18T00:00:00",
          "2019-05-20T00:00:00",
          "2019-05-23T00:00:00",
          "2019-05-24T00:00:00",
          "2019-05-27T00:00:00",
          "2019-05-28T00:00:00",
          "2019-05-29T00:00:00",
          "2019-06-01T00:00:00",
          "2019-06-02T00:00:00",
          "2019-06-03T00:00:00",
          "2019-06-05T00:00:00",
          "2019-06-07T00:00:00",
          "2019-06-10T00:00:00",
          "2019-06-11T00:00:00",
          "2019-06-13T00:00:00",
          "2019-06-14T00:00:00",
          "2019-06-17T00:00:00",
          "2019-06-19T00:00:00",
          "2019-06-20T00:00:00",
          "2019-06-21T00:00:00",
          "2019-06-22T00:00:00",
          "2019-06-23T00:00:00",
          "2019-06-26T00:00:00",
          "2019-06-27T00:00:00",
          "2019-07-01T00:00:00",
          "2019-07-02T00:00:00",
          "2019-07-03T00:00:00",
          "2019-07-04T00:00:00",
          "2019-07-06T00:00:00",
          "2019-07-07T00:00:00",
          "2019-07-08T00:00:00",
          "2019-07-09T00:00:00",
          "2019-07-10T00:00:00",
          "2019-07-12T00:00:00",
          "2019-07-17T00:00:00",
          "2019-07-22T00:00:00",
          "2019-07-23T00:00:00",
          "2019-07-24T00:00:00",
          "2019-07-28T00:00:00",
          "2019-07-29T00:00:00",
          "2019-07-31T00:00:00",
          "2019-08-01T00:00:00",
          "2019-08-02T00:00:00",
          "2019-08-07T00:00:00",
          "2019-08-09T00:00:00",
          "2019-08-12T00:00:00",
          "2019-08-13T00:00:00",
          "2019-08-14T00:00:00",
          "2019-08-15T00:00:00",
          "2019-08-16T00:00:00",
          "2019-08-20T00:00:00",
          "2019-08-21T00:00:00",
          "2019-08-23T00:00:00",
          "2019-08-24T00:00:00",
          "2019-08-26T00:00:00",
          "2019-08-28T00:00:00",
          "2019-08-29T00:00:00",
          "2019-08-30T00:00:00",
          "2019-09-01T00:00:00",
          "2019-09-02T00:00:00",
          "2019-09-03T00:00:00",
          "2019-09-04T00:00:00",
          "2019-09-06T00:00:00",
          "2019-09-07T00:00:00",
          "2019-09-10T00:00:00",
          "2019-09-11T00:00:00",
          "2019-09-16T00:00:00",
          "2019-09-18T00:00:00",
          "2019-09-19T00:00:00",
          "2019-09-20T00:00:00",
          "2019-09-22T00:00:00",
          "2019-09-23T00:00:00",
          "2019-09-25T00:00:00",
          "2019-09-26T00:00:00",
          "2019-09-27T00:00:00",
          "2019-09-28T00:00:00",
          "2019-09-30T00:00:00",
          "2019-10-01T00:00:00",
          "2019-10-02T00:00:00",
          "2019-10-03T00:00:00",
          "2019-10-04T00:00:00",
          "2019-10-05T00:00:00",
          "2019-10-07T00:00:00",
          "2019-10-08T00:00:00",
          "2019-10-09T00:00:00",
          "2019-10-10T00:00:00",
          "2019-10-11T00:00:00",
          "2019-10-12T00:00:00",
          "2019-10-14T00:00:00",
          "2019-10-15T00:00:00",
          "2019-10-16T00:00:00",
          "2019-10-17T00:00:00",
          "2019-10-18T00:00:00",
          "2019-10-21T00:00:00",
          "2019-10-22T00:00:00",
          "2019-10-23T00:00:00",
          "2019-10-24T00:00:00",
          "2019-10-25T00:00:00",
          "2019-10-30T00:00:00",
          "2019-10-31T00:00:00",
          "2019-11-01T00:00:00",
          "2019-11-02T00:00:00",
          "2019-11-03T00:00:00",
          "2019-11-06T00:00:00",
          "2019-11-07T00:00:00",
          "2019-11-08T00:00:00",
          "2019-11-11T00:00:00",
          "2019-11-12T00:00:00",
          "2019-11-13T00:00:00",
          "2019-11-14T00:00:00",
          "2019-11-18T00:00:00",
          "2019-11-20T00:00:00",
          "2019-11-22T00:00:00",
          "2019-11-25T00:00:00",
          "2019-11-26T00:00:00",
          "2019-11-28T00:00:00",
          "2019-11-29T00:00:00",
          "2019-12-02T00:00:00",
          "2019-12-04T00:00:00",
          "2019-12-05T00:00:00",
          "2019-12-06T00:00:00",
          "2019-12-07T00:00:00",
          "2019-12-08T00:00:00",
          "2019-12-11T00:00:00",
          "2019-12-12T00:00:00",
          "2019-12-13T00:00:00",
          "2019-12-17T00:00:00",
          "2019-12-18T00:00:00",
          "2019-12-19T00:00:00",
          "2019-12-20T00:00:00",
          "2019-12-21T00:00:00",
          "2019-12-22T00:00:00",
          "2019-12-23T00:00:00",
          "2019-12-24T00:00:00",
          "2019-12-26T00:00:00",
          "2019-12-28T00:00:00",
          "2019-12-31T00:00:00",
          "2020-01-04T00:00:00",
          "2020-01-06T00:00:00",
          "2020-01-07T00:00:00",
          "2020-01-08T00:00:00",
          "2020-01-12T00:00:00",
          "2020-01-13T00:00:00",
          "2020-01-14T00:00:00",
          "2020-01-15T00:00:00",
          "2020-01-16T00:00:00",
          "2020-01-17T00:00:00",
          "2020-01-18T00:00:00",
          "2020-01-19T00:00:00",
          "2020-01-21T00:00:00",
          "2020-01-22T00:00:00",
          "2020-01-23T00:00:00",
          "2020-01-24T00:00:00",
          "2020-01-26T00:00:00",
          "2020-01-27T00:00:00",
          "2020-01-28T00:00:00",
          "2020-01-30T00:00:00",
          "2020-01-31T00:00:00",
          "2020-02-01T00:00:00",
          "2020-02-03T00:00:00",
          "2020-02-04T00:00:00",
          "2020-02-05T00:00:00",
          "2020-02-06T00:00:00",
          "2020-02-07T00:00:00",
          "2020-02-09T00:00:00",
          "2020-02-10T00:00:00",
          "2020-02-11T00:00:00",
          "2020-02-12T00:00:00",
          "2020-02-13T00:00:00",
          "2020-02-14T00:00:00",
          "2020-02-15T00:00:00",
          "2020-02-16T00:00:00",
          "2020-02-17T00:00:00",
          "2020-02-19T00:00:00",
          "2020-02-23T00:00:00",
          "2020-02-24T00:00:00",
          "2020-02-25T00:00:00",
          "2020-02-26T00:00:00",
          "2020-03-02T00:00:00",
          "2020-03-03T00:00:00",
          "2020-03-04T00:00:00",
          "2020-03-05T00:00:00",
          "2020-03-06T00:00:00",
          "2020-03-09T00:00:00",
          "2020-03-10T00:00:00",
          "2020-03-11T00:00:00",
          "2020-03-12T00:00:00",
          "2020-03-16T00:00:00",
          "2020-03-17T00:00:00",
          "2020-03-18T00:00:00",
          "2020-03-19T00:00:00",
          "2020-03-20T00:00:00",
          "2020-03-21T00:00:00",
          "2020-03-22T00:00:00",
          "2020-03-23T00:00:00",
          "2020-03-24T00:00:00",
          "2020-03-25T00:00:00",
          "2020-03-26T00:00:00",
          "2020-03-27T00:00:00",
          "2020-03-29T00:00:00",
          "2020-03-30T00:00:00",
          "2020-03-31T00:00:00",
          "2020-04-01T00:00:00",
          "2020-04-02T00:00:00",
          "2020-04-03T00:00:00",
          "2020-04-05T00:00:00",
          "2020-04-07T00:00:00",
          "2020-04-09T00:00:00",
          "2020-04-10T00:00:00",
          "2020-04-11T00:00:00",
          "2020-04-13T00:00:00",
          "2020-04-14T00:00:00",
          "2020-04-15T00:00:00",
          "2020-04-16T00:00:00",
          "2020-04-17T00:00:00",
          "2020-04-18T00:00:00",
          "2020-04-19T00:00:00",
          "2020-04-20T00:00:00",
          "2020-04-21T00:00:00",
          "2020-04-22T00:00:00",
          "2020-04-23T00:00:00",
          "2020-04-24T00:00:00",
          "2020-04-26T00:00:00",
          "2020-04-28T00:00:00",
          "2020-04-29T00:00:00",
          "2020-04-30T00:00:00",
          "2020-05-01T00:00:00",
          "2020-05-02T00:00:00",
          "2020-05-03T00:00:00",
          "2020-05-04T00:00:00",
          "2020-05-05T00:00:00",
          "2020-05-06T00:00:00",
          "2020-05-07T00:00:00",
          "2020-05-08T00:00:00",
          "2020-05-10T00:00:00",
          "2020-05-11T00:00:00",
          "2020-05-13T00:00:00",
          "2020-05-14T00:00:00",
          "2020-05-15T00:00:00",
          "2020-05-16T00:00:00",
          "2020-05-17T00:00:00",
          "2020-05-18T00:00:00",
          "2020-05-19T00:00:00",
          "2020-05-20T00:00:00",
          "2020-05-21T00:00:00",
          "2020-05-22T00:00:00",
          "2020-05-23T00:00:00",
          "2020-05-25T00:00:00",
          "2020-05-26T00:00:00",
          "2020-05-27T00:00:00",
          "2020-05-28T00:00:00",
          "2020-05-29T00:00:00",
          "2020-06-01T00:00:00",
          "2020-06-02T00:00:00",
          "2020-06-03T00:00:00",
          "2020-06-04T00:00:00",
          "2020-06-05T00:00:00",
          "2020-06-06T00:00:00",
          "2020-06-07T00:00:00",
          "2020-06-08T00:00:00",
          "2020-06-09T00:00:00",
          "2020-06-10T00:00:00",
          "2020-06-11T00:00:00",
          "2020-06-12T00:00:00",
          "2020-06-13T00:00:00",
          "2020-06-15T00:00:00",
          "2020-06-16T00:00:00",
          "2020-06-17T00:00:00",
          "2020-06-18T00:00:00",
          "2020-06-19T00:00:00",
          "2020-06-20T00:00:00",
          "2020-06-22T00:00:00",
          "2020-06-23T00:00:00",
          "2020-06-24T00:00:00",
          "2020-06-25T00:00:00",
          "2020-06-26T00:00:00",
          "2020-06-27T00:00:00",
          "2020-06-28T00:00:00",
          "2020-06-29T00:00:00",
          "2020-06-30T00:00:00",
          "2020-07-01T00:00:00",
          "2020-07-02T00:00:00",
          "2020-07-03T00:00:00",
          "2020-07-04T00:00:00",
          "2020-07-05T00:00:00",
          "2020-07-07T00:00:00",
          "2020-07-08T00:00:00",
          "2020-07-09T00:00:00",
          "2020-07-10T00:00:00",
          "2020-07-12T00:00:00",
          "2020-07-13T00:00:00",
          "2020-07-14T00:00:00",
          "2020-07-15T00:00:00",
          "2020-07-16T00:00:00",
          "2020-07-17T00:00:00",
          "2020-07-18T00:00:00",
          "2020-07-20T00:00:00",
          "2020-07-21T00:00:00",
          "2020-07-23T00:00:00",
          "2020-07-24T00:00:00",
          "2020-07-27T00:00:00",
          "2020-07-28T00:00:00",
          "2020-07-29T00:00:00",
          "2020-07-30T00:00:00",
          "2020-07-31T00:00:00",
          "2020-08-01T00:00:00",
          "2020-08-03T00:00:00",
          "2020-08-05T00:00:00",
          "2020-08-06T00:00:00",
          "2020-08-08T00:00:00",
          "2020-08-10T00:00:00",
          "2020-08-11T00:00:00",
          "2020-08-12T00:00:00",
          "2020-08-14T00:00:00",
          "2020-08-15T00:00:00",
          "2020-08-17T00:00:00",
          "2020-08-18T00:00:00",
          "2020-08-20T00:00:00",
          "2020-08-21T00:00:00",
          "2020-08-23T00:00:00",
          "2020-08-24T00:00:00",
          "2020-08-25T00:00:00",
          "2020-08-27T00:00:00",
          "2020-08-28T00:00:00",
          "2020-08-31T00:00:00",
          "2020-09-01T00:00:00",
          "2020-09-02T00:00:00",
          "2020-09-03T00:00:00",
          "2020-09-04T00:00:00",
          "2020-09-06T00:00:00",
          "2020-09-12T00:00:00",
          "2020-09-14T00:00:00",
          "2020-09-15T00:00:00",
          "2020-09-16T00:00:00",
          "2020-09-18T00:00:00",
          "2020-09-19T00:00:00",
          "2020-09-20T00:00:00",
          "2020-09-21T00:00:00",
          "2020-09-24T00:00:00",
          "2020-09-25T00:00:00",
          "2020-09-27T00:00:00",
          "2020-09-28T00:00:00",
          "2020-09-29T00:00:00",
          "2020-09-30T00:00:00",
          "2020-10-01T00:00:00",
          "2020-10-02T00:00:00",
          "2020-10-04T00:00:00",
          "2020-10-05T00:00:00",
          "2020-10-06T00:00:00",
          "2020-10-07T00:00:00",
          "2020-10-08T00:00:00",
          "2020-10-09T00:00:00",
          "2020-10-12T00:00:00",
          "2020-10-13T00:00:00",
          "2020-10-15T00:00:00",
          "2020-10-16T00:00:00",
          "2020-10-17T00:00:00",
          "2020-10-19T00:00:00",
          "2020-10-20T00:00:00",
          "2020-10-21T00:00:00",
          "2020-10-22T00:00:00",
          "2020-10-23T00:00:00",
          "2020-10-25T00:00:00",
          "2020-10-27T00:00:00",
          "2020-10-28T00:00:00",
          "2020-10-29T00:00:00",
          "2020-10-30T00:00:00",
          "2020-10-31T00:00:00"
         ],
         "xaxis": "x",
         "y": [
          1.73027173067341,
          1.7307941964757951,
          1.7313166622781804,
          1.7323615938829526,
          1.7328840596853379,
          1.7334065254877231,
          1.7344514570924936,
          1.7349739228948788,
          1.7370637861044198,
          1.7381087177091903,
          1.7391536493139608,
          1.7407210467211165,
          1.7412435125235017,
          1.7422884441282722,
          1.7428109099306575,
          1.7433333757330427,
          1.743855841535428,
          1.7443783073378132,
          1.7449007731401984,
          1.7454232389425837,
          1.7464681705473541,
          1.7469906363497394,
          1.7480355679545099,
          1.7496029653616656,
          1.750647896966436,
          1.7511703627688213,
          1.7516928285712066,
          1.7522152943735918,
          1.752737760175977,
          1.7537826917807475,
          1.7543051575831328,
          1.754827623385518,
          1.7558725549902885,
          1.756917486595059,
          1.7579624181998295,
          1.7590073498046,
          1.7595298156069852,
          1.7600522814093704,
          1.761097213014141,
          1.761619678816528,
          1.7626646104212984,
          1.7631870762236836,
          1.7637095420260689,
          1.7647544736308394,
          1.7652769394332246,
          1.7657994052356099,
          1.766321871037995,
          1.7668443368403803,
          1.7673668026427656,
          1.7678892684451508,
          1.768411734247536,
          1.7689342000499213,
          1.7694566658523065,
          1.770501597457077,
          1.7710240632594623,
          1.7720689948642327,
          1.7731139264690032,
          1.7736363922713885,
          1.7741588580737737,
          1.774681323876159,
          1.7752037896785442,
          1.7757262554809294,
          1.7762487212833147,
          1.7767711870857,
          1.7778161186904704,
          1.7783385844928556,
          1.7788610502952409,
          1.7799059819000114,
          1.7804284477023966,
          1.7809509135047819,
          1.781473379307167,
          1.7830407767143228,
          1.783563242516708,
          1.7846081741214785,
          1.785653105726249,
          1.78774296893579,
          1.7882654347381752,
          1.7887879005405605,
          1.789832832145331,
          1.7903552979477162,
          1.7945350243668,
          1.7955799559715704,
          1.7961024217739556,
          1.7976698191811114,
          1.7987147507858818,
          1.799237216588267,
          1.7997596823906523,
          1.8008046139954228,
          1.801327079797808,
          1.8023720114025785,
          1.8028944772049638,
          1.803416943007349,
          1.80550680621689,
          1.8060292720192752,
          1.8065517378216605,
          1.8070742036240457,
          1.8081191352288162,
          1.8086416010312014,
          1.809686532635972,
          1.8112539300431276,
          1.8128213274502833,
          1.8133437932526686,
          1.814388724857439,
          1.8149111906598243,
          1.8154336564622096,
          1.8159561222645948,
          1.81647858806698,
          1.8170010538693653,
          1.8175235196717505,
          1.8180459854741358,
          1.8201358486836767,
          1.8206583144860637,
          1.821180780288449,
          1.8217032460908342,
          1.8222257118932195,
          1.8227481776956047,
          1.8243155751027604,
          1.8248380409051457,
          1.825360506707531,
          1.8258829725099162,
          1.8279728357194571,
          1.8290177673242276,
          1.8295402331266128,
          1.8311076305337686,
          1.8316300963361538,
          1.832152562138539,
          1.8326750279409243,
          1.8331974937433095,
          1.8337199595456948,
          1.8347648911504653,
          1.836332288557621,
          1.8368547543600062,
          1.838422151767162,
          1.8389446175695472,
          1.8394670833719324,
          1.8410344807790882,
          1.8415569465814734,
          1.8420794123838586,
          1.8431243439886291,
          1.8441692755933996,
          1.8457366730005553,
          1.8462591388029406,
          1.847304070407711,
          1.8478265362100963,
          1.849393933617252,
          1.8504388652220243,
          1.8509613310244095,
          1.8514837968267948,
          1.85200626262918,
          1.8525287284315652,
          1.854096125838721,
          1.8546185916411062,
          1.8567084548506472,
          1.8572309206530324,
          1.8577533864554177,
          1.858275852257803,
          1.8593207838625734,
          1.8598432496649586,
          1.8603657154673439,
          1.860888181269729,
          1.8614106470721143,
          1.8624555786768848,
          1.865067907688811,
          1.8676802367007372,
          1.8682027025031225,
          1.8687251683055077,
          1.8708150315150487,
          1.871337497317434,
          1.8723824289222044,
          1.8729048947245897,
          1.873427360526975,
          1.876039689538901,
          1.8770846211436716,
          1.8786520185508273,
          1.8791744843532125,
          1.8796969501555996,
          1.8802194159579848,
          1.88074188176037,
          1.882831744969911,
          1.8833542107722963,
          1.8843991423770667,
          1.884921608179452,
          1.8859665397842225,
          1.887011471388993,
          1.8875339371913782,
          1.8880564029937634,
          1.889101334598534,
          1.8896238004009192,
          1.8901462662033044,
          1.8906687320056896,
          1.8917136636104601,
          1.8922361294128454,
          1.893803526820001,
          1.8943259926223863,
          1.8969383216343125,
          1.897983253239083,
          1.8985057190414683,
          1.8990281848438535,
          1.900073116448624,
          1.9005955822510092,
          1.9016405138557797,
          1.902162979658165,
          1.9026854454605502,
          1.9032079112629354,
          1.904252842867706,
          1.9047753086700911,
          1.9052977744724764,
          1.9058202402748616,
          1.9063427060772469,
          1.9068651718796321,
          1.9079101034844026,
          1.9084325692867878,
          1.9089550350891749,
          1.90947750089156,
          1.9099999666939453,
          1.9105224324963306,
          1.911567364101101,
          1.9120898299034863,
          1.9126122957058715,
          1.9131347615082568,
          1.913657227310642,
          1.9152246247177978,
          1.915747090520183,
          1.9162695563225682,
          1.9167920221249535,
          1.9173144879273387,
          1.919926816939265,
          1.9204492827416502,
          1.9209717485440354,
          1.9214942143464206,
          1.922016680148806,
          1.9235840775559616,
          1.9241065433583469,
          1.924629009160732,
          1.9261964065678878,
          1.926718872370273,
          1.9272413381726583,
          1.9277638039750435,
          1.9298536671845845,
          1.930898598789355,
          1.9319435303941255,
          1.9335109278012812,
          1.9340333936036664,
          1.935078325208437,
          1.9356007910108222,
          1.9371681884179779,
          1.9382131200227484,
          1.9387355858251354,
          1.9392580516275206,
          1.9397805174299059,
          1.9403029832322911,
          1.9418703806394468,
          1.942392846441832,
          1.9429153122442173,
          1.9450051754537583,
          1.9455276412561435,
          1.9460501070585288,
          1.946572572860914,
          1.9470950386632992,
          1.9476175044656845,
          1.9481399702680697,
          1.948662436070455,
          1.9497073676752255,
          1.950752299279996,
          1.9523196966871517,
          1.9544095598966926,
          1.955454491501463,
          1.9559769573038484,
          1.9564994231062336,
          1.9585892863157746,
          1.9591117521181598,
          1.959634217920545,
          1.9601566837229303,
          1.9606791495253155,
          1.9612016153277008,
          1.961724081130086,
          1.9622465469324712,
          1.9632914785372417,
          1.963813944339627,
          1.9643364101420122,
          1.9648588759443975,
          1.965903807549168,
          1.9664262733515532,
          1.9669487391539384,
          1.9679936707587107,
          1.968516136561096,
          1.9690386023634812,
          1.9700835339682516,
          1.9706059997706369,
          1.9711284655730221,
          1.9716509313754074,
          1.9721733971777926,
          1.973218328782563,
          1.9737407945849483,
          1.9742632603873336,
          1.9747857261897188,
          1.975308191992104,
          1.9758306577944893,
          1.9763531235968745,
          1.9768755893992598,
          1.977398055201645,
          1.9784429868064155,
          1.9805328500159565,
          1.9810553158183417,
          1.981577781620727,
          1.9821002474231122,
          1.9847125764350384,
          1.9852350422374236,
          1.9857575080398089,
          1.9862799738421941,
          1.9868024396445794,
          1.988369837051735,
          1.9888923028541203,
          1.9894147686565056,
          1.9899372344588908,
          1.9920270976684318,
          1.992549563470817,
          1.9930720292732023,
          1.9935944950755875,
          1.9941169608779727,
          1.994639426680358,
          1.9951618924827432,
          1.9956843582851285,
          1.9962068240875137,
          1.996729289889899,
          1.9972517556922842,
          1.9977742214946712,
          1.9988191530994417,
          1.999341618901827,
          1.9998640847042122,
          2.0003865505065974,
          2.0009090163089827,
          2.001431482111368,
          2.0024764137161384,
          2.003521345320909,
          2.0045662769256793,
          2.0050887427280646,
          2.00561120853045,
          2.0066561401352203,
          2.0071786059376056,
          2.007701071739991,
          2.008223537542376,
          2.0087460033447613,
          2.0092684691471465,
          2.0097909349495318,
          2.010313400751917,
          2.0108358665543022,
          2.0113583323566875,
          2.0118807981590727,
          2.012403263961458,
          2.0134481955662284,
          2.014493127170999,
          2.015015592973384,
          2.0155380587757694,
          2.0160605245781547,
          2.01658299038054,
          2.017105456182925,
          2.0176279219853104,
          2.0181503877876956,
          2.018672853590081,
          2.019195319392466,
          2.0197177851948513,
          2.020762716799622,
          2.021285182602007,
          2.0223301142067776,
          2.022852580009163,
          2.023375045811548,
          2.0238975116139333,
          2.0244199774163185,
          2.0249424432187038,
          2.025464909021089,
          2.0259873748234742,
          2.0265098406258595,
          2.0270323064282447,
          2.0275547722306317,
          2.0285997038354022,
          2.0291221696377875,
          2.0296446354401727,
          2.030167101242558,
          2.030689567044943,
          2.032256964452099,
          2.032779430254484,
          2.0333018960568694,
          2.0338243618592546,
          2.03434682766164,
          2.034869293464025,
          2.0353917592664104,
          2.0359142250687956,
          2.036436690871181,
          2.036959156673566,
          2.0374816224759513,
          2.0380040882783366,
          2.038526554080722,
          2.0395714856854923,
          2.0400939514878775,
          2.0406164172902628,
          2.041138883092648,
          2.0416613488950333,
          2.0421838146974185,
          2.043228746302189,
          2.043751212104574,
          2.0442736779069595,
          2.0447961437093447,
          2.04531860951173,
          2.045841075314115,
          2.0463635411165004,
          2.0468860069188857,
          2.047408472721271,
          2.047930938523656,
          2.0484534043260414,
          2.0489758701284266,
          2.049498335930812,
          2.050020801733197,
          2.0510657333379676,
          2.051588199140353,
          2.052110664942738,
          2.0526331307451233,
          2.053678062349894,
          2.054200528152279,
          2.0547229939546643,
          2.0552454597570495,
          2.0557679255594348,
          2.05629039136182,
          2.056812857164207,
          2.0578577887689775,
          2.0583802545713628,
          2.0594251861761332,
          2.0599476519785185,
          2.061515049385674,
          2.0620375151880594,
          2.0625599809904447,
          2.06308244679283,
          2.063604912595215,
          2.0641273783976004,
          2.065172310002371,
          2.0662172416071414,
          2.0667397074095266,
          2.067784639014297,
          2.0688295706190676,
          2.069352036421453,
          2.069874502223838,
          2.0709194338286085,
          2.071441899630994,
          2.0724868312357643,
          2.0730092970381495,
          2.07405422864292,
          2.0745766944453052,
          2.0756216260500757,
          2.076144091852461,
          2.076666557654846,
          2.0777114892596167,
          2.078233955062002,
          2.0798013524691576,
          2.080323818271543,
          2.080846284073928,
          2.0813687498763134,
          2.0818912156786986,
          2.082936147283469,
          2.0860709420977805,
          2.087115873702553,
          2.087638339504938,
          2.0881608053073233,
          2.0892057369120938,
          2.089728202714479,
          2.0902506685168643,
          2.0907731343192495,
          2.092340531726405,
          2.0928629975287905,
          2.093907929133561,
          2.094430394935946,
          2.0949528607383314,
          2.0954753265407167,
          2.095997792343102,
          2.096520258145487,
          2.0975651897502576,
          2.098087655552643,
          2.098610121355028,
          2.0991325871574134,
          2.0996550529597986,
          2.100177518762184,
          2.1017449161693396,
          2.102267381971725,
          2.1033123135764953,
          2.1038347793788805,
          2.1043572451812658,
          2.1054021767860363,
          2.1059246425884215,
          2.1064471083908067,
          2.106969574193192,
          2.107492039995577,
          2.1085369716003477,
          2.109581903205118,
          2.1101043690075034,
          2.1106268348098887,
          2.111149300612274,
          2.111671766414659
         ],
         "yaxis": "y"
        }
       ],
       "layout": {
        "legend": {
         "title": {
          "text": "Deposit type"
         },
         "tracegroupgap": 0
        },
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "Count of datasets and dataverses deposited in HDV Root each day"
        },
        "xaxis": {
         "anchor": "y",
         "domain": [
          0,
          1
         ],
         "nticks": 50,
         "title": {
          "text": "Date of deposit"
         }
        },
        "yaxis": {
         "anchor": "x",
         "domain": [
          0,
          1
         ],
         "title": {
          "text": "Count of deposits"
         }
        }
       }
      },
      "text/html": [
       "<div>                            <div id=\"f3f59812-442b-4ee6-bb14-891b31c9b2fc\" class=\"plotly-graph-div\" style=\"height:525px; width:100%;\"></div>            <script type=\"text/javascript\">                require([\"plotly\"], function(Plotly) {                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById(\"f3f59812-442b-4ee6-bb14-891b31c9b2fc\")) {                    Plotly.newPlot(                        \"f3f59812-442b-4ee6-bb14-891b31c9b2fc\",                        [{\"hovertemplate\": \"Deposit type=Dataset<br>Date of deposit=%{x}<br>Count of deposits=%{y}<extra></extra>\", \"legendgroup\": \"Dataset\", \"marker\": {\"color\": \"#636efa\", \"symbol\": \"circle\"}, \"mode\": \"markers\", \"name\": \"Dataset\", \"showlegend\": true, \"type\": \"scattergl\", \"x\": [\"2018-11-01T00:00:00\", \"2018-11-02T00:00:00\", \"2018-11-03T00:00:00\", \"2018-11-04T00:00:00\", \"2018-11-05T00:00:00\", \"2018-11-06T00:00:00\", \"2018-11-07T00:00:00\", \"2018-11-08T00:00:00\", \"2018-11-09T00:00:00\", \"2018-11-10T00:00:00\", \"2018-11-12T00:00:00\", \"2018-11-13T00:00:00\", \"2018-11-14T00:00:00\", \"2018-11-15T00:00:00\", \"2018-11-16T00:00:00\", \"2018-11-17T00:00:00\", \"2018-11-18T00:00:00\", \"2018-11-19T00:00:00\", \"2018-11-20T00:00:00\", \"2018-11-21T00:00:00\", \"2018-11-22T00:00:00\", \"2018-11-23T00:00:00\", \"2018-11-24T00:00:00\", \"2018-11-25T00:00:00\", \"2018-11-26T00:00:00\", \"2018-11-27T00:00:00\", \"2018-11-28T00:00:00\", \"2018-11-29T00:00:00\", \"2018-12-02T00:00:00\", \"2018-12-03T00:00:00\", \"2018-12-04T00:00:00\", \"2018-12-05T00:00:00\", \"2018-12-06T00:00:00\", \"2018-12-07T00:00:00\", \"2018-12-08T00:00:00\", \"2018-12-09T00:00:00\", \"2018-12-10T00:00:00\", \"2018-12-11T00:00:00\", \"2018-12-12T00:00:00\", \"2018-12-13T00:00:00\", \"2018-12-14T00:00:00\", \"2018-12-16T00:00:00\", \"2018-12-17T00:00:00\", \"2018-12-18T00:00:00\", \"2018-12-19T00:00:00\", \"2018-12-20T00:00:00\", \"2018-12-21T00:00:00\", \"2018-12-22T00:00:00\", \"2018-12-24T00:00:00\", \"2018-12-25T00:00:00\", \"2018-12-27T00:00:00\", \"2018-12-28T00:00:00\", \"2018-12-30T00:00:00\", \"2019-01-01T00:00:00\", \"2019-01-02T00:00:00\", \"2019-01-03T00:00:00\", \"2019-01-04T00:00:00\", \"2019-01-05T00:00:00\", \"2019-01-07T00:00:00\", \"2019-01-08T00:00:00\", \"2019-01-09T00:00:00\", \"2019-01-10T00:00:00\", \"2019-01-11T00:00:00\", \"2019-01-12T00:00:00\", \"2019-01-13T00:00:00\", \"2019-01-14T00:00:00\", \"2019-01-15T00:00:00\", \"2019-01-16T00:00:00\", \"2019-01-17T00:00:00\", \"2019-01-18T00:00:00\", \"2019-01-19T00:00:00\", \"2019-01-20T00:00:00\", \"2019-01-21T00:00:00\", \"2019-01-22T00:00:00\", \"2019-01-23T00:00:00\", \"2019-01-24T00:00:00\", \"2019-01-25T00:00:00\", \"2019-01-26T00:00:00\", \"2019-01-28T00:00:00\", \"2019-01-29T00:00:00\", \"2019-01-30T00:00:00\", \"2019-01-31T00:00:00\", \"2019-02-01T00:00:00\", \"2019-02-02T00:00:00\", \"2019-02-03T00:00:00\", \"2019-02-04T00:00:00\", \"2019-02-05T00:00:00\", \"2019-02-06T00:00:00\", \"2019-02-07T00:00:00\", \"2019-02-08T00:00:00\", \"2019-02-09T00:00:00\", \"2019-02-10T00:00:00\", \"2019-02-11T00:00:00\", \"2019-02-12T00:00:00\", \"2019-02-13T00:00:00\", \"2019-02-15T00:00:00\", \"2019-02-16T00:00:00\", \"2019-02-17T00:00:00\", \"2019-02-18T00:00:00\", \"2019-02-19T00:00:00\", \"2019-02-20T00:00:00\", \"2019-02-21T00:00:00\", \"2019-02-22T00:00:00\", \"2019-02-23T00:00:00\", \"2019-02-24T00:00:00\", \"2019-02-25T00:00:00\", \"2019-02-26T00:00:00\", \"2019-02-27T00:00:00\", \"2019-02-28T00:00:00\", \"2019-03-01T00:00:00\", \"2019-03-04T00:00:00\", \"2019-03-05T00:00:00\", \"2019-03-06T00:00:00\", \"2019-03-07T00:00:00\", \"2019-03-08T00:00:00\", \"2019-03-09T00:00:00\", \"2019-03-10T00:00:00\", \"2019-03-11T00:00:00\", \"2019-03-12T00:00:00\", \"2019-03-13T00:00:00\", \"2019-03-14T00:00:00\", \"2019-03-15T00:00:00\", \"2019-03-16T00:00:00\", \"2019-03-17T00:00:00\", \"2019-03-18T00:00:00\", \"2019-03-19T00:00:00\", \"2019-03-20T00:00:00\", \"2019-03-21T00:00:00\", \"2019-03-22T00:00:00\", \"2019-03-23T00:00:00\", \"2019-03-24T00:00:00\", \"2019-03-25T00:00:00\", \"2019-03-26T00:00:00\", \"2019-03-27T00:00:00\", \"2019-03-28T00:00:00\", \"2019-03-29T00:00:00\", \"2019-03-30T00:00:00\", \"2019-03-31T00:00:00\", \"2019-04-01T00:00:00\", \"2019-04-02T00:00:00\", \"2019-04-03T00:00:00\", \"2019-04-04T00:00:00\", \"2019-04-05T00:00:00\", \"2019-04-06T00:00:00\", \"2019-04-07T00:00:00\", \"2019-04-08T00:00:00\", \"2019-04-09T00:00:00\", \"2019-04-10T00:00:00\", \"2019-04-11T00:00:00\", \"2019-04-12T00:00:00\", \"2019-04-13T00:00:00\", \"2019-04-14T00:00:00\", \"2019-04-15T00:00:00\", \"2019-04-16T00:00:00\", \"2019-04-17T00:00:00\", \"2019-04-18T00:00:00\", \"2019-04-19T00:00:00\", \"2019-04-20T00:00:00\", \"2019-04-21T00:00:00\", \"2019-04-22T00:00:00\", \"2019-04-23T00:00:00\", \"2019-04-24T00:00:00\", \"2019-04-25T00:00:00\", \"2019-04-26T00:00:00\", \"2019-04-27T00:00:00\", \"2019-04-28T00:00:00\", \"2019-04-29T00:00:00\", \"2019-04-30T00:00:00\", \"2019-05-01T00:00:00\", \"2019-05-02T00:00:00\", \"2019-05-03T00:00:00\", \"2019-05-04T00:00:00\", \"2019-05-06T00:00:00\", \"2019-05-07T00:00:00\", \"2019-05-08T00:00:00\", \"2019-05-09T00:00:00\", \"2019-05-10T00:00:00\", \"2019-05-11T00:00:00\", \"2019-05-12T00:00:00\", \"2019-05-13T00:00:00\", \"2019-05-14T00:00:00\", \"2019-05-15T00:00:00\", \"2019-05-16T00:00:00\", \"2019-05-17T00:00:00\", \"2019-05-18T00:00:00\", \"2019-05-19T00:00:00\", \"2019-05-20T00:00:00\", \"2019-05-21T00:00:00\", \"2019-05-22T00:00:00\", \"2019-05-23T00:00:00\", \"2019-05-24T00:00:00\", \"2019-05-25T00:00:00\", \"2019-05-26T00:00:00\", \"2019-05-27T00:00:00\", \"2019-05-28T00:00:00\", \"2019-05-29T00:00:00\", \"2019-05-30T00:00:00\", \"2019-05-31T00:00:00\", \"2019-06-02T00:00:00\", \"2019-06-03T00:00:00\", \"2019-06-04T00:00:00\", \"2019-06-05T00:00:00\", \"2019-06-06T00:00:00\", \"2019-06-07T00:00:00\", \"2019-06-08T00:00:00\", \"2019-06-10T00:00:00\", \"2019-06-12T00:00:00\", \"2019-06-13T00:00:00\", \"2019-06-14T00:00:00\", \"2019-06-15T00:00:00\", \"2019-06-16T00:00:00\", \"2019-06-17T00:00:00\", \"2019-06-18T00:00:00\", \"2019-06-19T00:00:00\", \"2019-06-20T00:00:00\", \"2019-06-21T00:00:00\", \"2019-06-22T00:00:00\", \"2019-06-23T00:00:00\", \"2019-06-24T00:00:00\", \"2019-06-25T00:00:00\", \"2019-06-26T00:00:00\", \"2019-06-27T00:00:00\", \"2019-06-28T00:00:00\", \"2019-06-30T00:00:00\", \"2019-07-01T00:00:00\", \"2019-07-02T00:00:00\", \"2019-07-03T00:00:00\", \"2019-07-04T00:00:00\", \"2019-07-05T00:00:00\", \"2019-07-06T00:00:00\", \"2019-07-07T00:00:00\", \"2019-07-08T00:00:00\", \"2019-07-09T00:00:00\", \"2019-07-10T00:00:00\", \"2019-07-11T00:00:00\", \"2019-07-12T00:00:00\", \"2019-07-13T00:00:00\", \"2019-07-14T00:00:00\", \"2019-07-15T00:00:00\", \"2019-07-16T00:00:00\", \"2019-07-17T00:00:00\", \"2019-07-18T00:00:00\", \"2019-07-19T00:00:00\", \"2019-07-21T00:00:00\", \"2019-07-22T00:00:00\", \"2019-07-23T00:00:00\", \"2019-07-24T00:00:00\", \"2019-07-25T00:00:00\", \"2019-07-26T00:00:00\", \"2019-07-29T00:00:00\", \"2019-07-30T00:00:00\", \"2019-07-31T00:00:00\", \"2019-08-01T00:00:00\", \"2019-08-02T00:00:00\", \"2019-08-04T00:00:00\", \"2019-08-05T00:00:00\", \"2019-08-06T00:00:00\", \"2019-08-07T00:00:00\", \"2019-08-08T00:00:00\", \"2019-08-09T00:00:00\", \"2019-08-10T00:00:00\", \"2019-08-11T00:00:00\", \"2019-08-12T00:00:00\", \"2019-08-13T00:00:00\", \"2019-08-14T00:00:00\", \"2019-08-15T00:00:00\", \"2019-08-16T00:00:00\", \"2019-08-17T00:00:00\", \"2019-08-19T00:00:00\", \"2019-08-20T00:00:00\", \"2019-08-21T00:00:00\", \"2019-08-22T00:00:00\", \"2019-08-23T00:00:00\", \"2019-08-25T00:00:00\", \"2019-08-26T00:00:00\", \"2019-08-27T00:00:00\", \"2019-08-28T00:00:00\", \"2019-08-29T00:00:00\", \"2019-08-30T00:00:00\", \"2019-08-31T00:00:00\", \"2019-09-01T00:00:00\", \"2019-09-02T00:00:00\", \"2019-09-03T00:00:00\", \"2019-09-04T00:00:00\", \"2019-09-05T00:00:00\", \"2019-09-06T00:00:00\", \"2019-09-07T00:00:00\", \"2019-09-08T00:00:00\", \"2019-09-09T00:00:00\", \"2019-09-10T00:00:00\", \"2019-09-11T00:00:00\", \"2019-09-12T00:00:00\", \"2019-09-13T00:00:00\", \"2019-09-14T00:00:00\", \"2019-09-15T00:00:00\", \"2019-09-16T00:00:00\", \"2019-09-17T00:00:00\", \"2019-09-18T00:00:00\", \"2019-09-19T00:00:00\", \"2019-09-20T00:00:00\", \"2019-09-21T00:00:00\", \"2019-09-22T00:00:00\", \"2019-09-23T00:00:00\", \"2019-09-24T00:00:00\", \"2019-09-25T00:00:00\", \"2019-09-26T00:00:00\", \"2019-09-27T00:00:00\", \"2019-09-28T00:00:00\", \"2019-09-30T00:00:00\", \"2019-10-01T00:00:00\", \"2019-10-02T00:00:00\", \"2019-10-03T00:00:00\", \"2019-10-04T00:00:00\", \"2019-10-05T00:00:00\", \"2019-10-06T00:00:00\", \"2019-10-07T00:00:00\", \"2019-10-08T00:00:00\", \"2019-10-09T00:00:00\", \"2019-10-10T00:00:00\", \"2019-10-11T00:00:00\", \"2019-10-12T00:00:00\", \"2019-10-13T00:00:00\", \"2019-10-14T00:00:00\", \"2019-10-15T00:00:00\", \"2019-10-16T00:00:00\", \"2019-10-17T00:00:00\", \"2019-10-18T00:00:00\", \"2019-10-19T00:00:00\", \"2019-10-20T00:00:00\", \"2019-10-21T00:00:00\", \"2019-10-22T00:00:00\", \"2019-10-23T00:00:00\", \"2019-10-24T00:00:00\", \"2019-10-25T00:00:00\", \"2019-10-27T00:00:00\", \"2019-10-28T00:00:00\", \"2019-10-29T00:00:00\", \"2019-10-30T00:00:00\", \"2019-10-31T00:00:00\", \"2019-11-01T00:00:00\", \"2019-11-02T00:00:00\", \"2019-11-03T00:00:00\", \"2019-11-04T00:00:00\", \"2019-11-05T00:00:00\", \"2019-11-06T00:00:00\", \"2019-11-07T00:00:00\", \"2019-11-08T00:00:00\", \"2019-11-09T00:00:00\", \"2019-11-10T00:00:00\", \"2019-11-11T00:00:00\", \"2019-11-12T00:00:00\", \"2019-11-13T00:00:00\", \"2019-11-14T00:00:00\", \"2019-11-15T00:00:00\", \"2019-11-16T00:00:00\", \"2019-11-17T00:00:00\", \"2019-11-18T00:00:00\", \"2019-11-19T00:00:00\", \"2019-11-20T00:00:00\", \"2019-11-21T00:00:00\", \"2019-11-22T00:00:00\", \"2019-11-24T00:00:00\", \"2019-11-25T00:00:00\", \"2019-11-26T00:00:00\", \"2019-11-27T00:00:00\", \"2019-11-28T00:00:00\", \"2019-11-29T00:00:00\", \"2019-11-30T00:00:00\", \"2019-12-01T00:00:00\", \"2019-12-02T00:00:00\", \"2019-12-03T00:00:00\", \"2019-12-04T00:00:00\", \"2019-12-05T00:00:00\", \"2019-12-06T00:00:00\", \"2019-12-07T00:00:00\", \"2019-12-08T00:00:00\", \"2019-12-09T00:00:00\", \"2019-12-10T00:00:00\", \"2019-12-11T00:00:00\", \"2019-12-12T00:00:00\", \"2019-12-13T00:00:00\", \"2019-12-14T00:00:00\", \"2019-12-15T00:00:00\", \"2019-12-16T00:00:00\", \"2019-12-17T00:00:00\", \"2019-12-18T00:00:00\", \"2019-12-19T00:00:00\", \"2019-12-20T00:00:00\", \"2019-12-21T00:00:00\", \"2019-12-22T00:00:00\", \"2019-12-23T00:00:00\", \"2019-12-24T00:00:00\", \"2019-12-25T00:00:00\", \"2019-12-26T00:00:00\", \"2019-12-27T00:00:00\", \"2019-12-28T00:00:00\", \"2019-12-30T00:00:00\", \"2019-12-31T00:00:00\", \"2020-01-01T00:00:00\", \"2020-01-02T00:00:00\", \"2020-01-03T00:00:00\", \"2020-01-04T00:00:00\", \"2020-01-05T00:00:00\", \"2020-01-06T00:00:00\", \"2020-01-07T00:00:00\", \"2020-01-08T00:00:00\", \"2020-01-09T00:00:00\", \"2020-01-10T00:00:00\", \"2020-01-12T00:00:00\", \"2020-01-13T00:00:00\", \"2020-01-14T00:00:00\", \"2020-01-15T00:00:00\", \"2020-01-16T00:00:00\", \"2020-01-17T00:00:00\", \"2020-01-18T00:00:00\", \"2020-01-20T00:00:00\", \"2020-01-21T00:00:00\", \"2020-01-22T00:00:00\", \"2020-01-23T00:00:00\", \"2020-01-24T00:00:00\", \"2020-01-25T00:00:00\", \"2020-01-26T00:00:00\", \"2020-01-27T00:00:00\", \"2020-01-28T00:00:00\", \"2020-01-29T00:00:00\", \"2020-01-30T00:00:00\", \"2020-01-31T00:00:00\", \"2020-02-01T00:00:00\", \"2020-02-02T00:00:00\", \"2020-02-03T00:00:00\", \"2020-02-04T00:00:00\", \"2020-02-05T00:00:00\", \"2020-02-06T00:00:00\", \"2020-02-07T00:00:00\", \"2020-02-08T00:00:00\", \"2020-02-09T00:00:00\", \"2020-02-10T00:00:00\", \"2020-02-11T00:00:00\", \"2020-02-12T00:00:00\", \"2020-02-13T00:00:00\", \"2020-02-14T00:00:00\", \"2020-02-15T00:00:00\", \"2020-02-16T00:00:00\", \"2020-02-17T00:00:00\", \"2020-02-18T00:00:00\", \"2020-02-19T00:00:00\", \"2020-02-20T00:00:00\", \"2020-02-21T00:00:00\", \"2020-02-22T00:00:00\", \"2020-02-23T00:00:00\", \"2020-02-24T00:00:00\", \"2020-02-25T00:00:00\", \"2020-02-26T00:00:00\", \"2020-02-27T00:00:00\", \"2020-02-28T00:00:00\", \"2020-02-29T00:00:00\", \"2020-03-01T00:00:00\", \"2020-03-02T00:00:00\", \"2020-03-03T00:00:00\", \"2020-03-04T00:00:00\", \"2020-03-05T00:00:00\", \"2020-03-06T00:00:00\", \"2020-03-07T00:00:00\", \"2020-03-09T00:00:00\", \"2020-03-10T00:00:00\", \"2020-03-11T00:00:00\", \"2020-03-12T00:00:00\", \"2020-03-13T00:00:00\", \"2020-03-14T00:00:00\", \"2020-03-15T00:00:00\", \"2020-03-16T00:00:00\", \"2020-03-17T00:00:00\", \"2020-03-18T00:00:00\", \"2020-03-19T00:00:00\", \"2020-03-20T00:00:00\", \"2020-03-21T00:00:00\", \"2020-03-22T00:00:00\", \"2020-03-23T00:00:00\", \"2020-03-24T00:00:00\", \"2020-03-25T00:00:00\", \"2020-03-26T00:00:00\", \"2020-03-27T00:00:00\", \"2020-03-28T00:00:00\", \"2020-03-29T00:00:00\", \"2020-03-30T00:00:00\", \"2020-03-31T00:00:00\", \"2020-04-02T00:00:00\", \"2020-04-03T00:00:00\", \"2020-04-04T00:00:00\", \"2020-04-05T00:00:00\", \"2020-04-06T00:00:00\", \"2020-04-07T00:00:00\", \"2020-04-08T00:00:00\", \"2020-04-09T00:00:00\", \"2020-04-10T00:00:00\", \"2020-04-11T00:00:00\", \"2020-04-12T00:00:00\", \"2020-04-13T00:00:00\", \"2020-04-14T00:00:00\", \"2020-04-15T00:00:00\", \"2020-04-16T00:00:00\", \"2020-04-17T00:00:00\", \"2020-04-18T00:00:00\", \"2020-04-19T00:00:00\", \"2020-04-20T00:00:00\", \"2020-04-21T00:00:00\", \"2020-04-22T00:00:00\", \"2020-04-23T00:00:00\", \"2020-04-24T00:00:00\", \"2020-04-25T00:00:00\", \"2020-04-26T00:00:00\", \"2020-04-27T00:00:00\", \"2020-04-28T00:00:00\", \"2020-04-29T00:00:00\", \"2020-04-30T00:00:00\", \"2020-05-01T00:00:00\", \"2020-05-02T00:00:00\", \"2020-05-04T00:00:00\", \"2020-05-05T00:00:00\", \"2020-05-06T00:00:00\", \"2020-05-07T00:00:00\", \"2020-05-08T00:00:00\", \"2020-05-09T00:00:00\", \"2020-05-10T00:00:00\", \"2020-05-11T00:00:00\", \"2020-05-12T00:00:00\", \"2020-05-13T00:00:00\", \"2020-05-14T00:00:00\", \"2020-05-15T00:00:00\", \"2020-05-16T00:00:00\", \"2020-05-17T00:00:00\", \"2020-05-18T00:00:00\", \"2020-05-19T00:00:00\", \"2020-05-20T00:00:00\", \"2020-05-21T00:00:00\", \"2020-05-22T00:00:00\", \"2020-05-23T00:00:00\", \"2020-05-24T00:00:00\", \"2020-05-25T00:00:00\", \"2020-05-26T00:00:00\", \"2020-05-27T00:00:00\", \"2020-05-28T00:00:00\", \"2020-05-29T00:00:00\", \"2020-05-30T00:00:00\", \"2020-05-31T00:00:00\", \"2020-06-01T00:00:00\", \"2020-06-02T00:00:00\", \"2020-06-03T00:00:00\", \"2020-06-04T00:00:00\", \"2020-06-05T00:00:00\", \"2020-06-06T00:00:00\", \"2020-06-07T00:00:00\", \"2020-06-08T00:00:00\", \"2020-06-09T00:00:00\", \"2020-06-10T00:00:00\", \"2020-06-11T00:00:00\", \"2020-06-12T00:00:00\", \"2020-06-13T00:00:00\", \"2020-06-14T00:00:00\", \"2020-06-15T00:00:00\", \"2020-06-16T00:00:00\", \"2020-06-17T00:00:00\", \"2020-06-18T00:00:00\", \"2020-06-19T00:00:00\", \"2020-06-20T00:00:00\", \"2020-06-21T00:00:00\", \"2020-06-22T00:00:00\", \"2020-06-23T00:00:00\", \"2020-06-24T00:00:00\", \"2020-06-25T00:00:00\", \"2020-06-26T00:00:00\", \"2020-06-27T00:00:00\", \"2020-06-28T00:00:00\", \"2020-06-29T00:00:00\", \"2020-06-30T00:00:00\", \"2020-07-01T00:00:00\", \"2020-07-02T00:00:00\", \"2020-07-03T00:00:00\", \"2020-07-04T00:00:00\", \"2020-07-05T00:00:00\", \"2020-07-06T00:00:00\", \"2020-07-07T00:00:00\", \"2020-07-08T00:00:00\", \"2020-07-09T00:00:00\", \"2020-07-10T00:00:00\", \"2020-07-11T00:00:00\", \"2020-07-12T00:00:00\", \"2020-07-13T00:00:00\", \"2020-07-14T00:00:00\", \"2020-07-15T00:00:00\", \"2020-07-16T00:00:00\", \"2020-07-17T00:00:00\", \"2020-07-18T00:00:00\", \"2020-07-19T00:00:00\", \"2020-07-20T00:00:00\", \"2020-07-21T00:00:00\", \"2020-07-22T00:00:00\", \"2020-07-23T00:00:00\", \"2020-07-24T00:00:00\", \"2020-07-25T00:00:00\", \"2020-07-26T00:00:00\", \"2020-07-27T00:00:00\", \"2020-07-28T00:00:00\", \"2020-07-29T00:00:00\", \"2020-07-30T00:00:00\", \"2020-07-31T00:00:00\", \"2020-08-01T00:00:00\", \"2020-08-02T00:00:00\", \"2020-08-03T00:00:00\", \"2020-08-04T00:00:00\", \"2020-08-05T00:00:00\", \"2020-08-06T00:00:00\", \"2020-08-07T00:00:00\", \"2020-08-08T00:00:00\", \"2020-08-09T00:00:00\", \"2020-08-10T00:00:00\", \"2020-08-11T00:00:00\", \"2020-08-12T00:00:00\", \"2020-08-13T00:00:00\", \"2020-08-14T00:00:00\", \"2020-08-15T00:00:00\", \"2020-08-16T00:00:00\", \"2020-08-17T00:00:00\", \"2020-08-18T00:00:00\", \"2020-08-19T00:00:00\", \"2020-08-20T00:00:00\", \"2020-08-21T00:00:00\", \"2020-08-22T00:00:00\", \"2020-08-23T00:00:00\", \"2020-08-24T00:00:00\", \"2020-08-25T00:00:00\", \"2020-08-26T00:00:00\", \"2020-08-27T00:00:00\", \"2020-08-28T00:00:00\", \"2020-08-29T00:00:00\", \"2020-08-30T00:00:00\", \"2020-08-31T00:00:00\", \"2020-09-01T00:00:00\", \"2020-09-02T00:00:00\", \"2020-09-03T00:00:00\", \"2020-09-04T00:00:00\", \"2020-09-05T00:00:00\", \"2020-09-07T00:00:00\", \"2020-09-08T00:00:00\", \"2020-09-09T00:00:00\", \"2020-09-10T00:00:00\", \"2020-09-11T00:00:00\", \"2020-09-12T00:00:00\", \"2020-09-14T00:00:00\", \"2020-09-15T00:00:00\", \"2020-09-16T00:00:00\", \"2020-09-17T00:00:00\", \"2020-09-18T00:00:00\", \"2020-09-19T00:00:00\", \"2020-09-20T00:00:00\", \"2020-09-21T00:00:00\", \"2020-09-22T00:00:00\", \"2020-09-23T00:00:00\", \"2020-09-24T00:00:00\", \"2020-09-25T00:00:00\", \"2020-09-26T00:00:00\", \"2020-09-27T00:00:00\", \"2020-09-28T00:00:00\", \"2020-09-29T00:00:00\", \"2020-09-30T00:00:00\", \"2020-10-01T00:00:00\", \"2020-10-02T00:00:00\", \"2020-10-03T00:00:00\", \"2020-10-04T00:00:00\", \"2020-10-05T00:00:00\", \"2020-10-06T00:00:00\", \"2020-10-07T00:00:00\", \"2020-10-08T00:00:00\", \"2020-10-09T00:00:00\", \"2020-10-10T00:00:00\", \"2020-10-11T00:00:00\", \"2020-10-12T00:00:00\", \"2020-10-13T00:00:00\", \"2020-10-14T00:00:00\", \"2020-10-15T00:00:00\", \"2020-10-16T00:00:00\", \"2020-10-17T00:00:00\", \"2020-10-18T00:00:00\", \"2020-10-19T00:00:00\", \"2020-10-20T00:00:00\", \"2020-10-21T00:00:00\", \"2020-10-22T00:00:00\", \"2020-10-23T00:00:00\", \"2020-10-24T00:00:00\", \"2020-10-25T00:00:00\", \"2020-10-26T00:00:00\", \"2020-10-27T00:00:00\", \"2020-10-28T00:00:00\", \"2020-10-29T00:00:00\", \"2020-10-30T00:00:00\", \"2020-10-31T00:00:00\"], \"xaxis\": \"x\", \"y\": [1, 6, 1, 2, 4, 3, 7, 2, 2, 1, 2, 3, 3, 3, 1, 1, 1, 2, 1, 6, 1, 2, 1, 1, 3, 1, 6, 5, 3, 4, 7, 3, 2, 2, 7, 2, 3, 3, 3, 4, 4, 1, 3, 3, 2, 4, 5, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 1, 4, 2, 3, 2, 2, 2, 3, 2, 3, 4, 5, 9, 4, 1, 3, 7, 1, 4, 7, 3, 4, 3, 3, 4, 7, 3, 2, 2, 1, 4, 4, 3, 1, 1, 4, 1, 3, 1, 4, 1, 2, 5, 7, 5, 5, 1, 3, 2, 8, 4, 4, 3, 5, 4, 7, 18, 3, 1, 5, 7, 7, 2, 5, 4, 2, 5, 3, 8, 4, 2, 6, 2, 4, 3, 3, 3, 4, 4, 1, 3, 8, 3, 1, 2, 3, 2, 2, 10, 6, 12, 4, 4, 3, 3, 3, 3, 2, 1, 6, 4, 2, 8, 8, 4, 3, 4, 6, 2, 6, 6, 1, 3, 4, 2, 2, 2, 6, 2, 4, 1, 1, 1, 9, 8, 5, 4, 6, 2, 3, 3, 2, 3, 2, 1, 1, 3, 1, 4, 4, 5, 1, 4, 3, 6, 11, 2, 1, 6, 2, 3, 1, 1, 2, 3, 3, 2, 2, 3, 1, 2, 4, 5, 4, 6, 3, 3, 1, 6, 8, 2, 2, 2, 5, 7, 4, 2, 4, 6, 1, 5, 7, 3, 10, 8, 4, 2, 6, 7, 7, 3, 3, 8, 3, 6, 5, 3, 3, 7, 4, 6, 9, 6, 3, 4, 1, 8, 5, 5, 6, 2, 3, 3, 2, 3, 4, 2, 3, 5, 6, 2, 3, 1, 3, 8, 6, 5, 9, 3, 4, 1, 3, 1, 8, 2, 5, 6, 1, 1, 6, 5, 1, 4, 1, 3, 5, 8, 6, 4, 5, 3, 10, 4, 3, 4, 1, 1, 1, 10, 6, 4, 1, 5, 6, 2, 5, 7, 4, 7, 4, 4, 6, 7, 5, 3, 3, 3, 4, 11, 4, 3, 4, 3, 2, 1, 1, 2, 7, 4, 4, 3, 2, 3, 4, 3, 3, 3, 1, 1, 6, 4, 2, 3, 4, 1, 10, 6, 6, 1, 2, 3, 2, 7, 2, 5, 2, 4, 2, 2, 8, 8, 5, 4, 5, 3, 3, 6, 9, 4, 6, 2, 2, 1, 1, 7, 1, 4, 3, 3, 5, 3, 1, 5, 2, 1, 2, 7, 4, 3, 7, 4, 3, 9, 7, 7, 7, 3, 3, 5, 5, 3, 3, 9, 3, 2, 7, 5, 6, 2, 9, 5, 3, 4, 1, 5, 4, 6, 1, 4, 8, 10, 4, 2, 6, 5, 1, 6, 5, 8, 3, 1, 2, 1, 7, 4, 3, 4, 11, 4, 5, 5, 7, 4, 4, 2, 4, 10, 11, 10, 4, 4, 2, 2, 1, 5, 4, 5, 5, 2, 2, 8, 4, 4, 8, 4, 5, 4, 10, 7, 5, 7, 3, 5, 11, 6, 4, 10, 11, 3, 2, 4, 6, 7, 5, 5, 1, 3, 7, 4, 12, 11, 8, 2, 6, 6, 10, 3, 14, 6, 3, 6, 7, 6, 5, 11, 2, 1, 7, 5, 6, 4, 10, 4, 7, 11, 8, 5, 4, 6, 3, 6, 3, 7, 5, 2, 7, 1, 5, 10, 7, 5, 12, 4, 1, 2, 11, 4, 7, 5, 15, 3, 4, 7, 9, 14, 9, 12, 3, 4, 4, 9, 11, 4, 9, 3, 4, 5, 11, 4, 12, 1, 2, 1, 2, 9, 5, 4, 7, 2, 1, 10, 3, 6, 6, 3, 4, 2, 9, 13, 7, 4, 4, 3, 2, 6, 7, 7, 10, 8, 4, 4, 4, 8, 7, 11, 8, 1, 5, 10, 11, 4, 5, 9, 2, 5, 7, 7, 3, 9, 5, 1, 1, 10, 5, 5, 4, 5, 5, 4, 3, 3, 4, 4, 8, 2, 6, 10, 11, 8, 5, 9, 5, 2, 6, 5, 5, 7, 7, 7, 2, 2, 7, 7, 1, 7, 4, 7, 5, 4, 4, 2, 1, 17, 8, 6, 5, 6, 2, 1, 7, 9, 5, 4, 2, 13, 3, 6, 3, 8, 5, 4, 4, 2, 4, 5, 7, 9, 8, 6], \"yaxis\": \"y\"}, {\"hovertemplate\": \"<b>OLS trendline</b><br>count = 4.95171e-08 * deposit_createdate + -73.4216<br>R<sup>2</sup>=0.103844<br><br>Deposit type=Dataset<br>Date of deposit=%{x}<br>Count of deposits=%{y} <b>(trend)</b><extra></extra>\", \"legendgroup\": \"Dataset\", \"marker\": {\"color\": \"#636efa\", \"symbol\": \"circle\"}, \"mode\": \"lines\", \"name\": \"Dataset\", \"showlegend\": false, \"type\": \"scattergl\", \"x\": [\"2018-11-01T00:00:00\", \"2018-11-02T00:00:00\", \"2018-11-03T00:00:00\", \"2018-11-04T00:00:00\", \"2018-11-05T00:00:00\", \"2018-11-06T00:00:00\", \"2018-11-07T00:00:00\", \"2018-11-08T00:00:00\", \"2018-11-09T00:00:00\", \"2018-11-10T00:00:00\", \"2018-11-12T00:00:00\", \"2018-11-13T00:00:00\", \"2018-11-14T00:00:00\", \"2018-11-15T00:00:00\", \"2018-11-16T00:00:00\", \"2018-11-17T00:00:00\", \"2018-11-18T00:00:00\", \"2018-11-19T00:00:00\", \"2018-11-20T00:00:00\", \"2018-11-21T00:00:00\", \"2018-11-22T00:00:00\", \"2018-11-23T00:00:00\", \"2018-11-24T00:00:00\", \"2018-11-25T00:00:00\", \"2018-11-26T00:00:00\", \"2018-11-27T00:00:00\", \"2018-11-28T00:00:00\", \"2018-11-29T00:00:00\", \"2018-12-02T00:00:00\", \"2018-12-03T00:00:00\", \"2018-12-04T00:00:00\", \"2018-12-05T00:00:00\", \"2018-12-06T00:00:00\", \"2018-12-07T00:00:00\", \"2018-12-08T00:00:00\", \"2018-12-09T00:00:00\", \"2018-12-10T00:00:00\", \"2018-12-11T00:00:00\", \"2018-12-12T00:00:00\", \"2018-12-13T00:00:00\", \"2018-12-14T00:00:00\", \"2018-12-16T00:00:00\", \"2018-12-17T00:00:00\", \"2018-12-18T00:00:00\", \"2018-12-19T00:00:00\", \"2018-12-20T00:00:00\", \"2018-12-21T00:00:00\", \"2018-12-22T00:00:00\", \"2018-12-24T00:00:00\", \"2018-12-25T00:00:00\", \"2018-12-27T00:00:00\", \"2018-12-28T00:00:00\", \"2018-12-30T00:00:00\", \"2019-01-01T00:00:00\", \"2019-01-02T00:00:00\", \"2019-01-03T00:00:00\", \"2019-01-04T00:00:00\", \"2019-01-05T00:00:00\", \"2019-01-07T00:00:00\", \"2019-01-08T00:00:00\", \"2019-01-09T00:00:00\", \"2019-01-10T00:00:00\", \"2019-01-11T00:00:00\", \"2019-01-12T00:00:00\", \"2019-01-13T00:00:00\", \"2019-01-14T00:00:00\", \"2019-01-15T00:00:00\", \"2019-01-16T00:00:00\", \"2019-01-17T00:00:00\", \"2019-01-18T00:00:00\", \"2019-01-19T00:00:00\", \"2019-01-20T00:00:00\", \"2019-01-21T00:00:00\", \"2019-01-22T00:00:00\", \"2019-01-23T00:00:00\", \"2019-01-24T00:00:00\", \"2019-01-25T00:00:00\", \"2019-01-26T00:00:00\", \"2019-01-28T00:00:00\", \"2019-01-29T00:00:00\", \"2019-01-30T00:00:00\", \"2019-01-31T00:00:00\", \"2019-02-01T00:00:00\", \"2019-02-02T00:00:00\", \"2019-02-03T00:00:00\", \"2019-02-04T00:00:00\", \"2019-02-05T00:00:00\", \"2019-02-06T00:00:00\", \"2019-02-07T00:00:00\", \"2019-02-08T00:00:00\", \"2019-02-09T00:00:00\", \"2019-02-10T00:00:00\", \"2019-02-11T00:00:00\", \"2019-02-12T00:00:00\", \"2019-02-13T00:00:00\", \"2019-02-15T00:00:00\", \"2019-02-16T00:00:00\", \"2019-02-17T00:00:00\", \"2019-02-18T00:00:00\", \"2019-02-19T00:00:00\", \"2019-02-20T00:00:00\", \"2019-02-21T00:00:00\", \"2019-02-22T00:00:00\", \"2019-02-23T00:00:00\", \"2019-02-24T00:00:00\", \"2019-02-25T00:00:00\", \"2019-02-26T00:00:00\", \"2019-02-27T00:00:00\", \"2019-02-28T00:00:00\", \"2019-03-01T00:00:00\", \"2019-03-04T00:00:00\", \"2019-03-05T00:00:00\", \"2019-03-06T00:00:00\", \"2019-03-07T00:00:00\", \"2019-03-08T00:00:00\", \"2019-03-09T00:00:00\", \"2019-03-10T00:00:00\", \"2019-03-11T00:00:00\", \"2019-03-12T00:00:00\", \"2019-03-13T00:00:00\", \"2019-03-14T00:00:00\", \"2019-03-15T00:00:00\", \"2019-03-16T00:00:00\", \"2019-03-17T00:00:00\", \"2019-03-18T00:00:00\", \"2019-03-19T00:00:00\", \"2019-03-20T00:00:00\", \"2019-03-21T00:00:00\", \"2019-03-22T00:00:00\", \"2019-03-23T00:00:00\", \"2019-03-24T00:00:00\", \"2019-03-25T00:00:00\", \"2019-03-26T00:00:00\", \"2019-03-27T00:00:00\", \"2019-03-28T00:00:00\", \"2019-03-29T00:00:00\", \"2019-03-30T00:00:00\", \"2019-03-31T00:00:00\", \"2019-04-01T00:00:00\", \"2019-04-02T00:00:00\", \"2019-04-03T00:00:00\", \"2019-04-04T00:00:00\", \"2019-04-05T00:00:00\", \"2019-04-06T00:00:00\", \"2019-04-07T00:00:00\", \"2019-04-08T00:00:00\", \"2019-04-09T00:00:00\", \"2019-04-10T00:00:00\", \"2019-04-11T00:00:00\", \"2019-04-12T00:00:00\", \"2019-04-13T00:00:00\", \"2019-04-14T00:00:00\", \"2019-04-15T00:00:00\", \"2019-04-16T00:00:00\", \"2019-04-17T00:00:00\", \"2019-04-18T00:00:00\", \"2019-04-19T00:00:00\", \"2019-04-20T00:00:00\", \"2019-04-21T00:00:00\", \"2019-04-22T00:00:00\", \"2019-04-23T00:00:00\", \"2019-04-24T00:00:00\", \"2019-04-25T00:00:00\", \"2019-04-26T00:00:00\", \"2019-04-27T00:00:00\", \"2019-04-28T00:00:00\", \"2019-04-29T00:00:00\", \"2019-04-30T00:00:00\", \"2019-05-01T00:00:00\", \"2019-05-02T00:00:00\", \"2019-05-03T00:00:00\", \"2019-05-04T00:00:00\", \"2019-05-06T00:00:00\", \"2019-05-07T00:00:00\", \"2019-05-08T00:00:00\", \"2019-05-09T00:00:00\", \"2019-05-10T00:00:00\", \"2019-05-11T00:00:00\", \"2019-05-12T00:00:00\", \"2019-05-13T00:00:00\", \"2019-05-14T00:00:00\", \"2019-05-15T00:00:00\", \"2019-05-16T00:00:00\", \"2019-05-17T00:00:00\", \"2019-05-18T00:00:00\", \"2019-05-19T00:00:00\", \"2019-05-20T00:00:00\", \"2019-05-21T00:00:00\", \"2019-05-22T00:00:00\", \"2019-05-23T00:00:00\", \"2019-05-24T00:00:00\", \"2019-05-25T00:00:00\", \"2019-05-26T00:00:00\", \"2019-05-27T00:00:00\", \"2019-05-28T00:00:00\", \"2019-05-29T00:00:00\", \"2019-05-30T00:00:00\", \"2019-05-31T00:00:00\", \"2019-06-02T00:00:00\", \"2019-06-03T00:00:00\", \"2019-06-04T00:00:00\", \"2019-06-05T00:00:00\", \"2019-06-06T00:00:00\", \"2019-06-07T00:00:00\", \"2019-06-08T00:00:00\", \"2019-06-10T00:00:00\", \"2019-06-12T00:00:00\", \"2019-06-13T00:00:00\", \"2019-06-14T00:00:00\", \"2019-06-15T00:00:00\", \"2019-06-16T00:00:00\", \"2019-06-17T00:00:00\", \"2019-06-18T00:00:00\", \"2019-06-19T00:00:00\", \"2019-06-20T00:00:00\", \"2019-06-21T00:00:00\", \"2019-06-22T00:00:00\", \"2019-06-23T00:00:00\", \"2019-06-24T00:00:00\", \"2019-06-25T00:00:00\", \"2019-06-26T00:00:00\", \"2019-06-27T00:00:00\", \"2019-06-28T00:00:00\", \"2019-06-30T00:00:00\", \"2019-07-01T00:00:00\", \"2019-07-02T00:00:00\", \"2019-07-03T00:00:00\", \"2019-07-04T00:00:00\", \"2019-07-05T00:00:00\", \"2019-07-06T00:00:00\", \"2019-07-07T00:00:00\", \"2019-07-08T00:00:00\", \"2019-07-09T00:00:00\", \"2019-07-10T00:00:00\", \"2019-07-11T00:00:00\", \"2019-07-12T00:00:00\", \"2019-07-13T00:00:00\", \"2019-07-14T00:00:00\", \"2019-07-15T00:00:00\", \"2019-07-16T00:00:00\", \"2019-07-17T00:00:00\", \"2019-07-18T00:00:00\", \"2019-07-19T00:00:00\", \"2019-07-21T00:00:00\", \"2019-07-22T00:00:00\", \"2019-07-23T00:00:00\", \"2019-07-24T00:00:00\", \"2019-07-25T00:00:00\", \"2019-07-26T00:00:00\", \"2019-07-29T00:00:00\", \"2019-07-30T00:00:00\", \"2019-07-31T00:00:00\", \"2019-08-01T00:00:00\", \"2019-08-02T00:00:00\", \"2019-08-04T00:00:00\", \"2019-08-05T00:00:00\", \"2019-08-06T00:00:00\", \"2019-08-07T00:00:00\", \"2019-08-08T00:00:00\", \"2019-08-09T00:00:00\", \"2019-08-10T00:00:00\", \"2019-08-11T00:00:00\", \"2019-08-12T00:00:00\", \"2019-08-13T00:00:00\", \"2019-08-14T00:00:00\", \"2019-08-15T00:00:00\", \"2019-08-16T00:00:00\", \"2019-08-17T00:00:00\", \"2019-08-19T00:00:00\", \"2019-08-20T00:00:00\", \"2019-08-21T00:00:00\", \"2019-08-22T00:00:00\", \"2019-08-23T00:00:00\", \"2019-08-25T00:00:00\", \"2019-08-26T00:00:00\", \"2019-08-27T00:00:00\", \"2019-08-28T00:00:00\", \"2019-08-29T00:00:00\", \"2019-08-30T00:00:00\", \"2019-08-31T00:00:00\", \"2019-09-01T00:00:00\", \"2019-09-02T00:00:00\", \"2019-09-03T00:00:00\", \"2019-09-04T00:00:00\", \"2019-09-05T00:00:00\", \"2019-09-06T00:00:00\", \"2019-09-07T00:00:00\", \"2019-09-08T00:00:00\", \"2019-09-09T00:00:00\", \"2019-09-10T00:00:00\", \"2019-09-11T00:00:00\", \"2019-09-12T00:00:00\", \"2019-09-13T00:00:00\", \"2019-09-14T00:00:00\", \"2019-09-15T00:00:00\", \"2019-09-16T00:00:00\", \"2019-09-17T00:00:00\", \"2019-09-18T00:00:00\", \"2019-09-19T00:00:00\", \"2019-09-20T00:00:00\", \"2019-09-21T00:00:00\", \"2019-09-22T00:00:00\", \"2019-09-23T00:00:00\", \"2019-09-24T00:00:00\", \"2019-09-25T00:00:00\", \"2019-09-26T00:00:00\", \"2019-09-27T00:00:00\", \"2019-09-28T00:00:00\", \"2019-09-30T00:00:00\", \"2019-10-01T00:00:00\", \"2019-10-02T00:00:00\", \"2019-10-03T00:00:00\", \"2019-10-04T00:00:00\", \"2019-10-05T00:00:00\", \"2019-10-06T00:00:00\", \"2019-10-07T00:00:00\", \"2019-10-08T00:00:00\", \"2019-10-09T00:00:00\", \"2019-10-10T00:00:00\", \"2019-10-11T00:00:00\", \"2019-10-12T00:00:00\", \"2019-10-13T00:00:00\", \"2019-10-14T00:00:00\", \"2019-10-15T00:00:00\", \"2019-10-16T00:00:00\", \"2019-10-17T00:00:00\", \"2019-10-18T00:00:00\", \"2019-10-19T00:00:00\", \"2019-10-20T00:00:00\", \"2019-10-21T00:00:00\", \"2019-10-22T00:00:00\", \"2019-10-23T00:00:00\", \"2019-10-24T00:00:00\", \"2019-10-25T00:00:00\", \"2019-10-27T00:00:00\", \"2019-10-28T00:00:00\", \"2019-10-29T00:00:00\", \"2019-10-30T00:00:00\", \"2019-10-31T00:00:00\", \"2019-11-01T00:00:00\", \"2019-11-02T00:00:00\", \"2019-11-03T00:00:00\", \"2019-11-04T00:00:00\", \"2019-11-05T00:00:00\", \"2019-11-06T00:00:00\", \"2019-11-07T00:00:00\", \"2019-11-08T00:00:00\", \"2019-11-09T00:00:00\", \"2019-11-10T00:00:00\", \"2019-11-11T00:00:00\", \"2019-11-12T00:00:00\", \"2019-11-13T00:00:00\", \"2019-11-14T00:00:00\", \"2019-11-15T00:00:00\", \"2019-11-16T00:00:00\", \"2019-11-17T00:00:00\", \"2019-11-18T00:00:00\", \"2019-11-19T00:00:00\", \"2019-11-20T00:00:00\", \"2019-11-21T00:00:00\", \"2019-11-22T00:00:00\", \"2019-11-24T00:00:00\", \"2019-11-25T00:00:00\", \"2019-11-26T00:00:00\", \"2019-11-27T00:00:00\", \"2019-11-28T00:00:00\", \"2019-11-29T00:00:00\", \"2019-11-30T00:00:00\", \"2019-12-01T00:00:00\", \"2019-12-02T00:00:00\", \"2019-12-03T00:00:00\", \"2019-12-04T00:00:00\", \"2019-12-05T00:00:00\", \"2019-12-06T00:00:00\", \"2019-12-07T00:00:00\", \"2019-12-08T00:00:00\", \"2019-12-09T00:00:00\", \"2019-12-10T00:00:00\", \"2019-12-11T00:00:00\", \"2019-12-12T00:00:00\", \"2019-12-13T00:00:00\", \"2019-12-14T00:00:00\", \"2019-12-15T00:00:00\", \"2019-12-16T00:00:00\", \"2019-12-17T00:00:00\", \"2019-12-18T00:00:00\", \"2019-12-19T00:00:00\", \"2019-12-20T00:00:00\", \"2019-12-21T00:00:00\", \"2019-12-22T00:00:00\", \"2019-12-23T00:00:00\", \"2019-12-24T00:00:00\", \"2019-12-25T00:00:00\", \"2019-12-26T00:00:00\", \"2019-12-27T00:00:00\", \"2019-12-28T00:00:00\", \"2019-12-30T00:00:00\", \"2019-12-31T00:00:00\", \"2020-01-01T00:00:00\", \"2020-01-02T00:00:00\", \"2020-01-03T00:00:00\", \"2020-01-04T00:00:00\", \"2020-01-05T00:00:00\", \"2020-01-06T00:00:00\", \"2020-01-07T00:00:00\", \"2020-01-08T00:00:00\", \"2020-01-09T00:00:00\", \"2020-01-10T00:00:00\", \"2020-01-12T00:00:00\", \"2020-01-13T00:00:00\", \"2020-01-14T00:00:00\", \"2020-01-15T00:00:00\", \"2020-01-16T00:00:00\", \"2020-01-17T00:00:00\", \"2020-01-18T00:00:00\", \"2020-01-20T00:00:00\", \"2020-01-21T00:00:00\", \"2020-01-22T00:00:00\", \"2020-01-23T00:00:00\", \"2020-01-24T00:00:00\", \"2020-01-25T00:00:00\", \"2020-01-26T00:00:00\", \"2020-01-27T00:00:00\", \"2020-01-28T00:00:00\", \"2020-01-29T00:00:00\", \"2020-01-30T00:00:00\", \"2020-01-31T00:00:00\", \"2020-02-01T00:00:00\", \"2020-02-02T00:00:00\", \"2020-02-03T00:00:00\", \"2020-02-04T00:00:00\", \"2020-02-05T00:00:00\", \"2020-02-06T00:00:00\", \"2020-02-07T00:00:00\", \"2020-02-08T00:00:00\", \"2020-02-09T00:00:00\", \"2020-02-10T00:00:00\", \"2020-02-11T00:00:00\", \"2020-02-12T00:00:00\", \"2020-02-13T00:00:00\", \"2020-02-14T00:00:00\", \"2020-02-15T00:00:00\", \"2020-02-16T00:00:00\", \"2020-02-17T00:00:00\", \"2020-02-18T00:00:00\", \"2020-02-19T00:00:00\", \"2020-02-20T00:00:00\", \"2020-02-21T00:00:00\", \"2020-02-22T00:00:00\", \"2020-02-23T00:00:00\", \"2020-02-24T00:00:00\", \"2020-02-25T00:00:00\", \"2020-02-26T00:00:00\", \"2020-02-27T00:00:00\", \"2020-02-28T00:00:00\", \"2020-02-29T00:00:00\", \"2020-03-01T00:00:00\", \"2020-03-02T00:00:00\", \"2020-03-03T00:00:00\", \"2020-03-04T00:00:00\", \"2020-03-05T00:00:00\", \"2020-03-06T00:00:00\", \"2020-03-07T00:00:00\", \"2020-03-09T00:00:00\", \"2020-03-10T00:00:00\", \"2020-03-11T00:00:00\", \"2020-03-12T00:00:00\", \"2020-03-13T00:00:00\", \"2020-03-14T00:00:00\", \"2020-03-15T00:00:00\", \"2020-03-16T00:00:00\", \"2020-03-17T00:00:00\", \"2020-03-18T00:00:00\", \"2020-03-19T00:00:00\", \"2020-03-20T00:00:00\", \"2020-03-21T00:00:00\", \"2020-03-22T00:00:00\", \"2020-03-23T00:00:00\", \"2020-03-24T00:00:00\", \"2020-03-25T00:00:00\", \"2020-03-26T00:00:00\", \"2020-03-27T00:00:00\", \"2020-03-28T00:00:00\", \"2020-03-29T00:00:00\", \"2020-03-30T00:00:00\", \"2020-03-31T00:00:00\", \"2020-04-02T00:00:00\", \"2020-04-03T00:00:00\", \"2020-04-04T00:00:00\", \"2020-04-05T00:00:00\", \"2020-04-06T00:00:00\", \"2020-04-07T00:00:00\", \"2020-04-08T00:00:00\", \"2020-04-09T00:00:00\", \"2020-04-10T00:00:00\", \"2020-04-11T00:00:00\", \"2020-04-12T00:00:00\", \"2020-04-13T00:00:00\", \"2020-04-14T00:00:00\", \"2020-04-15T00:00:00\", \"2020-04-16T00:00:00\", \"2020-04-17T00:00:00\", \"2020-04-18T00:00:00\", \"2020-04-19T00:00:00\", \"2020-04-20T00:00:00\", \"2020-04-21T00:00:00\", \"2020-04-22T00:00:00\", \"2020-04-23T00:00:00\", \"2020-04-24T00:00:00\", \"2020-04-25T00:00:00\", \"2020-04-26T00:00:00\", \"2020-04-27T00:00:00\", \"2020-04-28T00:00:00\", \"2020-04-29T00:00:00\", \"2020-04-30T00:00:00\", \"2020-05-01T00:00:00\", \"2020-05-02T00:00:00\", \"2020-05-04T00:00:00\", \"2020-05-05T00:00:00\", \"2020-05-06T00:00:00\", \"2020-05-07T00:00:00\", \"2020-05-08T00:00:00\", \"2020-05-09T00:00:00\", \"2020-05-10T00:00:00\", \"2020-05-11T00:00:00\", \"2020-05-12T00:00:00\", \"2020-05-13T00:00:00\", \"2020-05-14T00:00:00\", \"2020-05-15T00:00:00\", \"2020-05-16T00:00:00\", \"2020-05-17T00:00:00\", \"2020-05-18T00:00:00\", \"2020-05-19T00:00:00\", \"2020-05-20T00:00:00\", \"2020-05-21T00:00:00\", \"2020-05-22T00:00:00\", \"2020-05-23T00:00:00\", \"2020-05-24T00:00:00\", \"2020-05-25T00:00:00\", \"2020-05-26T00:00:00\", \"2020-05-27T00:00:00\", \"2020-05-28T00:00:00\", \"2020-05-29T00:00:00\", \"2020-05-30T00:00:00\", \"2020-05-31T00:00:00\", \"2020-06-01T00:00:00\", \"2020-06-02T00:00:00\", \"2020-06-03T00:00:00\", \"2020-06-04T00:00:00\", \"2020-06-05T00:00:00\", \"2020-06-06T00:00:00\", \"2020-06-07T00:00:00\", \"2020-06-08T00:00:00\", \"2020-06-09T00:00:00\", \"2020-06-10T00:00:00\", \"2020-06-11T00:00:00\", \"2020-06-12T00:00:00\", \"2020-06-13T00:00:00\", \"2020-06-14T00:00:00\", \"2020-06-15T00:00:00\", \"2020-06-16T00:00:00\", \"2020-06-17T00:00:00\", \"2020-06-18T00:00:00\", \"2020-06-19T00:00:00\", \"2020-06-20T00:00:00\", \"2020-06-21T00:00:00\", \"2020-06-22T00:00:00\", \"2020-06-23T00:00:00\", \"2020-06-24T00:00:00\", \"2020-06-25T00:00:00\", \"2020-06-26T00:00:00\", \"2020-06-27T00:00:00\", \"2020-06-28T00:00:00\", \"2020-06-29T00:00:00\", \"2020-06-30T00:00:00\", \"2020-07-01T00:00:00\", \"2020-07-02T00:00:00\", \"2020-07-03T00:00:00\", \"2020-07-04T00:00:00\", \"2020-07-05T00:00:00\", \"2020-07-06T00:00:00\", \"2020-07-07T00:00:00\", \"2020-07-08T00:00:00\", \"2020-07-09T00:00:00\", \"2020-07-10T00:00:00\", \"2020-07-11T00:00:00\", \"2020-07-12T00:00:00\", \"2020-07-13T00:00:00\", \"2020-07-14T00:00:00\", \"2020-07-15T00:00:00\", \"2020-07-16T00:00:00\", \"2020-07-17T00:00:00\", \"2020-07-18T00:00:00\", \"2020-07-19T00:00:00\", \"2020-07-20T00:00:00\", \"2020-07-21T00:00:00\", \"2020-07-22T00:00:00\", \"2020-07-23T00:00:00\", \"2020-07-24T00:00:00\", \"2020-07-25T00:00:00\", \"2020-07-26T00:00:00\", \"2020-07-27T00:00:00\", \"2020-07-28T00:00:00\", \"2020-07-29T00:00:00\", \"2020-07-30T00:00:00\", \"2020-07-31T00:00:00\", \"2020-08-01T00:00:00\", \"2020-08-02T00:00:00\", \"2020-08-03T00:00:00\", \"2020-08-04T00:00:00\", \"2020-08-05T00:00:00\", \"2020-08-06T00:00:00\", \"2020-08-07T00:00:00\", \"2020-08-08T00:00:00\", \"2020-08-09T00:00:00\", \"2020-08-10T00:00:00\", \"2020-08-11T00:00:00\", \"2020-08-12T00:00:00\", \"2020-08-13T00:00:00\", \"2020-08-14T00:00:00\", \"2020-08-15T00:00:00\", \"2020-08-16T00:00:00\", \"2020-08-17T00:00:00\", \"2020-08-18T00:00:00\", \"2020-08-19T00:00:00\", \"2020-08-20T00:00:00\", \"2020-08-21T00:00:00\", \"2020-08-22T00:00:00\", \"2020-08-23T00:00:00\", \"2020-08-24T00:00:00\", \"2020-08-25T00:00:00\", \"2020-08-26T00:00:00\", \"2020-08-27T00:00:00\", \"2020-08-28T00:00:00\", \"2020-08-29T00:00:00\", \"2020-08-30T00:00:00\", \"2020-08-31T00:00:00\", \"2020-09-01T00:00:00\", \"2020-09-02T00:00:00\", \"2020-09-03T00:00:00\", \"2020-09-04T00:00:00\", \"2020-09-05T00:00:00\", \"2020-09-07T00:00:00\", \"2020-09-08T00:00:00\", \"2020-09-09T00:00:00\", \"2020-09-10T00:00:00\", \"2020-09-11T00:00:00\", \"2020-09-12T00:00:00\", \"2020-09-14T00:00:00\", \"2020-09-15T00:00:00\", \"2020-09-16T00:00:00\", \"2020-09-17T00:00:00\", \"2020-09-18T00:00:00\", \"2020-09-19T00:00:00\", \"2020-09-20T00:00:00\", \"2020-09-21T00:00:00\", \"2020-09-22T00:00:00\", \"2020-09-23T00:00:00\", \"2020-09-24T00:00:00\", \"2020-09-25T00:00:00\", \"2020-09-26T00:00:00\", \"2020-09-27T00:00:00\", \"2020-09-28T00:00:00\", \"2020-09-29T00:00:00\", \"2020-09-30T00:00:00\", \"2020-10-01T00:00:00\", \"2020-10-02T00:00:00\", \"2020-10-03T00:00:00\", \"2020-10-04T00:00:00\", \"2020-10-05T00:00:00\", \"2020-10-06T00:00:00\", \"2020-10-07T00:00:00\", \"2020-10-08T00:00:00\", \"2020-10-09T00:00:00\", \"2020-10-10T00:00:00\", \"2020-10-11T00:00:00\", \"2020-10-12T00:00:00\", \"2020-10-13T00:00:00\", \"2020-10-14T00:00:00\", \"2020-10-15T00:00:00\", \"2020-10-16T00:00:00\", \"2020-10-17T00:00:00\", \"2020-10-18T00:00:00\", \"2020-10-19T00:00:00\", \"2020-10-20T00:00:00\", \"2020-10-21T00:00:00\", \"2020-10-22T00:00:00\", \"2020-10-23T00:00:00\", \"2020-10-24T00:00:00\", \"2020-10-25T00:00:00\", \"2020-10-26T00:00:00\", \"2020-10-27T00:00:00\", \"2020-10-28T00:00:00\", \"2020-10-29T00:00:00\", \"2020-10-30T00:00:00\", \"2020-10-31T00:00:00\"], \"xaxis\": \"x\", \"y\": [2.885715222635014, 2.8899934963683336, 2.8942717701016534, 2.898550043834973, 2.902828317568293, 2.9071065913016128, 2.9113848650349325, 2.9156631387682523, 2.919941412501572, 2.924219686234892, 2.9327762337015315, 2.9370545074348513, 2.941332781168171, 2.945611054901491, 2.9498893286347965, 2.9541676023681163, 2.958445876101436, 2.962724149834756, 2.9670024235680756, 2.9712806973013954, 2.9755589710347152, 2.979837244768035, 2.984115518501355, 2.9883937922346746, 2.9926720659679944, 2.996950339701314, 3.001228613434634, 3.0055068871679538, 3.018341708367913, 3.022619982101233, 3.0268982558345527, 3.0311765295678725, 3.035454803301178, 3.039733077034498, 3.0440113507678177, 3.0482896245011375, 3.0525678982344573, 3.056846171967777, 3.061124445701097, 3.0654027194344167, 3.0696809931677365, 3.078237540634376, 3.082515814367696, 3.0867940881010156, 3.0910723618343354, 3.095350635567655, 3.099628909300975, 3.103907183034295, 3.1124637305009344, 3.116742004234254, 3.1252985517008796, 3.1295768254341993, 3.138133372900839, 3.1466899203674785, 3.1509681941007983, 3.155246467834118, 3.159524741567438, 3.1638030153007577, 3.1723595627673973, 3.176637836500717, 3.180916110234037, 3.1851943839673567, 3.1894726577006765, 3.1937509314339962, 3.198029205167316, 3.202307478900636, 3.2065857526339414, 3.210864026367261, 3.215142300100581, 3.219420573833901, 3.2236988475672206, 3.2279771213005404, 3.23225539503386, 3.23653366876718, 3.2408119425004998, 3.2450902162338195, 3.2493684899671393, 3.253646763700459, 3.2622033111670987, 3.2664815849004185, 3.2707598586337383, 3.275038132367058, 3.279316406100378, 3.2835946798336977, 3.2878729535670033, 3.292151227300323, 3.296429501033643, 3.3007077747669626, 3.3049860485002824, 3.3092643222336022, 3.313542595966922, 3.317820869700242, 3.3220991434335616, 3.3263774171668814, 3.330655690900201, 3.339212238366841, 3.3434905121001606, 3.3477687858334804, 3.3520470595668, 3.35632533330012, 3.3606036070334397, 3.3648818807667595, 3.3691601545000793, 3.373438428233385, 3.3777167019667047, 3.3819949757000245, 3.3862732494333443, 3.390551523166664, 3.394829796899984, 3.3991080706333037, 3.411942891833263, 3.416221165566583, 3.4204994392999026, 3.4247777130332224, 3.429055986766542, 3.433334260499862, 3.437612534233182, 3.4418908079665016, 3.4461690816998214, 3.450447355433141, 3.454725629166461, 3.4590039028997666, 3.4632821766330864, 3.467560450366406, 3.471838724099726, 3.4761169978330457, 3.4803952715663655, 3.4846735452996853, 3.488951819033005, 3.493230092766325, 3.4975083664996447, 3.5017866402329645, 3.5060649139662843, 3.510343187699604, 3.514621461432924, 3.5188997351662437, 3.5231780088995635, 3.5274562826328832, 3.531734556366203, 3.536012830099523, 3.5402911038328426, 3.544569377566148, 3.548847651299468, 3.553125925032788, 3.5574041987661076, 3.5616824724994274, 3.565960746232747, 3.570239019966067, 3.5745172936993868, 3.5787955674327065, 3.5830738411660263, 3.587352114899346, 3.591630388632666, 3.5959086623659857, 3.6001869360993055, 3.6044652098326253, 3.608743483565945, 3.613021757299265, 3.6173000310325847, 3.6215783047659045, 3.62585657849921, 3.63013485223253, 3.6344131259658496, 3.6386913996991694, 3.6429696734324892, 3.647247947165809, 3.651526220899129, 3.6558044946324486, 3.6600827683657684, 3.664361042099088, 3.668639315832408, 3.672917589565728, 3.6814741370323674, 3.685752410765687, 3.690030684499007, 3.6943089582323267, 3.6985872319656465, 3.7028655056989663, 3.707143779432286, 3.7114220531655917, 3.7157003268989115, 3.7199786006322313, 3.724256874365551, 3.728535148098871, 3.7328134218321907, 3.7370916955655105, 3.7413699692988303, 3.74564824303215, 3.74992651676547, 3.7542047904987896, 3.7584830642321094, 3.762761337965429, 3.767039611698749, 3.771317885432069, 3.7755961591653886, 3.7798744328987084, 3.784152706632028, 3.788430980365348, 3.7969875278319734, 3.801265801565293, 3.805544075298613, 3.8098223490319327, 3.8141006227652525, 3.8183788964985723, 3.822657170231892, 3.8312137176985317, 3.8397702651651713, 3.844048538898491, 3.848326812631811, 3.8526050863651307, 3.8568833600984505, 3.8611616338317702, 3.86543990756509, 3.86971818129841, 3.8739964550317296, 3.8782747287650494, 3.882553002498355, 3.886831276231675, 3.8911095499649946, 3.8953878236983144, 3.899666097431634, 3.903944371164954, 3.9082226448982738, 3.9167791923649133, 3.921057466098233, 3.925335739831553, 3.9296140135648727, 3.9338922872981925, 3.9381705610315123, 3.942448834764832, 3.946727108498152, 3.9510053822314717, 3.9552836559647915, 3.9595619296981113, 3.963840203431417, 3.9681184771647366, 3.9723967508980564, 3.9766750246313762, 3.980953298364696, 3.985231572098016, 3.9895098458313356, 3.9937881195646554, 3.998066393297975, 4.006622940764615, 4.010901214497935, 4.015179488231254, 4.019457761964574, 4.023736035697894, 4.028014309431214, 4.040849130631173, 4.045127404364493, 4.0494056780977985, 4.053683951831118, 4.057962225564438, 4.066518773031078, 4.0707970467643975, 4.075075320497717, 4.079353594231037, 4.083631867964357, 4.087910141697677, 4.092188415430996, 4.096466689164316, 4.100744962897636, 4.105023236630956, 4.109301510364276, 4.113579784097595, 4.117858057830915, 4.122136331564235, 4.130692879030875, 4.13497115276418, 4.1392494264975, 4.14352770023082, 4.1478059739641395, 4.156362521430779, 4.160640795164099, 4.164919068897419, 4.1691973426307385, 4.173475616364058, 4.177753890097378, 4.182032163830698, 4.186310437564018, 4.1905887112973375, 4.194866985030657, 4.199145258763977, 4.203423532497297, 4.207701806230617, 4.211980079963936, 4.216258353697256, 4.220536627430562, 4.224814901163882, 4.229093174897201, 4.233371448630521, 4.237649722363841, 4.241927996097161, 4.2462062698304806, 4.2504845435638, 4.25476281729712, 4.25904109103044, 4.26331936476376, 4.2675976384970795, 4.271875912230399, 4.276154185963719, 4.280432459697039, 4.284710733430359, 4.2889890071636785, 4.293267280896998, 4.297545554630318, 4.301823828363624, 4.310380375830263, 4.314658649563583, 4.318936923296903, 4.323215197030223, 4.327493470763542, 4.331771744496862, 4.336050018230182, 4.340328291963502, 4.344606565696822, 4.348884839430141, 4.353163113163461, 4.357441386896781, 4.361719660630101, 4.3659979343634205, 4.37027620809674, 4.37455448183006, 4.37883275556338, 4.3831110292967, 4.387389303030005, 4.391667576763325, 4.395945850496645, 4.400224124229965, 4.4045023979632845, 4.408780671696604, 4.413058945429924, 4.417337219163244, 4.425893766629883, 4.430172040363203, 4.434450314096523, 4.438728587829843, 4.443006861563163, 4.447285135296482, 4.451563409029802, 4.455841682763122, 4.460119956496442, 4.464398230229762, 4.468676503963081, 4.472954777696387, 4.477233051429707, 4.4815113251630265, 4.485789598896346, 4.490067872629666, 4.494346146362986, 4.498624420096306, 4.5029026938296255, 4.507180967562945, 4.511459241296265, 4.515737515029585, 4.520015788762905, 4.5242940624962245, 4.528572336229544, 4.532850609962864, 4.537128883696184, 4.545685431162823, 4.549963704896143, 4.554241978629449, 4.558520252362769, 4.562798526096088, 4.567076799829408, 4.571355073562728, 4.575633347296048, 4.5799116210293676, 4.584189894762687, 4.588468168496007, 4.592746442229327, 4.597024715962647, 4.6013029896959665, 4.605581263429286, 4.609859537162606, 4.614137810895926, 4.618416084629246, 4.6226943583625655, 4.626972632095885, 4.631250905829205, 4.635529179562525, 4.63980745329583, 4.64408572702915, 4.64836400076247, 4.65264227449579, 4.65692054822911, 4.661198821962429, 4.665477095695749, 4.669755369429069, 4.674033643162389, 4.678311916895709, 4.682590190629028, 4.686868464362348, 4.691146738095668, 4.6997032855623075, 4.703981559295627, 4.708259833028947, 4.712538106762267, 4.716816380495587, 4.7210946542289065, 4.725372927962212, 4.729651201695532, 4.733929475428852, 4.7382077491621715, 4.742486022895491, 4.746764296628811, 4.755320844095451, 4.75959911782877, 4.76387739156209, 4.76815566529541, 4.77243393902873, 4.77671221276205, 4.780990486495369, 4.789547033962009, 4.793825307695329, 4.798103581428649, 4.802381855161968, 4.806660128895288, 4.810938402628594, 4.8152166763619135, 4.819494950095233, 4.823773223828553, 4.828051497561873, 4.832329771295193, 4.8366080450285125, 4.840886318761832, 4.845164592495152, 4.849442866228472, 4.853721139961792, 4.8579994136951115, 4.862277687428431, 4.866555961161751, 4.870834234895071, 4.875112508628391, 4.87939078236171, 4.88366905609503, 4.88794732982835, 4.892225603561656, 4.896503877294975, 4.900782151028295, 4.905060424761615, 4.909338698494935, 4.9136169722282546, 4.917895245961574, 4.922173519694894, 4.926451793428214, 4.930730067161534, 4.9350083408948535, 4.939286614628173, 4.943564888361493, 4.947843162094813, 4.952121435828133, 4.9563997095614525, 4.960677983294772, 4.964956257028092, 4.969234530761412, 4.973512804494732, 4.977791078228037, 4.982069351961357, 4.986347625694677, 4.990625899427997, 4.999182446894636, 5.003460720627956, 5.007738994361276, 5.012017268094596, 5.016295541827915, 5.020573815561235, 5.024852089294555, 5.029130363027875, 5.0334086367611945, 5.037686910494514, 5.041965184227834, 5.046243457961154, 5.050521731694474, 5.0548000054277935, 5.059078279161113, 5.063356552894419, 5.067634826627739, 5.0719131003610585, 5.076191374094378, 5.080469647827698, 5.084747921561018, 5.089026195294338, 5.093304469027657, 5.101861016494297, 5.106139290227617, 5.110417563960937, 5.114695837694256, 5.118974111427576, 5.123252385160896, 5.127530658894216, 5.131808932627536, 5.136087206360855, 5.140365480094175, 5.144643753827495, 5.1489220275608005, 5.15320030129412, 5.15747857502744, 5.16175684876076, 5.16603512249408, 5.1703133962273995, 5.174591669960719, 5.178869943694039, 5.183148217427359, 5.187426491160679, 5.1917047648939985, 5.195983038627318, 5.200261312360638, 5.204539586093958, 5.208817859827278, 5.213096133560597, 5.217374407293917, 5.221652681027237, 5.225930954760557, 5.230209228493862, 5.238765775960502, 5.243044049693822, 5.2473223234271416, 5.251600597160461, 5.255878870893781, 5.260157144627101, 5.264435418360421, 5.2687136920937405, 5.27299196582706, 5.27727023956038, 5.2815485132937, 5.28582678702702, 5.2901050607603395, 5.294383334493659, 5.298661608226979, 5.302939881960299, 5.307218155693619, 5.3114964294269384, 5.315774703160244, 5.320052976893564, 5.324331250626884, 5.328609524360203, 5.332887798093523, 5.337166071826843, 5.341444345560163, 5.345722619293483, 5.350000893026802, 5.354279166760122, 5.358557440493442, 5.362835714226762, 5.3671139879600815, 5.371392261693401, 5.375670535426721, 5.379948809160041, 5.384227082893361, 5.3885053566266805, 5.39278363036, 5.39706190409332, 5.401340177826626, 5.4056184515599455, 5.409896725293265, 5.414174999026585, 5.418453272759905, 5.422731546493225, 5.427009820226544, 5.431288093959864, 5.435566367693184, 5.439844641426504, 5.444122915159824, 5.448401188893143, 5.452679462626463, 5.456957736359783, 5.461236010093103, 5.465514283826423, 5.469792557559742, 5.474070831293062, 5.478349105026382, 5.482627378759702, 5.486905652493007, 5.491183926226327, 5.495462199959647, 5.499740473692967, 5.5040187474262865, 5.508297021159606, 5.512575294892926, 5.516853568626246, 5.521131842359566, 5.5254101160928855, 5.529688389826205, 5.533966663559525, 5.538244937292845, 5.542523211026165, 5.546801484759484, 5.551079758492804, 5.555358032226124, 5.559636305959444, 5.563914579692764, 5.568192853426069, 5.572471127159389, 5.576749400892709, 5.581027674626029, 5.585305948359348, 5.589584222092668, 5.593862495825988, 5.598140769559308, 5.6024190432926275, 5.606697317025947, 5.610975590759267, 5.615253864492587, 5.619532138225907, 5.6238104119592265, 5.628088685692546, 5.632366959425866, 5.636645233159186, 5.640923506892506, 5.6452017806258254, 5.649480054359145, 5.653758328092451, 5.658036601825771, 5.66231487555909, 5.66659314929241, 5.67087142302573, 5.67514969675905, 5.67942797049237, 5.683706244225689, 5.687984517959009, 5.692262791692329, 5.696541065425649, 5.7008193391589685, 5.705097612892288, 5.709375886625608, 5.713654160358928, 5.717932434092248, 5.7222107078255675, 5.726488981558887, 5.730767255292207, 5.735045529025527, 5.7393238027588325, 5.743602076492152, 5.747880350225472, 5.752158623958792, 5.756436897692112, 5.760715171425431, 5.764993445158751, 5.769271718892071, 5.777828266358711, 5.78210654009203, 5.78638481382535, 5.79066308755867, 5.79494136129199, 5.79921963502531, 5.807776182491949, 5.812054456225269, 5.816332729958589, 5.8206110036919085, 5.824889277425214, 5.829167551158534, 5.833445824891854, 5.8377240986251735, 5.842002372358493, 5.846280646091813, 5.850558919825133, 5.854837193558453, 5.8591154672917725, 5.863393741025092, 5.867672014758412, 5.871950288491732, 5.876228562225052, 5.880506835958371, 5.884785109691691, 5.889063383425011, 5.893341657158331, 5.897619930891651, 5.90189820462497, 5.906176478358276, 5.910454752091596, 5.914733025824916, 5.919011299558235, 5.923289573291555, 5.927567847024875, 5.931846120758195, 5.9361243944915145, 5.940402668224834, 5.944680941958154, 5.948959215691474, 5.953237489424794, 5.9575157631581135, 5.961794036891433, 5.966072310624753, 5.970350584358073, 5.974628858091393, 5.9789071318247125, 5.983185405558032, 5.987463679291352, 5.991741953024658, 5.996020226757977, 6.000298500491297, 6.004576774224617, 6.008855047957937], \"yaxis\": \"y\"}, {\"hovertemplate\": \"Deposit type=Dataverse<br>Date of deposit=%{x}<br>Count of deposits=%{y}<extra></extra>\", \"legendgroup\": \"Dataverse\", \"marker\": {\"color\": \"#EF553B\", \"symbol\": \"circle\"}, \"mode\": \"markers\", \"name\": \"Dataverse\", \"showlegend\": true, \"type\": \"scattergl\", \"x\": [\"2018-11-01T00:00:00\", \"2018-11-02T00:00:00\", \"2018-11-03T00:00:00\", \"2018-11-05T00:00:00\", \"2018-11-06T00:00:00\", \"2018-11-07T00:00:00\", \"2018-11-09T00:00:00\", \"2018-11-10T00:00:00\", \"2018-11-14T00:00:00\", \"2018-11-16T00:00:00\", \"2018-11-18T00:00:00\", \"2018-11-21T00:00:00\", \"2018-11-22T00:00:00\", \"2018-11-24T00:00:00\", \"2018-11-25T00:00:00\", \"2018-11-26T00:00:00\", \"2018-11-27T00:00:00\", \"2018-11-28T00:00:00\", \"2018-11-29T00:00:00\", \"2018-11-30T00:00:00\", \"2018-12-02T00:00:00\", \"2018-12-03T00:00:00\", \"2018-12-05T00:00:00\", \"2018-12-08T00:00:00\", \"2018-12-10T00:00:00\", \"2018-12-11T00:00:00\", \"2018-12-12T00:00:00\", \"2018-12-13T00:00:00\", \"2018-12-14T00:00:00\", \"2018-12-16T00:00:00\", \"2018-12-17T00:00:00\", \"2018-12-18T00:00:00\", \"2018-12-20T00:00:00\", \"2018-12-22T00:00:00\", \"2018-12-24T00:00:00\", \"2018-12-26T00:00:00\", \"2018-12-27T00:00:00\", \"2018-12-28T00:00:00\", \"2018-12-30T00:00:00\", \"2018-12-31T00:00:00\", \"2019-01-02T00:00:00\", \"2019-01-03T00:00:00\", \"2019-01-04T00:00:00\", \"2019-01-06T00:00:00\", \"2019-01-07T00:00:00\", \"2019-01-08T00:00:00\", \"2019-01-09T00:00:00\", \"2019-01-10T00:00:00\", \"2019-01-11T00:00:00\", \"2019-01-12T00:00:00\", \"2019-01-13T00:00:00\", \"2019-01-14T00:00:00\", \"2019-01-15T00:00:00\", \"2019-01-17T00:00:00\", \"2019-01-18T00:00:00\", \"2019-01-20T00:00:00\", \"2019-01-22T00:00:00\", \"2019-01-23T00:00:00\", \"2019-01-24T00:00:00\", \"2019-01-25T00:00:00\", \"2019-01-26T00:00:00\", \"2019-01-27T00:00:00\", \"2019-01-28T00:00:00\", \"2019-01-29T00:00:00\", \"2019-01-31T00:00:00\", \"2019-02-01T00:00:00\", \"2019-02-02T00:00:00\", \"2019-02-04T00:00:00\", \"2019-02-05T00:00:00\", \"2019-02-06T00:00:00\", \"2019-02-07T00:00:00\", \"2019-02-10T00:00:00\", \"2019-02-11T00:00:00\", \"2019-02-13T00:00:00\", \"2019-02-15T00:00:00\", \"2019-02-19T00:00:00\", \"2019-02-20T00:00:00\", \"2019-02-21T00:00:00\", \"2019-02-23T00:00:00\", \"2019-02-24T00:00:00\", \"2019-03-04T00:00:00\", \"2019-03-06T00:00:00\", \"2019-03-07T00:00:00\", \"2019-03-10T00:00:00\", \"2019-03-12T00:00:00\", \"2019-03-13T00:00:00\", \"2019-03-14T00:00:00\", \"2019-03-16T00:00:00\", \"2019-03-17T00:00:00\", \"2019-03-19T00:00:00\", \"2019-03-20T00:00:00\", \"2019-03-21T00:00:00\", \"2019-03-25T00:00:00\", \"2019-03-26T00:00:00\", \"2019-03-27T00:00:00\", \"2019-03-28T00:00:00\", \"2019-03-30T00:00:00\", \"2019-03-31T00:00:00\", \"2019-04-02T00:00:00\", \"2019-04-05T00:00:00\", \"2019-04-08T00:00:00\", \"2019-04-09T00:00:00\", \"2019-04-11T00:00:00\", \"2019-04-12T00:00:00\", \"2019-04-13T00:00:00\", \"2019-04-14T00:00:00\", \"2019-04-15T00:00:00\", \"2019-04-16T00:00:00\", \"2019-04-17T00:00:00\", \"2019-04-18T00:00:00\", \"2019-04-22T00:00:00\", \"2019-04-23T00:00:00\", \"2019-04-24T00:00:00\", \"2019-04-25T00:00:00\", \"2019-04-26T00:00:00\", \"2019-04-27T00:00:00\", \"2019-04-30T00:00:00\", \"2019-05-01T00:00:00\", \"2019-05-02T00:00:00\", \"2019-05-03T00:00:00\", \"2019-05-07T00:00:00\", \"2019-05-09T00:00:00\", \"2019-05-10T00:00:00\", \"2019-05-13T00:00:00\", \"2019-05-14T00:00:00\", \"2019-05-15T00:00:00\", \"2019-05-16T00:00:00\", \"2019-05-17T00:00:00\", \"2019-05-18T00:00:00\", \"2019-05-20T00:00:00\", \"2019-05-23T00:00:00\", \"2019-05-24T00:00:00\", \"2019-05-27T00:00:00\", \"2019-05-28T00:00:00\", \"2019-05-29T00:00:00\", \"2019-06-01T00:00:00\", \"2019-06-02T00:00:00\", \"2019-06-03T00:00:00\", \"2019-06-05T00:00:00\", \"2019-06-07T00:00:00\", \"2019-06-10T00:00:00\", \"2019-06-11T00:00:00\", \"2019-06-13T00:00:00\", \"2019-06-14T00:00:00\", \"2019-06-17T00:00:00\", \"2019-06-19T00:00:00\", \"2019-06-20T00:00:00\", \"2019-06-21T00:00:00\", \"2019-06-22T00:00:00\", \"2019-06-23T00:00:00\", \"2019-06-26T00:00:00\", \"2019-06-27T00:00:00\", \"2019-07-01T00:00:00\", \"2019-07-02T00:00:00\", \"2019-07-03T00:00:00\", \"2019-07-04T00:00:00\", \"2019-07-06T00:00:00\", \"2019-07-07T00:00:00\", \"2019-07-08T00:00:00\", \"2019-07-09T00:00:00\", \"2019-07-10T00:00:00\", \"2019-07-12T00:00:00\", \"2019-07-17T00:00:00\", \"2019-07-22T00:00:00\", \"2019-07-23T00:00:00\", \"2019-07-24T00:00:00\", \"2019-07-28T00:00:00\", \"2019-07-29T00:00:00\", \"2019-07-31T00:00:00\", \"2019-08-01T00:00:00\", \"2019-08-02T00:00:00\", \"2019-08-07T00:00:00\", \"2019-08-09T00:00:00\", \"2019-08-12T00:00:00\", \"2019-08-13T00:00:00\", \"2019-08-14T00:00:00\", \"2019-08-15T00:00:00\", \"2019-08-16T00:00:00\", \"2019-08-20T00:00:00\", \"2019-08-21T00:00:00\", \"2019-08-23T00:00:00\", \"2019-08-24T00:00:00\", \"2019-08-26T00:00:00\", \"2019-08-28T00:00:00\", \"2019-08-29T00:00:00\", \"2019-08-30T00:00:00\", \"2019-09-01T00:00:00\", \"2019-09-02T00:00:00\", \"2019-09-03T00:00:00\", \"2019-09-04T00:00:00\", \"2019-09-06T00:00:00\", \"2019-09-07T00:00:00\", \"2019-09-10T00:00:00\", \"2019-09-11T00:00:00\", \"2019-09-16T00:00:00\", \"2019-09-18T00:00:00\", \"2019-09-19T00:00:00\", \"2019-09-20T00:00:00\", \"2019-09-22T00:00:00\", \"2019-09-23T00:00:00\", \"2019-09-25T00:00:00\", \"2019-09-26T00:00:00\", \"2019-09-27T00:00:00\", \"2019-09-28T00:00:00\", \"2019-09-30T00:00:00\", \"2019-10-01T00:00:00\", \"2019-10-02T00:00:00\", \"2019-10-03T00:00:00\", \"2019-10-04T00:00:00\", \"2019-10-05T00:00:00\", \"2019-10-07T00:00:00\", \"2019-10-08T00:00:00\", \"2019-10-09T00:00:00\", \"2019-10-10T00:00:00\", \"2019-10-11T00:00:00\", \"2019-10-12T00:00:00\", \"2019-10-14T00:00:00\", \"2019-10-15T00:00:00\", \"2019-10-16T00:00:00\", \"2019-10-17T00:00:00\", \"2019-10-18T00:00:00\", \"2019-10-21T00:00:00\", \"2019-10-22T00:00:00\", \"2019-10-23T00:00:00\", \"2019-10-24T00:00:00\", \"2019-10-25T00:00:00\", \"2019-10-30T00:00:00\", \"2019-10-31T00:00:00\", \"2019-11-01T00:00:00\", \"2019-11-02T00:00:00\", \"2019-11-03T00:00:00\", \"2019-11-06T00:00:00\", \"2019-11-07T00:00:00\", \"2019-11-08T00:00:00\", \"2019-11-11T00:00:00\", \"2019-11-12T00:00:00\", \"2019-11-13T00:00:00\", \"2019-11-14T00:00:00\", \"2019-11-18T00:00:00\", \"2019-11-20T00:00:00\", \"2019-11-22T00:00:00\", \"2019-11-25T00:00:00\", \"2019-11-26T00:00:00\", \"2019-11-28T00:00:00\", \"2019-11-29T00:00:00\", \"2019-12-02T00:00:00\", \"2019-12-04T00:00:00\", \"2019-12-05T00:00:00\", \"2019-12-06T00:00:00\", \"2019-12-07T00:00:00\", \"2019-12-08T00:00:00\", \"2019-12-11T00:00:00\", \"2019-12-12T00:00:00\", \"2019-12-13T00:00:00\", \"2019-12-17T00:00:00\", \"2019-12-18T00:00:00\", \"2019-12-19T00:00:00\", \"2019-12-20T00:00:00\", \"2019-12-21T00:00:00\", \"2019-12-22T00:00:00\", \"2019-12-23T00:00:00\", \"2019-12-24T00:00:00\", \"2019-12-26T00:00:00\", \"2019-12-28T00:00:00\", \"2019-12-31T00:00:00\", \"2020-01-04T00:00:00\", \"2020-01-06T00:00:00\", \"2020-01-07T00:00:00\", \"2020-01-08T00:00:00\", \"2020-01-12T00:00:00\", \"2020-01-13T00:00:00\", \"2020-01-14T00:00:00\", \"2020-01-15T00:00:00\", \"2020-01-16T00:00:00\", \"2020-01-17T00:00:00\", \"2020-01-18T00:00:00\", \"2020-01-19T00:00:00\", \"2020-01-21T00:00:00\", \"2020-01-22T00:00:00\", \"2020-01-23T00:00:00\", \"2020-01-24T00:00:00\", \"2020-01-26T00:00:00\", \"2020-01-27T00:00:00\", \"2020-01-28T00:00:00\", \"2020-01-30T00:00:00\", \"2020-01-31T00:00:00\", \"2020-02-01T00:00:00\", \"2020-02-03T00:00:00\", \"2020-02-04T00:00:00\", \"2020-02-05T00:00:00\", \"2020-02-06T00:00:00\", \"2020-02-07T00:00:00\", \"2020-02-09T00:00:00\", \"2020-02-10T00:00:00\", \"2020-02-11T00:00:00\", \"2020-02-12T00:00:00\", \"2020-02-13T00:00:00\", \"2020-02-14T00:00:00\", \"2020-02-15T00:00:00\", \"2020-02-16T00:00:00\", \"2020-02-17T00:00:00\", \"2020-02-19T00:00:00\", \"2020-02-23T00:00:00\", \"2020-02-24T00:00:00\", \"2020-02-25T00:00:00\", \"2020-02-26T00:00:00\", \"2020-03-02T00:00:00\", \"2020-03-03T00:00:00\", \"2020-03-04T00:00:00\", \"2020-03-05T00:00:00\", \"2020-03-06T00:00:00\", \"2020-03-09T00:00:00\", \"2020-03-10T00:00:00\", \"2020-03-11T00:00:00\", \"2020-03-12T00:00:00\", \"2020-03-16T00:00:00\", \"2020-03-17T00:00:00\", \"2020-03-18T00:00:00\", \"2020-03-19T00:00:00\", \"2020-03-20T00:00:00\", \"2020-03-21T00:00:00\", \"2020-03-22T00:00:00\", \"2020-03-23T00:00:00\", \"2020-03-24T00:00:00\", \"2020-03-25T00:00:00\", \"2020-03-26T00:00:00\", \"2020-03-27T00:00:00\", \"2020-03-29T00:00:00\", \"2020-03-30T00:00:00\", \"2020-03-31T00:00:00\", \"2020-04-01T00:00:00\", \"2020-04-02T00:00:00\", \"2020-04-03T00:00:00\", \"2020-04-05T00:00:00\", \"2020-04-07T00:00:00\", \"2020-04-09T00:00:00\", \"2020-04-10T00:00:00\", \"2020-04-11T00:00:00\", \"2020-04-13T00:00:00\", \"2020-04-14T00:00:00\", \"2020-04-15T00:00:00\", \"2020-04-16T00:00:00\", \"2020-04-17T00:00:00\", \"2020-04-18T00:00:00\", \"2020-04-19T00:00:00\", \"2020-04-20T00:00:00\", \"2020-04-21T00:00:00\", \"2020-04-22T00:00:00\", \"2020-04-23T00:00:00\", \"2020-04-24T00:00:00\", \"2020-04-26T00:00:00\", \"2020-04-28T00:00:00\", \"2020-04-29T00:00:00\", \"2020-04-30T00:00:00\", \"2020-05-01T00:00:00\", \"2020-05-02T00:00:00\", \"2020-05-03T00:00:00\", \"2020-05-04T00:00:00\", \"2020-05-05T00:00:00\", \"2020-05-06T00:00:00\", \"2020-05-07T00:00:00\", \"2020-05-08T00:00:00\", \"2020-05-10T00:00:00\", \"2020-05-11T00:00:00\", \"2020-05-13T00:00:00\", \"2020-05-14T00:00:00\", \"2020-05-15T00:00:00\", \"2020-05-16T00:00:00\", \"2020-05-17T00:00:00\", \"2020-05-18T00:00:00\", \"2020-05-19T00:00:00\", \"2020-05-20T00:00:00\", \"2020-05-21T00:00:00\", \"2020-05-22T00:00:00\", \"2020-05-23T00:00:00\", \"2020-05-25T00:00:00\", \"2020-05-26T00:00:00\", \"2020-05-27T00:00:00\", \"2020-05-28T00:00:00\", \"2020-05-29T00:00:00\", \"2020-06-01T00:00:00\", \"2020-06-02T00:00:00\", \"2020-06-03T00:00:00\", \"2020-06-04T00:00:00\", \"2020-06-05T00:00:00\", \"2020-06-06T00:00:00\", \"2020-06-07T00:00:00\", \"2020-06-08T00:00:00\", \"2020-06-09T00:00:00\", \"2020-06-10T00:00:00\", \"2020-06-11T00:00:00\", \"2020-06-12T00:00:00\", \"2020-06-13T00:00:00\", \"2020-06-15T00:00:00\", \"2020-06-16T00:00:00\", \"2020-06-17T00:00:00\", \"2020-06-18T00:00:00\", \"2020-06-19T00:00:00\", \"2020-06-20T00:00:00\", \"2020-06-22T00:00:00\", \"2020-06-23T00:00:00\", \"2020-06-24T00:00:00\", \"2020-06-25T00:00:00\", \"2020-06-26T00:00:00\", \"2020-06-27T00:00:00\", \"2020-06-28T00:00:00\", \"2020-06-29T00:00:00\", \"2020-06-30T00:00:00\", \"2020-07-01T00:00:00\", \"2020-07-02T00:00:00\", \"2020-07-03T00:00:00\", \"2020-07-04T00:00:00\", \"2020-07-05T00:00:00\", \"2020-07-07T00:00:00\", \"2020-07-08T00:00:00\", \"2020-07-09T00:00:00\", \"2020-07-10T00:00:00\", \"2020-07-12T00:00:00\", \"2020-07-13T00:00:00\", \"2020-07-14T00:00:00\", \"2020-07-15T00:00:00\", \"2020-07-16T00:00:00\", \"2020-07-17T00:00:00\", \"2020-07-18T00:00:00\", \"2020-07-20T00:00:00\", \"2020-07-21T00:00:00\", \"2020-07-23T00:00:00\", \"2020-07-24T00:00:00\", \"2020-07-27T00:00:00\", \"2020-07-28T00:00:00\", \"2020-07-29T00:00:00\", \"2020-07-30T00:00:00\", \"2020-07-31T00:00:00\", \"2020-08-01T00:00:00\", \"2020-08-03T00:00:00\", \"2020-08-05T00:00:00\", \"2020-08-06T00:00:00\", \"2020-08-08T00:00:00\", \"2020-08-10T00:00:00\", \"2020-08-11T00:00:00\", \"2020-08-12T00:00:00\", \"2020-08-14T00:00:00\", \"2020-08-15T00:00:00\", \"2020-08-17T00:00:00\", \"2020-08-18T00:00:00\", \"2020-08-20T00:00:00\", \"2020-08-21T00:00:00\", \"2020-08-23T00:00:00\", \"2020-08-24T00:00:00\", \"2020-08-25T00:00:00\", \"2020-08-27T00:00:00\", \"2020-08-28T00:00:00\", \"2020-08-31T00:00:00\", \"2020-09-01T00:00:00\", \"2020-09-02T00:00:00\", \"2020-09-03T00:00:00\", \"2020-09-04T00:00:00\", \"2020-09-06T00:00:00\", \"2020-09-12T00:00:00\", \"2020-09-14T00:00:00\", \"2020-09-15T00:00:00\", \"2020-09-16T00:00:00\", \"2020-09-18T00:00:00\", \"2020-09-19T00:00:00\", \"2020-09-20T00:00:00\", \"2020-09-21T00:00:00\", \"2020-09-24T00:00:00\", \"2020-09-25T00:00:00\", \"2020-09-27T00:00:00\", \"2020-09-28T00:00:00\", \"2020-09-29T00:00:00\", \"2020-09-30T00:00:00\", \"2020-10-01T00:00:00\", \"2020-10-02T00:00:00\", \"2020-10-04T00:00:00\", \"2020-10-05T00:00:00\", \"2020-10-06T00:00:00\", \"2020-10-07T00:00:00\", \"2020-10-08T00:00:00\", \"2020-10-09T00:00:00\", \"2020-10-12T00:00:00\", \"2020-10-13T00:00:00\", \"2020-10-15T00:00:00\", \"2020-10-16T00:00:00\", \"2020-10-17T00:00:00\", \"2020-10-19T00:00:00\", \"2020-10-20T00:00:00\", \"2020-10-21T00:00:00\", \"2020-10-22T00:00:00\", \"2020-10-23T00:00:00\", \"2020-10-25T00:00:00\", \"2020-10-27T00:00:00\", \"2020-10-28T00:00:00\", \"2020-10-29T00:00:00\", \"2020-10-30T00:00:00\", \"2020-10-31T00:00:00\"], \"xaxis\": \"x\", \"y\": [1, 1, 1, 1, 3, 2, 3, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 2, 1, 1, 3, 1, 1, 2, 3, 1, 1, 4, 1, 4, 5, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 3, 3, 5, 1, 3, 3, 2, 1, 2, 3, 5, 1, 1, 1, 1, 3, 2, 4, 2, 3, 2, 2, 1, 2, 2, 3, 2, 3, 1, 3, 1, 2, 1, 2, 2, 1, 3, 3, 3, 1, 2, 1, 2, 1, 1, 2, 2, 1, 2, 1, 4, 1, 1, 1, 2, 2, 1, 4, 2, 2, 1, 1, 1, 3, 2, 1, 1, 1, 3, 1, 1, 1, 2, 2, 1, 2, 4, 1, 1, 1, 2, 2, 1, 1, 1, 4, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 3, 4, 1, 1, 1, 3, 3, 2, 2, 1, 1, 1, 2, 2, 1, 1, 2, 3, 1, 1, 3, 1, 4, 5, 2, 1, 1, 3, 2, 4, 4, 2, 1, 2, 2, 2, 3, 5, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 4, 1, 1, 2, 2, 1, 2, 2, 1, 2, 1, 3, 4, 1, 1, 2, 4, 4, 1, 1, 1, 1, 3, 1, 2, 3, 1, 2, 1, 2, 1, 3, 3, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 3, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 2, 1, 2, 3, 2, 2, 1, 1, 1, 2, 2, 2, 2, 1, 1, 2, 1, 1, 3, 3, 1, 1, 2, 1, 3, 3, 4, 3, 3, 1, 1, 1, 1, 3, 2, 7, 3, 2, 3, 1, 1, 3, 3, 2, 1, 1, 2, 1, 3, 3, 2, 2, 1, 1, 1, 3, 1, 3, 1, 1, 3, 1, 3, 3, 1, 3, 1, 1, 2, 3, 1, 3, 1, 2, 1, 1, 2, 2, 1, 1, 1, 3, 2, 3, 1, 2, 1, 1, 3, 1, 3, 1, 1, 1, 3, 2, 6, 1, 3, 5, 2, 3, 2, 1, 1, 1, 3, 1, 3, 3, 2, 3, 2, 1, 4, 1, 1, 5, 2, 1, 1, 5, 1, 5, 6, 4, 4, 1, 1, 4, 2, 1, 2, 3, 2, 4, 1, 3, 3, 1, 1, 3, 3, 3, 8, 3, 2, 4, 3, 3, 2, 1, 1, 2, 4, 3, 2, 2, 4, 2, 2, 2, 3, 1, 2, 2, 1, 1, 3, 5, 2, 3, 1, 3, 2, 1, 3, 3, 1, 3, 3, 1, 2, 2, 1, 1, 3, 2, 1, 1, 1, 1, 2, 2, 4, 1, 2, 1, 2, 1, 2, 1, 4, 4, 1, 1, 1, 4, 1, 1, 2, 1, 1, 3, 2, 3, 1, 1, 2, 1, 2, 1, 2, 1, 2, 3, 1, 2, 1, 3, 1, 2, 1, 5, 2, 1, 1, 2, 1, 2, 1, 3, 1, 1], \"yaxis\": \"y\"}, {\"hovertemplate\": \"<b>OLS trendline</b><br>count = 6.04706e-09 * deposit_createdate + -7.58843<br>R<sup>2</sup>=0.009897<br><br>Deposit type=Dataverse<br>Date of deposit=%{x}<br>Count of deposits=%{y} <b>(trend)</b><extra></extra>\", \"legendgroup\": \"Dataverse\", \"marker\": {\"color\": \"#EF553B\", \"symbol\": \"circle\"}, \"mode\": \"lines\", \"name\": \"Dataverse\", \"showlegend\": false, \"type\": \"scattergl\", \"x\": [\"2018-11-01T00:00:00\", \"2018-11-02T00:00:00\", \"2018-11-03T00:00:00\", \"2018-11-05T00:00:00\", \"2018-11-06T00:00:00\", \"2018-11-07T00:00:00\", \"2018-11-09T00:00:00\", \"2018-11-10T00:00:00\", \"2018-11-14T00:00:00\", \"2018-11-16T00:00:00\", \"2018-11-18T00:00:00\", \"2018-11-21T00:00:00\", \"2018-11-22T00:00:00\", \"2018-11-24T00:00:00\", \"2018-11-25T00:00:00\", \"2018-11-26T00:00:00\", \"2018-11-27T00:00:00\", \"2018-11-28T00:00:00\", \"2018-11-29T00:00:00\", \"2018-11-30T00:00:00\", \"2018-12-02T00:00:00\", \"2018-12-03T00:00:00\", \"2018-12-05T00:00:00\", \"2018-12-08T00:00:00\", \"2018-12-10T00:00:00\", \"2018-12-11T00:00:00\", \"2018-12-12T00:00:00\", \"2018-12-13T00:00:00\", \"2018-12-14T00:00:00\", \"2018-12-16T00:00:00\", \"2018-12-17T00:00:00\", \"2018-12-18T00:00:00\", \"2018-12-20T00:00:00\", \"2018-12-22T00:00:00\", \"2018-12-24T00:00:00\", \"2018-12-26T00:00:00\", \"2018-12-27T00:00:00\", \"2018-12-28T00:00:00\", \"2018-12-30T00:00:00\", \"2018-12-31T00:00:00\", \"2019-01-02T00:00:00\", \"2019-01-03T00:00:00\", \"2019-01-04T00:00:00\", \"2019-01-06T00:00:00\", \"2019-01-07T00:00:00\", \"2019-01-08T00:00:00\", \"2019-01-09T00:00:00\", \"2019-01-10T00:00:00\", \"2019-01-11T00:00:00\", \"2019-01-12T00:00:00\", \"2019-01-13T00:00:00\", \"2019-01-14T00:00:00\", \"2019-01-15T00:00:00\", \"2019-01-17T00:00:00\", \"2019-01-18T00:00:00\", \"2019-01-20T00:00:00\", \"2019-01-22T00:00:00\", \"2019-01-23T00:00:00\", \"2019-01-24T00:00:00\", \"2019-01-25T00:00:00\", \"2019-01-26T00:00:00\", \"2019-01-27T00:00:00\", \"2019-01-28T00:00:00\", \"2019-01-29T00:00:00\", \"2019-01-31T00:00:00\", \"2019-02-01T00:00:00\", \"2019-02-02T00:00:00\", \"2019-02-04T00:00:00\", \"2019-02-05T00:00:00\", \"2019-02-06T00:00:00\", \"2019-02-07T00:00:00\", \"2019-02-10T00:00:00\", \"2019-02-11T00:00:00\", \"2019-02-13T00:00:00\", \"2019-02-15T00:00:00\", \"2019-02-19T00:00:00\", \"2019-02-20T00:00:00\", \"2019-02-21T00:00:00\", \"2019-02-23T00:00:00\", \"2019-02-24T00:00:00\", \"2019-03-04T00:00:00\", \"2019-03-06T00:00:00\", \"2019-03-07T00:00:00\", \"2019-03-10T00:00:00\", \"2019-03-12T00:00:00\", \"2019-03-13T00:00:00\", \"2019-03-14T00:00:00\", \"2019-03-16T00:00:00\", \"2019-03-17T00:00:00\", \"2019-03-19T00:00:00\", \"2019-03-20T00:00:00\", \"2019-03-21T00:00:00\", \"2019-03-25T00:00:00\", \"2019-03-26T00:00:00\", \"2019-03-27T00:00:00\", \"2019-03-28T00:00:00\", \"2019-03-30T00:00:00\", \"2019-03-31T00:00:00\", \"2019-04-02T00:00:00\", \"2019-04-05T00:00:00\", \"2019-04-08T00:00:00\", \"2019-04-09T00:00:00\", \"2019-04-11T00:00:00\", \"2019-04-12T00:00:00\", \"2019-04-13T00:00:00\", \"2019-04-14T00:00:00\", \"2019-04-15T00:00:00\", \"2019-04-16T00:00:00\", \"2019-04-17T00:00:00\", \"2019-04-18T00:00:00\", \"2019-04-22T00:00:00\", \"2019-04-23T00:00:00\", \"2019-04-24T00:00:00\", \"2019-04-25T00:00:00\", \"2019-04-26T00:00:00\", \"2019-04-27T00:00:00\", \"2019-04-30T00:00:00\", \"2019-05-01T00:00:00\", \"2019-05-02T00:00:00\", \"2019-05-03T00:00:00\", \"2019-05-07T00:00:00\", \"2019-05-09T00:00:00\", \"2019-05-10T00:00:00\", \"2019-05-13T00:00:00\", \"2019-05-14T00:00:00\", \"2019-05-15T00:00:00\", \"2019-05-16T00:00:00\", \"2019-05-17T00:00:00\", \"2019-05-18T00:00:00\", \"2019-05-20T00:00:00\", \"2019-05-23T00:00:00\", \"2019-05-24T00:00:00\", \"2019-05-27T00:00:00\", \"2019-05-28T00:00:00\", \"2019-05-29T00:00:00\", \"2019-06-01T00:00:00\", \"2019-06-02T00:00:00\", \"2019-06-03T00:00:00\", \"2019-06-05T00:00:00\", \"2019-06-07T00:00:00\", \"2019-06-10T00:00:00\", \"2019-06-11T00:00:00\", \"2019-06-13T00:00:00\", \"2019-06-14T00:00:00\", \"2019-06-17T00:00:00\", \"2019-06-19T00:00:00\", \"2019-06-20T00:00:00\", \"2019-06-21T00:00:00\", \"2019-06-22T00:00:00\", \"2019-06-23T00:00:00\", \"2019-06-26T00:00:00\", \"2019-06-27T00:00:00\", \"2019-07-01T00:00:00\", \"2019-07-02T00:00:00\", \"2019-07-03T00:00:00\", \"2019-07-04T00:00:00\", \"2019-07-06T00:00:00\", \"2019-07-07T00:00:00\", \"2019-07-08T00:00:00\", \"2019-07-09T00:00:00\", \"2019-07-10T00:00:00\", \"2019-07-12T00:00:00\", \"2019-07-17T00:00:00\", \"2019-07-22T00:00:00\", \"2019-07-23T00:00:00\", \"2019-07-24T00:00:00\", \"2019-07-28T00:00:00\", \"2019-07-29T00:00:00\", \"2019-07-31T00:00:00\", \"2019-08-01T00:00:00\", \"2019-08-02T00:00:00\", \"2019-08-07T00:00:00\", \"2019-08-09T00:00:00\", \"2019-08-12T00:00:00\", \"2019-08-13T00:00:00\", \"2019-08-14T00:00:00\", \"2019-08-15T00:00:00\", \"2019-08-16T00:00:00\", \"2019-08-20T00:00:00\", \"2019-08-21T00:00:00\", \"2019-08-23T00:00:00\", \"2019-08-24T00:00:00\", \"2019-08-26T00:00:00\", \"2019-08-28T00:00:00\", \"2019-08-29T00:00:00\", \"2019-08-30T00:00:00\", \"2019-09-01T00:00:00\", \"2019-09-02T00:00:00\", \"2019-09-03T00:00:00\", \"2019-09-04T00:00:00\", \"2019-09-06T00:00:00\", \"2019-09-07T00:00:00\", \"2019-09-10T00:00:00\", \"2019-09-11T00:00:00\", \"2019-09-16T00:00:00\", \"2019-09-18T00:00:00\", \"2019-09-19T00:00:00\", \"2019-09-20T00:00:00\", \"2019-09-22T00:00:00\", \"2019-09-23T00:00:00\", \"2019-09-25T00:00:00\", \"2019-09-26T00:00:00\", \"2019-09-27T00:00:00\", \"2019-09-28T00:00:00\", \"2019-09-30T00:00:00\", \"2019-10-01T00:00:00\", \"2019-10-02T00:00:00\", \"2019-10-03T00:00:00\", \"2019-10-04T00:00:00\", \"2019-10-05T00:00:00\", \"2019-10-07T00:00:00\", \"2019-10-08T00:00:00\", \"2019-10-09T00:00:00\", \"2019-10-10T00:00:00\", \"2019-10-11T00:00:00\", \"2019-10-12T00:00:00\", \"2019-10-14T00:00:00\", \"2019-10-15T00:00:00\", \"2019-10-16T00:00:00\", \"2019-10-17T00:00:00\", \"2019-10-18T00:00:00\", \"2019-10-21T00:00:00\", \"2019-10-22T00:00:00\", \"2019-10-23T00:00:00\", \"2019-10-24T00:00:00\", \"2019-10-25T00:00:00\", \"2019-10-30T00:00:00\", \"2019-10-31T00:00:00\", \"2019-11-01T00:00:00\", \"2019-11-02T00:00:00\", \"2019-11-03T00:00:00\", \"2019-11-06T00:00:00\", \"2019-11-07T00:00:00\", \"2019-11-08T00:00:00\", \"2019-11-11T00:00:00\", \"2019-11-12T00:00:00\", \"2019-11-13T00:00:00\", \"2019-11-14T00:00:00\", \"2019-11-18T00:00:00\", \"2019-11-20T00:00:00\", \"2019-11-22T00:00:00\", \"2019-11-25T00:00:00\", \"2019-11-26T00:00:00\", \"2019-11-28T00:00:00\", \"2019-11-29T00:00:00\", \"2019-12-02T00:00:00\", \"2019-12-04T00:00:00\", \"2019-12-05T00:00:00\", \"2019-12-06T00:00:00\", \"2019-12-07T00:00:00\", \"2019-12-08T00:00:00\", \"2019-12-11T00:00:00\", \"2019-12-12T00:00:00\", \"2019-12-13T00:00:00\", \"2019-12-17T00:00:00\", \"2019-12-18T00:00:00\", \"2019-12-19T00:00:00\", \"2019-12-20T00:00:00\", \"2019-12-21T00:00:00\", \"2019-12-22T00:00:00\", \"2019-12-23T00:00:00\", \"2019-12-24T00:00:00\", \"2019-12-26T00:00:00\", \"2019-12-28T00:00:00\", \"2019-12-31T00:00:00\", \"2020-01-04T00:00:00\", \"2020-01-06T00:00:00\", \"2020-01-07T00:00:00\", \"2020-01-08T00:00:00\", \"2020-01-12T00:00:00\", \"2020-01-13T00:00:00\", \"2020-01-14T00:00:00\", \"2020-01-15T00:00:00\", \"2020-01-16T00:00:00\", \"2020-01-17T00:00:00\", \"2020-01-18T00:00:00\", \"2020-01-19T00:00:00\", \"2020-01-21T00:00:00\", \"2020-01-22T00:00:00\", \"2020-01-23T00:00:00\", \"2020-01-24T00:00:00\", \"2020-01-26T00:00:00\", \"2020-01-27T00:00:00\", \"2020-01-28T00:00:00\", \"2020-01-30T00:00:00\", \"2020-01-31T00:00:00\", \"2020-02-01T00:00:00\", \"2020-02-03T00:00:00\", \"2020-02-04T00:00:00\", \"2020-02-05T00:00:00\", \"2020-02-06T00:00:00\", \"2020-02-07T00:00:00\", \"2020-02-09T00:00:00\", \"2020-02-10T00:00:00\", \"2020-02-11T00:00:00\", \"2020-02-12T00:00:00\", \"2020-02-13T00:00:00\", \"2020-02-14T00:00:00\", \"2020-02-15T00:00:00\", \"2020-02-16T00:00:00\", \"2020-02-17T00:00:00\", \"2020-02-19T00:00:00\", \"2020-02-23T00:00:00\", \"2020-02-24T00:00:00\", \"2020-02-25T00:00:00\", \"2020-02-26T00:00:00\", \"2020-03-02T00:00:00\", \"2020-03-03T00:00:00\", \"2020-03-04T00:00:00\", \"2020-03-05T00:00:00\", \"2020-03-06T00:00:00\", \"2020-03-09T00:00:00\", \"2020-03-10T00:00:00\", \"2020-03-11T00:00:00\", \"2020-03-12T00:00:00\", \"2020-03-16T00:00:00\", \"2020-03-17T00:00:00\", \"2020-03-18T00:00:00\", \"2020-03-19T00:00:00\", \"2020-03-20T00:00:00\", \"2020-03-21T00:00:00\", \"2020-03-22T00:00:00\", \"2020-03-23T00:00:00\", \"2020-03-24T00:00:00\", \"2020-03-25T00:00:00\", \"2020-03-26T00:00:00\", \"2020-03-27T00:00:00\", \"2020-03-29T00:00:00\", \"2020-03-30T00:00:00\", \"2020-03-31T00:00:00\", \"2020-04-01T00:00:00\", \"2020-04-02T00:00:00\", \"2020-04-03T00:00:00\", \"2020-04-05T00:00:00\", \"2020-04-07T00:00:00\", \"2020-04-09T00:00:00\", \"2020-04-10T00:00:00\", \"2020-04-11T00:00:00\", \"2020-04-13T00:00:00\", \"2020-04-14T00:00:00\", \"2020-04-15T00:00:00\", \"2020-04-16T00:00:00\", \"2020-04-17T00:00:00\", \"2020-04-18T00:00:00\", \"2020-04-19T00:00:00\", \"2020-04-20T00:00:00\", \"2020-04-21T00:00:00\", \"2020-04-22T00:00:00\", \"2020-04-23T00:00:00\", \"2020-04-24T00:00:00\", \"2020-04-26T00:00:00\", \"2020-04-28T00:00:00\", \"2020-04-29T00:00:00\", \"2020-04-30T00:00:00\", \"2020-05-01T00:00:00\", \"2020-05-02T00:00:00\", \"2020-05-03T00:00:00\", \"2020-05-04T00:00:00\", \"2020-05-05T00:00:00\", \"2020-05-06T00:00:00\", \"2020-05-07T00:00:00\", \"2020-05-08T00:00:00\", \"2020-05-10T00:00:00\", \"2020-05-11T00:00:00\", \"2020-05-13T00:00:00\", \"2020-05-14T00:00:00\", \"2020-05-15T00:00:00\", \"2020-05-16T00:00:00\", \"2020-05-17T00:00:00\", \"2020-05-18T00:00:00\", \"2020-05-19T00:00:00\", \"2020-05-20T00:00:00\", \"2020-05-21T00:00:00\", \"2020-05-22T00:00:00\", \"2020-05-23T00:00:00\", \"2020-05-25T00:00:00\", \"2020-05-26T00:00:00\", \"2020-05-27T00:00:00\", \"2020-05-28T00:00:00\", \"2020-05-29T00:00:00\", \"2020-06-01T00:00:00\", \"2020-06-02T00:00:00\", \"2020-06-03T00:00:00\", \"2020-06-04T00:00:00\", \"2020-06-05T00:00:00\", \"2020-06-06T00:00:00\", \"2020-06-07T00:00:00\", \"2020-06-08T00:00:00\", \"2020-06-09T00:00:00\", \"2020-06-10T00:00:00\", \"2020-06-11T00:00:00\", \"2020-06-12T00:00:00\", \"2020-06-13T00:00:00\", \"2020-06-15T00:00:00\", \"2020-06-16T00:00:00\", \"2020-06-17T00:00:00\", \"2020-06-18T00:00:00\", \"2020-06-19T00:00:00\", \"2020-06-20T00:00:00\", \"2020-06-22T00:00:00\", \"2020-06-23T00:00:00\", \"2020-06-24T00:00:00\", \"2020-06-25T00:00:00\", \"2020-06-26T00:00:00\", \"2020-06-27T00:00:00\", \"2020-06-28T00:00:00\", \"2020-06-29T00:00:00\", \"2020-06-30T00:00:00\", \"2020-07-01T00:00:00\", \"2020-07-02T00:00:00\", \"2020-07-03T00:00:00\", \"2020-07-04T00:00:00\", \"2020-07-05T00:00:00\", \"2020-07-07T00:00:00\", \"2020-07-08T00:00:00\", \"2020-07-09T00:00:00\", \"2020-07-10T00:00:00\", \"2020-07-12T00:00:00\", \"2020-07-13T00:00:00\", \"2020-07-14T00:00:00\", \"2020-07-15T00:00:00\", \"2020-07-16T00:00:00\", \"2020-07-17T00:00:00\", \"2020-07-18T00:00:00\", \"2020-07-20T00:00:00\", \"2020-07-21T00:00:00\", \"2020-07-23T00:00:00\", \"2020-07-24T00:00:00\", \"2020-07-27T00:00:00\", \"2020-07-28T00:00:00\", \"2020-07-29T00:00:00\", \"2020-07-30T00:00:00\", \"2020-07-31T00:00:00\", \"2020-08-01T00:00:00\", \"2020-08-03T00:00:00\", \"2020-08-05T00:00:00\", \"2020-08-06T00:00:00\", \"2020-08-08T00:00:00\", \"2020-08-10T00:00:00\", \"2020-08-11T00:00:00\", \"2020-08-12T00:00:00\", \"2020-08-14T00:00:00\", \"2020-08-15T00:00:00\", \"2020-08-17T00:00:00\", \"2020-08-18T00:00:00\", \"2020-08-20T00:00:00\", \"2020-08-21T00:00:00\", \"2020-08-23T00:00:00\", \"2020-08-24T00:00:00\", \"2020-08-25T00:00:00\", \"2020-08-27T00:00:00\", \"2020-08-28T00:00:00\", \"2020-08-31T00:00:00\", \"2020-09-01T00:00:00\", \"2020-09-02T00:00:00\", \"2020-09-03T00:00:00\", \"2020-09-04T00:00:00\", \"2020-09-06T00:00:00\", \"2020-09-12T00:00:00\", \"2020-09-14T00:00:00\", \"2020-09-15T00:00:00\", \"2020-09-16T00:00:00\", \"2020-09-18T00:00:00\", \"2020-09-19T00:00:00\", \"2020-09-20T00:00:00\", \"2020-09-21T00:00:00\", \"2020-09-24T00:00:00\", \"2020-09-25T00:00:00\", \"2020-09-27T00:00:00\", \"2020-09-28T00:00:00\", \"2020-09-29T00:00:00\", \"2020-09-30T00:00:00\", \"2020-10-01T00:00:00\", \"2020-10-02T00:00:00\", \"2020-10-04T00:00:00\", \"2020-10-05T00:00:00\", \"2020-10-06T00:00:00\", \"2020-10-07T00:00:00\", \"2020-10-08T00:00:00\", \"2020-10-09T00:00:00\", \"2020-10-12T00:00:00\", \"2020-10-13T00:00:00\", \"2020-10-15T00:00:00\", \"2020-10-16T00:00:00\", \"2020-10-17T00:00:00\", \"2020-10-19T00:00:00\", \"2020-10-20T00:00:00\", \"2020-10-21T00:00:00\", \"2020-10-22T00:00:00\", \"2020-10-23T00:00:00\", \"2020-10-25T00:00:00\", \"2020-10-27T00:00:00\", \"2020-10-28T00:00:00\", \"2020-10-29T00:00:00\", \"2020-10-30T00:00:00\", \"2020-10-31T00:00:00\"], \"xaxis\": \"x\", \"y\": [1.73027173067341, 1.7307941964757951, 1.7313166622781804, 1.7323615938829526, 1.7328840596853379, 1.7334065254877231, 1.7344514570924936, 1.7349739228948788, 1.7370637861044198, 1.7381087177091903, 1.7391536493139608, 1.7407210467211165, 1.7412435125235017, 1.7422884441282722, 1.7428109099306575, 1.7433333757330427, 1.743855841535428, 1.7443783073378132, 1.7449007731401984, 1.7454232389425837, 1.7464681705473541, 1.7469906363497394, 1.7480355679545099, 1.7496029653616656, 1.750647896966436, 1.7511703627688213, 1.7516928285712066, 1.7522152943735918, 1.752737760175977, 1.7537826917807475, 1.7543051575831328, 1.754827623385518, 1.7558725549902885, 1.756917486595059, 1.7579624181998295, 1.7590073498046, 1.7595298156069852, 1.7600522814093704, 1.761097213014141, 1.761619678816528, 1.7626646104212984, 1.7631870762236836, 1.7637095420260689, 1.7647544736308394, 1.7652769394332246, 1.7657994052356099, 1.766321871037995, 1.7668443368403803, 1.7673668026427656, 1.7678892684451508, 1.768411734247536, 1.7689342000499213, 1.7694566658523065, 1.770501597457077, 1.7710240632594623, 1.7720689948642327, 1.7731139264690032, 1.7736363922713885, 1.7741588580737737, 1.774681323876159, 1.7752037896785442, 1.7757262554809294, 1.7762487212833147, 1.7767711870857, 1.7778161186904704, 1.7783385844928556, 1.7788610502952409, 1.7799059819000114, 1.7804284477023966, 1.7809509135047819, 1.781473379307167, 1.7830407767143228, 1.783563242516708, 1.7846081741214785, 1.785653105726249, 1.78774296893579, 1.7882654347381752, 1.7887879005405605, 1.789832832145331, 1.7903552979477162, 1.7945350243668, 1.7955799559715704, 1.7961024217739556, 1.7976698191811114, 1.7987147507858818, 1.799237216588267, 1.7997596823906523, 1.8008046139954228, 1.801327079797808, 1.8023720114025785, 1.8028944772049638, 1.803416943007349, 1.80550680621689, 1.8060292720192752, 1.8065517378216605, 1.8070742036240457, 1.8081191352288162, 1.8086416010312014, 1.809686532635972, 1.8112539300431276, 1.8128213274502833, 1.8133437932526686, 1.814388724857439, 1.8149111906598243, 1.8154336564622096, 1.8159561222645948, 1.81647858806698, 1.8170010538693653, 1.8175235196717505, 1.8180459854741358, 1.8201358486836767, 1.8206583144860637, 1.821180780288449, 1.8217032460908342, 1.8222257118932195, 1.8227481776956047, 1.8243155751027604, 1.8248380409051457, 1.825360506707531, 1.8258829725099162, 1.8279728357194571, 1.8290177673242276, 1.8295402331266128, 1.8311076305337686, 1.8316300963361538, 1.832152562138539, 1.8326750279409243, 1.8331974937433095, 1.8337199595456948, 1.8347648911504653, 1.836332288557621, 1.8368547543600062, 1.838422151767162, 1.8389446175695472, 1.8394670833719324, 1.8410344807790882, 1.8415569465814734, 1.8420794123838586, 1.8431243439886291, 1.8441692755933996, 1.8457366730005553, 1.8462591388029406, 1.847304070407711, 1.8478265362100963, 1.849393933617252, 1.8504388652220243, 1.8509613310244095, 1.8514837968267948, 1.85200626262918, 1.8525287284315652, 1.854096125838721, 1.8546185916411062, 1.8567084548506472, 1.8572309206530324, 1.8577533864554177, 1.858275852257803, 1.8593207838625734, 1.8598432496649586, 1.8603657154673439, 1.860888181269729, 1.8614106470721143, 1.8624555786768848, 1.865067907688811, 1.8676802367007372, 1.8682027025031225, 1.8687251683055077, 1.8708150315150487, 1.871337497317434, 1.8723824289222044, 1.8729048947245897, 1.873427360526975, 1.876039689538901, 1.8770846211436716, 1.8786520185508273, 1.8791744843532125, 1.8796969501555996, 1.8802194159579848, 1.88074188176037, 1.882831744969911, 1.8833542107722963, 1.8843991423770667, 1.884921608179452, 1.8859665397842225, 1.887011471388993, 1.8875339371913782, 1.8880564029937634, 1.889101334598534, 1.8896238004009192, 1.8901462662033044, 1.8906687320056896, 1.8917136636104601, 1.8922361294128454, 1.893803526820001, 1.8943259926223863, 1.8969383216343125, 1.897983253239083, 1.8985057190414683, 1.8990281848438535, 1.900073116448624, 1.9005955822510092, 1.9016405138557797, 1.902162979658165, 1.9026854454605502, 1.9032079112629354, 1.904252842867706, 1.9047753086700911, 1.9052977744724764, 1.9058202402748616, 1.9063427060772469, 1.9068651718796321, 1.9079101034844026, 1.9084325692867878, 1.9089550350891749, 1.90947750089156, 1.9099999666939453, 1.9105224324963306, 1.911567364101101, 1.9120898299034863, 1.9126122957058715, 1.9131347615082568, 1.913657227310642, 1.9152246247177978, 1.915747090520183, 1.9162695563225682, 1.9167920221249535, 1.9173144879273387, 1.919926816939265, 1.9204492827416502, 1.9209717485440354, 1.9214942143464206, 1.922016680148806, 1.9235840775559616, 1.9241065433583469, 1.924629009160732, 1.9261964065678878, 1.926718872370273, 1.9272413381726583, 1.9277638039750435, 1.9298536671845845, 1.930898598789355, 1.9319435303941255, 1.9335109278012812, 1.9340333936036664, 1.935078325208437, 1.9356007910108222, 1.9371681884179779, 1.9382131200227484, 1.9387355858251354, 1.9392580516275206, 1.9397805174299059, 1.9403029832322911, 1.9418703806394468, 1.942392846441832, 1.9429153122442173, 1.9450051754537583, 1.9455276412561435, 1.9460501070585288, 1.946572572860914, 1.9470950386632992, 1.9476175044656845, 1.9481399702680697, 1.948662436070455, 1.9497073676752255, 1.950752299279996, 1.9523196966871517, 1.9544095598966926, 1.955454491501463, 1.9559769573038484, 1.9564994231062336, 1.9585892863157746, 1.9591117521181598, 1.959634217920545, 1.9601566837229303, 1.9606791495253155, 1.9612016153277008, 1.961724081130086, 1.9622465469324712, 1.9632914785372417, 1.963813944339627, 1.9643364101420122, 1.9648588759443975, 1.965903807549168, 1.9664262733515532, 1.9669487391539384, 1.9679936707587107, 1.968516136561096, 1.9690386023634812, 1.9700835339682516, 1.9706059997706369, 1.9711284655730221, 1.9716509313754074, 1.9721733971777926, 1.973218328782563, 1.9737407945849483, 1.9742632603873336, 1.9747857261897188, 1.975308191992104, 1.9758306577944893, 1.9763531235968745, 1.9768755893992598, 1.977398055201645, 1.9784429868064155, 1.9805328500159565, 1.9810553158183417, 1.981577781620727, 1.9821002474231122, 1.9847125764350384, 1.9852350422374236, 1.9857575080398089, 1.9862799738421941, 1.9868024396445794, 1.988369837051735, 1.9888923028541203, 1.9894147686565056, 1.9899372344588908, 1.9920270976684318, 1.992549563470817, 1.9930720292732023, 1.9935944950755875, 1.9941169608779727, 1.994639426680358, 1.9951618924827432, 1.9956843582851285, 1.9962068240875137, 1.996729289889899, 1.9972517556922842, 1.9977742214946712, 1.9988191530994417, 1.999341618901827, 1.9998640847042122, 2.0003865505065974, 2.0009090163089827, 2.001431482111368, 2.0024764137161384, 2.003521345320909, 2.0045662769256793, 2.0050887427280646, 2.00561120853045, 2.0066561401352203, 2.0071786059376056, 2.007701071739991, 2.008223537542376, 2.0087460033447613, 2.0092684691471465, 2.0097909349495318, 2.010313400751917, 2.0108358665543022, 2.0113583323566875, 2.0118807981590727, 2.012403263961458, 2.0134481955662284, 2.014493127170999, 2.015015592973384, 2.0155380587757694, 2.0160605245781547, 2.01658299038054, 2.017105456182925, 2.0176279219853104, 2.0181503877876956, 2.018672853590081, 2.019195319392466, 2.0197177851948513, 2.020762716799622, 2.021285182602007, 2.0223301142067776, 2.022852580009163, 2.023375045811548, 2.0238975116139333, 2.0244199774163185, 2.0249424432187038, 2.025464909021089, 2.0259873748234742, 2.0265098406258595, 2.0270323064282447, 2.0275547722306317, 2.0285997038354022, 2.0291221696377875, 2.0296446354401727, 2.030167101242558, 2.030689567044943, 2.032256964452099, 2.032779430254484, 2.0333018960568694, 2.0338243618592546, 2.03434682766164, 2.034869293464025, 2.0353917592664104, 2.0359142250687956, 2.036436690871181, 2.036959156673566, 2.0374816224759513, 2.0380040882783366, 2.038526554080722, 2.0395714856854923, 2.0400939514878775, 2.0406164172902628, 2.041138883092648, 2.0416613488950333, 2.0421838146974185, 2.043228746302189, 2.043751212104574, 2.0442736779069595, 2.0447961437093447, 2.04531860951173, 2.045841075314115, 2.0463635411165004, 2.0468860069188857, 2.047408472721271, 2.047930938523656, 2.0484534043260414, 2.0489758701284266, 2.049498335930812, 2.050020801733197, 2.0510657333379676, 2.051588199140353, 2.052110664942738, 2.0526331307451233, 2.053678062349894, 2.054200528152279, 2.0547229939546643, 2.0552454597570495, 2.0557679255594348, 2.05629039136182, 2.056812857164207, 2.0578577887689775, 2.0583802545713628, 2.0594251861761332, 2.0599476519785185, 2.061515049385674, 2.0620375151880594, 2.0625599809904447, 2.06308244679283, 2.063604912595215, 2.0641273783976004, 2.065172310002371, 2.0662172416071414, 2.0667397074095266, 2.067784639014297, 2.0688295706190676, 2.069352036421453, 2.069874502223838, 2.0709194338286085, 2.071441899630994, 2.0724868312357643, 2.0730092970381495, 2.07405422864292, 2.0745766944453052, 2.0756216260500757, 2.076144091852461, 2.076666557654846, 2.0777114892596167, 2.078233955062002, 2.0798013524691576, 2.080323818271543, 2.080846284073928, 2.0813687498763134, 2.0818912156786986, 2.082936147283469, 2.0860709420977805, 2.087115873702553, 2.087638339504938, 2.0881608053073233, 2.0892057369120938, 2.089728202714479, 2.0902506685168643, 2.0907731343192495, 2.092340531726405, 2.0928629975287905, 2.093907929133561, 2.094430394935946, 2.0949528607383314, 2.0954753265407167, 2.095997792343102, 2.096520258145487, 2.0975651897502576, 2.098087655552643, 2.098610121355028, 2.0991325871574134, 2.0996550529597986, 2.100177518762184, 2.1017449161693396, 2.102267381971725, 2.1033123135764953, 2.1038347793788805, 2.1043572451812658, 2.1054021767860363, 2.1059246425884215, 2.1064471083908067, 2.106969574193192, 2.107492039995577, 2.1085369716003477, 2.109581903205118, 2.1101043690075034, 2.1106268348098887, 2.111149300612274, 2.111671766414659], \"yaxis\": \"y\"}],                        {\"legend\": {\"title\": {\"text\": \"Deposit type\"}, \"tracegroupgap\": 0}, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"Count of datasets and dataverses deposited in HDV Root each day\"}, \"xaxis\": {\"anchor\": \"y\", \"domain\": [0.0, 1.0], \"nticks\": 50, \"title\": {\"text\": \"Date of deposit\"}}, \"yaxis\": {\"anchor\": \"x\", \"domain\": [0.0, 1.0], \"title\": {\"text\": \"Count of deposits\"}}},                        {\"responsive\": true}                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('f3f59812-442b-4ee6-bb14-891b31c9b2fc');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })                };                });            </script>        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def get_plot_1(df):\n",
    "    plot = px.scatter(df,\n",
    "                 x='deposit_createdate', \n",
    "                 y='count',\n",
    "                 color='deposit_type',\n",
    "                 title='Count of datasets and dataverses deposited in HDV Root each day',\n",
    "                 trendline='ols',\n",
    "                 labels={'deposit_type': 'Deposit type',\n",
    "                      'deposit_createdate': 'Date of deposit',\n",
    "                      'count': 'Count of deposits'}\n",
    "             )\n",
    "    return plot\n",
    "\n",
    "get_plot_1(dailyCountbyDType).update_xaxes(nticks=50).show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "Over the last two years:\n",
    "- The number of datasets deposited in Root each day is ~6\n",
    "- The number of dataverses deposited in Root each day is ~2\n",
    "\n",
    "Again note that these are dataverses and datasets that have been published and were not deleted at the time the data was collected (November 7, 2020). So they exclude any datasets and dataverses that were unpublished at the time and any datasets and dataverses that were published but were deleted.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true
   },
   "source": [
    "## How many accounts have created just one dataset in Root? How many have created more than one dataset in Root?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "hidden": true
   },
   "outputs": [],
   "source": [
    "# Create new dataframe showing the count of accounts that have created \n",
    "\n",
    "countOfDatasetsbyAccount = (\n",
    "    publishedDepositsDF.query(\n",
    "        'deposit_parent_dataverse == \"1\"\\\n",
    "        & deposit_type == \"Dataset\"\\\n",
    "        & deposit_createdate > \"2018-10-31\"\\\n",
    "        & deposit_createdate < \"2020-11-01\"')\n",
    "    \n",
    "    # Retain only these columns\n",
    "    [['user_account_id_of_deposit']]\n",
    "\n",
    "    # Group by the subsetted columns to get a count of datasets deposited by each account\n",
    "    .value_counts(subset=['user_account_id_of_deposit'])\n",
    "    .to_frame('dataset_count')\n",
    "    \n",
    "    # Group by the subsetted columns to get a count of datasets deposited by each account\n",
    "    .value_counts(subset=['dataset_count'])\n",
    "    .to_frame('count_of_accounts')\n",
    "\n",
    "    .sort_values(by=['dataset_count'], inplace=False, ascending=True)\n",
    "\n",
    "    .reset_index(drop=False, inplace=False)\n",
    "    \n",
    "    # Reorder columns\n",
    "    [['count_of_accounts','dataset_count']]\n",
    "    \n",
    "    # Set index to \"count of accounts\" column\n",
    "    .set_index('count_of_accounts')\n",
    ")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(15, 1)\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>dataset_count</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>count_of_accounts</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1684</th>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>270</th>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>94</th>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>16</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>39</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                   dataset_count\n",
       "count_of_accounts               \n",
       "1684                           1\n",
       "270                            2\n",
       "94                             3\n",
       "37                             4\n",
       "16                             5\n",
       "14                             6\n",
       "13                             7\n",
       "3                              8\n",
       "3                              9\n",
       "3                             10\n",
       "2                             12\n",
       "1                             13\n",
       "2                             15\n",
       "1                             16\n",
       "1                             39"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "print(countOfDatasetsbyAccount.shape)\n",
    "countOfDatasetsbyAccount.head(15)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hidden": true
   },
   "source": [
    "In the past two years, 3,112 datasets have been created in Root by 2,144 accounts:\n",
    "- 1,684 accounts created only 1 dataset in Root. In other words, those 1,684 accounts created a little more than half of the 3,112 datasets created in Root\n",
    "- 460 accounts created 2 or more datasets in Root. They created the other 1,428 datasets"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## How many accounts have created datasets in Root? How many of those accounts have already created a dataset that was published?"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Create and check filtered dataframe"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "First, let's get the number of accounts that have created datasets in Root, and how many datasets they created in Root."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Create new dataframe listing the accounts that have deposited datasets in Root\n",
    "# and the number of datasets they've deposited\n",
    "\n",
    "countOfDatasetsbyAccount = (\n",
    "    publishedDepositsDF.query(\n",
    "        'deposit_parent_dataverse == \"1\"\\\n",
    "        & deposit_type == \"Dataset\"')\n",
    "    \n",
    "    # Retain only these columns\n",
    "    [['user_account_id_of_deposit']]\n",
    "\n",
    "    .value_counts(subset=['user_account_id_of_deposit'])\n",
    "    .rename_axis('user_account_id_of_deposit')\n",
    "    .reset_index(name='count_of_datasets')\n",
    ")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(3307, 2)\n"
     ]
    }
   ],
   "source": [
    "print(countOfDatasetsbyAccount.shape)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "hide_input": true
   },
   "source": [
    "3307 accounts have been used to create datasets in Root.\n",
    "\n",
    "Here are the five accounts that have created the most datasets in Root and how many datasets they created in Root:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_account_id_of_deposit</th>\n",
       "      <th>count_of_datasets</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1403</td>\n",
       "      <td>91</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1598</td>\n",
       "      <td>40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>15395</td>\n",
       "      <td>37</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>11970</td>\n",
       "      <td>26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>21963</td>\n",
       "      <td>19</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   user_account_id_of_deposit  count_of_datasets\n",
       "0                        1403                 91\n",
       "1                        1598                 40\n",
       "2                       15395                 37\n",
       "3                       11970                 26\n",
       "4                       21963                 19"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "countOfDatasetsbyAccount.sort_values(by=['count_of_datasets'], inplace=True, ascending=False)\n",
    "countOfDatasetsbyAccount.head(5)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "How many of those accounts have created more than one dataset in Root?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(791, 2)\n"
     ]
    }
   ],
   "source": [
    "print(countOfDatasetsbyAccount.query('count_of_datasets > 1').shape)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "791 accounts have created more than one dataset in Root."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now, for each day, we need to figure out:\n",
    "- Which dataset deposits were made by first time depositors\n",
    "- Which dataset deposits were made by returning depositors\n",
    "\n",
    "We want to exclude deposits made by Harvard Dataverse staff, so we'll create a list containing the IDs of superusers and use that list to exclude deposits by those accounts."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Create list of superuser account IDs (retrieved from the repository's database)\n",
    "superAccounts = [1, 10, 12, 21, 8954, 10512, 14481, 14805, 14818, 14833, 15350, 18322, 20668, 22891, 23048, 23647, 28370, 28650]\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "dailyDatasetCountByAccountAndDataverse = (\n",
    "    publishedDepositsDF\n",
    "    .query(\n",
    "        # Remove dataverse deposits and deposits made by superuser accounts\n",
    "        'deposit_type != \"Dataverse\"\\\n",
    "        & user_account_id_of_deposit not in @superAccounts')\n",
    "\n",
    "#     Retain only these columns\n",
    "    [['user_account_id_of_deposit', 'deposit_createdate', 'deposit_parent_dataverse']]\n",
    "\n",
    "    # Group by the subsetted columns to get a count of datasets deposited by each account\n",
    "    .value_counts(subset=['deposit_createdate', 'user_account_id_of_deposit', 'deposit_parent_dataverse'])\n",
    "    .to_frame('dataset_count')\n",
    "    \n",
    "    .sort_values(by=['deposit_createdate'], inplace=False, ascending=True)\n",
    "    .reset_index(drop=False, inplace=False)\n",
    ")\n",
    "\n",
    "# Add column with cumalative count of each account's deposit in each dataverse (including Root)\n",
    "dailyDatasetCountByAccountAndDataverse['dataset_cumalative_count'] = dailyDatasetCountByAccountAndDataverse.groupby(\n",
    "    'user_account_id_of_deposit').cumsum()\n",
    "\n",
    "# Add column to indicate if depositor had deposited a dataset in a previous day\n",
    "dailyDatasetCountByAccountAndDataverse['depositor_status'] = np.where(\n",
    "    dailyDatasetCountByAccountAndDataverse['dataset_cumalative_count']\n",
    "    != dailyDatasetCountByAccountAndDataverse['dataset_count'],\n",
    "        'returningDepositor', 'firstTimeDepositor')\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>deposit_createdate</th>\n",
       "      <th>user_account_id_of_deposit</th>\n",
       "      <th>deposit_parent_dataverse</th>\n",
       "      <th>dataset_count</th>\n",
       "      <th>dataset_cumalative_count</th>\n",
       "      <th>depositor_status</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2007-04-19</td>\n",
       "      <td>26</td>\n",
       "      <td>20</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2007-04-27</td>\n",
       "      <td>26</td>\n",
       "      <td>20</td>\n",
       "      <td>1</td>\n",
       "      <td>4</td>\n",
       "      <td>returningDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2007-06-07</td>\n",
       "      <td>59</td>\n",
       "      <td>31</td>\n",
       "      <td>14</td>\n",
       "      <td>14</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2007-06-08</td>\n",
       "      <td>59</td>\n",
       "      <td>1037</td>\n",
       "      <td>13</td>\n",
       "      <td>27</td>\n",
       "      <td>returningDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2007-06-12</td>\n",
       "      <td>59</td>\n",
       "      <td>25</td>\n",
       "      <td>3</td>\n",
       "      <td>30</td>\n",
       "      <td>returningDepositor</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  deposit_createdate  user_account_id_of_deposit deposit_parent_dataverse  \\\n",
       "0         2007-04-19                          26                       20   \n",
       "1         2007-04-27                          26                       20   \n",
       "2         2007-06-07                          59                       31   \n",
       "3         2007-06-08                          59                     1037   \n",
       "4         2007-06-12                          59                       25   \n",
       "\n",
       "   dataset_count  dataset_cumalative_count    depositor_status  \n",
       "0              3                         3  firstTimeDepositor  \n",
       "1              1                         4  returningDepositor  \n",
       "2             14                        14  firstTimeDepositor  \n",
       "3             13                        27  returningDepositor  \n",
       "4              3                        30  returningDepositor  "
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dailyDatasetCountByAccountAndDataverse.head(5)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now that we can tell which deposits were made by first time depositors and which were made by returning depositors, lets filter the data to deposits made in the Root dataverse within the last two years."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Filter dailyCountByAccountAndDataverse to get only deposits in Root dataverse\n",
    "dailyDatasetCountByAccountAndDataverse_inRoot = (\n",
    "    dailyDatasetCountByAccountAndDataverse.query(\n",
    "        'deposit_parent_dataverse == \"1\"\\\n",
    "        & deposit_createdate > \"2018-10-31\"\\\n",
    "        & deposit_createdate < \"2020-11-01\"')\n",
    "    \n",
    "    .drop(columns=['deposit_parent_dataverse'])\n",
    ")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>deposit_createdate</th>\n",
       "      <th>user_account_id_of_deposit</th>\n",
       "      <th>dataset_count</th>\n",
       "      <th>dataset_cumalative_count</th>\n",
       "      <th>depositor_status</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>11600</th>\n",
       "      <td>2018-11-01</td>\n",
       "      <td>10838</td>\n",
       "      <td>1</td>\n",
       "      <td>6</td>\n",
       "      <td>returningDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11606</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>25390</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11607</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>25387</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11610</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>25396</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11612</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>3737</td>\n",
       "      <td>1</td>\n",
       "      <td>9</td>\n",
       "      <td>returningDepositor</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      deposit_createdate  user_account_id_of_deposit  dataset_count  \\\n",
       "11600         2018-11-01                       10838              1   \n",
       "11606         2018-11-02                       25390              1   \n",
       "11607         2018-11-02                       25387              1   \n",
       "11610         2018-11-02                       25396              1   \n",
       "11612         2018-11-02                        3737              1   \n",
       "\n",
       "       dataset_cumalative_count    depositor_status  \n",
       "11600                         6  returningDepositor  \n",
       "11606                         1  firstTimeDepositor  \n",
       "11607                         1  firstTimeDepositor  \n",
       "11610                         1  firstTimeDepositor  \n",
       "11612                         9  returningDepositor  "
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dailyDatasetCountByAccountAndDataverse_inRoot.head(5)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally, for each day of the last two years let's find out:\n",
    "- How many first-time depositors deposited one or more datasets in Root?\n",
    "- How many returning depositors deposited one or more datasets in Root?\n",
    "\n",
    "First we'll transform the data, then visualize it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>deposit_createdate</th>\n",
       "      <th>depositor_status</th>\n",
       "      <th>count_of_accounts</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2018-11-01</td>\n",
       "      <td>returningDepositor</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>returningDepositor</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2018-11-02</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2018-11-03</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2018-11-04</td>\n",
       "      <td>firstTimeDepositor</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  deposit_createdate    depositor_status  count_of_accounts\n",
       "0         2018-11-01  returningDepositor                  1\n",
       "1         2018-11-02  returningDepositor                  2\n",
       "2         2018-11-02  firstTimeDepositor                  4\n",
       "3         2018-11-03  firstTimeDepositor                  1\n",
       "4         2018-11-04  firstTimeDepositor                  2"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Get count of accounts by deposit date and depositor_status\n",
    "dailyCountOfAccountsByDepositorStatus_inRoot = (\n",
    "\n",
    "    # Retain only these columns\n",
    "    dailyDatasetCountByAccountAndDataverse_inRoot[[\n",
    "        'deposit_createdate', 'user_account_id_of_deposit', 'depositor_status']]\n",
    "\n",
    "    # Group date and depositor_status columns to get count of unique values in user_account_id_of_deposit column\n",
    "    .value_counts(subset=['deposit_createdate', 'depositor_status'])\n",
    "    .to_frame('count_of_accounts')\n",
    "    \n",
    "    .sort_values(by=['deposit_createdate'], inplace=False, ascending=True)\n",
    "    \n",
    "    .reset_index(drop=False, inplace=False)\n",
    ")\n",
    "\n",
    "dailyCountOfAccountsByDepositorStatus_inRoot.head(5)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Graph how many first time and returning depositors created datasets in Root each day over last two years"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "alignmentgroup": "True",
         "hovertemplate": "Depositor status=returningDepositor<br>Date of deposit=%{x}<br>Count of depositors=%{y}<extra></extra>",
         "legendgroup": "returningDepositor",
         "marker": {
          "color": "#636efa"
         },
         "name": "returningDepositor",
         "offsetgroup": "returningDepositor",
         "orientation": "v",
         "showlegend": true,
         "textposition": "auto",
         "type": "bar",
         "x": [
          "2018-11-01T00:00:00",
          "2018-11-02T00:00:00",
          "2018-11-05T00:00:00",
          "2018-11-06T00:00:00",
          "2018-11-07T00:00:00",
          "2018-11-08T00:00:00",
          "2018-11-14T00:00:00",
          "2018-11-15T00:00:00",
          "2018-11-17T00:00:00",
          "2018-11-20T00:00:00",
          "2018-11-23T00:00:00",
          "2018-11-25T00:00:00",
          "2018-11-26T00:00:00",
          "2018-11-28T00:00:00",
          "2018-11-29T00:00:00",
          "2018-12-02T00:00:00",
          "2018-12-03T00:00:00",
          "2018-12-04T00:00:00",
          "2018-12-05T00:00:00",
          "2018-12-07T00:00:00",
          "2018-12-08T00:00:00",
          "2018-12-09T00:00:00",
          "2018-12-11T00:00:00",
          "2018-12-13T00:00:00",
          "2018-12-14T00:00:00",
          "2018-12-17T00:00:00",
          "2018-12-18T00:00:00",
          "2018-12-19T00:00:00",
          "2018-12-20T00:00:00",
          "2018-12-21T00:00:00",
          "2018-12-27T00:00:00",
          "2019-01-02T00:00:00",
          "2019-01-04T00:00:00",
          "2019-01-05T00:00:00",
          "2019-01-07T00:00:00",
          "2019-01-09T00:00:00",
          "2019-01-11T00:00:00",
          "2019-01-13T00:00:00",
          "2019-01-14T00:00:00",
          "2019-01-15T00:00:00",
          "2019-01-18T00:00:00",
          "2019-01-19T00:00:00",
          "2019-01-21T00:00:00",
          "2019-01-22T00:00:00",
          "2019-01-24T00:00:00",
          "2019-01-25T00:00:00",
          "2019-01-28T00:00:00",
          "2019-02-01T00:00:00",
          "2019-02-02T00:00:00",
          "2019-02-03T00:00:00",
          "2019-02-04T00:00:00",
          "2019-02-06T00:00:00",
          "2019-02-07T00:00:00",
          "2019-02-10T00:00:00",
          "2019-02-11T00:00:00",
          "2019-02-13T00:00:00",
          "2019-02-16T00:00:00",
          "2019-02-18T00:00:00",
          "2019-02-19T00:00:00",
          "2019-02-21T00:00:00",
          "2019-02-22T00:00:00",
          "2019-02-23T00:00:00",
          "2019-02-24T00:00:00",
          "2019-02-25T00:00:00",
          "2019-02-26T00:00:00",
          "2019-02-27T00:00:00",
          "2019-03-01T00:00:00",
          "2019-03-04T00:00:00",
          "2019-03-05T00:00:00",
          "2019-03-06T00:00:00",
          "2019-03-07T00:00:00",
          "2019-03-08T00:00:00",
          "2019-03-09T00:00:00",
          "2019-03-10T00:00:00",
          "2019-03-11T00:00:00",
          "2019-03-12T00:00:00",
          "2019-03-13T00:00:00",
          "2019-03-14T00:00:00",
          "2019-03-16T00:00:00",
          "2019-03-17T00:00:00",
          "2019-03-18T00:00:00",
          "2019-03-19T00:00:00",
          "2019-03-20T00:00:00",
          "2019-03-23T00:00:00",
          "2019-03-24T00:00:00",
          "2019-03-25T00:00:00",
          "2019-03-26T00:00:00",
          "2019-03-27T00:00:00",
          "2019-04-01T00:00:00",
          "2019-04-02T00:00:00",
          "2019-04-04T00:00:00",
          "2019-04-05T00:00:00",
          "2019-04-06T00:00:00",
          "2019-04-07T00:00:00",
          "2019-04-08T00:00:00",
          "2019-04-09T00:00:00",
          "2019-04-10T00:00:00",
          "2019-04-11T00:00:00",
          "2019-04-12T00:00:00",
          "2019-04-13T00:00:00",
          "2019-04-14T00:00:00",
          "2019-04-15T00:00:00",
          "2019-04-16T00:00:00",
          "2019-04-17T00:00:00",
          "2019-04-18T00:00:00",
          "2019-04-19T00:00:00",
          "2019-04-20T00:00:00",
          "2019-04-21T00:00:00",
          "2019-04-22T00:00:00",
          "2019-04-24T00:00:00",
          "2019-04-26T00:00:00",
          "2019-04-27T00:00:00",
          "2019-04-28T00:00:00",
          "2019-04-29T00:00:00",
          "2019-04-30T00:00:00",
          "2019-05-02T00:00:00",
          "2019-05-03T00:00:00",
          "2019-05-04T00:00:00",
          "2019-05-06T00:00:00",
          "2019-05-08T00:00:00",
          "2019-05-09T00:00:00",
          "2019-05-10T00:00:00",
          "2019-05-12T00:00:00",
          "2019-05-14T00:00:00",
          "2019-05-15T00:00:00",
          "2019-05-16T00:00:00",
          "2019-05-17T00:00:00",
          "2019-05-18T00:00:00",
          "2019-05-19T00:00:00",
          "2019-05-21T00:00:00",
          "2019-05-22T00:00:00",
          "2019-05-24T00:00:00",
          "2019-05-25T00:00:00",
          "2019-05-26T00:00:00",
          "2019-05-27T00:00:00",
          "2019-05-28T00:00:00",
          "2019-05-29T00:00:00",
          "2019-05-30T00:00:00",
          "2019-05-31T00:00:00",
          "2019-06-03T00:00:00",
          "2019-06-05T00:00:00",
          "2019-06-06T00:00:00",
          "2019-06-10T00:00:00",
          "2019-06-12T00:00:00",
          "2019-06-13T00:00:00",
          "2019-06-16T00:00:00",
          "2019-06-17T00:00:00",
          "2019-06-19T00:00:00",
          "2019-06-21T00:00:00",
          "2019-06-24T00:00:00",
          "2019-06-25T00:00:00",
          "2019-06-26T00:00:00",
          "2019-06-27T00:00:00",
          "2019-06-28T00:00:00",
          "2019-06-30T00:00:00",
          "2019-07-01T00:00:00",
          "2019-07-02T00:00:00",
          "2019-07-03T00:00:00",
          "2019-07-06T00:00:00",
          "2019-07-07T00:00:00",
          "2019-07-08T00:00:00",
          "2019-07-09T00:00:00",
          "2019-07-10T00:00:00",
          "2019-07-11T00:00:00",
          "2019-07-13T00:00:00",
          "2019-07-14T00:00:00",
          "2019-07-15T00:00:00",
          "2019-07-16T00:00:00",
          "2019-07-17T00:00:00",
          "2019-07-18T00:00:00",
          "2019-07-19T00:00:00",
          "2019-07-22T00:00:00",
          "2019-07-23T00:00:00",
          "2019-07-24T00:00:00",
          "2019-07-25T00:00:00",
          "2019-07-26T00:00:00",
          "2019-07-29T00:00:00",
          "2019-07-30T00:00:00",
          "2019-07-31T00:00:00",
          "2019-08-01T00:00:00",
          "2019-08-02T00:00:00",
          "2019-08-05T00:00:00",
          "2019-08-06T00:00:00",
          "2019-08-07T00:00:00",
          "2019-08-08T00:00:00",
          "2019-08-09T00:00:00",
          "2019-08-10T00:00:00",
          "2019-08-11T00:00:00",
          "2019-08-13T00:00:00",
          "2019-08-15T00:00:00",
          "2019-08-16T00:00:00",
          "2019-08-17T00:00:00",
          "2019-08-19T00:00:00",
          "2019-08-20T00:00:00",
          "2019-08-21T00:00:00",
          "2019-08-22T00:00:00",
          "2019-08-23T00:00:00",
          "2019-08-25T00:00:00",
          "2019-08-26T00:00:00",
          "2019-08-27T00:00:00",
          "2019-08-29T00:00:00",
          "2019-08-30T00:00:00",
          "2019-08-31T00:00:00",
          "2019-09-02T00:00:00",
          "2019-09-03T00:00:00",
          "2019-09-04T00:00:00",
          "2019-09-05T00:00:00",
          "2019-09-07T00:00:00",
          "2019-09-09T00:00:00",
          "2019-09-11T00:00:00",
          "2019-09-12T00:00:00",
          "2019-09-13T00:00:00",
          "2019-09-14T00:00:00",
          "2019-09-15T00:00:00",
          "2019-09-17T00:00:00",
          "2019-09-18T00:00:00",
          "2019-09-20T00:00:00",
          "2019-09-21T00:00:00",
          "2019-09-23T00:00:00",
          "2019-09-24T00:00:00",
          "2019-09-25T00:00:00",
          "2019-09-26T00:00:00",
          "2019-09-27T00:00:00",
          "2019-09-30T00:00:00",
          "2019-10-01T00:00:00",
          "2019-10-02T00:00:00",
          "2019-10-03T00:00:00",
          "2019-10-07T00:00:00",
          "2019-10-08T00:00:00",
          "2019-10-09T00:00:00",
          "2019-10-11T00:00:00",
          "2019-10-12T00:00:00",
          "2019-10-13T00:00:00",
          "2019-10-14T00:00:00",
          "2019-10-15T00:00:00",
          "2019-10-16T00:00:00",
          "2019-10-17T00:00:00",
          "2019-10-18T00:00:00",
          "2019-10-19T00:00:00",
          "2019-10-20T00:00:00",
          "2019-10-21T00:00:00",
          "2019-10-22T00:00:00",
          "2019-10-24T00:00:00",
          "2019-10-25T00:00:00",
          "2019-10-28T00:00:00",
          "2019-10-29T00:00:00",
          "2019-10-30T00:00:00",
          "2019-10-31T00:00:00",
          "2019-11-01T00:00:00",
          "2019-11-02T00:00:00",
          "2019-11-04T00:00:00",
          "2019-11-06T00:00:00",
          "2019-11-08T00:00:00",
          "2019-11-09T00:00:00",
          "2019-11-10T00:00:00",
          "2019-11-11T00:00:00",
          "2019-11-12T00:00:00",
          "2019-11-13T00:00:00",
          "2019-11-14T00:00:00",
          "2019-11-15T00:00:00",
          "2019-11-17T00:00:00",
          "2019-11-18T00:00:00",
          "2019-11-19T00:00:00",
          "2019-11-22T00:00:00",
          "2019-11-24T00:00:00",
          "2019-11-25T00:00:00",
          "2019-11-26T00:00:00",
          "2019-11-27T00:00:00",
          "2019-11-28T00:00:00",
          "2019-11-30T00:00:00",
          "2019-12-02T00:00:00",
          "2019-12-03T00:00:00",
          "2019-12-05T00:00:00",
          "2019-12-06T00:00:00",
          "2019-12-09T00:00:00",
          "2019-12-10T00:00:00",
          "2019-12-11T00:00:00",
          "2019-12-12T00:00:00",
          "2019-12-13T00:00:00",
          "2019-12-14T00:00:00",
          "2019-12-15T00:00:00",
          "2019-12-16T00:00:00",
          "2019-12-17T00:00:00",
          "2019-12-18T00:00:00",
          "2019-12-19T00:00:00",
          "2019-12-20T00:00:00",
          "2019-12-21T00:00:00",
          "2019-12-22T00:00:00",
          "2019-12-24T00:00:00",
          "2019-12-26T00:00:00",
          "2019-12-27T00:00:00",
          "2019-12-30T00:00:00",
          "2019-12-31T00:00:00",
          "2020-01-02T00:00:00",
          "2020-01-03T00:00:00",
          "2020-01-04T00:00:00",
          "2020-01-05T00:00:00",
          "2020-01-06T00:00:00",
          "2020-01-07T00:00:00",
          "2020-01-08T00:00:00",
          "2020-01-09T00:00:00",
          "2020-01-10T00:00:00",
          "2020-01-12T00:00:00",
          "2020-01-13T00:00:00",
          "2020-01-14T00:00:00",
          "2020-01-15T00:00:00",
          "2020-01-16T00:00:00",
          "2020-01-17T00:00:00",
          "2020-01-18T00:00:00",
          "2020-01-20T00:00:00",
          "2020-01-21T00:00:00",
          "2020-01-22T00:00:00",
          "2020-01-23T00:00:00",
          "2020-01-24T00:00:00",
          "2020-01-26T00:00:00",
          "2020-01-27T00:00:00",
          "2020-01-28T00:00:00",
          "2020-01-29T00:00:00",
          "2020-01-30T00:00:00",
          "2020-01-31T00:00:00",
          "2020-02-01T00:00:00",
          "2020-02-03T00:00:00",
          "2020-02-05T00:00:00",
          "2020-02-07T00:00:00",
          "2020-02-10T00:00:00",
          "2020-02-11T00:00:00",
          "2020-02-12T00:00:00",
          "2020-02-13T00:00:00",
          "2020-02-14T00:00:00",
          "2020-02-15T00:00:00",
          "2020-02-16T00:00:00",
          "2020-02-17T00:00:00",
          "2020-02-18T00:00:00",
          "2020-02-19T00:00:00",
          "2020-02-20T00:00:00",
          "2020-02-21T00:00:00",
          "2020-02-22T00:00:00",
          "2020-02-23T00:00:00",
          "2020-02-24T00:00:00",
          "2020-02-25T00:00:00",
          "2020-02-27T00:00:00",
          "2020-02-28T00:00:00",
          "2020-02-29T00:00:00",
          "2020-03-01T00:00:00",
          "2020-03-02T00:00:00",
          "2020-03-03T00:00:00",
          "2020-03-04T00:00:00",
          "2020-03-05T00:00:00",
          "2020-03-06T00:00:00",
          "2020-03-07T00:00:00",
          "2020-03-09T00:00:00",
          "2020-03-10T00:00:00",
          "2020-03-11T00:00:00",
          "2020-03-13T00:00:00",
          "2020-03-14T00:00:00",
          "2020-03-15T00:00:00",
          "2020-03-17T00:00:00",
          "2020-03-18T00:00:00",
          "2020-03-19T00:00:00",
          "2020-03-20T00:00:00",
          "2020-03-21T00:00:00",
          "2020-03-22T00:00:00",
          "2020-03-23T00:00:00",
          "2020-03-25T00:00:00",
          "2020-03-26T00:00:00",
          "2020-03-28T00:00:00",
          "2020-03-29T00:00:00",
          "2020-03-30T00:00:00",
          "2020-03-31T00:00:00",
          "2020-04-02T00:00:00",
          "2020-04-03T00:00:00",
          "2020-04-04T00:00:00",
          "2020-04-05T00:00:00",
          "2020-04-06T00:00:00",
          "2020-04-07T00:00:00",
          "2020-04-08T00:00:00",
          "2020-04-09T00:00:00",
          "2020-04-10T00:00:00",
          "2020-04-11T00:00:00",
          "2020-04-12T00:00:00",
          "2020-04-13T00:00:00",
          "2020-04-14T00:00:00",
          "2020-04-15T00:00:00",
          "2020-04-16T00:00:00",
          "2020-04-17T00:00:00",
          "2020-04-18T00:00:00",
          "2020-04-19T00:00:00",
          "2020-04-20T00:00:00",
          "2020-04-21T00:00:00",
          "2020-04-22T00:00:00",
          "2020-04-23T00:00:00",
          "2020-04-24T00:00:00",
          "2020-04-25T00:00:00",
          "2020-04-26T00:00:00",
          "2020-04-27T00:00:00",
          "2020-04-28T00:00:00",
          "2020-04-30T00:00:00",
          "2020-05-01T00:00:00",
          "2020-05-02T00:00:00",
          "2020-05-04T00:00:00",
          "2020-05-05T00:00:00",
          "2020-05-06T00:00:00",
          "2020-05-07T00:00:00",
          "2020-05-08T00:00:00",
          "2020-05-09T00:00:00",
          "2020-05-11T00:00:00",
          "2020-05-12T00:00:00",
          "2020-05-13T00:00:00",
          "2020-05-15T00:00:00",
          "2020-05-16T00:00:00",
          "2020-05-17T00:00:00",
          "2020-05-18T00:00:00",
          "2020-05-19T00:00:00",
          "2020-05-20T00:00:00",
          "2020-05-21T00:00:00",
          "2020-05-22T00:00:00",
          "2020-05-23T00:00:00",
          "2020-05-24T00:00:00",
          "2020-05-25T00:00:00",
          "2020-05-26T00:00:00",
          "2020-05-27T00:00:00",
          "2020-05-28T00:00:00",
          "2020-05-29T00:00:00",
          "2020-05-30T00:00:00",
          "2020-05-31T00:00:00",
          "2020-06-01T00:00:00",
          "2020-06-02T00:00:00",
          "2020-06-03T00:00:00",
          "2020-06-04T00:00:00",
          "2020-06-05T00:00:00",
          "2020-06-07T00:00:00",
          "2020-06-08T00:00:00",
          "2020-06-09T00:00:00",
          "2020-06-10T00:00:00",
          "2020-06-11T00:00:00",
          "2020-06-12T00:00:00",
          "2020-06-14T00:00:00",
          "2020-06-15T00:00:00",
          "2020-06-16T00:00:00",
          "2020-06-17T00:00:00",
          "2020-06-18T00:00:00",
          "2020-06-19T00:00:00",
          "2020-06-20T00:00:00",
          "2020-06-21T00:00:00",
          "2020-06-22T00:00:00",
          "2020-06-23T00:00:00",
          "2020-06-24T00:00:00",
          "2020-06-25T00:00:00",
          "2020-06-26T00:00:00",
          "2020-06-27T00:00:00",
          "2020-06-29T00:00:00",
          "2020-06-30T00:00:00",
          "2020-07-02T00:00:00",
          "2020-07-04T00:00:00",
          "2020-07-05T00:00:00",
          "2020-07-06T00:00:00",
          "2020-07-07T00:00:00",
          "2020-07-08T00:00:00",
          "2020-07-09T00:00:00",
          "2020-07-10T00:00:00",
          "2020-07-11T00:00:00",
          "2020-07-12T00:00:00",
          "2020-07-13T00:00:00",
          "2020-07-14T00:00:00",
          "2020-07-15T00:00:00",
          "2020-07-16T00:00:00",
          "2020-07-17T00:00:00",
          "2020-07-18T00:00:00",
          "2020-07-19T00:00:00",
          "2020-07-20T00:00:00",
          "2020-07-21T00:00:00",
          "2020-07-22T00:00:00",
          "2020-07-23T00:00:00",
          "2020-07-24T00:00:00",
          "2020-07-25T00:00:00",
          "2020-07-26T00:00:00",
          "2020-07-27T00:00:00",
          "2020-07-28T00:00:00",
          "2020-07-29T00:00:00",
          "2020-07-30T00:00:00",
          "2020-07-31T00:00:00",
          "2020-08-01T00:00:00",
          "2020-08-03T00:00:00",
          "2020-08-04T00:00:00",
          "2020-08-05T00:00:00",
          "2020-08-06T00:00:00",
          "2020-08-07T00:00:00",
          "2020-08-09T00:00:00",
          "2020-08-10T00:00:00",
          "2020-08-11T00:00:00",
          "2020-08-12T00:00:00",
          "2020-08-13T00:00:00",
          "2020-08-14T00:00:00",
          "2020-08-15T00:00:00",
          "2020-08-16T00:00:00",
          "2020-08-17T00:00:00",
          "2020-08-18T00:00:00",
          "2020-08-19T00:00:00",
          "2020-08-20T00:00:00",
          "2020-08-21T00:00:00",
          "2020-08-23T00:00:00",
          "2020-08-24T00:00:00",
          "2020-08-25T00:00:00",
          "2020-08-26T00:00:00",
          "2020-08-27T00:00:00",
          "2020-08-28T00:00:00",
          "2020-08-29T00:00:00",
          "2020-08-30T00:00:00",
          "2020-08-31T00:00:00",
          "2020-09-01T00:00:00",
          "2020-09-03T00:00:00",
          "2020-09-04T00:00:00",
          "2020-09-05T00:00:00",
          "2020-09-07T00:00:00",
          "2020-09-08T00:00:00",
          "2020-09-09T00:00:00",
          "2020-09-10T00:00:00",
          "2020-09-11T00:00:00",
          "2020-09-12T00:00:00",
          "2020-09-14T00:00:00",
          "2020-09-15T00:00:00",
          "2020-09-16T00:00:00",
          "2020-09-17T00:00:00",
          "2020-09-18T00:00:00",
          "2020-09-19T00:00:00",
          "2020-09-20T00:00:00",
          "2020-09-21T00:00:00",
          "2020-09-22T00:00:00",
          "2020-09-23T00:00:00",
          "2020-09-24T00:00:00",
          "2020-09-25T00:00:00",
          "2020-09-27T00:00:00",
          "2020-09-28T00:00:00",
          "2020-09-29T00:00:00",
          "2020-09-30T00:00:00",
          "2020-10-01T00:00:00",
          "2020-10-02T00:00:00",
          "2020-10-03T00:00:00",
          "2020-10-05T00:00:00",
          "2020-10-06T00:00:00",
          "2020-10-07T00:00:00",
          "2020-10-08T00:00:00",
          "2020-10-09T00:00:00",
          "2020-10-10T00:00:00",
          "2020-10-11T00:00:00",
          "2020-10-12T00:00:00",
          "2020-10-13T00:00:00",
          "2020-10-14T00:00:00",
          "2020-10-15T00:00:00",
          "2020-10-16T00:00:00",
          "2020-10-17T00:00:00",
          "2020-10-19T00:00:00",
          "2020-10-20T00:00:00",
          "2020-10-22T00:00:00",
          "2020-10-23T00:00:00",
          "2020-10-24T00:00:00",
          "2020-10-26T00:00:00",
          "2020-10-27T00:00:00",
          "2020-10-28T00:00:00",
          "2020-10-29T00:00:00",
          "2020-10-30T00:00:00",
          "2020-10-31T00:00:00"
         ],
         "xaxis": "x",
         "y": [
          1,
          2,
          1,
          3,
          2,
          2,
          2,
          1,
          1,
          1,
          1,
          1,
          2,
          2,
          3,
          1,
          1,
          1,
          2,
          1,
          1,
          1,
          1,
          3,
          2,
          1,
          1,
          1,
          4,
          2,
          1,
          1,
          3,
          1,
          1,
          2,
          1,
          1,
          1,
          1,
          3,
          2,
          1,
          2,
          2,
          4,
          1,
          4,
          2,
          1,
          1,
          1,
          4,
          1,
          1,
          2,
          1,
          2,
          2,
          3,
          3,
          1,
          1,
          1,
          3,
          4,
          1,
          3,
          1,
          4,
          2,
          1,
          1,
          1,
          1,
          2,
          1,
          1,
          2,
          3,
          1,
          2,
          3,
          1,
          3,
          2,
          1,
          2,
          1,
          1,
          1,
          2,
          1,
          1,
          5,
          1,
          2,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          1,
          3,
          1,
          1,
          2,
          2,
          2,
          3,
          1,
          4,
          2,
          3,
          2,
          1,
          1,
          1,
          2,
          3,
          1,
          2,
          4,
          2,
          2,
          2,
          1,
          1,
          1,
          1,
          1,
          1,
          1,
          1,
          2,
          2,
          3,
          2,
          4,
          5,
          2,
          1,
          1,
          1,
          1,
          1,
          1,
          1,
          2,
          2,
          3,
          2,
          1,
          1,
          3,
          4,
          1,
          1,
          2,
          2,
          1,
          2,
          1,
          3,
          3,
          2,
          3,
          5,
          1,
          2,
          1,
          1,
          1,
          1,
          3,
          3,
          3,
          3,
          1,
          2,
          1,
          3,
          6,
          3,
          1,
          2,
          3,
          1,
          3,
          1,
          1,
          2,
          1,
          1,
          2,
          1,
          2,
          1,
          1,
          2,
          1,
          1,
          2,
          2,
          5,
          1,
          1,
          3,
          1,
          3,
          3,
          1,
          2,
          1,
          4,
          1,
          2,
          3,
          2,
          2,
          2,
          4,
          1,
          2,
          2,
          2,
          3,
          3,
          1,
          2,
          2,
          2,
          4,
          1,
          2,
          2,
          3,
          3,
          2,
          3,
          1,
          2,
          1,
          1,
          2,
          1,
          1,
          1,
          1,
          2,
          2,
          1,
          1,
          1,
          2,
          1,
          2,
          1,
          1,
          2,
          2,
          3,
          1,
          3,
          2,
          3,
          1,
          1,
          2,
          2,
          1,
          2,
          3,
          5,
          3,
          2,
          2,
          3,
          3,
          2,
          4,
          1,
          2,
          1,
          1,
          1,
          1,
          2,
          2,
          2,
          3,
          2,
          1,
          1,
          1,
          1,
          2,
          1,
          4,
          1,
          3,
          3,
          3,
          4,
          1,
          1,
          2,
          2,
          3,
          1,
          1,
          3,
          1,
          1,
          3,
          2,
          1,
          3,
          1,
          2,
          2,
          1,
          3,
          6,
          2,
          1,
          1,
          1,
          1,
          5,
          1,
          5,
          2,
          1,
          1,
          1,
          3,
          3,
          2,
          5,
          1,
          2,
          3,
          1,
          1,
          3,
          1,
          3,
          6,
          4,
          5,
          1,
          1,
          1,
          2,
          1,
          1,
          4,
          1,
          1,
          5,
          2,
          5,
          2,
          2,
          5,
          5,
          2,
          4,
          2,
          4,
          7,
          2,
          2,
          5,
          4,
          2,
          1,
          1,
          2,
          3,
          2,
          1,
          1,
          2,
          2,
          2,
          5,
          2,
          5,
          2,
          3,
          5,
          2,
          6,
          2,
          1,
          3,
          2,
          1,
          3,
          5,
          2,
          3,
          2,
          4,
          3,
          1,
          1,
          4,
          1,
          3,
          2,
          3,
          1,
          1,
          2,
          3,
          3,
          1,
          2,
          1,
          1,
          5,
          4,
          4,
          4,
          3,
          1,
          3,
          3,
          3,
          2,
          3,
          1,
          4,
          2,
          6,
          4,
          3,
          2,
          2,
          1,
          6,
          2,
          1,
          3,
          3,
          3,
          6,
          1,
          1,
          1,
          1,
          6,
          3,
          2,
          7,
          1,
          1,
          6,
          2,
          4,
          1,
          2,
          2,
          1,
          7,
          4,
          3,
          1,
          3,
          1,
          1,
          4,
          5,
          4,
          3,
          3,
          1,
          1,
          3,
          2,
          3,
          3,
          1,
          5,
          3,
          2,
          3,
          4,
          2,
          2,
          3,
          4,
          1,
          5,
          1,
          1,
          2,
          3,
          2,
          3,
          2,
          3,
          1,
          1,
          1,
          3,
          4,
          1,
          4,
          3,
          3,
          4,
          1,
          3,
          2,
          2,
          3,
          2,
          3,
          2,
          3,
          5,
          1,
          1,
          2,
          3,
          2,
          3,
          3,
          1,
          2,
          1,
          2,
          10,
          2,
          2,
          3,
          2,
          1,
          1,
          3,
          4,
          3,
          1,
          1,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          3,
          3,
          4,
          1,
          2
         ],
         "yaxis": "y"
        },
        {
         "alignmentgroup": "True",
         "hovertemplate": "Depositor status=firstTimeDepositor<br>Date of deposit=%{x}<br>Count of depositors=%{y}<extra></extra>",
         "legendgroup": "firstTimeDepositor",
         "marker": {
          "color": "#EF553B"
         },
         "name": "firstTimeDepositor",
         "offsetgroup": "firstTimeDepositor",
         "orientation": "v",
         "showlegend": true,
         "textposition": "auto",
         "type": "bar",
         "x": [
          "2018-11-02T00:00:00",
          "2018-11-03T00:00:00",
          "2018-11-04T00:00:00",
          "2018-11-05T00:00:00",
          "2018-11-07T00:00:00",
          "2018-11-09T00:00:00",
          "2018-11-10T00:00:00",
          "2018-11-12T00:00:00",
          "2018-11-13T00:00:00",
          "2018-11-14T00:00:00",
          "2018-11-15T00:00:00",
          "2018-11-16T00:00:00",
          "2018-11-18T00:00:00",
          "2018-11-19T00:00:00",
          "2018-11-21T00:00:00",
          "2018-11-22T00:00:00",
          "2018-11-23T00:00:00",
          "2018-11-24T00:00:00",
          "2018-11-26T00:00:00",
          "2018-11-27T00:00:00",
          "2018-11-28T00:00:00",
          "2018-11-29T00:00:00",
          "2018-12-02T00:00:00",
          "2018-12-03T00:00:00",
          "2018-12-04T00:00:00",
          "2018-12-05T00:00:00",
          "2018-12-06T00:00:00",
          "2018-12-07T00:00:00",
          "2018-12-08T00:00:00",
          "2018-12-09T00:00:00",
          "2018-12-10T00:00:00",
          "2018-12-11T00:00:00",
          "2018-12-12T00:00:00",
          "2018-12-13T00:00:00",
          "2018-12-14T00:00:00",
          "2018-12-16T00:00:00",
          "2018-12-17T00:00:00",
          "2018-12-18T00:00:00",
          "2018-12-19T00:00:00",
          "2018-12-21T00:00:00",
          "2018-12-22T00:00:00",
          "2018-12-24T00:00:00",
          "2018-12-25T00:00:00",
          "2018-12-28T00:00:00",
          "2018-12-30T00:00:00",
          "2019-01-01T00:00:00",
          "2019-01-02T00:00:00",
          "2019-01-03T00:00:00",
          "2019-01-07T00:00:00",
          "2019-01-08T00:00:00",
          "2019-01-09T00:00:00",
          "2019-01-10T00:00:00",
          "2019-01-11T00:00:00",
          "2019-01-12T00:00:00",
          "2019-01-13T00:00:00",
          "2019-01-14T00:00:00",
          "2019-01-15T00:00:00",
          "2019-01-16T00:00:00",
          "2019-01-17T00:00:00",
          "2019-01-18T00:00:00",
          "2019-01-19T00:00:00",
          "2019-01-20T00:00:00",
          "2019-01-21T00:00:00",
          "2019-01-22T00:00:00",
          "2019-01-23T00:00:00",
          "2019-01-24T00:00:00",
          "2019-01-25T00:00:00",
          "2019-01-26T00:00:00",
          "2019-01-28T00:00:00",
          "2019-01-29T00:00:00",
          "2019-01-30T00:00:00",
          "2019-01-31T00:00:00",
          "2019-02-01T00:00:00",
          "2019-02-02T00:00:00",
          "2019-02-03T00:00:00",
          "2019-02-04T00:00:00",
          "2019-02-05T00:00:00",
          "2019-02-06T00:00:00",
          "2019-02-08T00:00:00",
          "2019-02-09T00:00:00",
          "2019-02-11T00:00:00",
          "2019-02-12T00:00:00",
          "2019-02-13T00:00:00",
          "2019-02-15T00:00:00",
          "2019-02-16T00:00:00",
          "2019-02-17T00:00:00",
          "2019-02-19T00:00:00",
          "2019-02-20T00:00:00",
          "2019-02-21T00:00:00",
          "2019-02-22T00:00:00",
          "2019-02-24T00:00:00",
          "2019-02-25T00:00:00",
          "2019-02-26T00:00:00",
          "2019-02-28T00:00:00",
          "2019-03-01T00:00:00",
          "2019-03-04T00:00:00",
          "2019-03-05T00:00:00",
          "2019-03-06T00:00:00",
          "2019-03-07T00:00:00",
          "2019-03-08T00:00:00",
          "2019-03-10T00:00:00",
          "2019-03-11T00:00:00",
          "2019-03-12T00:00:00",
          "2019-03-13T00:00:00",
          "2019-03-14T00:00:00",
          "2019-03-15T00:00:00",
          "2019-03-17T00:00:00",
          "2019-03-18T00:00:00",
          "2019-03-19T00:00:00",
          "2019-03-20T00:00:00",
          "2019-03-21T00:00:00",
          "2019-03-22T00:00:00",
          "2019-03-23T00:00:00",
          "2019-03-24T00:00:00",
          "2019-03-25T00:00:00",
          "2019-03-26T00:00:00",
          "2019-03-27T00:00:00",
          "2019-03-28T00:00:00",
          "2019-03-29T00:00:00",
          "2019-03-30T00:00:00",
          "2019-03-31T00:00:00",
          "2019-04-01T00:00:00",
          "2019-04-02T00:00:00",
          "2019-04-03T00:00:00",
          "2019-04-04T00:00:00",
          "2019-04-05T00:00:00",
          "2019-04-06T00:00:00",
          "2019-04-07T00:00:00",
          "2019-04-08T00:00:00",
          "2019-04-09T00:00:00",
          "2019-04-10T00:00:00",
          "2019-04-11T00:00:00",
          "2019-04-12T00:00:00",
          "2019-04-13T00:00:00",
          "2019-04-14T00:00:00",
          "2019-04-15T00:00:00",
          "2019-04-16T00:00:00",
          "2019-04-17T00:00:00",
          "2019-04-19T00:00:00",
          "2019-04-20T00:00:00",
          "2019-04-22T00:00:00",
          "2019-04-23T00:00:00",
          "2019-04-24T00:00:00",
          "2019-04-25T00:00:00",
          "2019-04-26T00:00:00",
          "2019-04-27T00:00:00",
          "2019-04-28T00:00:00",
          "2019-04-29T00:00:00",
          "2019-04-30T00:00:00",
          "2019-05-01T00:00:00",
          "2019-05-03T00:00:00",
          "2019-05-04T00:00:00",
          "2019-05-06T00:00:00",
          "2019-05-07T00:00:00",
          "2019-05-08T00:00:00",
          "2019-05-11T00:00:00",
          "2019-05-13T00:00:00",
          "2019-05-14T00:00:00",
          "2019-05-15T00:00:00",
          "2019-05-16T00:00:00",
          "2019-05-17T00:00:00",
          "2019-05-18T00:00:00",
          "2019-05-19T00:00:00",
          "2019-05-20T00:00:00",
          "2019-05-21T00:00:00",
          "2019-05-22T00:00:00",
          "2019-05-23T00:00:00",
          "2019-05-24T00:00:00",
          "2019-05-27T00:00:00",
          "2019-05-29T00:00:00",
          "2019-05-30T00:00:00",
          "2019-05-31T00:00:00",
          "2019-06-02T00:00:00",
          "2019-06-03T00:00:00",
          "2019-06-04T00:00:00",
          "2019-06-05T00:00:00",
          "2019-06-06T00:00:00",
          "2019-06-07T00:00:00",
          "2019-06-08T00:00:00",
          "2019-06-10T00:00:00",
          "2019-06-12T00:00:00",
          "2019-06-13T00:00:00",
          "2019-06-14T00:00:00",
          "2019-06-15T00:00:00",
          "2019-06-16T00:00:00",
          "2019-06-17T00:00:00",
          "2019-06-18T00:00:00",
          "2019-06-20T00:00:00",
          "2019-06-21T00:00:00",
          "2019-06-22T00:00:00",
          "2019-06-23T00:00:00",
          "2019-06-24T00:00:00",
          "2019-06-25T00:00:00",
          "2019-06-26T00:00:00",
          "2019-06-27T00:00:00",
          "2019-06-28T00:00:00",
          "2019-06-30T00:00:00",
          "2019-07-02T00:00:00",
          "2019-07-03T00:00:00",
          "2019-07-04T00:00:00",
          "2019-07-05T00:00:00",
          "2019-07-06T00:00:00",
          "2019-07-07T00:00:00",
          "2019-07-08T00:00:00",
          "2019-07-09T00:00:00",
          "2019-07-10T00:00:00",
          "2019-07-11T00:00:00",
          "2019-07-12T00:00:00",
          "2019-07-14T00:00:00",
          "2019-07-15T00:00:00",
          "2019-07-16T00:00:00",
          "2019-07-17T00:00:00",
          "2019-07-18T00:00:00",
          "2019-07-19T00:00:00",
          "2019-07-21T00:00:00",
          "2019-07-22T00:00:00",
          "2019-07-23T00:00:00",
          "2019-07-24T00:00:00",
          "2019-07-25T00:00:00",
          "2019-07-26T00:00:00",
          "2019-07-29T00:00:00",
          "2019-07-31T00:00:00",
          "2019-08-01T00:00:00",
          "2019-08-02T00:00:00",
          "2019-08-04T00:00:00",
          "2019-08-05T00:00:00",
          "2019-08-06T00:00:00",
          "2019-08-07T00:00:00",
          "2019-08-08T00:00:00",
          "2019-08-09T00:00:00",
          "2019-08-10T00:00:00",
          "2019-08-11T00:00:00",
          "2019-08-12T00:00:00",
          "2019-08-13T00:00:00",
          "2019-08-14T00:00:00",
          "2019-08-15T00:00:00",
          "2019-08-16T00:00:00",
          "2019-08-17T00:00:00",
          "2019-08-19T00:00:00",
          "2019-08-20T00:00:00",
          "2019-08-21T00:00:00",
          "2019-08-22T00:00:00",
          "2019-08-23T00:00:00",
          "2019-08-25T00:00:00",
          "2019-08-26T00:00:00",
          "2019-08-27T00:00:00",
          "2019-08-28T00:00:00",
          "2019-08-29T00:00:00",
          "2019-08-30T00:00:00",
          "2019-09-01T00:00:00",
          "2019-09-02T00:00:00",
          "2019-09-03T00:00:00",
          "2019-09-04T00:00:00",
          "2019-09-05T00:00:00",
          "2019-09-06T00:00:00",
          "2019-09-07T00:00:00",
          "2019-09-08T00:00:00",
          "2019-09-09T00:00:00",
          "2019-09-10T00:00:00",
          "2019-09-11T00:00:00",
          "2019-09-12T00:00:00",
          "2019-09-13T00:00:00",
          "2019-09-14T00:00:00",
          "2019-09-16T00:00:00",
          "2019-09-17T00:00:00",
          "2019-09-18T00:00:00",
          "2019-09-19T00:00:00",
          "2019-09-22T00:00:00",
          "2019-09-23T00:00:00",
          "2019-09-24T00:00:00",
          "2019-09-25T00:00:00",
          "2019-09-26T00:00:00",
          "2019-09-27T00:00:00",
          "2019-09-28T00:00:00",
          "2019-09-30T00:00:00",
          "2019-10-01T00:00:00",
          "2019-10-02T00:00:00",
          "2019-10-03T00:00:00",
          "2019-10-04T00:00:00",
          "2019-10-05T00:00:00",
          "2019-10-06T00:00:00",
          "2019-10-07T00:00:00",
          "2019-10-08T00:00:00",
          "2019-10-09T00:00:00",
          "2019-10-10T00:00:00",
          "2019-10-11T00:00:00",
          "2019-10-12T00:00:00",
          "2019-10-14T00:00:00",
          "2019-10-15T00:00:00",
          "2019-10-16T00:00:00",
          "2019-10-17T00:00:00",
          "2019-10-18T00:00:00",
          "2019-10-19T00:00:00",
          "2019-10-20T00:00:00",
          "2019-10-21T00:00:00",
          "2019-10-22T00:00:00",
          "2019-10-23T00:00:00",
          "2019-10-24T00:00:00",
          "2019-10-25T00:00:00",
          "2019-10-27T00:00:00",
          "2019-10-28T00:00:00",
          "2019-10-29T00:00:00",
          "2019-10-30T00:00:00",
          "2019-10-31T00:00:00",
          "2019-11-01T00:00:00",
          "2019-11-03T00:00:00",
          "2019-11-05T00:00:00",
          "2019-11-06T00:00:00",
          "2019-11-07T00:00:00",
          "2019-11-08T00:00:00",
          "2019-11-09T00:00:00",
          "2019-11-10T00:00:00",
          "2019-11-11T00:00:00",
          "2019-11-12T00:00:00",
          "2019-11-13T00:00:00",
          "2019-11-15T00:00:00",
          "2019-11-16T00:00:00",
          "2019-11-18T00:00:00",
          "2019-11-19T00:00:00",
          "2019-11-20T00:00:00",
          "2019-11-21T00:00:00",
          "2019-11-22T00:00:00",
          "2019-11-25T00:00:00",
          "2019-11-26T00:00:00",
          "2019-11-27T00:00:00",
          "2019-11-29T00:00:00",
          "2019-11-30T00:00:00",
          "2019-12-01T00:00:00",
          "2019-12-02T00:00:00",
          "2019-12-04T00:00:00",
          "2019-12-05T00:00:00",
          "2019-12-06T00:00:00",
          "2019-12-07T00:00:00",
          "2019-12-08T00:00:00",
          "2019-12-09T00:00:00",
          "2019-12-10T00:00:00",
          "2019-12-11T00:00:00",
          "2019-12-12T00:00:00",
          "2019-12-13T00:00:00",
          "2019-12-16T00:00:00",
          "2019-12-17T00:00:00",
          "2019-12-18T00:00:00",
          "2019-12-19T00:00:00",
          "2019-12-20T00:00:00",
          "2019-12-21T00:00:00",
          "2019-12-23T00:00:00",
          "2019-12-24T00:00:00",
          "2019-12-25T00:00:00",
          "2019-12-26T00:00:00",
          "2019-12-27T00:00:00",
          "2019-12-28T00:00:00",
          "2019-12-30T00:00:00",
          "2020-01-01T00:00:00",
          "2020-01-02T00:00:00",
          "2020-01-03T00:00:00",
          "2020-01-05T00:00:00",
          "2020-01-06T00:00:00",
          "2020-01-07T00:00:00",
          "2020-01-08T00:00:00",
          "2020-01-09T00:00:00",
          "2020-01-10T00:00:00",
          "2020-01-13T00:00:00",
          "2020-01-14T00:00:00",
          "2020-01-15T00:00:00",
          "2020-01-16T00:00:00",
          "2020-01-17T00:00:00",
          "2020-01-18T00:00:00",
          "2020-01-20T00:00:00",
          "2020-01-21T00:00:00",
          "2020-01-22T00:00:00",
          "2020-01-23T00:00:00",
          "2020-01-24T00:00:00",
          "2020-01-25T00:00:00",
          "2020-01-26T00:00:00",
          "2020-01-27T00:00:00",
          "2020-01-28T00:00:00",
          "2020-01-29T00:00:00",
          "2020-01-30T00:00:00",
          "2020-01-31T00:00:00",
          "2020-02-01T00:00:00",
          "2020-02-02T00:00:00",
          "2020-02-03T00:00:00",
          "2020-02-04T00:00:00",
          "2020-02-05T00:00:00",
          "2020-02-06T00:00:00",
          "2020-02-07T00:00:00",
          "2020-02-08T00:00:00",
          "2020-02-09T00:00:00",
          "2020-02-10T00:00:00",
          "2020-02-11T00:00:00",
          "2020-02-12T00:00:00",
          "2020-02-13T00:00:00",
          "2020-02-14T00:00:00",
          "2020-02-15T00:00:00",
          "2020-02-17T00:00:00",
          "2020-02-18T00:00:00",
          "2020-02-19T00:00:00",
          "2020-02-20T00:00:00",
          "2020-02-22T00:00:00",
          "2020-02-24T00:00:00",
          "2020-02-25T00:00:00",
          "2020-02-26T00:00:00",
          "2020-02-27T00:00:00",
          "2020-02-28T00:00:00",
          "2020-02-29T00:00:00",
          "2020-03-01T00:00:00",
          "2020-03-02T00:00:00",
          "2020-03-03T00:00:00",
          "2020-03-04T00:00:00",
          "2020-03-05T00:00:00",
          "2020-03-06T00:00:00",
          "2020-03-07T00:00:00",
          "2020-03-09T00:00:00",
          "2020-03-10T00:00:00",
          "2020-03-11T00:00:00",
          "2020-03-12T00:00:00",
          "2020-03-13T00:00:00",
          "2020-03-14T00:00:00",
          "2020-03-15T00:00:00",
          "2020-03-16T00:00:00",
          "2020-03-17T00:00:00",
          "2020-03-18T00:00:00",
          "2020-03-19T00:00:00",
          "2020-03-20T00:00:00",
          "2020-03-21T00:00:00",
          "2020-03-22T00:00:00",
          "2020-03-23T00:00:00",
          "2020-03-24T00:00:00",
          "2020-03-25T00:00:00",
          "2020-03-26T00:00:00",
          "2020-03-27T00:00:00",
          "2020-03-28T00:00:00",
          "2020-03-29T00:00:00",
          "2020-03-30T00:00:00",
          "2020-03-31T00:00:00",
          "2020-04-02T00:00:00",
          "2020-04-03T00:00:00",
          "2020-04-04T00:00:00",
          "2020-04-05T00:00:00",
          "2020-04-06T00:00:00",
          "2020-04-07T00:00:00",
          "2020-04-08T00:00:00",
          "2020-04-09T00:00:00",
          "2020-04-10T00:00:00",
          "2020-04-11T00:00:00",
          "2020-04-12T00:00:00",
          "2020-04-13T00:00:00",
          "2020-04-14T00:00:00",
          "2020-04-15T00:00:00",
          "2020-04-16T00:00:00",
          "2020-04-17T00:00:00",
          "2020-04-19T00:00:00",
          "2020-04-20T00:00:00",
          "2020-04-21T00:00:00",
          "2020-04-22T00:00:00",
          "2020-04-23T00:00:00",
          "2020-04-24T00:00:00",
          "2020-04-26T00:00:00",
          "2020-04-27T00:00:00",
          "2020-04-28T00:00:00",
          "2020-04-29T00:00:00",
          "2020-04-30T00:00:00",
          "2020-05-01T00:00:00",
          "2020-05-02T00:00:00",
          "2020-05-04T00:00:00",
          "2020-05-05T00:00:00",
          "2020-05-06T00:00:00",
          "2020-05-07T00:00:00",
          "2020-05-08T00:00:00",
          "2020-05-10T00:00:00",
          "2020-05-11T00:00:00",
          "2020-05-12T00:00:00",
          "2020-05-13T00:00:00",
          "2020-05-14T00:00:00",
          "2020-05-15T00:00:00",
          "2020-05-16T00:00:00",
          "2020-05-17T00:00:00",
          "2020-05-18T00:00:00",
          "2020-05-19T00:00:00",
          "2020-05-20T00:00:00",
          "2020-05-21T00:00:00",
          "2020-05-22T00:00:00",
          "2020-05-23T00:00:00",
          "2020-05-24T00:00:00",
          "2020-05-25T00:00:00",
          "2020-05-26T00:00:00",
          "2020-05-27T00:00:00",
          "2020-05-28T00:00:00",
          "2020-05-29T00:00:00",
          "2020-05-31T00:00:00",
          "2020-06-01T00:00:00",
          "2020-06-02T00:00:00",
          "2020-06-03T00:00:00",
          "2020-06-04T00:00:00",
          "2020-06-05T00:00:00",
          "2020-06-06T00:00:00",
          "2020-06-07T00:00:00",
          "2020-06-08T00:00:00",
          "2020-06-10T00:00:00",
          "2020-06-11T00:00:00",
          "2020-06-12T00:00:00",
          "2020-06-13T00:00:00",
          "2020-06-14T00:00:00",
          "2020-06-15T00:00:00",
          "2020-06-16T00:00:00",
          "2020-06-17T00:00:00",
          "2020-06-18T00:00:00",
          "2020-06-19T00:00:00",
          "2020-06-20T00:00:00",
          "2020-06-21T00:00:00",
          "2020-06-22T00:00:00",
          "2020-06-23T00:00:00",
          "2020-06-24T00:00:00",
          "2020-06-25T00:00:00",
          "2020-06-26T00:00:00",
          "2020-06-28T00:00:00",
          "2020-06-29T00:00:00",
          "2020-06-30T00:00:00",
          "2020-07-01T00:00:00",
          "2020-07-02T00:00:00",
          "2020-07-03T00:00:00",
          "2020-07-04T00:00:00",
          "2020-07-06T00:00:00",
          "2020-07-07T00:00:00",
          "2020-07-08T00:00:00",
          "2020-07-09T00:00:00",
          "2020-07-11T00:00:00",
          "2020-07-13T00:00:00",
          "2020-07-14T00:00:00",
          "2020-07-15T00:00:00",
          "2020-07-16T00:00:00",
          "2020-07-17T00:00:00",
          "2020-07-18T00:00:00",
          "2020-07-19T00:00:00",
          "2020-07-20T00:00:00",
          "2020-07-21T00:00:00",
          "2020-07-22T00:00:00",
          "2020-07-23T00:00:00",
          "2020-07-24T00:00:00",
          "2020-07-25T00:00:00",
          "2020-07-26T00:00:00",
          "2020-07-27T00:00:00",
          "2020-07-28T00:00:00",
          "2020-07-29T00:00:00",
          "2020-07-30T00:00:00",
          "2020-07-31T00:00:00",
          "2020-08-01T00:00:00",
          "2020-08-02T00:00:00",
          "2020-08-03T00:00:00",
          "2020-08-04T00:00:00",
          "2020-08-05T00:00:00",
          "2020-08-06T00:00:00",
          "2020-08-07T00:00:00",
          "2020-08-08T00:00:00",
          "2020-08-09T00:00:00",
          "2020-08-10T00:00:00",
          "2020-08-11T00:00:00",
          "2020-08-12T00:00:00",
          "2020-08-13T00:00:00",
          "2020-08-14T00:00:00",
          "2020-08-16T00:00:00",
          "2020-08-17T00:00:00",
          "2020-08-18T00:00:00",
          "2020-08-19T00:00:00",
          "2020-08-20T00:00:00",
          "2020-08-21T00:00:00",
          "2020-08-22T00:00:00",
          "2020-08-24T00:00:00",
          "2020-08-25T00:00:00",
          "2020-08-26T00:00:00",
          "2020-08-27T00:00:00",
          "2020-08-28T00:00:00",
          "2020-08-29T00:00:00",
          "2020-08-30T00:00:00",
          "2020-08-31T00:00:00",
          "2020-09-01T00:00:00",
          "2020-09-02T00:00:00",
          "2020-09-03T00:00:00",
          "2020-09-04T00:00:00",
          "2020-09-05T00:00:00",
          "2020-09-07T00:00:00",
          "2020-09-08T00:00:00",
          "2020-09-09T00:00:00",
          "2020-09-10T00:00:00",
          "2020-09-11T00:00:00",
          "2020-09-12T00:00:00",
          "2020-09-14T00:00:00",
          "2020-09-16T00:00:00",
          "2020-09-17T00:00:00",
          "2020-09-18T00:00:00",
          "2020-09-19T00:00:00",
          "2020-09-20T00:00:00",
          "2020-09-21T00:00:00",
          "2020-09-22T00:00:00",
          "2020-09-23T00:00:00",
          "2020-09-24T00:00:00",
          "2020-09-25T00:00:00",
          "2020-09-26T00:00:00",
          "2020-09-27T00:00:00",
          "2020-09-28T00:00:00",
          "2020-09-29T00:00:00",
          "2020-09-30T00:00:00",
          "2020-10-01T00:00:00",
          "2020-10-02T00:00:00",
          "2020-10-04T00:00:00",
          "2020-10-05T00:00:00",
          "2020-10-06T00:00:00",
          "2020-10-07T00:00:00",
          "2020-10-08T00:00:00",
          "2020-10-09T00:00:00",
          "2020-10-10T00:00:00",
          "2020-10-12T00:00:00",
          "2020-10-13T00:00:00",
          "2020-10-14T00:00:00",
          "2020-10-15T00:00:00",
          "2020-10-16T00:00:00",
          "2020-10-17T00:00:00",
          "2020-10-18T00:00:00",
          "2020-10-19T00:00:00",
          "2020-10-20T00:00:00",
          "2020-10-21T00:00:00",
          "2020-10-22T00:00:00",
          "2020-10-23T00:00:00",
          "2020-10-24T00:00:00",
          "2020-10-25T00:00:00",
          "2020-10-26T00:00:00",
          "2020-10-27T00:00:00",
          "2020-10-28T00:00:00",
          "2020-10-29T00:00:00",
          "2020-10-30T00:00:00",
          "2020-10-31T00:00:00"
         ],
         "xaxis": "x",
         "y": [
          4,
          1,
          2,
          3,
          4,
          2,
          1,
          2,
          3,
          1,
          2,
          1,
          1,
          2,
          6,
          1,
          1,
          1,
          1,
          1,
          4,
          2,
          2,
          2,
          1,
          1,
          2,
          1,
          3,
          1,
          3,
          2,
          3,
          1,
          2,
          1,
          2,
          2,
          1,
          2,
          1,
          1,
          1,
          1,
          1,
          2,
          1,
          3,
          3,
          2,
          1,
          2,
          1,
          2,
          2,
          1,
          2,
          4,
          5,
          6,
          1,
          1,
          1,
          4,
          1,
          2,
          3,
          3,
          3,
          3,
          3,
          4,
          3,
          1,
          1,
          1,
          1,
          3,
          3,
          1,
          3,
          1,
          1,
          1,
          3,
          1,
          3,
          7,
          2,
          2,
          2,
          1,
          5,
          4,
          2,
          2,
          3,
          2,
          5,
          2,
          2,
          6,
          5,
          1,
          3,
          4,
          2,
          2,
          4,
          1,
          2,
          4,
          1,
          1,
          1,
          2,
          1,
          4,
          2,
          1,
          3,
          6,
          2,
          1,
          1,
          1,
          1,
          1,
          5,
          5,
          5,
          3,
          2,
          2,
          2,
          1,
          1,
          1,
          2,
          3,
          6,
          5,
          2,
          3,
          2,
          2,
          1,
          2,
          4,
          1,
          2,
          1,
          1,
          2,
          5,
          1,
          1,
          7,
          4,
          3,
          1,
          1,
          1,
          3,
          2,
          1,
          3,
          1,
          2,
          2,
          2,
          2,
          1,
          2,
          3,
          2,
          3,
          2,
          1,
          1,
          1,
          2,
          1,
          1,
          1,
          2,
          3,
          2,
          2,
          1,
          2,
          3,
          3,
          2,
          2,
          1,
          2,
          3,
          4,
          2,
          2,
          1,
          3,
          3,
          2,
          1,
          1,
          6,
          2,
          1,
          1,
          3,
          1,
          2,
          2,
          4,
          5,
          3,
          2,
          2,
          4,
          1,
          2,
          2,
          3,
          5,
          3,
          3,
          3,
          3,
          2,
          2,
          1,
          5,
          4,
          4,
          3,
          1,
          2,
          1,
          1,
          2,
          2,
          1,
          1,
          4,
          6,
          1,
          1,
          3,
          4,
          4,
          3,
          3,
          3,
          3,
          1,
          2,
          1,
          2,
          1,
          2,
          3,
          1,
          4,
          3,
          1,
          3,
          3,
          5,
          3,
          2,
          2,
          3,
          6,
          3,
          1,
          2,
          1,
          1,
          1,
          6,
          2,
          1,
          1,
          4,
          3,
          3,
          3,
          3,
          4,
          2,
          1,
          2,
          4,
          2,
          3,
          2,
          1,
          3,
          5,
          3,
          1,
          3,
          2,
          1,
          2,
          5,
          4,
          2,
          1,
          1,
          2,
          1,
          1,
          2,
          1,
          4,
          1,
          2,
          3,
          1,
          6,
          4,
          3,
          2,
          2,
          2,
          5,
          5,
          1,
          2,
          2,
          2,
          5,
          1,
          2,
          1,
          1,
          4,
          5,
          3,
          4,
          1,
          1,
          1,
          6,
          1,
          1,
          1,
          2,
          2,
          1,
          3,
          1,
          1,
          5,
          2,
          2,
          3,
          3,
          4,
          4,
          2,
          6,
          2,
          1,
          3,
          2,
          2,
          2,
          6,
          3,
          1,
          6,
          2,
          3,
          1,
          5,
          2,
          3,
          2,
          1,
          3,
          4,
          5,
          1,
          3,
          5,
          4,
          2,
          1,
          3,
          4,
          1,
          4,
          3,
          1,
          1,
          4,
          1,
          3,
          2,
          4,
          3,
          3,
          2,
          6,
          3,
          1,
          1,
          1,
          2,
          4,
          5,
          4,
          3,
          1,
          1,
          1,
          3,
          3,
          3,
          1,
          1,
          1,
          2,
          4,
          2,
          3,
          4,
          3,
          2,
          3,
          2,
          3,
          3,
          1,
          1,
          4,
          3,
          2,
          3,
          4,
          1,
          1,
          2,
          3,
          4,
          3,
          4,
          1,
          5,
          2,
          4,
          3,
          2,
          3,
          1,
          7,
          3,
          4,
          4,
          2,
          3,
          5,
          5,
          2,
          2,
          1,
          4,
          3,
          2,
          4,
          6,
          3,
          6,
          6,
          7,
          2,
          2,
          3,
          2,
          4,
          1,
          3,
          2,
          1,
          4,
          4,
          4,
          2,
          1,
          6,
          1,
          1,
          1,
          7,
          3,
          3,
          8,
          3,
          3,
          2,
          6,
          7,
          4,
          7,
          1,
          2,
          3,
          3,
          8,
          3,
          6,
          4,
          2,
          5,
          4,
          7,
          1,
          1,
          1,
          2,
          1,
          2,
          1,
          4,
          1,
          2,
          4,
          1,
          2,
          1,
          2,
          8,
          4,
          3,
          1,
          2,
          1,
          2,
          2,
          1,
          5,
          5,
          3,
          2,
          3,
          5,
          3,
          6,
          5,
          1,
          4,
          4,
          7,
          2,
          2,
          5,
          3,
          4,
          2,
          2,
          4,
          4,
          1,
          8,
          2,
          3,
          1,
          3,
          2,
          3,
          2,
          2,
          4,
          1,
          4,
          1,
          1,
          5,
          8,
          4,
          4,
          2,
          3,
          2,
          3,
          2,
          5,
          4,
          2,
          1,
          1,
          5,
          4,
          1,
          5,
          1,
          4,
          4,
          2,
          3,
          1,
          5,
          6,
          4,
          2,
          3,
          1,
          4,
          4,
          2,
          3,
          1,
          3,
          3,
          4,
          2,
          6,
          4,
          2,
          2,
          2,
          2,
          2,
          3,
          4,
          4,
          4
         ],
         "yaxis": "y"
        }
       ],
       "layout": {
        "barmode": "relative",
        "legend": {
         "title": {
          "text": "Depositor status"
         },
         "tracegroupgap": 0
        },
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "How many accounts create datasets in HDV Root each day?"
        },
        "xaxis": {
         "anchor": "y",
         "domain": [
          0,
          1
         ],
         "nticks": 50,
         "range": [
          "2020-08-01",
          "2020-10-31"
         ],
         "title": {
          "text": "Date of deposit"
         },
         "type": "date"
        },
        "yaxis": {
         "anchor": "x",
         "domain": [
          0,
          1
         ],
         "title": {
          "text": "Count of depositors"
         }
        }
       }
      },
      "text/html": [
       "<div>                            <div id=\"67b12b19-4526-475c-a40f-8284dec09ce5\" class=\"plotly-graph-div\" style=\"height:525px; width:100%;\"></div>            <script type=\"text/javascript\">                require([\"plotly\"], function(Plotly) {                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById(\"67b12b19-4526-475c-a40f-8284dec09ce5\")) {                    Plotly.newPlot(                        \"67b12b19-4526-475c-a40f-8284dec09ce5\",                        [{\"alignmentgroup\": \"True\", \"hovertemplate\": \"Depositor status=returningDepositor<br>Date of deposit=%{x}<br>Count of depositors=%{y}<extra></extra>\", \"legendgroup\": \"returningDepositor\", \"marker\": {\"color\": \"#636efa\"}, \"name\": \"returningDepositor\", \"offsetgroup\": \"returningDepositor\", \"orientation\": \"v\", \"showlegend\": true, \"textposition\": \"auto\", \"type\": \"bar\", \"x\": [\"2018-11-01T00:00:00\", \"2018-11-02T00:00:00\", \"2018-11-05T00:00:00\", \"2018-11-06T00:00:00\", \"2018-11-07T00:00:00\", \"2018-11-08T00:00:00\", \"2018-11-14T00:00:00\", \"2018-11-15T00:00:00\", \"2018-11-17T00:00:00\", \"2018-11-20T00:00:00\", \"2018-11-23T00:00:00\", \"2018-11-25T00:00:00\", \"2018-11-26T00:00:00\", \"2018-11-28T00:00:00\", \"2018-11-29T00:00:00\", \"2018-12-02T00:00:00\", \"2018-12-03T00:00:00\", \"2018-12-04T00:00:00\", \"2018-12-05T00:00:00\", \"2018-12-07T00:00:00\", \"2018-12-08T00:00:00\", \"2018-12-09T00:00:00\", \"2018-12-11T00:00:00\", \"2018-12-13T00:00:00\", \"2018-12-14T00:00:00\", \"2018-12-17T00:00:00\", \"2018-12-18T00:00:00\", \"2018-12-19T00:00:00\", \"2018-12-20T00:00:00\", \"2018-12-21T00:00:00\", \"2018-12-27T00:00:00\", \"2019-01-02T00:00:00\", \"2019-01-04T00:00:00\", \"2019-01-05T00:00:00\", \"2019-01-07T00:00:00\", \"2019-01-09T00:00:00\", \"2019-01-11T00:00:00\", \"2019-01-13T00:00:00\", \"2019-01-14T00:00:00\", \"2019-01-15T00:00:00\", \"2019-01-18T00:00:00\", \"2019-01-19T00:00:00\", \"2019-01-21T00:00:00\", \"2019-01-22T00:00:00\", \"2019-01-24T00:00:00\", \"2019-01-25T00:00:00\", \"2019-01-28T00:00:00\", \"2019-02-01T00:00:00\", \"2019-02-02T00:00:00\", \"2019-02-03T00:00:00\", \"2019-02-04T00:00:00\", \"2019-02-06T00:00:00\", \"2019-02-07T00:00:00\", \"2019-02-10T00:00:00\", \"2019-02-11T00:00:00\", \"2019-02-13T00:00:00\", \"2019-02-16T00:00:00\", \"2019-02-18T00:00:00\", \"2019-02-19T00:00:00\", \"2019-02-21T00:00:00\", \"2019-02-22T00:00:00\", \"2019-02-23T00:00:00\", \"2019-02-24T00:00:00\", \"2019-02-25T00:00:00\", \"2019-02-26T00:00:00\", \"2019-02-27T00:00:00\", \"2019-03-01T00:00:00\", \"2019-03-04T00:00:00\", \"2019-03-05T00:00:00\", \"2019-03-06T00:00:00\", \"2019-03-07T00:00:00\", \"2019-03-08T00:00:00\", \"2019-03-09T00:00:00\", \"2019-03-10T00:00:00\", \"2019-03-11T00:00:00\", \"2019-03-12T00:00:00\", \"2019-03-13T00:00:00\", \"2019-03-14T00:00:00\", \"2019-03-16T00:00:00\", \"2019-03-17T00:00:00\", \"2019-03-18T00:00:00\", \"2019-03-19T00:00:00\", \"2019-03-20T00:00:00\", \"2019-03-23T00:00:00\", \"2019-03-24T00:00:00\", \"2019-03-25T00:00:00\", \"2019-03-26T00:00:00\", \"2019-03-27T00:00:00\", \"2019-04-01T00:00:00\", \"2019-04-02T00:00:00\", \"2019-04-04T00:00:00\", \"2019-04-05T00:00:00\", \"2019-04-06T00:00:00\", \"2019-04-07T00:00:00\", \"2019-04-08T00:00:00\", \"2019-04-09T00:00:00\", \"2019-04-10T00:00:00\", \"2019-04-11T00:00:00\", \"2019-04-12T00:00:00\", \"2019-04-13T00:00:00\", \"2019-04-14T00:00:00\", \"2019-04-15T00:00:00\", \"2019-04-16T00:00:00\", \"2019-04-17T00:00:00\", \"2019-04-18T00:00:00\", \"2019-04-19T00:00:00\", \"2019-04-20T00:00:00\", \"2019-04-21T00:00:00\", \"2019-04-22T00:00:00\", \"2019-04-24T00:00:00\", \"2019-04-26T00:00:00\", \"2019-04-27T00:00:00\", \"2019-04-28T00:00:00\", \"2019-04-29T00:00:00\", \"2019-04-30T00:00:00\", \"2019-05-02T00:00:00\", \"2019-05-03T00:00:00\", \"2019-05-04T00:00:00\", \"2019-05-06T00:00:00\", \"2019-05-08T00:00:00\", \"2019-05-09T00:00:00\", \"2019-05-10T00:00:00\", \"2019-05-12T00:00:00\", \"2019-05-14T00:00:00\", \"2019-05-15T00:00:00\", \"2019-05-16T00:00:00\", \"2019-05-17T00:00:00\", \"2019-05-18T00:00:00\", \"2019-05-19T00:00:00\", \"2019-05-21T00:00:00\", \"2019-05-22T00:00:00\", \"2019-05-24T00:00:00\", \"2019-05-25T00:00:00\", \"2019-05-26T00:00:00\", \"2019-05-27T00:00:00\", \"2019-05-28T00:00:00\", \"2019-05-29T00:00:00\", \"2019-05-30T00:00:00\", \"2019-05-31T00:00:00\", \"2019-06-03T00:00:00\", \"2019-06-05T00:00:00\", \"2019-06-06T00:00:00\", \"2019-06-10T00:00:00\", \"2019-06-12T00:00:00\", \"2019-06-13T00:00:00\", \"2019-06-16T00:00:00\", \"2019-06-17T00:00:00\", \"2019-06-19T00:00:00\", \"2019-06-21T00:00:00\", \"2019-06-24T00:00:00\", \"2019-06-25T00:00:00\", \"2019-06-26T00:00:00\", \"2019-06-27T00:00:00\", \"2019-06-28T00:00:00\", \"2019-06-30T00:00:00\", \"2019-07-01T00:00:00\", \"2019-07-02T00:00:00\", \"2019-07-03T00:00:00\", \"2019-07-06T00:00:00\", \"2019-07-07T00:00:00\", \"2019-07-08T00:00:00\", \"2019-07-09T00:00:00\", \"2019-07-10T00:00:00\", \"2019-07-11T00:00:00\", \"2019-07-13T00:00:00\", \"2019-07-14T00:00:00\", \"2019-07-15T00:00:00\", \"2019-07-16T00:00:00\", \"2019-07-17T00:00:00\", \"2019-07-18T00:00:00\", \"2019-07-19T00:00:00\", \"2019-07-22T00:00:00\", \"2019-07-23T00:00:00\", \"2019-07-24T00:00:00\", \"2019-07-25T00:00:00\", \"2019-07-26T00:00:00\", \"2019-07-29T00:00:00\", \"2019-07-30T00:00:00\", \"2019-07-31T00:00:00\", \"2019-08-01T00:00:00\", \"2019-08-02T00:00:00\", \"2019-08-05T00:00:00\", \"2019-08-06T00:00:00\", \"2019-08-07T00:00:00\", \"2019-08-08T00:00:00\", \"2019-08-09T00:00:00\", \"2019-08-10T00:00:00\", \"2019-08-11T00:00:00\", \"2019-08-13T00:00:00\", \"2019-08-15T00:00:00\", \"2019-08-16T00:00:00\", \"2019-08-17T00:00:00\", \"2019-08-19T00:00:00\", \"2019-08-20T00:00:00\", \"2019-08-21T00:00:00\", \"2019-08-22T00:00:00\", \"2019-08-23T00:00:00\", \"2019-08-25T00:00:00\", \"2019-08-26T00:00:00\", \"2019-08-27T00:00:00\", \"2019-08-29T00:00:00\", \"2019-08-30T00:00:00\", \"2019-08-31T00:00:00\", \"2019-09-02T00:00:00\", \"2019-09-03T00:00:00\", \"2019-09-04T00:00:00\", \"2019-09-05T00:00:00\", \"2019-09-07T00:00:00\", \"2019-09-09T00:00:00\", \"2019-09-11T00:00:00\", \"2019-09-12T00:00:00\", \"2019-09-13T00:00:00\", \"2019-09-14T00:00:00\", \"2019-09-15T00:00:00\", \"2019-09-17T00:00:00\", \"2019-09-18T00:00:00\", \"2019-09-20T00:00:00\", \"2019-09-21T00:00:00\", \"2019-09-23T00:00:00\", \"2019-09-24T00:00:00\", \"2019-09-25T00:00:00\", \"2019-09-26T00:00:00\", \"2019-09-27T00:00:00\", \"2019-09-30T00:00:00\", \"2019-10-01T00:00:00\", \"2019-10-02T00:00:00\", \"2019-10-03T00:00:00\", \"2019-10-07T00:00:00\", \"2019-10-08T00:00:00\", \"2019-10-09T00:00:00\", \"2019-10-11T00:00:00\", \"2019-10-12T00:00:00\", \"2019-10-13T00:00:00\", \"2019-10-14T00:00:00\", \"2019-10-15T00:00:00\", \"2019-10-16T00:00:00\", \"2019-10-17T00:00:00\", \"2019-10-18T00:00:00\", \"2019-10-19T00:00:00\", \"2019-10-20T00:00:00\", \"2019-10-21T00:00:00\", \"2019-10-22T00:00:00\", \"2019-10-24T00:00:00\", \"2019-10-25T00:00:00\", \"2019-10-28T00:00:00\", \"2019-10-29T00:00:00\", \"2019-10-30T00:00:00\", \"2019-10-31T00:00:00\", \"2019-11-01T00:00:00\", \"2019-11-02T00:00:00\", \"2019-11-04T00:00:00\", \"2019-11-06T00:00:00\", \"2019-11-08T00:00:00\", \"2019-11-09T00:00:00\", \"2019-11-10T00:00:00\", \"2019-11-11T00:00:00\", \"2019-11-12T00:00:00\", \"2019-11-13T00:00:00\", \"2019-11-14T00:00:00\", \"2019-11-15T00:00:00\", \"2019-11-17T00:00:00\", \"2019-11-18T00:00:00\", \"2019-11-19T00:00:00\", \"2019-11-22T00:00:00\", \"2019-11-24T00:00:00\", \"2019-11-25T00:00:00\", \"2019-11-26T00:00:00\", \"2019-11-27T00:00:00\", \"2019-11-28T00:00:00\", \"2019-11-30T00:00:00\", \"2019-12-02T00:00:00\", \"2019-12-03T00:00:00\", \"2019-12-05T00:00:00\", \"2019-12-06T00:00:00\", \"2019-12-09T00:00:00\", \"2019-12-10T00:00:00\", \"2019-12-11T00:00:00\", \"2019-12-12T00:00:00\", \"2019-12-13T00:00:00\", \"2019-12-14T00:00:00\", \"2019-12-15T00:00:00\", \"2019-12-16T00:00:00\", \"2019-12-17T00:00:00\", \"2019-12-18T00:00:00\", \"2019-12-19T00:00:00\", \"2019-12-20T00:00:00\", \"2019-12-21T00:00:00\", \"2019-12-22T00:00:00\", \"2019-12-24T00:00:00\", \"2019-12-26T00:00:00\", \"2019-12-27T00:00:00\", \"2019-12-30T00:00:00\", \"2019-12-31T00:00:00\", \"2020-01-02T00:00:00\", \"2020-01-03T00:00:00\", \"2020-01-04T00:00:00\", \"2020-01-05T00:00:00\", \"2020-01-06T00:00:00\", \"2020-01-07T00:00:00\", \"2020-01-08T00:00:00\", \"2020-01-09T00:00:00\", \"2020-01-10T00:00:00\", \"2020-01-12T00:00:00\", \"2020-01-13T00:00:00\", \"2020-01-14T00:00:00\", \"2020-01-15T00:00:00\", \"2020-01-16T00:00:00\", \"2020-01-17T00:00:00\", \"2020-01-18T00:00:00\", \"2020-01-20T00:00:00\", \"2020-01-21T00:00:00\", \"2020-01-22T00:00:00\", \"2020-01-23T00:00:00\", \"2020-01-24T00:00:00\", \"2020-01-26T00:00:00\", \"2020-01-27T00:00:00\", \"2020-01-28T00:00:00\", \"2020-01-29T00:00:00\", \"2020-01-30T00:00:00\", \"2020-01-31T00:00:00\", \"2020-02-01T00:00:00\", \"2020-02-03T00:00:00\", \"2020-02-05T00:00:00\", \"2020-02-07T00:00:00\", \"2020-02-10T00:00:00\", \"2020-02-11T00:00:00\", \"2020-02-12T00:00:00\", \"2020-02-13T00:00:00\", \"2020-02-14T00:00:00\", \"2020-02-15T00:00:00\", \"2020-02-16T00:00:00\", \"2020-02-17T00:00:00\", \"2020-02-18T00:00:00\", \"2020-02-19T00:00:00\", \"2020-02-20T00:00:00\", \"2020-02-21T00:00:00\", \"2020-02-22T00:00:00\", \"2020-02-23T00:00:00\", \"2020-02-24T00:00:00\", \"2020-02-25T00:00:00\", \"2020-02-27T00:00:00\", \"2020-02-28T00:00:00\", \"2020-02-29T00:00:00\", \"2020-03-01T00:00:00\", \"2020-03-02T00:00:00\", \"2020-03-03T00:00:00\", \"2020-03-04T00:00:00\", \"2020-03-05T00:00:00\", \"2020-03-06T00:00:00\", \"2020-03-07T00:00:00\", \"2020-03-09T00:00:00\", \"2020-03-10T00:00:00\", \"2020-03-11T00:00:00\", \"2020-03-13T00:00:00\", \"2020-03-14T00:00:00\", \"2020-03-15T00:00:00\", \"2020-03-17T00:00:00\", \"2020-03-18T00:00:00\", \"2020-03-19T00:00:00\", \"2020-03-20T00:00:00\", \"2020-03-21T00:00:00\", \"2020-03-22T00:00:00\", \"2020-03-23T00:00:00\", \"2020-03-25T00:00:00\", \"2020-03-26T00:00:00\", \"2020-03-28T00:00:00\", \"2020-03-29T00:00:00\", \"2020-03-30T00:00:00\", \"2020-03-31T00:00:00\", \"2020-04-02T00:00:00\", \"2020-04-03T00:00:00\", \"2020-04-04T00:00:00\", \"2020-04-05T00:00:00\", \"2020-04-06T00:00:00\", \"2020-04-07T00:00:00\", \"2020-04-08T00:00:00\", \"2020-04-09T00:00:00\", \"2020-04-10T00:00:00\", \"2020-04-11T00:00:00\", \"2020-04-12T00:00:00\", \"2020-04-13T00:00:00\", \"2020-04-14T00:00:00\", \"2020-04-15T00:00:00\", \"2020-04-16T00:00:00\", \"2020-04-17T00:00:00\", \"2020-04-18T00:00:00\", \"2020-04-19T00:00:00\", \"2020-04-20T00:00:00\", \"2020-04-21T00:00:00\", \"2020-04-22T00:00:00\", \"2020-04-23T00:00:00\", \"2020-04-24T00:00:00\", \"2020-04-25T00:00:00\", \"2020-04-26T00:00:00\", \"2020-04-27T00:00:00\", \"2020-04-28T00:00:00\", \"2020-04-30T00:00:00\", \"2020-05-01T00:00:00\", \"2020-05-02T00:00:00\", \"2020-05-04T00:00:00\", \"2020-05-05T00:00:00\", \"2020-05-06T00:00:00\", \"2020-05-07T00:00:00\", \"2020-05-08T00:00:00\", \"2020-05-09T00:00:00\", \"2020-05-11T00:00:00\", \"2020-05-12T00:00:00\", \"2020-05-13T00:00:00\", \"2020-05-15T00:00:00\", \"2020-05-16T00:00:00\", \"2020-05-17T00:00:00\", \"2020-05-18T00:00:00\", \"2020-05-19T00:00:00\", \"2020-05-20T00:00:00\", \"2020-05-21T00:00:00\", \"2020-05-22T00:00:00\", \"2020-05-23T00:00:00\", \"2020-05-24T00:00:00\", \"2020-05-25T00:00:00\", \"2020-05-26T00:00:00\", \"2020-05-27T00:00:00\", \"2020-05-28T00:00:00\", \"2020-05-29T00:00:00\", \"2020-05-30T00:00:00\", \"2020-05-31T00:00:00\", \"2020-06-01T00:00:00\", \"2020-06-02T00:00:00\", \"2020-06-03T00:00:00\", \"2020-06-04T00:00:00\", \"2020-06-05T00:00:00\", \"2020-06-07T00:00:00\", \"2020-06-08T00:00:00\", \"2020-06-09T00:00:00\", \"2020-06-10T00:00:00\", \"2020-06-11T00:00:00\", \"2020-06-12T00:00:00\", \"2020-06-14T00:00:00\", \"2020-06-15T00:00:00\", \"2020-06-16T00:00:00\", \"2020-06-17T00:00:00\", \"2020-06-18T00:00:00\", \"2020-06-19T00:00:00\", \"2020-06-20T00:00:00\", \"2020-06-21T00:00:00\", \"2020-06-22T00:00:00\", \"2020-06-23T00:00:00\", \"2020-06-24T00:00:00\", \"2020-06-25T00:00:00\", \"2020-06-26T00:00:00\", \"2020-06-27T00:00:00\", \"2020-06-29T00:00:00\", \"2020-06-30T00:00:00\", \"2020-07-02T00:00:00\", \"2020-07-04T00:00:00\", \"2020-07-05T00:00:00\", \"2020-07-06T00:00:00\", \"2020-07-07T00:00:00\", \"2020-07-08T00:00:00\", \"2020-07-09T00:00:00\", \"2020-07-10T00:00:00\", \"2020-07-11T00:00:00\", \"2020-07-12T00:00:00\", \"2020-07-13T00:00:00\", \"2020-07-14T00:00:00\", \"2020-07-15T00:00:00\", \"2020-07-16T00:00:00\", \"2020-07-17T00:00:00\", \"2020-07-18T00:00:00\", \"2020-07-19T00:00:00\", \"2020-07-20T00:00:00\", \"2020-07-21T00:00:00\", \"2020-07-22T00:00:00\", \"2020-07-23T00:00:00\", \"2020-07-24T00:00:00\", \"2020-07-25T00:00:00\", \"2020-07-26T00:00:00\", \"2020-07-27T00:00:00\", \"2020-07-28T00:00:00\", \"2020-07-29T00:00:00\", \"2020-07-30T00:00:00\", \"2020-07-31T00:00:00\", \"2020-08-01T00:00:00\", \"2020-08-03T00:00:00\", \"2020-08-04T00:00:00\", \"2020-08-05T00:00:00\", \"2020-08-06T00:00:00\", \"2020-08-07T00:00:00\", \"2020-08-09T00:00:00\", \"2020-08-10T00:00:00\", \"2020-08-11T00:00:00\", \"2020-08-12T00:00:00\", \"2020-08-13T00:00:00\", \"2020-08-14T00:00:00\", \"2020-08-15T00:00:00\", \"2020-08-16T00:00:00\", \"2020-08-17T00:00:00\", \"2020-08-18T00:00:00\", \"2020-08-19T00:00:00\", \"2020-08-20T00:00:00\", \"2020-08-21T00:00:00\", \"2020-08-23T00:00:00\", \"2020-08-24T00:00:00\", \"2020-08-25T00:00:00\", \"2020-08-26T00:00:00\", \"2020-08-27T00:00:00\", \"2020-08-28T00:00:00\", \"2020-08-29T00:00:00\", \"2020-08-30T00:00:00\", \"2020-08-31T00:00:00\", \"2020-09-01T00:00:00\", \"2020-09-03T00:00:00\", \"2020-09-04T00:00:00\", \"2020-09-05T00:00:00\", \"2020-09-07T00:00:00\", \"2020-09-08T00:00:00\", \"2020-09-09T00:00:00\", \"2020-09-10T00:00:00\", \"2020-09-11T00:00:00\", \"2020-09-12T00:00:00\", \"2020-09-14T00:00:00\", \"2020-09-15T00:00:00\", \"2020-09-16T00:00:00\", \"2020-09-17T00:00:00\", \"2020-09-18T00:00:00\", \"2020-09-19T00:00:00\", \"2020-09-20T00:00:00\", \"2020-09-21T00:00:00\", \"2020-09-22T00:00:00\", \"2020-09-23T00:00:00\", \"2020-09-24T00:00:00\", \"2020-09-25T00:00:00\", \"2020-09-27T00:00:00\", \"2020-09-28T00:00:00\", \"2020-09-29T00:00:00\", \"2020-09-30T00:00:00\", \"2020-10-01T00:00:00\", \"2020-10-02T00:00:00\", \"2020-10-03T00:00:00\", \"2020-10-05T00:00:00\", \"2020-10-06T00:00:00\", \"2020-10-07T00:00:00\", \"2020-10-08T00:00:00\", \"2020-10-09T00:00:00\", \"2020-10-10T00:00:00\", \"2020-10-11T00:00:00\", \"2020-10-12T00:00:00\", \"2020-10-13T00:00:00\", \"2020-10-14T00:00:00\", \"2020-10-15T00:00:00\", \"2020-10-16T00:00:00\", \"2020-10-17T00:00:00\", \"2020-10-19T00:00:00\", \"2020-10-20T00:00:00\", \"2020-10-22T00:00:00\", \"2020-10-23T00:00:00\", \"2020-10-24T00:00:00\", \"2020-10-26T00:00:00\", \"2020-10-27T00:00:00\", \"2020-10-28T00:00:00\", \"2020-10-29T00:00:00\", \"2020-10-30T00:00:00\", \"2020-10-31T00:00:00\"], \"xaxis\": \"x\", \"y\": [1, 2, 1, 3, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 3, 1, 1, 1, 2, 1, 1, 1, 1, 3, 2, 1, 1, 1, 4, 2, 1, 1, 3, 1, 1, 2, 1, 1, 1, 1, 3, 2, 1, 2, 2, 4, 1, 4, 2, 1, 1, 1, 4, 1, 1, 2, 1, 2, 2, 3, 3, 1, 1, 1, 3, 4, 1, 3, 1, 4, 2, 1, 1, 1, 1, 2, 1, 1, 2, 3, 1, 2, 3, 1, 3, 2, 1, 2, 1, 1, 1, 2, 1, 1, 5, 1, 2, 1, 2, 1, 1, 2, 2, 1, 1, 3, 1, 1, 2, 2, 2, 3, 1, 4, 2, 3, 2, 1, 1, 1, 2, 3, 1, 2, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 2, 4, 5, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 2, 1, 1, 3, 4, 1, 1, 2, 2, 1, 2, 1, 3, 3, 2, 3, 5, 1, 2, 1, 1, 1, 1, 3, 3, 3, 3, 1, 2, 1, 3, 6, 3, 1, 2, 3, 1, 3, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 2, 2, 5, 1, 1, 3, 1, 3, 3, 1, 2, 1, 4, 1, 2, 3, 2, 2, 2, 4, 1, 2, 2, 2, 3, 3, 1, 2, 2, 2, 4, 1, 2, 2, 3, 3, 2, 3, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 2, 1, 1, 2, 2, 3, 1, 3, 2, 3, 1, 1, 2, 2, 1, 2, 3, 5, 3, 2, 2, 3, 3, 2, 4, 1, 2, 1, 1, 1, 1, 2, 2, 2, 3, 2, 1, 1, 1, 1, 2, 1, 4, 1, 3, 3, 3, 4, 1, 1, 2, 2, 3, 1, 1, 3, 1, 1, 3, 2, 1, 3, 1, 2, 2, 1, 3, 6, 2, 1, 1, 1, 1, 5, 1, 5, 2, 1, 1, 1, 3, 3, 2, 5, 1, 2, 3, 1, 1, 3, 1, 3, 6, 4, 5, 1, 1, 1, 2, 1, 1, 4, 1, 1, 5, 2, 5, 2, 2, 5, 5, 2, 4, 2, 4, 7, 2, 2, 5, 4, 2, 1, 1, 2, 3, 2, 1, 1, 2, 2, 2, 5, 2, 5, 2, 3, 5, 2, 6, 2, 1, 3, 2, 1, 3, 5, 2, 3, 2, 4, 3, 1, 1, 4, 1, 3, 2, 3, 1, 1, 2, 3, 3, 1, 2, 1, 1, 5, 4, 4, 4, 3, 1, 3, 3, 3, 2, 3, 1, 4, 2, 6, 4, 3, 2, 2, 1, 6, 2, 1, 3, 3, 3, 6, 1, 1, 1, 1, 6, 3, 2, 7, 1, 1, 6, 2, 4, 1, 2, 2, 1, 7, 4, 3, 1, 3, 1, 1, 4, 5, 4, 3, 3, 1, 1, 3, 2, 3, 3, 1, 5, 3, 2, 3, 4, 2, 2, 3, 4, 1, 5, 1, 1, 2, 3, 2, 3, 2, 3, 1, 1, 1, 3, 4, 1, 4, 3, 3, 4, 1, 3, 2, 2, 3, 2, 3, 2, 3, 5, 1, 1, 2, 3, 2, 3, 3, 1, 2, 1, 2, 10, 2, 2, 3, 2, 1, 1, 3, 4, 3, 1, 1, 1, 2, 1, 1, 2, 2, 1, 3, 3, 4, 1, 2], \"yaxis\": \"y\"}, {\"alignmentgroup\": \"True\", \"hovertemplate\": \"Depositor status=firstTimeDepositor<br>Date of deposit=%{x}<br>Count of depositors=%{y}<extra></extra>\", \"legendgroup\": \"firstTimeDepositor\", \"marker\": {\"color\": \"#EF553B\"}, \"name\": \"firstTimeDepositor\", \"offsetgroup\": \"firstTimeDepositor\", \"orientation\": \"v\", \"showlegend\": true, \"textposition\": \"auto\", \"type\": \"bar\", \"x\": [\"2018-11-02T00:00:00\", \"2018-11-03T00:00:00\", \"2018-11-04T00:00:00\", \"2018-11-05T00:00:00\", \"2018-11-07T00:00:00\", \"2018-11-09T00:00:00\", \"2018-11-10T00:00:00\", \"2018-11-12T00:00:00\", \"2018-11-13T00:00:00\", \"2018-11-14T00:00:00\", \"2018-11-15T00:00:00\", \"2018-11-16T00:00:00\", \"2018-11-18T00:00:00\", \"2018-11-19T00:00:00\", \"2018-11-21T00:00:00\", \"2018-11-22T00:00:00\", \"2018-11-23T00:00:00\", \"2018-11-24T00:00:00\", \"2018-11-26T00:00:00\", \"2018-11-27T00:00:00\", \"2018-11-28T00:00:00\", \"2018-11-29T00:00:00\", \"2018-12-02T00:00:00\", \"2018-12-03T00:00:00\", \"2018-12-04T00:00:00\", \"2018-12-05T00:00:00\", \"2018-12-06T00:00:00\", \"2018-12-07T00:00:00\", \"2018-12-08T00:00:00\", \"2018-12-09T00:00:00\", \"2018-12-10T00:00:00\", \"2018-12-11T00:00:00\", \"2018-12-12T00:00:00\", \"2018-12-13T00:00:00\", \"2018-12-14T00:00:00\", \"2018-12-16T00:00:00\", \"2018-12-17T00:00:00\", \"2018-12-18T00:00:00\", \"2018-12-19T00:00:00\", \"2018-12-21T00:00:00\", \"2018-12-22T00:00:00\", \"2018-12-24T00:00:00\", \"2018-12-25T00:00:00\", \"2018-12-28T00:00:00\", \"2018-12-30T00:00:00\", \"2019-01-01T00:00:00\", \"2019-01-02T00:00:00\", \"2019-01-03T00:00:00\", \"2019-01-07T00:00:00\", \"2019-01-08T00:00:00\", \"2019-01-09T00:00:00\", \"2019-01-10T00:00:00\", \"2019-01-11T00:00:00\", \"2019-01-12T00:00:00\", \"2019-01-13T00:00:00\", \"2019-01-14T00:00:00\", \"2019-01-15T00:00:00\", \"2019-01-16T00:00:00\", \"2019-01-17T00:00:00\", \"2019-01-18T00:00:00\", \"2019-01-19T00:00:00\", \"2019-01-20T00:00:00\", \"2019-01-21T00:00:00\", \"2019-01-22T00:00:00\", \"2019-01-23T00:00:00\", \"2019-01-24T00:00:00\", \"2019-01-25T00:00:00\", \"2019-01-26T00:00:00\", \"2019-01-28T00:00:00\", \"2019-01-29T00:00:00\", \"2019-01-30T00:00:00\", \"2019-01-31T00:00:00\", \"2019-02-01T00:00:00\", \"2019-02-02T00:00:00\", \"2019-02-03T00:00:00\", \"2019-02-04T00:00:00\", \"2019-02-05T00:00:00\", \"2019-02-06T00:00:00\", \"2019-02-08T00:00:00\", \"2019-02-09T00:00:00\", \"2019-02-11T00:00:00\", \"2019-02-12T00:00:00\", \"2019-02-13T00:00:00\", \"2019-02-15T00:00:00\", \"2019-02-16T00:00:00\", \"2019-02-17T00:00:00\", \"2019-02-19T00:00:00\", \"2019-02-20T00:00:00\", \"2019-02-21T00:00:00\", \"2019-02-22T00:00:00\", \"2019-02-24T00:00:00\", \"2019-02-25T00:00:00\", \"2019-02-26T00:00:00\", \"2019-02-28T00:00:00\", \"2019-03-01T00:00:00\", \"2019-03-04T00:00:00\", \"2019-03-05T00:00:00\", \"2019-03-06T00:00:00\", \"2019-03-07T00:00:00\", \"2019-03-08T00:00:00\", \"2019-03-10T00:00:00\", \"2019-03-11T00:00:00\", \"2019-03-12T00:00:00\", \"2019-03-13T00:00:00\", \"2019-03-14T00:00:00\", \"2019-03-15T00:00:00\", \"2019-03-17T00:00:00\", \"2019-03-18T00:00:00\", \"2019-03-19T00:00:00\", \"2019-03-20T00:00:00\", \"2019-03-21T00:00:00\", \"2019-03-22T00:00:00\", \"2019-03-23T00:00:00\", \"2019-03-24T00:00:00\", \"2019-03-25T00:00:00\", \"2019-03-26T00:00:00\", \"2019-03-27T00:00:00\", \"2019-03-28T00:00:00\", \"2019-03-29T00:00:00\", \"2019-03-30T00:00:00\", \"2019-03-31T00:00:00\", \"2019-04-01T00:00:00\", \"2019-04-02T00:00:00\", \"2019-04-03T00:00:00\", \"2019-04-04T00:00:00\", \"2019-04-05T00:00:00\", \"2019-04-06T00:00:00\", \"2019-04-07T00:00:00\", \"2019-04-08T00:00:00\", \"2019-04-09T00:00:00\", \"2019-04-10T00:00:00\", \"2019-04-11T00:00:00\", \"2019-04-12T00:00:00\", \"2019-04-13T00:00:00\", \"2019-04-14T00:00:00\", \"2019-04-15T00:00:00\", \"2019-04-16T00:00:00\", \"2019-04-17T00:00:00\", \"2019-04-19T00:00:00\", \"2019-04-20T00:00:00\", \"2019-04-22T00:00:00\", \"2019-04-23T00:00:00\", \"2019-04-24T00:00:00\", \"2019-04-25T00:00:00\", \"2019-04-26T00:00:00\", \"2019-04-27T00:00:00\", \"2019-04-28T00:00:00\", \"2019-04-29T00:00:00\", \"2019-04-30T00:00:00\", \"2019-05-01T00:00:00\", \"2019-05-03T00:00:00\", \"2019-05-04T00:00:00\", \"2019-05-06T00:00:00\", \"2019-05-07T00:00:00\", \"2019-05-08T00:00:00\", \"2019-05-11T00:00:00\", \"2019-05-13T00:00:00\", \"2019-05-14T00:00:00\", \"2019-05-15T00:00:00\", \"2019-05-16T00:00:00\", \"2019-05-17T00:00:00\", \"2019-05-18T00:00:00\", \"2019-05-19T00:00:00\", \"2019-05-20T00:00:00\", \"2019-05-21T00:00:00\", \"2019-05-22T00:00:00\", \"2019-05-23T00:00:00\", \"2019-05-24T00:00:00\", \"2019-05-27T00:00:00\", \"2019-05-29T00:00:00\", \"2019-05-30T00:00:00\", \"2019-05-31T00:00:00\", \"2019-06-02T00:00:00\", \"2019-06-03T00:00:00\", \"2019-06-04T00:00:00\", \"2019-06-05T00:00:00\", \"2019-06-06T00:00:00\", \"2019-06-07T00:00:00\", \"2019-06-08T00:00:00\", \"2019-06-10T00:00:00\", \"2019-06-12T00:00:00\", \"2019-06-13T00:00:00\", \"2019-06-14T00:00:00\", \"2019-06-15T00:00:00\", \"2019-06-16T00:00:00\", \"2019-06-17T00:00:00\", \"2019-06-18T00:00:00\", \"2019-06-20T00:00:00\", \"2019-06-21T00:00:00\", \"2019-06-22T00:00:00\", \"2019-06-23T00:00:00\", \"2019-06-24T00:00:00\", \"2019-06-25T00:00:00\", \"2019-06-26T00:00:00\", \"2019-06-27T00:00:00\", \"2019-06-28T00:00:00\", \"2019-06-30T00:00:00\", \"2019-07-02T00:00:00\", \"2019-07-03T00:00:00\", \"2019-07-04T00:00:00\", \"2019-07-05T00:00:00\", \"2019-07-06T00:00:00\", \"2019-07-07T00:00:00\", \"2019-07-08T00:00:00\", \"2019-07-09T00:00:00\", \"2019-07-10T00:00:00\", \"2019-07-11T00:00:00\", \"2019-07-12T00:00:00\", \"2019-07-14T00:00:00\", \"2019-07-15T00:00:00\", \"2019-07-16T00:00:00\", \"2019-07-17T00:00:00\", \"2019-07-18T00:00:00\", \"2019-07-19T00:00:00\", \"2019-07-21T00:00:00\", \"2019-07-22T00:00:00\", \"2019-07-23T00:00:00\", \"2019-07-24T00:00:00\", \"2019-07-25T00:00:00\", \"2019-07-26T00:00:00\", \"2019-07-29T00:00:00\", \"2019-07-31T00:00:00\", \"2019-08-01T00:00:00\", \"2019-08-02T00:00:00\", \"2019-08-04T00:00:00\", \"2019-08-05T00:00:00\", \"2019-08-06T00:00:00\", \"2019-08-07T00:00:00\", \"2019-08-08T00:00:00\", \"2019-08-09T00:00:00\", \"2019-08-10T00:00:00\", \"2019-08-11T00:00:00\", \"2019-08-12T00:00:00\", \"2019-08-13T00:00:00\", \"2019-08-14T00:00:00\", \"2019-08-15T00:00:00\", \"2019-08-16T00:00:00\", \"2019-08-17T00:00:00\", \"2019-08-19T00:00:00\", \"2019-08-20T00:00:00\", \"2019-08-21T00:00:00\", \"2019-08-22T00:00:00\", \"2019-08-23T00:00:00\", \"2019-08-25T00:00:00\", \"2019-08-26T00:00:00\", \"2019-08-27T00:00:00\", \"2019-08-28T00:00:00\", \"2019-08-29T00:00:00\", \"2019-08-30T00:00:00\", \"2019-09-01T00:00:00\", \"2019-09-02T00:00:00\", \"2019-09-03T00:00:00\", \"2019-09-04T00:00:00\", \"2019-09-05T00:00:00\", \"2019-09-06T00:00:00\", \"2019-09-07T00:00:00\", \"2019-09-08T00:00:00\", \"2019-09-09T00:00:00\", \"2019-09-10T00:00:00\", \"2019-09-11T00:00:00\", \"2019-09-12T00:00:00\", \"2019-09-13T00:00:00\", \"2019-09-14T00:00:00\", \"2019-09-16T00:00:00\", \"2019-09-17T00:00:00\", \"2019-09-18T00:00:00\", \"2019-09-19T00:00:00\", \"2019-09-22T00:00:00\", \"2019-09-23T00:00:00\", \"2019-09-24T00:00:00\", \"2019-09-25T00:00:00\", \"2019-09-26T00:00:00\", \"2019-09-27T00:00:00\", \"2019-09-28T00:00:00\", \"2019-09-30T00:00:00\", \"2019-10-01T00:00:00\", \"2019-10-02T00:00:00\", \"2019-10-03T00:00:00\", \"2019-10-04T00:00:00\", \"2019-10-05T00:00:00\", \"2019-10-06T00:00:00\", \"2019-10-07T00:00:00\", \"2019-10-08T00:00:00\", \"2019-10-09T00:00:00\", \"2019-10-10T00:00:00\", \"2019-10-11T00:00:00\", \"2019-10-12T00:00:00\", \"2019-10-14T00:00:00\", \"2019-10-15T00:00:00\", \"2019-10-16T00:00:00\", \"2019-10-17T00:00:00\", \"2019-10-18T00:00:00\", \"2019-10-19T00:00:00\", \"2019-10-20T00:00:00\", \"2019-10-21T00:00:00\", \"2019-10-22T00:00:00\", \"2019-10-23T00:00:00\", \"2019-10-24T00:00:00\", \"2019-10-25T00:00:00\", \"2019-10-27T00:00:00\", \"2019-10-28T00:00:00\", \"2019-10-29T00:00:00\", \"2019-10-30T00:00:00\", \"2019-10-31T00:00:00\", \"2019-11-01T00:00:00\", \"2019-11-03T00:00:00\", \"2019-11-05T00:00:00\", \"2019-11-06T00:00:00\", \"2019-11-07T00:00:00\", \"2019-11-08T00:00:00\", \"2019-11-09T00:00:00\", \"2019-11-10T00:00:00\", \"2019-11-11T00:00:00\", \"2019-11-12T00:00:00\", \"2019-11-13T00:00:00\", \"2019-11-15T00:00:00\", \"2019-11-16T00:00:00\", \"2019-11-18T00:00:00\", \"2019-11-19T00:00:00\", \"2019-11-20T00:00:00\", \"2019-11-21T00:00:00\", \"2019-11-22T00:00:00\", \"2019-11-25T00:00:00\", \"2019-11-26T00:00:00\", \"2019-11-27T00:00:00\", \"2019-11-29T00:00:00\", \"2019-11-30T00:00:00\", \"2019-12-01T00:00:00\", \"2019-12-02T00:00:00\", \"2019-12-04T00:00:00\", \"2019-12-05T00:00:00\", \"2019-12-06T00:00:00\", \"2019-12-07T00:00:00\", \"2019-12-08T00:00:00\", \"2019-12-09T00:00:00\", \"2019-12-10T00:00:00\", \"2019-12-11T00:00:00\", \"2019-12-12T00:00:00\", \"2019-12-13T00:00:00\", \"2019-12-16T00:00:00\", \"2019-12-17T00:00:00\", \"2019-12-18T00:00:00\", \"2019-12-19T00:00:00\", \"2019-12-20T00:00:00\", \"2019-12-21T00:00:00\", \"2019-12-23T00:00:00\", \"2019-12-24T00:00:00\", \"2019-12-25T00:00:00\", \"2019-12-26T00:00:00\", \"2019-12-27T00:00:00\", \"2019-12-28T00:00:00\", \"2019-12-30T00:00:00\", \"2020-01-01T00:00:00\", \"2020-01-02T00:00:00\", \"2020-01-03T00:00:00\", \"2020-01-05T00:00:00\", \"2020-01-06T00:00:00\", \"2020-01-07T00:00:00\", \"2020-01-08T00:00:00\", \"2020-01-09T00:00:00\", \"2020-01-10T00:00:00\", \"2020-01-13T00:00:00\", \"2020-01-14T00:00:00\", \"2020-01-15T00:00:00\", \"2020-01-16T00:00:00\", \"2020-01-17T00:00:00\", \"2020-01-18T00:00:00\", \"2020-01-20T00:00:00\", \"2020-01-21T00:00:00\", \"2020-01-22T00:00:00\", \"2020-01-23T00:00:00\", \"2020-01-24T00:00:00\", \"2020-01-25T00:00:00\", \"2020-01-26T00:00:00\", \"2020-01-27T00:00:00\", \"2020-01-28T00:00:00\", \"2020-01-29T00:00:00\", \"2020-01-30T00:00:00\", \"2020-01-31T00:00:00\", \"2020-02-01T00:00:00\", \"2020-02-02T00:00:00\", \"2020-02-03T00:00:00\", \"2020-02-04T00:00:00\", \"2020-02-05T00:00:00\", \"2020-02-06T00:00:00\", \"2020-02-07T00:00:00\", \"2020-02-08T00:00:00\", \"2020-02-09T00:00:00\", \"2020-02-10T00:00:00\", \"2020-02-11T00:00:00\", \"2020-02-12T00:00:00\", \"2020-02-13T00:00:00\", \"2020-02-14T00:00:00\", \"2020-02-15T00:00:00\", \"2020-02-17T00:00:00\", \"2020-02-18T00:00:00\", \"2020-02-19T00:00:00\", \"2020-02-20T00:00:00\", \"2020-02-22T00:00:00\", \"2020-02-24T00:00:00\", \"2020-02-25T00:00:00\", \"2020-02-26T00:00:00\", \"2020-02-27T00:00:00\", \"2020-02-28T00:00:00\", \"2020-02-29T00:00:00\", \"2020-03-01T00:00:00\", \"2020-03-02T00:00:00\", \"2020-03-03T00:00:00\", \"2020-03-04T00:00:00\", \"2020-03-05T00:00:00\", \"2020-03-06T00:00:00\", \"2020-03-07T00:00:00\", \"2020-03-09T00:00:00\", \"2020-03-10T00:00:00\", \"2020-03-11T00:00:00\", \"2020-03-12T00:00:00\", \"2020-03-13T00:00:00\", \"2020-03-14T00:00:00\", \"2020-03-15T00:00:00\", \"2020-03-16T00:00:00\", \"2020-03-17T00:00:00\", \"2020-03-18T00:00:00\", \"2020-03-19T00:00:00\", \"2020-03-20T00:00:00\", \"2020-03-21T00:00:00\", \"2020-03-22T00:00:00\", \"2020-03-23T00:00:00\", \"2020-03-24T00:00:00\", \"2020-03-25T00:00:00\", \"2020-03-26T00:00:00\", \"2020-03-27T00:00:00\", \"2020-03-28T00:00:00\", \"2020-03-29T00:00:00\", \"2020-03-30T00:00:00\", \"2020-03-31T00:00:00\", \"2020-04-02T00:00:00\", \"2020-04-03T00:00:00\", \"2020-04-04T00:00:00\", \"2020-04-05T00:00:00\", \"2020-04-06T00:00:00\", \"2020-04-07T00:00:00\", \"2020-04-08T00:00:00\", \"2020-04-09T00:00:00\", \"2020-04-10T00:00:00\", \"2020-04-11T00:00:00\", \"2020-04-12T00:00:00\", \"2020-04-13T00:00:00\", \"2020-04-14T00:00:00\", \"2020-04-15T00:00:00\", \"2020-04-16T00:00:00\", \"2020-04-17T00:00:00\", \"2020-04-19T00:00:00\", \"2020-04-20T00:00:00\", \"2020-04-21T00:00:00\", \"2020-04-22T00:00:00\", \"2020-04-23T00:00:00\", \"2020-04-24T00:00:00\", \"2020-04-26T00:00:00\", \"2020-04-27T00:00:00\", \"2020-04-28T00:00:00\", \"2020-04-29T00:00:00\", \"2020-04-30T00:00:00\", \"2020-05-01T00:00:00\", \"2020-05-02T00:00:00\", \"2020-05-04T00:00:00\", \"2020-05-05T00:00:00\", \"2020-05-06T00:00:00\", \"2020-05-07T00:00:00\", \"2020-05-08T00:00:00\", \"2020-05-10T00:00:00\", \"2020-05-11T00:00:00\", \"2020-05-12T00:00:00\", \"2020-05-13T00:00:00\", \"2020-05-14T00:00:00\", \"2020-05-15T00:00:00\", \"2020-05-16T00:00:00\", \"2020-05-17T00:00:00\", \"2020-05-18T00:00:00\", \"2020-05-19T00:00:00\", \"2020-05-20T00:00:00\", \"2020-05-21T00:00:00\", \"2020-05-22T00:00:00\", \"2020-05-23T00:00:00\", \"2020-05-24T00:00:00\", \"2020-05-25T00:00:00\", \"2020-05-26T00:00:00\", \"2020-05-27T00:00:00\", \"2020-05-28T00:00:00\", \"2020-05-29T00:00:00\", \"2020-05-31T00:00:00\", \"2020-06-01T00:00:00\", \"2020-06-02T00:00:00\", \"2020-06-03T00:00:00\", \"2020-06-04T00:00:00\", \"2020-06-05T00:00:00\", \"2020-06-06T00:00:00\", \"2020-06-07T00:00:00\", \"2020-06-08T00:00:00\", \"2020-06-10T00:00:00\", \"2020-06-11T00:00:00\", \"2020-06-12T00:00:00\", \"2020-06-13T00:00:00\", \"2020-06-14T00:00:00\", \"2020-06-15T00:00:00\", \"2020-06-16T00:00:00\", \"2020-06-17T00:00:00\", \"2020-06-18T00:00:00\", \"2020-06-19T00:00:00\", \"2020-06-20T00:00:00\", \"2020-06-21T00:00:00\", \"2020-06-22T00:00:00\", \"2020-06-23T00:00:00\", \"2020-06-24T00:00:00\", \"2020-06-25T00:00:00\", \"2020-06-26T00:00:00\", \"2020-06-28T00:00:00\", \"2020-06-29T00:00:00\", \"2020-06-30T00:00:00\", \"2020-07-01T00:00:00\", \"2020-07-02T00:00:00\", \"2020-07-03T00:00:00\", \"2020-07-04T00:00:00\", \"2020-07-06T00:00:00\", \"2020-07-07T00:00:00\", \"2020-07-08T00:00:00\", \"2020-07-09T00:00:00\", \"2020-07-11T00:00:00\", \"2020-07-13T00:00:00\", \"2020-07-14T00:00:00\", \"2020-07-15T00:00:00\", \"2020-07-16T00:00:00\", \"2020-07-17T00:00:00\", \"2020-07-18T00:00:00\", \"2020-07-19T00:00:00\", \"2020-07-20T00:00:00\", \"2020-07-21T00:00:00\", \"2020-07-22T00:00:00\", \"2020-07-23T00:00:00\", \"2020-07-24T00:00:00\", \"2020-07-25T00:00:00\", \"2020-07-26T00:00:00\", \"2020-07-27T00:00:00\", \"2020-07-28T00:00:00\", \"2020-07-29T00:00:00\", \"2020-07-30T00:00:00\", \"2020-07-31T00:00:00\", \"2020-08-01T00:00:00\", \"2020-08-02T00:00:00\", \"2020-08-03T00:00:00\", \"2020-08-04T00:00:00\", \"2020-08-05T00:00:00\", \"2020-08-06T00:00:00\", \"2020-08-07T00:00:00\", \"2020-08-08T00:00:00\", \"2020-08-09T00:00:00\", \"2020-08-10T00:00:00\", \"2020-08-11T00:00:00\", \"2020-08-12T00:00:00\", \"2020-08-13T00:00:00\", \"2020-08-14T00:00:00\", \"2020-08-16T00:00:00\", \"2020-08-17T00:00:00\", \"2020-08-18T00:00:00\", \"2020-08-19T00:00:00\", \"2020-08-20T00:00:00\", \"2020-08-21T00:00:00\", \"2020-08-22T00:00:00\", \"2020-08-24T00:00:00\", \"2020-08-25T00:00:00\", \"2020-08-26T00:00:00\", \"2020-08-27T00:00:00\", \"2020-08-28T00:00:00\", \"2020-08-29T00:00:00\", \"2020-08-30T00:00:00\", \"2020-08-31T00:00:00\", \"2020-09-01T00:00:00\", \"2020-09-02T00:00:00\", \"2020-09-03T00:00:00\", \"2020-09-04T00:00:00\", \"2020-09-05T00:00:00\", \"2020-09-07T00:00:00\", \"2020-09-08T00:00:00\", \"2020-09-09T00:00:00\", \"2020-09-10T00:00:00\", \"2020-09-11T00:00:00\", \"2020-09-12T00:00:00\", \"2020-09-14T00:00:00\", \"2020-09-16T00:00:00\", \"2020-09-17T00:00:00\", \"2020-09-18T00:00:00\", \"2020-09-19T00:00:00\", \"2020-09-20T00:00:00\", \"2020-09-21T00:00:00\", \"2020-09-22T00:00:00\", \"2020-09-23T00:00:00\", \"2020-09-24T00:00:00\", \"2020-09-25T00:00:00\", \"2020-09-26T00:00:00\", \"2020-09-27T00:00:00\", \"2020-09-28T00:00:00\", \"2020-09-29T00:00:00\", \"2020-09-30T00:00:00\", \"2020-10-01T00:00:00\", \"2020-10-02T00:00:00\", \"2020-10-04T00:00:00\", \"2020-10-05T00:00:00\", \"2020-10-06T00:00:00\", \"2020-10-07T00:00:00\", \"2020-10-08T00:00:00\", \"2020-10-09T00:00:00\", \"2020-10-10T00:00:00\", \"2020-10-12T00:00:00\", \"2020-10-13T00:00:00\", \"2020-10-14T00:00:00\", \"2020-10-15T00:00:00\", \"2020-10-16T00:00:00\", \"2020-10-17T00:00:00\", \"2020-10-18T00:00:00\", \"2020-10-19T00:00:00\", \"2020-10-20T00:00:00\", \"2020-10-21T00:00:00\", \"2020-10-22T00:00:00\", \"2020-10-23T00:00:00\", \"2020-10-24T00:00:00\", \"2020-10-25T00:00:00\", \"2020-10-26T00:00:00\", \"2020-10-27T00:00:00\", \"2020-10-28T00:00:00\", \"2020-10-29T00:00:00\", \"2020-10-30T00:00:00\", \"2020-10-31T00:00:00\"], \"xaxis\": \"x\", \"y\": [4, 1, 2, 3, 4, 2, 1, 2, 3, 1, 2, 1, 1, 2, 6, 1, 1, 1, 1, 1, 4, 2, 2, 2, 1, 1, 2, 1, 3, 1, 3, 2, 3, 1, 2, 1, 2, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 3, 3, 2, 1, 2, 1, 2, 2, 1, 2, 4, 5, 6, 1, 1, 1, 4, 1, 2, 3, 3, 3, 3, 3, 4, 3, 1, 1, 1, 1, 3, 3, 1, 3, 1, 1, 1, 3, 1, 3, 7, 2, 2, 2, 1, 5, 4, 2, 2, 3, 2, 5, 2, 2, 6, 5, 1, 3, 4, 2, 2, 4, 1, 2, 4, 1, 1, 1, 2, 1, 4, 2, 1, 3, 6, 2, 1, 1, 1, 1, 1, 5, 5, 5, 3, 2, 2, 2, 1, 1, 1, 2, 3, 6, 5, 2, 3, 2, 2, 1, 2, 4, 1, 2, 1, 1, 2, 5, 1, 1, 7, 4, 3, 1, 1, 1, 3, 2, 1, 3, 1, 2, 2, 2, 2, 1, 2, 3, 2, 3, 2, 1, 1, 1, 2, 1, 1, 1, 2, 3, 2, 2, 1, 2, 3, 3, 2, 2, 1, 2, 3, 4, 2, 2, 1, 3, 3, 2, 1, 1, 6, 2, 1, 1, 3, 1, 2, 2, 4, 5, 3, 2, 2, 4, 1, 2, 2, 3, 5, 3, 3, 3, 3, 2, 2, 1, 5, 4, 4, 3, 1, 2, 1, 1, 2, 2, 1, 1, 4, 6, 1, 1, 3, 4, 4, 3, 3, 3, 3, 1, 2, 1, 2, 1, 2, 3, 1, 4, 3, 1, 3, 3, 5, 3, 2, 2, 3, 6, 3, 1, 2, 1, 1, 1, 6, 2, 1, 1, 4, 3, 3, 3, 3, 4, 2, 1, 2, 4, 2, 3, 2, 1, 3, 5, 3, 1, 3, 2, 1, 2, 5, 4, 2, 1, 1, 2, 1, 1, 2, 1, 4, 1, 2, 3, 1, 6, 4, 3, 2, 2, 2, 5, 5, 1, 2, 2, 2, 5, 1, 2, 1, 1, 4, 5, 3, 4, 1, 1, 1, 6, 1, 1, 1, 2, 2, 1, 3, 1, 1, 5, 2, 2, 3, 3, 4, 4, 2, 6, 2, 1, 3, 2, 2, 2, 6, 3, 1, 6, 2, 3, 1, 5, 2, 3, 2, 1, 3, 4, 5, 1, 3, 5, 4, 2, 1, 3, 4, 1, 4, 3, 1, 1, 4, 1, 3, 2, 4, 3, 3, 2, 6, 3, 1, 1, 1, 2, 4, 5, 4, 3, 1, 1, 1, 3, 3, 3, 1, 1, 1, 2, 4, 2, 3, 4, 3, 2, 3, 2, 3, 3, 1, 1, 4, 3, 2, 3, 4, 1, 1, 2, 3, 4, 3, 4, 1, 5, 2, 4, 3, 2, 3, 1, 7, 3, 4, 4, 2, 3, 5, 5, 2, 2, 1, 4, 3, 2, 4, 6, 3, 6, 6, 7, 2, 2, 3, 2, 4, 1, 3, 2, 1, 4, 4, 4, 2, 1, 6, 1, 1, 1, 7, 3, 3, 8, 3, 3, 2, 6, 7, 4, 7, 1, 2, 3, 3, 8, 3, 6, 4, 2, 5, 4, 7, 1, 1, 1, 2, 1, 2, 1, 4, 1, 2, 4, 1, 2, 1, 2, 8, 4, 3, 1, 2, 1, 2, 2, 1, 5, 5, 3, 2, 3, 5, 3, 6, 5, 1, 4, 4, 7, 2, 2, 5, 3, 4, 2, 2, 4, 4, 1, 8, 2, 3, 1, 3, 2, 3, 2, 2, 4, 1, 4, 1, 1, 5, 8, 4, 4, 2, 3, 2, 3, 2, 5, 4, 2, 1, 1, 5, 4, 1, 5, 1, 4, 4, 2, 3, 1, 5, 6, 4, 2, 3, 1, 4, 4, 2, 3, 1, 3, 3, 4, 2, 6, 4, 2, 2, 2, 2, 2, 3, 4, 4, 4], \"yaxis\": \"y\"}],                        {\"barmode\": \"relative\", \"legend\": {\"title\": {\"text\": \"Depositor status\"}, \"tracegroupgap\": 0}, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"How many accounts create datasets in HDV Root each day?\"}, \"xaxis\": {\"anchor\": \"y\", \"domain\": [0.0, 1.0], \"nticks\": 50, \"range\": [\"2020-08-01\", \"2020-10-31\"], \"title\": {\"text\": \"Date of deposit\"}, \"type\": \"date\"}, \"yaxis\": {\"anchor\": \"x\", \"domain\": [0.0, 1.0], \"title\": {\"text\": \"Count of depositors\"}}},                        {\"responsive\": true}                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('67b12b19-4526-475c-a40f-8284dec09ce5');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })                };                });            </script>        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def get_plot_2(df):\n",
    "    plot = px.bar(df,\n",
    "                 x='deposit_createdate',\n",
    "                 y='count_of_accounts',\n",
    "                 color='depositor_status',\n",
    "                 title='How many accounts create datasets in HDV Root each day?',\n",
    "                 labels={'depositor_status': 'Depositor status',\n",
    "                          'deposit_createdate': 'Date of deposit',\n",
    "                          'count_of_accounts': 'Count of depositors'}\n",
    "             )\n",
    "    return plot\n",
    "\n",
    "get_plot_2(dailyCountOfAccountsByDepositorStatus_inRoot).update_xaxes(\n",
    "    type='date',\n",
    "    range=['2020-08-01', '2020-10-31'], nticks=50).show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "From the graph we can see that:\n",
    "- On most days, at least one returning depositor has created a dataset in Root.\n",
    "- On many days, the number of returning depositors that created datasets in Root is greater than the number of first time depositors."
   ]
  }
 ],
 "metadata": {
  "hide_input": false,
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.0"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": true,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
